一个漏洞程序的汇编代码

博客展示了一段C语言代码,包含`overflow`函数和`main`函数,同时给出了该程序的汇编代码,涉及多个函数的汇编指令,如`_signal`、`_strcpy`等,展示了程序在汇编层面的执行逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void overflow(void)
{
char buf[10];
strcpy(buf,"aaaaaaaaaa");
}//end overflow
int main(void)
{
overflow();
return 0;
}//end main

yh.exe:     file format pei-i386

Disassembly of section .text:

00401000 <___crt_xc_end__>:
  401000: 55                    push   %ebp
  401001: 89 e5                 mov    %esp,%ebp
  401003: 83 ec 18              sub    $0x18,%esp
  401006: 89 5d f8              mov    %ebx,0xfffffff8(%ebp)
  401009: 8b 55 08              mov    0x8(%ebp),%edx
  40100c: 31 db                 xor    %ebx,%ebx
  40100e: 89 75 fc              mov    %esi,0xfffffffc(%ebp)
  401011: 8b 02                 mov    (%edx),%eax
  401013: 31 f6                 xor    %esi,%esi
  401015: 8b 00                 mov    (%eax),%eax
  401017: 3d 91 00 00 c0        cmp    $0xc0000091,%eax
  40101c: 77 43                 ja     401061 <___crt_xc_end__+0x61>
  40101e: 3d 8d 00 00 c0        cmp    $0xc000008d,%eax
  401023: 72 5b                 jb     401080 <___crt_xc_end__+0x80>
  401025: be 01 00 00 00        mov    $0x1,%esi
  40102a: c7 04 24 08 00 00 00  movl   $0x8,(%esp)
  401031: 31 c0                 xor    %eax,%eax
  401033: 89 44 24 04           mov    %eax,0x4(%esp)
  401037: e8 a4 07 00 00        call   4017e0 <_signal>
  40103c: 83 f8 01              cmp    $0x1,%eax
  40103f: 74 6c                 je     4010ad <___crt_xc_end__+0xad>
  401041: 85 c0                 test   %eax,%eax
  401043: 74 2a                 je     40106f <___crt_xc_end__+0x6f>
  401045: c7 04 24 08 00 00 00  movl   $0x8,(%esp)
  40104c: ff d0                 call   *%eax
  40104e: bb ff ff ff ff        mov    $0xffffffff,%ebx
  401053: 89 d8                 mov    %ebx,%eax
  401055: 8b 75 fc              mov    0xfffffffc(%ebp),%esi
  401058: 8b 5d f8              mov    0xfffffff8(%ebp),%ebx
  40105b: 89 ec                 mov    %ebp,%esp
  40105d: 5d                    pop    %ebp
  40105e: c2 04 00              ret    $0x4
  401061: 3d 93 00 00 c0        cmp    $0xc0000093,%eax
  401066: 74 bd                 je     401025 <___crt_xc_end__+0x25>
  401068: 3d 94 00 00 c0        cmp    $0xc0000094,%eax
  40106d: 74 bb                 je     40102a <___crt_xc_end__+0x2a>
  40106f: 89 d8                 mov    %ebx,%eax
  401071: 8b 75 fc              mov    0xfffffffc(%ebp),%esi
  401074: 8b 5d f8              mov    0xfffffff8(%ebp),%ebx
  401077: 89 ec                 mov    %ebp,%esp
  401079: 5d                    pop    %ebp
  40107a: c2 04 00              ret    $0x4
  40107d: 8d 76 00              lea    0x0(%esi),%esi
  401080: 3d 05 00 00 c0        cmp    $0xc0000005,%eax
  401085: 75 e8                 jne    40106f <___crt_xc_end__+0x6f>
  401087: c7 04 24 0b 00 00 00  movl   $0xb,(%esp)
  40108e: 31 f6                 xor    %esi,%esi
  401090: 89 74 24 04           mov    %esi,0x4(%esp)
  401094: e8 47 07 00 00        call   4017e0 <_signal>
  401099: 83 f8 01              cmp    $0x1,%eax
  40109c: 74 34                 je     4010d2 <___crt_xc_end__+0xd2>
  40109e: 85 c0                 test   %eax,%eax
  4010a0: 74 cd                 je     40106f <___crt_xc_end__+0x6f>
  4010a2: c7 04 24 0b 00 00 00  movl   $0xb,(%esp)
  4010a9: ff d0                 call   *%eax
  4010ab: eb a1                 jmp    40104e <___crt_xc_end__+0x4e>
  4010ad: c7 04 24 08 00 00 00  movl   $0x8,(%esp)
  4010b4: bb 01 00 00 00        mov    $0x1,%ebx
  4010b9: 89 5c 24 04           mov    %ebx,0x4(%esp)
  4010bd: e8 1e 07 00 00        call   4017e0 <_signal>
  4010c2: 85 f6                 test   %esi,%esi
  4010c4: 74 88                 je     40104e <___crt_xc_end__+0x4e>
  4010c6: e8 55 02 00 00        call   401320 <__fpreset>
  4010cb: bb ff ff ff ff        mov    $0xffffffff,%ebx
  4010d0: eb 81                 jmp    401053 <___crt_xc_end__+0x53>
  4010d2: c7 04 24 0b 00 00 00  movl   $0xb,(%esp)
  4010d9: b9 01 00 00 00        mov    $0x1,%ecx
  4010de: bb ff ff ff ff        mov    $0xffffffff,%ebx
  4010e3: 89 4c 24 04           mov    %ecx,0x4(%esp)
  4010e7: e8 f4 06 00 00        call   4017e0 <_signal>
  4010ec: e9 62 ff ff ff        jmp    401053 <___crt_xc_end__+0x53>
  4010f1: eb 0d                 jmp    401100 <___mingw_CRTStartup>
  4010f3: 90                    nop   
  4010f4: 90                    nop   
  4010f5: 90                    nop   
  4010f6: 90                    nop   
  4010f7: 90                    nop   
  4010f8: 90                    nop   
  4010f9: 90                    nop   
  4010fa: 90                    nop   
  4010fb: 90                    nop   
  4010fc: 90                    nop   
  4010fd: 90                    nop   
  4010fe: 90                    nop   
  4010ff: 90                    nop   

00401100 <___mingw_CRTStartup>:
  401100: 55                    push   %ebp
  401101: 89 e5                 mov    %esp,%ebp
  401103: 53                    push   %ebx
  401104: 83 ec 24              sub    $0x24,%esp
  401107: 8d 5d f8              lea    0xfffffff8(%ebp),%ebx
  40110a: c7 04 24 00 10 40 00  movl   $0x401000,(%esp)
  401111: e8 6a 07 00 00        call   401880 <_SetUnhandledExceptionFilter@4>
  401116: 83 ec 04              sub    $0x4,%esp
  401119: e8 02 02 00 00        call   401320 <__fpreset>
  40111e: c7 45 f8 00 00 00 00  movl   $0x0,0xfffffff8(%ebp)
  401125: b8 00 40 40 00        mov    $0x404000,%eax
  40112a: 8d 55 f4              lea    0xfffffff4(%ebp),%edx
  40112d: 89 5c 24 10           mov    %ebx,0x10(%esp)
  401131: 8b 0d 00 20 40 00     mov    0x402000,%ecx
  401137: 89 44 24 04           mov    %eax,0x4(%esp)
  40113b: 89 54 24 08           mov    %edx,0x8(%esp)
  40113f: 89 4c 24 0c           mov    %ecx,0xc(%esp)
  401143: c7 04 24 04 40 40 00  movl   $0x404004,(%esp)
  40114a: e8 c1 06 00 00        call   401810 <___getmainargs>
  40114f: a1 10 40 40 00        mov    0x404010,%eax
  401154: 85 c0                 test   %eax,%eax
  401156: 74 58                 je     4011b0 <___mingw_CRTStartup+0xb0>
  401158: a3 10 20 40 00        mov    %eax,0x402010
  40115d: 8b 15 d4 50 40 00     mov    0x4050d4,%edx
  401163: 85 d2                 test   %edx,%edx
  401165: 0f 85 8b 00 00 00     jne    4011f6 <___mingw_CRTStartup+0xf6>
  40116b: 83 fa e0              cmp    $0xffffffe0,%edx
  40116e: 74 20                 je     401190 <___mingw_CRTStartup+0x90>
  401170: a1 10 40 40 00        mov    0x404010,%eax
  401175: 89 44 24 04           mov    %eax,0x4(%esp)
  401179: 8b 1d d4 50 40 00     mov    0x4050d4,%ebx
  40117f: 8b 4b 30              mov    0x30(%ebx),%ecx
  401182: 89 0c 24              mov    %ecx,(%esp)
  401185: e8 76 06 00 00        call   401800 <__setmode>
  40118a: 8b 15 d4 50 40 00     mov    0x4050d4,%edx
  401190: 83 fa c0              cmp    $0xffffffc0,%edx
  401193: 74 1b                 je     4011b0 <___mingw_CRTStartup+0xb0>
  401195: 8b 1d 10 40 40 00     mov    0x404010,%ebx
  40119b: 89 5c 24 04           mov    %ebx,0x4(%esp)
  40119f: 8b 0d d4 50 40 00     mov    0x4050d4,%ecx
  4011a5: 8b 51 50              mov    0x50(%ecx),%edx
  4011a8: 89 14 24              mov    %edx,(%esp)
  4011ab: e8 50 06 00 00        call   401800 <__setmode>
  4011b0: e8 3b 06 00 00        call   4017f0 <___p__fmode>
  4011b5: 8b 1d 10 20 40 00     mov    0x402010,%ebx
  4011bb: 89 18                 mov    %ebx,(%eax)
  4011bd: e8 2e 01 00 00        call   4012f0 <__pei386_runtime_relocator>
  4011c2: 83 e4 f0              and    $0xfffffff0,%esp
  4011c5: e8 06 06 00 00        call   4017d0 <___p__environ>
  4011ca: 8b 08                 mov    (%eax),%ecx
  4011cc: 89 4c 24 08           mov    %ecx,0x8(%esp)
  4011d0: 8b 15 00 40 40 00     mov    0x404000,%edx
  4011d6: 89 54 24 04           mov    %edx,0x4(%esp)
  4011da: a1 04 40 40 00        mov    0x404004,%eax
  4011df: 89 04 24              mov    %eax,(%esp)
  4011e2: e8 c5 00 00 00        call   4012ac <_main>
  4011e7: 89 c3                 mov    %eax,%ebx
  4011e9: e8 d2 05 00 00        call   4017c0 <__cexit>
  4011ee: 89 1c 24              mov    %ebx,(%esp)
  4011f1: e8 9a 06 00 00        call   401890 <_ExitProcess@4>
  4011f6: 89 44 24 04           mov    %eax,0x4(%esp)
  4011fa: 8b 15 d4 50 40 00     mov    0x4050d4,%edx
  401200: 8b 42 10              mov    0x10(%edx),%eax
  401203: 89 04 24              mov    %eax,(%esp)
  401206: e8 f5 05 00 00        call   401800 <__setmode>
  40120b: 8b 15 d4 50 40 00     mov    0x4050d4,%edx
  401211: e9 55 ff ff ff        jmp    40116b <___mingw_CRTStartup+0x6b>
  401216: 8d 76 00              lea    0x0(%esi),%esi
  401219: 8d bc 27 00 00 00 00  lea    0x0(%edi),%edi

