binaryninja.highlevelil.HighLevelILFunction

class HighLevelILFunction(arch=None, handle=None, source_func=None)[source]

class HighLevelILFunction contains the a HighLevelILInstruction object that makes up the abstract syntax tree of a binaryninja.function.

__init__(arch=None, handle=None, source_func=None)[source]

Initialize self. See help(type(self)) for accurate signature.

Methods

__init__([arch, handle, source_func])

Initialize self.

add_operand_list(operands)

add_operand_list returns an operand list expression for the given list of integer operands.

create_graph([settings])

expr(operation[, a, b, c, d, e, size])

finalize()

finalize ends the function and computes the list of basic blocks.

get_label(label_idx)

get_label_uses(label_idx)

get_medium_level_il_expr_index(expr)

get_non_ssa_instruction_index(instr)

get_ssa_instruction_index(instr)

get_ssa_memory_definition(version)

get_ssa_memory_uses(version)

get_ssa_var_definition(ssa_var)

get_ssa_var_uses(ssa_var)

get_var_definitions(var)

get_var_uses(var)

is_ssa_var_live(ssa_var)

is_ssa_var_live determines if ssa_var is live at any point in the function

set_current_address(value[, arch])

Attributes

arch

basic_blocks

list of HighLevelILBasicBlock objects (read-only)

current_address

Current IL Address (read/write)

instructions

A generator of hlil instructions of the current function

medium_level_il

Medium level IL for this function

mlil

Alias for medium_level_il

non_ssa_form

High level IL in non-SSA (default) form (read-only)

root

Root of the abstract syntax tree

source_function

ssa_form

High level IL in SSA form (read-only)