Red Dead Redemption 2 Cheats - RDR2 Cheat Table

Red Dead Redemption 2 Cheats - RDR2 Cheat Table 2020-07-27

Hexui Undetected CSGO Cheats PUBG Accounts
Red Dead Redemption 2 or RDR2 is one of the most anticipated games, probably ever. It's an open world cowboy game with some amazing story telling, akin to the Assassin's Creed & Far Cry series. I've been playing this game for about a month, and I am seriously impressed with Rockstar Studios. I had no idea this game was that good. Assasin's Creed & Far Cry are some of my favorite series, I easily sink 100 hours into each game. These games have amazing combat, story telling, dialogue and crafting and they really define the genre. But somehow Red Dead Redemption 2 is even better!

This RDR2 Cheat Table is actually pretty insane, it's got 10 important features. You can teleport your player using the script, it allows you to save and load positions so you can easily teleport in and out of towns and your camp. You can also use it to easily look up your XYZ coordinates. With this cheat table you can give yourself and your horse infinite health, infinite deadeye & infinite stamina. This will allow you to get into some crazy fights, typically you will die if you run into more than 15 lawmen or bounty hunters, but with this hack you can get into some pretty insane shoot outs. The best part of this RDR2 cheat is the infinite deadeye, the best part of the game is lining up all your shots in slow motion and then knocking them all down in sequence.

If you're reading this and you haven't tried this game yet, you really need to play it. It's worth the money. You can download this cheat by clicking the green button at the top right of the page.

Red Dead Redemption 2 Cheats - RDR2 Cheat Table
1595883967701.png


Checkout this RDR2 Hack also: Download - Red Dead Redemption 2 Hack

RDR2 Cheat Features
  • Player/Horse
  • Coordinates
  • Teleport
  • Coord Base
  • Coord - X
  • Coord - Y
  • Coord - Z
  • Save Position
  • Load Position
  • Undo Teleport
  • Vitality
  • Infinite Health - Arthur
  • Infinite Health - (Arthur +Costum models)
  • Infinite Health - Horse
  • Infinite DeadEye
  • Infinite Stamina
  • Infinite Stamina - Horse
  • PlayerBase
  • PlayerBase(AnyModel)
  • HorseBase
  • StaminaHorseBase
  • DeadEyeBase
  • StaminaBase
  • HealthBase
  • HealthBase - Horse
  • pStamina - Horse
  • pDeadEye
  • pStamina
  • pHealth
  • pHealthMax
  • pHealth - Horse
  • TimeOfDay (display)
  • Weapon
  • No Reload
  • Infinite Ammo
  • No Spread
  • Inventory
  • Inventory item Count
  • Selected item Count
  • Ammo
  • Money (Spent some to see effect)
  • Camera
  • Tactical Overview
  • _CamHeightVar (This value will be added/substracted)
  • Add Camera Height
  • Sub Camera Height
  • Reset Camera Height
  • World
  • Bounty Money