00401220 <_mainCRTStartup>:
  401220: 55                    push   %ebp
  401221: 89 e5                 mov    %esp,%ebp
  401223: 83 ec 08              sub    $0x8,%esp
  401226: c7 04 24 01 00 00 00  movl   $0x1,(%esp)
  40122d: ff 15 cc 50 40 00     call   *0x4050cc
  401233: e8 c8 fe ff ff        call   401100 <___mingw_CRTStartup>
  401238: 90                    nop   
  401239: 8d b4 26 00 00 00 00  lea    0x0(%esi),%esi

00401240 <_WinMainCRTStartup>:
  401240: 55                    push   %ebp
  401241: 89 e5                 mov    %esp,%ebp
  401243: 83 ec 08              sub    $0x8,%esp
  401246: c7 04 24 02 00 00 00  movl   $0x2,(%esp)
  40124d: ff 15 cc 50 40 00     call   *0x4050cc
  401253: e8 a8 fe ff ff        call   401100 <___mingw_CRTStartup>
  401258: 90                    nop   
  401259: 8d b4 26 00 00 00 00  lea    0x0(%esi),%esi

00401260 <_atexit>:
  401260: 55                    push   %ebp
  401261: 8b 0d e4 50 40 00     mov    0x4050e4,%ecx
  401267: 89 e5                 mov    %esp,%ebp
  401269: 5d                    pop    %ebp
  40126a: ff e1                 jmp    *%ecx
  40126c: 8d 74 26 00           lea    0x0(%esi),%esi

00401270 <__onexit>:
  401270: 55                    push   %ebp
  401271: 8b 0d d8 50 40 00     mov    0x4050d8,%ecx
  401277: 89 e5                 mov    %esp,%ebp
  401279: 5d                    pop    %ebp
  40127a: ff e1                 jmp    *%ecx
  40127c: 90                    nop   
  40127d: 90                    nop   
  40127e: 90                    nop   
  40127f: 90                    nop   

00401280 <___do_sjlj_init>:
  401280: 55                    push   %ebp
  401281: 89 e5                 mov    %esp,%ebp
  401283: 5d                    pop    %ebp
  401284: e9 67 02 00 00        jmp    4014f0 <___w32_sharedptr_initialize>
  401289: 90                    nop   
  40128a: 90                    nop   
  40128b: 90                    nop   
  40128c: 90                    nop   
  40128d: 90                    nop   
  40128e: 90                    nop   
  40128f: 90                    nop   

00401290 <__Z8overflowv>:
  401290: 55                    push   %ebp
  401291: 89 e5                 mov    %esp,%ebp
  401293: 83 ec 28              sub    $0x28,%esp
  401296: c7 44 24 04 00 30 40  movl   $0x403000,0x4(%esp)
  40129d: 00
  40129e: 8d 45 e8              lea    0xffffffe8(%ebp),%eax
  4012a1: 89 04 24              mov    %eax,(%esp)
  4012a4: e8 77 05 00 00        call   401820 <_strcpy>
  4012a9: c9                    leave 
  4012aa: c3                    ret   
  4012ab: 90                    nop   

004012ac <_main>:
  4012ac: 55                    push   %ebp
  4012ad: 89 e5                 mov    %esp,%ebp
  4012af: 83 ec 08              sub    $0x8,%esp
  4012b2: 83 e4 f0              and    $0xfffffff0,%esp
  4012b5: b8 00 00 00 00        mov    $0x0,%eax
  4012ba: 83 c0 0f              add    $0xf,%eax
  4012bd: 83 c0 0f              add    $0xf,%eax
  4012c0: c1 e8 04              shr    $0x4,%eax
  4012c3: c1 e0 04              shl    $0x4,%eax
  4012c6: 89 45 fc              mov    %eax,0xfffffffc(%ebp)
  4012c9: 8b 45 fc              mov    0xfffffffc(%ebp),%eax
  4012cc: e8 5f 04 00 00        call   401730 <___chkstk>
  4012d1: e8 fa 00 00 00        call   4013d0 <___main>
  4012d6: e8 b5 ff ff ff        call   401290 <__Z8overflowv>
  4012db: b8 00 00 00 00        mov    $0x0,%eax
  4012e0: c9                    leave 
  4012e1: c3                    ret   
  4012e2: 90                    nop   
  4012e3: 90                    nop   
  4012e4: 90                    nop   
  4012e5: 90                    nop   
  4012e6: 90                    nop   
  4012e7: 90                    nop   
  4012e8: 90                    nop   
  4012e9: 90                    nop   
  4012ea: 90                    nop   
  4012eb: 90                    nop   
  4012ec: 90                    nop   
  4012ed: 90                    nop   
  4012ee: 90                    nop   
  4012ef: 90                    nop   

004012f0 <__pei386_runtime_relocator>:
  4012f0: 55                    push   %ebp
  4012f1: b9 f0 30 40 00        mov    $0x4030f0,%ecx
  4012f6: 89 e5                 mov    %esp,%ebp
  4012f8: eb 14                 jmp    40130e <__pei386_runtime_relocator+0x1e>
  4012fa: 8d b6 00 00 00 00     lea    0x0(%esi),%esi
  401300: 8b 51 04              mov    0x4(%ecx),%edx
  401303: 8b 01                 mov    (%ecx),%eax
  401305: 83 c1 08              add    $0x8,%ecx
  401308: 01 82 00 00 40 00     add    %eax,0x400000(%edx)
  40130e: 81 f9 f0 30 40 00     cmp    $0x4030f0,%ecx
  401314: 72 ea                 jb     401300 <__pei386_runtime_relocator+0x10>
  401316: 5d                    pop    %ebp
  401317: c3                    ret   
  401318: 90                    nop   
  401319: 90                    nop   
  40131a: 90                    nop   
  40131b: 90                    nop   
  40131c: 90                    nop   
  40131d: 90                    nop   
  40131e: 90                    nop   
  40131f: 90                    nop   

