您的位置:首页 > 其它

逆向工程核心原理学习笔记(二十二):栈帧9:调用printf()函数

2017-05-09 21:42 381 查看


我们可以清楚的看到printf函数的调用。



然后我们转向汇编代码:







首先PUSH EAX,将add()函数的返回值放进EAX寄存器中,

然后将打印的内容压入410DC4地址

紧接着调用40107C地址的函数,这个地址的函数是C的标准函数——printf,我们不必跟进去。

最后,ADD ESP,8

为啥呢,因为printf的参数为%d\n,占用了8个字节,ESP加上8个字节就将参数从栈中删除了。

32位寄存器 + 32位常量 = 64位 = 8字节
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