Question
reverseEngineering3: file format elf32-i386 Disassembly of section .init: 08048294 : 8048294: 53 push %ebx 8048295: 83 ec 08 sub $0x8,%esp 8048298: e8 83 00 00
reverseEngineering3: file format elf32-i386
Disassembly of section .init:
08048294 <_init>: 8048294: 53 push %ebx 8048295: 83 ec 08 sub $0x8,%esp 8048298: e8 83 00 00 00 call 8048320 <__x86.get_pc_thunk.bx> 804829d: 81 c3 63 1d 00 00 add $0x1d63,%ebx 80482a3: 8b 83 fc ff ff ff mov -0x4(%ebx),%eax 80482a9: 85 c0 test %eax,%eax 80482ab: 74 05 je 80482b2 <_init+0x1e> 80482ad: e8 1e 00 00 00 call 80482d0 <__gmon_start__@plt> 80482b2: 83 c4 08 add $0x8,%esp 80482b5: 5b pop %ebx 80482b6: c3 ret
Disassembly of section .plt:
080482c0 <__gmon_start__@plt-0x10>: 80482c0: ff 35 04 a0 04 08 pushl 0x804a004 80482c6: ff 25 08 a0 04 08 jmp *0x804a008 80482cc: 00 00 add %al,(%eax) ...
080482d0 <__gmon_start__@plt>: 80482d0: ff 25 0c a0 04 08 jmp *0x804a00c 80482d6: 68 00 00 00 00 push $0x0 80482db: e9 e0 ff ff ff jmp 80482c0 <_init+0x2c>
080482e0 <__libc_start_main@plt>: 80482e0: ff 25 10 a0 04 08 jmp *0x804a010 80482e6: 68 08 00 00 00 push $0x8 80482eb: e9 d0 ff ff ff jmp 80482c0 <_init+0x2c>
Disassembly of section .text:
080482f0 <_start>: 80482f0: 31 ed xor %ebp,%ebp 80482f2: 5e pop %esi 80482f3: 89 e1 mov %esp,%ecx 80482f5: 83 e4 f0 and $0xfffffff0,%esp 80482f8: 50 push %eax 80482f9: 54 push %esp 80482fa: 52 push %edx 80482fb: 68 b0 84 04 08 push $0x80484b0 8048300: 68 40 84 04 08 push $0x8048440 8048305: 51 push %ecx 8048306: 56 push %esi 8048307: 68 ec 83 04 08 push $0x80483ec 804830c: e8 cf ff ff ff call 80482e0 <__libc_start_main@plt> 8048311: f4 hlt 8048312: 66 90 xchg %ax,%ax 8048314: 66 90 xchg %ax,%ax 8048316: 66 90 xchg %ax,%ax 8048318: 66 90 xchg %ax,%ax 804831a: 66 90 xchg %ax,%ax 804831c: 66 90 xchg %ax,%ax 804831e: 66 90 xchg %ax,%ax
08048320 <__x86.get_pc_thunk.bx>: 8048320: 8b 1c 24 mov (%esp),%ebx 8048323: c3 ret 8048324: 66 90 xchg %ax,%ax 8048326: 66 90 xchg %ax,%ax 8048328: 66 90 xchg %ax,%ax 804832a: 66 90 xchg %ax,%ax 804832c: 66 90 xchg %ax,%ax 804832e: 66 90 xchg %ax,%ax
08048330
08048360
080483a0 <__do_global_dtors_aux>: 80483a0: 80 3d 1c a0 04 08 00 cmpb $0x0,0x804a01c 80483a7: 75 13 jne 80483bc <__do_global_dtors_aux+0x1c> 80483a9: 55 push %ebp 80483aa: 89 e5 mov %esp,%ebp 80483ac: 83 ec 08 sub $0x8,%esp 80483af: e8 7c ff ff ff call 8048330
080483c0
080483ec
08048440 <__libc_csu_init>: 8048440: 55 push %ebp 8048441: 57 push %edi 8048442: 31 ff xor %edi,%edi 8048444: 56 push %esi 8048445: 53 push %ebx 8048446: e8 d5 fe ff ff call 8048320 <__x86.get_pc_thunk.bx> 804844b: 81 c3 b5 1b 00 00 add $0x1bb5,%ebx 8048451: 83 ec 1c sub $0x1c,%esp 8048454: 8b 6c 24 30 mov 0x30(%esp),%ebp 8048458: 8d b3 04 ff ff ff lea -0xfc(%ebx),%esi 804845e: e8 31 fe ff ff call 8048294 <_init> 8048463: 8d 83 00 ff ff ff lea -0x100(%ebx),%eax 8048469: 29 c6 sub %eax,%esi 804846b: c1 fe 02 sar $0x2,%esi 804846e: 85 f6 test %esi,%esi 8048470: 74 27 je 8048499 <__libc_csu_init+0x59> 8048472: 8d b6 00 00 00 00 lea 0x0(%esi),%esi 8048478: 8b 44 24 38 mov 0x38(%esp),%eax 804847c: 89 2c 24 mov %ebp,(%esp) 804847f: 89 44 24 08 mov %eax,0x8(%esp) 8048483: 8b 44 24 34 mov 0x34(%esp),%eax 8048487: 89 44 24 04 mov %eax,0x4(%esp) 804848b: ff 94 bb 00 ff ff ff call *-0x100(%ebx,%edi,4) 8048492: 83 c7 01 add $0x1,%edi 8048495: 39 f7 cmp %esi,%edi 8048497: 75 df jne 8048478 <__libc_csu_init+0x38> 8048499: 83 c4 1c add $0x1c,%esp 804849c: 5b pop %ebx 804849d: 5e pop %esi 804849e: 5f pop %edi 804849f: 5d pop %ebp 80484a0: c3 ret 80484a1: eb 0d jmp 80484b0 <__libc_csu_fini> 80484a3: 90 nop 80484a4: 90 nop 80484a5: 90 nop 80484a6: 90 nop 80484a7: 90 nop 80484a8: 90 nop 80484a9: 90 nop 80484aa: 90 nop 80484ab: 90 nop 80484ac: 90 nop 80484ad: 90 nop 80484ae: 90 nop 80484af: 90 nop
080484b0 <__libc_csu_fini>: 80484b0: f3 c3 repz ret 80484b2: 66 90 xchg %ax,%ax
Disassembly of section .fini:
080484b4 <_fini>: 80484b4: 53 push %ebx 80484b5: 83 ec 08 sub $0x8,%esp 80484b8: e8 63 fe ff ff call 8048320 <__x86.get_pc_thunk.bx> 80484bd: 81 c3 43 1b 00 00 add $0x1b43,%ebx 80484c3: 83 c4 08 add $0x8,%esp 80484c6: 5b pop %ebx 80484c7: c3 ret
Use Linux executable reverseEngineering3 for this question (see the Useful Files area of the Course Content for where to find the file). Run the file using gdb.
This code places the value 0xABCD into register ESI. After putting that value into ESI, the code puts 3 more values into ESI. Those values are:
Question 3 options:
| |||
| |||
| |||
|
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started