struct BinaryNinja::MediumLevelILLabel |
Public Member Functions | |
MediumLevelILLabel () | |
Additional Inherited Members | |
Public Attributes inherited from BNMediumLevelILLabel | |
bool | resolved |
size_t | ref |
size_t | operand |
MediumLevelILLabel::MediumLevelILLabel | ( | ) |
class BinaryNinja::MediumLevelILFunction |
Additional Inherited Members | |
Public Attributes inherited from BinaryNinja::CoreRefCountObject< BNMediumLevelILFunction, BNNewMediumLevelILFunctionReference, BNFreeMediumLevelILFunction > | |
std::atomic< int > | m_refs |
bool | m_registeredRef |
BNMediumLevelILFunction * | m_object |
MediumLevelILFunction::MediumLevelILFunction | ( | Architecture * | arch, |
Function * | func = nullptr ) |
MediumLevelILFunction::MediumLevelILFunction | ( | BNMediumLevelILFunction * | func | ) |
Ref< Architecture > MediumLevelILFunction::GetArchitecture | ( | ) | const |
uint64_t MediumLevelILFunction::GetCurrentAddress | ( | ) | const |
void MediumLevelILFunction::SetCurrentAddress | ( | Architecture * | arch, |
uint64_t | addr ) |
size_t MediumLevelILFunction::GetInstructionStart | ( | Architecture * | arch, |
uint64_t | addr ) |
void MediumLevelILFunction::PrepareToCopyFunction | ( | MediumLevelILFunction * | func | ) |
void MediumLevelILFunction::PrepareToCopyBlock | ( | BasicBlock * | block | ) |
BNMediumLevelILLabel * MediumLevelILFunction::GetLabelForSourceInstruction | ( | size_t | i | ) |
Get the MediumLevelILLabel for a given source instruction.
The returned pointer is to an internal object with the same lifetime as the containing MediumLevelILFunction.
i | Index of the source instruction |
ExprId MediumLevelILFunction::AddExpr | ( | BNMediumLevelILOperation | operation, |
size_t | size, | ||
ExprId | a = 0, | ||
ExprId | b = 0, | ||
ExprId | c = 0, | ||
ExprId | d = 0, | ||
ExprId | e = 0 ) |
ExprId MediumLevelILFunction::AddExprWithLocation | ( | BNMediumLevelILOperation | operation, |
uint64_t | addr, | ||
uint32_t | sourceOperand, | ||
size_t | size, | ||
ExprId | a = 0, | ||
ExprId | b = 0, | ||
ExprId | c = 0, | ||
ExprId | d = 0, | ||
ExprId | e = 0 ) |
ExprId MediumLevelILFunction::AddExprWithLocation | ( | BNMediumLevelILOperation | operation, |
const ILSourceLocation & | loc, | ||
size_t | size, | ||
ExprId | a = 0, | ||
ExprId | b = 0, | ||
ExprId | c = 0, | ||
ExprId | d = 0, | ||
ExprId | e = 0 ) |
ExprId MediumLevelILFunction::Nop | ( | const ILSourceLocation & | loc = ILSourceLocation() | ) |
ExprId MediumLevelILFunction::SetVar | ( | size_t | size, |
const Variable & | dest, | ||
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SetVarField | ( | size_t | size, |
const Variable & | dest, | ||
uint64_t | offset, | ||
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SetVarSplit | ( | size_t | size, |
const Variable & | high, | ||
const Variable & | low, | ||
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SetVarSSA | ( | size_t | size, |
const SSAVariable & | dest, | ||
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SetVarSSAField | ( | size_t | size, |
const Variable & | dest, | ||
size_t | newVersion, | ||
size_t | prevVersion, | ||
uint64_t | offset, | ||
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SetVarSSASplit | ( | size_t | size, |
const SSAVariable & | high, | ||
const SSAVariable & | low, | ||
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SetVarAliased | ( | size_t | size, |
const Variable & | dest, | ||
size_t | newMemVersion, | ||
size_t | prevMemVersion, | ||
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SetVarAliasedField | ( | size_t | size, |
const Variable & | dest, | ||
size_t | newMemVersion, | ||
size_t | prevMemVersion, | ||
uint64_t | offset, | ||
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Load | ( | size_t | size, |
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::LoadStruct | ( | size_t | size, |
ExprId | src, | ||
uint64_t | offset, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::LoadSSA | ( | size_t | size, |
ExprId | src, | ||
size_t | memVersion, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::LoadStructSSA | ( | size_t | size, |
ExprId | src, | ||
uint64_t | offset, | ||
size_t | memVersion, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Store | ( | size_t | size, |
ExprId | dest, | ||
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::StoreStruct | ( | size_t | size, |
ExprId | dest, | ||
uint64_t | offset, | ||
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::StoreSSA | ( | size_t | size, |
ExprId | dest, | ||
size_t | newMemVersion, | ||
size_t | prevMemVersion, | ||
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::StoreStructSSA | ( | size_t | size, |
ExprId | dest, | ||
uint64_t | offset, | ||
size_t | newMemVersion, | ||
size_t | prevMemVersion, | ||
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Var | ( | size_t | size, |
const Variable & | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::VarField | ( | size_t | size, |
const Variable & | src, | ||
uint64_t | offset, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::VarSplit | ( | size_t | size, |
const Variable & | high, | ||
const Variable & | low, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::VarSSA | ( | size_t | size, |
const SSAVariable & | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::VarSSAField | ( | size_t | size, |
const SSAVariable & | src, | ||
uint64_t | offset, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::VarAliased | ( | size_t | size, |
const Variable & | src, | ||
size_t | memVersion, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::VarAliasedField | ( | size_t | size, |
const Variable & | src, | ||
size_t | memVersion, | ||
uint64_t | offset, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::VarSplitSSA | ( | size_t | size, |
const SSAVariable & | high, | ||
const SSAVariable & | low, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::AddressOf | ( | const Variable & | var, |
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::AddressOfField | ( | const Variable & | var, |
uint64_t | offset, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Const | ( | size_t | size, |
uint64_t | val, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::ConstPointer | ( | size_t | size, |
uint64_t | val, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::ExternPointer | ( | size_t | size, |
uint64_t | val, | ||
uint64_t | offset, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatConstRaw | ( | size_t | size, |
uint64_t | val, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatConstSingle | ( | float | val, |
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatConstDouble | ( | double | val, |
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::ImportedAddress | ( | size_t | size, |
uint64_t | val, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::ConstData | ( | size_t | size, |
const ConstantData & | data, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Add | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::AddWithCarry | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
ExprId | carry, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Sub | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SubWithBorrow | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
ExprId | carry, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::And | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Or | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Xor | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::ShiftLeft | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::LogicalShiftRight | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::ArithShiftRight | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::RotateLeft | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::RotateLeftCarry | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
ExprId | carry, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::RotateRight | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::RotateRightCarry | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
ExprId | carry, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Mult | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::MultDoublePrecSigned | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::MultDoublePrecUnsigned | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::DivSigned | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::DivUnsigned | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::DivDoublePrecSigned | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::DivDoublePrecUnsigned | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::ModSigned | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::ModUnsigned | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::ModDoublePrecSigned | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::ModDoublePrecUnsigned | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Neg | ( | size_t | size, |
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Not | ( | size_t | size, |
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SignExtend | ( | size_t | size, |
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::ZeroExtend | ( | size_t | size, |
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::LowPart | ( | size_t | size, |
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Jump | ( | ExprId | dest, |
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::JumpTo | ( | ExprId | dest, |
const std::map< uint64_t, BNMediumLevelILLabel * > & | targets, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::ReturnHint | ( | ExprId | dest, |
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Call | ( | const std::vector< Variable > & | output, |
ExprId | dest, | ||
const std::vector< ExprId > & | params, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::CallUntyped | ( | const std::vector< Variable > & | output, |
ExprId | dest, | ||
const std::vector< ExprId > & | params, | ||
ExprId | stack, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Syscall | ( | const std::vector< Variable > & | output, |
const std::vector< ExprId > & | params, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SyscallUntyped | ( | const std::vector< Variable > & | output, |
const std::vector< ExprId > & | params, | ||
ExprId | stack, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::TailCall | ( | const std::vector< Variable > & | output, |
ExprId | dest, | ||
const std::vector< ExprId > & | params, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::TailCallUntyped | ( | const std::vector< Variable > & | output, |
ExprId | dest, | ||
const std::vector< ExprId > & | params, | ||
ExprId | stack, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::CallSSA | ( | const std::vector< SSAVariable > & | output, |
ExprId | dest, | ||
const std::vector< ExprId > & | params, | ||
size_t | newMemVersion, | ||
size_t | prevMemVersion, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::CallUntypedSSA | ( | const std::vector< SSAVariable > & | output, |
ExprId | dest, | ||
const std::vector< ExprId > & | params, | ||
size_t | newMemVersion, | ||
size_t | prevMemVersion, | ||
ExprId | stack, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SyscallSSA | ( | const std::vector< SSAVariable > & | output, |
const std::vector< ExprId > & | params, | ||
size_t | newMemVersion, | ||
size_t | prevMemVersion, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SyscallUntypedSSA | ( | const std::vector< SSAVariable > & | output, |
const std::vector< ExprId > & | params, | ||
size_t | newMemVersion, | ||
size_t | prevMemVersion, | ||
ExprId | stack, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::TailCallSSA | ( | const std::vector< SSAVariable > & | output, |
ExprId | dest, | ||
const std::vector< ExprId > & | params, | ||
size_t | newMemVersion, | ||
size_t | prevMemVersion, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::TailCallUntypedSSA | ( | const std::vector< SSAVariable > & | output, |
ExprId | dest, | ||
const std::vector< ExprId > & | params, | ||
size_t | newMemVersion, | ||
size_t | prevMemVersion, | ||
ExprId | stack, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SeparateParamList | ( | const std::vector< ExprId > & | params, |
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::SharedParamSlot | ( | const std::vector< ExprId > & | params, |
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Return | ( | const std::vector< ExprId > & | sources, |
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::NoReturn | ( | const ILSourceLocation & | loc = ILSourceLocation() | ) |
ExprId MediumLevelILFunction::CompareEqual | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::CompareNotEqual | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::CompareSignedLessThan | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::CompareUnsignedLessThan | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::CompareSignedLessEqual | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::CompareUnsignedLessEqual | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::CompareSignedGreaterEqual | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::CompareUnsignedGreaterEqual | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::CompareSignedGreaterThan | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::CompareUnsignedGreaterThan | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::TestBit | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::BoolToInt | ( | size_t | size, |
ExprId | src, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::AddOverflow | ( | size_t | size, |
ExprId | left, | ||
ExprId | right, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Breakpoint | ( | const ILSourceLocation & | loc = ILSourceLocation() | ) |
ExprId MediumLevelILFunction::Trap | ( | int64_t | vector, |
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Intrinsic | ( | const std::vector< Variable > & | outputs, |
uint32_t | intrinsic, | ||
const std::vector< ExprId > & | params, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::IntrinsicSSA | ( | const std::vector< SSAVariable > & | outputs, |
uint32_t | intrinsic, | ||
const std::vector< ExprId > & | params, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::MemoryIntrinsicSSA | ( | const std::vector< SSAVariable > & | outputs, |
uint32_t | intrinsic, | ||
const std::vector< ExprId > & | params, | ||
size_t | newMemVersion, | ||
size_t | prevMemVersion, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FreeVarSlot | ( | const Variable & | var, |
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FreeVarSlotSSA | ( | const Variable & | var, |
size_t | newVersion, | ||
size_t | prevVersion, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Undefined | ( | const ILSourceLocation & | loc = ILSourceLocation() | ) |
ExprId MediumLevelILFunction::Unimplemented | ( | const ILSourceLocation & | loc = ILSourceLocation() | ) |
ExprId MediumLevelILFunction::UnimplementedMemoryRef | ( | size_t | size, |
ExprId | target, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::VarPhi | ( | const SSAVariable & | dest, |
const std::vector< SSAVariable > & | sources, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::MemoryPhi | ( | size_t | destMemVersion, |
const std::vector< size_t > & | sourceMemVersions, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatAdd | ( | size_t | size, |
ExprId | a, | ||
ExprId | b, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatSub | ( | size_t | size, |
ExprId | a, | ||
ExprId | b, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatMult | ( | size_t | size, |
ExprId | a, | ||
ExprId | b, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatDiv | ( | size_t | size, |
ExprId | a, | ||
ExprId | b, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatSqrt | ( | size_t | size, |
ExprId | a, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatNeg | ( | size_t | size, |
ExprId | a, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatAbs | ( | size_t | size, |
ExprId | a, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatToInt | ( | size_t | size, |
ExprId | a, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::IntToFloat | ( | size_t | size, |
ExprId | a, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatConvert | ( | size_t | size, |
ExprId | a, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::RoundToInt | ( | size_t | size, |
ExprId | a, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Floor | ( | size_t | size, |
ExprId | a, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Ceil | ( | size_t | size, |
ExprId | a, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatTrunc | ( | size_t | size, |
ExprId | a, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatCompareEqual | ( | size_t | size, |
ExprId | a, | ||
ExprId | b, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatCompareNotEqual | ( | size_t | size, |
ExprId | a, | ||
ExprId | b, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatCompareLessThan | ( | size_t | size, |
ExprId | a, | ||
ExprId | b, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatCompareLessEqual | ( | size_t | size, |
ExprId | a, | ||
ExprId | b, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatCompareGreaterEqual | ( | size_t | size, |
ExprId | a, | ||
ExprId | b, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatCompareGreaterThan | ( | size_t | size, |
ExprId | a, | ||
ExprId | b, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatCompareOrdered | ( | size_t | size, |
ExprId | a, | ||
ExprId | b, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::FloatCompareUnordered | ( | size_t | size, |
ExprId | a, | ||
ExprId | b, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::Goto | ( | BNMediumLevelILLabel & | label, |
const ILSourceLocation & | loc = ILSourceLocation() ) |
ExprId MediumLevelILFunction::If | ( | ExprId | operand, |
BNMediumLevelILLabel & | t, | ||
BNMediumLevelILLabel & | f, | ||
const ILSourceLocation & | loc = ILSourceLocation() ) |
void MediumLevelILFunction::MarkLabel | ( | BNMediumLevelILLabel & | label | ) |
vector< uint64_t > MediumLevelILFunction::GetOperandList | ( | ExprId | i, |
size_t | listOperand ) |
ExprId MediumLevelILFunction::AddLabelMap | ( | const std::map< uint64_t, BNMediumLevelILLabel * > & | labels | ) |
ExprId MediumLevelILFunction::AddIndexList | ( | const std::vector< size_t > & | operands | ) |
ExprId MediumLevelILFunction::AddSSAVariableList | ( | const std::vector< SSAVariable > & | vars | ) |
BNMediumLevelILInstruction MediumLevelILFunction::GetRawExpr | ( | size_t | i | ) | const |
MediumLevelILInstruction MediumLevelILFunction::operator[] | ( | size_t | i | ) |
MediumLevelILInstruction MediumLevelILFunction::GetInstruction | ( | size_t | i | ) |
MediumLevelILInstruction MediumLevelILFunction::GetExpr | ( | size_t | i | ) |
size_t MediumLevelILFunction::GetIndexForInstruction | ( | size_t | i | ) | const |
size_t MediumLevelILFunction::GetInstructionForExpr | ( | size_t | expr | ) | const |
size_t MediumLevelILFunction::GetInstructionCount | ( | ) | const |
size_t MediumLevelILFunction::GetExprCount | ( | ) | const |
void MediumLevelILFunction::UpdateInstructionOperand | ( | size_t | i, |
size_t | operandIndex, | ||
ExprId | value ) |
void MediumLevelILFunction::MarkInstructionForRemoval | ( | size_t | i | ) |
void MediumLevelILFunction::ReplaceInstruction | ( | size_t | i, |
ExprId | expr ) |
void MediumLevelILFunction::ReplaceExpr | ( | size_t | expr, |
size_t | newExpr ) |
void MediumLevelILFunction::SetExprAttributes | ( | size_t | expr, |
uint32_t | attributes ) |
void MediumLevelILFunction::Finalize | ( | ) |
void MediumLevelILFunction::GenerateSSAForm | ( | bool | analyzeConditionals = true, |
bool | handleAliases = true, | ||
const std::set< Variable > & | knownNotAliases = std::set<Variable>(), | ||
const std::set< Variable > & | knownAliases = std::set<Variable>() ) |
bool MediumLevelILFunction::GetExprText | ( | Architecture * | arch, |
ExprId | expr, | ||
std::vector< InstructionTextToken > & | tokens, | ||
DisassemblySettings * | settings = nullptr ) |
bool MediumLevelILFunction::GetInstructionText | ( | Function * | func, |
Architecture * | arch, | ||
size_t | i, | ||
std::vector< InstructionTextToken > & | tokens, | ||
DisassemblySettings * | settings = nullptr ) |
void MediumLevelILFunction::VisitInstructions | ( | const std::function< void(BasicBlock *block, const MediumLevelILInstruction &instr)> & | func | ) |
void MediumLevelILFunction::VisitAllExprs | ( | const std::function< bool(BasicBlock *block, const MediumLevelILInstruction &expr)> & | func | ) |
vector< Ref< BasicBlock > > MediumLevelILFunction::GetBasicBlocks | ( | ) | const |
Ref< BasicBlock > MediumLevelILFunction::GetBasicBlockForInstruction | ( | size_t | i | ) | const |
Ref< MediumLevelILFunction > MediumLevelILFunction::GetSSAForm | ( | ) | const |
Ref< MediumLevelILFunction > MediumLevelILFunction::GetNonSSAForm | ( | ) | const |
size_t MediumLevelILFunction::GetSSAInstructionIndex | ( | size_t | instr | ) | const |
size_t MediumLevelILFunction::GetNonSSAInstructionIndex | ( | size_t | instr | ) | const |
size_t MediumLevelILFunction::GetSSAExprIndex | ( | size_t | instr | ) | const |
size_t MediumLevelILFunction::GetNonSSAExprIndex | ( | size_t | instr | ) | const |
size_t MediumLevelILFunction::GetSSAVarDefinition | ( | const SSAVariable & | var | ) | const |
size_t MediumLevelILFunction::GetSSAMemoryDefinition | ( | size_t | version | ) | const |
set< size_t > MediumLevelILFunction::GetSSAVarUses | ( | const SSAVariable & | var | ) | const |
set< size_t > MediumLevelILFunction::GetSSAMemoryUses | ( | size_t | version | ) | const |
bool MediumLevelILFunction::IsSSAVarLive | ( | const SSAVariable & | var | ) | const |
bool MediumLevelILFunction::IsSSAVarLiveAt | ( | const SSAVariable & | var, |
const size_t | instr ) const |
bool MediumLevelILFunction::IsVarLiveAt | ( | const Variable & | var, |
const size_t | instr ) const |
set< size_t > MediumLevelILFunction::GetVariableSSAVersions | ( | const Variable & | var | ) | const |
set< size_t > MediumLevelILFunction::GetVariableDefinitions | ( | const Variable & | var | ) | const |
set< size_t > MediumLevelILFunction::GetVariableUses | ( | const Variable & | var | ) | const |
RegisterValue MediumLevelILFunction::GetSSAVarValue | ( | const SSAVariable & | var | ) |
RegisterValue MediumLevelILFunction::GetExprValue | ( | size_t | expr | ) |
RegisterValue MediumLevelILFunction::GetExprValue | ( | const MediumLevelILInstruction & | expr | ) |
PossibleValueSet MediumLevelILFunction::GetPossibleSSAVarValues | ( | const SSAVariable & | var, |
size_t | instr, | ||
const std::set< BNDataFlowQueryOption > & | options = std::set<BNDataFlowQueryOption>() ) |
PossibleValueSet BinaryNinja::MediumLevelILFunction::GetPossibleExprValues | ( | size_t | expr, |
const std::set< BNDataFlowQueryOption > & | options = std::set< BNDataFlowQueryOption >() ) |
PossibleValueSet BinaryNinja::MediumLevelILFunction::GetPossibleExprValues | ( | const MediumLevelILInstruction & | expr, |
const std::set< BNDataFlowQueryOption > & | options = std::set< BNDataFlowQueryOption >() ) |
size_t MediumLevelILFunction::GetSSAVarVersionAtInstruction | ( | const Variable & | var, |
size_t | instr ) const |
size_t MediumLevelILFunction::GetSSAMemoryVersionAtInstruction | ( | size_t | instr | ) | const |
Variable MediumLevelILFunction::GetVariableForRegisterAtInstruction | ( | uint32_t | reg, |
size_t | instr ) const |
Variable MediumLevelILFunction::GetVariableForFlagAtInstruction | ( | uint32_t | flag, |
size_t | instr ) const |
Variable MediumLevelILFunction::GetVariableForStackLocationAtInstruction | ( | int64_t | offset, |
size_t | instr ) const |
RegisterValue MediumLevelILFunction::GetRegisterValueAtInstruction | ( | uint32_t | reg, |
size_t | instr ) |
RegisterValue MediumLevelILFunction::GetRegisterValueAfterInstruction | ( | uint32_t | reg, |
size_t | instr ) |
PossibleValueSet MediumLevelILFunction::GetPossibleRegisterValuesAtInstruction | ( | uint32_t | reg, |
size_t | instr, | ||
const std::set< BNDataFlowQueryOption > & | options = std::set<BNDataFlowQueryOption>() ) |
PossibleValueSet MediumLevelILFunction::GetPossibleRegisterValuesAfterInstruction | ( | uint32_t | reg, |
size_t | instr, | ||
const std::set< BNDataFlowQueryOption > & | options = std::set<BNDataFlowQueryOption>() ) |
RegisterValue MediumLevelILFunction::GetFlagValueAtInstruction | ( | uint32_t | flag, |
size_t | instr ) |
RegisterValue MediumLevelILFunction::GetFlagValueAfterInstruction | ( | uint32_t | flag, |
size_t | instr ) |
PossibleValueSet MediumLevelILFunction::GetPossibleFlagValuesAtInstruction | ( | uint32_t | flag, |
size_t | instr, | ||
const std::set< BNDataFlowQueryOption > & | options = std::set<BNDataFlowQueryOption>() ) |
PossibleValueSet MediumLevelILFunction::GetPossibleFlagValuesAfterInstruction | ( | uint32_t | flag, |
size_t | instr, | ||
const std::set< BNDataFlowQueryOption > & | options = std::set<BNDataFlowQueryOption>() ) |
RegisterValue MediumLevelILFunction::GetStackContentsAtInstruction | ( | int32_t | offset, |
size_t | len, | ||
size_t | instr ) |
RegisterValue MediumLevelILFunction::GetStackContentsAfterInstruction | ( | int32_t | offset, |
size_t | len, | ||
size_t | instr ) |
PossibleValueSet MediumLevelILFunction::GetPossibleStackContentsAtInstruction | ( | int32_t | offset, |
size_t | len, | ||
size_t | instr, | ||
const std::set< BNDataFlowQueryOption > & | options = std::set<BNDataFlowQueryOption>() ) |
PossibleValueSet MediumLevelILFunction::GetPossibleStackContentsAfterInstruction | ( | int32_t | offset, |
size_t | len, | ||
size_t | instr, | ||
const std::set< BNDataFlowQueryOption > & | options = std::set<BNDataFlowQueryOption>() ) |
BNILBranchDependence MediumLevelILFunction::GetBranchDependenceAtInstruction | ( | size_t | curInstr, |
size_t | branchInstr ) const |
unordered_map< size_t, BNILBranchDependence > MediumLevelILFunction::GetAllBranchDependenceAtInstruction | ( | size_t | instr | ) | const |
Ref< LowLevelILFunction > MediumLevelILFunction::GetLowLevelIL | ( | ) | const |
size_t MediumLevelILFunction::GetLowLevelILInstructionIndex | ( | size_t | instr | ) | const |
size_t MediumLevelILFunction::GetLowLevelILExprIndex | ( | size_t | expr | ) | const |
set< size_t > MediumLevelILFunction::GetLowLevelILExprIndexes | ( | size_t | expr | ) | const |
Ref< HighLevelILFunction > MediumLevelILFunction::GetHighLevelIL | ( | ) | const |
size_t MediumLevelILFunction::GetHighLevelILInstructionIndex | ( | size_t | instr | ) | const |
size_t MediumLevelILFunction::GetHighLevelILExprIndex | ( | size_t | expr | ) | const |
set< size_t > MediumLevelILFunction::GetHighLevelILExprIndexes | ( | size_t | expr | ) | const |
Confidence< Ref< Type > > MediumLevelILFunction::GetExprType | ( | size_t | expr | ) |
Confidence< Ref< Type > > MediumLevelILFunction::GetExprType | ( | const MediumLevelILInstruction & | expr | ) |
void MediumLevelILFunction::SetExprType | ( | size_t | expr, |
const Confidence< Ref< Type > > & | type ) |
SetExprType sets the type of a given expression.
expr | index of the expression to set |
type | new type of the expression |
void MediumLevelILFunction::SetExprType | ( | const MediumLevelILInstruction & | expr, |
const Confidence< Ref< Type > > & | type ) |
|
inlinestatic |
Ref< FlowGraph > MediumLevelILFunction::CreateFunctionGraph | ( | DisassemblySettings * | settings = nullptr | ) |
set< size_t > MediumLevelILFunction::GetLiveInstructionsForVariable | ( | const Variable & | var, |
bool | includeLastUse = true ) |
struct BinaryNinja::SSAVariable |
Public Member Functions | |
SSAVariable () | |
SSAVariable (const Variable &v, size_t i) | |
SSAVariable (const SSAVariable &v) | |
SSAVariable & | operator= (const SSAVariable &v) |
bool | operator== (const SSAVariable &v) const |
bool | operator!= (const SSAVariable &v) const |
bool | operator< (const SSAVariable &v) const |
Public Attributes | |
Variable | var |
size_t | version |
SSAVariable::SSAVariable | ( | ) |
SSAVariable::SSAVariable | ( | const Variable & | v, |
size_t | i ) |
SSAVariable::SSAVariable | ( | const SSAVariable & | v | ) |
SSAVariable & SSAVariable::operator= | ( | const SSAVariable & | v | ) |
bool SSAVariable::operator== | ( | const SSAVariable & | v | ) | const |
bool SSAVariable::operator!= | ( | const SSAVariable & | v | ) | const |
bool SSAVariable::operator< | ( | const SSAVariable & | v | ) | const |
Variable BinaryNinja::SSAVariable::var |
size_t BinaryNinja::SSAVariable::version |
class BinaryNinja::MediumLevelILInstructionAccessException |
Public Member Functions | |
MediumLevelILInstructionAccessException () | |
Public Member Functions inherited from BinaryNinja::ExceptionWithStackTrace | |
ExceptionWithStackTrace (const std::string &message) | |
ExceptionWithStackTrace (std::exception_ptr exc1, std::exception_ptr exc2) | |
const char * | what () const noexcept override |
Additional Inherited Members | |
Public Attributes inherited from BinaryNinja::ExceptionWithStackTrace | |
std::string | m_originalMessage |
std::string | m_message |
std::string | m_stackTrace |
|
inline |
class BinaryNinja::MediumLevelILIntegerList |
Public Types | |
typedef ListIterator | const_iterator |
Public Member Functions | |
MediumLevelILIntegerList (MediumLevelILFunction *func, const BNMediumLevelILInstruction &instr, size_t count) | |
const_iterator | begin () const |
const_iterator | end () const |
size_t | size () const |
uint64_t | operator[] (size_t i) const |
operator std::vector< uint64_t > () const | |
MediumLevelILIntegerList::MediumLevelILIntegerList | ( | MediumLevelILFunction * | func, |
const BNMediumLevelILInstruction & | instr, | ||
size_t | count ) |
MediumLevelILIntegerList::const_iterator MediumLevelILIntegerList::begin | ( | ) | const |
MediumLevelILIntegerList::const_iterator MediumLevelILIntegerList::end | ( | ) | const |
size_t MediumLevelILIntegerList::size | ( | ) | const |
uint64_t MediumLevelILIntegerList::operator[] | ( | size_t | i | ) | const |
BinaryNinja::MediumLevelILIntegerList::operator std::vector< uint64_t > | ( | ) | const |
class BinaryNinja::MediumLevelILIndexList |
Public Types | |
typedef ListIterator | const_iterator |
Public Member Functions | |
MediumLevelILIndexList (MediumLevelILFunction *func, const BNMediumLevelILInstruction &instr, size_t count) | |
const_iterator | begin () const |
const_iterator | end () const |
size_t | size () const |
size_t | operator[] (size_t i) const |
operator std::vector< size_t > () const | |
ListIterator BinaryNinja::MediumLevelILIndexList::const_iterator |
MediumLevelILIndexList::MediumLevelILIndexList | ( | MediumLevelILFunction * | func, |
const BNMediumLevelILInstruction & | instr, | ||
size_t | count ) |
MediumLevelILIndexList::const_iterator MediumLevelILIndexList::begin | ( | ) | const |
MediumLevelILIndexList::const_iterator MediumLevelILIndexList::end | ( | ) | const |
size_t MediumLevelILIndexList::size | ( | ) | const |
size_t MediumLevelILIndexList::operator[] | ( | size_t | i | ) | const |
BinaryNinja::MediumLevelILIndexList::operator std::vector< size_t > | ( | ) | const |
class BinaryNinja::MediumLevelILIndexMap |
Public Types | |
typedef ListIterator | const_iterator |
Public Member Functions | |
MediumLevelILIndexMap (MediumLevelILFunction *func, const BNMediumLevelILInstruction &instr, size_t count) | |
const_iterator | begin () const |
const_iterator | end () const |
size_t | size () const |
size_t | operator[] (uint64_t) const |
operator std::map< uint64_t, size_t > () const | |
ListIterator BinaryNinja::MediumLevelILIndexMap::const_iterator |
MediumLevelILIndexMap::MediumLevelILIndexMap | ( | MediumLevelILFunction * | func, |
const BNMediumLevelILInstruction & | instr, | ||
size_t | count ) |
MediumLevelILIndexMap::const_iterator MediumLevelILIndexMap::begin | ( | ) | const |
MediumLevelILIndexMap::const_iterator MediumLevelILIndexMap::end | ( | ) | const |
size_t MediumLevelILIndexMap::size | ( | ) | const |
size_t MediumLevelILIndexMap::operator[] | ( | uint64_t | value | ) | const |
BinaryNinja::MediumLevelILIndexMap::operator std::map< uint64_t, size_t > | ( | ) | const |
class BinaryNinja::MediumLevelILVariableList |
Public Types | |
typedef ListIterator | const_iterator |
Public Member Functions | |
MediumLevelILVariableList (MediumLevelILFunction *func, const BNMediumLevelILInstruction &instr, size_t count) | |
const_iterator | begin () const |
const_iterator | end () const |
size_t | size () const |
const Variable | operator[] (size_t i) const |
operator std::vector< Variable > () const | |
MediumLevelILVariableList::MediumLevelILVariableList | ( | MediumLevelILFunction * | func, |
const BNMediumLevelILInstruction & | instr, | ||
size_t | count ) |
MediumLevelILVariableList::const_iterator MediumLevelILVariableList::begin | ( | ) | const |
MediumLevelILVariableList::const_iterator MediumLevelILVariableList::end | ( | ) | const |
size_t MediumLevelILVariableList::size | ( | ) | const |
const Variable MediumLevelILVariableList::operator[] | ( | size_t | i | ) | const |
BinaryNinja::MediumLevelILVariableList::operator std::vector< Variable > | ( | ) | const |
class BinaryNinja::MediumLevelILSSAVariableList |
Public Types | |
typedef ListIterator | const_iterator |
Public Member Functions | |
MediumLevelILSSAVariableList (MediumLevelILFunction *func, const BNMediumLevelILInstruction &instr, size_t count) | |
const_iterator | begin () const |
const_iterator | end () const |
size_t | size () const |
const SSAVariable | operator[] (size_t i) const |
operator std::vector< SSAVariable > () const | |
MediumLevelILSSAVariableList::MediumLevelILSSAVariableList | ( | MediumLevelILFunction * | func, |
const BNMediumLevelILInstruction & | instr, | ||
size_t | count ) |
MediumLevelILSSAVariableList::const_iterator MediumLevelILSSAVariableList::begin | ( | ) | const |
MediumLevelILSSAVariableList::const_iterator MediumLevelILSSAVariableList::end | ( | ) | const |
size_t MediumLevelILSSAVariableList::size | ( | ) | const |
const SSAVariable MediumLevelILSSAVariableList::operator[] | ( | size_t | i | ) | const |
BinaryNinja::MediumLevelILSSAVariableList::operator std::vector< SSAVariable > | ( | ) | const |
class BinaryNinja::MediumLevelILInstructionList |
Public Types | |
typedef ListIterator | const_iterator |
Public Member Functions | |
MediumLevelILInstructionList (MediumLevelILFunction *func, const BNMediumLevelILInstruction &instr, size_t count, size_t instructionIndex) | |
const_iterator | begin () const |
const_iterator | end () const |
size_t | size () const |
const MediumLevelILInstruction | operator[] (size_t i) const |
operator std::vector< MediumLevelILInstruction > () const | |
MediumLevelILInstructionList::MediumLevelILInstructionList | ( | MediumLevelILFunction * | func, |
const BNMediumLevelILInstruction & | instr, | ||
size_t | count, | ||
size_t | instructionIndex ) |
MediumLevelILInstructionList::const_iterator MediumLevelILInstructionList::begin | ( | ) | const |
MediumLevelILInstructionList::const_iterator MediumLevelILInstructionList::end | ( | ) | const |
size_t MediumLevelILInstructionList::size | ( | ) | const |
const MediumLevelILInstruction MediumLevelILInstructionList::operator[] | ( | size_t | i | ) | const |
BinaryNinja::MediumLevelILInstructionList::operator std::vector< MediumLevelILInstruction > | ( | ) | const |
struct BinaryNinja::MediumLevelILInstructionBase |
MediumLevelILOperandList MediumLevelILInstructionBase::GetOperands | ( | ) | const |
uint64_t MediumLevelILInstructionBase::GetRawOperandAsInteger | ( | size_t | operand | ) | const |
ConstantData MediumLevelILInstructionBase::GetRawOperandAsConstantData | ( | size_t | operand | ) | const |
size_t MediumLevelILInstructionBase::GetRawOperandAsIndex | ( | size_t | operand | ) | const |
MediumLevelILInstruction MediumLevelILInstructionBase::GetRawOperandAsExpr | ( | size_t | operand | ) | const |
Variable MediumLevelILInstructionBase::GetRawOperandAsVariable | ( | size_t | operand | ) | const |
SSAVariable MediumLevelILInstructionBase::GetRawOperandAsSSAVariable | ( | size_t | operand | ) | const |
SSAVariable MediumLevelILInstructionBase::GetRawOperandAsPartialSSAVariableSource | ( | size_t | operand | ) | const |
MediumLevelILIndexList MediumLevelILInstructionBase::GetRawOperandAsIndexList | ( | size_t | operand | ) | const |
MediumLevelILIndexMap MediumLevelILInstructionBase::GetRawOperandAsIndexMap | ( | size_t | operand | ) | const |
MediumLevelILVariableList MediumLevelILInstructionBase::GetRawOperandAsVariableList | ( | size_t | operand | ) | const |
MediumLevelILSSAVariableList MediumLevelILInstructionBase::GetRawOperandAsSSAVariableList | ( | size_t | operand | ) | const |
MediumLevelILInstructionList MediumLevelILInstructionBase::GetRawOperandAsExprList | ( | size_t | operand | ) | const |
void MediumLevelILInstructionBase::UpdateRawOperand | ( | size_t | operandIndex, |
ExprId | value ) |
void MediumLevelILInstructionBase::UpdateRawOperandAsSSAVariableList | ( | size_t | operandIndex, |
const std::vector< SSAVariable > & | vars ) |
void BinaryNinja::MediumLevelILInstructionBase::UpdateRawOperandAsExprList | ( | size_t | operandIndex, |
const std::vector< MediumLevelILInstruction > & | exprs ) |
void BinaryNinja::MediumLevelILInstructionBase::UpdateRawOperandAsExprList | ( | size_t | operandIndex, |
const std::vector< size_t > & | exprs ) |
RegisterValue MediumLevelILInstructionBase::GetValue | ( | ) | const |
PossibleValueSet MediumLevelILInstructionBase::GetPossibleValues | ( | const std::set< BNDataFlowQueryOption > & | options = std::set <BNDataFlowQueryOption>() | ) | const |
Confidence< Ref< Type > > MediumLevelILInstructionBase::GetType | ( | ) | const |
char * MediumLevelILInstructionBase::Dump | ( | ) | const |
size_t MediumLevelILInstructionBase::GetSSAVarVersion | ( | const Variable & | var | ) |
size_t MediumLevelILInstructionBase::GetSSAMemoryVersion | ( | ) |
Variable MediumLevelILInstructionBase::GetVariableForRegister | ( | uint32_t | reg | ) |
Variable MediumLevelILInstructionBase::GetVariableForFlag | ( | uint32_t | flag | ) |
Variable MediumLevelILInstructionBase::GetVariableForStackLocation | ( | int64_t | offset | ) |
PossibleValueSet MediumLevelILInstructionBase::GetPossibleSSAVarValues | ( | const SSAVariable & | var | ) |
RegisterValue MediumLevelILInstructionBase::GetRegisterValue | ( | uint32_t | reg | ) |
RegisterValue MediumLevelILInstructionBase::GetRegisterValueAfter | ( | uint32_t | reg | ) |
PossibleValueSet MediumLevelILInstructionBase::GetPossibleRegisterValues | ( | uint32_t | reg | ) |
PossibleValueSet MediumLevelILInstructionBase::GetPossibleRegisterValuesAfter | ( | uint32_t | reg | ) |
RegisterValue MediumLevelILInstructionBase::GetFlagValue | ( | uint32_t | flag | ) |
RegisterValue MediumLevelILInstructionBase::GetFlagValueAfter | ( | uint32_t | flag | ) |
PossibleValueSet MediumLevelILInstructionBase::GetPossibleFlagValues | ( | uint32_t | flag | ) |
PossibleValueSet MediumLevelILInstructionBase::GetPossibleFlagValuesAfter | ( | uint32_t | flag | ) |
RegisterValue MediumLevelILInstructionBase::GetStackContents | ( | int32_t | offset, |
size_t | len ) |
RegisterValue MediumLevelILInstructionBase::GetStackContentsAfter | ( | int32_t | offset, |
size_t | len ) |
PossibleValueSet MediumLevelILInstructionBase::GetPossibleStackContents | ( | int32_t | offset, |
size_t | len ) |
PossibleValueSet MediumLevelILInstructionBase::GetPossibleStackContentsAfter | ( | int32_t | offset, |
size_t | len ) |
BNILBranchDependence MediumLevelILInstructionBase::GetBranchDependence | ( | size_t | branchInstr | ) |
BNILBranchDependence MediumLevelILInstructionBase::GetBranchDependence | ( | const MediumLevelILInstruction & | branch | ) |
unordered_map< size_t, BNILBranchDependence > MediumLevelILInstructionBase::GetAllBranchDependence | ( | ) |
size_t MediumLevelILInstructionBase::GetSSAInstructionIndex | ( | ) | const |
size_t MediumLevelILInstructionBase::GetNonSSAInstructionIndex | ( | ) | const |
size_t MediumLevelILInstructionBase::GetSSAExprIndex | ( | ) | const |
size_t MediumLevelILInstructionBase::GetNonSSAExprIndex | ( | ) | const |
MediumLevelILInstruction MediumLevelILInstructionBase::GetSSAForm | ( | ) | const |
MediumLevelILInstruction MediumLevelILInstructionBase::GetNonSSAForm | ( | ) | const |
size_t MediumLevelILInstructionBase::GetLowLevelILInstructionIndex | ( | ) | const |
size_t MediumLevelILInstructionBase::GetLowLevelILExprIndex | ( | ) | const |
size_t MediumLevelILInstructionBase::GetHighLevelILInstructionIndex | ( | ) | const |
size_t MediumLevelILInstructionBase::GetHighLevelILExprIndex | ( | ) | const |
bool MediumLevelILInstructionBase::HasLowLevelIL | ( | ) | const |
LowLevelILInstruction MediumLevelILInstructionBase::GetLowLevelIL | ( | ) | const |
void MediumLevelILInstructionBase::MarkInstructionForRemoval | ( | ) |
void MediumLevelILInstructionBase::Replace | ( | ExprId | expr | ) |
void MediumLevelILInstructionBase::SetAttributes | ( | uint32_t | attributes | ) |
void MediumLevelILInstructionBase::SetAttribute | ( | BNILInstructionAttribute | attribute, |
bool | state = true ) |
void MediumLevelILInstructionBase::ClearAttribute | ( | BNILInstructionAttribute | attribute | ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Ref<MediumLevelILFunction> BinaryNinja::MediumLevelILInstructionBase::function |
size_t BinaryNinja::MediumLevelILInstructionBase::exprIndex |
size_t BinaryNinja::MediumLevelILInstructionBase::instructionIndex |
|
static |
|
static |
|
static |
struct BinaryNinja::MediumLevelILInstruction |
Additional Inherited Members | |
Public Attributes inherited from BinaryNinja::MediumLevelILInstructionBase | |
Ref< MediumLevelILFunction > | function |
size_t | exprIndex |
size_t | instructionIndex |
Public Attributes inherited from BNMediumLevelILInstruction | |
BNMediumLevelILOperation | operation |
uint32_t | attributes |
uint32_t | sourceOperand |
size_t | size |
uint64_t | operands [5] |
uint64_t | address |
Static Public Attributes inherited from BinaryNinja::MediumLevelILInstructionBase | |
static std::unordered_map< MediumLevelILOperandUsage, MediumLevelILOperandType > | operandTypeForUsage |
static std::unordered_map< BNMediumLevelILOperation, std::vector< MediumLevelILOperandUsage > > | operationOperandUsage |
static std::unordered_map< BNMediumLevelILOperation, std::unordered_map< MediumLevelILOperandUsage, size_t > > | operationOperandIndex = GetOperandIndexForOperandUsages() |
MediumLevelILInstruction::MediumLevelILInstruction | ( | ) |
MediumLevelILInstruction::MediumLevelILInstruction | ( | MediumLevelILFunction * | func, |
const BNMediumLevelILInstruction & | instr, | ||
size_t | expr, | ||
size_t | instrIdx ) |
MediumLevelILInstruction::MediumLevelILInstruction | ( | const MediumLevelILInstructionBase & | instr | ) |
void MediumLevelILInstruction::VisitExprs | ( | const std::function< bool(const MediumLevelILInstruction &expr)> & | func | ) | const |
ExprId MediumLevelILInstruction::CopyTo | ( | MediumLevelILFunction * | dest | ) | const |
ExprId MediumLevelILInstruction::CopyTo | ( | MediumLevelILFunction * | dest, |
const std::function< ExprId(const MediumLevelILInstruction &subExpr)> & | subExprHandler ) const |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
bool MediumLevelILInstruction::GetOperandIndexForUsage | ( | MediumLevelILOperandUsage | usage, |
size_t & | operandIndex ) const |
MediumLevelILInstruction MediumLevelILInstruction::GetSourceExpr | ( | ) | const |
Variable MediumLevelILInstruction::GetSourceVariable | ( | ) | const |
SSAVariable MediumLevelILInstruction::GetSourceSSAVariable | ( | ) | const |
MediumLevelILInstruction MediumLevelILInstruction::GetDestExpr | ( | ) | const |
Variable MediumLevelILInstruction::GetDestVariable | ( | ) | const |
SSAVariable MediumLevelILInstruction::GetDestSSAVariable | ( | ) | const |
MediumLevelILInstruction MediumLevelILInstruction::GetLeftExpr | ( | ) | const |
MediumLevelILInstruction MediumLevelILInstruction::GetRightExpr | ( | ) | const |
MediumLevelILInstruction MediumLevelILInstruction::GetCarryExpr | ( | ) | const |
MediumLevelILInstruction MediumLevelILInstruction::GetStackExpr | ( | ) | const |
MediumLevelILInstruction MediumLevelILInstruction::GetConditionExpr | ( | ) | const |
Variable MediumLevelILInstruction::GetHighVariable | ( | ) | const |
Variable MediumLevelILInstruction::GetLowVariable | ( | ) | const |
SSAVariable MediumLevelILInstruction::GetHighSSAVariable | ( | ) | const |
SSAVariable MediumLevelILInstruction::GetLowSSAVariable | ( | ) | const |
uint64_t MediumLevelILInstruction::GetOffset | ( | ) | const |
int64_t MediumLevelILInstruction::GetConstant | ( | ) | const |
ConstantData MediumLevelILInstruction::GetConstantData | ( | ) | const |
int64_t MediumLevelILInstruction::GetVector | ( | ) | const |
uint32_t MediumLevelILInstruction::GetIntrinsic | ( | ) | const |
size_t MediumLevelILInstruction::GetTarget | ( | ) | const |
size_t MediumLevelILInstruction::GetTrueTarget | ( | ) | const |
size_t MediumLevelILInstruction::GetFalseTarget | ( | ) | const |
size_t MediumLevelILInstruction::GetDestMemoryVersion | ( | ) | const |
size_t MediumLevelILInstruction::GetSourceMemoryVersion | ( | ) | const |
MediumLevelILIndexMap MediumLevelILInstruction::GetTargets | ( | ) | const |
MediumLevelILIndexList MediumLevelILInstruction::GetSourceMemoryVersions | ( | ) | const |
MediumLevelILVariableList MediumLevelILInstruction::GetOutputVariables | ( | ) | const |
MediumLevelILSSAVariableList MediumLevelILInstruction::GetOutputSSAVariables | ( | ) | const |
MediumLevelILInstructionList MediumLevelILInstruction::GetParameterExprs | ( | ) | const |
MediumLevelILInstructionList MediumLevelILInstruction::GetSourceExprs | ( | ) | const |
MediumLevelILSSAVariableList MediumLevelILInstruction::GetSourceSSAVariables | ( | ) | const |
class BinaryNinja::MediumLevelILOperand |
Public Member Functions | |
MediumLevelILOperand (const MediumLevelILInstruction &instr, MediumLevelILOperandUsage usage, size_t operandIndex) | |
MediumLevelILOperandType | GetType () const |
MediumLevelILOperandUsage | GetUsage () const |
uint64_t | GetInteger () const |
ConstantData | GetConstantData () const |
size_t | GetIndex () const |
uint32_t | GetIntrinsic () const |
MediumLevelILInstruction | GetExpr () const |
Variable | GetVariable () const |
SSAVariable | GetSSAVariable () const |
MediumLevelILIndexList | GetIndexList () const |
MediumLevelILIndexMap | GetIndexMap () const |
MediumLevelILVariableList | GetVariableList () const |
MediumLevelILSSAVariableList | GetSSAVariableList () const |
MediumLevelILInstructionList | GetExprList () const |
MediumLevelILOperand::MediumLevelILOperand | ( | const MediumLevelILInstruction & | instr, |
MediumLevelILOperandUsage | usage, | ||
size_t | operandIndex ) |
|
inline |
|
inline |
uint64_t MediumLevelILOperand::GetInteger | ( | ) | const |
ConstantData MediumLevelILOperand::GetConstantData | ( | ) | const |
size_t MediumLevelILOperand::GetIndex | ( | ) | const |
uint32_t MediumLevelILOperand::GetIntrinsic | ( | ) | const |
MediumLevelILInstruction MediumLevelILOperand::GetExpr | ( | ) | const |
Variable MediumLevelILOperand::GetVariable | ( | ) | const |
SSAVariable MediumLevelILOperand::GetSSAVariable | ( | ) | const |
MediumLevelILIndexList MediumLevelILOperand::GetIndexList | ( | ) | const |
MediumLevelILIndexMap MediumLevelILOperand::GetIndexMap | ( | ) | const |
MediumLevelILVariableList MediumLevelILOperand::GetVariableList | ( | ) | const |
MediumLevelILSSAVariableList MediumLevelILOperand::GetSSAVariableList | ( | ) | const |
MediumLevelILInstructionList MediumLevelILOperand::GetExprList | ( | ) | const |
class BinaryNinja::MediumLevelILOperandList |
Public Types | |
typedef ListIterator | const_iterator |
Public Member Functions | |
MediumLevelILOperandList (const MediumLevelILInstruction &instr, const std::vector< MediumLevelILOperandUsage > &usageList, const std::unordered_map< MediumLevelILOperandUsage, size_t > &operandIndexMap) | |
const_iterator | begin () const |
const_iterator | end () const |
size_t | size () const |
const MediumLevelILOperand | operator[] (size_t i) const |
operator std::vector< MediumLevelILOperand > () const | |
MediumLevelILOperandList::MediumLevelILOperandList | ( | const MediumLevelILInstruction & | instr, |
const std::vector< MediumLevelILOperandUsage > & | usageList, | ||
const std::unordered_map< MediumLevelILOperandUsage, size_t > & | operandIndexMap ) |
MediumLevelILOperandList::const_iterator MediumLevelILOperandList::begin | ( | ) | const |
MediumLevelILOperandList::const_iterator MediumLevelILOperandList::end | ( | ) | const |
size_t MediumLevelILOperandList::size | ( | ) | const |
const MediumLevelILOperand MediumLevelILOperandList::operator[] | ( | size_t | i | ) | const |
BinaryNinja::MediumLevelILOperandList::operator std::vector< MediumLevelILOperand > | ( | ) | const |
struct BinaryNinja::MediumLevelILConstantInstruction |
Additional Inherited Members | |
Public Attributes inherited from BinaryNinja::MediumLevelILInstructionBase | |
Ref< MediumLevelILFunction > | function |
size_t | exprIndex |
size_t | instructionIndex |
Public Attributes inherited from BNMediumLevelILInstruction | |
BNMediumLevelILOperation | operation |
uint32_t | attributes |
uint32_t | sourceOperand |
size_t | size |
uint64_t | operands [5] |
uint64_t | address |
Static Public Attributes inherited from BinaryNinja::MediumLevelILInstructionBase | |
static std::unordered_map< MediumLevelILOperandUsage, MediumLevelILOperandType > | operandTypeForUsage |
static std::unordered_map< BNMediumLevelILOperation, std::vector< MediumLevelILOperandUsage > > | operationOperandUsage |
static std::unordered_map< BNMediumLevelILOperation, std::unordered_map< MediumLevelILOperandUsage, size_t > > | operationOperandIndex = GetOperandIndexForOperandUsages() |
|
inline |
struct BinaryNinja::MediumLevelILConstantDataInstruction |
Additional Inherited Members | |
Public Attributes inherited from BinaryNinja::MediumLevelILInstructionBase | |
Ref< MediumLevelILFunction > | function |
size_t | exprIndex |
size_t | instructionIndex |
Public Attributes inherited from BNMediumLevelILInstruction | |
BNMediumLevelILOperation | operation |
uint32_t | attributes |
uint32_t | sourceOperand |
size_t | size |
uint64_t | operands [5] |
uint64_t | address |
Static Public Attributes inherited from BinaryNinja::MediumLevelILInstructionBase | |
static std::unordered_map< MediumLevelILOperandUsage, MediumLevelILOperandType > | operandTypeForUsage |
static std::unordered_map< BNMediumLevelILOperation, std::vector< MediumLevelILOperandUsage > > | operationOperandUsage |
static std::unordered_map< BNMediumLevelILOperation, std::unordered_map< MediumLevelILOperandUsage, size_t > > | operationOperandIndex = GetOperandIndexForOperandUsages() |
|
inline |
struct BinaryNinja::MediumLevelILOneOperandInstruction |
Additional Inherited Members | |
Public Attributes inherited from BinaryNinja::MediumLevelILInstructionBase | |
Ref< MediumLevelILFunction > | function |
size_t | exprIndex |
size_t | instructionIndex |
Public Attributes inherited from BNMediumLevelILInstruction | |
BNMediumLevelILOperation | operation |
uint32_t | attributes |
uint32_t | sourceOperand |
size_t | size |
uint64_t | operands [5] |
uint64_t | address |
Static Public Attributes inherited from BinaryNinja::MediumLevelILInstructionBase | |
static std::unordered_map< MediumLevelILOperandUsage, MediumLevelILOperandType > | operandTypeForUsage |
static std::unordered_map< BNMediumLevelILOperation, std::vector< MediumLevelILOperandUsage > > | operationOperandUsage |
static std::unordered_map< BNMediumLevelILOperation, std::unordered_map< MediumLevelILOperandUsage, size_t > > | operationOperandIndex = GetOperandIndexForOperandUsages() |
|
inline |
struct BinaryNinja::MediumLevelILTwoOperandInstruction |
Additional Inherited Members | |
Public Attributes inherited from BinaryNinja::MediumLevelILInstructionBase | |
Ref< MediumLevelILFunction > | function |
size_t | exprIndex |
size_t | instructionIndex |
Public Attributes inherited from BNMediumLevelILInstruction | |
BNMediumLevelILOperation | operation |
uint32_t | attributes |
uint32_t | sourceOperand |
size_t | size |
uint64_t | operands [5] |
uint64_t | address |
Static Public Attributes inherited from BinaryNinja::MediumLevelILInstructionBase | |
static std::unordered_map< MediumLevelILOperandUsage, MediumLevelILOperandType > | operandTypeForUsage |
static std::unordered_map< BNMediumLevelILOperation, std::vector< MediumLevelILOperandUsage > > | operationOperandUsage |
static std::unordered_map< BNMediumLevelILOperation, std::unordered_map< MediumLevelILOperandUsage, size_t > > | operationOperandIndex = GetOperandIndexForOperandUsages() |
|
inline |
|
inline |
struct BinaryNinja::MediumLevelILTwoOperandWithCarryInstruction |
Additional Inherited Members | |
Public Attributes inherited from BinaryNinja::MediumLevelILInstructionBase | |
Ref< MediumLevelILFunction > | function |
size_t | exprIndex |
size_t | instructionIndex |
Public Attributes inherited from BNMediumLevelILInstruction | |
BNMediumLevelILOperation | operation |
uint32_t | attributes |
uint32_t | sourceOperand |
size_t | size |
uint64_t | operands [5] |
uint64_t | address |
Static Public Attributes inherited from BinaryNinja::MediumLevelILInstructionBase | |
static std::unordered_map< MediumLevelILOperandUsage, MediumLevelILOperandType > | operandTypeForUsage |
static std::unordered_map< BNMediumLevelILOperation, std::vector< MediumLevelILOperandUsage > > | operationOperandUsage |
static std::unordered_map< BNMediumLevelILOperation, std::unordered_map< MediumLevelILOperandUsage, size_t > > | operationOperandIndex = GetOperandIndexForOperandUsages() |
|
inline |
|
inline |
|
inline |