EBP:栈底指针寄存器
ESP:栈顶指针寄存器
EBP大,ESP小,压栈时ESP变小,EBP不变。
对于_cdecl,调用一个函数的时候,先从右向左压栈,在把call指令的下一个指令的地址压栈,进入被调用函数,被调用函数结束时,依次出栈。返回到函数调用前的指令继续执行。
开始调用,先将ebp1压栈,然后将现在的栈顶esp1作为函数调用时的栈底
00413700 push ebp
00413701 mov ebp,esp
结束调用
00413728 mov esp,ebp
还原栈顶指针
0041372A pop ebp
还原栈底指针
0041372B ret
返回到函数调用前的指令继续执行。