📄 echo.lst
字号:
400001f0 <_do_printf>:
_do_printf():
doprintf.c:59
400001f0: 55 push %ebp
400001f1: 89 e5 mov %esp,%ebp
400001f3: 83 ec 3c sub $0x3c,%esp
400001f6: 57 push %edi
400001f7: 56 push %esi
400001f8: 53 push %ebx
400001f9: 8b 5d 08 mov 0x8(%ebp),%ebx
400001fc: 8b 7d 0c mov 0xc(%ebp),%edi
doprintf.c:65
400001ff: 66 c7 45 e2 00 00 movw $0x0,0xffffffe2(%ebp)
40000205: 66 c7 45 e4 00 00 movw $0x0,0xffffffe4(%ebp)
4000020b: c6 45 e8 00 movb $0x0,0xffffffe8(%ebp)
4000020f: c6 45 ef 00 movb $0x0,0xffffffef(%ebp)
doprintf.c:67
40000213: 80 3b 00 cmpb $0x0,(%ebx)
40000216: 0f 84 cb 03 00 00 je 400005e7 <_EMIT2+0xe1>
4000021c: 8d 74 26 00 lea 0x0(%esi,1),%esi
doprintf.c:69
40000220: 31 c0 xor %eax,%eax
40000222: 8a 45 ef mov 0xffffffef(%ebp),%al
40000225: 8d 53 01 lea 0x1(%ebx),%edx
40000228: 89 55 d4 mov %edx,0xffffffd4(%ebp)
4000022b: 83 f8 04 cmp $0x4,%eax
4000022e: 0f 87 99 03 00 00 ja 400005cd <_EMIT2+0xc7>
40000234: ff 24 85 40 02 00 40 jmp *0x40000240(,%eax,4)
4000023b: 90 nop
4000023c: 8d 74 26 00 lea 0x0(%esi,1),%esi
40000240: 54 push %esp
40000241: 02 00 add (%eax),%al
40000243: 40 inc %eax
40000244: 79 02 jns 40000248 <_do_printf+0x58>
40000246: 00 40 d4 add %al,0xffffffd4(%eax)
40000249: 02 00 add (%eax),%al
4000024b: 40 inc %eax
4000024c: f9 stc
4000024d: 02 00 add (%eax),%al
4000024f: 40 inc %eax
40000250: 40 inc %eax
40000251: 03 00 add (%eax),%eax
40000253: 40 inc %eax
doprintf.c:73
40000254: 80 3b 25 cmpb $0x25,(%ebx)
40000257: 74 1c je 40000275 <_do_printf+0x85>
doprintf.c:75
40000259: 83 c4 f8 add $0xfffffff8,%esp
4000025c: 8d 45 14 lea 0x14(%ebp),%eax
4000025f: 50 push %eax
40000260: 0f be 03 movsbl (%ebx),%eax
40000263: 50 push %eax
40000264: 8b 55 10 mov 0x10(%ebp),%edx
40000267: ff d2 call *%edx
doprintf.c:76
40000269: 66 ff 45 e4 incw 0xffffffe4(%ebp)
doprintf.c:77
4000026d: 83 c4 10 add $0x10,%esp
40000270: e9 8e 00 00 00 jmp 40000303 <_do_printf+0x113>
doprintf.c:80
40000275: fe 45 ef incb 0xffffffef(%ebp)
doprintf.c:81
40000278: 43 inc %ebx
doprintf.c:85
40000279: 8a 03 mov (%ebx),%al
4000027b: 3c 25 cmp $0x25,%al
4000027d: 75 25 jne 400002a4 <_do_printf+0xb4>
doprintf.c:87
4000027f: 83 c4 f8 add $0xfffffff8,%esp
40000282: 8d 45 14 lea 0x14(%ebp),%eax
40000285: 50 push %eax
40000286: 6a 25 push $0x25
40000288: 8b 55 10 mov 0x10(%ebp),%edx
4000028b: ff d2 call *%edx
doprintf.c:88
4000028d: 66 ff 45 e4 incw 0xffffffe4(%ebp)
doprintf.c:89
40000291: 66 c7 45 e2 00 00 movw $0x0,0xffffffe2(%ebp)
40000297: c6 45 e8 00 movb $0x0,0xffffffe8(%ebp)
4000029b: c6 45 ef 00 movb $0x0,0xffffffef(%ebp)
doprintf.c:90
4000029f: 83 c4 10 add $0x10,%esp
400002a2: eb 5f jmp 40000303 <_do_printf+0x113>
doprintf.c:92
400002a4: 3c 2d cmp $0x2d,%al
400002a6: 75 20 jne 400002c8 <_do_printf+0xd8>
doprintf.c:94
400002a8: 8a 45 e8 mov 0xffffffe8(%ebp),%al
400002ab: a9 01 00 00 00 test $0x1,%eax
400002b0: 74 10 je 400002c2 <_do_printf+0xd2>
doprintf.c:95
400002b2: 66 c7 45 e2 00 00 movw $0x0,0xffffffe2(%ebp)
400002b8: c6 45 e8 00 movb $0x0,0xffffffe8(%ebp)
400002bc: c6 45 ef 00 movb $0x0,0xffffffef(%ebp)
400002c0: eb 41 jmp 40000303 <_do_printf+0x113>
doprintf.c:97
400002c2: 80 4d e8 01 orb $0x1,0xffffffe8(%ebp)
doprintf.c:98
400002c6: eb 3b jmp 40000303 <_do_printf+0x113>
doprintf.c:101
400002c8: fe 45 ef incb 0xffffffef(%ebp)
doprintf.c:103
400002cb: 3c 30 cmp $0x30,%al
400002cd: 75 05 jne 400002d4 <_do_printf+0xe4>
doprintf.c:105
400002cf: 80 4d e8 40 orb $0x40,0xffffffe8(%ebp)
doprintf.c:106
400002d3: 43 inc %ebx
doprintf.c:111
400002d4: 8a 03 mov (%ebx),%al
400002d6: 04 d0 add $0xd0,%al
400002d8: 3c 09 cmp $0x9,%al
400002da: 77 1a ja 400002f6 <_do_printf+0x106>
doprintf.c:113
400002dc: 31 d2 xor %edx,%edx
400002de: 66 8b 55 e2 mov 0xffffffe2(%ebp),%dx
400002e2: 8d 14 92 lea (%edx,%edx,4),%edx
400002e5: 01 d2 add %edx,%edx
400002e7: 66 0f be 03 movsbw (%ebx),%ax
400002eb: 83 c0 d0 add $0xffffffd0,%eax
400002ee: 01 d0 add %edx,%eax
400002f0: 66 89 45 e2 mov %ax,0xffffffe2(%ebp)
doprintf.c:115
400002f4: eb 0d jmp 40000303 <_do_printf+0x113>
doprintf.c:118
400002f6: fe 45 ef incb 0xffffffef(%ebp)
doprintf.c:122
400002f9: 8a 03 mov (%ebx),%al
400002fb: 3c 46 cmp $0x46,%al
400002fd: 75 11 jne 40000310 <_do_printf+0x120>
doprintf.c:124
400002ff: 80 4d e8 80 orb $0x80,0xffffffe8(%ebp)
doprintf.c:125
40000303: 43 inc %ebx
40000304: 89 5d d4 mov %ebx,0xffffffd4(%ebp)
40000307: e9 cf 02 00 00 jmp 400005db <_EMIT2+0xd5>
4000030c: 8d 74 26 00 lea 0x0(%esi,1),%esi
doprintf.c:127
40000310: 8d 53 01 lea 0x1(%ebx),%edx
40000313: 89 55 d4 mov %edx,0xffffffd4(%ebp)
40000316: 3c 4e cmp $0x4e,%al
40000318: 0f 84 bd 02 00 00 je 400005db <_EMIT2+0xd5>
doprintf.c:129
4000031e: 3c 6c cmp $0x6c,%al
40000320: 75 0e jne 40000330 <_do_printf+0x140>
doprintf.c:131
40000322: 80 4d e8 08 orb $0x8,0xffffffe8(%ebp)
doprintf.c:132
40000326: e9 b0 02 00 00 jmp 400005db <_EMIT2+0xd5>
4000032b: 90 nop
4000032c: 8d 74 26 00 lea 0x0(%esi,1),%esi
doprintf.c:134
40000330: 3c 68 cmp $0x68,%al
40000332: 75 0c jne 40000340 <_do_printf+0x150>
doprintf.c:136
40000334: 80 4d e8 10 orb $0x10,0xffffffe8(%ebp)
doprintf.c:137
40000338: e9 9e 02 00 00 jmp 400005db <_EMIT2+0xd5>
4000033d: 8d 76 00 lea 0x0(%esi),%esi
doprintf.c:144
40000340: 8d 75 ff lea 0xffffffff(%ebp),%esi
doprintf.c:145
40000343: c6 45 ff 00 movb $0x0,0xffffffff(%ebp)
doprintf.c:146
40000347: 8a 03 mov (%ebx),%al
40000349: 04 a8 add $0xa8,%al
4000034b: 0f be c0 movsbl %al,%eax
4000034e: 8d 53 01 lea 0x1(%ebx),%edx
40000351: 89 55 d4 mov %edx,0xffffffd4(%ebp)
40000354: 83 f8 20 cmp $0x20,%eax
40000357: 0f 87 70 02 00 00 ja 400005cd <_EMIT2+0xc7>
4000035d: ff 24 85 64 03 00 40 jmp *0x40000364(,%eax,4)
40000364: e8 03 00 40 cd call d40036c <_code-0x32bffc94>
40000369: 05 00 40 cd 05 add $0x5cd4000,%eax
4000036e: 00 40 cd add %al,0xffffffcd(%eax)
40000371: 05 00 40 cd 05 add $0x5cd4000,%eax
40000376: 00 40 cd add %al,0xffffffcd(%eax)
40000379: 05 00 40 cd 05 add $0x5cd4000,%eax
4000037e: 00 40 cd add %al,0xffffffcd(%eax)
40000381: 05 00 40 cd 05 add $0x5cd4000,%eax
40000386: 00 40 cd add %al,0xffffffcd(%eax)
40000389: 05 00 40 cd 05 add $0x5cd4000,%eax
4000038e: 00 40 a5 add %al,0xffffffa5(%eax)
40000391: 04 00 add $0x0,%al
40000393: 40 inc %eax
40000394: f0 03 00 lock add (%eax),%eax
40000397: 40 inc %eax
40000398: cd 05 int $0x5
4000039a: 00 40 cd add %al,0xffffffcd(%eax)
4000039d: 05 00 40 cd 05 add $0x5cd4000,%eax
400003a2: 00 40 cd add %al,0xffffffcd(%eax)
400003a5: 05 00 40 f0 03 add $0x3f04000,%eax
400003aa: 00 40 cd add %al,0xffffffcd(%eax)
400003ad: 05 00 40 cd 05 add $0x5cd4000,%eax
400003b2: 00 40 cd add %al,0xffffffcd(%eax)
400003b5: 05 00 40 cd 05 add $0x5cd4000,%eax
400003ba: 00 40 ec add %al,0xffffffec(%eax)
400003bd: 03 00 add (%eax),%eax
400003bf: 40 inc %eax
400003c0: f8 clc
400003c1: 03 00 add (%eax),%eax
400003c3: 40 inc %eax
400003c4: ec in (%dx),%al
400003c5: 03 00 add (%eax),%eax
400003c7: 40 inc %eax
400003c8: cd 05 int $0x5
400003ca: 00 40 cd add %al,0xffffffcd(%eax)
400003cd: 05 00 40 c0 04 add $0x4c04000,%eax
400003d2: 00 40 cd add %al,0xffffffcd(%eax)
400003d5: 05 00 40 f4 03 add $0x3f44000,%eax
400003da: 00 40 cd add %al,0xffffffcd(%eax)
400003dd: 05 00 40 cd 05 add $0x5cd4000,%eax
400003e2: 00 40 ec add %al,0xffffffec(%eax)
400003e5: 03 00 add (%eax),%eax
400003e7: 40 inc %eax
doprintf.c:149
400003e8: 80 4d e8 02 orb $0x2,0xffffffe8(%ebp)
doprintf.c:155
400003ec: b1 10 mov $0x10,%cl
doprintf.c:156
400003ee: eb 0a jmp 400003fa <_DO_NUM>
doprintf.c:159
400003f0: 80 4d e8 04 orb $0x4,0xffffffe8(%ebp)
doprintf.c:162
400003f4: b1 0a mov $0xa,%cl
doprintf.c:163
400003f6: eb 02 jmp 400003fa <_DO_NUM>
doprintf.c:165
400003f8: b1 08 mov $0x8,%cl
400003fa <_DO_NUM>:
doprintf.c:167
400003fa: 8a 45 e8 mov 0xffffffe8(%ebp),%al
400003fd: a9 08 00 00 00 test $0x8,%eax
40000402: 74 10 je 40000414 <_DO_NUM+0x1a>
doprintf.c:168
40000404: 83 c7 04 add $0x4,%edi
40000407: 8b 57 fc mov 0xfffffffc(%edi),%edx
4000040a: 89 55 d0 mov %edx,0xffffffd0(%ebp)
4000040d: 88 c2 mov %al,%dl
4000040f: 80 e2 04 and $0x4,%dl
40000412: eb 3b jmp 4000044f <_DO_NUM+0x55>
doprintf.c:170
40000414: 8a 45 e8 mov 0xffffffe8(%ebp),%al
40000417: a9 10 00 00 00 test $0x10,%eax
4000041c: 74 22 je 40000440 <_DO_NUM+0x46>
doprintf.c:172
4000041e: 88 c2 mov %al,%dl
40000420: 80 e2 04 and $0x4,%dl
40000423: 74 0b je 40000430 <_DO_NUM+0x36>
doprintf.c:173
40000425: 83 c7 04 add $0x4,%edi
40000428: 0f bf 47 fc movswl 0xfffffffc(%edi),%eax
4000042c: eb 1e jmp 4000044c <_DO_NUM+0x52>
4000042e: 89 f6 mov %esi,%esi
doprintf.c:175
40000430: 83 c7 04 add $0x4,%edi
40000433: 31 c0 xor %eax,%eax
40000435: 66 8b 47 fc mov 0xfffffffc(%edi),%ax
doprintf.c:176
40000439: eb 11 jmp 4000044c <_DO_NUM+0x52>
4000043b: 90 nop
4000043c: 8d 74 26 00 lea 0x0(%esi,1),%esi
doprintf.c:180
40000440: 8a 55 e8 mov 0xffffffe8(%ebp),%dl
40000443: 80 e2 04 and $0x4,%dl
doprintf.c:183
40000446: 83 c7 04 add $0x4,%edi
40000449: 8b 47 fc mov 0xfffffffc(%edi),%eax
4000044c: 89 45 d0 mov %eax,0xffffffd0(%ebp)
doprintf.c:186
4000044f: 84 d2 test %dl,%dl
40000451: 74 0d je 40000460 <_DO_NUM+0x66>
doprintf.c:188
40000453: 83 7d d0 00 cmpl $0x0,0xffffffd0(%ebp)
40000457: 7d 07 jge 40000460 <_DO_NUM+0x66>
doprintf.c:190
40000459: 80 4d e8 20 orb $0x20,0xffffffe8(%ebp)
doprintf.c:191
4000045d: f7 5d d0 negl 0xffffffd0(%ebp)
doprintf.c:193
40000460: 43 inc %ebx
40000461: 89 5d d4 mov %ebx,0xffffffd4(%ebp)
40000464: 31 db xor %ebx,%ebx
40000466: 88 cb mov %cl,%bl
doprintf.c:196
40000468: 8a 55 e8 mov 0xffffffe8(%ebp),%dl
4000046b: 88 55 e1 mov %dl,0xffffffe1(%ebp)
4000046e: 80 65 e1 02 andb $0x2,0xffffffe1(%ebp)
40000472 <.bb>:
doprintf.c:200
40000472: 8b 45 d0 mov 0xffffffd0(%ebp),%eax
40000475: 31 d2 xor %edx,%edx
40000477: f7 f3 div %ebx,%eax
doprintf.c:201
40000479: 4e dec %esi
doprintf.c:202
4000047a: 83 fa 09 cmp $0x9,%edx
4000047d: 77 05 ja 40000484 <.bb+0x12>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -