首页
社区
课程
招聘
[求助]远程注入嵌入汇编问题
发表于: 2008-8-1 16:15 4270

[求助]远程注入嵌入汇编问题

2008-8-1 16:15
4270
void Run(float X, float Y, float Z)
{
  
  _asm
  {
    pushad

    mov  eax, BASE_ADDR
    mov  eax, [eax+0x1c]
    ==mov  esi, [eax+0x20]

    mov  ecx, [esi+0xbcc]
    push 1
    mov  edx, CALL1
    call edx
    mov  edi, eax

    mov  ecx, [esi+0xbcc]
    mov  ecx, [ecx+0x30]
    mov  ecx, [ecx+4]
    mov  eax, X
    mov  [ecx+0x20], eax
    mov  eax, Z
    mov  [ecx+0x24], eax
    mov  eax, Y
    mov  [ecx+0x28], eax

    lea  ecx, [ecx+0x20]
    push ecx
    push 0
    mov  ecx, edi
    mov  edx, CALL2
    call edx

    push 0
    push 1
    push edi
    mov  ecx, [esi+0xbcc]
    push 1
    mov  edx, CALL3
    call edx

    popad
  }
}
为什么一调用就崩溃,错位位置总报==mov  esi, [eax+0x20]这行?高手帮忙

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

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 219
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
void Run(float X, float Y, float Z)
{

DWORD BASE_ADDR = 0x123456; //丢在函数里面来.
//CALL1 CALL2 CALL2 也是,要丢在外面你就要同过参数传进来.

_asm
{
pushad

mov eax, BASE_ADDR
mov eax, [eax+0x1c]
==mov esi, [eax+0x20]
...........
2008-8-3 09:12
0
游客
登录 | 注册 方可回帖
返回
//