highlevelil module

binaryninja.highlevelil.Arithmetic()

binaryninja.highlevelil.BaseILInstruction()

binaryninja.highlevelil.BinaryOperation()

binaryninja.highlevelil.Comparison()

binaryninja.highlevelil.Constant()

binaryninja.highlevelil.ControlFlow()

binaryninja.highlevelil.CoreHighLevelILInstruction(...)

binaryninja.highlevelil.DoublePrecision()

binaryninja.highlevelil.FloatingPoint()

binaryninja.highlevelil.GotoLabel(function, id)

binaryninja.highlevelil.HighLevelILAdc(...)

binaryninja.highlevelil.HighLevelILAdd(...)

binaryninja.highlevelil.HighLevelILAddOverflow(...)

binaryninja.highlevelil.HighLevelILAddressOf(...)

binaryninja.highlevelil.HighLevelILAnd(...)

binaryninja.highlevelil.HighLevelILArrayIndex(...)

binaryninja.highlevelil.HighLevelILArrayIndexSsa(...)

binaryninja.highlevelil.HighLevelILAsr(...)

binaryninja.highlevelil.HighLevelILAssign(...)

binaryninja.highlevelil.HighLevelILAssignMemSsa(...)

binaryninja.highlevelil.HighLevelILAssignUnpack(...)

binaryninja.highlevelil.HighLevelILAssignUnpackMemSsa(...)

binaryninja.highlevelil.HighLevelILBasicBlock(...)

The HighLevelILBasicBlock object is returned during analysis and should not be directly instantiated.

binaryninja.highlevelil.HighLevelILBinaryBase(...)

binaryninja.highlevelil.HighLevelILBlock(...)

binaryninja.highlevelil.HighLevelILBoolToInt(...)

binaryninja.highlevelil.HighLevelILBp(...)

binaryninja.highlevelil.HighLevelILBreak(...)

binaryninja.highlevelil.HighLevelILCall(...)

binaryninja.highlevelil.HighLevelILCallSsa(...)

binaryninja.highlevelil.HighLevelILCarryBase(...)

binaryninja.highlevelil.HighLevelILCase(...)

binaryninja.highlevelil.HighLevelILCeil(...)

binaryninja.highlevelil.HighLevelILCmpE(...)

binaryninja.highlevelil.HighLevelILCmpNe(...)

binaryninja.highlevelil.HighLevelILCmpSge(...)

binaryninja.highlevelil.HighLevelILCmpSgt(...)

binaryninja.highlevelil.HighLevelILCmpSle(...)

binaryninja.highlevelil.HighLevelILCmpSlt(...)

binaryninja.highlevelil.HighLevelILCmpUge(...)

binaryninja.highlevelil.HighLevelILCmpUgt(...)

binaryninja.highlevelil.HighLevelILCmpUle(...)

binaryninja.highlevelil.HighLevelILCmpUlt(...)

binaryninja.highlevelil.HighLevelILComparisonBase(...)

binaryninja.highlevelil.HighLevelILConst(...)

binaryninja.highlevelil.HighLevelILConstPtr(...)

binaryninja.highlevelil.HighLevelILContinue(...)

binaryninja.highlevelil.HighLevelILDeref(...)

binaryninja.highlevelil.HighLevelILDerefField(...)

binaryninja.highlevelil.HighLevelILDerefFieldSsa(...)

binaryninja.highlevelil.HighLevelILDerefSsa(...)

binaryninja.highlevelil.HighLevelILDivs(...)

binaryninja.highlevelil.HighLevelILDivsDp(...)

binaryninja.highlevelil.HighLevelILDivu(...)

binaryninja.highlevelil.HighLevelILDivuDp(...)

binaryninja.highlevelil.HighLevelILDoWhile(...)

binaryninja.highlevelil.HighLevelILDoWhileSsa(...)

binaryninja.highlevelil.HighLevelILExpr(index)

Warning

This object is deprecated. Please migrate code away from using this class or method.

binaryninja.highlevelil.HighLevelILExternPtr(...)

binaryninja.highlevelil.HighLevelILFabs(...)

binaryninja.highlevelil.HighLevelILFadd(...)

binaryninja.highlevelil.HighLevelILFcmpE(...)

binaryninja.highlevelil.HighLevelILFcmpGe(...)

binaryninja.highlevelil.HighLevelILFcmpGt(...)

binaryninja.highlevelil.HighLevelILFcmpLe(...)

binaryninja.highlevelil.HighLevelILFcmpLt(...)

binaryninja.highlevelil.HighLevelILFcmpNe(...)

binaryninja.highlevelil.HighLevelILFcmpO(...)

binaryninja.highlevelil.HighLevelILFcmpUo(...)

binaryninja.highlevelil.HighLevelILFdiv(...)

binaryninja.highlevelil.HighLevelILFloatConst(...)

binaryninja.highlevelil.HighLevelILFloatConv(...)

binaryninja.highlevelil.HighLevelILFloatToInt(...)

binaryninja.highlevelil.HighLevelILFloor(...)

binaryninja.highlevelil.HighLevelILFmul(...)