red dead 2 Cheat Engine Scripts
Main Cheat Script:
[ENABLE]
aobscanmodule(_Player,RDR2.exe,48 8B 03 4D 03 F6)
aobscanmodule(_VitaliySystem,RDR2.exe,0F 28 CE FF 50 40 0F 2F)
aobscanmodule(_StaminaHorseBase,RDR2.exe,49 8B CE F3 44 0F 10 60 20)
aobscanmodule(_InfiniteDeadEye,RDR2.exe,0F 28 C8 48 8B CB E8 ** ** ** ** 48 8B CB)
aobscanmodule(_StaminaBase,RDR2.exe,F3 0F 59 44 24 70 45 33)
aobscanmodule(_DeadEyeBase,RDR2.exe,0F 2F 70 20 72 11)
aobscanmodule(_GetPlayerHealthBase,RDR2.exe,48 8B 41 10 0F 2F 78 20 72 07)
aobscanmodule(_GodMode,RDR2.exe,48 8D 68 98 48 81 EC 30 01 00 00 41 F6)
aobscanmodule(_NoReload,RDR2.exe,0F 57 DB 0F 57 D2 8B)
aobscanmodule(_InfiniteAmmo,RDR2.exe,44 38 B1 B0 00 00 00)
aobscanmodule(_sPYcAM,RDR2.exe,41 0F 10 54 24 40 F3)
aobscanmodule(_HealthBaseHorse,RDR2.exe,48 8B 48 10 0F 2F 41 20 0F 82 10)
aobscanmodule(_GetpHorse,RDR2.exe,F2 48 8B 02 FF 90 B8 00 00 00 48)
aobscanmodule(_Money,RDR2.exe,03 70 28 48 83 C3 10)
aobscanmodule(_Bounty,RDR2.exe,8B 90 0C 72 00 00) //
aobscanmodule(_NoSpread,RDR2.exe,F3 0F 11 4B 10 F3 0F 10 05)
aobscanmodule(_GetpAnyModel,RDR2.exe,48 8B 01 FF 90 F0 00 00 00 4C 8B F0)
alloc(newmemPlayer,$1000,RDR2.exe)
alloc(_pAnyModelBase,8)
alloc(_pPlayer,8)
alloc(_enableInfiniteStaminaHorse,8)
alloc(_enableInfiniteDeadEye,8)
alloc(_enableInfiniteHealth,8)
alloc(_enableInfiniteHealthCostumModel,8)
alloc(_pStaminaHorse,8)
alloc(_pDeadEye,8)
alloc(_pStaminaBase,8)
alloc(_enableInfiniteStamina,8)
alloc(_pPlayerHealthBase,8)
alloc(_enableNoReload,8)
alloc(_enableInfiniteAmmo,8)
alloc(_addCamHeight,8)
alloc(_subCamHeight,8)
alloc(_ResetCamHeight,8)
alloc(_CamHeightVar,8)
alloc(_pHealthBaseHorse,8)
alloc(_enableInfiniteHealthHorse,8)
alloc(_pHorse,8)
alloc(_pMoney,8)
alloc(_pBounty,8)
alloc(_enableNoSpread,8)
registersymbol(_enableNoSpread)
registersymbol(_NoSpread)
registersymbol(_pBounty)
registersymbol(_Bounty)
registersymbol(_pMoney)
registersymbol(_Money)
registersymbol(_pHorse)
registersymbol(_GetpHorse)
registersymbol(_enableInfiniteHealthHorse)
registersymbol(_pHealthBaseHorse)
registersymbol(_HealthBaseHorse)
registersymbol(_enableInfiniteAmmo)
registersymbol(_InfiniteAmmo)
registersymbol(_enableNoReload)
registersymbol(_NoReload)
registersymbol(_pPlayer)
registersymbol(_Player)
registersymbol(_enableInfiniteHealth)
registersymbol(_enableInfiniteHealthCostumModel)
registersymbol(_pPlayerHealthBase)
registersymbol(_GetPlayerHealthBase)
registersymbol(_enableInfiniteStaminaHorse)
registersymbol(_enableInfiniteDeadEye)
registersymbol(_VitaliySystem)
registersymbol(_pDeadEye)
registersymbol(_DeadEyeBase)
registersymbol(_pStaminaHorse)
registersymbol(_StaminaHorseBase)
registersymbol(_InfiniteDeadEye)
registersymbol(_pStaminaBase)
registersymbol(_enableInfiniteStamina)
registersymbol(_StaminaBase)
registersymbol(_GodMode)
registersymbol(_addCamHeight)
registersymbol(_subCamHeight)
registersymbol(_ResetCamHeight)
registersymbol(_CamHeightVar)
registersymbol(_sPYcAM)
registersymbol(_pAnyModelBase)
registersymbol(_GetpAnyModel)

newmemPlayer:
mov [_pPlayer],rbx
codePlayer:
  mov rax,[rbx]
  add r14,r14
  jmp returnPlayer


newmem:
code:
  movaps xmm1,xmm6
  cmp rdi,[_pStaminaHorse]
  je StaminaHorse
  cmp rdi,[_pStaminaBase]
  je Stamina

Next:
  call qword ptr [rax+40]
  jmp return

StaminaHorse:
cmp [_enableInfiniteStaminaHorse],1
jne Next
jmp return

Stamina:
cmp [_enableInfiniteStamina],1
jne Next
jmp return


//////////////

newmemStaminaHorseBase:
mov [_pStaminaHorse],rax

codeStaminaHorseBase:
  mov rcx,r14
  movss xmm12,[rax+20]INJECT
  jmp returnStaminaHorseBase


newmemDeadEyeBase:
mov [_pDeadEye],rax
codeDeadEyeBase:
  comiss xmm6,[rax+20]
  jb _DeadEyeBase+17
  jmp returnDeadEyeBase

newmemInfiniteDeadEye:
cmp [_enableInfiniteDeadEye],1
jne codeInfiniteDeadEye
  mov rcx,rbx
  jmp returnInfiniteDeadEye

codeInfiniteDeadEye:
  movaps xmm1,xmm0
  mov rcx,rbx
  jmp returnInfiniteDeadEye

newmemStaminaBase:
mov [_pStaminaBase],rax
codeStaminaBase:
  movss xmm0,[rax+20]
  jmp returnStaminaBase

newmemHealthBase:

codeHealthBase:
  mov rax,[rcx+10]
  mov [_pPlayerHealthBase],rax
  comiss xmm7,[rax+20]
  jmp returnHealthBase


newmemGodMode:
cmp rdx,[_pPlayer]
je PlayerHealth
cmp rdx,[_pHorse]
je HorseHealth
cmp rdx,[_pAnyModelBase]
je PlayerHealthAnyModel
codeGodMode:
  mov rax,rsp
  mov [rax+08],rbx
  jmp returnGodMode

PlayerHealth:
cmp [_enableInfiniteHealth],1
jne codeGodMode
RET

HorseHealth:
cmp [_enableInfiniteHealthHorse],1
jne codeGodMode
RET

PlayerHealthAnyModel:
cmp [_enableInfiniteHealthCostumModel],1
jne codeGodMode
RET

newmemNoReload:
CMP rbx,[_pPlayer]
jne codeNoReload
cmp [_enableNoReload],1
jne codeNoReload
RET

codeNoReload:
  mov [rsp+08],rbx
  jmp returnNoReload


newmemInfiniteAmmo:
cmp [_enableInfiniteAmmo],1
jne codeInfiniteAmmo
RET
codeInfiniteAmmo:
  mov rax,rsp
  mov [rax+08],rbx
  jmp returnInfiniteAmmo



newmemsPYcAM:
cmp [_addCamHeight],1
je AddCamHeight
cmp [_subCamHeight],1
je SubCamHeight
cmp [_ResetCamHeight],1
je ResetCamHeight
jmp codesPYcAM


AddCamHeight:
mov [_addCamHeight],0
fld [r12+48]
fld [_CamHeightVar]
faddp
fstp [r12+48]
jmp codesPYcAM

SubCamHeight:
mov [_subCamHeight],0
cmp [r12+48],(float)1
jle ResetCamHeight
fld [r12+48]
fld [_CamHeightVar]
fsubp
fstp [r12+48]
jmp codesPYcAM


ResetCamHeight:
mov [_ResetCamHeight],0
mov [r12+48],(float)1
jmp codesPYcAM
codesPYcAM:
  movups xmm2,[r12+40]
  jmp returnsPYcAM


newmemHealthBaseHorse:
codeHealthBaseHorse:
  mov rcx,[rax+10]
  mov [_pHealthBaseHorse],rcx
  comiss xmm0,[rcx+20]
  jmp returnHealthBaseHorse


newmemGetpHorse:
   mov [_pHorse],rdx
codeGetpHorse:
  mov rax,[rdx]
  call qword ptr [rax+000000B8]
  jmp returnGetpHorse


newmemMoney:
mov [_pMoney],rax
codeMoney:
  add esi,[rax+28]
  add rbx,10
  jmp returnMoney

newmemBounty:
mov [_pBounty],rax
codeBounty:
  mov edx,[rax+0000720C]
  jmp returnBounty


newmemNoSpread:
cmp [_enableNoSpread],1
jne codeNoSpread
mov [rbx+10],0
jmp returnNoSpread

codeNoSpread:
movss [rbx+10],xmm1
jmp returnNoSpread

newmemNoSpread2:
cmp [_enableNoSpread],1
jne codeNoSpread
mov [rbx+10],0
codeNoSpread2:
  movss xmm1,[rbx+10]
  jmp returnNoSpread2

pAnyModelmem:
mov [_pAnyModelBase],rcx
pAnyModelcode:
  mov rax,[rcx]
  call qword ptr [rax+000000F0]
  jmp pAnyModelreturn


_Player:
  jmp newmemPlayer
  nop
returnPlayer:

_VitaliySystem:
  jmp newmem
  nop
return:

_StaminaHorseBase:
  jmp newmemStaminaHorseBase
  nop
  nop
  nop
  nop
returnStaminaHorseBase:

_DeadEyeBase:
  jmp newmemDeadEyeBase
  nop
returnDeadEyeBase:

_InfiniteDeadEye:
  jmp newmemInfiniteDeadEye
  nop
returnInfiniteDeadEye:

_StaminaBase+37:
  jmp newmemStaminaBase
returnStaminaBase:

_GetPlayerHealthBase:
  jmp newmemHealthBase
  nop
  nop
  nop
returnHealthBase:


_GodMode-1A:
  jmp newmemGodMode
  nop
  nop
returnGodMode:


_NoReload-3D:
  jmp newmemNoReload
returnNoReload:

_InfiniteAmmo-24:
  jmp newmemInfiniteAmmo
  nop
  nop
returnInfiniteAmmo:


_sPYcAM:
  jmp newmemsPYcAM
  nop
returnsPYcAM:


_HealthBaseHorse:
  jmp newmemHealthBaseHorse
  nop
  nop
  nop
returnHealthBaseHorse:

_GetpHorse+01:
  jmp newmemGetpHorse
  nop
  nop
  nop
  nop
returnGetpHorse:

_Money:
  jmp newmemMoney
  nop
  nop
returnMoney:

_Bounty:
  jmp newmemBounty
  nop
returnBounty:


_NoSpread:
  jmp newmemNoSpread
returnNoSpread:

_NoSpread-C:
  jmp newmemNoSpread2
returnNoSpread2:

_GetpAnyModel:
  jmp pAnyModelmem
  nop
  nop
  nop
  nop
pAnyModelreturn:

_pPlayer:
dq 0
_enableInfiniteStaminaHorse:
dd 0
_enableInfiniteDeadEye:
dd 0
_pStaminaHorse:
dd 0
_pDeadEye:
dd 0
_pStaminaBase:
dd 0
_enableInfiniteStamina:
dd 0
_pPlayerHealthBase:
dd 0
_enableInfiniteHealth:
dd 0
_enableNoReload:
dd 0
_enableInfiniteAmmo:
dd 0
_addCamHeight:
dd 0
_subCamHeight:
dd 0
_ResetCamHeight:
dd 0
_CamHeightVar:
dq (float)1
_pHealthBaseHorse:
dd 0
_enableInfiniteHealthHorse:
dd 0
_pHorse:
dd 0
_pMoney:
dd 0
_pBounty:
dd 0
_enableNoSpread:
dd 0
_pAnyModelBase:
dq 0
[DISABLE]

_Player:
  db 48 8B 03 4D 03 F6
_VitaliySystem:
  db 0F 28 CE FF 50 40
_StaminaHorseBase:
  db 49 8B CE F3 44 0F 10 60 20
_DeadEyeBase:
  db 0F 2F 70 20 72 11
