<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="51">
  <CheatEntries>
    <CheatEntry>
      <ID>315694</ID>
      <Description>"Enable | v1.0Z"</Description>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>//  ███╗   ███╗██╗   ██╗██╗      ██████╗
//  ████╗ ████║██║   ██║██║     ██╔═████╗
//  ██╔████╔██║██║   ██║██║     ██║██╔██║
//  ██║╚██╔╝██║██║   ██║██║     ████╔╝██║
//  ██║ ╚═╝ ██║╚██████╔╝███████╗╚██████╔╝
//  ╚═╝     ╚═╝ ╚═════╝ ╚══════╝ ╚═════╝
//  🎯 Game    : COB-Win64-Shipping.exe
//  🧾 Version : v1.0Z
//  📅 Date    : 01-03-2022
//  🧠 Author  : mul0
//  🌐 Site    : https://mul0.com/

[ENABLE]
{$lua}
if syntaxcheck then return end

createThread(function()
local i = 0
while(AddressList.getMemoryRecordByDescription("getFOV").Active ~= true)
do
  if(i&gt;15) then break end
  sleep(500)
  AddressList.getMemoryRecordByDescription("getBase").Active = true
  AddressList.getMemoryRecordByDescription("getTimescale").Active = true
  AddressList.getMemoryRecordByDescription("getSpeed").Active = true
  AddressList.getMemoryRecordByDescription("getJumpHeight").Active = true
  AddressList.getMemoryRecordByDescription("Teleport").Active = true
  AddressList.getMemoryRecordByDescription("getFOV").Active = true
  i = i+1
end
end)

{$asm}

aobscanmodule(getPlayer,$process,488B40??4885C074??F680????????02)
label(getPlayer_o)
registersymbol(getPlayer_o)

define(midjumpmem, $process+500)
fullaccess(midjumpmem, $1000)

alloc(baseHook, 0x1000)
registersymbol(baseHook)

label(LocalPlayer)
label(return)
label(PlayerController)
label(PlayerCharacter)

registersymbol(LocalPlayer)
registersymbol(PlayerController)
registersymbol(PlayerCharacter)

baseHook:
  push rbx
  mov [LocalPlayer],rax
  mov rbx,[rax+30]
  test rbx,rbx
  jz short @f
  mov [PlayerController],rbx
  mov rbx,[rbx+2A0]
  test rbx,rbx
  jz short @f
  mov [PlayerCharacter],rbx

@@:
  pop rbx

getPlayer_o:
  readmem( getPlayer, 7 )
  jmp return

align 10 CC

LocalPlayer:
  dq 0

align 10 CC

PlayerController:
  dq 0

align 10 CC

PlayerCharacter:
  dq 0

align 10 CC

midjumpmem:
jmp baseHook

align 10 CC

getPlayer:
  jmp midjumpmem
  nop 2
return:
registersymbol(getPlayer)

[DISABLE]

{$lua}
if syntaxcheck then return end
  AddressList.getMemoryRecordByDescription("getBase").Active = false
  AddressList.getMemoryRecordByDescription("getTimescale").Active = false
  AddressList.getMemoryRecordByDescription("getSpeed").Active = false
  AddressList.getMemoryRecordByDescription("getJumpHeight").Active = false
  AddressList.getMemoryRecordByDescription("Teleport").Active = false
  AddressList.getMemoryRecordByDescription("getFOV").Active = false
{$asm}

getPlayer:
  readmem( getPlayer_o, 7)

