首页
社区
课程
招聘
这段代码是怎么运行的?
发表于: 2016-6-28 17:30 5574

这段代码是怎么运行的?

2016-6-28 17:30
5574
具体请看图片吧
运行了一个vbavaradd后 ,程序发生一些变化,可是看不懂
各位老师,能给我讲讲吗?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 141
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
mol
2
对于vbavaradd不会也需要步入才能搞明白怎么回事吧?
两个变量值相加,12F1D0怎么就由D4变成了DC呢?
可以来我QQ吗?19116773
2016-6-28 17:32
0
雪    币: 123
活跃值: (144)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
你观察下第一张图,调用是这样的:
PUSH ECX;参数二
PUSH EDX;参数一
CALL EBX(EBX=vbaVarAdd)
这样你直接观察ecx和edx的值,是0x12f1d8和0x12f1c8, 你找到右边堆栈上面这两个地址的数据:
分别是0 和8
然后你调用完后观察eax返回的地址是0x12f1c8
再从第二张图观察这个地址的值,是8
所以无误
不清楚请查看函数调用约定
2016-6-29 09:41
0
游客
登录 | 注册 方可回帖
返回
//