_InfiniteDeadEye:
  db 0F 28 C8 48 8B CB
_StaminaBase+37:
  db F3 0F 10 40 20
_GetPlayerHealthBase:
  db 48 8B 41 10 0F 2F 78 20
_GodMode-1A:
  db 48 8B C4 48 89 58 08
_NoReload-3D:
  db 48 89 5C 24 08
_InfiniteAmmo-24:
  db 48 8B C4 48 89 58 08
_sPYcAM:
  db 41 0F 10 54 24 40
_HealthBaseHorse:
  db 48 8B 48 10 0F 2F 41 20
_GetpHorse+01:
  db 48 8B 02 FF 90 B8 00 00 00
_Money:
  db 03 70 28 48 83 C3 10
_Bounty:
  db 8B 90 0C 72 00 00
_NoSpread:
  db F3 0F 11 4B 10
_NoSpread-C:
  db F3 0F 10 4B 10
_GetpAnyModel:
  db 48 8B 01 FF 90 F0 00 00 00


dealloc(newmemPlayer)
dealloc(_pPlayer)
dealloc(_enableInfiniteStaminaHorse)
dealloc(_enableInfiniteDeadEye)
dealloc(_enableInfiniteHealth)
dealloc(_pStaminaHorse)
dealloc(_pDeadEye)
dealloc(_pStaminaBase)
dealloc(_enableInfiniteStamina)
dealloc(_pPlayerHealthBase)
dealloc(_enableNoReload)
dealloc(_enableInfiniteAmmo)
dealloc(_addCamHeight)
dealloc(_subCamHeight)
dealloc(_ResetCamHeight)
dealloc(_CamHeightVar)
dealloc(_pHealthBaseHorse)
dealloc(_enableInfiniteHealthHorse)
dealloc(_pHorse)
dealloc(_pMoney)
dealloc(_pBounty)
dealloc(_enableNoSpread)
dealloc(_enableInfiniteHealthCostumModel)
unregistersymbol(_GetpAnyModel)
unregistersymbol(_pAnyModelBase)
dealloc(_pAnyModelBase)
unregistersymbol(_enableInfiniteHealthCostumModel)
unregistersymbol(_enableNoSpread)
unregistersymbol(_NoSpread)
unregistersymbol(_pBounty)
unregistersymbol(_Bounty)
unregistersymbol(_pMoney)
unregistersymbol(_Money)
unregistersymbol(_pHorse)
unregistersymbol(_GetpHorse)
unregistersymbol(_enableInfiniteHealthHorse)
unregistersymbol(_pHealthBaseHorse)
unregistersymbol(_HealthBaseHorse)
unregistersymbol(_enableInfiniteAmmo)
unregistersymbol(_InfiniteAmmo)
unregistersymbol(_enableNoReload)
unregistersymbol(_NoReload)
unregistersymbol(_pPlayer)
unregistersymbol(_Player)
unregistersymbol(_enableInfiniteHealth)
unregistersymbol(_pPlayerHealthBase)
unregistersymbol(_GetPlayerHealthBase)
unregistersymbol(_enableInfiniteStaminaHorse)
unregistersymbol(_enableInfiniteDeadEye)
unregistersymbol(_VitaliySystem)
unregistersymbol(_pDeadEye)
unregistersymbol(_DeadEyeBase)
unregistersymbol(_pStaminaHorse)
unregistersymbol(_StaminaHorseBase)
unregistersymbol(_InfiniteDeadEye)
unregistersymbol(_pStaminaBase)
unregistersymbol(_enableInfiniteStamina)
unregistersymbol(_StaminaBase)
unregistersymbol(_GodMode)
unregistersymbol(_addCamHeight)
unregistersymbol(_subCamHeight)
unregistersymbol(_ResetCamHeight)
unregistersymbol(_CamHeightVar)
unregistersymbol(_sPYcAM)
{
// ORIGINAL CODE - INJECTION POINT: "RDR2.exe"+4277D2

"RDR2.exe"+4277B0: B0 01              -  mov al,01
"RDR2.exe"+4277B2: EB C4              -  jmp RDR2.exe+427778
"RDR2.exe"+4277B4: 40 53              -  push rbx
"RDR2.exe"+4277B6: 48 83 EC 20        -  sub rsp,20
"RDR2.exe"+4277BA: E8 F9 F0 5E 02     -  call RDR2.exe+2A168B8
"RDR2.exe"+4277BF: 48 8B D8           -  mov rbx,rax
"RDR2.exe"+4277C2: 48 85 C0           -  test rax,rax
"RDR2.exe"+4277C5: 74 22              -  je RDR2.exe+4277E9
"RDR2.exe"+4277C7: 8B 0D 1F DE 4A 03  -  mov ecx,[RDR2.exe+38D55EC]
"RDR2.exe"+4277CD: 48 8D 54 24 38     -  lea rdx,[rsp+38]
// ---------- INJECTING HERE ----------
"RDR2.exe"+4277D2: 4C 8B 00           -  mov r8,[rax]
"RDR2.exe"+4277D5: 89 4C 24 38        -  mov [rsp+38],ecx
// ---------- DONE INJECTING  ----------
"RDR2.exe"+4277D9: 48 8B C8           -  mov rcx,rax
"RDR2.exe"+4277DC: 41 FF 50 08        -  call qword ptr [r8+08]
"RDR2.exe"+4277E0: 84 C0              -  test al,al
"RDR2.exe"+4277E2: 74 05              -  je RDR2.exe+4277E9
"RDR2.exe"+4277E4: 48 8B C3           -  mov rax,rbx
"RDR2.exe"+4277E7: EB 02              -  jmp RDR2.exe+4277EB
"RDR2.exe"+4277E9: 33 C0              -  xor eax,eax
"RDR2.exe"+4277EB: 48 83 C4 20        -  add rsp,20
"RDR2.exe"+4277EF: 5B                 -  pop rbx
"RDR2.exe"+4277F0: C3                 -  ret
}
Teleporter:
[ENABLE]
aobscanmodule(_Teleport,RDR2.exe,EB 23 F3 41 0F 6F 47 70) // should be unique
alloc(newmem,$1000,"RDR2.exe"+66AC6F)
alloc(_xPos,8)
alloc(_yPos,8)
alloc(_zPos,8)
alloc(_xPosUndo,8)
alloc(_yPosUndo,8)
alloc(_zPosUndo,8)
alloc(_savePos,8)
alloc(_loadPos,8)
alloc(_undoPos,8)
alloc(_pPos,8)
registersymbol(_pPos)
registersymbol(_xPos)
registersymbol(_yPos)
registersymbol(_zPos)
registersymbol(_xPosUndo)
registersymbol(_yPosUndo)
registersymbol(_zPosUndo)
registersymbol(_savePos)
registersymbol(_loadPos)
registersymbol(_undoPos)
registersymbol(_Teleport)
label(code)
label(return)