00401320 <__fpreset>:
  401320: 55                    push   %ebp
  401321: 89 e5                 mov    %esp,%ebp
  401323: db e3                 fninit
  401325: 5d                    pop    %ebp
  401326: c3                    ret   
  401327: 90                    nop   
  401328: 90                    nop   
  401329: 90                    nop   
  40132a: 90                    nop   
  40132b: 90                    nop   
  40132c: 90                    nop   
  40132d: 90                    nop   
  40132e: 90                    nop   
  40132f: 90                    nop   

00401330 <___do_global_dtors>:
  401330: 55                    push   %ebp
  401331: 89 e5                 mov    %esp,%ebp
  401333: 83 ec 08              sub    $0x8,%esp
  401336: a1 20 20 40 00        mov    0x402020,%eax
  40133b: 8b 08                 mov    (%eax),%ecx
  40133d: 85 c9                 test   %ecx,%ecx
  40133f: 74 26                 je     401367 <___do_global_dtors+0x37>
  401341: eb 0d                 jmp    401350 <___do_global_dtors+0x20>
  401343: 90                    nop   
  401344: 90                    nop   
  401345: 90                    nop   
  401346: 90                    nop   
  401347: 90                    nop   
  401348: 90                    nop   
  401349: 90                    nop   
  40134a: 90                    nop   
  40134b: 90                    nop   
  40134c: 90                    nop   
  40134d: 90                    nop   
  40134e: 90                    nop   
  40134f: 90                    nop   
  401350: ff 10                 call   *(%eax)
  401352: 8b 0d 20 20 40 00     mov    0x402020,%ecx
  401358: 8b 51 04              mov    0x4(%ecx),%edx
  40135b: 8d 41 04              lea    0x4(%ecx),%eax
  40135e: a3 20 20 40 00        mov    %eax,0x402020
  401363: 85 d2                 test   %edx,%edx
  401365: 75 e9                 jne    401350 <___do_global_dtors+0x20>
  401367: c9                    leave 
  401368: c3                    ret   
  401369: 8d b4 26 00 00 00 00  lea    0x0(%esi),%esi

00401370 <___do_global_ctors>:
  401370: 55                    push   %ebp
  401371: 89 e5                 mov    %esp,%ebp
  401373: 53                    push   %ebx
  401374: 83 ec 04              sub    $0x4,%esp
  401377: a1 e0 18 40 00        mov    0x4018e0,%eax
  40137c: 83 f8 ff              cmp    $0xffffffff,%eax
  40137f: 74 29                 je     4013aa <___do_global_ctors+0x3a>
  401381: 85 c0                 test   %eax,%eax
  401383: 89 c3                 mov    %eax,%ebx
  401385: 74 13                 je     40139a <___do_global_ctors+0x2a>
  401387: 89 f6                 mov    %esi,%esi
  401389: 8d bc 27 00 00 00 00  lea    0x0(%edi),%edi
  401390: ff 14 9d e0 18 40 00  call   *0x4018e0(,%ebx,4)
  401397: 4b                    dec    %ebx
  401398: 75 f6                 jne    401390 <___do_global_ctors+0x20>
  40139a: c7 04 24 30 13 40 00  movl   $0x401330,(%esp)
  4013a1: e8 ba fe ff ff        call   401260 <_atexit>
  4013a6: 5b                    pop    %ebx
  4013a7: 5b                    pop    %ebx
  4013a8: 5d                    pop    %ebp
  4013a9: c3                    ret   
  4013aa: 8b 0d e4 18 40 00     mov    0x4018e4,%ecx
  4013b0: 31 c0                 xor    %eax,%eax
  4013b2: 85 c9                 test   %ecx,%ecx
  4013b4: eb 0a                 jmp    4013c0 <___do_global_ctors+0x50>
  4013b6: 40                    inc    %eax
  4013b7: 8b 14 85 e4 18 40 00  mov    0x4018e4(,%eax,4),%edx
  4013be: 85 d2                 test   %edx,%edx
  4013c0: 75 f4                 jne    4013b6 <___do_global_ctors+0x46>
  4013c2: eb bd                 jmp    401381 <___do_global_ctors+0x11>
  4013c4: 8d b6 00 00 00 00     lea    0x0(%esi),%esi
  4013ca: 8d bf 00 00 00 00     lea    0x0(%edi),%edi

004013d0 <___main>:
  4013d0: 55                    push   %ebp
  4013d1: 89 e5                 mov    %esp,%ebp
  4013d3: 53                    push   %ebx
  4013d4: 83 ec 04              sub    $0x4,%esp
  4013d7: a1 20 40 40 00        mov    0x404020,%eax
  4013dc: 85 c0                 test   %eax,%eax
  4013de: 75 36                 jne    401416 <___main+0x46>
  4013e0: a1 e0 18 40 00        mov    0x4018e0,%eax
  4013e5: bb 01 00 00 00        mov    $0x1,%ebx
  4013ea: 89 1d 20 40 40 00     mov    %ebx,0x404020
  4013f0: 83 f8 ff              cmp    $0xffffffff,%eax
  4013f3: 74 25                 je     40141a <___main+0x4a>
  4013f5: 85 c0                 test   %eax,%eax
  4013f7: 89 c3                 mov    %eax,%ebx
  4013f9: 74 0f                 je     40140a <___main+0x3a>
  4013fb: 90                    nop   
  4013fc: 8d 74 26 00           lea    0x0(%esi),%esi
  401400: ff 14 9d e0 18 40 00  call   *0x4018e0(,%ebx,4)
  401407: 4b                    dec    %ebx
  401408: 75 f6                 jne    401400 <___main+0x30>
  40140a: c7 04 24 30 13 40 00  movl   $0x401330,(%esp)
  401411: e8 4a fe ff ff        call   401260 <_atexit>
  401416: 5b                    pop    %ebx
  401417: 5b                    pop    %ebx
  401418: 5d                    pop    %ebp
  401419: c3                    ret   
  40141a: 8b 0d e4 18 40 00     mov    0x4018e4,%ecx
  401420: 31 c0                 xor    %eax,%eax
  401422: 85 c9                 test   %ecx,%ecx
  401424: eb 0a                 jmp    401430 <___main+0x60>
  401426: 40                    inc    %eax
  401427: 8b 14 85 e4 18 40 00  mov    0x4018e4(,%eax,4),%edx
  40142e: 85 d2                 test   %edx,%edx
  401430: 75 f4                 jne    401426 <___main+0x56>
  401432: eb c1                 jmp    4013f5 <___main+0x25>
  401434: 90                    nop   
  401435: 90                    nop   
  401436: 90                    nop   
  401437: 90                    nop   
  401438: 90                    nop   
  401439: 90                    nop   
  40143a: 90                    nop   
  40143b: 90                    nop   
  40143c: 90                    nop   
  40143d: 90                    nop   
  40143e: 90                    nop   
  40143f: 90                    nop   

