miasm
Reverse engineering framework
All Classes Namespaces Files Functions Variables Typedefs Enumerator Properties Macros Pages
unssa.py File Reference

Classes

class  unssa.Regs
 
class  unssa.Arch
 
class  unssa.IRATest
 
class  unssa.IRAOutRegs
 
class  unssa.CustomIRCFGSimplifierSSA
 

Namespaces

 unssa
 

Functions

def unssa.gen_irblock (label, exprs_list)
 
def unssa.add_out_reg_end (ir_arch_a, ircfg_a)
 

Variables

 unssa.loc_db = LocationDB()
 
 unssa.a = ExprId("a", 32)
 
 unssa.b = ExprId("b", 32)
 
 unssa.c = ExprId("c", 32)
 
 unssa.d = ExprId("d", 32)
 
 unssa.r = ExprId("r", 32)
 
 unssa.x = ExprId("x", 32)
 
 unssa.y = ExprId("y", 32)
 
 unssa.u8 = ExprId("u8", 8)
 
 unssa.zf = ExprId('zf', 1)
 
 unssa.a_init = ExprId("a_init", 32)
 
 unssa.b_init = ExprId("b_init", 32)
 
 unssa.c_init = ExprId("c_init", 32)
 
 unssa.d_init = ExprId("d_init", 32)
 
 unssa.r_init = ExprId("r_init", 32)
 
 unssa.pc = ExprId("pc", 32)
 
 unssa.sp = ExprId("sp", 32)
 
 unssa.CST0 = ExprInt(0x0, 32)
 
 unssa.CST1 = ExprInt(0x1, 32)
 
 unssa.CST2 = ExprInt(0x2, 32)
 
 unssa.CST3 = ExprInt(0x3, 32)
 
 unssa.CSTX_8 = ExprInt(12, 8)
 
 unssa.LBL0 = loc_db.add_location("lbl0", 0)
 
 unssa.LBL1 = loc_db.add_location("lbl1", 1)
 
 unssa.LBL2 = loc_db.add_location("lbl2", 2)
 
 unssa.LBL3 = loc_db.add_location("lbl3", 3)
 
 unssa.LBL4 = loc_db.add_location("lbl4", 4)
 
 unssa.LBL5 = loc_db.add_location("lbl5", 5)
 
 unssa.LBL6 = loc_db.add_location("lbl6", 6)
 
 unssa.LBL7 = loc_db.add_location("lbl7", 7)
 
 unssa.IRDst = ExprId('IRDst', 32)
 
 unssa.dummy = ExprId('dummy', 32)
 
 unssa.IRA = IRATest(loc_db)
 
 unssa.END = ExprId("END", IRDst.size)
 
 unssa.G0_IRA = IRA.new_ircfg()
 
def unssa.G0_IRB0
 
def unssa.G0_IRB1
 
def unssa.G0_IRB2
 
 unssa.G1_IRA = IRA.new_ircfg()
 
def unssa.G1_IRB0
 
def unssa.G1_IRB1
 
def unssa.G1_IRB2
 
def unssa.G1_IRB3
 
 unssa.G2_IRA = IRA.new_ircfg()
 
def unssa.G2_IRB0
 
def unssa.G2_IRB1
 
def unssa.G2_IRB2
 
 unssa.G3_IRA = IRA.new_ircfg()
 
def unssa.G3_IRB0
 
def unssa.G3_IRB1
 
def unssa.G3_IRB2
 
def unssa.G3_IRB3
 
def unssa.G3_IRB4
 
def unssa.G3_IRB5
 
 unssa.G4_IRA = IRA.new_ircfg()
 
def unssa.G4_IRB0
 
def unssa.G4_IRB1
 
def unssa.G4_IRB2
 
def unssa.G4_IRB3
 
def unssa.G4_IRB4
 
def unssa.G4_IRB5
 
 unssa.G5_IRA = IRA.new_ircfg()
 
def unssa.G5_IRB0
 
def unssa.G5_IRB1
 
def unssa.G5_IRB2
 
 unssa.G6_IRA = IRA.new_ircfg()
 
def unssa.G6_IRB0
 
def unssa.G6_IRB1
 
def unssa.G6_IRB2
 
def unssa.G6_IRB3
 
def unssa.G6_IRB4
 
def unssa.G6_IRB5
 
 unssa.G7_IRA = IRA.new_ircfg()
 
def unssa.G7_IRB0
 
def unssa.G7_IRB1
 
def unssa.G7_IRB2
 
def unssa.G7_IRB3
 
def unssa.G7_IRB4
 
def unssa.G7_IRB5
 
 unssa.G8_IRA = IRA.new_ircfg()
 
def unssa.G8_IRB0
 
def unssa.G8_IRB1
 
def unssa.G8_IRB2
 
def unssa.G8_IRB3
 
def unssa.G8_IRB4
 
def unssa.G8_IRB5
 
def unssa.G8_IRB6
 
def unssa.G8_IRB7
 
 unssa.G9_IRA = IRA.new_ircfg()
 
def unssa.G9_IRB0
 
def unssa.G9_IRB1
 
def unssa.G9_IRB2
 
 unssa.G10_IRA = IRA.new_ircfg()
 
def unssa.G10_IRB0
 
def unssa.G10_IRB1
 
def unssa.G10_IRB2
 
 unssa.ir_arch_a = IRAOutRegs(loc_db)
 
 unssa.ircfg_orig = IRCFG(IRDst, loc_db)
 
 unssa.head = LBL0
 
 unssa.simplifier = CustomIRCFGSimplifierSSA(ir_arch_a)
 
 unssa.ircfg = simplifier(ircfg, head)