newmem:
cmp r14,[_pPlayer]
jne code
  movdqu xmm0,[r15+70]
mov [_pPos],r15
cmp [_savePos],1
je Save
cmp [_loadPos],1
je Load
cmp [_undoPos],1
je Undo
jmp code

Save:
mov [_savePos],0
push rax
mov rax,[r15+70]
mov [_xPos],rax
mov rax,[r15+74]
mov [_yPos],rax
mov rax,[r15+78]
mov [_zPos],rax
pop rax
jmp code

Load:
mov [_loadPos],0
///
push rax
mov rax,[r15+70]
mov [_xPosUndo],rax
mov rax,[r15+74]
mov [_yPosUndo],rax
mov rax,[r15+78]
mov [_zPosUndo],rax

///
mov rax,[_xPos]
mov [r15+70],rax
mov rax,[_yPos]
mov [r15+74],rax
mov rax,[_zPos]
mov [r15+78],rax
pop rax
jmp code

Undo:
mov [_undoPos],0
push rax
mov rax,[_xPosUndo]
mov [r15+70],rax
mov rax,[_yPosUndo]
mov [r15+74],rax
mov rax,[_zPosUndo]
mov [r15+78],rax
pop rax
jmp code


code:
  movdqu xmm0,[r15+70]
  jmp return

