<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="45">
  <CheatEntries>
    <CheatEntry>
      <ID>10</ID>
      <Description>"Compact mode"</Description>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]
--https://forum.cheatengine.org/viewtopic.php?t=570055
LuaCall(function cycleFullCompact(sender,force) local state = not(compactmenuitem.Caption == 'Compact View Mode'); if force~=nil then state = not force end; compactmenuitem.Caption = state and 'Compact View Mode' or 'Full View Mode'; getMainForm().Splitter1.Visible = state; getMainForm().Panel4.Visible    = state; getMainForm().Panel5.Visible    = state; end; function addCompactMenu() if compactmenualreadyexists then return end; local parent = getMainForm().Menu.Items; compactmenuitem = createMenuItem(parent); parent.add(compactmenuitem); compactmenuitem.Caption = 'Compact View Mode'; compactmenuitem.OnClick = cycleFullCompact; compactmenualreadyexists = 'yes'; end; addCompactMenu(); cycleFullCompact(nil,true))

[DISABLE]
LuaCall(cycleFullCompact(nil,false))
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>247</ID>
      <Description>"Enable (enable twice)"</Description>
      <Options moHideChildren="1" moDeactivateChildrenAsWell="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]
{$lua}
if syntaxcheck then
    return
end
if process == nil then
    ShowMessage("Process is not selected.")
elseif readInteger(process) == 0 then
    ShowMessage("Process cannot be opened.")
else
    if monopipe ~= nil and monopipe.ProcessID ~= getOpenedProcessID() then
        monopipe.destroy()
        monopipe = nil
    end
    if monopipe == nil then
        LaunchMonoDataCollector()
    end
end


{$asm}
define(PlayerControllerManagedUpdateProc,"PlayerController.ManagedUpdate")
define(PlayerControllerDealDamageToPlayerProc,"PlayerController.DealDamageToPlayer")
define(PlayerControllerHealPlayerProc,"PlayerController.HealPlayer")
define(SkillTalentUIElementUpdateTalentProc,"SkillTalentUIElement.UpdateTalent")
define(PlayerControllerAddSkillProc,"PlayerController.AddSkill")
define(EntityUtilityGetDamageInfoProc,"EntityUtility.GetDamageInfo")
define(AttackPlayerClientSystemRegisterPlayerHitProc,"AttackPlayerClientSystem.RegisterPlayerHit")
define(PlayerStateWalkUpdateProc,"PlayerState.Walk.Update")
define(PlayerStateFishingUpdateMiniGameProc,"PlayerState.Fishing.UpdateMiniGame")
define(PlayerControllerReduceDurabilityOfHeldEquipmentProc,"PlayerController.ReduceDurabilityOfHeldEquipment")
define(PlayerControllerReduceDurabilityOfEquipmentProc,"PlayerController.ReduceDurabilityOfEquipment")
define(SaveManagerAddSkillValueProc,"SaveManager.AddSkillValue")
define(InventoryHandlerGetExistingAmountOfObjectProc,"InventoryHandler.GetExistingAmountOfObject")
define(PlayerStatePlayerBaseStateUpdateMiniGameProc, "PlayerState.PlayerBaseState.UpdateMiniGame")
define(PlayerControllerDealDamageToPlayerProc, "PlayerController:DealDamageToPlayer")



registersymbol(PlayerControllerManagedUpdateProc)
registersymbol(PlayerControllerDealDamageToPlayerProc)
registersymbol(PlayerControllerHealPlayerProc)
registersymbol(SkillTalentUIElementUpdateTalentProc)
registersymbol(PlayerControllerAddSkillProc)
registersymbol(EntityUtilityGetDamageInfoProc)
registersymbol(AttackPlayerClientSystemRegisterPlayerHitProc)
registersymbol(PlayerStateWalkUpdateProc)
registersymbol(PlayerStateFishingUpdateMiniGameProc)
registersymbol(PlayerControllerReduceDurabilityOfHeldEquipmentProc)
registersymbol(PlayerControllerReduceDurabilityOfEquipmentProc)
registersymbol(SaveManagerAddSkillValueProc)
registersymbol(InventoryHandlerGetExistingAmountOfObjectProc)
registersymbol(PlayerStatePlayerBaseStateUpdateMiniGameProc)
registersymbol(PlayerControllerDealDamageToPlayerProc)

[DISABLE]
{$lua}
if syntaxcheck then return end;if not syntaxcheck and monopipe then monopipe=nil,monopipe.Destroy()end

{$asm}
unregistersymbol(*)
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>996</ID>
          <Description>"Food never below #"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : CoreKeeper.exe
  Version: 
  Date   : 2022-11-11
  Author : bbfox@https://opencheattables.com
}

[ENABLE]

aobscanmodule(INJECT_FOOD_DEC,lib_burst_generated.dll,83 FF 64 BA 64 00 00 00) // should be unique
alloc(newmem,$1000,INJECT_FOOD_DEC)

label(code)
label(return)
label(i_food_min)
newmem:
  cmp edi, [i_food_min]
  jge code
  mov edi, [i_food_min]
  mov [r14+rsi], edi

code:
  //cmp ecx,65
  //mov edx,00000064
  cmp edi,64
  mov edx,00000064
  jmp return
align 10 cc
  i_food_min:
  dd #95
INJECT_FOOD_DEC:
  jmp newmem
  nop 3
return:
registersymbol(INJECT_FOOD_DEC)
registersymbol(i_food_min)
[DISABLE]

INJECT_FOOD_DEC:
  db 83 FF 64 BA 64 00 00 00

unregistersymbol(*)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: lib_burst_generated.dll+14B7E2B

