mediumlevelil module¶
The |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- class CoreMediumLevelILInstruction(operation: MediumLevelILOperation, attributes: int, source_operand: int, size: int, operands: Tuple[ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex], address: int)[source]¶
Bases:
object
- Parameters:
- classmethod from_BNMediumLevelILInstruction(instr: BNMediumLevelILInstruction) CoreMediumLevelILInstruction [source]¶
- Parameters:
instr (BNMediumLevelILInstruction) –
- Return type:
- operands: Tuple[ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex]¶
- operation: MediumLevelILOperation¶
- class MediumLevelILAdc(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCarryBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILAdd(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILAddOverflow(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILAddressOf(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILAddressOfField(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILAnd(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILAsr(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILBasicBlock(handle: LP_BNBasicBlock, owner: MediumLevelILFunction, view: BinaryView | None = None)[source]¶
Bases:
BasicBlock
The
MediumLevelILBasicBlock
object is returned during analysis and should not be directly instantiated.- Parameters:
handle (LP_BNBasicBlock) –
owner (MediumLevelILFunction) –
view (BinaryView | None) –
- property il_function: MediumLevelILFunction¶
- class MediumLevelILBinaryBase(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,BinaryOperation
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property left: MediumLevelILInstruction¶
- property right: MediumLevelILInstruction¶
- class MediumLevelILBoolToInt(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- class MediumLevelILBp(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Terminal
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILCall(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCallBase
,Localcall
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property params: List[MediumLevelILInstruction]¶
- class MediumLevelILCallBase(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Call
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property output: List[Variable | SSAVariable]¶
- property params: List[SSAVariable | Variable | MediumLevelILInstruction]¶
- property vars_read: List[Variable | SSAVariable]¶
List of variables read by instruction
- property vars_written: List[Variable | SSAVariable]¶
List of variables written by instruction
- class MediumLevelILCallOutput(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILCallOutputSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: List[SSAVariable]¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property vars_written: List[SSAVariable]¶
List of variables written by instruction
- class MediumLevelILCallParam(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILCallParamSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: List[SSAVariable]¶
- class MediumLevelILCallSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCallBase
,Localcall
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property output: List[SSAVariable]¶
- property params: List[MediumLevelILInstruction]¶
- class MediumLevelILCallUntyped(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCallBase
,Localcall
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property stack: MediumLevelILInstruction¶
- class MediumLevelILCallUntypedSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCallBase
,Localcall
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property output: List[SSAVariable]¶
- property params: List[SSAVariable]¶
- property params_src_memory¶
- property stack: MediumLevelILInstruction¶
- class MediumLevelILCarryBase(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Carry
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property carry: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property left: MediumLevelILInstruction¶
- property right: MediumLevelILInstruction¶
- class MediumLevelILCeil(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILCmpE(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILCmpNe(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILCmpSge(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
,Signed
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILCmpSgt(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
,Signed
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILCmpSle(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
,Signed
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILCmpSlt(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
,Signed
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILCmpUge(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILCmpUgt(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILCmpUle(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILCmpUlt(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILComparisonBase(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Comparison
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILConst(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILConstBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILConstBase(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Constant
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILConstData(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILConstBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property constant_data: ConstantData¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILConstPtr(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILConstBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property string: Tuple[str, StringType] | None¶
- class MediumLevelILDivs(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
,Signed
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILDivsDp(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,DoublePrecision
,Signed
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILDivu(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILDivuDp(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,DoublePrecision
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILExpr(index)[source]¶
Bases:
object
class MediumLevelILExpr
hold the index of IL Expressions.Note
Deprecated. Use ExpressionIndex instead
- property index¶
- class MediumLevelILExternPtr(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILConstBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFabs(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFadd(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFcmpE(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFcmpGe(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFcmpGt(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFcmpLe(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFcmpLt(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFcmpNe(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFcmpO(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFcmpUo(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFdiv(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFloatConst(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILConstBase
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFloatConv(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFloatToInt(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFloor(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFmul(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFneg(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFreeVarSlot(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,RegisterStack
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFreeVarSlotSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SSA
,RegisterStack
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: SSAVariable¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property prev: SSAVariable¶
- class MediumLevelILFsqrt(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFsub(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFtrunc(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILFunction(arch: Architecture | None = None, handle: BNMediumLevelILFunction | None = None, source_func: Function | None = None)[source]¶
Bases:
object
class MediumLevelILFunction
contains the list of ExpressionIndex objects that make up a function. ExpressionIndex objects can be added to the MediumLevelILFunction by callingappend
and passing the result of the various class methods which return ExpressionIndex objects.- Parameters:
arch (Architecture | None) –
handle (BNMediumLevelILFunction | None) –
source_func (Function | None) –
- add_label_map(labels: Mapping[int, MediumLevelILLabel]) ExpressionIndex [source]¶
add_label_map
returns a label list expression for the given list of MediumLevelILLabel objects.- Parameters:
labels (dict(int, MediumLevelILLabel)) – the list of MediumLevelILLabel to get a label list expression from
- Returns:
the label list expression
- Return type:
ExpressionIndex
- add_operand_list(operands: List[ExpressionIndex]) ExpressionIndex [source]¶
add_operand_list
returns an operand list expression for the given list of integer operands.
- append(expr: ExpressionIndex) int [source]¶
append
adds the ExpressionIndexexpr
to the current MediumLevelILFunction.- Parameters:
expr (ExpressionIndex) – the ExpressionIndex to add to the current MediumLevelILFunction
- Returns:
number of ExpressionIndex in the current function
- Return type:
- copy_expr(original: MediumLevelILInstruction) ExpressionIndex [source]¶
copy_expr
adds an expression to the function which is equivalent to the given expression- Parameters:
original (MediumLevelILInstruction) – the original IL Instruction you want to copy
- Returns:
The index of the newly copied expression
- Return type:
ExpressionIndex
- create_graph(settings: DisassemblySettings | None = None) CoreFlowGraph [source]¶
- Parameters:
settings (DisassemblySettings | None) –
- Return type:
- expr(operation: MediumLevelILOperation, a: int = 0, b: int = 0, c: int = 0, d: int = 0, e: int = 0, size: int = 0) ExpressionIndex [source]¶
- finalize() None [source]¶
finalize
ends the function and computes the list of basic blocks.- Return type:
None
- generate_ssa_form(analyze_conditionals: bool = True, handle_aliases: bool = True, known_not_aliases: List[Variable] | None = None, known_aliases: List[Variable] | None = None) None [source]¶
generate_ssa_form
generate SSA form given the current MLIL- Parameters:
analyze_conditionals (bool) – whether or not to analyze conditionals, defaults to
True
handle_aliases (bool) – whether or not to handle aliases, defaults to
True
known_not_aliases (list(Variable)) – optional list of variables known to be not aliased
known_aliases (list(Variable)) – optional list of variables known to be aliased
- Return type:
None
- get_basic_block_at(index: int) BasicBlock | None [source]¶
get_basic_block_at
returns the BasicBlock at the given MLIL instructionindex
.- Parameters:
index (int) – Index of the MLIL instruction of the BasicBlock to retrieve.
- Example:
>>> current_il_function.get_basic_block_at(current_il_index) <mlil block: x86@40-60>
- Return type:
BasicBlock | None
- get_expr(index: ExpressionIndex) MediumLevelILInstruction | None [source]¶
get_expr
retrieves the IL expression at a given expression index in the function.Warning
Not all IL expressions are valid, even if their index is within the bounds of the function, they might not be used by the function and might not contain properly structured data.
- Parameters:
index (ExpressionIndex) – Index of desired expression in function
- Returns:
A MediumLevelILInstruction object for the expression, if it exists. Otherwise, None
- Return type:
MediumLevelILInstruction | None
- get_expr_count() int [source]¶
get_expr_count
gives a the total number of expressions in this IL functionYou can use this to enumerate all expressions in conjunction with
get_expr
Warning
Not all IL expressions are valid, even if their index is within the bounds of the function, they might not be used by the function and might not contain properly structured data.
- Returns:
The number of expressions in the function
- Return type:
- get_expr_type(expr_index: int) Type | None [source]¶
Get type of expression
- Parameters:
expr_index (int) – index of the expression to retrieve
- Return type:
Optional[’types.Type’]
- get_high_level_il_expr_index(expr: ExpressionIndex) ExpressionIndex | None [source]¶
- Parameters:
expr (ExpressionIndex) –
- Return type:
ExpressionIndex | None
- get_high_level_il_expr_indexes(expr: ExpressionIndex) List[ExpressionIndex] [source]¶
- Parameters:
expr (ExpressionIndex) –
- Return type:
List[ExpressionIndex]
- get_high_level_il_instruction_index(instr: InstructionIndex) InstructionIndex | None [source]¶
- Parameters:
instr (InstructionIndex) –
- Return type:
InstructionIndex | None
- get_instruction_start(addr: int, arch: Architecture | None = None) int | None [source]¶
- Parameters:
addr (int) –
arch (Architecture | None) –
- Return type:
int | None
- get_live_instructions_for_var(var: Variable, include_last_use: bool = True) List[MediumLevelILInstruction] [source]¶
get_live_instructions_for_var
computes the list of instructions for whichvar
is live. Ifinclude_last_use
is False, the last use of the variable will not be included in the list (this allows for easier computation of overlaps in liveness between two variables). If the variable is never used, this function will return an empty list.- Parameters:
var (SSAVariable) – the variable to query
include_last_use (bool) – whether to include the last use of the variable in the list of instructions
- Returns:
list of instructions for which
var
is live- Return type:
- get_low_level_il_expr_index(expr: ExpressionIndex) ExpressionIndex | None [source]¶
- Parameters:
expr (ExpressionIndex) –
- Return type:
ExpressionIndex | None
- get_low_level_il_expr_indexes(expr: ExpressionIndex) List[ExpressionIndex] [source]¶
- Parameters:
expr (ExpressionIndex) –
- Return type:
List[ExpressionIndex]
- get_low_level_il_instruction_index(instr: InstructionIndex) InstructionIndex | None [source]¶
- Parameters:
instr (InstructionIndex) –
- Return type:
InstructionIndex | None
- get_non_ssa_instruction_index(instr: InstructionIndex) InstructionIndex [source]¶
- Parameters:
instr (InstructionIndex) –
- Return type:
InstructionIndex
- get_ssa_instruction_index(instr: InstructionIndex) InstructionIndex [source]¶
- Parameters:
instr (InstructionIndex) –
- Return type:
InstructionIndex
- get_ssa_memory_definition(version: int) MediumLevelILInstruction | None [source]¶
- Parameters:
version (int) –
- Return type:
MediumLevelILInstruction | None
- get_ssa_memory_uses(version: int) List[MediumLevelILInstruction] [source]¶
- Parameters:
version (int) –
- Return type:
- get_ssa_var_definition(ssa_var: SSAVariable | MediumLevelILVarSsa) MediumLevelILInstruction | None [source]¶
Gets the instruction that contains the given SSA variable’s definition.
Since SSA variables can only be defined once, this will return the single instruction where that occurs. For SSA variable version 0s, which don’t have definitions, this will return None instead.
- Parameters:
ssa_var (SSAVariable | MediumLevelILVarSsa) –
- Return type:
MediumLevelILInstruction | None
- get_ssa_var_uses(ssa_var: SSAVariable | MediumLevelILVarSsa) List[MediumLevelILInstruction] [source]¶
Gets all the instructions that use the given SSA variable.
- Parameters:
ssa_var (SSAVariable | MediumLevelILVarSsa) –
- Return type:
- get_ssa_var_value(ssa_var: SSAVariable) RegisterValue [source]¶
- Parameters:
ssa_var (SSAVariable) –
- Return type:
- get_var_definitions(var: Variable) List[MediumLevelILInstruction] [source]¶
- Parameters:
var (Variable) –
- Return type:
- get_var_uses(var: Variable) List[MediumLevelILInstruction] [source]¶
- Parameters:
var (Variable) –
- Return type:
- goto(label: MediumLevelILLabel) ExpressionIndex [source]¶
goto
returns a goto expression which jumps to the provided MediumLevelILLabel.- Parameters:
label (MediumLevelILLabel) – Label to jump to
- Returns:
the ExpressionIndex that jumps to the provided label
- Return type:
ExpressionIndex
- if_expr(operand: ExpressionIndex, t: MediumLevelILLabel, f: MediumLevelILLabel) ExpressionIndex [source]¶
if_expr
returns theif
expression which depending on conditionoperand
jumps to the MediumLevelILLabelt
when the condition expressionoperand
is non-zero andf
when it’s zero.- Parameters:
operand (ExpressionIndex) – comparison expression to evaluate.
t (MediumLevelILLabel) – Label for the true branch
f (MediumLevelILLabel) – Label for the false branch
- Returns:
the ExpressionIndex for the if expression
- Return type:
ExpressionIndex
- is_ssa_var_live(ssa_var: SSAVariable) bool [source]¶
is_ssa_var_live
determines ifssa_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:
- is_ssa_var_live_at(ssa_var: SSAVariable, instr: InstructionIndex) bool [source]¶
is_ssa_var_live_at
determines ifssa_var
is live at a given point in the function; counts phi’s as uses- Parameters:
ssa_var (SSAVariable) –
instr (InstructionIndex) –
- Return type:
- is_var_live_at(var: Variable, instr: InstructionIndex) bool [source]¶
is_var_live_at
determines ifvar
is live at a given point in the function
- mark_label(label: MediumLevelILLabel) None [source]¶
mark_label
assigns a MediumLevelILLabel to the current IL address.- Parameters:
label (MediumLevelILLabel) –
- Return type:
None
- replace_expr(original: MediumLevelILInstruction | ExpressionIndex | InstructionIndex, new: MediumLevelILInstruction | ExpressionIndex | InstructionIndex) None [source]¶
replace_expr
allows modification of MLIL expressions- Parameters:
original (ExpressionIndex) – the ExpressionIndex to replace (may also be an expression index)
new (ExpressionIndex) – the ExpressionIndex to add to the current LowLevelILFunction (may also be an expression index)
- Return type:
None
- set_current_address(value: int, arch: Architecture | None = None) None [source]¶
- Parameters:
value (int) –
arch (Architecture | None) –
- Return type:
None
- set_expr_attributes(expr: MediumLevelILInstruction | ExpressionIndex | InstructionIndex, value: Set[ILInstructionAttribute] | List[ILInstructionAttribute])[source]¶
set_expr_attributes
allows modification of instruction attributes but ONLY during lifting.Warning
This function should ONLY be called as a part of a lifter. It will otherwise not do anything useful as there’s no way to trigger re-analysis of IL levels at this time.
- Parameters:
expr (ExpressionIndex) – the ExpressionIndex to replace (may also be an expression index)
value (set(ILInstructionAttribute)) – the set of attributes to place on the instruction
- Return type:
None
- set_expr_type(expr_index: int, expr_type: str | Type | TypeBuilder) None [source]¶
Set type of expression
This API is only meant for workflows or for debugging purposes, since the changes they make are not persistent and get lost after a database save and reload. To make persistent changes to the analysis, one should use other APIs to, for example, change the type of variables. The analysis will then propagate the type of the variable and update the type of related expressions.
- Parameters:
expr_index (int) – index of the expression to set
StringOrType – new type of the expression
expr_type (str | Type | TypeBuilder) –
- Return type:
None
- traverse(cb: Callable[[MediumLevelILInstruction, Any], Any], *args: Any, **kwargs: Any) Iterator[Any] [source]¶
traverse
iterates through all the instructions in the MediumLevelILInstruction and calls the callback function for each instruction and sub-instruction. See the Developer Docs for more examples.- Parameters:
cb (Callable[[MediumLevelILInstruction, Any], Any]) – Callback function that takes a HighLevelILInstruction and returns a value
args (Any) – Custom user-defined arguments
kwargs (Any) – Custom user-defined keyword arguments
cb –
- Returns:
An iterator of the results of the callback function
- Return type:
Iterator[Any]
- Example:
>>> def find_constants(instr) -> Optional[int]: ... if isinstance(instr, Constant): ... return instr.constant >>> print(list(current_il_function.traverse(find_constants)))
- visit(cb: Callable[[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str, MediumLevelILInstruction | None], bool]) bool [source]¶
Iterates over all the instructions in the function and calls the callback function for each instruction and each sub-instruction.
- Parameters:
cb (MediumLevelILVisitorCallback) – Callback function that takes the name of the operand, the operand, operand type, and parent instruction
- Returns:
True if all instructions were visited, False if the callback function returned False.
- Return type:
Deprecated since version 4.0.4907: Use
MediumLevelILFunction.traverse
instead.
- visit_all(cb: Callable[[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str, MediumLevelILInstruction | None], bool]) bool [source]¶
Iterates over all the instructions in the function and calls the callback function for each instruction and their operands.
- Parameters:
cb (MediumLevelILVisitorCallback) – Callback function that takes the name of the operand, the operand, operand type, and parent instruction
- Returns:
True if all instructions were visited, False if the callback function returned False.
- Return type:
Deprecated since version 4.0.4907: Use
MediumLevelILFunction.traverse
instead.
- visit_operands(cb: Callable[[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str, MediumLevelILInstruction | None], bool]) bool [source]¶
- Iterates over all the instructions in the function and calls the callback function for each operand and
the operands of each sub-instruction.
- Parameters:
cb (MediumLevelILVisitorCallback) – Callback function that takes the name of the operand, the operand, operand type, and parent instruction
- Returns:
True if all instructions were visited, False if the callback function returned False.
- Return type:
Deprecated since version 4.0.4907: Use
MediumLevelILFunction.traverse
instead.
- 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 MediumLevelIlFunction.vars and MediumLevelIlFunction.source_function.parameter_vars
- property arch: Architecture¶
- property basic_blocks: MediumLevelILBasicBlockList¶
- property high_level_il: HighLevelILFunction | None¶
High level IL for this medium level IL.
- property hlil: HighLevelILFunction | None¶
- property il_form: FunctionGraphType¶
- property instructions: Generator[MediumLevelILInstruction, None, None]¶
A generator of mlil instructions of the current function
- property llil: LowLevelILFunction | None¶
Alias for low_level_il
- property low_level_il: LowLevelILFunction | None¶
Low level IL for this function
- property non_ssa_form: MediumLevelILFunction | None¶
Medium level IL in non-SSA (default) form (read-only)
- property ssa_form: MediumLevelILFunction | None¶
Medium level IL in SSA form (read-only)
- property ssa_vars: List[SSAVariable]¶
This gets just the MLIL SSA variables - you may be interested in the union of MediumLevelIlFunction.aliased_vars and MediumLevelIlFunction.source_function.parameter_vars for all the variables used in the function
- property vars: List[Variable]¶
This gets just the MLIL variables - you may be interested in the union of MediumLevelIlFunction.aliased_vars and MediumLevelIlFunction.source_function.parameter_vars for all the variables used in the function
- property view: BinaryView¶
- class MediumLevelILGoto(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Terminal
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILIf(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Terminal
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property condition: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILImport(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILConstBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILInstruction(function: MediumLevelILFunction, expr_index: ExpressionIndex, instr: CoreMediumLevelILInstruction, instr_index: InstructionIndex)[source]¶
Bases:
BaseILInstruction
class MediumLevelILInstruction
Medium Level Intermediate Language Instructions are infinite length tree-based instructions. Tree-based instructions use infix notation with the left hand operand being the destination operand. Infix notation is thus more natural to read than other notations (e.g. x86mov eax, 0
vs. MLILeax = 0
).- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- classmethod create(func: MediumLevelILFunction, expr_index: ExpressionIndex, instr_index: InstructionIndex | None = None) MediumLevelILInstruction [source]¶
- Parameters:
func (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr_index (InstructionIndex | None) –
- Return type:
- get_branch_dependence(branch_instr: int) ILBranchDependence [source]¶
- Parameters:
branch_instr (int) –
- Return type:
- get_flag_value(flag: FlagName | ILFlag | FlagIndex) RegisterValue [source]¶
- Parameters:
flag (FlagName | ILFlag | FlagIndex) –
- Return type:
- get_flag_value_after(flag: FlagName | ILFlag | FlagIndex) RegisterValue [source]¶
- Parameters:
flag (FlagName | ILFlag | FlagIndex) –
- Return type:
- get_possible_flag_values(flag: FlagName | ILFlag | FlagIndex, options: List[DataFlowQueryOption] | None = None) PossibleValueSet [source]¶
- Parameters:
flag (FlagName | ILFlag | FlagIndex) –
options (List[DataFlowQueryOption] | None) –
- Return type:
- get_possible_flag_values_after(flag: FlagName | ILFlag | FlagIndex, options: List[DataFlowQueryOption] | None = None) PossibleValueSet [source]¶
- Parameters:
flag (FlagName | ILFlag | FlagIndex) –
options (List[DataFlowQueryOption] | None) –
- Return type:
- get_possible_reg_values(reg: RegisterName | ILRegister | RegisterIndex, options: List[DataFlowQueryOption] | None = None) PossibleValueSet [source]¶
- Parameters:
reg (RegisterName | ILRegister | RegisterIndex) –
options (List[DataFlowQueryOption] | None) –
- Return type:
- get_possible_reg_values_after(reg: RegisterName | ILRegister | RegisterIndex, options: List[DataFlowQueryOption] | None = None) PossibleValueSet [source]¶
- Parameters:
reg (RegisterName | ILRegister | RegisterIndex) –
options (List[DataFlowQueryOption] | None) –
- Return type:
- get_possible_stack_contents(offset: int, size: int, options: List[DataFlowQueryOption] | None = None) PossibleValueSet [source]¶
- Parameters:
offset (int) –
size (int) –
options (List[DataFlowQueryOption] | None) –
- Return type:
- get_possible_stack_contents_after(offset: int, size: int, options: List[DataFlowQueryOption] | None = None) PossibleValueSet [source]¶
- Parameters:
offset (int) –
size (int) –
options (List[DataFlowQueryOption] | None) –
- Return type:
- get_possible_values(options: List[DataFlowQueryOption] | None = None) PossibleValueSet [source]¶
- Parameters:
options (List[DataFlowQueryOption] | None) –
- Return type:
- get_reg_value(reg: RegisterName | ILRegister | RegisterIndex) RegisterValue [source]¶
- Parameters:
reg (RegisterName | ILRegister | RegisterIndex) –
- Return type:
- get_reg_value_after(reg: RegisterName | ILRegister | RegisterIndex) RegisterValue [source]¶
- Parameters:
reg (RegisterName | ILRegister | RegisterIndex) –
- Return type:
- get_split_var_for_definition(var: Variable) Variable [source]¶
Gets the unique variable for a definition instruction. This unique variable can be passed to
Function.split_var
to split a variable at a definition. The givenvar
is the assigned variable to query.
- get_ssa_var_possible_values(ssa_var: SSAVariable, options: List[DataFlowQueryOption] = [])[source]¶
- Parameters:
ssa_var (SSAVariable) –
options (List[DataFlowQueryOption]) –
- get_stack_contents(offset: int, size: int) RegisterValue [source]¶
- Parameters:
- Return type:
- get_stack_contents_after(offset: int, size: int) RegisterValue [source]¶
- Parameters:
- Return type:
- get_var_for_reg(reg: RegisterName | ILRegister | RegisterIndex) Variable [source]¶
- Parameters:
reg (RegisterName | ILRegister | RegisterIndex) –
- Return type:
- static show_mlil_hierarchy()[source]¶
Opens a new tab showing the MLIL hierarchy which includes classes which can easily be used with isinstance to match multiple types of IL instructions.
- traverse(cb: Callable[[MediumLevelILInstruction, Any], Any], *args: Any, **kwargs: Any) Iterator[Any] [source]¶
traverse
is a generator that allows you to traverse the MediumLevelILInstruction in a depth-first manner. It will yield the result of the callback function for each node in the tree. Arguments can be passed to the callback function usingargs
andkwargs
. See the Developer Docs for more examples.- Parameters:
cb (Callable[[MediumLevelILInstruction, Any], Any]) – The callback function to call for each node in the MediumLevelILInstruction
args (Any) – Custom user-defined arguments
kwargs (Any) – Custom user-defined keyword arguments
cb –
- Returns:
An iterator of the results of the callback function
- Return type:
Iterator[Any]
- Example:
>>> def get_constant_less_than_value(inst: MediumLevelILInstruction, value: int) -> int: >>> if isinstance(inst, Constant) and inst.constant < value: >>> return inst.constant >>> >>> list(inst.traverse(get_constant_less_than_value, 10))
- visit(cb: Callable[[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str, MediumLevelILInstruction | None], bool], name: str = 'root', parent: MediumLevelILInstruction | None = None) bool [source]¶
Visits all MediumLevelILInstructions in the operands of this instruction and any sub-instructions. In the callback you provide, you likely only need to interact with the second argument (see the example below).
- Parameters:
cb (MediumLevelILVisitorCallback) – Callback function that takes the name of the operand, the operand, operand type, and parent instruction
name (str) –
parent (MediumLevelILInstruction | None) –
- Returns:
True if all instructions were visited, False if the callback returned False
- Example:
>>> def visitor(_a, inst, _c, _d) -> bool: >>> if isinstance(inst, Constant): >>> print(f"Found constant: {inst.constant}") >>> return False # Stop recursion (once we find a constant, don't recurse in to any sub-instructions (which there won't actually be any...)) >>> # Otherwise, keep recursing the subexpressions of this instruction; if no return value is provided, it'll keep descending >>> >>> # Finds all constants used in the program >>> for inst in current_mlil.instructions: >>> inst.visit(visitor)
- Return type:
Deprecated since version 4.0.4907: Use
MediumLevelILInstruction.traverse
instead.
- visit_all(cb: Callable[[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str, MediumLevelILInstruction | None], bool], name: str = 'root', parent: MediumLevelILInstruction | None = None) bool [source]¶
Visits all operands of this instruction and all operands of any sub-instructions. Using pre-order traversal.
- Parameters:
cb (MediumLevelILVisitorCallback) – Callback function that takes the name of the operand, the operand, operand type, and parent instruction
name (str) –
parent (MediumLevelILInstruction | None) –
- Returns:
True if all instructions were visited, False if the callback returned False
- Return type:
Deprecated since version 4.0.4907: Use
MediumLevelILInstruction.traverse
instead.
- visit_operands(cb: Callable[[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str, MediumLevelILInstruction | None], bool], name: str = 'root', parent: MediumLevelILInstruction | None = None) bool [source]¶
Visits all leaf operands of this instruction and any sub-instructions.
- Parameters:
cb (MediumLevelILVisitorCallback) – Callback function that takes the name of the operand, the operand, operand type, and parent instruction
name (str) –
parent (MediumLevelILInstruction | None) –
- Returns:
True if all instructions were visited, False if the callback returned False
- Return type:
Deprecated since version 4.0.4907: Use
MediumLevelILInstruction.traverse
instead.
- ILOperations: ClassVar[Mapping[MediumLevelILOperation, List[Tuple[str, str]]]] = {MediumLevelILOperation.MLIL_NOP: [], MediumLevelILOperation.MLIL_SET_VAR: [('dest', 'var'), ('src', 'expr')], MediumLevelILOperation.MLIL_SET_VAR_FIELD: [('dest', 'var'), ('offset', 'int'), ('src', 'expr')], MediumLevelILOperation.MLIL_SET_VAR_SPLIT: [('high', 'var'), ('low', 'var'), ('src', 'expr')], MediumLevelILOperation.MLIL_LOAD: [('src', 'expr')], MediumLevelILOperation.MLIL_LOAD_STRUCT: [('src', 'expr'), ('offset', 'int')], MediumLevelILOperation.MLIL_STORE: [('dest', 'expr'), ('src', 'expr')], MediumLevelILOperation.MLIL_STORE_STRUCT: [('dest', 'expr'), ('offset', 'int'), ('src', 'expr')], MediumLevelILOperation.MLIL_VAR: [('src', 'var')], MediumLevelILOperation.MLIL_VAR_FIELD: [('src', 'var'), ('offset', 'int')], MediumLevelILOperation.MLIL_VAR_SPLIT: [('high', 'var'), ('low', 'var')], MediumLevelILOperation.MLIL_ADDRESS_OF: [('src', 'var')], MediumLevelILOperation.MLIL_ADDRESS_OF_FIELD: [('src', 'var'), ('offset', 'int')], MediumLevelILOperation.MLIL_CONST: [('constant', 'int')], MediumLevelILOperation.MLIL_CONST_DATA: [('constant_data', 'constant_data')], MediumLevelILOperation.MLIL_CONST_PTR: [('constant', 'int')], MediumLevelILOperation.MLIL_EXTERN_PTR: [('constant', 'int'), ('offset', 'int')], MediumLevelILOperation.MLIL_FLOAT_CONST: [('constant', 'float')], MediumLevelILOperation.MLIL_IMPORT: [('constant', 'int')], MediumLevelILOperation.MLIL_ADD: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_ADC: [('left', 'expr'), ('right', 'expr'), ('carry', 'expr')], MediumLevelILOperation.MLIL_SUB: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_SBB: [('left', 'expr'), ('right', 'expr'), ('carry', 'expr')], MediumLevelILOperation.MLIL_AND: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_OR: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_XOR: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_LSL: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_LSR: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_ASR: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_ROL: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_RLC: [('left', 'expr'), ('right', 'expr'), ('carry', 'expr')], MediumLevelILOperation.MLIL_ROR: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_RRC: [('left', 'expr'), ('right', 'expr'), ('carry', 'expr')], MediumLevelILOperation.MLIL_MUL: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_MULU_DP: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_MULS_DP: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_DIVU: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_DIVU_DP: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_DIVS: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_DIVS_DP: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_MODU: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_MODU_DP: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_MODS: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_MODS_DP: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_NEG: [('src', 'expr')], MediumLevelILOperation.MLIL_NOT: [('src', 'expr')], MediumLevelILOperation.MLIL_SX: [('src', 'expr')], MediumLevelILOperation.MLIL_ZX: [('src', 'expr')], MediumLevelILOperation.MLIL_LOW_PART: [('src', 'expr')], MediumLevelILOperation.MLIL_JUMP: [('dest', 'expr')], MediumLevelILOperation.MLIL_JUMP_TO: [('dest', 'expr'), ('targets', 'target_map')], MediumLevelILOperation.MLIL_RET_HINT: [('dest', 'expr')], MediumLevelILOperation.MLIL_CALL: [('output', 'var_list'), ('dest', 'expr'), ('params', 'expr_list')], MediumLevelILOperation.MLIL_CALL_UNTYPED: [('output', 'expr'), ('dest', 'expr'), ('params', 'expr'), ('stack', 'expr')], MediumLevelILOperation.MLIL_CALL_OUTPUT: [('dest', 'var_list')], MediumLevelILOperation.MLIL_CALL_PARAM: [('src', 'expr_list')], MediumLevelILOperation.MLIL_SEPARATE_PARAM_LIST: [('params', 'expr_list')], MediumLevelILOperation.MLIL_SHARED_PARAM_SLOT: [('params', 'expr_list')], MediumLevelILOperation.MLIL_RET: [('src', 'expr_list')], MediumLevelILOperation.MLIL_NORET: [], MediumLevelILOperation.MLIL_IF: [('condition', 'expr'), ('true', 'int'), ('false', 'int')], MediumLevelILOperation.MLIL_GOTO: [('dest', 'int')], MediumLevelILOperation.MLIL_CMP_E: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_CMP_NE: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_CMP_SLT: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_CMP_ULT: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_CMP_SLE: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_CMP_ULE: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_CMP_SGE: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_CMP_UGE: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_CMP_SGT: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_CMP_UGT: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_TEST_BIT: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_BOOL_TO_INT: [('src', 'expr')], MediumLevelILOperation.MLIL_ADD_OVERFLOW: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_SYSCALL: [('output', 'var_list'), ('params', 'expr_list')], MediumLevelILOperation.MLIL_SYSCALL_UNTYPED: [('output', 'expr'), ('params', 'expr'), ('stack', 'expr')], MediumLevelILOperation.MLIL_TAILCALL: [('output', 'var_list'), ('dest', 'expr'), ('params', 'expr_list')], MediumLevelILOperation.MLIL_TAILCALL_UNTYPED: [('output', 'expr'), ('dest', 'expr'), ('params', 'expr'), ('stack', 'expr')], MediumLevelILOperation.MLIL_INTRINSIC: [('output', 'var_list'), ('intrinsic', 'intrinsic'), ('params', 'expr_list')], MediumLevelILOperation.MLIL_FREE_VAR_SLOT: [('dest', 'var')], MediumLevelILOperation.MLIL_BP: [], MediumLevelILOperation.MLIL_TRAP: [('vector', 'int')], MediumLevelILOperation.MLIL_UNDEF: [], MediumLevelILOperation.MLIL_UNIMPL: [], MediumLevelILOperation.MLIL_UNIMPL_MEM: [('src', 'expr')], MediumLevelILOperation.MLIL_FADD: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_FSUB: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_FMUL: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_FDIV: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_FSQRT: [('src', 'expr')], MediumLevelILOperation.MLIL_FNEG: [('src', 'expr')], MediumLevelILOperation.MLIL_FABS: [('src', 'expr')], MediumLevelILOperation.MLIL_FLOAT_TO_INT: [('src', 'expr')], MediumLevelILOperation.MLIL_INT_TO_FLOAT: [('src', 'expr')], MediumLevelILOperation.MLIL_FLOAT_CONV: [('src', 'expr')], MediumLevelILOperation.MLIL_ROUND_TO_INT: [('src', 'expr')], MediumLevelILOperation.MLIL_FLOOR: [('src', 'expr')], MediumLevelILOperation.MLIL_CEIL: [('src', 'expr')], MediumLevelILOperation.MLIL_FTRUNC: [('src', 'expr')], MediumLevelILOperation.MLIL_FCMP_E: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_FCMP_NE: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_FCMP_LT: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_FCMP_LE: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_FCMP_GE: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_FCMP_GT: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_FCMP_O: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_FCMP_UO: [('left', 'expr'), ('right', 'expr')], MediumLevelILOperation.MLIL_SET_VAR_SSA: [('dest', 'var_ssa'), ('src', 'expr')], MediumLevelILOperation.MLIL_SET_VAR_SSA_FIELD: [('dest', 'var_ssa_dest_and_src'), ('prev', 'var_ssa_dest_and_src'), ('offset', 'int'), ('src', 'expr')], MediumLevelILOperation.MLIL_SET_VAR_SPLIT_SSA: [('high', 'var_ssa'), ('low', 'var_ssa'), ('src', 'expr')], MediumLevelILOperation.MLIL_SET_VAR_ALIASED: [('dest', 'var_ssa_dest_and_src'), ('prev', 'var_ssa_dest_and_src'), ('src', 'expr')], MediumLevelILOperation.MLIL_SET_VAR_ALIASED_FIELD: [('dest', 'var_ssa_dest_and_src'), ('prev', 'var_ssa_dest_and_src'), ('offset', 'int'), ('src', 'expr')], MediumLevelILOperation.MLIL_VAR_SSA: [('src', 'var_ssa')], MediumLevelILOperation.MLIL_VAR_SSA_FIELD: [('src', 'var_ssa'), ('offset', 'int')], MediumLevelILOperation.MLIL_VAR_ALIASED: [('src', 'var_ssa')], MediumLevelILOperation.MLIL_VAR_ALIASED_FIELD: [('src', 'var_ssa'), ('offset', 'int')], MediumLevelILOperation.MLIL_VAR_SPLIT_SSA: [('high', 'var_ssa'), ('low', 'var_ssa')], MediumLevelILOperation.MLIL_CALL_SSA: [('output', 'expr'), ('output_dest_memory', 'int'), ('dest', 'expr'), ('params', 'expr_list'), ('src_memory', 'int')], MediumLevelILOperation.MLIL_CALL_UNTYPED_SSA: [('output', 'expr'), ('dest', 'expr'), ('params', 'expr'), ('stack', 'expr')], MediumLevelILOperation.MLIL_SYSCALL_SSA: [('output', 'expr'), ('params', 'expr_list'), ('src_memory', 'int')], MediumLevelILOperation.MLIL_SYSCALL_UNTYPED_SSA: [('output', 'expr'), ('params', 'expr'), ('stack', 'expr')], MediumLevelILOperation.MLIL_TAILCALL_SSA: [('output', 'expr'), ('output_dest_memory', 'int'), ('dest', 'expr'), ('params', 'expr_list'), ('src_memory', 'int')], MediumLevelILOperation.MLIL_TAILCALL_UNTYPED_SSA: [('output', 'expr'), ('dest', 'expr'), ('params', 'expr'), ('stack', 'expr')], MediumLevelILOperation.MLIL_CALL_PARAM_SSA: [('src_memory', 'int'), ('src', 'expr_list')], MediumLevelILOperation.MLIL_CALL_OUTPUT_SSA: [('dest_memory', 'int'), ('dest', 'var_ssa_list')], MediumLevelILOperation.MLIL_MEMORY_INTRINSIC_OUTPUT_SSA: [('dest_memory', 'int'), ('output', 'var_ssa_list')], MediumLevelILOperation.MLIL_LOAD_SSA: [('src', 'expr'), ('src_memory', 'int')], MediumLevelILOperation.MLIL_LOAD_STRUCT_SSA: [('src', 'expr'), ('offset', 'int'), ('src_memory', 'int')], MediumLevelILOperation.MLIL_STORE_SSA: [('dest', 'expr'), ('dest_memory', 'int'), ('src_memory', 'int'), ('src', 'expr')], MediumLevelILOperation.MLIL_STORE_STRUCT_SSA: [('dest', 'expr'), ('offset', 'int'), ('dest_memory', 'int'), ('src_memory', 'int'), ('src', 'expr')], MediumLevelILOperation.MLIL_INTRINSIC_SSA: [('output', 'var_ssa_list'), ('intrinsic', 'intrinsic'), ('params', 'expr_list')], MediumLevelILOperation.MLIL_MEMORY_INTRINSIC_SSA: [('output', 'expr'), ('intrinsic', 'intrinsic'), ('params', 'expr_list'), ('src_memory', 'int')], MediumLevelILOperation.MLIL_FREE_VAR_SLOT_SSA: [('prev', 'var_ssa_dest_and_src')], MediumLevelILOperation.MLIL_VAR_PHI: [('dest', 'var_ssa'), ('src', 'var_ssa_list')], MediumLevelILOperation.MLIL_MEM_PHI: [('dest_memory', 'int'), ('src_memory', 'int_list')]}¶
- property attributes: Set[ILInstructionAttribute]¶
The set of optional attributes placed on the instruction
- property branch_dependence: Mapping[int, ILBranchDependence]¶
Set of branching instructions that must take the true or false path to reach this instruction
- property core_operands: Tuple[ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex]¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- property high_level_il: HighLevelILInstruction | None¶
High level IL form of this expression
- property hlil: HighLevelILInstruction | None¶
Alias for high_level_il
- property hlils: List[HighLevelILInstruction]¶
- property il_basic_block: MediumLevelILBasicBlock¶
IL basic block object containing this expression (read-only) (only available on finalized functions)
- instr_index: InstructionIndex¶
- property instruction_operands: List[MediumLevelILInstruction]¶
- property llil: LowLevelILInstruction | None¶
Alias for low_level_il
- property llils: List[LowLevelILInstruction]¶
- property low_level_il: LowLevelILInstruction | None¶
Low level IL form of this expression
- property non_ssa_form: MediumLevelILInstruction¶
Non-SSA form of expression (read-only)
- property operands: List[int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData]¶
Operands for the instruction
Consider using more specific APIs for
src
,dest
,params
, etc where appropriate.
- property operation: MediumLevelILOperation¶
- property possible_values: PossibleValueSet¶
Possible values of expression using path-sensitive static data flow analysis (read-only)
- property postfix_operands: List[int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData]¶
All operands in the expression tree in postfix order
- property prefix_operands: List[int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData]¶
All operands in the expression tree in prefix order
- property raw_operands: Tuple[ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex, ExpressionIndex]¶
Raw operand expression indices as specified by the core structure (read-only)
- property source_operand: ExpressionIndex¶
- property ssa_form: MediumLevelILInstruction¶
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]¶
MLIL tokens (read-only)
- property value: RegisterValue¶
Value of expression if constant or a known value (read-only)
- property vars_address_taken: List[Variable | SSAVariable]¶
Non-unique list of variables whose address is taken by instruction
- property vars_read: List[Variable | SSAVariable]¶
List of variables read by instruction
- property vars_written: List[Variable | SSAVariable]¶
List of variables written by instruction
- class MediumLevelILIntToFloat(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILIntrinsic(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Intrinsic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property intrinsic: ILIntrinsic¶
- property params: List[MediumLevelILInstruction]¶
- class MediumLevelILIntrinsicSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property intrinsic: ILIntrinsic¶
- property output: List[SSAVariable]¶
- property params: List[MediumLevelILInstruction]¶
- property vars_read: List[SSAVariable]¶
List of variables read by instruction
- property vars_written: List[SSAVariable]¶
List of variables written by instruction
- class MediumLevelILJump(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Terminal
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILJumpTo(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Terminal
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILLabel(handle: BNMediumLevelILLabel | None = None)[source]¶
Bases:
object
- Parameters:
handle (BNMediumLevelILLabel | None) –
- property operand: InstructionIndex¶
- class MediumLevelILLoad(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Load
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- class MediumLevelILLoadSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Load
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- class MediumLevelILLoadStruct(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Load
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- class MediumLevelILLoadStructSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Load
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- class MediumLevelILLowPart(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILLsl(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILLsr(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILMemPhi(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Memory
,Phi
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILMemoryIntrinsicOutputSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property output: List[SSAVariable]¶
- class MediumLevelILMemoryIntrinsicSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property intrinsic: ILIntrinsic¶
- property output: List[SSAVariable]¶
- property params: List[MediumLevelILInstruction]¶
- class MediumLevelILMods(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
,Signed
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILModsDp(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,DoublePrecision
,Signed
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILModu(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILModuDp(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,DoublePrecision
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILMul(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILMulsDp(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,DoublePrecision
,Signed
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILMuluDp(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,DoublePrecision
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILNeg(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILNop(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILNoret(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Terminal
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILNot(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILOperationAndSize(operation: MediumLevelILOperation, size: int)[source]¶
Bases:
object
- Parameters:
operation (MediumLevelILOperation) –
size (int) –
- operation: MediumLevelILOperation¶
- class MediumLevelILOr(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILRet(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Return
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: List[MediumLevelILInstruction]¶
- class MediumLevelILRetHint(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,ControlFlow
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILRlc(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCarryBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILRol(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILRor(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILRoundToInt(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
,FloatingPoint
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILRrc(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCarryBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILSbb(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCarryBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILSeparateParamList(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILSetVar(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SetVar
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- property vars_read: List[Variable | SSAVariable]¶
List of variables read by instruction
- class MediumLevelILSetVarAliased(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SetVar
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: SSAVariable¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property prev: SSAVariable¶
- property src: MediumLevelILInstruction¶
- property vars_read: List[Variable | SSAVariable]¶
List of variables read by instruction
- property vars_written: List[SSAVariable]¶
List of variables written by instruction
- class MediumLevelILSetVarAliasedField(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SetVar
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: SSAVariable¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property prev: SSAVariable¶
- property src: MediumLevelILInstruction¶
- property vars_read: List[SSAVariable]¶
List of variables read by instruction
- class MediumLevelILSetVarField(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SetVar
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- class MediumLevelILSetVarSplit(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SetVar
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- class MediumLevelILSetVarSplitSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SetVar
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- property high: SSAVariable¶
- instr_index: InstructionIndex¶
- property low: SSAVariable¶
- property src: MediumLevelILInstruction¶
- property vars_read: List[Variable | SSAVariable]¶
List of variables read by instruction
- property vars_written: List[SSAVariable]¶
List of variables written by instruction
- class MediumLevelILSetVarSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SetVar
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: SSAVariable¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- property vars_read: List[Variable | SSAVariable]¶
List of variables read by instruction
- property vars_written: List[SSAVariable]¶
List of variables written by instruction
- class MediumLevelILSetVarSsaField(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SetVar
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: SSAVariable¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property prev: SSAVariable¶
- property src: MediumLevelILInstruction¶
- property vars_read: List[SSAVariable]¶
List of variables read by instruction
- property vars_written: List[SSAVariable]¶
List of variables written by instruction
Bases:
MediumLevelILInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- class MediumLevelILStore(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Store
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- class MediumLevelILStoreSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Store
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- class MediumLevelILStoreStruct(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Store
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- class MediumLevelILStoreStructSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Store
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- class MediumLevelILSub(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILSx(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILSyscall(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Syscall
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property params: List[MediumLevelILInstruction]¶
- class MediumLevelILSyscallSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCallBase
,Syscall
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property output: List[SSAVariable]¶
- property params: List[MediumLevelILInstruction]¶
- class MediumLevelILSyscallUntyped(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCallBase
,Syscall
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property stack: MediumLevelILInstruction¶
- class MediumLevelILSyscallUntypedSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCallBase
,Syscall
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property output: List[SSAVariable]¶
- property params: List[SSAVariable]¶
- property stack: MediumLevelILInstruction¶
- class MediumLevelILTailcall(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCallBase
,Tailcall
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property params: List[MediumLevelILInstruction]¶
- class MediumLevelILTailcallSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCallBase
,Tailcall
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property output: List[SSAVariable]¶
- property params: List[MediumLevelILInstruction]¶
- class MediumLevelILTailcallUntyped(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCallBase
,Tailcall
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property stack: MediumLevelILInstruction¶
- class MediumLevelILTailcallUntypedSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILCallBase
,Tailcall
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: MediumLevelILInstruction¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property output: List[SSAVariable]¶
- property params: List[SSAVariable]¶
- property stack: MediumLevelILInstruction¶
- class MediumLevelILTestBit(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILComparisonBase
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILTrap(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Terminal
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILUnaryBase(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,UnaryOperation
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- class MediumLevelILUndef(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILUnimpl(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILUnimplMem(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,Memory
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: MediumLevelILInstruction¶
- class MediumLevelILVar(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,VariableInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILVarAliased(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SSA
,AliasedVariableInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: SSAVariable¶
- class MediumLevelILVarAliasedField(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: SSAVariable¶
- class MediumLevelILVarField(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILVarPhi(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SetVar
,Phi
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property dest: SSAVariable¶
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: List[SSAVariable]¶
- property vars_read: List[SSAVariable]¶
List of variables read by instruction
- property vars_written: List[SSAVariable]¶
List of variables written by instruction
- class MediumLevelILVarSplit(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILVarSplitSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- property high: SSAVariable¶
- instr_index: InstructionIndex¶
- property low: SSAVariable¶
- class MediumLevelILVarSsa(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SSAVariableInstruction
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: SSAVariable¶
- property var: SSAVariable¶
- class MediumLevelILVarSsaField(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILInstruction
,SSA
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- property detailed_operands: List[Tuple[str, int | float | MediumLevelILOperationAndSize | MediumLevelILInstruction | ILIntrinsic | Variable | SSAVariable | List[int] | List[Variable] | List[SSAVariable] | List[MediumLevelILInstruction] | Dict[int, int] | ConstantData, str]]¶
Returns a list of tuples containing the name of the operand, the operand, and the type of the operand. Useful for iterating over all operands of an instruction and sub-instructions.
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- property src: SSAVariable¶
- class MediumLevelILXor(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILBinaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class MediumLevelILZx(function: 'MediumLevelILFunction', expr_index: <function NewType.<locals>.new_type at 0x1055ddf70>, instr: binaryninja.mediumlevelil.CoreMediumLevelILInstruction, instr_index: <function NewType.<locals>.new_type at 0x1045fef70>)[source]¶
Bases:
MediumLevelILUnaryBase
,Arithmetic
- Parameters:
function (MediumLevelILFunction) –
expr_index (ExpressionIndex) –
instr (CoreMediumLevelILInstruction) –
instr_index (InstructionIndex) –
- expr_index: ExpressionIndex¶
- function: MediumLevelILFunction¶
- instr_index: InstructionIndex¶
- class SSAVariable(var: 'variable.Variable', version: int)[source]¶
Bases:
object
- property dead_store_elimination: DeadStoreElimination¶
returns the dead store elimination setting for this variable (read-only)
- property def_site: MediumLevelILInstruction | HighLevelILInstruction | None¶
Gets the IL instructions where this SSAVariable is defined.
- property il_function: function.ILFunctionType¶
returns the il Function object which this variable belongs to
- property use_sites: List[MediumLevelILInstruction | HighLevelILInstruction]¶
Gets the list of IL instructions where this SSAVariable is used inside of this function.