unregistersymbol(LocalPlayer)
unregistersymbol(PlayerController)
unregistersymbol(PlayerCharacter)
unregistersymbol(baseHook)
unregistersymbol(getPlayer_o)
unregistersymbol( Trampolines )
unregistersymbol( getPlayer )
dealloc(baseHook)
</AssemblerScript>
      <Hotkeys>
        <Hotkey>
          <Action>Toggle Activation</Action>
          <Keys>
            <Key>112</Key>
          </Keys>
          <ID>0</ID>
        </Hotkey>
      </Hotkeys>
      <CheatEntries>
        <CheatEntry>
          <ID>315695</ID>
          <Description>"LocalPlayer"</Description>
          <Options moHideChildren="1"/>
          <VariableType>8 Bytes</VariableType>
          <Address>[LocalPlayer]+0</Address>
          <CheatEntries>
            <CheatEntry>
              <ID>315696</ID>
              <Description>"PlayerController"</Description>
              <VariableType>8 Bytes</VariableType>
              <Address>[PlayerController]+0</Address>
              <CheatEntries>
                <CheatEntry>
                  <ID>315697</ID>
                  <Description>"PlayerCharacter"</Description>
                  <VariableType>8 Bytes</VariableType>
                  <Address>[PlayerCharacter]+0</Address>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>315698</ID>
                      <Description>"bCanBeDamaged"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>+59</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315699</ID>
                      <Description>"Timescale"</Description>
                      <VariableType>Float</VariableType>
                      <Address>+98</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315700</ID>
                      <Description>"RootComponent"</Description>
                      <VariableType>8 Bytes</VariableType>
                      <Address>[[PlayerCharacter]+130]+0</Address>
                      <CheatEntries>
                        <CheatEntry>
                          <ID>315701</ID>
                          <Description>"X_Coord"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+1D0</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315702</ID>
                          <Description>"Y_Coord"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+1D4</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315703</ID>
                          <Description>"Z_Coord"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+1D8</Address>
                        </CheatEntry>
                      </CheatEntries>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315815</ID>
                      <Description>"PlayerState"</Description>
                      <VariableType>8 Bytes</VariableType>
                      <Address>[[PlayerCharacter]+240]+0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315818</ID>
                      <Description>"CharacterMovement"</Description>
                      <VariableType>8 Bytes</VariableType>
                      <Address>[[PlayerCharacter]+288]+0</Address>
                      <CheatEntries>
                        <CheatEntry>
                          <ID>315819</ID>
                          <Description>"JumpZVelocity"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+158</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315820</ID>
                          <Description>"MaxWalkSpeed"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+18C</Address>
                        </CheatEntry>
                      </CheatEntries>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315823</ID>
                      <Description>"BP_AttributeComponent"</Description>
                      <VariableType>8 Bytes</VariableType>
                      <Address>+5F8</Address>
                      <Offsets>
                        <Offset>0</Offset>
                      </Offsets>
                      <CheatEntries>
                        <CheatEntry>
                          <ID>315824</ID>
                          <Description>"Health"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+B8</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315825</ID>
                          <Description>"Stamina"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+BC</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315826</ID>
                          <Description>"Hunger"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+C0</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315827</ID>
                          <Description>"Thirst"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+E8</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315828</ID>
                          <Description>"Infection"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+EC</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315829</ID>
                          <Description>"Temperature"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+F0</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315830</ID>
                          <Description>"MaxAttributeValue"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+F4</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315833</ID>
                          <Description>"GodMode?"</Description>
                          <VariableType>Byte</VariableType>
                          <Address>+350</Address>
                        </CheatEntry>
                      </CheatEntries>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315847</ID>
                      <Description>"Inventory_Component"</Description>
                      <VariableType>8 Bytes</VariableType>
                      <Address>+620</Address>
                      <Offsets>
                        <Offset>0</Offset>
                      </Offsets>
                      <CheatEntries>
                        <CheatEntry>
                          <ID>315848</ID>
                          <Description>"CurrentWeight"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+158</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315849</ID>
                          <Description>"Edit: Max Weight"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+15C</Address>
                        </CheatEntry>
                      </CheatEntries>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315877</ID>
                      <Description>"HealthMax"</Description>
                      <VariableType>Float</VariableType>
                      <Address>+670</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315853</ID>
                      <Description>"EquippedWeapon"</Description>
                      <VariableType>8 Bytes</VariableType>
                      <Address>+678</Address>
                      <Offsets>
                        <Offset>0</Offset>
                      </Offsets>
                      <CheatEntries>
                        <CheatEntry>
                          <ID>315854</ID>
                          <Description>"AmmoMax"</Description>
                          <VariableType>4 Bytes</VariableType>
                          <Address>+268</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315855</ID>
                          <Description>"AmmoCurrent"</Description>
                          <VariableType>4 Bytes</VariableType>
                          <Address>+26C</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315856</ID>
                          <Description>"AmmoInReserve"</Description>
                          <VariableType>4 Bytes</VariableType>
                          <Address>+278</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315861</ID>
                          <Description>"Damage"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+2A8</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315862</ID>
                          <Description>"Firerate"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+2AC</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315863</ID>
                          <Description>"DelayBetweenShots"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+2B0</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315864</ID>
                          <Description>"Automatic"</Description>
                          <VariableType>Byte</VariableType>
                          <Address>+2C0</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315857</ID>
                          <Description>"AmmoNeeded"</Description>
                          <VariableType>4 Bytes</VariableType>
                          <Address>+318</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315859</ID>
                          <Description>"Spread"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+320</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315860</ID>
                          <Description>"AmmoInReserveMax"</Description>
                          <VariableType>4 Bytes</VariableType>
                          <Address>+324</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315865</ID>
                          <Description>"Edit: Equipped Weapon Durability"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+3E8</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315866</ID>
                          <Description>"Edit: Equipped Weapon Max Durability"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+3EC</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315867</ID>
                          <Description>"CrossHairSpread"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+458</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315868</ID>
                          <Description>"SpreadMultiplier"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+4D0</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315869</ID>
                          <Description>"ImmunetoBreak"</Description>
                          <VariableType>Byte</VariableType>
                          <Address>+509</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315870</ID>
                          <Description>"WeaponRecoil.X"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+5C0</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315873</ID>
                          <Description>"WeaponRecoil.Y"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+5C4</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315872</ID>
                          <Description>"RecoilModifier"</Description>
                          <VariableType>4 Bytes</VariableType>
                          <Address>+5C8</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315874</ID>
                          <Description>"WeaponJammed?"</Description>
                          <VariableType>Byte</VariableType>
                          <Address>+5CD</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315875</ID>
                          <Description>"AmmoDamage.DamageMultiplier"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+610</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>315876</ID>
                          <Description>"SwayMultiplier"</Description>
                          <VariableType>Float</VariableType>
                          <Address>+624</Address>
                        </CheatEntry>
                      </CheatEntries>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315878</ID>
                      <Description>"IsPlayerOne"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>+6E0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315879</ID>
                      <Description>"GasMaskEquiped"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>+750</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315880</ID>
                      <Description>"HungerMax"</Description>
                      <VariableType>Float</VariableType>
                      <Address>+7A4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315881</ID>
                      <Description>"ThirstMax"</Description>
                      <VariableType>Float</VariableType>
                      <Address>+7B0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315882</ID>
                      <Description>"StaminaMax"</Description>
                      <VariableType>Float</VariableType>
                      <Address>+7BC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315883</ID>
                      <Description>"AmmoCurrent"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>+80C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315884</ID>
                      <Description>"AmmoReserve"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>+810</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315896</ID>
                      <Description>"HitActor"</Description>
                      <VariableType>8 Bytes</VariableType>
                      <Address>+AD8</Address>
                      <Offsets>
                        <Offset>0</Offset>
                      </Offsets>
                      <CheatEntries>
                        <CheatEntry>
                          <ID>315898</ID>
                          <Description>"BuildingData.RequiredResources"</Description>
                          <VariableType>8 Bytes</VariableType>
                          <Address>+418</Address>
                          <Offsets>
                            <Offset>0</Offset>
                          </Offsets>
                          <CheatEntries>
                            <CheatEntry>
                              <ID>315899</ID>
                              <Description>"Resource1"</Description>
                              <VariableType>4 Bytes</VariableType>
                              <Address>+4</Address>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>315900</ID>
                              <Description>"Resource2"</Description>
                              <VariableType>4 Bytes</VariableType>
                              <Address>+C</Address>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>315901</ID>
                              <Description>"Resource3"</Description>
                              <VariableType>4 Bytes</VariableType>
                              <Address>+14</Address>
                            </CheatEntry>
                          </CheatEntries>
                        </CheatEntry>
                      </CheatEntries>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315887</ID>
                      <Description>"GodMode?"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>+12E0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315888</ID>
                      <Description>"CurrentWeight"</Description>
                      <VariableType>Float</VariableType>
                      <Address>+13E4</Address>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>315841</ID>
                  <Description>"ProgressionComponent"</Description>
                  <VariableType>8 Bytes</VariableType>
                  <Address>+5D0</Address>
                  <Offsets>
                    <Offset>0</Offset>
                  </Offsets>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>315843</ID>
                      <Description>"CurrentXP"</Description>
                      <VariableType>Float</VariableType>
                      <Address>+BC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315842</ID>
                      <Description>"MaxLevel"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>+D0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315920</ID>
                      <Description>"Level"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>+D4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315845</ID>
                      <Description>"Edit: Skill Points"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>+11C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315844</ID>
                      <Description>"XP_Required"</Description>
                      <VariableType>Float</VariableType>
                      <Address>+15C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>315846</ID>
                      <Description>"StoredXP"</Description>
                      <VariableType>Float</VariableType>
                      <Address>+CC</Address>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>315766</ID>
              <Description>"ViewportClient"</Description>
              <VariableType>8 Bytes</VariableType>
              <Address>[[LocalPlayer]+70]+0</Address>
              <CheatEntries>
                <CheatEntry>
                  <ID>315767</ID>
                  <Description>"GameInstance"</Description>
                  <VariableType>8 Bytes</VariableType>
                  <Address>[[[LocalPlayer]+70]+80]+0</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>315834</ID>
          <Description>"getBase"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>//  ███╗   ███╗██╗   ██╗██╗      ██████╗
