miasm
Reverse engineering framework
data_flow.py File Reference

Classes

class  miasm.analysis.data_flow.ReachingDefinitions
 
class  miasm.analysis.data_flow.DiGraphDefUse
 
class  miasm.analysis.data_flow.DeadRemoval
 
class  miasm.analysis.data_flow.SSADefUse
 
class  miasm.analysis.data_flow.AssignBlockLivenessInfos
 
class  miasm.analysis.data_flow.IRBlockLivenessInfos
 
class  miasm.analysis.data_flow.DiGraphLiveness
 
class  miasm.analysis.data_flow.DiGraphLivenessIRA
 
class  miasm.analysis.data_flow.DiGraphLivenessSSA
 
class  miasm.analysis.data_flow.DelDummyPhi
 
class  miasm.analysis.data_flow.UnionFind
 
class  miasm.analysis.data_flow.ExprToGraph
 
class  miasm.analysis.data_flow.State
 
class  miasm.analysis.data_flow.PropagateExpressions
 

Namespaces

 miasm.analysis.data_flow
 

Functions

def miasm.analysis.data_flow.merge_blocks (ircfg, heads)
 
def miasm.analysis.data_flow.remove_empty_assignblks (ircfg)
 
def miasm.analysis.data_flow.expr_has_mem (expr)
 
def miasm.analysis.data_flow.stack_to_reg (expr)
 
def miasm.analysis.data_flow.is_stack_access (ir_arch_a, expr)
 
def miasm.analysis.data_flow.visitor_get_stack_accesses (ir_arch_a, expr, stack_vars)
 
def miasm.analysis.data_flow.get_stack_accesses (ir_arch_a, expr)
 
def miasm.analysis.data_flow.get_interval_length (interval_in)
 
def miasm.analysis.data_flow.check_expr_below_stack (ir_arch_a, expr)
 
def miasm.analysis.data_flow.retrieve_stack_accesses (ir_arch_a, ircfg)
 
def miasm.analysis.data_flow.fix_stack_vars (expr, base_to_info)
 
def miasm.analysis.data_flow.replace_mem_stack_vars (expr, base_to_info)
 
def miasm.analysis.data_flow.replace_stack_vars (ir_arch_a, ircfg)
 
def miasm.analysis.data_flow.memlookup_test (expr, bs, is_addr_ro_variable, result)
 
def miasm.analysis.data_flow.memlookup_visit (expr, bs, is_addr_ro_variable)
 
def miasm.analysis.data_flow.get_memlookup (expr, bs, is_addr_ro_variable)
 
def miasm.analysis.data_flow.read_mem (bs, expr)
 
def miasm.analysis.data_flow.load_from_int (ir_arch, bs, is_addr_ro_variable)
 
def miasm.analysis.data_flow.discard_phi_sources (ircfg, deleted_vars)
 
def miasm.analysis.data_flow.get_unreachable_nodes (ircfg, edges_to_del, heads)
 
def miasm.analysis.data_flow.update_phi_with_deleted_edges (ircfg, edges_to_del)
 
def miasm.analysis.data_flow.del_unused_edges (ircfg, heads)
 
def miasm.analysis.data_flow.get_phi_sources (phi_src, phi_dsts, ids_to_src)
 
def miasm.analysis.data_flow.replace_expr_from_bottom (expr_orig, dct)
 
def miasm.analysis.data_flow.is_mem_sub_part (needle, mem)
 

Variables

dictionary miasm.analysis.data_flow.ATTR_DEP
 
 miasm.analysis.data_flow.AssignblkNode = namedtuple('AssignblkNode', ['label', 'index', 'var'])