首页
社区
课程
招聘
[求助]写CALL 但是 参数 中有 堆栈[EBP-0x10],我的写法对吗
发表于: 2020-3-31 13:39 3917

[求助]写CALL 但是 参数 中有 堆栈[EBP-0x10],我的写法对吗

2020-3-31 13:39
3917
  

 lea   ecx,dword ptr ss:[ebp-0x10]

 call   0x06A9EC0

以上反汇编是在OD显示出来的,并且 我看到  [ebp-0x10]  的数值 都是 00000,是空的。 那么如果要调用这个CALL ,怎么构建这个  dword ptr ss:[ebp-0x10]  呢?
还有 我是要获取 [ebp-0x10]的里面的数值

以下的代码对吗?
DWORD dwABC [128] = { 0 };  //这里的128 可能过大了,但是宁可这样大一点,防止 内存不够用,调用此CALL崩溃
__asm
{
 pushad 
 pushfd
 

 lea ecx,dword ptr dwABC

 call   0x01E1F480


popfd
popad
}

我问的问题比较低级,但是 很实用。希望大神解答,以后看到堆栈就不害怕了

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

最后于 2020-4-2 09:38 被TX杀手编辑 ,原因:
收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 1725
活跃值: (3219)
能力值: ( LV13,RANK:327 )
在线值:
发帖
回帖
粉丝
3
函数调用约定、栈变量如何分布。
多补点基础,用VS写点函数调用的代码,反汇编调试看看代码编译后长啥样,别一上来就想Call。
2020-3-31 17:48
0
雪    币: 4165
活跃值: (1555)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
被调用的函数原型?调用约定?平台?
2020-3-31 20:44
0
雪    币: 3
活跃值: (1056)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
深山修行之人 函数调用约定、栈变量如何分布。 多补点基础,用VS写点函数调用的代码,反汇编调试看看代码编译后长啥样,别一上来就想Call。
这是STDCALL 堆栈在函数内部平衡
2020-4-1 00:47
0
雪    币: 3
活跃值: (1056)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
Boring勇哥 被调用的函数原型?调用约定?平台?
这是STDCALL 堆栈在函数内部平衡
2020-4-1 00:47
0
雪    币: 4165
活跃值: (1555)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
7
void __declspec(naked) __stdcall _call() {
    __asm {
        push ebp;
        mov ebp, esp;
        sub esp, 0x200;            // DWORD dwABC[128];
        mov eax, esp;
        push eax;                      // push dwABC  
        mov eax, 0x01E1F480;
        call eax;                        // ((void(__stdcall*)(DWORD*))0x01E1F480)(&dwABC);
        add esp, 0x200;
        pop ebp;
        ret;
    }
}

最后于 2020-4-1 13:13 被Boring勇哥编辑 ,原因:
2020-4-1 13:10
0
雪    币: 3
活跃值: (1056)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
我是要获取 [ebp-0x10]的里面的数值
2020-4-2 09:36
0
游客
登录 | 注册 方可回帖
返回