//  ████╗ ████║██║   ██║██║     ██╔═████╗
//  ██╔████╔██║██║   ██║██║     ██║██╔██║
//  ██║╚██╔╝██║██║   ██║██║     ████╔╝██║
//  ██║ ╚═╝ ██║╚██████╔╝███████╗╚██████╔╝
//  ╚═╝     ╚═╝ ╚═════╝ ╚══════╝ ╚═════╝
//  🎯 Game    : COB-Win64-Shipping.exe
//  🧾 Version : v1.0Z
//  📅 Date    : 01-03-2022
//  🧠 Author  : mul0
//  🌐 Site    : https://mul0.com/

[ENABLE]
aobscanmodule(base_AOB,$process,4Cxxxx4Cxxxxxxxx488Bxx488Bxx41FFxxxxxxxxxx4883)
alloc(playerHook,0x1000)
registersymbol(playerHook)
alloc(XMM15Save,8)

define(midjumpmem, $process+550)
fullaccess(midjumpmem, $1000)

label(code_base)
label(return)
label(exit)

label(hpflag)
label(stamflag)
label(foodflag)
label(waterflag)
label(infectflag)
label(tempflag)
label(weightflag)
label(zero)
label(reloadflag)
label(falldmgflag)
label(fuelflag)

registersymbol(code_base)
registersymbol(hpflag)
registersymbol(stamflag)
registersymbol(foodflag)
registersymbol(waterflag)
registersymbol(infectflag)
registersymbol(tempflag)
registersymbol(weightflag)
registersymbol(reloadflag)
registersymbol(falldmgflag)
registersymbol(fuelflag)

playerHook:
  push r9
{$try}
  movss [XMM15Save],xmm15
  mov r9,PlayerCharacter
  mov r9,[r9]
  test r9,r9
  je exit
  cmp rdi,r9
  jne exit
  cmp byte ptr [rdi+609],01 // IsInCar
  je @car
  mov r9,[rdi+5F8] // AttributeComponent
  test r9,r9
  je exit
  movss xmm15,[r9+F4] // MaxAttributeValue
  comiss xmm15,[zero]
  jle exit
@@:
  cmp [hpflag],1
  jne @f
  movss [r9+B8],xmm15
  mov byte ptr [r9+50E],01 // IgnoreBleed?

@@:
  cmp [hpflag],2
  jne @f
  mov byte ptr [r9+50E],00
  mov [hpflag],0

@@:
  cmp [stamflag],1
  jne @f
  movss [r9+BC],xmm15

@@:
  cmp [foodflag],1
  jne @f
  movss [r9+C0],xmm15

@@:
  cmp [waterflag],1
  jne @f
  movss [r9+E8],xmm15

@@:
  cmp [infectflag],1
  jne @f
  movss [r9+EC],xmm15
  mov byte ptr [rdi+1BC8],01 // IsImmune
  mov [r9+560],0 // InfectionMeter

@@:
  cmp [infectflag],2
  jne @f
  mov byte ptr [rdi+1BC8],0
  mov [infectflag],0

@@:
  cmp [tempflag],1
  jne @f
  movss [r9+F0],xmm15

@@:
  cmp [weightflag],1
  jne @f
  mov [rdi+13E4],0 // CurrentWeight
  mov [rdi+143C],0 // BackpackWeight

@@:
  cmp [reloadflag],1
  jne @f
  cmp [rdi+80C],0 // AmmoCurrent
  ja @f
  mov [rdi+80C],#1

@@:
  cmp [reloadflag],2
  jne @f
  mov [rdi+80C],0
  mov [reloadflag],0

@@:
  cmp [falldmgflag],1
  jne @f
  mov byte ptr [rdi+1B62],0 // FallDamage_Enabled

@@:
  cmp [falldmgflag],2
  jne exit
  mov byte ptr [rdi+1B62],01
  mov [falldmgflag],0

@car: // WHEN IN VEHICLE
  mov r9,PlayerController
  mov r9,[r9]
  test r9,r9
  je exit
  cmp qword ptr [rdi+6B0],r9 // OwningController (when in vehicle)
  jne exit
  cmp [fuelflag],1
  jne @f
  movss xmm15,[rdi+638] // MaxFuel
  movss [rdi+634],xmm15 // CurrentFuel

@@:
  cmp [hpflag+4],1
  jne @f
  movss xmm15,[rdi+654] // HealthMax
  movss [rdi+650],xmm15 // HealthCurrent

{$except}
exit:
  movss xmm15,[XMM15Save]
  pop r9

code_base:
  readmem(base_AOB,8)
{
  mov r9,[rdi]
  lea r8,[rsp+40]
}
  jmp return

playerHook+400:
hpflag:
  dd 0
  dd 0
stamflag:
  dd 0
foodflag:
  dd 0
waterflag:
  dd 0
infectflag:
  dd 0
tempflag:
  dd 0
weightflag:
  dd 0
XMM15Save:
  dq 0
zero:
  dd (float)1
reloadflag:
  dd 0
falldmgflag:
  dd 0
fuelflag:
  dd 0

midjumpmem:
jmp playerHook

base_AOB:
  jmp midjumpmem
  nop 3
return:
registersymbol(base_AOB)

[DISABLE]

base_AOB:
  readmem(code_base,8) //db 4C 8B 0F 4C 8D 44 24 40

unregistersymbol(base_AOB)
unregistersymbol(code_base)
unregistersymbol(hpflag)
unregistersymbol(stamflag)
unregistersymbol(foodflag)
unregistersymbol(waterflag)
unregistersymbol(infectflag)
unregistersymbol(tempflag)
unregistersymbol(weightflag)
unregistersymbol(playerHook)
unregistersymbol(reloadflag)
unregistersymbol(falldmgflag)
unregistersymbol(fuelflag)
dealloc(XMM15Save)
dealloc(playerHook)

