首页
社区
课程
招聘
[讨论]vc中怎么引用内联汇编的代码地址?
发表于: 2012-4-13 15:10 6188

[讨论]vc中怎么引用内联汇编的代码地址?

2012-4-13 15:10
6188
收藏
免费 0
支持
分享
最新回复 (12)
雪    币: 38
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
我想试过这样子:

ULONG a;
_asm
{
  mov eax,eax
  label:
  mov ebx,ebx
}

a=(ULONG)label;

编译后,错误提示,label未定义;

请问怎么引用内联汇编里的代码地址啊?????
2012-4-13 15:27
0
雪    币: 579
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
mov eax, offset label
2012-4-13 15:28
0
雪    币: 38
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
要在_asm{}外面使用啊,你说的这句在里面就行得通,外面行不通,还是提示未定义..
2012-4-13 15:33
0
雪    币: 38
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
如果有熟练引用代码地址的,说说看,没有的话,我用一些比较麻烦的写法。。
2012-4-13 15:36
0
雪    币: 949
活跃值: (18)
能力值: ( LV9,RANK:330 )
在线值:
发帖
回帖
粉丝
6
void func()
{
        __asm
        {
                mov,eax,xx
            ...
        ...
        }
}

这样还不行?
DWORD asmadd = (DWORD)func;
2012-4-13 16:23
0
雪    币: 31
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
int a;
_asm
{
  call label
label:
  pop eax
mov a,eax
}
看看行不?
2012-4-13 17:00
0
雪    币: 615
活跃值: (172)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
8
6楼、7楼的方法应该都行,7楼的方法应该好一些~
2012-4-13 23:19
0
雪    币: 38
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
问题解决了,我不在内联汇编外面引用,全部放到里面写,本菜鸟第一次学会了绕过一个hook,从中学会了一点双机调试,对代码重定位更加了解了,加载到真实的机子上没有蓝屏。。
2012-4-14 01:36
0
雪    币: 31
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
10
怎么绕过Hook的?分享下?
2012-4-14 06:54
0
雪    币: 38
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
代码写得太害羞了,就不贴了。就是把被人hook的那个地址附近的代码的本来的样子放到自己的驱动来执行,这些代码里如果有跳转或call的就用5个nop填充,待执行时,计算并写入要跳转的地址就是了,用个ulong来保存要写入的地址啊。这个地址的值=要跳到的地址-跳转指令所在地址-这条跳转指令占的字节数。。。call或jmp的机器码是0xe8和0xe9.。。。。。。
2012-4-14 18:24
0
雪    币: 20
活跃值: (99)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
12
ULONG a;
_asm
{
  mov eax,eax
  _label:
  mov ebx,ebx
}

a=(ULONG)_label;

这样可以不?在label前加个下划线。
2012-4-15 23:35
0
雪    币: 952
活跃值: (1821)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
ULONG Addr;
        __asm
        {
                mov eax,eax
_label:
                mov ebx,ebx
                mov Addr, offset _label
        }

这样是比较正常的用法....
2012-4-15 23:44
0
游客
登录 | 注册 方可回帖
返回
//