00401440 <___w32_sharedptr_default_unexpected>:
  401440: 55                    push   %ebp
  401441: a1 70 40 40 00        mov    0x404070,%eax
  401446: 89 e5                 mov    %esp,%ebp
  401448: 5d                    pop    %ebp
  401449: 8b 48 04              mov    0x4(%eax),%ecx
  40144c: ff e1                 jmp    *%ecx
  40144e: 89 f6                 mov    %esi,%esi

00401450 <___w32_sharedptr_get>:
  401450: 55                    push   %ebp
  401451: ba 42 00 00 00        mov    $0x42,%edx
  401456: 89 e5                 mov    %esp,%ebp
  401458: 53                    push   %ebx
  401459: 0f b7 c0              movzwl %ax,%eax
  40145c: 83 ec 64              sub    $0x64,%esp
  40145f: 89 54 24 08           mov    %edx,0x8(%esp)
  401463: 8d 55 a8              lea    0xffffffa8(%ebp),%edx
  401466: 31 db                 xor    %ebx,%ebx
  401468: 89 54 24 04           mov    %edx,0x4(%esp)
  40146c: 89 04 24              mov    %eax,(%esp)
  40146f: ff 15 b0 50 40 00     call   *0x4050b0
  401475: ba 1f 00 00 00        mov    $0x1f,%edx
  40147a: b9 01 00 00 00        mov    $0x1,%ecx
  40147f: 83 ec 0c              sub    $0xc,%esp
  401482: 85 c0                 test   %eax,%eax
  401484: 75 07                 jne    40148d <___w32_sharedptr_get+0x3d>
  401486: eb 46                 jmp    4014ce <___w32_sharedptr_get+0x7e>
  401488: 01 c9                 add    %ecx,%ecx
  40148a: 4a                    dec    %edx
  40148b: 78 0e                 js     40149b <___w32_sharedptr_get+0x4b>
  40148d: 80 7c 2a a8 41        cmpb   $0x41,0xffffffa8(%edx,%ebp,1)
  401492: 75 f4                 jne    401488 <___w32_sharedptr_get+0x38>
  401494: 09 cb                 or     %ecx,%ebx
  401496: 01 c9                 add    %ecx,%ecx
  401498: 4a                    dec    %edx
  401499: 79 f2                 jns    40148d <___w32_sharedptr_get+0x3d>
  40149b: 83 3b 3c              cmpl   $0x3c,(%ebx)
  40149e: 75 07                 jne    4014a7 <___w32_sharedptr_get+0x57>
  4014a0: 89 d8                 mov    %ebx,%eax
  4014a2: 8b 5d fc              mov    0xfffffffc(%ebp),%ebx
  4014a5: c9                    leave 
  4014a6: c3                    ret   
  4014a7: b9 34 30 40 00        mov    $0x403034,%ecx
  4014ac: ba ea 00 00 00        mov    $0xea,%edx
  4014b1: 89 4c 24 0c           mov    %ecx,0xc(%esp)
  4014b5: 89 54 24 08           mov    %edx,0x8(%esp)
  4014b9: c7 04 24 61 30 40 00  movl   $0x403061,(%esp)
  4014c0: b8 80 30 40 00        mov    $0x403080,%eax
  4014c5: 89 44 24 04           mov    %eax,0x4(%esp)
  4014c9: e8 92 02 00 00        call   401760 <___eprintf>
  4014ce: b8 ac 30 40 00        mov    $0x4030ac,%eax
  4014d3: bb e4 00 00 00        mov    $0xe4,%ebx
  4014d8: 89 44 24 0c           mov    %eax,0xc(%esp)
  4014dc: 89 5c 24 08           mov    %ebx,0x8(%esp)
  4014e0: eb d7                 jmp    4014b9 <___w32_sharedptr_get+0x69>
  4014e2: 8d b4 26 00 00 00 00  lea    0x0(%esi),%esi
  4014e9: 8d bc 27 00 00 00 00  lea    0x0(%edi),%edi

