2019-02-09 01:26:17 +03:00
|
|
|
Expected {expBinaryName = "tests/samples/jumpfar.ppc.exe", expEntryPoints = [EntryPoint (Address {addrSegmentBase = 0, addrSegmentOffset = 268500992, addrSegoffOffset = 13012, addrPretty = "0x100132d4"}),EntryPoint (Address {addrSegmentBase = 0, addrSegmentOffset = 268500992, addrSegoffOffset = 0, addrPretty = "0x10010000"}),EntryPoint (Address {addrSegmentBase = 0, addrSegmentOffset = 268500992, addrSegoffOffset = 184, addrPretty = "0x100100b8"}),EntryPoint (Address {addrSegmentBase = 0, addrSegmentOffset = 268500992, addrSegoffOffset = 420, addrPretty = "0x100101a4"}),EntryPoint (Address {addrSegmentBase = 0, addrSegmentOffset = 268500992, addrSegoffOffset = 12940, addrPretty = "0x1001328c"}),EntryPoint (Address {addrSegmentBase = 0, addrSegmentOffset = 268500992, addrSegoffOffset = 13012, addrPretty = "0x100132d4"})], expFunctions = [Function (Address {addrSegmentBase = 0, addrSegmentOffset = 268500992, addrSegoffOffset = 0, addrPretty = "0x10010000"}) [Block (Address {addrSegmentBase = 0, addrSegmentOffset = 268500992, addrSegoffOffset = 0, addrPretty = "0x10010000"}) "StatementList {stmtsIdent = 0, stmtsNonterm = [# 0x0 0x10010000: mflr r0,# 0x10010000: mflr r0,# 0x10010000: {r0 => lnk_0\n ;ip => 0x10010004},# 0x4 0x10010004: std r31, -8(r1),# 0x10010004: std r31, -8(r1),r58 := (bv_add r1_0 (0xfffffffffffffff8 :: [64])),write_mem r58 r31_0,# 0x10010004: {ip => 0x10010008},# 0x8 0x10010008: std r0, 16(r1),# 0x10010008: std r0, 16(r1),r59 := (bv_add r1_0 (0x10 :: [64])),write_mem r59 lnk_0,# 0x10010008: {ip => 0x1001000c},# 0xc 0x1001000c: stdu r1, -160(r1),# 0x1001000c: stdu r1, -160(r1),r60 := (bv_add r1_0 (0xffffffffffffff60 :: [64])),write_mem r60 r1_0,# 0x1001000c: {r1 => r60\n ;ip => 0x10010010},# 0x10 0x10010010: or r31, r1, r1,# 0x10010010: or r31, r1, r1,# 0x10010010: {r31 => r60\n ;ip => 0x10010014},# 0x14 0x10010014: std r3, 136(r31),# 0x10010014: std r3, 136(r31),r61 := (bv_add r1_0 (0xffffffffffffffe8 :: [64])),write_mem r61 r3_0,# 0x10010014: {ip => 0x10010018},# 0x18 0x10010018: std r4, 128(r31),# 0x10010018: std r4, 128(r31),r62 := (bv_add r1_0 (0xffffffffffffffe0 :: [64])),write_mem r62 r4_0,# 0x10010018: {ip => 0x1001001c},# 0x1c 0x1001001c: ld r3, 136(r31),# 0x1001001c: ld r3, 136(r31),r63 := (bv_add r1_0 (0xffffffffffffffe8 :: [64])),r64 := read_mem r63 (bvbe 8),# 0x1001001c: {r3 => r64\n ;ip => 0x10010020},# 0x20 0x10010020: cmpdi cr0, r3, 0,# 0x10010020: cmpdi cr0, r3, 0,r65 := (bv_slt r64 (0x0 :: [64])),r66 := (bv_slt (0x0 :: [64]) r64),r67 := (bv_and cr_0 (0xfffffff :: [32])),r68 := (mux r66 (0x2 :: [3]) (0x1 :: [3])),r69 := (mux r65 (0x4 :: [3]) r68),r70 := (bv_shr xer_0 (0x1f :: [64])),r71 := (trunc r70 1),r72 := (uext r69 4),r73 := (uext r71 4),r74 := (bv_shl r72 (0x1 :: [4])),r75 := (bv_or r74 r73),r76 := (uext r75 32),r77 := (bv_shl r76 (0x1c :: [32])),r78 := (bv_or r67 r77),# 0x10010020: {ip => 0x10010024\n ;cr => r78},# 0x24 0x10010024: bc 4, 4*cr0+eq, 16,# 0x10010024: bc 4, 4*cr0+eq, 16,r79 := (bv_shr r78 (0x1d :: [32])),r80 := (trunc r79 1),r81 := (eq r80 (0x1 :: [1])),r87 := (mux r81 (0x10010028) (0x10010034)),# 0x10010024: {ip => r87\n ;ctr => ctr_0}], stmtsTerm = ite r81\n{\n \n jump 0x10010028\n { r0 = lnk_0\n , r1 = r60\n , r3 = r64\n , r31 = r60\n , ip = 0x10010028\n , cr = r78\n }\n}\n{\n \n jump 0x10010034\n { r0 = lnk_0\n , r1 = r60\n , r3 = r64\n , r31 = r60\n , ip = 0x10010034\n , cr = r78\n }\n}, stmtsAbsState = registers:\n { r1 = {rsp_0x10010000 + 0}\n , r2 = finset {10038000}\n , ip = code {0x10010000}\n , lnk = return_addr\n }\nstack:\n 0x10 := return_addr\n -0xa0 := {rsp_0x10010000 + 0}}",Block (Address {addrSegmentBase = 0, addrSegmentOffset = 268500992, addrSegoffOffset = 40, addrPretty = "0x10010028"}) "StatementList {stmtsIdent = 0, stmtsNonterm = [# 0x0 0x10010028: ld r3, 128(r31),# 0x10010028: ld r3, 128(r31),r91 := (bv_add r31_0 (0x80 :: [64])),r92 := read_mem r91 (bvbe 8),# 0x10010028: {r3 => r92\n ;ip => 0x1001002c},#
|