miasm
Reverse engineering framework
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)