lib_burst_generated.dll+14B7DCF - C441782EF0            - vucomiss xmm14,xmm8
lib_burst_generated.dll+14B7DD4 - C4C17A104C 36 10      - vmovss xmm1,[r14+rsi+10]
lib_burst_generated.dll+14B7DDB - 76 41                 - jna lib_burst_generated.dll+14B7E1E
lib_burst_generated.dll+14B7DDD - 44 89 E2              - mov edx,r12d
lib_burst_generated.dll+14B7DE0 - 0FAF 54 24 70         - imul edx,[rsp+70]
lib_burst_generated.dll+14B7DE5 - 48 63 D2              - movsxd  rdx,edx
lib_burst_generated.dll+14B7DE8 - 48 03 54 24 78        - add rdx,[rsp+78]
lib_burst_generated.dll+14B7DED - 48 8B 3A              - mov rdi,[rdx]
lib_burst_generated.dll+14B7DF0 - 48 83 C2 10           - add rdx,10
lib_burst_generated.dll+14B7DF4 - 48 85 FF              - test rdi,rdi
lib_burst_generated.dll+14B7DF7 - 48 0F45 D7            - cmovne rdx,rdi
lib_burst_generated.dll+14B7DFB: C5 DA 2A 92 CC 00 00 00     - vcvtsi2ss xmm2,esp,[rdx+000000CC]
lib_burst_generated.dll+14B7E03: C5 EA 5E 15 F5 7B 46 00     - vdivss xmm2,xmm2,[lib_burst_generated.dll+191FA00]
lib_burst_generated.dll+14B7E0B: C5 AA 58 D2                 - vaddss xmm2,xmm10,xmm2
lib_burst_generated.dll+14B7E0F: C5 BA 59 D2                 - vmulss xmm2,xmm8,xmm2
lib_burst_generated.dll+14B7E13: C5 F2 58 CA                 - vaddss xmm1,xmm1,xmm2
lib_burst_generated.dll+14B7E17: C4 C1 7A 11 4C 36 10        - vmovss [r14+rsi+10],xmm1
lib_burst_generated.dll+14B7E1E: C4 C1 78 2E CF              - vucomiss xmm1,xmm15
lib_burst_generated.dll+14B7E23: 76 28                       - jna lib_burst_generated.dll+14B7E4D
lib_burst_generated.dll+14B7E25: 41 8B 3C 36                 - mov edi,[r14+rsi]
lib_burst_generated.dll+14B7E29: FF CF                       - dec edi
// ---------- INJECTING HERE ----------
lib_burst_generated.dll+14B7E2B: 83 FF 64                    - cmp edi,64
// ---------- DONE INJECTING  ----------
lib_burst_generated.dll+14B7E2E: BA 64 00 00 00              - mov edx,00000064
lib_burst_generated.dll+14B7E33: 0F 4D FA                    - cmovge edi,edx
lib_burst_generated.dll+14B7E36: 89 FA                       - mov edx,edi
lib_burst_generated.dll+14B7E38: C1 FA 1F                    - sar edx,1F
lib_burst_generated.dll+14B7E3B: C4 E2 68 F2 D7              - andn edx,edx,edi
lib_burst_generated.dll+14B7E40: 41 89 14 36                 - mov [r14+rsi],edx
lib_burst_generated.dll+14B7E44: 41 C7 44 36 10 00 00 00 00  - mov [r14+rsi+10],00000000
lib_burst_generated.dll+14B7E4D: 48 63 E9                    - movsxd  rbp,ecx
lib_burst_generated.dll+14B7E50: 48 03 6C 24 68              - add rbp,[rsp+68]
lib_burst_generated.dll+14B7E55: C4 C1 7A 11 44 36 04        - vmovss [r14+rsi+04],xmm0
lib_burst_generated.dll+14B7E5C - C4C379174436 08 01    - vextractps [r14+rsi+08],xmm0,xmm0,01
lib_burst_generated.dll+14B7E64 - C4C379174436 0C 02    - vextractps [r14+rsi+0C],xmm0,xmm0,02
lib_burst_generated.dll+14B7E6C - 45 8B 3C 36           - mov r15d,[r14+rsi]
lib_burst_generated.dll+14B7E70 - 41 83 FF 18           - cmp r15d,18
lib_burst_generated.dll+14B7E74 - 88 5C 24 43           - mov [rsp+43],bl
lib_burst_generated.dll+14B7E78 - 7E 56                 - jle lib_burst_generated.dll+14B7ED0
lib_burst_generated.dll+14B7E7A - 8B 48 08              - mov ecx,[rax+08]
lib_burst_generated.dll+14B7E7D - 85 C9                 - test ecx,ecx

}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>178</ID>
              <Description>"Min. number"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>i_food_min</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>1022</ID>
          <Description>"Set item count to 800 (item stock # must &gt;=2)"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : CoreKeeper.exe
  Version: 
  Date   : 2023-09-24
  Author : bbfox@https://opencheattables.com
}

[ENABLE]

aobscanregion(INJECT_SET_ITEM_CNT,lib_burst_generated.dll+1CDD4BA, lib_burst_generated.dll+1FFC4BA,42 8B 7C 06 04) // should be unique
alloc(newmem,$1000,INJECT_SET_ITEM_CNT)

label(code)
label(return)

newmem:

code:
  // orig code
  mov edi,[rsi+r8+04]
  // orig code end

  cmp edi, 1
  jbe endp

  cmp edi, #800
  jae endp

  mov edi, #800
  mov [rsi+r8+04], edi

endp:
  jmp return

INJECT_SET_ITEM_CNT:
  jmp newmem
return:
registersymbol(INJECT_SET_ITEM_CNT)

[DISABLE]

INJECT_SET_ITEM_CNT:
  db 42 8B 7C 06 04

unregistersymbol(INJECT_SET_ITEM_CNT)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: lib_burst_generated.dll+1CF4541

lib_burst_generated.dll+1CF451A: 44 8B 54 24 40           - mov r10d,[rsp+40]
lib_burst_generated.dll+1CF451F: 4C 8B 5C 24 38           - mov r11,[rsp+38]
lib_burst_generated.dll+1CF4524: 89 C0                    - mov eax,eax
lib_burst_generated.dll+1CF4526: 31 C9                    - xor ecx,ecx
lib_burst_generated.dll+1CF4528: 0F 1F 84 00 00 00 00 00  - nop dword ptr [rax+rax+00000000]
lib_burst_generated.dll+1CF4530: 48 8B 32                 - mov rsi,[rdx]
lib_burst_generated.dll+1CF4533: 4D 63 C0                 - movsxd  r8,r8d
lib_burst_generated.dll+1CF4536: 48 63 C9                 - movsxd  rcx,ecx
lib_burst_generated.dll+1CF4539: 42 8B 3C 06              - mov edi,[rsi+r8]
lib_burst_generated.dll+1CF453D: 41 89 3C 0B              - mov [r11+rcx],edi
// ---------- INJECTING HERE ----------
lib_burst_generated.dll+1CF4541: 42 8B 7C 06 04           - mov edi,[rsi+r8+04]
// ---------- DONE INJECTING  ----------
lib_burst_generated.dll+1CF4546: 41 89 7C 0B 04           - mov [r11+rcx+04],edi
lib_burst_generated.dll+1CF454B: 42 8B 7C 06 08           - mov edi,[rsi+r8+08]
lib_burst_generated.dll+1CF4550: 41 89 7C 0B 08           - mov [r11+rcx+08],edi
lib_burst_generated.dll+1CF4555: 42 8B 7C 06 0C           - mov edi,[rsi+r8+0C]
lib_burst_generated.dll+1CF455A: 41 89 7C 0B 0C           - mov [r11+rcx+0C],edi
lib_burst_generated.dll+1CF455F: 42 8B 74 06 10           - mov esi,[rsi+r8+10]
lib_burst_generated.dll+1CF4564: 41 89 74 0B 10           - mov [r11+rcx+10],esi
lib_burst_generated.dll+1CF4569: 44 01 D1                 - add ecx,r10d
lib_burst_generated.dll+1CF456C: 45 01 C8                 - add r8d,r9d
lib_burst_generated.dll+1CF456F: 48 FF C8                 - dec rax
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>260</ID>
          <Description>"Freeze durability of held equip."</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : CoreKeeper.exe
  Version: 
  Date   : 2023-09-24
  Author : bbfox @https://opencheattables.com/
}

