码迷,mamicode.com
首页 > 编程语言 > 详细

C++反汇编笔记(四)cout、endl

时间:2015-04-07 11:35:57      阅读:305      评论:0      收藏:0      [点我收藏+]

标签:

1、debug版

int main()
{
011752E0  push        ebp  
011752E1  mov         ebp,esp  
011752E3  sub         esp,0C0h  
011752E9  push        ebx  
011752EA  push        esi  
011752EB  push        edi  
011752EC  lea         edi,[ebp-0C0h]  
011752F2  mov         ecx,30h  
011752F7  mov         eax,0CCCCCCCCh  
011752FC  rep stos    dword ptr es:[edi]  
    cout << 5;
011752FE  mov         esi,esp  
01175300  push        5  
01175302  mov         ecx,dword ptr ds:[1180090h]  
01175308  call        dword ptr ds:[11800C8h]  
0117530E  cmp         esi,esp  
01175310  call        __RTC_CheckEsp (011712E4h)  
    return 0;
01175315  xor         eax,eax  
}

00195317 pop edi
00195318 pop esi
00195319 pop ebx
0019531A add esp,0C0h
00195320 cmp ebp,esp
00195322 call __RTC_CheckEsp (01912E4h)
00195327 mov esp,ebp
00195329 pop ebp
0019532A ret

 

 

 

int main()
{
00065360  push        ebp  
00065361  mov         ebp,esp  
00065363  sub         esp,0C0h  
00065369  push        ebx  
0006536A  push        esi  
0006536B  push        edi  
0006536C  lea         edi,[ebp-0C0h]  
00065372  mov         ecx,30h  
00065377  mov         eax,0CCCCCCCCh  
0006537C  rep stos    dword ptr es:[edi]  
    cout << endl;
0006537E  mov         esi,esp  
00065380  push        6138Eh  
00065385  mov         ecx,dword ptr ds:[70090h]  
0006538B  call        dword ptr ds:[7009Ch]  
00065391  cmp         esi,esp  
00065393  call        __RTC_CheckEsp (0612E4h)  
    return 0;
00065398  xor         eax,eax  
}

01152DEA pop edi
01152DEB pop esi
01152DEC pop ebx
01152DED add esp,0C0h
01152DF3 cmp ebp,esp
01152DF5 call __RTC_CheckEsp (011512E4h)
01152DFA mov esp,ebp
01152DFC pop ebp
01152DFD ret

 

 

int main()
{
01183540  push        ebp  
01183541  mov         ebp,esp  
01183543  sub         esp,0C0h  
01183549  push        ebx  
0118354A  push        esi  
0118354B  push        edi  
0118354C  lea         edi,[ebp-0C0h]  
01183552  mov         ecx,30h  
01183557  mov         eax,0CCCCCCCCh  
0118355C  rep stos    dword ptr es:[edi]  
    cout << 5<<endl;
0118355E  mov         esi,esp  
01183560  push        118143Dh  
01183565  mov         edi,esp  
01183567  push        5  
01183569  mov         ecx,dword ptr ds:[1190090h]  
0118356F  call        dword ptr ds:[11900C8h]  
    cout << 5<<endl;
01183575  cmp         edi,esp  
01183577  call        __RTC_CheckEsp (011812E4h)  
0118357C  mov         ecx,eax  
0118357E  call        dword ptr ds:[119009Ch]  
01183584  cmp         esi,esp  
01183586  call        __RTC_CheckEsp (011812E4h)  
    return 0;
0118358B  xor         eax,eax  
}
0118358D  pop         edi  
0118358E  pop         esi  
0118358F  pop         ebx  
01183590  add         esp,0C0h  
01183596  cmp         ebp,esp  
01183598  call        __RTC_CheckEsp (011812E4h)  
0118359D  mov         esp,ebp  
0118359F  pop         ebp  
011835A0  ret  

 

 

 

 

2、release版

    cout << 5;
00CF12A0  mov         ecx,dword ptr ds:[0CF3030h]  
00CF12A6  push        5  
00CF12A8  call        dword ptr ds:[0CF3038h]  
    return 0;
00CF12AE  xor         eax,eax  
}

 

 

    cout << endl;
00EC12A0  mov         ecx,dword ptr ds:[0EC303Ch]  
00EC12A6  push        0EC1700h  
00EC12AB  call        dword ptr ds:[0EC3044h]  
    return 0;
00EC12B1  xor         eax,eax  
}
00EC12B3  ret  

 

    cout << 5<<endl;
00A412A0  mov         ecx,dword ptr ds:[0A43040h]  
00A412A6  push        0A41700h  
00A412AB  push        5  
00A412AD  call        dword ptr ds:[0A43024h]  
00A412B3  mov         ecx,eax  
00A412B5  call        dword ptr ds:[0A43048h]  
    return 0;
00A412BB  xor         eax,eax  
}
00A412BD  ret  

 

C++反汇编笔记(四)cout、endl

标签:

原文地址:http://www.cnblogs.com/nitianbenbendan/p/4397663.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!