004014f0 <___w32_sharedptr_initialize>:
  4014f0: 55                    push   %ebp
  4014f1: 89 e5                 mov    %esp,%ebp
  4014f3: 57                    push   %edi
  4014f4: 56                    push   %esi
  4014f5: 53                    push   %ebx
  4014f6: 81 ec cc 00 00 00     sub    $0xcc,%esp
  4014fc: 8b 0d 70 40 40 00     mov    0x404070,%ecx
  401502: 85 c9                 test   %ecx,%ecx
  401504: 74 08                 je     40150e <___w32_sharedptr_initialize+0x1e>
  401506: 8d 65 f4              lea    0xfffffff4(%ebp),%esp
  401509: 5b                    pop    %ebx
  40150a: 5e                    pop    %esi
  40150b: 5f                    pop    %edi
  40150c: 5d                    pop    %ebp
  40150d: c3                    ret   
  40150e: c7 45 98 41 41 41 41  movl   $0x41414141,0xffffff98(%ebp)
  401515: a1 10 30 40 00        mov    0x403010,%eax
  40151a: 8d 75 98              lea    0xffffff98(%ebp),%esi
  40151d: c7 45 9c 41 41 41 41  movl   $0x41414141,0xffffff9c(%ebp)
  401524: c7 45 a0 41 41 41 41  movl   $0x41414141,0xffffffa0(%ebp)
  40152b: 89 45 b8              mov    %eax,0xffffffb8(%ebp)
  40152e: a1 14 30 40 00        mov    0x403014,%eax
  401533: c7 45 a4 41 41 41 41  movl   $0x41414141,0xffffffa4(%ebp)
  40153a: c7 45 a8 41 41 41 41  movl   $0x41414141,0xffffffa8(%ebp)
  401541: 89 45 bc              mov    %eax,0xffffffbc(%ebp)
  401544: a1 18 30 40 00        mov    0x403018,%eax
  401549: c7 45 ac 41 41 41 41  movl   $0x41414141,0xffffffac(%ebp)
  401550: c7 45 b0 41 41 41 41  movl   $0x41414141,0xffffffb0(%ebp)
  401557: 89 45 c0              mov    %eax,0xffffffc0(%ebp)
  40155a: a1 1c 30 40 00        mov    0x40301c,%eax
  40155f: c7 45 b4 41 41 41 41  movl   $0x41414141,0xffffffb4(%ebp)
  401566: 89 45 c4              mov    %eax,0xffffffc4(%ebp)
  401569: a1 20 30 40 00        mov    0x403020,%eax
  40156e: 89 45 c8              mov    %eax,0xffffffc8(%ebp)
  401571: a1 24 30 40 00        mov    0x403024,%eax
  401576: 89 45 cc              mov    %eax,0xffffffcc(%ebp)
  401579: a1 28 30 40 00        mov    0x403028,%eax
  40157e: 89 45 d0              mov    %eax,0xffffffd0(%ebp)
  401581: a1 2c 30 40 00        mov    0x40302c,%eax
  401586: 89 45 d4              mov    %eax,0xffffffd4(%ebp)
  401589: 0f b7 05 30 30 40 00  movzwl 0x403030,%eax
  401590: 66 89 45 d8           mov    %ax,0xffffffd8(%ebp)
  401594: 89 34 24              mov    %esi,(%esp)
  401597: ff 15 ac 50 40 00     call   *0x4050ac
  40159d: 0f b7 c0              movzwl %ax,%eax
  4015a0: 83 ec 04              sub    $0x4,%esp
  4015a3: 85 c0                 test   %eax,%eax
  4015a5: 89 85 44 ff ff ff     mov    %eax,0xffffff44(%ebp)
  4015ab: 0f 85 3b 01 00 00     jne    4016ec <___w32_sharedptr_initialize+0x1fc>
  4015b1: c7 04 24 3c 00 00 00  movl   $0x3c,(%esp)
  4015b8: e8 83 02 00 00        call   401840 <_malloc>
  4015bd: 85 c0                 test   %eax,%eax
  4015bf: 89 c3                 mov    %eax,%ebx
  4015c1: 0f 84 59 01 00 00     je     401720 <___w32_sharedptr_initialize+0x230>
  4015c7: fc                    cld   
  4015c8: 89 c7                 mov    %eax,%edi
  4015ca: 8b 85 44 ff ff ff     mov    0xffffff44(%ebp),%eax
  4015d0: b9 0f 00 00 00        mov    $0xf,%ecx
  4015d5: f3 ab                 repz stos %eax,%es:(%edi)
  4015d7: c7 43 04 50 18 40 00  movl   $0x401850,0x4(%ebx)
  4015de: b9 01 00 00 00        mov    $0x1,%ecx
  4015e3: c7 43 08 40 14 40 00  movl   $0x401440,0x8(%ebx)
  4015ea: a1 40 40 40 00        mov    0x404040,%eax
  4015ef: c7 03 3c 00 00 00     movl   $0x3c,(%ebx)
  4015f5: 8b 15 44 40 40 00     mov    0x404044,%edx
  4015fb: c7 43 28 00 00 00 00  movl   $0x0,0x28(%ebx)
  401602: 89 43 14              mov    %eax,0x14(%ebx)
  401605: a1 30 20 40 00        mov    0x402030,%eax
  40160a: 89 53 18              mov    %edx,0x18(%ebx)
  40160d: 8b 15 34 20 40 00     mov    0x402034,%edx
  401613: 89 43 1c              mov    %eax,0x1c(%ebx)
  401616: a1 50 40 40 00        mov    0x404050,%eax
  40161b: 89 53 20              mov    %edx,0x20(%ebx)
  40161e: c7 43 30 ff ff ff ff  movl   $0xffffffff,0x30(%ebx)
  401625: 89 43 2c              mov    %eax,0x2c(%ebx)
  401628: 8b 15 3c 20 40 00     mov    0x40203c,%edx
  40162e: a1 38 20 40 00        mov    0x402038,%eax
  401633: 89 53 38              mov    %edx,0x38(%ebx)
  401636: ba 1f 00 00 00        mov    $0x1f,%edx
  40163b: 89 43 34              mov    %eax,0x34(%ebx)
  40163e: 89 f6                 mov    %esi,%esi
  401640: 89 d8                 mov    %ebx,%eax
  401642: 21 c8                 and    %ecx,%eax
  401644: 83 f8 01              cmp    $0x1,%eax
  401647: 19 c0                 sbb    %eax,%eax
  401649: 24 20                 and    $0x20,%al
  40164b: 01 c9                 add    %ecx,%ecx
  40164d: 04 41                 add    $0x41,%al
  40164f: 88 84 2a 48 ff ff ff  mov    %al,0xffffff48(%edx,%ebp,1)
  401656: 4a                    dec    %edx
  401657: 79 e7                 jns    401640 <___w32_sharedptr_initialize+0x150>
  401659: a1 10 30 40 00        mov    0x403010,%eax
  40165e: 89 85 68 ff ff ff     mov    %eax,0xffffff68(%ebp)
  401664: a1 14 30 40 00        mov    0x403014,%eax
  401669: 89 85 6c ff ff ff     mov    %eax,0xffffff6c(%ebp)
  40166f: a1 18 30 40 00        mov    0x403018,%eax
  401674: 89 85 70 ff ff ff     mov    %eax,0xffffff70(%ebp)
  40167a: a1 1c 30 40 00        mov    0x40301c,%eax
  40167f: 89 85 74 ff ff ff     mov    %eax,0xffffff74(%ebp)
  401685: a1 20 30 40 00        mov    0x403020,%eax
  40168a: 89 85 78 ff ff ff     mov    %eax,0xffffff78(%ebp)
  401690: a1 24 30 40 00        mov    0x403024,%eax
  401695: 89 85 7c ff ff ff     mov    %eax,0xffffff7c(%ebp)
  40169b: a1 28 30 40 00        mov    0x403028,%eax
  4016a0: 89 45 80              mov    %eax,0xffffff80(%ebp)
  4016a3: a1 2c 30 40 00        mov    0x40302c,%eax
  4016a8: 89 45 84              mov    %eax,0xffffff84(%ebp)
  4016ab: 0f b7 05 30 30 40 00  movzwl 0x403030,%eax
  4016b2: 66 89 45 88           mov    %ax,0xffffff88(%ebp)
  4016b6: 8d 85 48 ff ff ff     lea    0xffffff48(%ebp),%eax
  4016bc: 89 04 24              mov    %eax,(%esp)
  4016bf: ff 15 a4 50 40 00     call   *0x4050a4
  4016c5: 0f b7 f8              movzwl %ax,%edi
  4016c8: 83 ec 04              sub    $0x4,%esp
  4016cb: 85 ff                 test   %edi,%edi
  4016cd: 75 42                 jne    401711 <___w32_sharedptr_initialize+0x221>
  4016cf: 31 d2                 xor    %edx,%edx
  4016d1: 85 d2                 test   %edx,%edx
  4016d3: 75 1e                 jne    4016f3 <___w32_sharedptr_initialize+0x203>
  4016d5: 89 1c 24              mov    %ebx,(%esp)
  4016d8: e8 53 01 00 00        call   401830 <_free>
  4016dd: 89 34 24              mov    %esi,(%esp)
  4016e0: ff 15 ac 50 40 00     call   *0x4050ac
  4016e6: 83 ec 04              sub    $0x4,%esp
  4016e9: 0f b7 c0              movzwl %ax,%eax
  4016ec: e8 5f fd ff ff        call   401450 <___w32_sharedptr_get>
  4016f1: 89 c3                 mov    %eax,%ebx
  4016f3: 89 1d 70 40 40 00     mov    %ebx,0x404070
  4016f9: 8d 43 04              lea    0x4(%ebx),%eax
  4016fc: a3 60 40 40 00        mov    %eax,0x404060
  401701: 8d 43 08              lea    0x8(%ebx),%eax
  401704: a3 80 40 40 00        mov    %eax,0x404080
  401709: 8d 65 f4              lea    0xfffffff4(%ebp),%esp
  40170c: 5b                    pop    %ebx
  40170d: 5e                    pop    %esi
  40170e: 5f                    pop    %edi
  40170f: 5d                    pop    %ebp
  401710: c3                    ret   
  401711: 89 f8                 mov    %edi,%eax
  401713: e8 38 fd ff ff        call   401450 <___w32_sharedptr_get>
  401718: 39 d8                 cmp    %ebx,%eax
  40171a: 89 fa                 mov    %edi,%edx
  40171c: 75 b1                 jne    4016cf <___w32_sharedptr_initialize+0x1df>
  40171e: eb b1                 jmp    4016d1 <___w32_sharedptr_initialize+0x1e1>
  401720: e8 2b 01 00 00        call   401850 <_abort>
  401725: 90                    nop   
  401726: 90                    nop   
  401727: 90                    nop   
  401728: 90                    nop   
  401729: 90                    nop   
  40172a: 90                    nop   
  40172b: 90                    nop   
  40172c: 90                    nop   
  40172d: 90                    nop   
  40172e: 90                    nop   
  40172f: 90                    nop   

