在vs2013下的控制台运行如下代码
#include "stdafx.h"
void fun(int x, int y, int z, int c)
{
int b =x + y + z + c;
}
int _tmain(int argc, _TCHAR* argv[])
{ //这个位置下个断点(就是{前点一下)执行 然后按alt+8进入反汇编 按F11单步执行
fun(1, 2, 3, 4);
return 0;
}
首先会出现这段代码:
一个简单的主程序中含有的反汇编代码
push ebp
mov ebp,esp
sub esp,0C0h
push ebx
push esi
push edi
lea edi,[ebp-0C0h]
mov ecx,30h
mov eax,0CCCCCCCCh
rep stos dword ptr es:[edi] 主要解读stos的功能
解读如下:
mov eax,0CCCC