miasm
Reverse engineering framework
miasm.ir.symbexec Namespace Reference

Classes

class  MemArray
 
class  MemSparse
 
class  StateEngine
 
class  SymbolicExecutionEngine
 
class  SymbolicState
 
class  SymbolMngr
 

Functions

def get_block (ir_arch, ircfg, mdis, addr)
 
def get_expr_base_offset (expr)
 
def merge_ptr_read (known, ptrs)
 

Variables

 log = logging.getLogger("symbexec")
 
 console_handler = logging.StreamHandler()
 
string INTERNAL_INTBASE_NAME = "__INTERNAL_INTBASE__"
 

Function Documentation

◆ get_block()

def miasm.ir.symbexec.get_block (   ir_arch,
  ircfg,
  mdis,
  addr 
)
Get IRBlock at address @addr
Here is the caller graph for this function:

◆ get_expr_base_offset()

def miasm.ir.symbexec.get_expr_base_offset (   expr)
Return a couple representing the symbolic/concrete part of an addition
expression.

If there is no symbolic part, ExprId(INTERNAL_INTBASE_NAME) is used
If there is not concrete part, 0 is used
@expr: Expression instance
Here is the caller graph for this function:

◆ merge_ptr_read()

def miasm.ir.symbexec.merge_ptr_read (   known,
  ptrs 
)
Merge common memory parts in a multiple byte memory.
@ptrs: memory bytes list
@known: ptrs' associated boolean for present/unpresent memory part in the
store

Variable Documentation

◆ console_handler

miasm.ir.symbexec.console_handler = logging.StreamHandler()

◆ INTERNAL_INTBASE_NAME

string miasm.ir.symbexec.INTERNAL_INTBASE_NAME = "__INTERNAL_INTBASE__"

◆ log

miasm.ir.symbexec.log = logging.getLogger("symbexec")