binaryninja.highlevelil.HighLevelILFneg(...)

binaryninja.highlevelil.HighLevelILFor(...)

binaryninja.highlevelil.HighLevelILForSsa(...)

binaryninja.highlevelil.HighLevelILFsqrt(...)

binaryninja.highlevelil.HighLevelILFsub(...)

binaryninja.highlevelil.HighLevelILFtrunc(...)

binaryninja.highlevelil.HighLevelILFunction([...])

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

binaryninja.highlevelil.HighLevelILGoto(...)

binaryninja.highlevelil.HighLevelILIf(...)

binaryninja.highlevelil.HighLevelILImport(...)

binaryninja.highlevelil.HighLevelILInstruction(...)

class HighLevelILInstruction High Level Intermediate Language Instructions form an abstract syntax tree of the code.

binaryninja.highlevelil.HighLevelILIntToFloat(...)

binaryninja.highlevelil.HighLevelILIntrinsic(...)

binaryninja.highlevelil.HighLevelILIntrinsicSsa(...)

binaryninja.highlevelil.HighLevelILJump(...)

binaryninja.highlevelil.HighLevelILLabel(...)

binaryninja.highlevelil.HighLevelILLowPart(...)

binaryninja.highlevelil.HighLevelILLsl(...)

binaryninja.highlevelil.HighLevelILLsr(...)

binaryninja.highlevelil.HighLevelILMemPhi(...)

binaryninja.highlevelil.HighLevelILMods(...)

binaryninja.highlevelil.HighLevelILModsDp(...)

binaryninja.highlevelil.HighLevelILModu(...)

binaryninja.highlevelil.HighLevelILModuDp(...)

binaryninja.highlevelil.HighLevelILMul(...)

binaryninja.highlevelil.HighLevelILMulsDp(...)

binaryninja.highlevelil.HighLevelILMuluDp(...)

binaryninja.highlevelil.HighLevelILNeg(...)

binaryninja.highlevelil.HighLevelILNop(...)

binaryninja.highlevelil.HighLevelILNoret(...)

binaryninja.highlevelil.HighLevelILNot(...)

binaryninja.highlevelil.HighLevelILOperationAndSize(...)

binaryninja.highlevelil.HighLevelILOr(...)

binaryninja.highlevelil.HighLevelILRet(...)

binaryninja.highlevelil.HighLevelILRlc(...)

binaryninja.highlevelil.HighLevelILRol(...)

binaryninja.highlevelil.HighLevelILRor(...)

binaryninja.highlevelil.HighLevelILRoundToInt(...)

binaryninja.highlevelil.HighLevelILRrc(...)

binaryninja.highlevelil.HighLevelILSbb(...)

binaryninja.highlevelil.HighLevelILSplit(...)

binaryninja.highlevelil.HighLevelILStructField(...)

binaryninja.highlevelil.HighLevelILSub(...)

binaryninja.highlevelil.HighLevelILSwitch(...)

binaryninja.highlevelil.HighLevelILSx(...)

binaryninja.highlevelil.HighLevelILSyscall(...)

binaryninja.highlevelil.HighLevelILSyscallSsa(...)

binaryninja.highlevelil.HighLevelILTailcall(...)

binaryninja.highlevelil.HighLevelILTestBit(...)

binaryninja.highlevelil.HighLevelILTrap(...)

binaryninja.highlevelil.HighLevelILUnaryBase(...)

binaryninja.highlevelil.HighLevelILUndef(...)

binaryninja.highlevelil.HighLevelILUnimpl(...)

binaryninja.highlevelil.HighLevelILUnimplMem(...)

binaryninja.highlevelil.HighLevelILUnreachable(...)

binaryninja.highlevelil.HighLevelILVar(...)

binaryninja.highlevelil.HighLevelILVarDeclare(...)

binaryninja.highlevelil.HighLevelILVarInit(...)

binaryninja.highlevelil.HighLevelILVarInitSsa(...)

binaryninja.highlevelil.HighLevelILVarPhi(...)

binaryninja.highlevelil.HighLevelILVarSsa(...)

binaryninja.highlevelil.HighLevelILWhile(...)

binaryninja.highlevelil.HighLevelILWhileSsa(...)

binaryninja.highlevelil.HighLevelILXor(...)

binaryninja.highlevelil.HighLevelILZx(...)

binaryninja.highlevelil.Intrinsic()

binaryninja.highlevelil.Localcall()

binaryninja.highlevelil.Loop()

binaryninja.highlevelil.Memory()

binaryninja.highlevelil.Phi()

binaryninja.highlevelil.Return()

binaryninja.highlevelil.SSA()

binaryninja.highlevelil.Signed()

binaryninja.highlevelil.Syscall()

binaryninja.highlevelil.Tailcall()

binaryninja.highlevelil.Terminal()

binaryninja.highlevelil.UnaryOperation()

class CoreHighLevelILInstruction(operation: binaryninja.enums.HighLevelILOperation, source_operand: int, size: int, operands: Tuple[ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex], address: int, parent: <function NewType.<locals>.new_type at 0x7ff093f235e0>)[source]