_Teleport+02:
  jmp newmem
  nop
return:

_xPos:
dd 0
_yPos:
dd 0
_zPos:
dd 0
_xPosUndo:
dd 0
_yPosUndo:
dd 0
_zPosUndo:
dd 0
_savePos:
dd 0
_loadPos:
dd 0
_undoPos:
dd 0
[DISABLE]

_Teleport+02:
  db F3 41 0F 6F 47 70

unregistersymbol(_Teleport)
dealloc(_xPos,8)
dealloc(_yPos,8)
dealloc(_zPos,8)
dealloc(_xPosUndo,8)
dealloc(_yPosUndo,8)
dealloc(_zPosUndo,8)
dealloc(_savePos,8)
dealloc(_loadPos,8)
dealloc(_undoPos,8)
dealloc(newmem)
unregistersymbol(_xPos)
unregistersymbol(_yPos)
unregistersymbol(_zPos)
unregistersymbol(_xPosUndo)
unregistersymbol(_yPosUndo)
unregistersymbol(_zPosUndo)
unregistersymbol(_savePos)
unregistersymbol(_loadPos)
unregistersymbol(_undoPos)
unregistersymbol(_Teleport)


{
// ORIGINAL CODE - INJECTION POINT: "RDR2.exe"+66AC6F

"RDR2.exe"+66AC45: E8 0A 59 CE FF        -  call RDR2.exe+350554
"RDR2.exe"+66AC4A: 0F 28 55 87           -  movaps xmm2,[rbp-79]
"RDR2.exe"+66AC4E: 66 0F 6F C2           -  movdqa xmm0,xmm2
"RDR2.exe"+66AC52: 66 0F 69 C2           -  punpckhwd xmm0,xmm2
"RDR2.exe"+66AC56: 66 0F 72 E0 10        -  psrad ,xmm010
"RDR2.exe"+66AC5B: 0F 5B C0              -  cvtdq2ps xmm0,xmm0
"RDR2.exe"+66AC5E: 66 0F 70 C8 EE        -  pshufd xmm1,xmm0-12
"RDR2.exe"+66AC63: 0F 59 0D 66 18 B8 02  -  mulps xmm1,[RDR2.exe+31EC4D0]
"RDR2.exe"+66AC6A: 0F 58 CA              -  addps xmm1,xmm2
"RDR2.exe"+66AC6D: EB 23                 -  jmp RDR2.exe+66AC92
// ---------- INJECTING HERE ----------
"RDR2.exe"+66AC6F: F3 41 0F 6F 47 70     -  movdqu xmm0,[r15+70]
// ---------- DONE INJECTING  ----------
"RDR2.exe"+66AC75: 66 0F 69 C0           -  punpckhwd xmm0,xmm0
"RDR2.exe"+66AC79: 66 0F 72 E0 10        -  psrad ,xmm010
"RDR2.exe"+66AC7E: 0F 5B C0              -  cvtdq2ps xmm0,xmm0
"RDR2.exe"+66AC81: 66 0F 70 C8 EE        -  pshufd xmm1,xmm0-12
"RDR2.exe"+66AC86: 0F 59 0D 43 18 B8 02  -  mulps xmm1,[RDR2.exe+31EC4D0]
"RDR2.exe"+66AC8D: 41 0F 58 4F 70        -  addps xmm1,[r15+70]
"RDR2.exe"+66AC92: 0F 29 4C 24 20        -  movaps [rsp+20],xmm1
"RDR2.exe"+66AC97: 48 8D 7C 24 20        -  lea rdi,[rsp+20]
"RDR2.exe"+66AC9C: F3 0F 6F 37           -  movdqu xmm6,[rdi]
"RDR2.exe"+66ACA0: 33 C9                 -  xor ecx,ecx
}
Inventory item hack:
[ENABLE]

