BinExport¶
ProgramBackendBinExport¶
- class qbindiff.loader.backend.binexport.ProgramBackendBinExport(file: str, *, arch: str | None = None)[source]¶
Bases:
AbstractProgramBackend
- property capabilities: ProgramCapability¶
Returns the supported capabilities
- property fun_names: dict[str, int]¶
Returns a dictionary with function name as key and the function address as value
- property functions: Iterator[FunctionBackendBinExport]¶
Returns an iterator over backend function objects
- property name¶
The name of the program.
FunctionBackendBinExport¶
- class qbindiff.loader.backend.binexport.FunctionBackendBinExport(program: ReferenceType[ProgramBackendBinExport], be_func: FunctionBinExport)[source]¶
Bases:
AbstractFunctionBackend
- property addr: Addr¶
The address of the function
- property basic_blocks: Iterator[BasicBlockBackendBinExport]¶
Returns an iterator over backend basic blocks objects
- property name¶
The name of the function.
- property type: FunctionType¶
The type of the function (as defined by IDA)
BasicBlockBackendBinExport¶
- class qbindiff.loader.backend.binexport.BasicBlockBackendBinExport(program: ReferenceType[ProgramBackendBinExport], be_block: BasicBlockBinExport)[source]¶
Bases:
AbstractBasicBlockBackend
- property addr: Addr¶
The address of the basic block
- property instructions: Iterator[InstructionBackendBinExport]¶
Returns an iterator over backend instruction objects
- property program: ProgramBackendBinExport¶
Wrapper on weak reference on ProgramBackendBinExport
InstructionBackendBinExport¶
- class qbindiff.loader.backend.binexport.InstructionBackendBinExport(cs: Cs, cs_instruction: CsInsn)[source]¶
Bases:
AbstractInstructionBackend
- MAX_ID = 3000¶
Max instruction ID. All the instruction IDs will be in the range [0, MAX_ID]
- property addr: Addr¶
The address of the instruction
- property operands: Iterator[OperandBackendBinExport]¶
Returns an iterator over backend operand objects
- property pcode_ops: list[PcodeOp]¶
List of PcodeOp associated with the instruction. Provided with the PCODE capability
- property references: dict[ReferenceType, list[Data | Structure | StructureMember]]¶
Returns all the references towards the instruction BinExport only exports data references’ address so no data type nor value.
OperandBackendBinExport¶
- class qbindiff.loader.backend.binexport.OperandBackendBinExport(cs: Cs, cs_instruction: CsInsn, cs_operand: Any, cs_operand_position: int)[source]¶
Bases:
AbstractOperandBackend
- is_immediate() bool [source]¶
Returns whether the operand is an immediate value (not considering addresses)
- property type: OperandType¶
Returns the capstone operand type