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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
| [zombie_assassin@localhost zombie_assassin]$ gdb succubus_tmp
GNU gdb 19991004
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type show copying to see the conditions.
There is absolutely no warranty for GDB. Type show warranty for details.
This GDB was configured as i386-redhat-linux...
(gdb) disassemble DO
Dump of assembler code for function DO:
0x80487ec <DO>: push %ebp
0x80487ed <DO+1>: mov %esp,%ebp
0x80487ef <DO+3>: push $0x8048a0e
0x80487f4 <DO+8>: call 0x804844c <printf>
0x80487f9 <DO+13>: add $0x4,%esp
0x80487fc <DO+16>: movl $0x1,0x8049a90
0x8048806 <DO+26>: leave
0x8048807 <DO+27>: ret
End of assembler dump.
(gdb) disassemble GYE
Dump of assembler code for function GYE:
0x80487bc <GYE>: push %ebp
0x80487bd <GYE+1>: mov %esp,%ebp
0x80487bf <GYE+3>: cmpl $0x1,0x8049a90
0x80487c6 <GYE+10>: je 0x80487d2 <GYE+22>
0x80487c8 <GYE+12>: push $0x0
0x80487ca <GYE+14>: call 0x804845c <exit>
0x80487cf <GYE+19>: add $0x4,%esp
0x80487d2 <GYE+22>: push $0x80489f9
0x80487d7 <GYE+27>: call 0x804844c <printf>
0x80487dc <GYE+32>: add $0x4,%esp
0x80487df <GYE+35>: movl $0x2,0x8049a90
0x80487e9 <GYE+45>: leave
0x80487ea <GYE+46>: ret
0x80487eb <GYE+47>: nop
End of assembler dump.
(gdb) disassemble GUL
Dump of assembler code for function GUL:
0x804878c <GUL>: push %ebp
0x804878d <GUL+1>: mov %esp,%ebp
0x804878f <GUL+3>: cmpl $0x2,0x8049a90
0x8048796 <GUL+10>: je 0x80487a2 <GUL+22>
0x8048798 <GUL+12>: push $0x0
0x804879a <GUL+14>: call 0x804845c <exit>
0x804879f <GUL+19>: add $0x4,%esp
0x80487a2 <GUL+22>: push $0x80489e4
0x80487a7 <GUL+27>: call 0x804844c <printf>
0x80487ac <GUL+32>: add $0x4,%esp
0x80487af <GUL+35>: movl $0x3,0x8049a90
0x80487b9 <GUL+45>: leave
0x80487ba <GUL+46>: ret
0x80487bb <GUL+47>: nop
End of assembler dump.
(gdb) disassemble YUT
Dump of assembler code for function YUT:
0x804875c <YUT>: push %ebp
0x804875d <YUT+1>: mov %esp,%ebp
0x804875f <YUT+3>: cmpl $0x3,0x8049a90
0x8048766 <YUT+10>: je 0x8048772 <YUT+22>
0x8048768 <YUT+12>: push $0x0
0x804876a <YUT+14>: call 0x804845c <exit>
0x804876f <YUT+19>: add $0x4,%esp
0x8048772 <YUT+22>: push $0x80489cf
0x8048777 <YUT+27>: call 0x804844c <printf>
0x804877c <YUT+32>: add $0x4,%esp
0x804877f <YUT+35>: movl $0x4,0x8049a90
0x8048789 <YUT+45>: leave
0x804878a <YUT+46>: ret
0x804878b <YUT+47>: nop
End of assembler dump.
(gdb) disassemble MO
Dump of assembler code for function MO:
0x8048724 <MO>: push %ebp
0x8048725 <MO+1>: mov %esp,%ebp
0x8048727 <MO+3>: cmpl $0x4,0x8049a90
0x804872e <MO+10>: je 0x8048740 <MO+28>
0x8048730 <MO+12>: push $0x0
0x8048732 <MO+14>: call 0x804845c <exit>
0x8048737 <MO+19>: add $0x4,%esp
0x804873a <MO+22>: lea 0x0(%esi),%esi
0x8048740 <MO+28>: push $0x80489bb
0x8048745 <MO+33>: call 0x804844c <printf>
0x804874a <MO+38>: add $0x4,%esp
0x804874d <MO+41>: mov 0x8(%ebp),%eax
0x8048750 <MO+44>: push %eax
0x8048751 <MO+45>: call 0x804840c <system>
0x8048756 <MO+50>: add $0x4,%esp
0x8048759 <MO+53>: leave
0x804875a <MO+54>: ret
0x804875b <MO+55>: nop
End of assembler dump.
(gdb)
|