首页
社区
课程
招聘
[求助]请问这是哪种传参方式?非寄存器非push
2022-10-29 22:44 6312

[求助]请问这是哪种传参方式?非寄存器非push

2022-10-29 22:44
6312

逆向时发现一种非常另类的传参方式,用C++测试了所有函数调用约定都无法实现图中的结果,通常来说传参都是压栈或特定寄存器,而这个是直接修改esp再对栈进行修改,求解答疑惑。
图片描述


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

收藏
点赞0
打赏
分享
最新回复 (5)
雪    币: 5734
活跃值: (1737)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
blindtiger 1 2022-10-30 03:47
2
0
stdcall 大概看了一下 栈上11个参数
雪    币: 2264
活跃值: (647)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
手心love 2022-10-30 09:20
3
0
参数特别多的时候不会一个个push吧
雪    币: 2697
活跃值: (3808)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
syser 2022-10-30 11:51
4
0
就是stdcall 但是GCC会编译成这样 甚至寄存器传参 微软32位系统内核也会这样优化
雪    币: 1525
活跃值: (1313)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
MochaCo 2022-10-30 16:48
5
0
有可能这个函数的参数有一个比较大的结构体
雪    币: 5398
活跃值: (1922)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wuzhouzcx 2022-10-31 08:10
6
0
好像是thiscall 3个参数+ecx
游客
登录 | 注册 方可回帖
返回