{
// ORIGINAL CODE - INJECTION POINT: TSSGame-Win64-Shipping.exe+2AE5FB7

TSSGame-Win64-Shipping.exe+2AE5F92: 84 C0                 - test al,al
TSSGame-Win64-Shipping.exe+2AE5F94: 74 36                 - je TSSGame-Win64-Shipping.exe+2AE5FCC
TSSGame-Win64-Shipping.exe+2AE5F96: 48 8B 5E 10           - mov rbx,[rsi+10]
TSSGame-Win64-Shipping.exe+2AE5F9A: 48 8B CB              - mov rcx,rbx
TSSGame-Win64-Shipping.exe+2AE5F9D: F3 0F 11 74 24 40     - movss [rsp+40],xmm6
TSSGame-Win64-Shipping.exe+2AE5FA3: E8 F8 E9 78 FE        - call TSSGame-Win64-Shipping.exe+12749A0
TSSGame-Win64-Shipping.exe+2AE5FA8: 48 8B 53 08           - mov rdx,[rbx+08]
TSSGame-Win64-Shipping.exe+2AE5FAC: 48 8B C8              - mov rcx,rax
TSSGame-Win64-Shipping.exe+2AE5FAF: 48 8B F8              - mov rdi,rax
TSSGame-Win64-Shipping.exe+2AE5FB2: E8 49 39 77 FE        - call TSSGame-Win64-Shipping.exe+1259900
// ---------- INJECTING HERE ----------
TSSGame-Win64-Shipping.exe+2AE5FB7: 4C 8B 0F              - mov r9,[rdi]
// ---------- DONE INJECTING  ----------
TSSGame-Win64-Shipping.exe+2AE5FBA: 4C 8D 44 24 40        - lea r8,[rsp+40]
TSSGame-Win64-Shipping.exe+2AE5FBF: 48 8B D0              - mov rdx,rax
TSSGame-Win64-Shipping.exe+2AE5FC2: 48 8B CF              - mov rcx,rdi
TSSGame-Win64-Shipping.exe+2AE5FC5: 41 FF 91 18 02 00 00  - call qword ptr [r9+00000218]
TSSGame-Win64-Shipping.exe+2AE5FCC: 48 83 C6 28           - add rsi,28
TSSGame-Win64-Shipping.exe+2AE5FD0: 49 3B F6              - cmp rsi,r14
TSSGame-Win64-Shipping.exe+2AE5FD3: 0F 85 1E FF FF FF     - jne TSSGame-Win64-Shipping.exe+2AE5EF7
TSSGame-Win64-Shipping.exe+2AE5FD9: 48 8B 35 18 0A D7 01  - mov rsi,[TSSGame-Win64-Shipping.exe+48569F8]
TSSGame-Win64-Shipping.exe+2AE5FE0: 48 63 05 19 0A D7 01  - movsxd  rax,dword ptr [TSSGame-Win64-Shipping.exe+4856A00]
TSSGame-Win64-Shipping.exe+2AE5FE7: 4C 8D 34 40           - lea r14,[rax+rax*2]
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>315835</ID>
              <Description>"Unlimited Health"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
hpflag:
  dd 1

[DISABLE]
hpflag:
  dd 2
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>97</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315836</ID>
              <Description>"Unlimited Stamina"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
stamflag:
  dd 1

[DISABLE]
stamflag:
  dd 0
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>98</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315837</ID>
              <Description>"No Hunger"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
foodflag:
  dd 1

[DISABLE]
foodflag:
  dd 0
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>99</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315838</ID>
              <Description>"No Thirst"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
waterflag:
  dd 1

[DISABLE]
waterflag:
  dd 0
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>100</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315839</ID>
              <Description>"No Infection"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
infectflag:
  dd 1

[DISABLE]
infectflag:
  dd 2
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>101</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315840</ID>
              <Description>"Perfect Temperature"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
tempflag:
  dd 1

[DISABLE]
tempflag:
  dd 0
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>102</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315850</ID>
              <Description>"Zero Weight"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
weightflag:
  dd 1

[DISABLE]
weightflag:
  dd 0
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>103</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315886</ID>
              <Description>"No Reload"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
reloadflag:
  dd 1

[DISABLE]
reloadflag:
  dd 2
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>17</Key>
                    <Key>99</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315889</ID>
              <Description>"No Fall Damage"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
falldmgflag:
  dd 1

[DISABLE]
falldmgflag:
  dd 2
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>17</Key>
                    <Key>100</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315917</ID>
              <Description>"Unlimited Fuel"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
fuelflag:
  dd 1

[DISABLE]
fuelflag:
  dd 0
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>17</Key>
                    <Key>101</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315918</ID>
              <Description>"Unlimited Vehicle Health"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
hpflag+4:
  dd 1

[DISABLE]
hpflag+4:
  dd 0
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>17</Key>
                    <Key>102</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>315811</ID>
          <Description>"getTimescale"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>//  ███╗   ███╗██╗   ██╗██╗      ██████╗
//  ████╗ ████║██║   ██║██║     ██╔═████╗
//  ██╔████╔██║██║   ██║██║     ██║██╔██║
//  ██║╚██╔╝██║██║   ██║██║     ████╔╝██║
//  ██║ ╚═╝ ██║╚██████╔╝███████╗╚██████╔╝
//  ╚═╝     ╚═╝ ╚═════╝ ╚══════╝ ╚═════╝
//  🎯 Game    : COB-Win64-Shipping.exe
//  🧾 Version : v1.0Z
//  📅 Date    : 01-03-2022
//  🧠 Author  : mul0
//  🌐 Site    : https://mul0.com/

[ENABLE]
aobscanmodule(timescale_AOB,$process,F3??????????????EB??F3??????????????488B????4C????F3??????448B)
alloc(tScaleHook,0x1000)
registersymbol(tScaleHook)
alloc(re_tscale,8)
registersymbol(re_tscale)

define(midjumpmem, $process+530)
fullaccess(midjumpmem, $1000)

label(code)
label(playerspeed)
label(enemyspeed)
label(pSpeed)
label(eSpeed)
label(return)

registersymbol(playerspeed)
registersymbol(enemyspeed)
registersymbol(pSpeed)
registersymbol(eSpeed)

re_tscale:
  readmem(timescale_AOB,8)

tScaleHook:
  push rax
  mov rax,PlayerCharacter
  mov rax,[rax]
  test rax,rax
  jz short code
  cmp rbx,rax
  jne @f
  cmp [playerspeed],1
  jne code
  readmem(timescale_AOB,8)
  mulss xmm1,[pSpeed]
  pop rax
  jmp return

@@:
  cmp [enemyspeed],1
  jne code
  readmem(timescale_AOB,8)
  mulss xmm1,[eSpeed]
  pop rax
  jmp return

code:
  pop rax
  readmem(timescale_AOB,8)
  jmp return

tScaleHook+200:
playerspeed:
  dd 0
enemyspeed:
  dd 0
pSpeed:
  dq (float)3
eSpeed:
  dq (float)0.5

midjumpmem:
jmp tScaleHook

timescale_AOB:
  jmp midjumpmem
  nop 3
return:

registersymbol(timescale_AOB)

[DISABLE]

timescale_AOB:
  readmem(re_tscale,8) //db F3 0F 10 8B C0 00 00 00

unregistersymbol(timescale_AOB)
unregistersymbol(playerspeed)
unregistersymbol(enemyspeed)
unregistersymbol(pSpeed)
unregistersymbol(eSpeed)
unregistersymbol(tScaleHook)
dealloc(re_tscale)
dealloc(tScaleHook)


{
// ORIGINAL CODE - INJECTION POINT: COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+B7

COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+9B: 75 15                    - jne COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+B2
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+9D: 48 85 DB                 - test rbx,rbx
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+A0: 74 3E                    - je COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+E0
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+A2: 48 8B 03                 - mov rax,[rbx]
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+A5: 48 8B CB                 - mov rcx,rbx
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+A8: FF 90 20 04 00 00        - call qword ptr [rax+00000420]
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+AE: 84 C0                    - test al,al
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+B0: 74 2E                    - je COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+E0
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+B2: 48 85 DB                 - test rbx,rbx
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+B5: 74 0A                    - je COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+C1
// ---------- INJECTING HERE ----------
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+B7: F3 0F 10 8B C0 00 00 00  - movss xmm1,[rbx+000000C0]
// ---------- DONE INJECTING  ----------
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+BF: EB 08                    - jmp COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+C9
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+C1: F3 0F 10 0D BF FE BB 01  - movss xmm1,[COB-Win64-Shipping.exe+30FF688]
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+C9: 48 8B 4F 50              - mov rcx,[rdi+50]
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+CD: 4C 8B CF                 - mov r9,rdi
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+D0: F3 0F 59 CE              - mulss xmm1,xmm6
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+D4: 44 8B C6                 - mov r8d,esi
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+D7: 48 8B 01                 - mov rax,[rcx]
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+DA: FF 90 10 03 00 00        - call qword ptr [rax+00000310]
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+E0: 48 8B 5C 24 40           - mov rbx,[rsp+40]
COB-Win64-Shipping.FActorComponentTickFunction::ExecuteTick+E5: 48 8B 6C 24 48           - mov rbp,[rsp+48]
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>315812</ID>
              <Description>"Super Player Speed"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
playerspeed:
  dd 1


[DISABLE]
playerspeed:
  dd 0
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>104</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315813</ID>
              <Description>"Slow AI"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
enemyspeed:
  dd 1


[DISABLE]
enemyspeed:
  dd 0
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>105</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315814</ID>
              <Description>"AI Speed Multiplier"</Description>
              <VariableType>Float</VariableType>
              <Address>eSpeed</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>26170</ID>
          <Description>"getSpeed"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>//  ███╗   ███╗██╗   ██╗██╗      ██████╗
//  ████╗ ████║██║   ██║██║     ██╔═████╗
//  ██╔████╔██║██║   ██║██║     ██║██╔██║
//  ██║╚██╔╝██║██║   ██║██║     ████╔╝██║
//  ██║ ╚═╝ ██║╚██████╔╝███████╗╚██████╔╝
//  ╚═╝     ╚═╝ ╚═════╝ ╚══════╝ ╚═════╝
//  🎯 Game    : COB-Win64-Shipping.exe
//  🧾 Version : v1.0Z
//  📅 Date    : 01-03-2022
//  🧠 Author  : mul0
//  🌐 Site    : https://mul0.com/

[ENABLE]

aobscanmodule(moveSpeed_AOB,$process,F3??????????????4883????5BC3F3??????????????4883????5BC3F3??????????????4883????5BC3F3??????????????4883????5BC30F57)
alloc(speedHook,0x1000)
registersymbol(speedHook)
alloc(re_speed,8)
registersymbol(re_speed)

define(midjumpmem, $process+510)
fullaccess(midjumpmem, $1000)

label(code)
label(return)
label(spdval)
label(spdval2)
label(speedflag)

registersymbol(spdval)
registersymbol(spdval2)
registersymbol(speedflag)

re_speed:
  readmem(moveSpeed_AOB,8)

speedHook:
  push rax
  mov rax,PlayerCharacter
  mov rax,[rax]
  test rax,rax
  jz short code
  mov rax,[rax+288] // CharacterMovement
  test rax,rax
  jz short code
  cmp rbx,rax
  jne code
  cmp [speedflag],1
  je @f
  readmem(moveSpeed_AOB,8)
  mulss xmm0,[spdval]
  pop rax
  jmp return

@@:
  readmem(moveSpeed_AOB,8)
  mulss xmm0,[spdval2]
  pop rax
  jmp return

code:
  pop rax
  readmem(moveSpeed_AOB,8)
  jmp return

speedHook+200:
spdval:
  dd (float)1
spdval2:
  dd (float)4
speedflag:
  dd 0

midjumpmem:
jmp speedHook

moveSpeed_AOB:
  jmp midjumpmem
  nop 3
return:
registersymbol(moveSpeed_AOB)

[DISABLE]

moveSpeed_AOB:
    readmem(re_speed,8) //db F3 0F 10 83 8C 01 00 00

unregistersymbol(moveSpeed_AOB)
unregistersymbol(speedHook)
unregistersymbol(spdval)
unregistersymbol(spdval2)
unregistersymbol(speedflag)
dealloc(re_speed)
dealloc(speedHook)

{
// ORIGINAL CODE - INJECTION POINT: ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+46

ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+26: FF E2                    - jmp rdx
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+28: 48 8B 03                 - mov rax,[rbx]
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+2B: 48 8B CB                 - mov rcx,rbx
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+2E: FF 90 58 05 00 00        - call qword ptr [rax+00000558]
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+34: 84 C0                    - test al,al
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+36: 74 0E                    - je ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+46
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+38: F3 0F 10 83 90 01 00 00  - movss xmm0,[rbx+00000190]
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+40: 48 83 C4 20              - add rsp,20
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+44: 5B                       - pop rbx
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+45: C3                       - ret 
// ---------- INJECTING HERE ----------
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+46: F3 0F 10 83 8C 01 00 00  - movss xmm0,[rbx+0000018C]
// ---------- DONE INJECTING  ----------
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+4E: 48 83 C4 20              - add rsp,20
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+52: 5B                       - pop rbx
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+53: C3                       - ret 
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+54: F3 0F 10 83 94 01 00 00  - movss xmm0,[rbx+00000194]
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+5C: 48 83 C4 20              - add rsp,20
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+60: 5B                       - pop rbx
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+61: C3                       - ret 
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+62: F3 0F 10 83 98 01 00 00  - movss xmm0,[rbx+00000198]
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+6A: 48 83 C4 20              - add rsp,20
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::GetMaxSpeed+6E: 5B                       - pop rbx
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>26171</ID>
              <Description>"Super Movement Speed"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
speedflag:
  dd 1

[DISABLE]
speedflag:
  dd 0
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>96</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>26172</ID>
              <Description>"Movement Speed Multiplier"</Description>
              <VariableType>Float</VariableType>
              <Address>spdval</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>26137</ID>
          <Description>"getJumpHeight"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>//  ███╗   ███╗██╗   ██╗██╗      ██████╗
//  ████╗ ████║██║   ██║██║     ██╔═████╗
//  ██╔████╔██║██║   ██║██║     ██║██╔██║
//  ██║╚██╔╝██║██║   ██║██║     ████╔╝██║
//  ██║ ╚═╝ ██║╚██████╔╝███████╗╚██████╔╝
//  ╚═╝     ╚═╝ ╚═════╝ ╚══════╝ ╚═════╝
//  🎯 Game    : COB-Win64-Shipping.exe
//  🧾 Version : v1.0Z
//  📅 Date    : 01-03-2022
//  🧠 Author  : mul0
//  🌐 Site    : https://mul0.com/

[ENABLE]
aobscanmodule(superJump_AOB,$process,F3??????????????4533??F3??????????????488B??488B??418D????F3??????????????FF??????????B0)
alloc(jumpHook,0x1000)
registersymbol(jumpHook)

define(midjumpmem, $process+520)
fullaccess(midjumpmem, $1000)

label(code_sjump)
label(jval)
label(jval2)
label(jumpflag)
label(return)

registersymbol(jval)
registersymbol(jumpflag)
registersymbol(jval2)
registersymbol(code_sjump)


jumpHook:
  push rax
  mov rax,PlayerCharacter
  mov rax,[rax]
  test rax,rax
  jz short code_sjump
  mov rax,[rax+288] // CharacterMovement
  test rax,rax
  jz short code_sjump
  cmp rbx,rax
  jne code_sjump
  cmp [jumpflag],1
  je @f
  readmem(superJump_AOB,8) //movss xmm0,[rbx+158]
  mulss xmm0,[jval]
  pop rax
  jmp return

@@:
  readmem(superJump_AOB,8) //movss xmm0,[rbx+158]
  mulss xmm0,[jval2]
  pop rax
  jmp return

code_sjump:
  readmem(superJump_AOB,8) //movss xmm0,[rbx+00000158]

@@:
  pop rax
  jmp return

jumpHook+200:
jval:
  dd (float)1
jumpflag:
  dd 0
jval2:
  dd (float)3.5


midjumpmem:
jmp jumpHook


superJump_AOB:
  jmp midjumpmem
  nop 3
return:

registersymbol(superJump_AOB)

[DISABLE]

superJump_AOB:
  readmem(code_sjump,8) //db F3 0F 10 83 58 01 00 00

unregistersymbol(superJump_AOB)
unregistersymbol(jumpHook)
unregistersymbol(jval)
unregistersymbol(jval2)
unregistersymbol(jumpflag)
unregistersymbol(code_sjump)
dealloc(jumpHook)

{
// ORIGINAL CODE - INJECTION POINT: ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+3F

ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+13: 74 5D                    - je ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+72
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+15: E8 66 91 FB FF           - call ChernobylGame-Win64-Shipping.ACharacter::CanJump
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+1A: 84 C0                    - test al,al
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+1C: 74 54                    - je ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+72
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+1E: F6 83 E8 00 00 00 10     - test byte ptr [rbx+000000E8],10
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+25: 74 18                    - je ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+3F
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+27: F3 0F 10 83 D8 00 00 00  - movss xmm0,[rbx+000000D8]
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+2F: 0F 54 05 FA 19 04 01     - andps xmm0,[ChernobylGame-Win64-Shipping.exe+37988E0]
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+36: 0F 2E 05 D3 4F 04 01     - ucomiss xmm0,[ChernobylGame-Win64-Shipping.exe+379BEC0]
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+3D: 74 33                    - je ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+72
// ---------- INJECTING HERE ----------
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+3F: F3 0F 10 83 58 01 00 00  - movss xmm0,[rbx+00000158]
// ---------- DONE INJECTING  ----------
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+47: 45 33 C0                 - xor r8d,r8d
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+4A: F3 0F 5F 83 CC 00 00 00  - maxss xmm0,[rbx+000000CC]
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+52: 48 8B 03                 - mov rax,[rbx]
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+55: 48 8B CB                 - mov rcx,rbx
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+58: 41 8D 50 03              - lea edx,[r8+03]
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+5C: F3 0F 11 83 CC 00 00 00  - movss [rbx+000000CC],xmm0
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+64: FF 90 A8 05 00 00        - call qword ptr [rax+000005A8]
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+6A: B0 01                    - mov al,01
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+6C: 48 83 C4 20              - add rsp,20
ChernobylGame-Win64-Shipping.UCharacterMovementComponent::DoJump+70: 5B                       - pop rbx
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>26138</ID>
              <Description>"Super Jump"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
jumpflag:
  dd 1

[DISABLE]
jumpflag:
  dd 0
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>109</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>26139</ID>
              <Description>"Jump Height Multiplier"</Description>
              <VariableType>Float</VariableType>
              <Address>jval</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>26140</ID>
          <Description>"Infinite Jumps"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>//  ███╗   ███╗██╗   ██╗██╗      ██████╗
//  ████╗ ████║██║   ██║██║     ██╔═████╗
//  ██╔████╔██║██║   ██║██║     ██║██╔██║
//  ██║╚██╔╝██║██║   ██║██║     ████╔╝██║
//  ██║ ╚═╝ ██║╚██████╔╝███████╗╚██████╔╝
//  ╚═╝     ╚═╝ ╚═════╝ ╚══════╝ ╚═════╝
//  🎯 Game    : COB-Win64-Shipping.exe
//  🧾 Version : v1.0Z
//  📅 Date    : 01-03-2022
//  🧠 Author  : mul0
//  🌐 Site    : https://mul0.com/

[ENABLE]
aobscanmodule(infJumps_AOB,$process,0F9C??488B??????4883????5FC3??????????4889)

infJumps_AOB:
  db B0 01 90
registersymbol(infJumps_AOB)

[DISABLE]

infJumps_AOB:
  db 0F 9C C0

unregistersymbol(infJumps_AOB)

{
// ORIGINAL CODE - INJECTION POINT: ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+ED

ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+C5: 8B 87 48 03 00 00  - mov eax,[rdi+00000348]
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+CB: FF C0              - inc eax
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+CD: 3B 87 44 03 00 00  - cmp eax,[rdi+00000344]
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+D3: 0F 9C C0           - setl al
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+D6: 48 8B 5C 24 30     - mov rbx,[rsp+30]
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+DB: 48 83 C4 20        - add rsp,20
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+DF: 5F                 - pop rdi
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+E0: C3                 - ret 
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+E1: 8B 87 44 03 00 00  - mov eax,[rdi+00000344]
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+E7: 39 87 48 03 00 00  - cmp [rdi+00000348],eax
// ---------- INJECTING HERE ----------
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+ED: 0F 9C C0           - setl al
// ---------- DONE INJECTING  ----------
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+F0: 48 8B 5C 24 30     - mov rbx,[rsp+30]
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+F5: 48 83 C4 20        - add rsp,20
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+F9: 5F                 - pop rdi
ChernobylGame-Win64-Shipping.ACharacter::CanJumpInternal_Implementation+FA: C3                 - ret 
ChernobylGame-Win64-Shipping.exe+271013B: CC                 - int 3 
ChernobylGame-Win64-Shipping.exe+271013C: CC                 - int 3 
ChernobylGame-Win64-Shipping.exe+271013D: CC                 - int 3 
ChernobylGame-Win64-Shipping.exe+271013E: CC                 - int 3 
ChernobylGame-Win64-Shipping.exe+271013F: CC                 - int 3 
ChernobylGame-Win64-Shipping.UCheatManager::ChangeSize: 48 89 5C 24 10     - mov [rsp+10],rbx
}
</AssemblerScript>
          <Hotkeys>
            <Hotkey>
              <Action>Toggle Activation</Action>
              <Keys>
                <Key>107</Key>
              </Keys>
              <ID>0</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
        <CheatEntry>
          <ID>314871</ID>
          <Description>"Teleport"</Description>
          <Options moHideChildren="1"/>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

alloc(SaveLocation_X,8)
alloc(SaveLocation_Y,8)
alloc(SaveLocation_Z,8)
alloc(World_,8)

SaveLocation_X:
  dq 0

SaveLocation_Y:
  dq 0

SaveLocation_Z:
  dq 0

World_:
  dq 0

registersymbol(SaveLocation_X)
registersymbol(SaveLocation_Y)
registersymbol(SaveLocation_Z)
registersymbol(World_)

[DISABLE]

unregistersymbol(SaveLocation_X)
unregistersymbol(SaveLocation_Y)
unregistersymbol(SaveLocation_Z)
unregistersymbol(World_)
dealloc(SaveLocation_X)
dealloc(SaveLocation_Y)
dealloc(SaveLocation_Z)
dealloc(World_)
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>315684</ID>
              <Description>"Save Coordinates"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>{$LUA}
  if syntaxcheck then return end
{$ASM}
[ENABLE]
{$LUA}
function toHex(str)
str = string.format("%X", str)
return str
end
if syntaxcheck then return end
local PlayerCharacterBase = toHex(getAddressSafe('[PlayerCharacter]+130'))
local SaveLocationXBase     = toHex(getAddressSafe('SaveLocation_X'))
local SaveLocationYBase     = toHex(getAddressSafe('SaveLocation_Y'))
local SaveLocationZBase     = toHex(getAddressSafe('SaveLocation_Z'))
if PlayerCharacterBase ~= nil or SaveLocationBase ~= nil then
--PlayerCharacter
   adPlayerCharacter_X  = toHex(getAddressSafe('[' .. PlayerCharacterBase .. ']+1D0'))
   adPlayerCharacter_Y  = toHex(getAddressSafe('[' .. PlayerCharacterBase .. ']+1D4'))
   adPlayerCharacter_Z  = toHex(getAddressSafe('[' .. PlayerCharacterBase .. ']+1D8'))

   writeFloat(SaveLocationXBase, readFloat(adPlayerCharacter_X))
   writeFloat(SaveLocationYBase, readFloat(adPlayerCharacter_Y))
   writeFloat(SaveLocationZBase, readFloat(adPlayerCharacter_Z))

end
local ce = getMainForm()
memrec.OnActivate = function(memrec, anteState, curState)
    if not anteState and curState then
        local t = createTimer(ce)
        t.Interval = 1000
        t.OnTimer = function(t)
                        t.destroy()
                        t = nil
                        memrec.Active = false
                    end
    end
    return true
end
{$ASM}
[DISABLE]
</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>17</Key>
                    <Key>97</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315685</ID>
              <Description>"Load Coordinates"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>{$LUA}
if syntaxcheck then return end
[ENABLE]
-- Function to convert a string to hexadecimal
function toHex(str)
    str = string.format("%X", str)
    return str
end

-- Get the hexadecimal address for 'SaveLocation_X'
local SaveLocationXBase = toHex(getAddressSafe('SaveLocation_X'))

-- Check if SaveLocationXBase is not equal to "0" before performing an action
if SaveLocationXBase ~= "0" then
    -- Get the hexadecimal address for '[PlayerCharacter]+130'
    local PlayerCharacterBase = toHex(getAddressSafe('[PlayerCharacter]+130'))

    -- Get the hexadecimal addresses for 'SaveLocation_Y' and 'SaveLocation_Z'
    local SaveLocationYBase = toHex(getAddressSafe('SaveLocation_Y'))
    local SaveLocationZBase = toHex(getAddressSafe('SaveLocation_Z'))

    -- Check if all necessary addresses are not nil
    if PlayerCharacterBase ~= nil and SaveLocationYBase ~= nil and SaveLocationZBase ~= nil then
        -- Get the hexadecimal addresses for player character X, Y, and Z
        local adPlayerCharacter_X = toHex(getAddressSafe('[' .. PlayerCharacterBase .. ']+1D0'))
        local adPlayerCharacter_Y = toHex(getAddressSafe('[' .. PlayerCharacterBase .. ']+1D4'))
        local adPlayerCharacter_Z = toHex(getAddressSafe('[' .. PlayerCharacterBase .. ']+1D8'))

        -- Read the float value from SaveLocationXBase
        local xValue = readFloat(SaveLocationXBase)

        -- Check if xValue is not equal to 0 before writing to player character coordinates
        if xValue ~= 0 then
            -- Write the xValue to player character X coordinate and the corresponding Y and Z coordinates
            writeFloat(adPlayerCharacter_X, xValue)
            writeFloat(adPlayerCharacter_Y, readFloat(SaveLocationYBase))
            writeFloat(adPlayerCharacter_Z, readFloat(SaveLocationZBase))
        end
    end
end

-- Get the main form
local ce = getMainForm()

-- Define a function to be executed when the memory record is activated
memrec.OnActivate = function(memrec, anteState, curState)
    if not anteState and curState then
        -- Create a timer with a 1-second interval
        local t = createTimer(ce)
        if t ~= nil then
            t.Interval = 1000
            t.OnTimer = function(t)
                -- Destroy the timer and set it to nil
                t.destroy()
                t = nil
                memrec.Active = false
            end
        end
        -- Remove the showMessage part to avoid displaying a message
    end
    return true
end

[DISABLE]

</AssemblerScript>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>17</Key>
                    <Key>98</Key>
                  </Keys>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>315686</ID>
              <Description>"Saved Coordinates"</Description>
              <VariableType>Byte</VariableType>
              <Address/>
              <CheatEntries>
                <CheatEntry>
                  <ID>315687</ID>
                  <Description>"X"</Description>
                  <VariableType>Float</VariableType>
                  <Address>SaveLocation_X</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>315688</ID>
                  <Description>"Y"</Description>
                  <VariableType>Float</VariableType>
                  <Address>SaveLocation_Y</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>315689</ID>
                  <Description>"Z"</Description>
                  <VariableType>Float</VariableType>
                  <Address>SaveLocation_Z</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>315821</ID>
          <Description>"getFOV"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>//  ███╗   ███╗██╗   ██╗██╗      ██████╗
//  ████╗ ████║██║   ██║██║     ██╔═████╗
//  ██╔████╔██║██║   ██║██║     ██║██╔██║
//  ██║╚██╔╝██║██║   ██║██║     ████╔╝██║
//  ██║ ╚═╝ ██║╚██████╔╝███████╗╚██████╔╝
//  ╚═╝     ╚═╝ ╚═════╝ ╚══════╝ ╚═════╝
//  🎯 Game    : COB-Win64-Shipping.exe
//  🧾 Version : v1.0Z
//  📅 Date    : 01-03-2022
//  🧠 Author  : mul0
//  🌐 Site    : https://mul0.com/

[ENABLE]
aobscanmodule(FOV_AOB,$process,F3xxxxxxxxxxxxxxF3xxxxxxxx8Bxxxxxxxxxx89xxxx0FB6)
alloc(newmem,$1000,FOV_AOB)

define(midjumpmem, $process+540)
fullaccess(midjumpmem, $1000)

label(code_fov)
label(return)
label(fov)
registersymbol(fov)
registersymbol(code_fov)

newmem:
  cmp [fov],0
  jle @f
  movss xmm0,[fov]
  jmp return
code_fov:
  readmem(FOV_AOB,8) //movss xmm0,[rbx+00000208]
  jmp return

newmem+200:
fov:
  dd (float)0

midjumpmem:
jmp newmem

FOV_AOB:
  jmp midjumpmem
  nop 3
return:
registersymbol(FOV_AOB)

[DISABLE]

FOV_AOB:
  readmem(code_fov,8) //db F3 0F 10 83 08 02 00 00

unregistersymbol(FOV_AOB)
unregistersymbol(fov)
unregistersymbol(code_fov)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: HighMoon-Win64-Shipping.exe+2FE14EE

HighMoon-Win64-Shipping.exe+2FE14AE: 44 0F 28 8C 24 D0 03 00 00  - movaps xmm9,[rsp+000003D0]
HighMoon-Win64-Shipping.exe+2FE14B7: 44 0F 28 84 24 E0 03 00 00  - movaps xmm8,[rsp+000003E0]
HighMoon-Win64-Shipping.exe+2FE14C0: 0F 28 BC 24 F0 03 00 00     - movaps xmm7,[rsp+000003F0]
HighMoon-Win64-Shipping.exe+2FE14C8: 0F 28 B4 24 00 04 00 00     - movaps xmm6,[rsp+00000400]
HighMoon-Win64-Shipping.exe+2FE14D0: 89 47 14                    - mov [rdi+14],eax
HighMoon-Win64-Shipping.exe+2FE14D3: F6 83 1C 02 00 00 10        - test byte ptr [rbx+0000021C],10
HighMoon-Win64-Shipping.exe+2FE14DA: 74 12                       - je HighMoon-Win64-Shipping.exe+2FE14EE
HighMoon-Win64-Shipping.exe+2FE14DC: F3 0F 10 83 54 02 00 00     - movss xmm0,[rbx+00000254]
HighMoon-Win64-Shipping.exe+2FE14E4: F3 0F 58 83 08 02 00 00     - addss xmm0,[rbx+00000208]
HighMoon-Win64-Shipping.exe+2FE14EC: EB 08                       - jmp HighMoon-Win64-Shipping.exe+2FE14F6
// ---------- INJECTING HERE ----------
HighMoon-Win64-Shipping.exe+2FE14EE: F3 0F 10 83 08 02 00 00     - movss xmm0,[rbx+00000208]
// ---------- DONE INJECTING  ----------
HighMoon-Win64-Shipping.exe+2FE14F6: F3 0F 11 47 18              - movss [rdi+18],xmm0
HighMoon-Win64-Shipping.exe+2FE14FB: 8B 83 18 02 00 00           - mov eax,[rbx+00000218]
HighMoon-Win64-Shipping.exe+2FE1501: 89 47 30                    - mov [rdi+30],eax
HighMoon-Win64-Shipping.exe+2FE1504: 0F B6 83 1C 02 00 00        - movzx eax,byte ptr [rbx+0000021C]
HighMoon-Win64-Shipping.exe+2FE150B: 33 47 34                    - xor eax,[rdi+34]
HighMoon-Win64-Shipping.exe+2FE150E: 83 E0 01                    - and eax,01
HighMoon-Win64-Shipping.exe+2FE1511: 31 47 34                    - xor [rdi+34],eax
HighMoon-Win64-Shipping.exe+2FE1514: 0F B6 8B 1C 02 00 00        - movzx ecx,byte ptr [rbx+0000021C]
HighMoon-Win64-Shipping.exe+2FE151B: 33 4F 34                    - xor ecx,[rdi+34]
HighMoon-Win64-Shipping.exe+2FE151E: 83 E1 02                    - and ecx,02
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>315822</ID>
              <Description>"Edit: FOV"</Description>
              <VariableType>Float</VariableType>
              <Address>fov</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>315912</ID>
          <Description>"Remove Build Cost On Selected Build"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{$lua}
if syntaxcheck then return end

[ENABLE]

local playerBase = getAddressSafe("[PlayerCharacter]")
if playerBase == nil or playerBase == 0 then
    showMessage("PlayerCharacter symbol not found or invalid")
    createTimer(100, function()
        memrec.Active = false
    end)
    return
end

local ptrAd8    = playerBase + 0xAD8
local structPtr = readPointer(ptrAd8)

if structPtr == nil or structPtr == 0 then
    showMessage("Invalid pointer → [PlayerCharacter]+0xAD8")
    createTimer(100, function()
        memrec.Active = false
    end)
    return
end

-- Check the flag byte
local flagAddr  = structPtr + 0x2D2
local flagValue = readByte(flagAddr)

if flagValue == nil or flagValue ~= 1 then
    showMessage("Please select a buildable object first!")
    createTimer(100, function()
        memrec.Active = false
    end)
    return
end

-- New check: validate the array data pointer before going further
local arrayDataPtrAddr = structPtr + 0x418
local arrayDataBase    = readPointer(arrayDataPtrAddr)

if arrayDataBase == nil or arrayDataBase == 0 then
    showMessage("Please select a buildable object first!")
    createTimer(100, function()
        memrec.Active = false
    end)
    return
end

-- Now safe to read count
local countAddr  = structPtr + 0x420
local arrayCount = readInteger(countAddr)

if arrayCount == nil or arrayCount &lt;= 0 then
    showMessage("Invalid or empty count at [[PlayerCharacter]+0xAD8]+0x420")
    createTimer(100, function()
        memrec.Active = false
    end)
    return
end

-- All checks passed → clear the values
local itemsCleared = 0
for i = 1, arrayCount do
    local offset = 0x4 + (i - 1) * 0x8
    local target = arrayDataBase + offset
    writeInteger(target, 0)
    itemsCleared = itemsCleared + 1
end

local statusAddr  = structPtr + 0x480
local statusByte  = readByte(statusAddr)

if statusByte == 1 then
    writeByte(statusAddr, 0)
    -- Optional: you could add a note to the message or log it, e.g.:
    -- showMessage("Also reset status byte at +0x480 from 1 → 0")
end

showMessage("Set " .. itemsCleared .. " required materials(s) to 0.")

-- Success → auto-disable
createTimer(100, function()
    memrec.Active = false
end)

[DISABLE]
</AssemblerScript>
          <Hotkeys>
            <Hotkey>
              <Action>Toggle Activation</Action>
              <Keys>
                <Key>17</Key>
                <Key>103</Key>
              </Keys>
              <ID>0</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
        <CheatEntry>
          <ID>315922</ID>
          <Description>"Easy Level Up"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{$lua}
if syntaxcheck then return end
[ENABLE]

local max = readFloat('[[PlayerController]+0x5D0]+0x15C')
local current = getAddressSafe('[[PlayerController]+0x5D0]+0xBC')
writeFloat(current,max)

createTimer(100, function() memrec.Active = false end)
[DISABLE]

</AssemblerScript>
          <Hotkeys>
            <Hotkey>
              <Action>Toggle Activation</Action>
              <Keys>
                <Key>17</Key>
                <Key>104</Key>
              </Keys>
              <ID>0</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
  <UserdefinedSymbols/>
</CheatTable>
