miasm
Reverse engineering framework
All Classes Namespaces Files Functions Variables Typedefs Enumerator Properties Macros Pages
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")