[ENABLE]

//aobscanmodule(INJECT_HELD_EQUIPMENT,GameAssembly.dll,22 EA FF CC CC CC CC CC 48 89 5C 24 10) // should be unique
aobscanregion(INJECT_HELD_EQUIPMENT,PlayerControllerReduceDurabilityOfHeldEquipmentProc,PlayerControllerReduceDurabilityOfHeldEquipmentProc+20,55 48 8B EC 48 81 EC D0 00 00 00) // should be unique
alloc(newmem,$1000,INJECT_HELD_EQUIPMENT)

label(code)
label(return)

newmem:
  ret

code:
  //push rbp
  //mov rbp,rsp
  //sub rsp,000000D0
  jmp return

INJECT_HELD_EQUIPMENT:
  jmp newmem
  nop 6
return:
registersymbol(INJECT_HELD_EQUIPMENT)

[DISABLE]

INJECT_HELD_EQUIPMENT:
  db 55 48 8B EC 48 81 EC D0 00 00 00

unregistersymbol(INJECT_HELD_EQUIPMENT)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: PlayerControllerReduceDurabilityOfHeldEquipmentProc

2847487784E: D3 08                 - ror [rax],cl
28474877850: E0 59                 - loopne PlayerController:ReduceDurabilityOfHeldEquipment+4b
28474877852: 95                    - xchg eax,ebp
28474877853: AF                    - scasd
28474877854: 83 02 00              - add dword ptr [rdx],00
28474877857: 00 00                 - add [rax],al
28474877859: 00 00                 - add [rax],al
2847487785B: 00 00                 - add [rax],al
2847487785D: 00 00                 - add [rax],al
2847487785F: 00                    - db 00
// ---------- INJECTING HERE ----------
PlayerControllerReduceDurabilityOfHeldEquipmentProc: 55                    - push rbp
// ---------- DONE INJECTING  ----------
PlayerController:ReduceDurabilityOfHeldEquipment+1: 48 8B EC              - mov rbp,rsp
PlayerController:ReduceDurabilityOfHeldEquipment+4: 48 81 EC D0 00 00 00  - sub rsp,000000D0
PlayerController:ReduceDurabilityOfHeldEquipment+b: 48 89 75 E0           - mov [rbp-20],rsi
PlayerController:ReduceDurabilityOfHeldEquipment+f: 48 89 7D E8           - mov [rbp-18],rdi
PlayerController:ReduceDurabilityOfHeldEquipment+13: 4C 89 75 F0           - mov [rbp-10],r14
PlayerController:ReduceDurabilityOfHeldEquipment+17: 4C 89 7D F8           - mov [rbp-08],r15
PlayerController:ReduceDurabilityOfHeldEquipment+1b: 48 8B F1              - mov rsi,rcx
PlayerController:ReduceDurabilityOfHeldEquipment+1e: 48 8D 86 B8 00 00 00  - lea rax,[rsi+000000B8]
PlayerController:ReduceDurabilityOfHeldEquipment+25: 48 63 08              - movsxd  rcx,dword ptr [rax]
PlayerController:ReduceDurabilityOfHeldEquipment+28: 89 4D B8              - mov [rbp-48],ecx
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>261</ID>
          <Description>"Freeze durability of equips except held one"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : CoreKeeper.exe
  Version: 
  Date   : 2023-09-24
  Author : bbfox @https://opencheattables.com/
}

[ENABLE]
//aobscanregion(INJECT_REDUCE_DUR_EQUIPMENT,PlayerControllerReduceDurabilityOfEquipmentProc,PlayerControllerReduceDurabilityOfEquipmentProc+A,48 89 5C 24 10) // should be unique
aobscanregion(INJECT_REDUCE_DUR_EQUIPMENT,PlayerControllerReduceDurabilityOfEquipmentProc,PlayerControllerReduceDurabilityOfEquipmentProc+A,55 48 8B EC 48 83 EC 60) // should be unique


alloc(newmem,$1000,INJECT_REDUCE_DUR_EQUIPMENT)

label(code)
label(return)

newmem:
  ret
code:
  //push rbp
  //mov rbp,rsp
  //sub rsp,60
  jmp return

INJECT_REDUCE_DUR_EQUIPMENT:
  jmp newmem
  nop
  nop
  nop
return:
registersymbol(INJECT_REDUCE_DUR_EQUIPMENT)

[DISABLE]

INJECT_REDUCE_DUR_EQUIPMENT:
  db 55 48 8B EC 48 83 EC 60

