dwarfcore.plugins.dwarf_track_variables module

class dwarfcore.plugins.dwarf_track_variables.DwarfTrackVariables(dwarfcore: dwarfcore.dwarfcore.DwarfCore, poi_funcs: Optional[List[str]] = None)

Bases: object

Track variable information during execution.

Parameters
property CALL_STACK_KEY: str

Key to look up call stack, implemented as a List.

property CURR_FUNC_KEY: str

Current function context key.

Value at this key is an Optional[string] type.

property INSCOPE_VARS_KEY: str

In-scope variables context key.

Value at this key is dictionary of variables by string name key, and VariableInfo type

property LAST_PROCESSED_INSN_ADDRESS_KEY: str

The last processed instruction address will be stored at this key.

This is to help prevent duplication of processing when multiple plugins are active. :return: Key that can be used to retrieve a Manticore address

poi_funcs: Optional[List[str]]
will_execute_instruction_callback(state: manticore.native.state.State, pc: Union[int, manticore.core.smtlib.expression.Expression], _insn: manticore.native.cpu.disasm.Instruction)

Manticore instruction callback to determine which function we are executing within.

Needs to be called from a real plugin

Parameters
  • state (manticore.native.state.State) –

  • pc (Union[int, manticore.core.smtlib.expression.Expression]) –

  • _insn (manticore.native.cpu.disasm.Instruction) –