dll инъекция war3 - PullRequest
       22

dll инъекция war3

0 голосов
/ 14 сентября 2011

У меня есть код:

    __asm
    {
     PUSHAD
     MOV        EAX, DWORD PTR DS:[hStorm_LOBBYPTR]
     TEST       EAX, EAX
     JE         nick_false
     MOV        ECX, DWORD PTR DS:[EAX+0xC464]
     TEST       ECX, ECX
     JE         nick_false
     MOV        EAX, DWORD PTR DS:[ECX+0x170+0xB0]
     TEST       EAX, EAX
     JE         nick_false
     MOV        EDX, i
     MOV        ECX, DWORD PTR DS:[EAX+EDX*4]
     MOV        EAX, DWORD PTR DS:[ECX+0x1A0]
     MOV        ECX, DWORD PTR DS:[EAX+0x1E4]
     MOV        EAX, DWORD PTR DS:[ECX+0x1E4]
     MOV        ECX, DWORD PTR DS:[EAX+0x1E8]
     MOV        tempdw, ECX
     POPAD
     JMP        nick_true

nick_false:
     XOR        EAX, EAX
     MOV        tempdw, EAX
     POPAD
    }

nick_true:
        /* do check if tempdw is NULL and then proceed with your stuff */
  1. Как мне обернуть его в DLL (Visual Studio C ++ 2008)?
  2. После этого мне нужно вставить DLL в какой-то процесс, а затем извлечь tempdw, как я могу это сделать?

1 Ответ

0 голосов
/ 14 сентября 2011

вам нужно будет деформировать это в обычном C-функции, однако, судя по меткам, это не будет голый FUNC:

void MyHook()
{
    __asm
   {
     //asm here
   }

nick_true:
    //the other stuff
}

, тогда его необходимо поместить в базовыйПроект dll, который записывает необходимые хуки, используя WriteProcessMemory (ничего более этого не может быть дано, так как не хватает информации).Чтобы добавить его, вы можете использовать RemoteDll или отредактировать панель запуска из w3l

...