unregistersymbol(INJECT_REDUCE_DUR_EQUIPMENT)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: PlayerControllerReduceDurabilityOfEquipmentProc
PlayerControllerReduceDurabilityOfEquipmentProc - 55                    - push rbp
PlayerController:ReduceDurabilityOfEquipment+1  - 48 8B EC              - mov rbp,rsp
PlayerController:ReduceDurabilityOfEquipment+4  - 48 83 EC 60           - sub rsp,60
PlayerController:ReduceDurabilityOfEquipment+8  - 48 89 7D F0           - mov [rbp-10],rdi
PlayerController:ReduceDurabilityOfEquipment+c  - 4C 89 7D F8           - mov [rbp-08],r15
PlayerController:ReduceDurabilityOfEquipment+10 - 4C 8B F9              - mov r15,rcx
PlayerController:ReduceDurabilityOfEquipment+13 - 48 8B FA              - mov rdi,rdx
PlayerController:ReduceDurabilityOfEquipment+16 - 4C 89 45 C8           - mov [rbp-38],r8
PlayerController:ReduceDurabilityOfEquipment+1a - C7 45 D8 00000000     - mov [rbp-28],00000000
PlayerController:ReduceDurabilityOfEquipment+21 - C7 45 DC 00000000     - mov [rbp-24],00000000
PlayerController:ReduceDurabilityOfEquipment+28 - C7 45 E0 00000000     - mov [rbp-20],00000000
PlayerController:ReduceDurabilityOfEquipment+2f - C7 45 E4 00000000     - mov [rbp-1C],00000000
PlayerController:ReduceDurabilityOfEquipment+36 - 48 8B D5              - mov rdx,rbp
PlayerController:ReduceDurabilityOfEquipment+39 - 48 83 C2 D8           - add rdx,-28
PlayerController:ReduceDurabilityOfEquipment+3d - 48 8B CF              - mov rcx,rdi
PlayerController:ReduceDurabilityOfEquipment+40 - 45 33 C0              - xor r8d,r8d
PlayerController:ReduceDurabilityOfEquipment+43 - 83 3F 00              - cmp dword ptr [rdi],00
PlayerController:ReduceDurabilityOfEquipment+46 - 49 BB C5717A7484020000 - mov r11,00000284747A71C5
PlayerController:ReduceDurabilityOfEquipment+50 - 41 FF D3              - call r11
PlayerController:ReduceDurabilityOfEquipment+53 - 48 63 45 D8           - movsxd  rax,dword ptr [rbp-28]

}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>185</ID>
          <Description>"Player move speed"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : CoreKeeper.exe
  Version: 
  Date   : 2023-09-24
  Author : bbfox @https://opencheattables.com/
}

[ENABLE]


aobscanregion(INJECT_PLAYER_DATA,PlayerControllerManagedUpdateProc+1000,PlayerControllerManagedUpdateProc+11F0,48 8B 86 ?? ?? ?? ?? 48 8B C8 83 38 00 49 BB ?? ?? ?? ?? ?? ?? ?? ?? 41 FF D3 85 C0) // should be unique
alloc(newmem,$1000,INJECT_PLAYER_DATA)

alloc(INJECT_PLAYER_DATAo, 7)

label(code)
label(return)
//label(i_char_base_addr)
label(i_char_localHealth_addr)

INJECT_PLAYER_DATAo:
  readmem(INJECT_PLAYER_DATA, 7)

newmem:
  mov [i_char_localHealth_addr], rsi

code:
  //&lt;sVehicleRiding&gt;k__BackingField
  mov rax,[rsi+000002A8]
  //reassemble(INJECT_PLAYER_DATA)
  jmp return

align 10 cc
  i_char_base_addr:
  dq 0
  i_char_localHealth_addr:
  dq 0

INJECT_PLAYER_DATA:
  jmp newmem
  nop 2
return:

//registersymbol(i_char_base_addr)
registersymbol(INJECT_PLAYER_DATA)
registersymbol(INJECT_PLAYER_DATAo)
registersymbol(i_char_localHealth_addr)

[DISABLE]

INJECT_PLAYER_DATA:
  //db 48 8B 86 90 02 00 00
  readmem(INJECT_PLAYER_DATAo, 7)

unregistersymbol(*)
unregistersymbol(INJECT_PLAYER_DATAo)
dealloc(newmem)
dealloc(INJECT_PLAYER_DATAo)

{
// ORIGINAL CODE - INJECTION POINT: PlayerController:ManagedUpdate+10f9

PlayerController:ManagedUpdate+10bf: 48 05 C8 FD FF FF              - add rax,FFFFFFFFFFFFFDC8
PlayerController:ManagedUpdate+10c5: 48 8B 8D B8 FD FF FF           - mov rcx,[rbp-00000248]
PlayerController:ManagedUpdate+10cc: 48 89 8D C8 FD FF FF           - mov [rbp-00000238],rcx
PlayerController:ManagedUpdate+10d3: 48 63 8D C0 FD FF FF           - movsxd  rcx,dword ptr [rbp-00000240]
PlayerController:ManagedUpdate+10da: 89 8D D0 FD FF FF              - mov [rbp-00000230],ecx
PlayerController:ManagedUpdate+10e0: 48 8D 08                       - lea rcx,[rax]
PlayerController:ManagedUpdate+10e3: 66 66 90                       - nop 3
PlayerController:ManagedUpdate+10e6: 49 BB 10 A4 65 0B 95 01 00 00  - mov r11,Direction:FromVector
PlayerController:ManagedUpdate+10f0: 41 FF D3                       - call r11
PlayerController:ManagedUpdate+10f3: 89 85 38 FA FF FF              - mov [rbp-000005C8],eax
// ---------- INJECTING HERE ----------
PlayerController:ManagedUpdate+10f9: 48 8B 86 A8 02 00 00           - mov rax,[rsi+000002A8]
// ---------- DONE INJECTING  ----------
PlayerController:ManagedUpdate+1100: 48 8B C8                       - mov rcx,rax
PlayerController:ManagedUpdate+1103: 83 38 00                       - cmp dword ptr [rax],00
PlayerController:ManagedUpdate+1106: 49 BB 90 A8 A2 0C 95 01 00 00  - mov r11,PlayerState.State:get_isActive
PlayerController:ManagedUpdate+1110: 41 FF D3                       - call r11
PlayerController:ManagedUpdate+1113: 85 C0                          - test eax,eax
PlayerController:ManagedUpdate+1115: 0F 84 25 00 00 00              - je PlayerController:ManagedUpdate+1140
PlayerController:ManagedUpdate+111b: 48 8B 86 A8 02 00 00           - mov rax,[rsi+000002A8]
PlayerController:ManagedUpdate+1122: 48 8B C8                       - mov rcx,rax
PlayerController:ManagedUpdate+1125: 83 38 00                       - cmp dword ptr [rax],00
PlayerController:ManagedUpdate+1128: 48 8D 64 24 00                 - lea rsp,[rsp+00]
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>186</ID>
              <Description>"localHealth"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>808080</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>i_char_localHealth_addr</Address>
              <Offsets>
                <Offset>B90</Offset>
              </Offsets>
            </CheatEntry>
            <CheatEntry>
              <ID>698</ID>
              <Description>"movementSpeed"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>FF8080</Color>
              <VariableType>Float</VariableType>
              <Address>i_char_localHealth_addr</Address>
              <Offsets>
                <Offset>840</Offset>
              </Offsets>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>183</ID>
          <Description>"Damage to Player HP multiplier"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : CoreKeeper.exe
  Version: 
  Date   : 2022-03-30
  Author : bbfox@ https://opencheattables.com
}

[ENABLE]

