Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
123 views
in Technique[技术] by (71.8m points)

c++ - How to convert it to a function?

I have this asm code (Cheat Engine),

[ENABLE]
Alloc(addyy,32)
Alloc(addxx,32)
Label(goyy)
Label(goxx)

addyy:
mov [edi],#203 //X Coords -------------------------------------
mov ebx,[ebp+14]
jmp goyy

addxx:
mov [ebx],#1450 //Y Coords --------------------------------------------
mov edi,[ebp+10]
jmp goxx

009B6352:
jmp addyy
goyy:

009B62ED:
jmp addxx
goxx:

[DISABLE]
009B6352:
mov [edi],eax
mov ebx,[ebp+14]

009B62ED:
mov [ebx],eax
mov edi,[ebp+10]

Dealloc(addyy)
Dealloc(addxx)

I want to make it a function in the c ++ win32 program that gets two parameters X and Y Like this:

TeleportInGame(x, y);

i turn to help after a lot of failed attempts,

Some information about the program:

DLL Hack/Trainer (Injection)

C++ Win32 Program.

Source Code (Maybe it will help you help me):

https://github.com/ak4153/timelapseak415/tree/master/Timelapse

I know this is not how it is done, But that's what I'm trying to do, please anyone help me =/

HWND FindWindowGame()
{
    return FindWindowA(NULL, "Game");
}

void WPM(HWND hWnd,int address, byte *data, int dataSize)
{
    DWORD proc_id;
    GetWindowThreadProcessId(hWnd, &proc_id);
    HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, proc_id);
    if(!hProcess) return;
    WriteProcessMemory(hProcess, (LPVOID)address, data, dataSize, NULL);
    CloseHandle(hProcess); 
}

void Teleport(x,y) //-- x y parameters
{
   [ENABLE]
Alloc(addyy,32)
Alloc(addxx,32)
Label(goyy)
Label(goxx)

addyy:
mov [edi],#203 //X Coords -------------------------------------
mov ebx,[ebp+14]
jmp goyy

addxx:
mov [ebx],#1450 //Y Coords --------------------------------------------
mov edi,[ebp+10]
jmp goxx

009B6352:
jmp addyy
goyy:

009B62ED:
jmp addxx
goxx:

}

void StopTeleport()  
{
[DISABLE]
009B6352:
mov [edi],eax
mov ebx,[ebp+14]

009B62ED:
mov [ebx],eax
mov edi,[ebp+10]

Dealloc(addyy)
Dealloc(addxx)
}




----------------
question from:https://stackoverflow.com/questions/65902675/how-to-convert-it-to-a-function

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...