[COMPLETED] [Request] Streets of Rage 4
Posted: Thu Apr 30, 2020 11:15 am
Need Table for:
1. Inf. HP
2. Inf. Life
3. Inf. Star Special
4. Max Score
5. Unlock All Character
6. ???
Community Cheat Tables of Cheat Engine
https://fearlessrevolution.com/
You can unlock 12 retro characters and Adam can be unlocked from just playing the story he's a beast by the way (Just beat Story with Axel) using him now!TroliusMaximus wrote: ↑Thu Apr 30, 2020 11:29 amCharacter unlocker, please (...assuming there are chars. to unlock).
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>3</ID>
<Description>"Unlimited Lifes"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(UnlimitedLives,SOR4.exe,83 79 18 00 7E 1A)
alloc(newmem,$1000,"SOR4.exe"+41D722)
label(code)
label(return)
newmem:
code:
mov [rcx+18],#99
cmp dword ptr [rcx+18],00
jle SOR4.exe+41D742
jmp return
UnlimitedLives:
jmp newmem
nop
return:
registersymbol(UnlimitedLives)
[DISABLE]
UnlimitedLives:
db 83 79 18 00 7E 1A
unregistersymbol(UnlimitedLives)
dealloc(newmem)
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatTable>
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>19</ID>
<Description>"High Score"</Description>
<LastState Activated="1"/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>
[ENABLE]
aobscanmodule(UnlimitedScore,SOR4.exe,03 41 28 48 8B CA)
alloc(newmem,$1000,"SOR4.exe"+40BF3D)
label(code)
label(return)
newmem:
code:
mov [rcx+28],#999999
add eax,[rcx+28]
mov rcx,rdx
jmp return
UnlimitedScore:
jmp newmem
nop
return:
registersymbol(UnlimitedScore)
[DISABLE]
UnlimitedScore:
db 03 41 28 48 8B CA
unregistersymbol(UnlimitedScore)
dealloc(newmem)
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatTable>
Code: Select all
{$STRICT}
define(address, SOR4.exe+417D13)
define(bytes, 8B 53 30 89 50 1C)
[ENABLE]
define(injMyhpHook, address)
assert(injMyhpHook, bytes)
registerSymbol(injMyhpHook)
alloc(memMyhpHook, 0x400, address)
label(ptrMyhpHook)
registerSymbol(ptrMyhpHook)
label(n_code)
label(o_code)
label(exit)
label(return)
memMyhpHook:
ptrMyhpHook:
dq 0
align 10 CC
n_code:
mov edx,[rbx+70]
mov [rbx+32],edx
o_code:
mov edx,[rbx+30]
mov [rax+1C],edx
exit:
jmp return
injMyhpHook:
jmp n_code
nop
return:
[DISABLE]
injMyhpHook:
db bytes
unregisterSymbol(injMyhpHook)
unregisterSymbol(ptrMyhpHook)
dealloc(memMyhpHook)
Code: Select all
{$STRICT}
define(address, SOR4.exe+41D72C)
define(bytes, FF 09 48 8B CE)
[ENABLE]
define(injLivesHook, address)
assert(injLivesHook, bytes)
registerSymbol(injLivesHook)
alloc(memLivesHook, 0x400, address)
label(ptrLivesHook)
registerSymbol(ptrLivesHook)
label(n_code)
label(o_code)
label(exit)
label(return)
memLivesHook:
ptrLivesHook:
dq 0
align 10 CC
n_code:
o_code:
nop
nop
mov rcx,rsi
exit:
jmp return
injLivesHook:
jmp n_code
return:
[DISABLE]
injLivesHook:
db bytes
unregisterSymbol(injLivesHook)
unregisterSymbol(ptrLivesHook)
dealloc(memLivesHook)
Code: Select all
{$STRICT}
define(address, SOR4.exe+381F5A)
define(bytes, 8B 44 10 50 48 83 C4 20)
[ENABLE]
define(injStarHook, address)
assert(injStarHook, bytes)
registerSymbol(injStarHook)
alloc(memStarHook, 0x400, address)
label(ptrStarHook)
registerSymbol(ptrStarHook)
label(n_code)
label(o_code)
label(exit)
label(return)
memStarHook:
ptrStarHook:
dq 0
align 10 CC
n_code:
mov [rax+rdx+50],(int)10
o_code:
mov eax,[rax+rdx+50]
add rsp,20
exit:
jmp return
injStarHook:
jmp n_code
nop
nop
nop
return:
[DISABLE]
injStarHook:
db bytes
unregisterSymbol(injStarHook)
unregisterSymbol(ptrStarHook)
dealloc(memStarHook)
I think you can change that in options.
Code: Select all
[ENABLE]
aobscanmodule(STARS,SOR4.dll,89 7C 08 4C 48 63 43 2C) // should be unique
alloc(newmem,$1000,"SOR4.dll"+DE66E0)
label(code)
label(return)
newmem:
code:
cmp [rax+rcx+4C],edi
jg end
mov [rax+rcx+4C],edi
end:
movsxd rax,dword ptr [rbx+2C]
jmp return
STARS:
jmp newmem
nop 3
return:
registersymbol(STARS)
[DISABLE]
STARS:
db 89 7C 08 4C 48 63 43 2C
unregistersymbol(STARS)
dealloc(newmem)