Bases: object

Parameters
  • operation (HighLevelILOperation) –

  • source_operand (int) –

  • size (int) –

  • operands (Tuple[ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex]) –

  • address (int) –

  • parent (ExpressionIndex) –

Return type

None

classmethod from_BNHighLevelILInstruction(instr: binaryninja._binaryninjacore.BNHighLevelILInstruction) CoreHighLevelILInstruction[source]
Parameters

instr (binaryninja._binaryninjacore.BNHighLevelILInstruction) –

Return type

CoreHighLevelILInstruction

address: int
operands: Tuple[ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex]
operation: HighLevelILOperation
parent: ExpressionIndex
size: int
source_operand: int
class GotoLabel(function: 'HighLevelILFunction', id: int)[source]

Bases: object

Parameters
Return type

None

property definition: Optional[HighLevelILInstruction]
function: HighLevelILFunction
id: int
property label_id: int
property name: str
property uses: List[HighLevelILInstruction]
class HighLevelILAdc(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILCarryBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILAdd(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILAddOverflow(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILAddressOf(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property vars_address_taken: List[Union[SSAVariable, Variable]]

Non-unique list of variables whose address is taken by instruction

Note

This property has some nuance to it, so use carefully. This property will return only those variable which directly have their address taken such as &var_4 or &var_8.d but not those which are involved in an address calculation such as &(var_4 + 0) or &var_4[0] even though they may be functionally equivalent.

class HighLevelILAnd(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILArrayIndex(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
property index: HighLevelILInstruction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property src: HighLevelILInstruction
class HighLevelILArrayIndexSsa(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.SSA

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
property index: HighLevelILInstruction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property src: HighLevelILInstruction
property src_memory: int
class HighLevelILAsr(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILAssign(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
property dest: HighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property src: HighLevelILInstruction
property vars_written: List[Union[SSAVariable, Variable]]

List of variables value is written by this instruction

class HighLevelILAssignMemSsa(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.SSA

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
property dest: HighLevelILInstruction
property dest_memory: int
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property src: HighLevelILInstruction
property src_memory: int
class HighLevelILAssignUnpack(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
property dest: List[HighLevelILInstruction]
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property src: HighLevelILInstruction
property vars_written: List[Union[SSAVariable, Variable]]

List of variables value is written by this instruction

class HighLevelILAssignUnpackMemSsa(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.SSA, binaryninja.commonil.Memory

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
property dest: List[HighLevelILInstruction]
property dest_memory: int
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property src: HighLevelILInstruction
property src_memory: int
class HighLevelILBasicBlock(handle: binaryninja._binaryninjacore.LP_BNBasicBlock, owner: HighLevelILFunction, view: Optional[BinaryView])[source]

Bases: binaryninja.basicblock.BasicBlock

The HighLevelILBasicBlock object is returned during analysis and should not be directly instantiated.

Parameters
property il_function: HighLevelILFunction
property instruction_count: int
class HighLevelILBinaryBase(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.BinaryOperation

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property left: HighLevelILInstruction
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property right: HighLevelILInstruction
class HighLevelILBlock(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction

Parameters
Return type

None

as_ast: bool
property body: List[HighLevelILInstruction]
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILBoolToInt(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILBp(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Terminal

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILBreak(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Terminal

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILCall(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Localcall

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
property dest: HighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property params: List[HighLevelILInstruction]
class HighLevelILCallSsa(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Localcall, binaryninja.commonil.SSA

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
property dest: HighLevelILInstruction
property dest_memory: int
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property params: List[HighLevelILInstruction]
property src_memory: int
class HighLevelILCarryBase(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
property carry: HighLevelILInstruction
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property left: HighLevelILInstruction
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property right: HighLevelILInstruction
class HighLevelILCase(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction

Parameters
Return type

None

as_ast: bool
property body: HighLevelILInstruction
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property values: List[HighLevelILInstruction]
class HighLevelILCeil(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILCmpE(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILCmpNe(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILCmpSge(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase, binaryninja.commonil.Signed

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILCmpSgt(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase, binaryninja.commonil.Signed

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILCmpSle(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase, binaryninja.commonil.Signed

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILCmpSlt(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase, binaryninja.commonil.Signed

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILCmpUge(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILCmpUgt(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILCmpUle(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILCmpUlt(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILComparisonBase(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Comparison

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILConst(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Constant

Parameters
Return type

None

as_ast: bool
property constant: int
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
class HighLevelILConstPtr(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Constant

Parameters
Return type

None

as_ast: bool
property constant: int
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
class HighLevelILContinue(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.ControlFlow

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILDeref(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILDerefField(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property member_index: Optional[int]
property offset: int
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property src: HighLevelILInstruction
class HighLevelILDerefFieldSsa(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.SSA

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property member_index: Optional[int]
property offset: int
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property src: HighLevelILInstruction
property src_memory: int
class HighLevelILDerefSsa(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.SSA

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property src: HighLevelILInstruction
property src_memory: int
class HighLevelILDivs(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Signed

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILDivsDp(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Signed, binaryninja.commonil.DoublePrecision

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILDivu(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILDivuDp(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.DoublePrecision

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILDoWhile(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Loop

Parameters
Return type

None

as_ast: bool
property body: HighLevelILInstruction
property condition: HighLevelILInstruction
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
class HighLevelILDoWhileSsa(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Loop, binaryninja.commonil.SSA

Parameters
Return type

None

as_ast: bool
property body: HighLevelILInstruction
property condition: HighLevelILInstruction
property condition_phi: HighLevelILInstruction
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
class HighLevelILExpr(index: ExpressionIndex)[source]

Bases: object

Warning

This object is deprecated. Please migrate code away from using this class or method.

class HighLevelILExpr hold the index of IL Expressions.

Note

Use ExpressionIndex instead

Parameters

index (ExpressionIndex) –

property index: ExpressionIndex
class HighLevelILExternPtr(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Constant

Parameters
Return type

None

as_ast: bool
property constant: int
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property offset: int
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
class HighLevelILFabs(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFadd(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFcmpE(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFcmpGe(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFcmpGt(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFcmpLe(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFcmpLt(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFcmpNe(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFcmpO(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFcmpUo(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILComparisonBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFdiv(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFloatConst(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Constant

Parameters
Return type

None

as_ast: bool
property constant: float
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
class HighLevelILFloatConv(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFloatToInt(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFloor(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFmul(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFneg(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFor(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Loop

Parameters
Return type

None

as_ast: bool
property body: HighLevelILInstruction
property condition: HighLevelILInstruction
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
property init: HighLevelILInstruction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property update: HighLevelILInstruction
class HighLevelILForSsa(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Loop, binaryninja.commonil.SSA

Parameters
Return type

None

as_ast: bool
property body: HighLevelILInstruction
property condition: HighLevelILInstruction
property condition_phi: HighLevelILInstruction
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
property init: HighLevelILInstruction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property update: HighLevelILInstruction
class HighLevelILFsqrt(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFsub(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFtrunc(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILFunction(arch: Optional[Architecture] = None, handle: Optional[binaryninja._binaryninjacore.BNHighLevelILFunction] = None, source_func: Optional[Function] = None)[source]

Bases: object

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

Parameters
add_operand_list(operands: List[int]) ExpressionIndex[source]

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

Parameters

operands (list(int)) – list of operand numbers

Returns

an operand list expression

Return type

ExpressionIndex

create_graph(settings: Optional[DisassemblySettings] = None) CoreFlowGraph[source]
Parameters

settings (Optional[DisassemblySettings]) –

Return type

CoreFlowGraph

expr(operation: Union[str, HighLevelILOperation], a: int = 0, b: int = 0, c: int = 0, d: int = 0, e: int = 0, size: int = 0) ExpressionIndex[source]
Parameters
Return type

ExpressionIndex

finalize() None[source]

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

Return type

None

generate_ssa_form(variables: Optional[List[Variable]] = None) None[source]

generate_ssa_form generate SSA form given the current HLIL

Parameters

variables (list(Variable)) – optional list of aliased variables

Return type

None

get_basic_block_at(index: int) Optional[BasicBlock][source]

get_basic_block_at returns the BasicBlock at the given HLIL instruction index.

Parameters

index (int) – Index of the HLIL instruction of the BasicBlock to retrieve.

Example
>>> current_il_function.get_basic_block_at(current_il_index)
<llil block: [email protected]>
Return type

Optional[BasicBlock]

get_label(label_idx: int) Optional[HighLevelILInstruction][source]
Parameters

label_idx (int) –

Return type

Optional[HighLevelILInstruction]

get_label_uses(label_idx: int) List[HighLevelILInstruction][source]
Parameters

label_idx (int) –

Return type

List[HighLevelILInstruction]

get_medium_level_il_expr_index(expr: ExpressionIndex) Optional[ExpressionIndex][source]
Parameters

expr (ExpressionIndex) –

Return type

Optional[ExpressionIndex]

get_medium_level_il_expr_indexes(expr: ExpressionIndex) List[ExpressionIndex][source]
Parameters

expr (ExpressionIndex) –

Return type

List[ExpressionIndex]

get_non_ssa_instruction_index(instr: int) int[source]
Parameters

instr (int) –

Return type

int

get_ssa_instruction_index(instr: int) int[source]
Parameters

instr (int) –

Return type

int

get_ssa_memory_definition(version: int) Optional[HighLevelILInstruction][source]
Parameters

version (int) –

Return type

Optional[HighLevelILInstruction]

get_ssa_memory_uses(version: int) List[HighLevelILInstruction][source]
Parameters

version (int) –

Return type

List[HighLevelILInstruction]

get_ssa_var_definition(ssa_var: SSAVariable) Optional[HighLevelILInstruction][source]
Parameters

ssa_var (SSAVariable) –

Return type

Optional[HighLevelILInstruction]

get_ssa_var_uses(ssa_var: SSAVariable) List[HighLevelILInstruction][source]
Parameters

ssa_var (SSAVariable) –

Return type

List[HighLevelILInstruction]

get_var_definitions(var: Variable) List[HighLevelILInstruction][source]
Parameters

var (Variable) –

Return type

List[HighLevelILInstruction]

get_var_uses(var: Variable) List[HighLevelILInstruction][source]
Parameters

var (Variable) –

Return type

List[HighLevelILInstruction]

is_ssa_var_live(ssa_var: SSAVariable) bool[source]

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

Parameters

ssa_var (SSAVariable) – the SSA variable to query

Returns

whether the variable is live at any point in the function

Return type

bool

is_ssa_var_live_at(ssa_var: SSAVariable, instr: InstructionIndex) bool[source]

is_ssa_var_live_at determines if ssa_var is live at a given point in the function; counts phi’s as uses

Parameters
  • ssa_var (SSAVariable) –

  • instr (InstructionIndex) –

Return type

bool

is_var_live_at(var: Variable, instr: InstructionIndex) bool[source]

is_var_live_at determines if var is live at a given point in the function

Parameters
  • var (Variable) –

  • instr (InstructionIndex) –

Return type

bool

set_current_address(value: int, arch: Optional[Architecture] = None) None[source]
Parameters
Return type

None

property aliased_vars: List[Variable]

This returns a list of Variables that are taken reference to and used elsewhere. You may also wish to consider HighLevelIlFunction.vars and HighLevelIlFunction.source_function.param_vars

property arch: Architecture
property basic_blocks: HighLevelILBasicBlockList
property current_address: int

Current IL Address (read/write)

property il_form: FunctionGraphType
property instructions: Generator[HighLevelILInstruction, None, None]

A generator of hlil instructions of the current function

property medium_level_il: Optional[MediumLevelILFunction]

Medium level IL for this function

property mlil: Optional[MediumLevelILFunction]

Alias for medium_level_il

property non_ssa_form: Optional[HighLevelILFunction]

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

property root: Optional[HighLevelILInstruction]

Root of the abstract syntax tree

property source_function: Function
property ssa_form: HighLevelILFunction

High level IL in SSA form (read-only)

property ssa_vars: List[SSAVariable]

This gets just the HLIL SSA variables - you may be interested in the union of HighLevelIlFunction.source_function.param_vars and HighLevelIlFunction.aliased_vars for all the variables used in the function

property vars: List[Variable]

This gets just the HLIL variables - you may be interested in the union of HighLevelIlFunction.source_function.param_vars and HighLevelIlFunction.aliased_vars as well for all the variables used in the function

property view: BinaryView
class HighLevelILGoto(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Terminal

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property target: GotoLabel
class HighLevelILIf(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.ControlFlow

Parameters
Return type

None

as_ast: bool
property condition: HighLevelILInstruction
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
property false: HighLevelILInstruction
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property true: HighLevelILInstruction
class HighLevelILImport(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Constant

Parameters
Return type

None

as_ast: bool
property constant: int
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
class HighLevelILInstruction(function: HighLevelILFunction, expr_index: ExpressionIndex, core_instr: CoreHighLevelILInstruction, as_ast: bool, instr_index: InstructionIndex)[source]

Bases: binaryninja.commonil.BaseILInstruction

class HighLevelILInstruction High Level Intermediate Language Instructions form an abstract syntax tree of the code. Control flow structures are present as high level constructs in the HLIL tree.

Parameters
Return type

None

classmethod create(func: HighLevelILFunction, expr_index: ExpressionIndex, as_ast: bool = True, instr_index: Optional[InstructionIndex] = None) HighLevelILInstruction[source]
Parameters
Return type

HighLevelILInstruction

get_expr(operand_index: int) HighLevelILInstruction[source]
Parameters

operand_index (int) –

Return type

HighLevelILInstruction

get_expr_list(operand_index1: int, operand_index2: int) List[HighLevelILInstruction][source]
Parameters
  • operand_index1 (int) –

  • operand_index2 (int) –

Return type

List[HighLevelILInstruction]

get_float(operand_index: int) float[source]
Parameters

operand_index (int) –

Return type

float

get_int(operand_index: int) int[source]
Parameters

operand_index (int) –

Return type

int

get_int_list(operand_index: int) List[int][source]
Parameters

operand_index (int) –

Return type

List[int]

get_intrinsic(operand_index: int) ILIntrinsic[source]
Parameters

operand_index (int) –

Return type

ILIntrinsic

get_label(operand_index: int) GotoLabel[source]
Parameters

operand_index (int) –

Return type

GotoLabel

get_member_index(operand_index: int) Optional[int][source]
Parameters

operand_index (int) –

Return type

Optional[int]

get_possible_values(options: Optional[List[DataFlowQueryOption]] = None) PossibleValueSet[source]
Parameters

options (Optional[List[DataFlowQueryOption]]) –

Return type

PossibleValueSet

get_ssa_var_version(var: Variable) int[source]
Parameters

var (Variable) –

Return type

int

get_var(operand_index: int) Variable[source]
Parameters

operand_index (int) –

Return type

Variable

get_var_ssa(operand_index1: int, operand_index2: int) SSAVariable[source]
Parameters
  • operand_index1 (int) –

  • operand_index2 (int) –

Return type

SSAVariable

get_var_ssa_dest_and_src(operand_index1: int, operand_index2: int) SSAVariable[source]
Parameters
  • operand_index1 (int) –

  • operand_index2 (int) –

Return type

SSAVariable

get_var_ssa_list(operand_index1: int, _: int) List[SSAVariable][source]
Parameters
  • operand_index1 (int) –

  • _ (int) –

Return type

List[SSAVariable]

static show_hlil_hierarchy()[source]

Opens a new tab showing the HLIL hierarchy which includes classes which can easily be used with isinstance to match multiple types of IL instructions.

ILOperations: ClassVar[Mapping[HighLevelILOperation, List[Tuple[str, str]]]] = {HighLevelILOperation.HLIL_NOP: [], HighLevelILOperation.HLIL_BLOCK: [('body', 'expr_list')], HighLevelILOperation.HLIL_IF: [('condition', 'expr'), ('true', 'expr'), ('false', 'expr')], HighLevelILOperation.HLIL_WHILE: [('condition', 'expr'), ('body', 'expr')], HighLevelILOperation.HLIL_DO_WHILE: [('body', 'expr'), ('condition', 'expr')], HighLevelILOperation.HLIL_FOR: [('init', 'expr'), ('condition', 'expr'), ('update', 'expr'), ('body', 'expr')], HighLevelILOperation.HLIL_SWITCH: [('condition', 'expr'), ('default', 'expr'), ('cases', 'expr_list')], HighLevelILOperation.HLIL_CASE: [('values', 'expr_list'), ('body', 'expr')], HighLevelILOperation.HLIL_BREAK: [], HighLevelILOperation.HLIL_CONTINUE: [], HighLevelILOperation.HLIL_JUMP: [('dest', 'expr')], HighLevelILOperation.HLIL_RET: [('src', 'expr_list')], HighLevelILOperation.HLIL_NORET: [], HighLevelILOperation.HLIL_GOTO: [('target', 'label')], HighLevelILOperation.HLIL_LABEL: [('target', 'label')], HighLevelILOperation.HLIL_VAR_DECLARE: [('var', 'var')], HighLevelILOperation.HLIL_VAR_INIT: [('dest', 'var'), ('src', 'expr')], HighLevelILOperation.HLIL_ASSIGN: [('dest', 'expr'), ('src', 'expr')], HighLevelILOperation.HLIL_ASSIGN_UNPACK: [('dest', 'expr_list'), ('src', 'expr')], HighLevelILOperation.HLIL_VAR: [('var', 'var')], HighLevelILOperation.HLIL_STRUCT_FIELD: [('src', 'expr'), ('offset', 'int'), ('member_index', 'member_index')], HighLevelILOperation.HLIL_ARRAY_INDEX: [('src', 'expr'), ('index', 'expr')], HighLevelILOperation.HLIL_SPLIT: [('high', 'expr'), ('low', 'expr')], HighLevelILOperation.HLIL_DEREF: [('src', 'expr')], HighLevelILOperation.HLIL_DEREF_FIELD: [('src', 'expr'), ('offset', 'int'), ('member_index', 'member_index')], HighLevelILOperation.HLIL_ADDRESS_OF: [('src', 'expr')], HighLevelILOperation.HLIL_CONST: [('constant', 'int')], HighLevelILOperation.HLIL_CONST_PTR: [('constant', 'int')], HighLevelILOperation.HLIL_EXTERN_PTR: [('constant', 'int'), ('offset', 'int')], HighLevelILOperation.HLIL_FLOAT_CONST: [('constant', 'float')], HighLevelILOperation.HLIL_IMPORT: [('constant', 'int')], HighLevelILOperation.HLIL_ADD: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_ADC: [('left', 'expr'), ('right', 'expr'), ('carry', 'expr')], HighLevelILOperation.HLIL_SUB: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_SBB: [('left', 'expr'), ('right', 'expr'), ('carry', 'expr')], HighLevelILOperation.HLIL_AND: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_OR: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_XOR: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_LSL: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_LSR: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_ASR: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_ROL: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_RLC: [('left', 'expr'), ('right', 'expr'), ('carry', 'expr')], HighLevelILOperation.HLIL_ROR: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_RRC: [('left', 'expr'), ('right', 'expr'), ('carry', 'expr')], HighLevelILOperation.HLIL_MUL: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_MULU_DP: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_MULS_DP: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_DIVU: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_DIVU_DP: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_DIVS: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_DIVS_DP: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_MODU: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_MODU_DP: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_MODS: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_MODS_DP: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_NEG: [('src', 'expr')], HighLevelILOperation.HLIL_NOT: [('src', 'expr')], HighLevelILOperation.HLIL_SX: [('src', 'expr')], HighLevelILOperation.HLIL_ZX: [('src', 'expr')], HighLevelILOperation.HLIL_LOW_PART: [('src', 'expr')], HighLevelILOperation.HLIL_CALL: [('dest', 'expr'), ('params', 'expr_list')], HighLevelILOperation.HLIL_CMP_E: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_CMP_NE: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_CMP_SLT: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_CMP_ULT: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_CMP_SLE: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_CMP_ULE: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_CMP_SGE: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_CMP_UGE: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_CMP_SGT: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_CMP_UGT: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_TEST_BIT: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_BOOL_TO_INT: [('src', 'expr')], HighLevelILOperation.HLIL_ADD_OVERFLOW: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_SYSCALL: [('params', 'expr_list')], HighLevelILOperation.HLIL_TAILCALL: [('dest', 'expr'), ('params', 'expr_list')], HighLevelILOperation.HLIL_INTRINSIC: [('intrinsic', 'intrinsic'), ('params', 'expr_list')], HighLevelILOperation.HLIL_BP: [], HighLevelILOperation.HLIL_TRAP: [('vector', 'int')], HighLevelILOperation.HLIL_UNDEF: [], HighLevelILOperation.HLIL_UNIMPL: [], HighLevelILOperation.HLIL_UNIMPL_MEM: [('src', 'expr')], HighLevelILOperation.HLIL_FADD: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_FSUB: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_FMUL: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_FDIV: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_FSQRT: [('src', 'expr')], HighLevelILOperation.HLIL_FNEG: [('src', 'expr')], HighLevelILOperation.HLIL_FABS: [('src', 'expr')], HighLevelILOperation.HLIL_FLOAT_TO_INT: [('src', 'expr')], HighLevelILOperation.HLIL_INT_TO_FLOAT: [('src', 'expr')], HighLevelILOperation.HLIL_FLOAT_CONV: [('src', 'expr')], HighLevelILOperation.HLIL_ROUND_TO_INT: [('src', 'expr')], HighLevelILOperation.HLIL_FLOOR: [('src', 'expr')], HighLevelILOperation.HLIL_CEIL: [('src', 'expr')], HighLevelILOperation.HLIL_FTRUNC: [('src', 'expr')], HighLevelILOperation.HLIL_FCMP_E: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_FCMP_NE: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_FCMP_LT: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_FCMP_LE: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_FCMP_GE: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_FCMP_GT: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_FCMP_O: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_FCMP_UO: [('left', 'expr'), ('right', 'expr')], HighLevelILOperation.HLIL_UNREACHABLE: [], HighLevelILOperation.HLIL_WHILE_SSA: [('condition_phi', 'expr'), ('condition', 'expr'), ('body', 'expr')], HighLevelILOperation.HLIL_DO_WHILE_SSA: [('body', 'expr'), ('condition_phi', 'expr'), ('condition', 'expr')], HighLevelILOperation.HLIL_FOR_SSA: [('init', 'expr'), ('condition_phi', 'expr'), ('condition', 'expr'), ('update', 'expr'), ('body', 'expr')], HighLevelILOperation.HLIL_VAR_INIT_SSA: [('dest', 'var_ssa'), ('src', 'expr')], HighLevelILOperation.HLIL_ASSIGN_MEM_SSA: [('dest', 'expr'), ('dest_memory', 'int'), ('src', 'expr'), ('src_memory', 'int')], HighLevelILOperation.HLIL_ASSIGN_UNPACK_MEM_SSA: [('dest', 'expr_list'), ('dest_memory', 'int'), ('src', 'expr'), ('src_memory', 'int')], HighLevelILOperation.HLIL_VAR_SSA: [('var', 'var_ssa')], HighLevelILOperation.HLIL_ARRAY_INDEX_SSA: [('src', 'expr'), ('src_memory', 'int'), ('index', 'expr')], HighLevelILOperation.HLIL_DEREF_SSA: [('src', 'expr'), ('src_memory', 'int')], HighLevelILOperation.HLIL_DEREF_FIELD_SSA: [('src', 'expr'), ('src_memory', 'int'), ('offset', 'int'), ('member_index', 'member_index')], HighLevelILOperation.HLIL_CALL_SSA: [('dest', 'expr'), ('params', 'expr_list'), ('dest_memory', 'int'), ('src_memory', 'int')], HighLevelILOperation.HLIL_SYSCALL_SSA: [('params', 'expr_list'), ('dest_memory', 'int'), ('src_memory', 'int')], HighLevelILOperation.HLIL_INTRINSIC_SSA: [('intrinsic', 'intrinsic'), ('params', 'expr_list'), ('dest_memory', 'int'), ('src_memory', 'int')], HighLevelILOperation.HLIL_VAR_PHI: [('dest', 'var_ssa'), ('src', 'var_ssa_list')], HighLevelILOperation.HLIL_MEM_PHI: [('dest', 'int'), ('src', 'int_list')]}
property address: int
as_ast: bool
property ast: HighLevelILInstruction

This expression with full AST printing (read-only)

core_instr: CoreHighLevelILInstruction
property core_operands: Tuple[ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex]
expr_index: ExpressionIndex
property expr_type: Optional[Type]

Type of expression

function: HighLevelILFunction
property il_basic_block: Optional[HighLevelILBasicBlock]

IL basic block object containing this expression (read-only) (only available on finalized functions). Returns None for HLIL_BLOCK expressions as these can contain multiple basic blocks.

property instr: HighLevelILInstruction

The statement that this expression belongs to (read-only)

instr_index: InstructionIndex
property instruction_operands: List[HighLevelILInstruction]
property lines: Generator[DisassemblyTextLine, None, None]

HLIL text lines (read-only)

property llil: Optional[LowLevelILInstruction]

Alias for low_level_il

property llils: List[ExpressionIndex]
property low_level_il: Optional[LowLevelILInstruction]

Low level IL form of this expression

property medium_level_il: Optional[MediumLevelILInstruction]

Medium level IL form of this expression

property mlil: Optional[MediumLevelILInstruction]

Alias for medium_level_il

property mlils: Optional[List[MediumLevelILInstruction]]
property non_ast: HighLevelILInstruction

This expression without full AST printing (read-only)

property non_ssa_form: Optional[HighLevelILInstruction]

Non-SSA form of expression (read-only)

property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property operation: HighLevelILOperation
property parent: Optional[HighLevelILInstruction]
property possible_values: PossibleValueSet

Possible values of expression using path-sensitive static data flow analysis (read-only)

property postfix_operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel, HighLevelILOperationAndSize]]

All operands in the expression tree in postfix order

property prefix_operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel, HighLevelILOperationAndSize]]

All operands in the expression tree in prefix order

property size: int
property source_operand: ExpressionIndex
property ssa_form: HighLevelILInstruction

SSA form of expression (read-only)

property ssa_memory_version: int

Version of active memory contents in SSA form for this instruction

property tokens: List[InstructionTextToken]

HLIL tokens taken from the HLIL text lines (read-only) – does not include newlines or indentation, use lines for that information

property value: RegisterValue

Value of expression if constant or a known value (read-only)

property vars: List[Union[SSAVariable, Variable]]

Non-unique list of variables read by instruction

property vars_address_taken: List[Union[SSAVariable, Variable]]

Non-unique list of variables whose address is taken by instruction

Note

This property has some nuance to it, so use carefully. This property will return only those variable which directly have their address taken such as &var_4 or &var_8.d but not those which are involved in an address calculation such as &(var_4 + 0) or &var_4[0] even though they may be functionally equivalent.

property vars_read: List[Union[SSAVariable, Variable]]

Non-unique list of variables whose value is read by this instruction

property vars_written: List[Union[SSAVariable, Variable]]

List of variables value is written by this instruction

class HighLevelILIntToFloat(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILIntrinsic(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Intrinsic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property intrinsic: ILIntrinsic
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property params: List[HighLevelILInstruction]
class HighLevelILIntrinsicSsa(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.SSA

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
property dest_memory: int
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property intrinsic: ILIntrinsic
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property params: List[HighLevelILInstruction]
property src_memory: int
class HighLevelILJump(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Terminal

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
property dest: HighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
class HighLevelILLabel(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property target: GotoLabel
class HighLevelILLowPart(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILLsl(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILLsr(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILMemPhi(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Memory, binaryninja.commonil.Phi

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
property dest: int
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
property src: List[int]
class HighLevelILMods(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Signed

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILModsDp(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Signed, binaryninja.commonil.DoublePrecision

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILModu(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILModuDp(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.DoublePrecision

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILMul(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILMulsDp(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.commonil.Signed, binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.DoublePrecision

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILMuluDp(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.DoublePrecision

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILNeg(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILNop(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILNoret(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Terminal

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILNot(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILOperationAndSize(operation: HighLevelILOperation, size: int)[source]

Bases: object

Parameters
Return type

None

operation: HighLevelILOperation
size: int
class HighLevelILOr(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILRet(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction, binaryninja.commonil.Return

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property operands: List[HighLevelILInstruction]
property src: List[HighLevelILInstruction]
class HighLevelILRlc(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILCarryBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILRol(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILBinaryBase, binaryninja.commonil.Arithmetic

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILRor(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILCarryBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILRoundToInt(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILUnaryBase, binaryninja.commonil.FloatingPoint

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILRrc(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILCarryBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILSbb(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILCarryBase

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
class HighLevelILSplit(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
property high: HighLevelILInstruction
instr_index: InstructionIndex
property low: HighLevelILInstruction
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction], int, None, float, GotoLabel]]
class HighLevelILStructField(function: 'HighLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x7ff093f235e0>, core_instr: binaryninja.highlevelil.CoreHighLevelILInstruction, as_ast: bool, instr_index: <function NewType.<locals>.new_type at 0x7ff093f23940>)[source]

Bases: binaryninja.highlevelil.HighLevelILInstruction

Parameters
Return type

None

as_ast: bool
core_instr: CoreHighLevelILInstruction
expr_index: ExpressionIndex
function: HighLevelILFunction
instr_index: InstructionIndex
property member_index: Optional[int]
property offset: int
property operands: List[Union[HighLevelILInstruction, ILIntrinsic, Variable, SSAVariable, List[int], List[Variable], List[SSAVariable], List[HighLevelILInstruction]