aobscanmodule(_Inventory,RDR2.exe,48 8B 40 28 48 01 07) // should be unique
alloc(newmem,$1000,"RDR2.exe"+7153E3)
alloc(_pInvItemCount,8)
alloc(_pAmmo,8)
registersymbol(_pAmmo)
registersymbol(_pInvItemCount)
registersymbol(_Inventory)
label(code)
label(return)

newmem:
push rdx
mov rdx,[rax+40]
cmp [rdx+30],00010001
je Check
cmp [rdx+30],00030003
je Check1
cmp [rdx+30],00000000
je code
mov [_pInvItemCount],rax
code:
pop rdx
  mov rax,[rax+28]
  add [rdi],rax
  jmp return

Check:
cmp [rdx+1C],00500000 // Ammo
je Ammo
jmp code

Check1:
cmp [rdx+1C],02100000
je Item
jmp code

Ammo:
mov [_pAmmo],rax
jmp code
Item:
mov [_pInvItemCount],rax
jmp code

_Inventory:
  jmp newmem
  nop
  nop
return:

_pInvItemCount:
dd 0
_pAmmo:
dd 0
[DISABLE]

_Inventory:
  db 48 8B 40 28 48 01 07

unregistersymbol(_Inventory)
unregistersymbol(_pInvItemCount)
unregistersymbol(_pAmmo)
dealloc(_pAmmo)
dealloc(_pInvItemCount)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "RDR2.exe"+7153E3

"RDR2.exe"+7153C1: 49 8B 47 10              -  mov rax,[r15+10]
"RDR2.exe"+7153C5: 8D 4E FF                 -  lea ecx,[rsi-01]
"RDR2.exe"+7153C8: 48 03 C9                 -  add rcx,rcx
"RDR2.exe"+7153CB: 41 8B D4                 -  mov edx,r12d
"RDR2.exe"+7153CE: 44 8B 44 C8 0C           -  mov r8d,[rax+rcx*8+0C]
"RDR2.exe"+7153D3: 49 8B C9                 -  mov rcx,r9
"RDR2.exe"+7153D6: E8 A9 DA 01 00           -  call RDR2.exe+732E84
"RDR2.exe"+7153DB: 45 33 C0                 -  xor r8d,r8d
"RDR2.exe"+7153DE: 48 85 C0                 -  test rax,rax
"RDR2.exe"+7153E1: 74 07                    -  je RDR2.exe+7153EA
// ---------- INJECTING HERE ----------
"RDR2.exe"+7153E3: 48 8B 40 28              -  mov rax,[rax+28]
"RDR2.exe"+7153E7: 48 01 07                 -  add [rdi],rax
// ---------- DONE INJECTING  ----------
"RDR2.exe"+7153EA: 41 0F B7 46 18           -  movzx eax,word ptr [r14+18]
"RDR2.exe"+7153EF: FF C5                    -  inc ebp
"RDR2.exe"+7153F1: 3B E8                    -  cmp ebp,eax
"RDR2.exe"+7153F3: 0F 8C FC FE FF FF        -  jl RDR2.exe+7152F5
"RDR2.exe"+7153F9: 48 8B 5C 24 50           -  mov rbx,[rsp+50]
"RDR2.exe"+7153FE: 48 8B 6C 24 58           -  mov rbp,[rsp+58]
"RDR2.exe"+715403: 48 8B 74 24 60           -  mov rsi,[rsp+60]
"RDR2.exe"+715408: 48 83 C4 20              -  add rsp,20
"RDR2.exe"+71540C: 41 5F                    -  pop r15
"RDR2.exe"+71540E: 41 5E                    -  pop r14
}
Author
l0wb1t
Downloads
249
Views
6,215
First release
Last update
Rating
0.00 star(s) 0 ratings

More resources from l0wb1t

Similar resources
Community Mods