aobscanregion(INJECT_HP_DAMAGE,PlayerControllerDealDamageToPlayerProc+151,PlayerControllerDealDamageToPlayerProc+5a0,2B 85 B0 FC FF FF 89 87 90 0B 00 00 48 63 87 90 0B 00 00)
alloc(newmem,$1000,INJECT_HP_DAMAGE)

label(code)
label(return)
label(vf_damage_to_p_multi)

newmem:
  push r15
  vmovss xmm14, [vf_damage_to_p_multi]
  mov r15d, [rbp-00000350]
  cvtsi2ss xmm15, r15d
  vmulss xmm14, xmm14, xmm15
  vcvtss2si r15d, xmm14
  mov [rbp-00000350], r15d

endp:
  pop r15

code:
  sub eax,[rbp-00000350]
  mov [rdi+00000B90],eax
  movsxd  rax,dword ptr [rdi+00000B90]
  jmp return
align 10 cc
  vf_damage_to_p_multi:
  dd (float)0.75

INJECT_HP_DAMAGE:
  jmp far newmem
  nop 5
return:
registersymbol(vf_damage_to_p_multi)
registersymbol(INJECT_HP_DAMAGE)

[DISABLE]

INJECT_HP_DAMAGE:
  db 2B 85 B0 FC FF FF 89 87 90 0B 00 00 48 63 87 90 0B 00 00

unregistersymbol(*)
unregistersymbol(INJECT_HP_DAMAGEo)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: PlayerController:DealDamageToPlayer+160

PlayerController:DealDamageToPlayer+3a - 48 8D 6D 00           - lea rbp,[rbp+00]
PlayerController:DealDamageToPlayer+3e - 49 BB 25FA23D994010000 - mov r11,00000194D923FA25
PlayerController:DealDamageToPlayer+48 - 41 FF D3              - call r11
PlayerController:DealDamageToPlayer+4b - C7 85 20FDFFFF 00000000 - mov [rbp-000002E0],00000000
PlayerController:DealDamageToPlayer+55 - C7 85 24FDFFFF 00000000 - mov [rbp-000002DC],00000000
PlayerController:DealDamageToPlayer+5f - C7 85 28FDFFFF 00000000 - mov [rbp-000002D8],00000000
PlayerController:DealDamageToPlayer+69 - C7 85 30FDFFFF 00000000 - mov [rbp-000002D0],00000000
PlayerController:DealDamageToPlayer+73 - C7 85 34FDFFFF 00000000 - mov [rbp-000002CC],00000000
PlayerController:DealDamageToPlayer+7d - C7 85 38FDFFFF 00000000 - mov [rbp-000002C8],00000000
PlayerController:DealDamageToPlayer+87 - C7 85 3CFDFFFF 00000000 - mov [rbp-000002C4],00000000
PlayerController:DealDamageToPlayer+91 - C7 85 40FDFFFF 00000000 - mov [rbp-000002C0],00000000
PlayerController:DealDamageToPlayer+9b - C7 85 44FDFFFF 00000000 - mov [rbp-000002BC],00000000
PlayerController:DealDamageToPlayer+a5 - C7 85 48FDFFFF 00000000 - mov [rbp-000002B8],00000000
PlayerController:DealDamageToPlayer+af - C7 85 4CFDFFFF 00000000 - mov [rbp-000002B4],00000000
PlayerController:DealDamageToPlayer+b9 - C7 85 50FDFFFF 00000000 - mov [rbp-000002B0],00000000
PlayerController:DealDamageToPlayer+c3 - C7 85 54FDFFFF 00000000 - mov [rbp-000002AC],00000000
PlayerController:DealDamageToPlayer+cd - C7 85 58FDFFFF 00000000 - mov [rbp-000002A8],00000000
PlayerController:DealDamageToPlayer+d7 - C7 85 5CFDFFFF 00000000 - mov [rbp-000002A4],00000000
PlayerController:DealDamageToPlayer+e1 - C7 85 60FDFFFF 00000000 - mov [rbp-000002A0],00000000
PlayerController:DealDamageToPlayer+eb - C7 85 64FDFFFF 00000000 - mov [rbp-0000029C],00000000
PlayerController:DealDamageToPlayer+f5 - C7 85 68FDFFFF 00000000 - mov [rbp-00000298],00000000
PlayerController:DealDamageToPlayer+ff - C7 85 6CFDFFFF 00000000 - mov [rbp-00000294],00000000
PlayerController:DealDamageToPlayer+109- C7 85 70FDFFFF 00000000 - mov [rbp-00000290],00000000
PlayerController:DealDamageToPlayer+113- C7 85 74FDFFFF 00000000 - mov [rbp-0000028C],00000000
PlayerController:DealDamageToPlayer+11d- C7 85 78FDFFFF 00000000 - mov [rbp-00000288],00000000
PlayerController:DealDamageToPlayer+127- C7 85 7CFDFFFF 00000000 - mov [rbp-00000284],00000000
PlayerController:DealDamageToPlayer+131- C7 85 80FDFFFF 00000000 - mov [rbp-00000280],00000000
PlayerController:DealDamageToPlayer+13b- 0FB6 87 95070000      - movzx eax,byte ptr [rdi+00000795]
PlayerController:DealDamageToPlayer+142- 85 C0                 - test eax,eax
PlayerController:DealDamageToPlayer+144- 0F85 290C0000         - jne PlayerController:DealDamageToPlayer+d73
PlayerController:DealDamageToPlayer+14a- 0FB6 87 A40B0000      - movzx eax,byte ptr [rdi+00000BA4]
PlayerController:DealDamageToPlayer+151- 85 C0                 - test eax,eax
PlayerController:DealDamageToPlayer+153- 0F85 1A0C0000         - jne PlayerController:DealDamageToPlayer+d73
PlayerController:DealDamageToPlayer+159- 48 63 87 880B0000     - movsxd  rax,dword ptr [rdi+00000B88]

