首页
社区
课程
招聘
[求助]关于call和jmp区别的
发表于: 2014-3-24 19:09 2362

[求助]关于call和jmp区别的

2014-3-24 19:09
2362
一款软件壳,尝试给dll加壳。引导代码的结尾是:
jmp        edx

此时就跳转到申请的内存中去执行了
执行的指令是:
ShellStart LABEL        DWORD
        call        $+5
        pop        edx
        sub        edx,5h
这样定位没什么问题。也可以正常执行。

但是如果把,引导末尾的代码修改为:
        call         edx
后面的指令相应的修改为:
ShellStart LABEL        DWORD
        pop        eax
        mov        al,byte ptr[eax]       
        call        $+5
        pop        edx
        sub        edx,8h
        pop        ebp
就会出现错误,而且这个错误很难定位到,要等dll加载之后,并且导出的函数运行起来之后才会出现错误!求教怎么回事?

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 185
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
是不是做了自校验。
2014-3-24 19:18
0
雪    币: 51
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
都没有自校验的。壳代码dll代码我都有的.
2014-3-24 19:28
0
游客
登录 | 注册 方可回帖
返回
//