How to load a pointer address into a symbol?

M

Mister Modification

Cheater
Joined
Mar 5, 2017
Messages
44
Hello everyone,

I want to get the address of that dword ptr [rax+24] on it´s original place and store it under a registered symbol so that I can use it to get my Player based values like health, flags and other nice stuff (which are in my player object) all the time.

Player object gets destroyed after every fight so pointers or aob scans are useless. Unless somebody knows some tricks i don`t.

That dword ptr [rax+24] knows the address of max health. I want that address and it´s value without moving it somewhere else.

I only managed it to store the value to a new mem place (although practice was nice). :D

[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(Player,SouthPark_TFBW.exe,83 78 24 00 EB 38) // should be unique
alloc(newmem,$1000,"SouthPark_TFBW.exe"+65FFC54)
alloc(address,$4)

label(code)
label(return)

newmem:

code:
cmp dword ptr [rax+24],00
mov eax, dword ptr [rax+24]
mov [address], eax
jmp SouthPark_TFBW.exe+65FFC92
jmp return

Player:
jmp newmem
nop
return:
registersymbol(Player)
registersymbol(address)

[DISABLE]
//code from here till the end of the code will be used to disable the cheat
Player:
db 83 78 24 00 EB 38

address:
dd 00

unregistersymbol(Player)
unregistersymbol(address)
dealloc(newmem)

 
TheyCallMeTim13

TheyCallMeTim13

Enchanter
Staff member
Administrator
Fearless Donors
Talents
Joined
Mar 3, 2017
Messages
1,794
Try something like this:
Code:
<i>
</i>[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(Player,SouthPark_TFBW.exe,83 78 24 00 EB 38) // should be unique
alloc(newmem,$1000,"SouthPark_TFBW.exe"+65FFC54)
alloc(address,$8)

label(code)
label(return)

newmem:

code:
cmp dword ptr [rax+24],00
mov [address], rax // store the base address
// Then in a memory record use '[address]+24' to point to the health address.
jmp SouthPark_TFBW.exe+65FFC92
jmp return // this code won't ever run because of the jump before it

Player:
jmp newmem
nop
return:
registersymbol(Player)
registersymbol(address)

[DISABLE]
//code from here till the end of the code will be used to disable the cheat
Player:
db 83 78 24 00 EB 38

address:
dq 00

unregistersymbol(Player)
unregistersymbol(address)
dealloc(newmem)
 
M

Mister Modification

Cheater
Joined
Mar 5, 2017
Messages
44
TheyCallMeTim13 said:
Try something like this:
Code:
<i>
</i>[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(Player,SouthPark_TFBW.exe,83 78 24 00 EB 38) // should be unique
alloc(newmem,$1000,"SouthPark_TFBW.exe"+65FFC54)
alloc(address,$8)

label(code)
label(return)

newmem:

code:
cmp dword ptr [rax+24],00
mov [address], rax // store the base address
// Then in a memory record use '[address]+24' to point to the health address.
jmp SouthPark_TFBW.exe+65FFC92
jmp return // this code won't ever run because of the jump before it

Player:
jmp newmem
nop
return:
registersymbol(Player)
registersymbol(address)

[DISABLE]
//code from here till the end of the code will be used to disable the cheat
Player:
db 83 78 24 00 EB 38

address:
dq 00

unregistersymbol(Player)
unregistersymbol(address)
dealloc(newmem)
Thank you very much for your support. I will give credit when I release that cheat table. :)
 
Top