00401730 <___chkstk>:
  401730: 51                    push   %ecx
  401731: 89 e1                 mov    %esp,%ecx
  401733: 83 c1 08              add    $0x8,%ecx

00401736 <probe>:
  401736: 3d 00 10 00 00        cmp    $0x1000,%eax
  40173b: 72 10                 jb     40174d <done>
  40173d: 81 e9 00 10 00 00     sub    $0x1000,%ecx
  401743: 83 09 00              orl    $0x0,(%ecx)
  401746: 2d 00 10 00 00        sub    $0x1000,%eax
  40174b: eb e9                 jmp    401736 <probe>

0040174d <done>:
  40174d: 29 c1                 sub    %eax,%ecx
  40174f: 83 09 00              orl    $0x0,(%ecx)
  401752: 89 e0                 mov    %esp,%eax
  401754: 89 cc                 mov    %ecx,%esp
  401756: 8b 08                 mov    (%eax),%ecx
  401758: 8b 40 04              mov    0x4(%eax),%eax
  40175b: ff e0                 jmp    *%eax
  40175d: 90                    nop   
  40175e: 90                    nop   
  40175f: 90                    nop   

00401760 <___eprintf>:
  401760: 55                    push   %ebp
  401761: 89 e5                 mov    %esp,%ebp
  401763: 83 ec 18              sub    $0x18,%esp
  401766: 8b 45 14              mov    0x14(%ebp),%eax
  401769: 89 44 24 10           mov    %eax,0x10(%esp)
  40176d: 8b 45 10              mov    0x10(%ebp),%eax
  401770: 89 44 24 0c           mov    %eax,0xc(%esp)
  401774: 8b 45 0c              mov    0xc(%ebp),%eax
  401777: 89 44 24 08           mov    %eax,0x8(%esp)
  40177b: 8b 45 08              mov    0x8(%ebp),%eax
  40177e: 89 44 24 04           mov    %eax,0x4(%esp)
  401782: a1 d4 50 40 00        mov    0x4050d4,%eax
  401787: 83 c0 40              add    $0x40,%eax
  40178a: 89 04 24              mov    %eax,(%esp)
  40178d: e8 de 00 00 00        call   401870 <_fprintf>
  401792: a1 d4 50 40 00        mov    0x4050d4,%eax
  401797: 83 c0 40              add    $0x40,%eax
  40179a: 89 04 24              mov    %eax,(%esp)
  40179d: e8 be 00 00 00        call   401860 <_fflush>
  4017a2: e8 a9 00 00 00        call   401850 <_abort>
  4017a7: 90                    nop   
  4017a8: 90                    nop   
  4017a9: 90                    nop   
  4017aa: 90                    nop   
  4017ab: 90                    nop   
  4017ac: 90                    nop   
  4017ad: 90                    nop   
  4017ae: 90                    nop   
  4017af: 90                    nop   

