![]() |
miasm
Reverse engineering framework
|


Public Member Functions | |
| def | __init__ (self, *args, **kwargs) |
| def | mem_read (self, expr_mem) |
| def | mem_write (self, expr, data) |
| def | reset_modified (self) |
| def | apply_change (self, dst, src) |
Public Member Functions inherited from miasm.jitter.emulatedsymbexec.EmulatedSymbExec | |
| def | __init__ (self, cpu, vm, *args, **kwargs) |
| def | reset_regs (self) |
| def | update_cpu_from_engine (self) |
| def | update_engine_from_cpu (self) |
| def | enable_emulated_simplifications (self) |
Public Member Functions inherited from miasm.ir.symbexec.SymbolicExecutionEngine | |
| def | __init__ (self, ir_arch, state=None, sb_expr_simp=expr_simp_explicit) |
| def | get_state (self) |
| def | set_state (self, state) |
| def | eval_expr_visitor (self, expr, cache=None) |
| def | eval_exprint (self, expr, **kwargs) |
| def | eval_exprid (self, expr, **kwargs) |
| def | eval_exprloc (self, expr, **kwargs) |
| def | eval_exprmem (self, expr, **kwargs) |
| def | eval_exprcond (self, expr, **kwargs) |
| def | eval_exprslice (self, expr, **kwargs) |
| def | eval_exprop (self, expr, **kwargs) |
| def | eval_exprcompose (self, expr, **kwargs) |
| def | eval_expr (self, expr, eval_cache=None) |
| def | modified (self, init_state=None, ids=True, mems=True) |
| def | dump (self, ids=True, mems=True) |
| def | eval_assignblk (self, assignblk) |
| def | eval_updt_assignblk (self, assignblk) |
| def | eval_updt_irblock (self, irb, step=False) |
| def | run_block_at (self, ircfg, addr, step=False) |
| def | run_at (self, ircfg, addr, lbl_stop=None, step=False) |
| def | del_mem_above_stack (self, stack_ptr) |
| def | eval_updt_expr (self, expr) |
Public Attributes | |
| modified_expr | |
| dse_memory_range | |
| dse_memory_to_expr | |
Public Attributes inherited from miasm.jitter.emulatedsymbexec.EmulatedSymbExec | |
| cpu | |
| vm | |
Public Attributes inherited from miasm.ir.symbexec.SymbolicExecutionEngine | |
| expr_to_visitor | |
| symbols | |
| ir_arch | |
| expr_simp | |
Additional Inherited Members | |
Static Public Attributes inherited from miasm.jitter.emulatedsymbexec.EmulatedSymbExec | |
| dictionary | x86_cpuid |
Static Public Attributes inherited from miasm.ir.symbexec.SymbolicExecutionEngine | |
| StateEngine = SymbolicState | |
Properties inherited from miasm.ir.symbexec.SymbolicExecutionEngine | |
| state = property(get_state, set_state) | |
Extension of EmulatedSymbExec to be used by DSE engines Add the tracking of modified expressions, and the ability to symbolize memory areas
| def miasm.analysis.dse.ESETrackModif.__init__ | ( | self, | |
| * | args, | ||
| ** | kwargs | ||
| ) |
| def miasm.analysis.dse.ESETrackModif.apply_change | ( | self, | |
| dst, | |||
| src | |||
| ) |
Apply @dst = @src on the current state WITHOUT evaluating both side @dst: Expr, destination @src: Expr, source
Reimplemented from miasm.ir.symbexec.SymbolicExecutionEngine.


| def miasm.analysis.dse.ESETrackModif.mem_read | ( | self, | |
| expr_mem | |||
| ) |
Memory read wrapper for symbolic execution @expr_mem: ExprMem
Reimplemented from miasm.jitter.emulatedsymbexec.EmulatedSymbExec.

| def miasm.analysis.dse.ESETrackModif.mem_write | ( | self, | |
| dest, | |||
| data | |||
| ) |
Memory read wrapper for symbolic execution @dest: ExprMem instance @data: Expr instance
Reimplemented from miasm.jitter.emulatedsymbexec.EmulatedSymbExec.

| def miasm.analysis.dse.ESETrackModif.reset_modified | ( | self | ) |
Reset modified expression tracker
| miasm.analysis.dse.ESETrackModif.dse_memory_range |
| miasm.analysis.dse.ESETrackModif.dse_memory_to_expr |
| miasm.analysis.dse.ESETrackModif.modified_expr |