// ---------- INJECTING HERE ----------
PlayerController:DealDamageToPlayer+160: 2B 85 B0 FC FF FF              - sub eax,[rbp-00000350]
// ---------- DONE INJECTING  ----------
PlayerController:DealDamageToPlayer+166: 89 87 88 0B 00 00              - mov [rdi+00000B88],eax
PlayerController:DealDamageToPlayer+16c: 48 63 87 88 0B 00 00           - movsxd  rax,dword ptr [rdi+00000B88]
PlayerController:DealDamageToPlayer+173: 85 C0                          - test eax,eax
PlayerController:DealDamageToPlayer+175: 0F 8F 60 02 00 00              - jg PlayerController:DealDamageToPlayer+3db
PlayerController:DealDamageToPlayer+17b: 48 8D 87 C0 00 00 00           - lea rax,[rdi+000000C0]
PlayerController:DealDamageToPlayer+182: 48 63 08                       - movsxd  rcx,dword ptr [rax]
PlayerController:DealDamageToPlayer+185: 89 8D 48 FE FF FF              - mov [rbp-000001B8],ecx
PlayerController:DealDamageToPlayer+18b: 48 63 40 04                    - movsxd  rax,dword ptr [rax+04]
PlayerController:DealDamageToPlayer+18f: 89 85 4C FE FF FF              - mov [rbp-000001B4],eax
PlayerController:DealDamageToPlayer+195: 48 B8 90 8B CA B9 93 01 00 00  - mov rax,00000193B9CA8B90
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>184</ID>
              <Description>"multiplier"</Description>
              <DropDownList DisplayValueAsItem="1">0:Normal
1:Try to keep
2:1pt
3:No damage
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>Float</VariableType>
              <Address>vf_damage_to_p_multi</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>181</ID>
          <Description>"HP recover multiplier"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : CoreKeeper.exe
  Version: 
  Date   : 2023-09-24
  Author : bbfox @https://opencheattables.com/
}

[ENABLE]
aobscanregion(INJECT_FASTER_HP_ADD,PlayerControllerHealPlayerProc+200,PlayerControllerHealPlayerProc+600,F3 0F 5A C0 F2 0F 2C F0 48) // should be unique
alloc(newmem,$1000,INJECT_FASTER_HP_ADD)

label(code)
label(return)
label(vf_addhp_multi)

newmem:


code:
  cvtss2sd xmm0,xmm0
  cvttsd2si esi,xmm0

  // inject start
  vmovss xmm15, [vf_addhp_multi]
  cvtsi2ss xmm14, esi
  vmulss xmm15, xmm14, xmm15
  cvtss2si esi, xmm15
  // inject end

  jmp return

align 10 cc
  vf_addhp_multi:
  dd (float)1.5


INJECT_FASTER_HP_ADD:
  jmp newmem
  nop 3

return:
registersymbol(vf_addhp_multi)
registersymbol(INJECT_FASTER_HP_ADD)

[DISABLE]

INJECT_FASTER_HP_ADD:
  db F3 0F 5A C0 F2 0F 2C F0 48

unregistersymbol(*)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: PlayerController:HealPlayer+222

PlayerController:HealPlayer+1f7: F3 0F 10 45 88        - movss xmm0,[rbp-78]
PlayerController:HealPlayer+1fc: F3 0F 5A C0           - cvtss2sd xmm0,xmm0
PlayerController:HealPlayer+200: F2 0F 5A E8           - cvtsd2ss xmm5,xmm0
PlayerController:HealPlayer+204: F3 0F 11 6D 84        - movss [rbp-7C],xmm5
PlayerController:HealPlayer+209: EB 12                 - jmp PlayerController:HealPlayer+21d
PlayerController:HealPlayer+20b: F3 0F 10 45 8C        - movss xmm0,[rbp-74]
PlayerController:HealPlayer+210: F3 0F 5A C0           - cvtss2sd xmm0,xmm0
PlayerController:HealPlayer+214: F2 0F 5A E8           - cvtsd2ss xmm5,xmm0
PlayerController:HealPlayer+218: F3 0F 11 6D 84        - movss [rbp-7C],xmm5
PlayerController:HealPlayer+21d: F3 0F 10 45 84        - movss xmm0,[rbp-7C]
// ---------- INJECTING HERE ----------
PlayerController:HealPlayer+222: F3 0F 5A C0           - cvtss2sd xmm0,xmm0
// ---------- DONE INJECTING  ----------
PlayerController:HealPlayer+226: F2 0F 2C F0           - cvttsd2si esi,xmm0
PlayerController:HealPlayer+22a: 48 63 87 88 0B 00 00  - movsxd  rax,dword ptr [rdi+00000B88]
PlayerController:HealPlayer+231: 03 C6                 - add eax,esi
PlayerController:HealPlayer+233: 89 87 88 0B 00 00     - mov [rdi+00000B88],eax
PlayerController:HealPlayer+239: 48 63 87 88 0B 00 00  - movsxd  rax,dword ptr [rdi+00000B88]
PlayerController:HealPlayer+240: 48 89 85 68 FF FF FF  - mov [rbp-00000098],rax
PlayerController:HealPlayer+247: 48 8B CF              - mov rcx,rdi
PlayerController:HealPlayer+24a: 48 8B 07              - mov rax,[rdi]
PlayerController:HealPlayer+24d: FF 90 C0 01 00 00     - call qword ptr [rax+000001C0]
PlayerController:HealPlayer+253: 48 8B 8D 68 FF FF FF  - mov rcx,[rbp-00000098]
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>182</ID>
              <Description>"Multiplier"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>Float</VariableType>
              <Address>vf_addhp_multi</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>160</ID>
          <Description>"Skill XP multiplier"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : CoreKeeper.exe
  Version: 
  Date   : 2023-09-24
  Author : bbfox @https://opencheattables.com/
}

[ENABLE]
aobscanregion(INJECT_SKILL_XP_MULTI,PlayerControllerAddSkillProc+118,PlayerControllerAddSkillProc+238,48 8B C8 48 8B D7) // should be unique
alloc(newmem,$1000,INJECT_SKILL_XP_MULTI)

label(code)
label(return)
label(vf_skill_xp_multi)

newmem:
  mov rcx, dword ptr [rbp-00000250]

  vmovss xmm14, [vf_skill_xp_multi]
  cvtsi2ss xmm15, rcx
  vmulss xmm15, xmm15, xmm14
  cvtss2si rcx, xmm15

  mov dword ptr [rbp-00000250], rcx



code:
  mov rcx,rax
  mov rdx,rdi
  jmp return

align 10 cc
  i_skill_xp_multi:
  dd 4
  vf_skill_xp_multi:
  dd (float)6

INJECT_SKILL_XP_MULTI:
  jmp newmem
  nop
return:

registersymbol(vf_skill_xp_multi)
registersymbol(INJECT_SKILL_XP_MULTI)

[DISABLE]

INJECT_SKILL_XP_MULTI:
  db 48 8B C8 48 8B D7

unregistersymbol(*)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: PlayerController:AddSkill+12c