004017b0 <___set_app_type>:
  4017b0: ff 25 cc 50 40 00     jmp    *0x4050cc
  4017b6: 90                    nop   
  4017b7: 90                    nop   
 ...

004017c0 <__cexit>:
  4017c0: ff 25 d0 50 40 00     jmp    *0x4050d0
  4017c6: 90                    nop   
  4017c7: 90                    nop   
 ...

004017d0 <___p__environ>:
  4017d0: ff 25 c4 50 40 00     jmp    *0x4050c4
  4017d6: 90                    nop   
  4017d7: 90                    nop   
 ...

004017e0 <_signal>:
  4017e0: ff 25 f8 50 40 00     jmp    *0x4050f8
  4017e6: 90                    nop   
  4017e7: 90                    nop   
 ...

004017f0 <___p__fmode>:
  4017f0: ff 25 c8 50 40 00     jmp    *0x4050c8
  4017f6: 90                    nop   
  4017f7: 90                    nop   
 ...

00401800 <__setmode>:
  401800: ff 25 dc 50 40 00     jmp    *0x4050dc
  401806: 90                    nop   
  401807: 90                    nop   
 ...

00401810 <___getmainargs>:
  401810: ff 25 c0 50 40 00     jmp    *0x4050c0
  401816: 90                    nop   
  401817: 90                    nop   
 ...

00401820 <_strcpy>:
  401820: ff 25 fc 50 40 00     jmp    *0x4050fc
  401826: 90                    nop   
  401827: 90                    nop   
 ...

00401830 <_free>:
  401830: ff 25 f0 50 40 00     jmp    *0x4050f0
  401836: 90                    nop   
  401837: 90                    nop   
 ...

00401840 <_malloc>:
  401840: ff 25 f4 50 40 00     jmp    *0x4050f4
  401846: 90                    nop   
  401847: 90                    nop   
 ...

00401850 <_abort>:
  401850: ff 25 e0 50 40 00     jmp    *0x4050e0
  401856: 90                    nop   
  401857: 90                    nop   
 ...

00401860 <_fflush>:
  401860: ff 25 e8 50 40 00     jmp    *0x4050e8
  401866: 90                    nop   
  401867: 90                    nop   
 ...

00401870 <_fprintf>:
  401870: ff 25 ec 50 40 00     jmp    *0x4050ec
  401876: 90                    nop   
  401877: 90                    nop   
 ...

00401880 <_SetUnhandledExceptionFilter@4>:
  401880: ff 25 b4 50 40 00     jmp    *0x4050b4
  401886: 90                    nop   
  401887: 90                    nop   
 ...

00401890 <_ExitProcess@4>:
  401890: ff 25 a8 50 40 00     jmp    *0x4050a8
  401896: 90                    nop   
  401897: 90                    nop   
 ...

004018a0 <_GetAtomNameA@12>:
  4018a0: ff 25 b0 50 40 00     jmp    *0x4050b0
  4018a6: 90                    nop   
  4018a7: 90                    nop   
 ...

004018b0 <_FindAtomA@4>:
  4018b0: ff 25 ac 50 40 00     jmp    *0x4050ac
  4018b6: 90                    nop   
  4018b7: 90                    nop   
 ...

004018c0 <_AddAtomA@4>:
  4018c0: ff 25 a4 50 40 00     jmp    *0x4050a4
  4018c6: 90                    nop   
  4018c7: 90                    nop   
 ...

004018d0 <___sjlj_init_ctor>:
  4018d0: 55                    push   %ebp
  4018d1: 89 e5                 mov    %esp,%ebp
  4018d3: 5d                    pop    %ebp
  4018d4: e9 a7 f9 ff ff        jmp    401280 <___do_sjlj_init>
  4018d9: 90                    nop   
  4018da: 90                    nop   
  4018db: 90                    nop   
  4018dc: 90                    nop   
  4018dd: 90                    nop   
  4018de: 90                    nop   
  4018df: 90                    nop   

004018e0 <__CTOR_LIST__>:
  4018e0: ff                    (bad) 
  4018e1: ff                    (bad) 
  4018e2: ff                    (bad) 
  4018e3: ff d0                 call   *%eax

004018e4 <.ctors>:
  4018e4: d0 18                 rcrb   (%eax)
  4018e6: 40                    inc    %eax
  4018e7: 00 00                 add    %al,(%eax)
  4018e9: 00 00                 add    %al,(%eax)
 ...

004018ec <__DTOR_LIST__>:
  4018ec: ff                    (bad) 
  4018ed: ff                    (bad) 
  4018ee: ff                    (bad) 
  4018ef: ff 00                 incl   (%eax)
  4018f1: 00 00                 add    %al,(%eax)
 ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值