killerkrok555 wrote: ↑Fri Dec 25, 2020 10:37 pm
Im releasing my cheat table for the poker in game
Hi.
Can you check this out?
This may help your work.
Code: Select all
[ENABLE]
aobscanmodule(GET_ADDR_POKER,RDR2.exe,33 D2 4C 8B 0B 48) // should be unique
alloc(newmem,$1000,GET_ADDR_POKER)
label(code)
label(return)
label(addrDeckPoker)
registersymbol(addrDeckPoker)
newmem:
jmp code
db 90
db 90
db 90
addrDeckPoker:
dq 0
db 90
db 90
db 90
db 90
code:
xor edx,edx
mov r9,[rbx]
mov [addrDeckPoker], rbx
jmp return
GET_ADDR_POKER:
jmp newmem
return:
registersymbol(GET_ADDR_POKER)
[DISABLE]
GET_ADDR_POKER:
db 33 D2 4C 8B 0B
unregistersymbol(GET_ADDR_POKER)
dealloc(newmem)
unregistersymbol(addrDeckPoker)
{
// ORIGINAL CODE - INJECTION POINT: RDR2.exe+2A96A76
RDR2.exe+2A96A47: 48 83 EB 18 - sub rbx,18
RDR2.exe+2A96A4B: F3 0F 10 4B 10 - movss xmm1,[rbx+10]
RDR2.exe+2A96A50: F3 0F 59 43 F0 - mulss xmm0,[rbx-10]
RDR2.exe+2A96A55: F3 0F 59 4B F8 - mulss xmm1,[rbx-08]
RDR2.exe+2A96A5A: F3 0F 11 43 F0 - movss [rbx-10],xmm0
RDR2.exe+2A96A5F: F3 0F 11 4B F8 - movss [rbx-08],xmm1
RDR2.exe+2A96A64: F3 0F 10 03 - movss xmm0,[rbx]
RDR2.exe+2A96A68: F3 41 0F 59 00 - mulss xmm0,[r8]
RDR2.exe+2A96A6D: E9 0B 08 00 00 - jmp RDR2.exe+2A9727D
RDR2.exe+2A96A72: 44 8B 43 F8 - mov r8d,[rbx-08]
// ---------- INJECTING HERE ----------
RDR2.exe+2A96A76: 33 D2 - xor edx,edx
// ---------- DONE INJECTING ----------
RDR2.exe+2A96A78: 4C 8B 0B - mov r9,[rbx]
RDR2.exe+2A96A7B: 48 83 EB 10 - sub rbx,10
RDR2.exe+2A96A7F: 45 85 C0 - test r8d,r8d
RDR2.exe+2A96A82: 0F 84 22 FB FF FF - je RDR2.exe+2A965AA
RDR2.exe+2A96A88: 48 8B 03 - mov rax,[rbx]
RDR2.exe+2A96A8B: 41 8B C8 - mov ecx,r8d
RDR2.exe+2A96A8E: 2B CA - sub ecx,edx
RDR2.exe+2A96A90: 48 83 EB 08 - sub rbx,08
RDR2.exe+2A96A94: FF C9 - dec ecx
RDR2.exe+2A96A96: FF C2 - inc edx
RDR2.exe+2A96A98: 49 89 04 C9 - mov [r9+rcx*8],rax
}
db 90
does nothing. just for looking good in disassembly.
Code: Select all
<CheatEntry>
<ID>22</ID>
<Description>"Card 1"</Description>
<LastState Value="3" RealAddress="1B4812FB4A8"/>
<ShowAsSigned>0</ShowAsSigned>
<VariableType>4 Bytes</VariableType>
<Address>[addrDeckPoker]+0x2BFAC0</Address>
</CheatEntry>
i think they're codes for suffling the cards.
RDR2.exe+2A96A98: 49 89 04 C9 - mov [r9+rcx*8],rax
was found on 'Find out what writes to this address'.
i don't know why there's some offset like +0x2BFAC0. and i'm not sure this offset is identical for every computer.
p.s.
this address also works for Black jack, too.