PlayerController:AddSkill+fd: 48 8B CD                       - mov rcx,rbp
PlayerController:AddSkill+100: 48 81 C1 D0 FD FF FF           - add rcx,FFFFFFFFFFFFFDD0
PlayerController:AddSkill+107: 48 8B D7                       - mov rdx,rdi
PlayerController:AddSkill+10a: 4D 8B C5                       - mov r8,r13
PlayerController:AddSkill+10d: 90                             - nop
PlayerController:AddSkill+10e: 49 BB 70 19 78 74 84 02 00 00  - mov r11,SkillExtensions:GetConditionDataForSkill
PlayerController:AddSkill+118: 41 FF D3                       - call r11
PlayerController:AddSkill+11b: 48 B8 C0 8B D0 25 83 02 00 00  - mov rax,0000028325D08BC0
PlayerController:AddSkill+125: 48 8B 00                       - mov rax,[rax]
PlayerController:AddSkill+128: 48 8B 40 48                    - mov rax,[rax+48]
// ---------- INJECTING HERE ----------
PlayerController:AddSkill+12c: 48 8B C8                       - mov rcx,rax
// ---------- DONE INJECTING  ----------
PlayerController:AddSkill+12f: 48 8B D7                       - mov rdx,rdi
PlayerController:AddSkill+132: 4C 63 85 B0 FD FF FF           - movsxd  r8,dword ptr [rbp-00000250]
PlayerController:AddSkill+139: 83 38 00                       - cmp dword ptr [rax],00
PlayerController:AddSkill+13c: 66 90                          - nop 2
PlayerController:AddSkill+13e: 49 BB C0 7D 87 74 84 02 00 00  - mov r11,SaveManagerAddSkillValueProc
PlayerController:AddSkill+148: 41 FF D3                       - call r11
PlayerController:AddSkill+14b: 48 B8 C0 8B D0 25 83 02 00 00  - mov rax,0000028325D08BC0
PlayerController:AddSkill+155: 48 8B 00                       - mov rax,[rax]
PlayerController:AddSkill+158: 48 8B 40 48                    - mov rax,[rax+48]
PlayerController:AddSkill+15c: 48 8B C8                       - mov rcx,rax
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>365</ID>
              <Description>"XP multiplier"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>Float</VariableType>
              <Address>vf_skill_xp_multi</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>164</ID>
          <Description>"Approx. Damage multiplier"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : CoreKeeper.exe
  Version: 
  Date   : 2023-10-05
  Author : bbfox @https://opencheattables.com/
}

[ENABLE]
aobscanregion(INJECT_DAMAGE_MULTI,EntityUtilityGetDamageInfoProc+680,EntityUtilityGetDamageInfoProc+B50,48 89 4D C8 48 8D 08) // should be unique

alloc(newmem,$1000,INJECT_DAMAGE_MULTI)

label(code)
label(return)
label(vf_damage_multi)

newmem:

  vmovss xmm15, [vf_damage_multi]
  cvtsi2ss xmm14, r9
  vmulss xmm15, xmm14, xmm15
  vcvtss2si r9, xmm15


code:
  mov [rbp-38],rcx
  lea rcx,[rax]
  jmp return


align 10 cc
  vf_damage_multi:
  dd (float)1.5
  db EB 3B 54 68 69 73 20 74 61 62 6C 65 20 63 6F 6D 65 73 20 66 72 6F 6D 20 68 74 74 70 73 3A 2F
  db 2F 6F 70 65 6E 63 68 65 61 74 74 61 62 6C 65 73 2E 63 6F 6D 20 2F 20 43 45 20 37 2E 34 2B
INJECT_DAMAGE_MULTI:
  jmp newmem
  nop 2
return:
registersymbol(vf_damage_multi)
registersymbol(INJECT_DAMAGE_MULTI)

[DISABLE]

INJECT_DAMAGE_MULTI:
  db 48 89 4D C8 48 8D 08

unregistersymbol(*)
dealloc(newmem)


