1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
| │ ┌┌─> 0x00401345 e816feffff call sym.imp.puts ;[2] │┌───> 0x0040134a 83cfff or edi, 0xffffffff ; -1 │╎╎╎ 0x0040134d e8cefeffff call sym.imp.exit ;[3] └────> 0x00401352 837c240e01 cmp dword [rsp + 0xe], 1 ; version -> 1 dword -> 4 bytes ╎╎╎ 0x00401357 488d3dd50d.. lea rdi, str.ERROR:_Unsupported_version_ ; 0x402133 ; "ERROR: Unsupported version!" ╎└──< 0x0040135e 75e5 jne 0x401345 ╎ ╎ 0x00401360 440fb7642412 movzx r12d, word [rsp + 0x12] ╎ ╎ 0x00401366 440faf642414 imul r12d, dword [rsp + 0x14] ╎ ╎ 0x0040136c 4489e7 mov edi, r12d ╎ ╎ 0x0040136f e86cfeffff call sym.imp.malloc ;[4] ╎ ╎ 0x00401374 488d3dd40d.. lea rdi, str.ERROR:_Failed_to_allocate_memory_for_the_image_data_ ; 0x40214f ; "ERROR: Failed to all ╎ ╎ 0x0040137b 4889c3 mov rbx, rax ╎ ╎ 0x0040137e 4885c0 test rax, rax ╎ └─< 0x00401381 74c2 je 0x401345 ╎ 0x00401383 4489e2 mov edx, r12d ╎ 0x00401386 4889c6 mov rsi, rax ╎ 0x00401389 4183c8ff or r8d, 0xffffffff ; -1 ╎ 0x0040138d 31ff xor edi, edi ╎ 0x0040138f 488d0dee0d.. lea rcx, str.ERROR:_Failed_to_read_data_ ; 0x402184 ; "ERROR: Failed to read data!" ╎ 0x00401396 e880020000 call sym.read_exact ;[1] ╎ 0x0040139b 0fb7542412 movzx edx, word [rsp + 0x12] ; 2 bytes ╎ 0x004013a0 0faf542414 imul edx, dword [rsp + 0x14] ; 4 bytes ╎ 0x004013a5 31c0 xor eax, eax ╎ ┌─> 0x004013a7 39c2 cmp edx, eax ╎┌──< 0x004013a9 762f jbe 0x4013da ╎│╎ 0x004013ab 0fb60c03 movzx ecx, byte [rbx + rax] ╎│╎ 0x004013af 48ffc0 inc rax ╎│╎ 0x004013b2 8d71e0 lea esi, [rcx - 0x20] ╎│╎ 0x004013b5 4080fe5e cmp sil, 0x5e ; '^' ; 94 ╎│└─< 0x004013b9 76ec jbe 0x4013a7 ╎│ 0x004013bb 488b3d7e2c.. mov rdi, qword [obj.stderr] ; obj.stderr__GLIBC_2.2.5 ╎│ ; [0x404040:8]=0 ╎│ 0x004013c2 488d15d70d.. lea rdx, str.ERROR:_Invalid_character_0x_x_in_the_image_data__n ; str.ERROR:_Invalid_character_0x_x_ ╎│ ; 0x4021a0 ; "ERROR: Invalid character 0x%x in the image data!\n" ╎│ 0x004013c9 be01000000 mov esi, 1 ╎│ 0x004013ce 31c0 xor eax, eax ╎│ 0x004013d0 e85bfeffff call sym.imp.__fprintf_chk ;[5] └───< 0x004013d5 e970ffffff jmp 0x40134a └──> 0x004013da 4889de mov rsi, rbx 0x004013dd 4889ef mov rdi, rbp 0x004013e0 e886020000 call sym.display ;[6] 0x004013e5 0fb74c2412 movzx ecx, word [rsp + 0x12] 0x004013ea 31c0 xor eax, eax 0x004013ec 31d2 xor edx, edx 0x004013ee 0faf4c2414 imul ecx, dword [rsp + 0x14] ┌─> 0x004013f3 39c1 cmp ecx, eax ┌──< 0x004013f5 760d jbe 0x401404 │╎ 0x004013f7 803c0320 cmp byte [rbx + rax], 0x20 ┌───< 0x004013fb 7402 je 0x4013ff ││╎ 0x004013fd ffc2 inc edx └───> 0x004013ff 48ffc0 inc rax │└─< 0x00401402 ebef jmp 0x4013f3 └──> 0x00401404 81fa13010000 cmp edx, 0x113 ; 275 ┌─< 0x0040140a 7507 jne 0x401413 │ 0x0040140c 31c0 xor eax, eax
|