{
// ORIGINAL CODE - INJECTION POINT: EntityUtility:GetDamageInfo+702
EntityUtility:GetDamageInfo+66e - 48 89 84 24 80000000  - mov [rsp+00000080],rax
EntityUtility:GetDamageInfo+676 - 48 8B 4D 70           - mov rcx,[rbp+70]
EntityUtility:GetDamageInfo+67a - 48 8B C5              - mov rax,rbp
EntityUtility:GetDamageInfo+67d - 48 83 C0 90           - add rax,-70
EntityUtility:GetDamageInfo+681 - 48 8B 11              - mov rdx,[rcx]
EntityUtility:GetDamageInfo+684 - 48 89 55 90           - mov [rbp-70],rdx
EntityUtility:GetDamageInfo+688 - 48 8B 49 08           - mov rcx,[rcx+08]
EntityUtility:GetDamageInfo+68c - 48 89 4D 98           - mov [rbp-68],rcx
EntityUtility:GetDamageInfo+690 - 48 89 44 24 78        - mov [rsp+78],rax
EntityUtility:GetDamageInfo+695 - 48 8B 4D 68           - mov rcx,[rbp+68]
EntityUtility:GetDamageInfo+699 - 48 8B C5              - mov rax,rbp
EntityUtility:GetDamageInfo+69c - 48 83 C0 A0           - add rax,-60
EntityUtility:GetDamageInfo+6a0 - 48 8B 11              - mov rdx,[rcx]
EntityUtility:GetDamageInfo+6a3 - 48 89 55 A0           - mov [rbp-60],rdx
EntityUtility:GetDamageInfo+6a7 - 48 8B 49 08           - mov rcx,[rcx+08]
EntityUtility:GetDamageInfo+6ab - 48 89 4D A8           - mov [rbp-58],rcx
EntityUtility:GetDamageInfo+6af - 48 89 44 24 70        - mov [rsp+70],rax
EntityUtility:GetDamageInfo+6b4 - 48 8B 85 E0FEFFFF     - mov rax,[rbp-00000120]
EntityUtility:GetDamageInfo+6bb - 48 89 44 24 60        - mov [rsp+60],rax
EntityUtility:GetDamageInfo+6c0 - 48 8B 85 68FFFFFF     - mov rax,[rbp-00000098]
EntityUtility:GetDamageInfo+6c7 - 48 89 44 24 58        - mov [rsp+58],rax
EntityUtility:GetDamageInfo+6cc - 48 8B C5              - mov rax,rbp
EntityUtility:GetDamageInfo+6cf - 48 83 C0 B0           - add rax,-50
EntityUtility:GetDamageInfo+6d3 - 48 8B 8D 48FFFFFF     - mov rcx,[rbp-000000B8]
EntityUtility:GetDamageInfo+6da: 48 89 4D B0                    - mov [rbp-50],rcx
EntityUtility:GetDamageInfo+6de: 48 8B 8D 50 FF FF FF           - mov rcx,[rbp-000000B0]
EntityUtility:GetDamageInfo+6e5: 48 89 4D B8                    - mov [rbp-48],rcx
EntityUtility:GetDamageInfo+6e9: 48 8D 10                       - lea rdx,[rax]
EntityUtility:GetDamageInfo+6ec: 48 8B 4D 38                    - mov rcx,[rbp+38]
EntityUtility:GetDamageInfo+6f0: 48 8B C5                       - mov rax,rbp
EntityUtility:GetDamageInfo+6f3: 48 83 C0 C0                    - add rax,-40
EntityUtility:GetDamageInfo+6f7: 4C 8B 11                       - mov r10,[rcx]
EntityUtility:GetDamageInfo+6fa: 4C 89 55 C0                    - mov [rbp-40],r10
EntityUtility:GetDamageInfo+6fe: 48 8B 49 08                    - mov rcx,[rcx+08]
// ---------- INJECTING HERE ----------
EntityUtility:GetDamageInfo+702: 48 89 4D C8                    - mov [rbp-38],rcx
// ---------- DONE INJECTING  ----------
EntityUtility:GetDamageInfo+706: 48 8D 08                       - lea rcx,[rax]
EntityUtility:GetDamageInfo+709: 48 8D 64 24 00                 - lea rsp,[rsp+00]
EntityUtility:GetDamageInfo+70e: 49 BB 20 3B 0D 0C 95 01 00 00  - mov r11,EntityUtility:CalculateDamage
EntityUtility:GetDamageInfo+718: 41 FF D3                       - call r11
EntityUtility:GetDamageInfo+71b: 4C 8B E8                       - mov r13,rax
EntityUtility:GetDamageInfo+71e: 44 89 2F                       - mov [rdi],r13d
EntityUtility:GetDamageInfo+721: 48 63 85 D0 FE FF FF           - movsxd  rax,dword ptr [rbp-00000130]
EntityUtility:GetDamageInfo+728: 49 8B CD                       - mov rcx,r13
EntityUtility:GetDamageInfo+72b: 2B C8                          - sub ecx,eax
EntityUtility:GetDamageInfo+72d: 33 C0                          - xor eax,eax
EntityUtility:GetDamageInfo+72f - 85 C9                 - test ecx,ecx
EntityUtility:GetDamageInfo+731 - 48 0F4F C1            - cmovg rax,rcx
EntityUtility:GetDamageInfo+735 - 41 89 07              - mov [r15],eax
EntityUtility:GetDamageInfo+738 - 0FB6 85 D8000000      - movzx eax,byte ptr [rbp+000000D8]
EntityUtility:GetDamageInfo+73f - 85 C0                 - test eax,eax
EntityUtility:GetDamageInfo+741 - 0F85 29000000         - jne EntityUtility:GetDamageInfo+770
EntityUtility:GetDamageInfo+747 - 48 63 85 D4FEFFFF     - movsxd  rax,dword ptr [rbp-0000012C]
EntityUtility:GetDamageInfo+74e - 85 C0                 - test eax,eax
EntityUtility:GetDamageInfo+750 - 7E 1E                 - jle EntityUtility:GetDamageInfo+770
EntityUtility:GetDamageInfo+752 - 0FB6 85 C0000000      - movzx eax,byte ptr [rbp+000000C0]
EntityUtility:GetDamageInfo+759 - 85 C0                 - test eax,eax
EntityUtility:GetDamageInfo+75b - 75 13                 - jne EntityUtility:GetDamageInfo+770
EntityUtility:GetDamageInfo+75d - 49 63 0F              - movsxd  rcx,dword ptr [r15]
EntityUtility:GetDamageInfo+760 - 48 63 85 D4FEFFFF     - movsxd  rax,dword ptr [rbp-0000012C]
EntityUtility:GetDamageInfo+767 - 3B C8                 - cmp ecx,eax
EntityUtility:GetDamageInfo+769 - 48 0F4C C1            - cmovl rax,rcx
EntityUtility:GetDamageInfo+76d - 41 89 07              - mov [r15],eax
EntityUtility:GetDamageInfo+770 - 49 63 07              - movsxd  rax,dword ptr [r15]
EntityUtility:GetDamageInfo+773 - 48 63 8D C8FEFFFF     - movsxd  rcx,dword ptr [rbp-00000138]

}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>165</ID>
              <Description>"multiplier"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">1.5:1.5
2:2
4:4
8:8
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>Float</VariableType>
              <Address>vf_damage_multi</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>501</ID>
      <Description>"*** Core Keeper 0.7.1.0-4ab5 EA  /  https://opencheattables.com  /  CE 7.5+ ***"</Description>
      <Options moHideChildren="1"/>
      <Color>800080</Color>
      <GroupHeader>1</GroupHeader>
      <CheatEntries>
        <CheatEntry>
          <ID>1001</ID>
          <Description>"-Item ID-"</Description>
          <DropDownList DisplayValueAsItem="1">30:Scarlet pickaxe
31:Scaret Hoe
32:Scarlet Shovel
53:Scarlet Fishrod
110:Torch
111:Campfire
1500:Copper Ore
1510:Iron Ore
1520:Gold Ore
1521:Scarlet Ore
1522:Octarine Ore
1523:Galaxite Ore
1600:Anicent Gemstone
4016:Scarlet Workbench
6002:Tombstone
8301:Orb Lantern
8511:Scarlet Helm
8600:Copper Breastplate
8611:Scarlet Breastplate
8706:Scarlet Pants
8815:Polished Gold Crystal Necklance
8816:Anicent Gem Necklance
8853:Glow Tulip Ring
8854:Swift Ring
8858:Melting Crystal Ring
8866:Polished Glow Tulip Ring
8902:Scarlet Sword
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>000</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
  <UserdefinedSymbols/>
  <LuaScript>AddressList.Header.OnSectionClick = nil
IDs = {501, 182, 365, 364, 165, 168, 178, 3, 186, 184, 367, 368, 167,
       }

function contains(table, val)
   local i = 0
   for i=1, #table do
      if table[i] == val then
         return true
      end
   end
   return false
end


function onMemRecPreExecute(memoryrecord, newstate)
    if contains(IDs, memoryrecord.ID) and newstate then
	    memoryrecord.OnActivate = function(memoryrecord, before, currentstate)
		    return false
	    end
    end
end
</LuaScript>
</CheatTable>
