<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="42">
  <CheatEntries>
    <CheatEntry>
      <ID>5082</ID>
      <Description>"CompactMode"</Description>
      <Color>800000</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{$lua}
if syntaxcheck then return end
[ENABLE]

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]

cycleFullCompact(nil,false)


</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>1337163399</ID>
      <Description>"Disable All Scripts - (Always Run Before Closing CE)"</Description>
      <Color>8000FF</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{$lua}
if syntaxcheck then return end
[ENABLE]

local mainHook = ('Parkitect')
local al = getAddressList()
for i = 0, al.Count - 1 do
    if al[i].Active == true and al[i].Description ~= mainHook then al[i].Active = false
 end
end
for i = 0, al.Count - 1 do
     if al[i].Active == true  then al[i].Active = false
 end
end

if not syntaxcheck then
 synchronize(function()
   local t = createTimer()
   t.Interval,t.OnTimer = 500,function(tm)
     tm.Destroy()
     memrec.Active = false
   end
 end)
end

[DISABLE]
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>42</ID>
      <Description>"Parkitect"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{$lua}

if (LaunchMonoDataCollector()==0) then
  error('Failed to Activate Mono Features')
end

[ENABLE]





[DISABLE]


</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>63</ID>
          <Description>"Steam Achievements"</Description>
          <Options moHideChildren="1"/>
          <Color>800080</Color>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>62</ID>
              <Description>"A True Tycoon (Be Patient, May Take A Few Min)"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_TrueTycoon,8B 4E 4C 48 8D 64 24 00) // should be unique
define(INJECT_TrueTycoon,AbstractProgressableAchievement:setProgress+46)
alloc(newmem,$1000,INJECT_TrueTycoon)

label(code)
label(return)

newmem:

code:
  mov [rsi+4C],#1
  mov ecx,[rsi+4C]
  lea rsp,[rsp+00]
  jmp return

INJECT_TrueTycoon:
  jmp newmem
  nop 3
return:
registersymbol(INJECT_TrueTycoon)

[DISABLE]

INJECT_TrueTycoon:
  db 8B 4E 4C 48 8D 64 24 00

unregistersymbol(INJECT_TrueTycoon)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: 2A353BD6C56

2A353BD6C29: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
2A353BD6C2D: F2 0F 5A E8                    - cvtsd2ss xmm5,xmm0
2A353BD6C31: F3 0F 11 6D F4                 - movss [rbp-0C],xmm5
2A353BD6C36: F3 0F 10 45 F4                 - movss xmm0,[rbp-0C]
2A353BD6C3B: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
2A353BD6C3F: F2 0F 5A E8                    - cvtsd2ss xmm5,xmm0
2A353BD6C43: F3 0F 11 6E 48                 - movss [rsi+48],xmm5
2A353BD6C48: F3 0F 10 45 E8                 - movss xmm0,[rbp-18]
2A353BD6C4D: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
2A353BD6C51: F2 0F 11 45 E0                 - movsd [rbp-20],xmm0
// ---------- INJECTING HERE ----------
2A353BD6C56: 8B 4E 4C                       - mov ecx,[rsi+4C]
// ---------- DONE INJECTING  ----------
2A353BD6C59: 48 8D 64 24 00                 - lea rsp,[rsp+00]
2A353BD6C5E: 49 BB 00 D5 E0 64 A3 02 00 00  - mov r11,000002A364E0D500
2A353BD6C68: 41 FF D3                       - call r11
2A353BD6C6B: F2 0F 10 C8                    - movsd xmm1,xmm0
2A353BD6C6F: F2 0F 10 45 E0                 - movsd xmm0,[rbp-20]
2A353BD6C74: F2 0F 5A C9                    - cvtsd2ss xmm1,xmm1
2A353BD6C78: F3 0F 5A C9                    - cvtss2sd xmm1,xmm1
2A353BD6C7C: 66 0F 2F C8                    - comisd xmm1,xmm0
2A353BD6C80: 0F 8A 1D 00 00 00              - jp 2A353BD6CA3
2A353BD6C86: 0F 87 17 00 00 00              - ja 2A353BD6CA3
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>68</ID>
              <Description>"Adrenaline Megalopolis (Build A Ride)"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_AdrenalineMegalopolis,F6 74 16 48 8B CF 48 8D) // should be unique
define(INJECT_AdrenalineMegalopolis,BuildEveryRideAchievement:onAttractionAdded+243)
registersymbol(INJECT_AdrenalineMegalopolis)

INJECT_AdrenalineMegalopolis:
  db 90 90

[DISABLE]

INJECT_AdrenalineMegalopolis:
  db 74 16

unregistersymbol(INJECT_AdrenalineMegalopolis)


{
// ORIGINAL CODE - INJECTION POINT: 2A367125553

2A367125530: 41 FF D3                       - call r11
2A367125533: EB 1B                          - jmp 2A367125550
2A367125535: 48 89 65 C0                    - mov [rbp-40],rsp
2A367125539: 48 83 EC 20                    - sub rsp,20
2A36712553D: 48 8B C5                       - mov rax,rbp
2A367125540: 48 83 C0 98                    - add rax,-68
2A367125544: 48 89 85 78 FF FF FF           - mov [rbp-00000088],rax
2A36712554B: 48 8B 65 C0                    - mov rsp,[rbp-40]
2A36712554F: C3                             - ret 
2A367125550: 45 85 F6                       - test r14d,r14d
// ---------- INJECTING HERE ----------
2A367125553: 74 16                          - je 2A36712556B
// ---------- DONE INJECTING  ----------
2A367125555: 48 8B CF                       - mov rcx,rdi
2A367125558: 48 8D 64 24 00                 - lea rsp,[rsp+00]
2A36712555D: 90                             - nop 
2A36712555E: 49 BB E0 44 28 84 A0 02 00 00  - mov r11,000002A0842844E0
2A367125568: 41 FF D3                       - call r11
2A36712556B: 48 8B 5D C8                    - mov rbx,[rbp-38]
2A36712556F: 48 8B 75 D0                    - mov rsi,[rbp-30]
2A367125573: 48 8B 7D D8                    - mov rdi,[rbp-28]
2A367125577: 4C 8B 65 E0                    - mov r12,[rbp-20]
2A36712557B: 4C 8B 6D E8                    - mov r13,[rbp-18]
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>75</ID>
              <Description>"Popular Park 1,2,3"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_GuestsVisited,48 63 47 38 39 45 F0) // should be unique
define(INJECT_GuestsVisited,GetXGuestsAchievement:check+13)
alloc(newmem,$1000,INJECT_GuestsVisited)

label(code)
label(return)

newmem:

code:
  mov [rdi+38],#0
  movsxd  rax,dword ptr [rdi+38]
  cmp [rbp-10],eax
  jmp return

INJECT_GuestsVisited:
  jmp newmem
  nop 2
return:
registersymbol(INJECT_GuestsVisited)

[DISABLE]

INJECT_GuestsVisited:
  db 48 63 47 38 39 45 F0

unregistersymbol(INJECT_GuestsVisited)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: GetXGuestsAchievement:check+13

2A353BF75F8: 00 00                          - add [rax],al
2A353BF75FA: 00 00                          - add [rax],al
2A353BF75FC: 00 00                          - add [rax],al
2A353BF75FE: 00 00                          - add [rax],al
GetXGuestsAchievement:check: 55                             - push rbp
GetXGuestsAchievement:check+1: 48 8B EC                       - mov rbp,rsp
GetXGuestsAchievement:check+4: 48 83 EC 30                    - sub rsp,30
GetXGuestsAchievement:check+8: 48 89 7D F8                    - mov [rbp-08],rdi
GetXGuestsAchievement:check+c: 48 8B F9                       - mov rdi,rcx
GetXGuestsAchievement:check+f: 48 89 55 F0                    - mov [rbp-10],rdx
// ---------- INJECTING HERE ----------
GetXGuestsAchievement:check+13: 48 63 47 38                    - movsxd  rax,dword ptr [rdi+38]
// ---------- DONE INJECTING  ----------
GetXGuestsAchievement:check+17: 39 45 F0                       - cmp [rbp-10],eax
GetXGuestsAchievement:check+1a: 7C 17                          - jl GetXGuestsAchievement:check+33
GetXGuestsAchievement:check+1c: 48 8B CF                       - mov rcx,rdi
GetXGuestsAchievement:check+1f: 48 8D AD 00 00 00 00           - lea rbp,[rbp+00000000]
GetXGuestsAchievement:check+26: 49 BB D7 6C BD 53 A3 02 00 00  - mov r11,000002A353BD6CD7
GetXGuestsAchievement:check+30: 41 FF D3                       - call r11
GetXGuestsAchievement:check+33: 48 8B 7D F8                    - mov rdi,[rbp-08]
GetXGuestsAchievement:check+37: 48 8D 65 00                    - lea rsp,[rbp+00]
GetXGuestsAchievement:check+3b: 5D                             - pop rbp
GetXGuestsAchievement:check+3c: C3                             - ret 
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>78</ID>
              <Description>"Crowded"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_GuestsVisited1,48 63 4E 38 3B C1 7C) // should be unique
define(INJECT_GuestsVisited1,GetXGuestsTotalAchievement:check+1b)
alloc(newmem,$1000,INJECT_GuestsVisited1)

label(code)
label(return)

newmem:

code:
  mov [rsi+38],#0
  movsxd  rcx,dword ptr [rsi+38]
  cmp eax,ecx
  jmp return

INJECT_GuestsVisited1:
  jmp newmem
  nop
return:
registersymbol(INJECT_GuestsVisited1)

[DISABLE]

INJECT_GuestsVisited1:
  db 48 63 4E 38 3B C1

unregistersymbol(INJECT_GuestsVisited1)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: GetXGuestsTotalAchievement:check+1b

18460569B1E: 00 00                          - add [rax],al
GetXGuestsTotalAchievement:check: 55                             - push rbp
GetXGuestsTotalAchievement:check+1: 48 8B EC                       - mov rbp,rsp
GetXGuestsTotalAchievement:check+4: 48 83 EC 30                    - sub rsp,30
GetXGuestsTotalAchievement:check+8: 48 89 75 F8                    - mov [rbp-08],rsi
GetXGuestsTotalAchievement:check+c: 48 8B F1                       - mov rsi,rcx
GetXGuestsTotalAchievement:check+f: 48 63 46 3C                    - movsxd  rax,dword ptr [rsi+3C]
GetXGuestsTotalAchievement:check+13: FF C0                          - inc eax
GetXGuestsTotalAchievement:check+15: 48 8B C8                       - mov rcx,rax
GetXGuestsTotalAchievement:check+18: 89 4E 3C                       - mov [rsi+3C],ecx
// ---------- INJECTING HERE ----------
GetXGuestsTotalAchievement:check+1b: 48 63 4E 38                    - movsxd  rcx,dword ptr [rsi+38]
// ---------- DONE INJECTING  ----------
GetXGuestsTotalAchievement:check+1f: 3B C1                          - cmp eax,ecx
GetXGuestsTotalAchievement:check+21: 7C 10                          - jl GetXGuestsTotalAchievement:check+33
GetXGuestsTotalAchievement:check+23: 48 8B CE                       - mov rcx,rsi
GetXGuestsTotalAchievement:check+26: 49 BB D7 96 44 60 84 01 00 00  - mov r11,00000184604496D7
GetXGuestsTotalAchievement:check+30: 41 FF D3                       - call r11
GetXGuestsTotalAchievement:check+33: 48 8B 75 F8                    - mov rsi,[rbp-08]
GetXGuestsTotalAchievement:check+37: 48 8D 65 00                    - lea rsp,[rbp+00]
GetXGuestsTotalAchievement:check+3b: 5D                             - pop rbp
GetXGuestsTotalAchievement:check+3c: C3                             - ret 
18460569B5D: 00 00                          - add [rax],al
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>80</ID>
              <Description>"Payback Time (Pay Off 1 Loan)"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_PaybackLoan,48 63 4E 3C 3B C1 7C 13) // should be unique
define(INJECT_PaybackLoan,PaybackXLoansAchievement:check+20)
alloc(newmem,$1000,INJECT_PaybackLoan)

label(code)
label(return)

newmem:

code:
  mov [rsi+3C],#0
  movsxd  rcx,dword ptr [rsi+3C]
  cmp eax,ecx
  jmp return

INJECT_PaybackLoan:
  jmp newmem
  nop
return:
registersymbol(INJECT_PaybackLoan)

[DISABLE]

INJECT_PaybackLoan:
  db 48 63 4E 3C 3B C1

unregistersymbol(INJECT_PaybackLoan)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: PaybackXLoansAchievement:check+20

PaybackXLoansAchievement:check+1: 48 8B EC                       - mov rbp,rsp
PaybackXLoansAchievement:check+4: 48 83 EC 30                    - sub rsp,30
PaybackXLoansAchievement:check+8: 48 89 75 F8                    - mov [rbp-08],rsi
PaybackXLoansAchievement:check+c: 48 8B F1                       - mov rsi,rcx
PaybackXLoansAchievement:check+f: 48 63 46 38                    - movsxd  rax,dword ptr [rsi+38]
PaybackXLoansAchievement:check+13: FF C0                          - inc eax
PaybackXLoansAchievement:check+15: 89 46 38                       - mov [rsi+38],eax
PaybackXLoansAchievement:check+18: FF C0                          - inc eax
PaybackXLoansAchievement:check+1a: 48 8B C8                       - mov rcx,rax
PaybackXLoansAchievement:check+1d: 89 4E 38                       - mov [rsi+38],ecx
// ---------- INJECTING HERE ----------
PaybackXLoansAchievement:check+20: 48 63 4E 3C                    - movsxd  rcx,dword ptr [rsi+3C]
// ---------- DONE INJECTING  ----------
PaybackXLoansAchievement:check+24: 3B C1                          - cmp eax,ecx
PaybackXLoansAchievement:check+26: 7C 13                          - jl PaybackXLoansAchievement:check+3b
PaybackXLoansAchievement:check+28: 48 8B CE                       - mov rcx,rsi
PaybackXLoansAchievement:check+2b: 66 66 90                       - nop 3
PaybackXLoansAchievement:check+2e: 49 BB D7 96 44 60 84 01 00 00  - mov r11,00000184604496D7
PaybackXLoansAchievement:check+38: 41 FF D3                       - call r11
PaybackXLoansAchievement:check+3b: 48 8B 75 F8                    - mov rsi,[rbp-08]
PaybackXLoansAchievement:check+3f: 48 8D 65 00                    - lea rsp,[rbp+00]
PaybackXLoansAchievement:check+43: 5D                             - pop rbp
PaybackXLoansAchievement:check+44: C3                             - ret 
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>82</ID>
              <Description>"Marketeer (Run 1 TV Campaign Ad)"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_TVad,48 63 47 38 44 3B F0) // should be unique
define(INJECT_TVad,RunXTvCampaignsAchievement:check+72)
alloc(newmem,$1000,INJECT_TVad)

label(code)
label(return)

newmem:

code:
  mov [rdi+38],#0
  movsxd  rax,dword ptr [rdi+38]
  cmp r14d,eax
  jmp return

INJECT_TVad:
  jmp newmem
  nop 2
return:
registersymbol(INJECT_TVad)

[DISABLE]

INJECT_TVad:
  db 48 63 47 38 44 3B F0

unregistersymbol(INJECT_TVad)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: RunXTvCampaignsAchievement:check+72

RunXTvCampaignsAchievement:check+53: 74 36                          - je RunXTvCampaignsAchievement:check+8b
RunXTvCampaignsAchievement:check+55: 41 83 3F 00                    - cmp dword ptr [r15],00
RunXTvCampaignsAchievement:check+59: 49 63 47 38                    - movsxd  rax,dword ptr [r15+38]
RunXTvCampaignsAchievement:check+5d: 83 F8 64                       - cmp eax,64
RunXTvCampaignsAchievement:check+60: 75 29                          - jne RunXTvCampaignsAchievement:check+8b
RunXTvCampaignsAchievement:check+62: 48 63 47 3C                    - movsxd  rax,dword ptr [rdi+3C]
RunXTvCampaignsAchievement:check+66: 4C 8B F0                       - mov r14,rax
RunXTvCampaignsAchievement:check+69: 41 FF C6                       - inc r14d
RunXTvCampaignsAchievement:check+6c: 49 8B C6                       - mov rax,r14
RunXTvCampaignsAchievement:check+6f: 89 47 3C                       - mov [rdi+3C],eax
// ---------- INJECTING HERE ----------
RunXTvCampaignsAchievement:check+72: 48 63 47 38                    - movsxd  rax,dword ptr [rdi+38]
// ---------- DONE INJECTING  ----------
RunXTvCampaignsAchievement:check+76: 44 3B F0                       - cmp r14d,eax
RunXTvCampaignsAchievement:check+79: 7C 10                          - jl RunXTvCampaignsAchievement:check+8b
RunXTvCampaignsAchievement:check+7b: 48 8B CF                       - mov rcx,rdi
RunXTvCampaignsAchievement:check+7e: 49 BB D7 96 44 60 84 01 00 00  - mov r11,00000184604496D7
RunXTvCampaignsAchievement:check+88: 41 FF D3                       - call r11
RunXTvCampaignsAchievement:check+8b: 48 8B 75 D8                    - mov rsi,[rbp-28]
RunXTvCampaignsAchievement:check+8f: 48 8B 7D E0                    - mov rdi,[rbp-20]
RunXTvCampaignsAchievement:check+93: 4C 8B 6D E8                    - mov r13,[rbp-18]
RunXTvCampaignsAchievement:check+97: 4C 8B 75 F0                    - mov r14,[rbp-10]
RunXTvCampaignsAchievement:check+9b: 4C 8B 7D F8                    - mov r15,[rbp-08]
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>84</ID>
              <Description>"One Small Step and The Lunatect (Complete 1 Campaign Map)"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_DLC1,8B 4E 4C 48 8D 64 24 00) // should be unique
define(INJECT_DLC1,AbstractProgressableAchievement:setProgress+46)
alloc(newmem,$1000,INJECT_DLC1)

label(code)
label(return)

newmem:

code:
  mov [rsi+4C],#0
  mov ecx,[rsi+4C]
  lea rsp,[rsp+00]
  jmp return

INJECT_DLC1:
  jmp newmem
  nop 3
return:
registersymbol(INJECT_DLC1)

[DISABLE]

INJECT_DLC1:
  db 8B 4E 4C 48 8D 64 24 00

unregistersymbol(INJECT_DLC1)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: AbstractProgressableAchievement:setProgress+46

AbstractProgressableAchievement:setProgress+19: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
AbstractProgressableAchievement:setProgress+1d: F2 0F 5A E8                    - cvtsd2ss xmm5,xmm0
AbstractProgressableAchievement:setProgress+21: F3 0F 11 6D F4                 - movss [rbp-0C],xmm5
AbstractProgressableAchievement:setProgress+26: F3 0F 10 45 F4                 - movss xmm0,[rbp-0C]
AbstractProgressableAchievement:setProgress+2b: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
AbstractProgressableAchievement:setProgress+2f: F2 0F 5A E8                    - cvtsd2ss xmm5,xmm0
AbstractProgressableAchievement:setProgress+33: F3 0F 11 6E 48                 - movss [rsi+48],xmm5
AbstractProgressableAchievement:setProgress+38: F3 0F 10 45 E8                 - movss xmm0,[rbp-18]
AbstractProgressableAchievement:setProgress+3d: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
AbstractProgressableAchievement:setProgress+41: F2 0F 11 45 E0                 - movsd [rbp-20],xmm0
// ---------- INJECTING HERE ----------
AbstractProgressableAchievement:setProgress+46: 8B 4E 4C                       - mov ecx,[rsi+4C]
// ---------- DONE INJECTING  ----------
AbstractProgressableAchievement:setProgress+49: 48 8D 64 24 00                 - lea rsp,[rsp+00]
AbstractProgressableAchievement:setProgress+4e: 49 BB 00 97 44 60 84 01 00 00  - mov r11,System.Object:__icall_wrapper___emul_iconv_to_r_un
AbstractProgressableAchievement:setProgress+58: 41 FF D3                       - call r11
AbstractProgressableAchievement:setProgress+5b: F2 0F 10 C8                    - movsd xmm1,xmm0
AbstractProgressableAchievement:setProgress+5f: F2 0F 10 45 E0                 - movsd xmm0,[rbp-20]
AbstractProgressableAchievement:setProgress+64: F2 0F 5A C9                    - cvtsd2ss xmm1,xmm1
AbstractProgressableAchievement:setProgress+68: F3 0F 5A C9                    - cvtss2sd xmm1,xmm1
AbstractProgressableAchievement:setProgress+6c: 66 0F 2F C8                    - comisd xmm1,xmm0
AbstractProgressableAchievement:setProgress+70: 0F 8A 1D 00 00 00              - jp AbstractProgressableAchievement:setProgress+93
AbstractProgressableAchievement:setProgress+76: 0F 87 17 00 00 00              - ja AbstractProgressableAchievement:setProgress+93
}
</AssemblerScript>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>59</ID>
          <Description>"Campaign Goals"</Description>
          <Options moHideChildren="1"/>
          <Color>800080</Color>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>50</ID>
              <Description>"Amount Goal Instant Win"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_GoalNumber,ERROR: Could not find unique AOB, tried code "48 63 40 40 48 83 C4 08") // should be unique
define(INJECT_GoalNumber,NumberScenarioGoal:get_value+b)
alloc(newmem,$1000,INJECT_GoalNumber)

label(code)
label(return)

newmem:

code:
  mov [rax+40],#0
  movsxd  rax,dword ptr [rax+40]
  add rsp,08
  jmp return

INJECT_GoalNumber:
  jmp newmem
  nop 3
return:
registersymbol(INJECT_GoalNumber)

[DISABLE]

INJECT_GoalNumber:
  db 48 63 40 40 48 83 C4 08

unregistersymbol(INJECT_GoalNumber)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: NumberScenarioGoal:get_value+b

1A554311F22: 00 00        - add [rax],al
1A554311F24: 00 00        - add [rax],al
1A554311F26: 00 00        - add [rax],al
1A554311F28: 00 00        - add [rax],al
1A554311F2A: 00 00        - add [rax],al
1A554311F2C: 00 00        - add [rax],al
1A554311F2E: 00 00        - add [rax],al
NumberScenarioGoal:get_value: 48 83 EC 08  - sub rsp,08
NumberScenarioGoal:get_value+4: 48 89 0C 24  - mov [rsp],rcx
NumberScenarioGoal:get_value+8: 48 8B C1     - mov rax,rcx
// ---------- INJECTING HERE ----------
NumberScenarioGoal:get_value+b: 48 63 40 40  - movsxd  rax,dword ptr [rax+40]
// ---------- DONE INJECTING  ----------
NumberScenarioGoal:get_value+f: 48 83 C4 08  - add rsp,08
NumberScenarioGoal:get_value+13: C3           - ret 
1A554311F44: 00 00        - add [rax],al
1A554311F46: 00 00        - add [rax],al
1A554311F48: 01 04 01     - add [rcx+rax],eax
1A554311F4B: 00 04 02     - add [rdx+rax],al
1A554311F4E: 00 00        - add [rax],al
1A554311F50: 00 00        - add [rax],al
1A554311F52: 00 00        - add [rax],al
1A554311F54: 00 00        - add [rax],al
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>52</ID>
              <Description>"Percent Goal Instant Win"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_GoalPercent,C1 F3 0F 10 40 40) // should be unique
define(INJECT_GoalPercent,PercentageScenarioGoal:get_value+b)
alloc(newmem,$1000,INJECT_GoalPercent)

label(code)
label(return)

newmem:

code:
  mov [rax+40],#0
  movss xmm0,[rax+40]
  jmp return

INJECT_GoalPercent:
  jmp newmem
return:
registersymbol(INJECT_GoalPercent)

[DISABLE]

INJECT_GoalPercent:
  db F3 0F 10 40 40

unregistersymbol(INJECT_GoalPercent)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: PercentageScenarioGoal:get_value+b

1A5545A6AF2: 00 00           - add [rax],al
1A5545A6AF4: 00 00           - add [rax],al
1A5545A6AF6: 00 00           - add [rax],al
1A5545A6AF8: 00 00           - add [rax],al
1A5545A6AFA: 00 00           - add [rax],al
1A5545A6AFC: 00 00           - add [rax],al
1A5545A6AFE: 00 00           - add [rax],al
PercentageScenarioGoal:get_value: 48 83 EC 08     - sub rsp,08
PercentageScenarioGoal:get_value+4: 48 89 0C 24     - mov [rsp],rcx
PercentageScenarioGoal:get_value+8: 48 8B C1        - mov rax,rcx
// ---------- INJECTING HERE ----------
PercentageScenarioGoal:get_value+b: F3 0F 10 40 40  - movss xmm0,[rax+40]
// ---------- DONE INJECTING  ----------
PercentageScenarioGoal:get_value+10: F3 0F 5A C0     - cvtss2sd xmm0,xmm0
PercentageScenarioGoal:get_value+14: F2 0F 5A C0     - cvtsd2ss xmm0,xmm0
PercentageScenarioGoal:get_value+18: 48 83 C4 08     - add rsp,08
PercentageScenarioGoal:get_value+1c: C3              - ret 
1A5545A6B1D: 00 00           - add [rax],al
1A5545A6B1F: 00 01           - add [rcx],al
1A5545A6B21: 04 01           - add al,01
1A5545A6B23: 00 04 02        - add [rdx+rax],al
1A5545A6B26: 00 00           - add [rax],al
1A5545A6B28: 00 00           - add [rax],al
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>55</ID>
              <Description>"Money Scenario Goal Instant Win"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_MoneyScenario,C1 F3 0F 10 40 40) // should be unique
define(INJECT_MoneyScenario,MoneyScenarioGoal:get_value+b)
alloc(newmem,$1000,INJECT_MoneyScenario)

label(code)
label(return)

newmem:

code:
  mov [rax+40],#0
  movss xmm0,[rax+40]
  jmp return

INJECT_MoneyScenario:
  jmp newmem
return:
registersymbol(INJECT_MoneyScenario)

[DISABLE]

INJECT_MoneyScenario:
  db F3 0F 10 40 40

unregistersymbol(INJECT_MoneyScenario)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: MoneyScenarioGoal:get_value+b

2A353D0F512: 00 00           - add [rax],al
2A353D0F514: 00 00           - add [rax],al
2A353D0F516: 00 00           - add [rax],al
2A353D0F518: 00 00           - add [rax],al
2A353D0F51A: 00 00           - add [rax],al
2A353D0F51C: 00 00           - add [rax],al
2A353D0F51E: 00 00           - add [rax],al
MoneyScenarioGoal:get_value: 48 83 EC 08     - sub rsp,08
MoneyScenarioGoal:get_value+4: 48 89 0C 24     - mov [rsp],rcx
MoneyScenarioGoal:get_value+8: 48 8B C1        - mov rax,rcx
// ---------- INJECTING HERE ----------
MoneyScenarioGoal:get_value+b: F3 0F 10 40 40  - movss xmm0,[rax+40]
// ---------- DONE INJECTING  ----------
MoneyScenarioGoal:get_value+10: F3 0F 5A C0     - cvtss2sd xmm0,xmm0
MoneyScenarioGoal:get_value+14: F2 0F 5A C0     - cvtsd2ss xmm0,xmm0
MoneyScenarioGoal:get_value+18: 48 83 C4 08     - add rsp,08
MoneyScenarioGoal:get_value+1c: C3              - ret 
2A353D0F53D: 00 00           - add [rax],al
2A353D0F53F: 00 01           - add [rcx],al
2A353D0F541: 04 01           - add al,01
2A353D0F543: 00 04 02        - add [rdx+rax],al
2A353D0F546: 00 00           - add [rax],al
2A353D0F548: 00 00           - add [rax],al
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>56</ID>
              <Description>"Coaster Goal Instant Win"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_CoasterGoal,48 63 46 40 F3 0F 2A C8) // should be unique
define(INJECT_CoasterGoal,CoastersGoal:get_progress+2b)
alloc(newmem,$1000,INJECT_CoasterGoal)

label(code)
label(return)

newmem:

code:
  mov [rsi+40],#0
  movsxd  rax,dword ptr [rsi+40]
  cvtsi2ss xmm1,eax
  jmp return

INJECT_CoasterGoal:
  jmp newmem
  nop 3
return:
registersymbol(INJECT_CoasterGoal)

[DISABLE]

INJECT_CoasterGoal:
  db 48 63 46 40 F3 0F 2A C8

unregistersymbol(INJECT_CoasterGoal)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: CoastersGoal:get_progress+2b

CoastersGoal:get_progress: 55                             - push rbp
CoastersGoal:get_progress+1: 48 8B EC                       - mov rbp,rsp
CoastersGoal:get_progress+4: 48 83 EC 30                    - sub rsp,30
CoastersGoal:get_progress+8: 48 89 75 F8                    - mov [rbp-08],rsi
CoastersGoal:get_progress+c: 48 8B F1                       - mov rsi,rcx
CoastersGoal:get_progress+f: 48 8D AD 00 00 00 00           - lea rbp,[rbp+00000000]
CoastersGoal:get_progress+16: 49 BB A0 94 DF 53 A3 02 00 00  - mov r11,CoastersGoal:getCompletedCoastersCount
CoastersGoal:get_progress+20: 41 FF D3                       - call r11
CoastersGoal:get_progress+23: F3 0F 2A C0                    - cvtsi2ss xmm0,eax
CoastersGoal:get_progress+27: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
// ---------- INJECTING HERE ----------
CoastersGoal:get_progress+2b: 48 63 46 40                    - movsxd  rax,dword ptr [rsi+40]
// ---------- DONE INJECTING  ----------
CoastersGoal:get_progress+2f: F3 0F 2A C8                    - cvtsi2ss xmm1,eax
CoastersGoal:get_progress+33: F3 0F 5A C9                    - cvtss2sd xmm1,xmm1
CoastersGoal:get_progress+37: F2 0F 5E C1                    - divsd xmm0,xmm1
CoastersGoal:get_progress+3b: F2 0F 5A C0                    - cvtsd2ss xmm0,xmm0
CoastersGoal:get_progress+3f: 48 8D AD 00 00 00 00           - lea rbp,[rbp+00000000]
CoastersGoal:get_progress+46: 49 BB 00 CA AF 89 A2 02 00 00  - mov r11,UnityEngine.Mathf:Clamp01
CoastersGoal:get_progress+50: 41 FF D3                       - call r11
CoastersGoal:get_progress+53: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
CoastersGoal:get_progress+57: F2 0F 5A C0                    - cvtsd2ss xmm0,xmm0
CoastersGoal:get_progress+5b: 48 8B 75 F8                    - mov rsi,[rbp-08]
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>58</ID>
              <Description>"All Loans Paid"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_LoanPaid,F3 0F 10 48 48 F3 0F 5A C9 F2 0F 5C C1 F2 0F 5A E8 F3 0F 11 2C) // should be unique
define(INJECT_LoanPaid,LoanPaymentProcessor:getMonthlyDueAmount+1f)
alloc(newmem,$1000,INJECT_LoanPaid)

label(code)
label(return)

newmem:

code:
//  push rbx
//  mov rbx,[rax+38]
//  mov [rax+48],rbx
  mov [rax+44],#0
  movss xmm1,[rax+48]
//  pop rbx
  jmp return

INJECT_LoanPaid:
  jmp newmem
return:
registersymbol(INJECT_LoanPaid)

[DISABLE]

INJECT_LoanPaid:
  db F3 0F 10 48 48

unregistersymbol(INJECT_LoanPaid)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+1f

2A082A8BECC: 00 00           - add [rax],al
2A082A8BECE: 00 00           - add [rax],al
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount: 48 83 EC 18     - sub rsp,18
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+4: 48 89 4C 24 08  - mov [rsp+08],rcx
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+9: 48 8B C1        - mov rax,rcx
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+c: 48 8B 40 30     - mov rax,[rax+30]
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+10: 48 8B C8        - mov rcx,rax
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+13: 83 39 00        - cmp dword ptr [rcx],00
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+16: F3 0F 10 40 38  - movss xmm0,[rax+38]
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+1b: F3 0F 5A C0     - cvtss2sd xmm0,xmm0
// ---------- INJECTING HERE ----------
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+1f: F3 0F 10 48 48  - movss xmm1,[rax+48]
// ---------- DONE INJECTING  ----------
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+24: F3 0F 5A C9     - cvtss2sd xmm1,xmm1
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+28: F2 0F 5C C1     - subsd xmm0,xmm1
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+2c: F2 0F 5A E8     - cvtsd2ss xmm5,xmm0
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+30: F3 0F 11 2C 24  - movss [rsp],xmm5
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+35: F3 0F 10 04 24  - movss xmm0,[rsp]
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+3a: F3 0F 5A C0     - cvtss2sd xmm0,xmm0
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+3e: F3 0F 10 48 3C  - movss xmm1,[rax+3C]
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+43: F3 0F 5A C9     - cvtss2sd xmm1,xmm1
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+47: F2 0F 59 C1     - mulsd xmm0,xmm1
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+4b: F2 0F 5A E8     - cvtsd2ss xmm5,xmm0
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>53</ID>
              <Description>"Hold Time Goal Instant Win"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_HoldTime,4C 63 46 48 33 D2) // should be unique
define(INJECT_HoldTime,GoalsController:get_timeLeft+47)
alloc(newmem,$1000,INJECT_HoldTime)

label(code)
label(return)

newmem:

code:
  mov [rsi+48],#0
  movsxd  r8,dword ptr [rsi+48]
  xor edx,edx
  jmp return

INJECT_HoldTime:
  jmp newmem
  nop
return:
registersymbol(INJECT_HoldTime)

[DISABLE]

INJECT_HoldTime:
  db 4C 63 46 48 33 D2

unregistersymbol(INJECT_HoldTime)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: GoalsController:get_timeLeft+47

GoalsController:get_timeLeft+20: 48 63 46 48                    - movsxd  rax,dword ptr [rsi+48]
GoalsController:get_timeLeft+24: 48 89 45 F0                    - mov [rbp-10],rax
GoalsController:get_timeLeft+28: 48 8D 64 24 00                 - lea rsp,[rsp+00]
GoalsController:get_timeLeft+2d: 90                             - nop 
GoalsController:get_timeLeft+2e: 49 BB 90 D3 E4 64 A3 02 00 00  - mov r11,ParkInfo:get_ParkTime
GoalsController:get_timeLeft+38: 41 FF D3                       - call r11
GoalsController:get_timeLeft+3b: 48 8B 4D F0                    - mov rcx,[rbp-10]
GoalsController:get_timeLeft+3f: 48 63 56 50                    - movsxd  rdx,dword ptr [rsi+50]
GoalsController:get_timeLeft+43: 2B C2                          - sub eax,edx
GoalsController:get_timeLeft+45: 2B C8                          - sub ecx,eax
// ---------- INJECTING HERE ----------
GoalsController:get_timeLeft+47: 4C 63 46 48                    - movsxd  r8,dword ptr [rsi+48]
// ---------- DONE INJECTING  ----------
GoalsController:get_timeLeft+4b: 33 D2                          - xor edx,edx
GoalsController:get_timeLeft+4d: 90                             - nop 
GoalsController:get_timeLeft+4e: 49 BB 90 67 33 4C A3 02 00 00  - mov r11,UnityEngine.Mathf:Clamp
GoalsController:get_timeLeft+58: 41 FF D3                       - call r11
GoalsController:get_timeLeft+5b: 48 8B 75 F8                    - mov rsi,[rbp-08]
GoalsController:get_timeLeft+5f: 48 8D 65 00                    - lea rsp,[rbp+00]
GoalsController:get_timeLeft+63: 5D                             - pop rbp
GoalsController:get_timeLeft+64: C3                             - ret 
2A353C6B5A5: 00 00                          - add [rax],al
2A353C6B5A7: 00 01                          - add [rcx],al
}
</AssemblerScript>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>125</ID>
          <Description>"Events"</Description>
          <Options moHideChildren="1"/>
          <Color>800080</Color>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>130</ID>
              <Description>"&lt;-Events Will Start But Instantly Stop -&gt;"</Description>
              <Color>0000FF</Color>
              <GroupHeader>1</GroupHeader>
            </CheatEntry>
            <CheatEntry>
              <ID>120</ID>
              <Description>"No Food Poisoning Event"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_FoodPoisoning,48 63 4E 40 3B C1 0F 8E) // should be unique
define(INJECT_FoodPoisoning,FoodPoisoningEvent:tick+4b)
alloc(newmem,$1000,INJECT_FoodPoisoning)

label(code)
label(return)

newmem:

code:
  mov [rsi+40],#999999999
  movsxd  rcx,dword ptr [rsi+40]
  cmp eax,ecx
  jmp return

INJECT_FoodPoisoning:
  jmp newmem
  nop
return:
registersymbol(INJECT_FoodPoisoning)

[DISABLE]

INJECT_FoodPoisoning:
  db 48 63 4E 40 3B C1

unregistersymbol(INJECT_FoodPoisoning)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: FoodPoisoningEvent:tick+4b

1F1B499DA4B: 4C 89 75 F0                    - mov [rbp-10],r14
1F1B499DA4F: 4C 89 7D F8                    - mov [rbp-08],r15
1F1B499DA53: 48 8B F1                       - mov rsi,rcx
1F1B499DA56: 33 C0                          - xor eax,eax
1F1B499DA58: 48 89 85 60 FF FF FF           - mov [rbp-000000A0],rax
1F1B499DA5F: 48 89 85 68 FF FF FF           - mov [rbp-00000098],rax
1F1B499DA66: 48 89 85 70 FF FF FF           - mov [rbp-00000090],rax
1F1B499DA6D: 90                             - nop 
1F1B499DA6E: 49 BB 30 57 0E B5 F1 01 00 00  - mov r11,000001F1B50E5730
1F1B499DA78: 41 FF D3                       - call r11
// ---------- INJECTING HERE ----------
1F1B499DA7B: 48 63 4E 40                    - movsxd  rcx,dword ptr [rsi+40]
// ---------- DONE INJECTING  ----------
1F1B499DA7F: 3B C1                          - cmp eax,ecx
1F1B499DA81: 0F 8E 1C 03 00 00              - jng 1F1B499DDA3
1F1B499DA87: 48 8B CE                       - mov rcx,rsi
1F1B499DA8A: 48 8D 6D 00                    - lea rbp,[rbp+00]
1F1B499DA8E: 49 BB B0 9B 95 B4 F1 01 00 00  - mov r11,000001F1B4959BB0
1F1B499DA98: 41 FF D3                       - call r11
1F1B499DA9B: 48 8B 46 28                    - mov rax,[rsi+28]
1F1B499DA9F: 48 8B C8                       - mov rcx,rax
1F1B499DAA2: 83 39 00                       - cmp dword ptr [rcx],00
1F1B499DAA5: 48 63 40 18                    - movsxd  rax,dword ptr [rax+18]
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>110</ID>
              <Description>"No Supply Surplus or Shortage Events"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_SupplyEventStop,48 63 49 3C 3B C1 40) // should be unique
define(INJECT_SupplyEventStop,SupplyEvent:mayStop+1f)
alloc(newmem,$1000,INJECT_SupplyEventStop)

label(code)
label(return)

newmem:

code:
  mov [rcx+3C],#0
  movsxd  rcx,dword ptr [rcx+3C]
  cmp eax,ecx
  jmp return

INJECT_SupplyEventStop:
  jmp newmem
  nop
return:
registersymbol(INJECT_SupplyEventStop)

[DISABLE]

INJECT_SupplyEventStop:
  db 48 63 49 3C 3B C1

unregistersymbol(INJECT_SupplyEventStop)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: 1F1B499E25F

1F1B499E23C: 00 00                          - add [rax],al
1F1B499E23E: 00 00                          - add [rax],al
SupplyEvent:mayStop: 55                             - push rbp
SupplyEvent:mayStop+1: 48 8B EC                       - mov rbp,rsp
SupplyEvent:mayStop+4: 48 83 EC 30                    - sub rsp,30
SupplyEvent:mayStop+8: 48 89 4D F8                    - mov [rbp-08],rcx
SupplyEvent:mayStop+c: 66 90                          - nop 2
SupplyEvent:mayStop+e: 49 BB 30 57 0E B5 F1 01 00 00  - mov r11,ParkInfo:get_ParkTime
SupplyEvent:mayStop+18: 41 FF D3                       - call r11
SupplyEvent:mayStop+1b: 48 8B 4D F8                    - mov rcx,[rbp-08]
// ---------- INJECTING HERE ----------
SupplyEvent:mayStop+1f: 48 63 49 3C                    - movsxd  rcx,dword ptr [rcx+3C]
// ---------- DONE INJECTING  ----------
SupplyEvent:mayStop+23: 3B C1                          - cmp eax,ecx
SupplyEvent:mayStop+25: 40 0F 9F C0                    - setg al
SupplyEvent:mayStop+29: 48 0F B6 C0                    - movzx rax,al
SupplyEvent:mayStop+2d: 48 8D 65 00                    - lea rsp,[rbp+00]
SupplyEvent:mayStop+31: 5D                             - pop rbp
SupplyEvent:mayStop+32: C3                             - ret 
1F1B499E273: 00 00                          - add [rax],al
1F1B499E275: 00 00                          - add [rax],al
1F1B499E277: 00 01                          - add [rcx],al
1F1B499E279: 04 02                          - add al,02
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>108</ID>
              <Description>"No Park Decline Event"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_EventStop,ERROR: Could not find unique AOB, tried code "48 63 49 3C 3B C1") // should be unique
define(INJECT_EventStop,ParkDeclineEvent:mayStop+1f)
alloc(newmem,$1000,INJECT_EventStop)

label(code)
label(return)

newmem:

code:
  mov [rcx+3C],#0
  movsxd  rcx,dword ptr [rcx+3C]
  cmp eax,ecx
  jmp return

INJECT_EventStop:
  jmp newmem
  nop
return:
registersymbol(INJECT_EventStop)

[DISABLE]

INJECT_EventStop:
  db 48 63 49 3C 3B C1

unregistersymbol(INJECT_EventStop)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ParkDeclineEvent:mayStop+1f

1F1B499E34C: 00 00                          - add [rax],al
1F1B499E34E: 00 00                          - add [rax],al
ParkDeclineEvent:mayStop: 55                             - push rbp
ParkDeclineEvent:mayStop+1: 48 8B EC                       - mov rbp,rsp
ParkDeclineEvent:mayStop+4: 48 83 EC 30                    - sub rsp,30
ParkDeclineEvent:mayStop+8: 48 89 4D F8                    - mov [rbp-08],rcx
ParkDeclineEvent:mayStop+c: 66 90                          - nop 2
ParkDeclineEvent:mayStop+e: 49 BB 30 57 0E B5 F1 01 00 00  - mov r11,ParkInfo:get_ParkTime
ParkDeclineEvent:mayStop+18: 41 FF D3                       - call r11
ParkDeclineEvent:mayStop+1b: 48 8B 4D F8                    - mov rcx,[rbp-08]
// ---------- INJECTING HERE ----------
ParkDeclineEvent:mayStop+1f: 48 63 49 3C                    - movsxd  rcx,dword ptr [rcx+3C]
// ---------- DONE INJECTING  ----------
ParkDeclineEvent:mayStop+23: 3B C1                          - cmp eax,ecx
ParkDeclineEvent:mayStop+25: 40 0F 9F C0                    - setg al
ParkDeclineEvent:mayStop+29: 48 0F B6 C0                    - movzx rax,al
ParkDeclineEvent:mayStop+2d: 48 8D 65 00                    - lea rsp,[rbp+00]
ParkDeclineEvent:mayStop+31: 5D                             - pop rbp
ParkDeclineEvent:mayStop+32: C3                             - ret 
1F1B499E383: 00 00                          - add [rax],al
1F1B499E385: 00 00                          - add [rax],al
1F1B499E387: 00 01                          - add [rcx],al
1F1B499E389: 04 02                          - add al,02
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>122</ID>
              <Description>"No Park Boost Events"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_ParkBoost,48 63 49 40 3B C1 40) // should be unique
define(INJECT_ParkBoost,ParkBoostEvent:mayStop+1f)
alloc(newmem,$1000,INJECT_ParkBoost)

label(code)
label(return)

newmem:

code:
  mov [rcx+40],#0
  movsxd  rcx,dword ptr [rcx+40]
  cmp eax,ecx
  jmp return

INJECT_ParkBoost:
  jmp newmem
  nop
return:
registersymbol(INJECT_ParkBoost)

[DISABLE]

INJECT_ParkBoost:
  db 48 63 49 40 3B C1

unregistersymbol(INJECT_ParkBoost)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ParkBoostEvent:mayStop+1f

1F1B499E3FC: 00 00                          - add [rax],al
1F1B499E3FE: 00 00                          - add [rax],al
ParkBoostEvent:mayStop: 55                             - push rbp
ParkBoostEvent:mayStop+1: 48 8B EC                       - mov rbp,rsp
ParkBoostEvent:mayStop+4: 48 83 EC 30                    - sub rsp,30
ParkBoostEvent:mayStop+8: 48 89 4D F8                    - mov [rbp-08],rcx
ParkBoostEvent:mayStop+c: 66 90                          - nop 2
ParkBoostEvent:mayStop+e: 49 BB 30 57 0E B5 F1 01 00 00  - mov r11,ParkInfo:get_ParkTime
ParkBoostEvent:mayStop+18: 41 FF D3                       - call r11
ParkBoostEvent:mayStop+1b: 48 8B 4D F8                    - mov rcx,[rbp-08]
// ---------- INJECTING HERE ----------
ParkBoostEvent:mayStop+1f: 48 63 49 40                    - movsxd  rcx,dword ptr [rcx+40]
// ---------- DONE INJECTING  ----------
ParkBoostEvent:mayStop+23: 3B C1                          - cmp eax,ecx
ParkBoostEvent:mayStop+25: 40 0F 9F C0                    - setg al
ParkBoostEvent:mayStop+29: 48 0F B6 C0                    - movzx rax,al
ParkBoostEvent:mayStop+2d: 48 8D 65 00                    - lea rsp,[rbp+00]
ParkBoostEvent:mayStop+31: 5D                             - pop rbp
ParkBoostEvent:mayStop+32: C3                             - ret 
1F1B499E433: 00 00                          - add [rax],al
1F1B499E435: 00 00                          - add [rax],al
1F1B499E437: 00 01                          - add [rcx],al
1F1B499E439: 04 02                          - add al,02
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>124</ID>
              <Description>"No Attraction Boost Event"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_AttractionBoost,48 63 49 48 3B C1 40) // should be unique
define(INJECT_AttractionBoost,AttractionBoostEvent:mayStop+1f)
alloc(newmem,$1000,INJECT_AttractionBoost)

label(code)
label(return)

newmem:

code:
  mov [rcx+48],#0
  movsxd  rcx,dword ptr [rcx+48]
  cmp eax,ecx
  jmp return

INJECT_AttractionBoost:
  jmp newmem
  nop
return:
registersymbol(INJECT_AttractionBoost)

[DISABLE]

INJECT_AttractionBoost:
  db 48 63 49 48 3B C1

unregistersymbol(INJECT_AttractionBoost)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: AttractionBoostEvent:mayStop+1f

1F1B499E5EC: 00 00                          - add [rax],al
1F1B499E5EE: 00 00                          - add [rax],al
AttractionBoostEvent:mayStop: 55                             - push rbp
AttractionBoostEvent:mayStop+1: 48 8B EC                       - mov rbp,rsp
AttractionBoostEvent:mayStop+4: 48 83 EC 30                    - sub rsp,30
AttractionBoostEvent:mayStop+8: 48 89 4D F8                    - mov [rbp-08],rcx
AttractionBoostEvent:mayStop+c: 66 90                          - nop 2
AttractionBoostEvent:mayStop+e: 49 BB 30 57 0E B5 F1 01 00 00  - mov r11,ParkInfo:get_ParkTime
AttractionBoostEvent:mayStop+18: 41 FF D3                       - call r11
AttractionBoostEvent:mayStop+1b: 48 8B 4D F8                    - mov rcx,[rbp-08]
// ---------- INJECTING HERE ----------
AttractionBoostEvent:mayStop+1f: 48 63 49 48                    - movsxd  rcx,dword ptr [rcx+48]
// ---------- DONE INJECTING  ----------
AttractionBoostEvent:mayStop+23: 3B C1                          - cmp eax,ecx
AttractionBoostEvent:mayStop+25: 40 0F 9F C0                    - setg al
AttractionBoostEvent:mayStop+29: 48 0F B6 C0                    - movzx rax,al
AttractionBoostEvent:mayStop+2d: 48 8D 65 00                    - lea rsp,[rbp+00]
AttractionBoostEvent:mayStop+31: 5D                             - pop rbp
AttractionBoostEvent:mayStop+32: C3                             - ret 
1F1B499E623: 00 00                          - add [rax],al
1F1B499E625: 00 00                          - add [rax],al
1F1B499E627: 00 01                          - add [rcx],al
1F1B499E629: 04 02                          - add al,02
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>113</ID>
              <Description>"No Ride Parts Shortage Event"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_RidePartShortage,48 63 49 34 3B C1 40) // should be unique
define(INJECT_RidePartShortage,RidePartShortageEvent:mayStop+1f)
alloc(newmem,$1000,INJECT_RidePartShortage)

label(code)
label(return)

newmem:

code:
  mov [rcx+34],#0
  movsxd  rcx,dword ptr [rcx+34]
  cmp eax,ecx
  jmp return

INJECT_RidePartShortage:
  jmp newmem
  nop
return:
registersymbol(INJECT_RidePartShortage)

[DISABLE]

INJECT_RidePartShortage:
  db 48 63 49 34 3B C1

unregistersymbol(INJECT_RidePartShortage)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: RidePartShortageEvent:mayStop+1f

1F1B499E69C: 00 00                          - add [rax],al
1F1B499E69E: 00 00                          - add [rax],al
RidePartShortageEvent:mayStop: 55                             - push rbp
RidePartShortageEvent:mayStop+1: 48 8B EC                       - mov rbp,rsp
RidePartShortageEvent:mayStop+4: 48 83 EC 30                    - sub rsp,30
RidePartShortageEvent:mayStop+8: 48 89 4D F8                    - mov [rbp-08],rcx
RidePartShortageEvent:mayStop+c: 66 90                          - nop 2
RidePartShortageEvent:mayStop+e: 49 BB 30 57 0E B5 F1 01 00 00  - mov r11,ParkInfo:get_ParkTime
RidePartShortageEvent:mayStop+18: 41 FF D3                       - call r11
RidePartShortageEvent:mayStop+1b: 48 8B 4D F8                    - mov rcx,[rbp-08]
// ---------- INJECTING HERE ----------
RidePartShortageEvent:mayStop+1f: 48 63 49 34                    - movsxd  rcx,dword ptr [rcx+34]
// ---------- DONE INJECTING  ----------
RidePartShortageEvent:mayStop+23: 3B C1                          - cmp eax,ecx
RidePartShortageEvent:mayStop+25: 40 0F 9F C0                    - setg al
RidePartShortageEvent:mayStop+29: 48 0F B6 C0                    - movzx rax,al
RidePartShortageEvent:mayStop+2d: 48 8D 65 00                    - lea rsp,[rbp+00]
RidePartShortageEvent:mayStop+31: 5D                             - pop rbp
RidePartShortageEvent:mayStop+32: C3                             - ret 
1F1B499E6D3: 00 00                          - add [rax],al
1F1B499E6D5: 00 00                          - add [rax],al
1F1B499E6D7: 00 01                          - add [rcx],al
1F1B499E6D9: 04 02                          - add al,02
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>118</ID>
              <Description>"No Vandals Event"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_VandalismEvent,C7 46 40 FF FF FF 7F 48 B8 A0) // should be unique
define(INJECT_VandalismEvent,VandalismWaveEvent:end+133)
alloc(newmem,$1000,INJECT_VandalismEvent)

label(code)
label(return)

newmem:

code:
  mov [rsi+40],#0
  jmp return

INJECT_VandalismEvent:
  jmp newmem
  nop 2
return:
registersymbol(INJECT_VandalismEvent)

[DISABLE]

INJECT_VandalismEvent:
  db C7 46 40 FF FF FF 7F

unregistersymbol(INJECT_VandalismEvent)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: VandalismWaveEvent:end+133

VandalismWaveEvent:end+108: 48 83 C0 98                    - add rax,-68
VandalismWaveEvent:end+10c: 48 89 45 88                    - mov [rbp-78],rax
VandalismWaveEvent:end+110: 48 8B 65 F0                    - mov rsp,[rbp-10]
VandalismWaveEvent:end+114: C3                             - ret 
VandalismWaveEvent:end+115: 48 8B 46 20                    - mov rax,[rsi+20]
VandalismWaveEvent:end+119: 48 8B C8                       - mov rcx,rax
VandalismWaveEvent:end+11c: 83 38 00                       - cmp dword ptr [rax],00
VandalismWaveEvent:end+11f: 48 8D AD 00 00 00 00           - lea rbp,[rbp+00000000]
VandalismWaveEvent:end+126: 49 BB 40 DE 76 68 EF 01 00 00  - mov r11,System.Collections.Generic.List`1[T_REF]:Clear
VandalismWaveEvent:end+130: 41 FF D3                       - call r11
// ---------- INJECTING HERE ----------
VandalismWaveEvent:end+133: C7 46 40 FF FF FF 7F           - mov [rsi+40],7FFFFFFF
// ---------- DONE INJECTING  ----------
VandalismWaveEvent:end+13a: 48 B8 A0 44 82 B1 F1 01 00 00  - mov rax,000001F1B18244A0
VandalismWaveEvent:end+144: 48 8B 00                       - mov rax,[rax]
VandalismWaveEvent:end+147: 48 89 45 80                    - mov [rbp-80],rax
VandalismWaveEvent:end+14b: 48 B9 A0 55 8B DF F1 01 00 00  - mov rcx,000001F1DF8B55A0
VandalismWaveEvent:end+155: 90                             - nop 
VandalismWaveEvent:end+156: 49 BB A0 E4 D6 F1 F0 01 00 00  - mov r11,I18N:GetString
VandalismWaveEvent:end+160: 41 FF D3                       - call r11
VandalismWaveEvent:end+163: 48 89 85 70 FF FF FF           - mov [rbp-00000090],rax
VandalismWaveEvent:end+16a: C7 45 B0 00 00 00 00           - mov [rbp-50],00000000
VandalismWaveEvent:end+171: C7 45 B4 00 00 00 00           - mov [rbp-4C],00000000
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>116</ID>
              <Description>"No Sickness Spread Event"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_PukeEvent,48 63 40 30 3D FF FF FF 7F) // should be unique
define(INJECT_PukeEvent,Guest:setPukeCountdown+d8)
alloc(newmem,$1000,INJECT_PukeEvent)

label(code)
label(return)

newmem:

code:
  mov [rax+30],#0
  movsxd  rax,dword ptr [rax+30]
  cmp eax,7FFFFFFF
  jmp return

INJECT_PukeEvent:
  jmp newmem
  nop 4
return:
registersymbol(INJECT_PukeEvent)

[DISABLE]

INJECT_PukeEvent:
  db 48 63 40 30 3D FF FF FF 7F

unregistersymbol(INJECT_PukeEvent)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: Guest:setPukeCountdown+d8

Guest:setPukeCountdown+a3: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
Guest:setPukeCountdown+a7: F2 0F 5A E8                    - cvtsd2ss xmm5,xmm0
Guest:setPukeCountdown+ab: F3 0F 11 AE 5C 04 00 00        - movss [rsi+0000045C],xmm5
Guest:setPukeCountdown+b3: 48 B8 D0 3C 6E 68 EF 01 00 00  - mov rax,000001EF686E3CD0
Guest:setPukeCountdown+bd: 48 8B 00                       - mov rax,[rax]
Guest:setPukeCountdown+c0: 48 8B 80 98 00 00 00           - mov rax,[rax+00000098]
Guest:setPukeCountdown+c7: 48 8B 80 00 01 00 00           - mov rax,[rax+00000100]
Guest:setPukeCountdown+ce: 48 8B 40 70                    - mov rax,[rax+70]
Guest:setPukeCountdown+d2: 48 8B C8                       - mov rcx,rax
Guest:setPukeCountdown+d5: 83 39 00                       - cmp dword ptr [rcx],00
// ---------- INJECTING HERE ----------
Guest:setPukeCountdown+d8: 48 63 40 30                    - movsxd  rax,dword ptr [rax+30]
// ---------- DONE INJECTING  ----------
Guest:setPukeCountdown+dc: 3D FF FF FF 7F                 - cmp eax,7FFFFFFF
Guest:setPukeCountdown+e1: 40 0F 94 C0                    - sete al
Guest:setPukeCountdown+e5: 48 0F B6 C0                    - movzx rax,al
Guest:setPukeCountdown+e9: 85 C0                          - test eax,eax
Guest:setPukeCountdown+eb: 40 0F 94 C0                    - sete al
Guest:setPukeCountdown+ef: 48 0F B6 C0                    - movzx rax,al
Guest:setPukeCountdown+f3: 85 C0                          - test eax,eax
Guest:setPukeCountdown+f5: 0F 84 44 00 00 00              - je Guest:setPukeCountdown+13f
Guest:setPukeCountdown+fb: F3 0F 10 86 5C 04 00 00        - movss xmm0,[rsi+0000045C]
Guest:setPukeCountdown+103: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
}
</AssemblerScript>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>1</ID>
          <Description>"Max Money"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

//aobscan(INJECT_Money,F3 0F 11 6F 48 49) // should be unique
define(INJECT_Money,ParkInfo:moneyTransaction+141)
alloc(newmem,$1000,INJECT_Money)

label(code)
label(return)

newmem:

code:
  mov [rdi+48],(float)100000000
  jmp return


INJECT_Money:
  jmp newmem
return:
registersymbol(INJECT_Money)

[DISABLE]

INJECT_Money:
  db F3 0F 11 6F 48


unregistersymbol(INJECT_Money)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ParkInfo:moneyTransaction+141

ParkInfo:moneyTransaction+115: F3 0F 10 45 90                 - movss xmm0,[rbp-70]
ParkInfo:moneyTransaction+11a: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
ParkInfo:moneyTransaction+11e: F3 0F 10 4D 80                 - movss xmm1,[rbp-80]
ParkInfo:moneyTransaction+123: F3 0F 5A C9                    - cvtss2sd xmm1,xmm1
ParkInfo:moneyTransaction+127: F2 0F 58 C1                    - addsd xmm0,xmm1
ParkInfo:moneyTransaction+12b: F2 0F 5A E8                    - cvtsd2ss xmm5,xmm0
ParkInfo:moneyTransaction+12f: F3 0F 11 6D 90                 - movss [rbp-70],xmm5
ParkInfo:moneyTransaction+134: F3 0F 10 45 90                 - movss xmm0,[rbp-70]
ParkInfo:moneyTransaction+139: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
ParkInfo:moneyTransaction+13d: F2 0F 5A E8                    - cvtsd2ss xmm5,xmm0
// ---------- INJECTING HERE ----------
ParkInfo:moneyTransaction+141: F3 0F 11 6F 48                 - movss [rdi+48],xmm5
// ---------- DONE INJECTING  ----------
ParkInfo:moneyTransaction+146: 49 BB 80 9B 83 43 58 02 00 00  - mov r11,CommandController:get_Instance
ParkInfo:moneyTransaction+150: 41 FF D3                       - call r11
ParkInfo:moneyTransaction+153: 48 8B C8                       - mov rcx,rax
ParkInfo:moneyTransaction+156: 83 39 00                       - cmp dword ptr [rcx],00
ParkInfo:moneyTransaction+159: 48 63 40 48                    - movsxd  rax,dword ptr [rax+48]
ParkInfo:moneyTransaction+15d: 83 F8 01                       - cmp eax,01
ParkInfo:moneyTransaction+160: 40 0F 94 C0                    - sete al
ParkInfo:moneyTransaction+164: 48 0F B6 C0                    - movzx rax,al
ParkInfo:moneyTransaction+168: 85 C0                          - test eax,eax
ParkInfo:moneyTransaction+16a: 0F 84 4B 02 00 00              - je ParkInfo:moneyTransaction+3bb
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>60</ID>
          <Description>"All Loans Paid"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

//aobscan(INJECT_LoanPaid,F3 0F 10 48 48 F3 0F 5A C9 F2 0F 5C C1 F2 0F 5A E8 F3 0F 11 2C) // should be unique
define(INJECT_LoanPaid,LoanPaymentProcessor:getMonthlyDueAmount+1f)
alloc(newmem,$1000,INJECT_LoanPaid)

label(code)
label(return)

newmem:

code:
//  push rbx
//  mov rbx,[rax+38]
//  mov [rax+48],rbx
  mov [rax+44],#0
  movss xmm1,[rax+48]
//  pop rbx
  jmp return

INJECT_LoanPaid:
  jmp newmem
return:
registersymbol(INJECT_LoanPaid)

[DISABLE]

INJECT_LoanPaid:
  db F3 0F 10 48 48

unregistersymbol(INJECT_LoanPaid)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+1f

2A082A8BECC: 00 00           - add [rax],al
2A082A8BECE: 00 00           - add [rax],al
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount: 48 83 EC 18     - sub rsp,18
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+4: 48 89 4C 24 08  - mov [rsp+08],rcx
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+9: 48 8B C1        - mov rax,rcx
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+c: 48 8B 40 30     - mov rax,[rax+30]
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+10: 48 8B C8        - mov rcx,rax
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+13: 83 39 00        - cmp dword ptr [rcx],00
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+16: F3 0F 10 40 38  - movss xmm0,[rax+38]
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+1b: F3 0F 5A C0     - cvtss2sd xmm0,xmm0
// ---------- INJECTING HERE ----------
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+1f: F3 0F 10 48 48  - movss xmm1,[rax+48]
// ---------- DONE INJECTING  ----------
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+24: F3 0F 5A C9     - cvtss2sd xmm1,xmm1
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+28: F2 0F 5C C1     - subsd xmm0,xmm1
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+2c: F2 0F 5A E8     - cvtsd2ss xmm5,xmm0
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+30: F3 0F 11 2C 24  - movss [rsp],xmm5
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+35: F3 0F 10 04 24  - movss xmm0,[rsp]
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+3a: F3 0F 5A C0     - cvtss2sd xmm0,xmm0
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+3e: F3 0F 10 48 3C  - movss xmm1,[rax+3C]
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+43: F3 0F 5A C9     - cvtss2sd xmm1,xmm1
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+47: F2 0F 59 C1     - mulsd xmm0,xmm1
LoanPlan+LoanPaymentProcessor:getMonthlyDueAmount+4b: F2 0F 5A E8     - cvtsd2ss xmm5,xmm0
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>101</ID>
          <Description>"Shop Max, No Maint Cost, Max Stats"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

//aobscan(INJECT_ShopStuff,0F B6 86 D9 02 00 00 85 C0 0F) // should be unique
define(INJECT_ShopStuff,ProductShop:checkOutOfResourcesMessage+1a)
alloc(newmem,$1000,INJECT_ShopStuff)

label(code)
label(return)

newmem:

code:
  mov [rsi+00000240],(float)1 // Satisfaction
  mov [rsi+00000258],#0 // Maintenance Cost
  mov [rsi+000002EC],#0 // Needs Cleaning
  movzx eax,byte ptr [rsi+000002D9]
  jmp return

INJECT_ShopStuff:
  jmp newmem
  nop 2
return:
registersymbol(INJECT_ShopStuff)

[DISABLE]

INJECT_ShopStuff:
  db 0F B6 86 D9 02 00 00

unregistersymbol(INJECT_ShopStuff)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ProductShop:checkOutOfResourcesMessage+1a

18460456BEA: 00 00                          - add [rax],al
18460456BEC: 00 00                          - add [rax],al
18460456BEE: 00 00                          - add [rax],al
ProductShop:checkOutOfResourcesMessage: 55                             - push rbp
ProductShop:checkOutOfResourcesMessage+1: 48 8B EC                       - mov rbp,rsp
ProductShop:checkOutOfResourcesMessage+4: 48 81 EC E0 00 00 00           - sub rsp,000000E0
ProductShop:checkOutOfResourcesMessage+b: 48 89 75 E8                    - mov [rbp-18],rsi
ProductShop:checkOutOfResourcesMessage+f: 48 89 7D F0                    - mov [rbp-10],rdi
ProductShop:checkOutOfResourcesMessage+13: 4C 89 7D F8                    - mov [rbp-08],r15
ProductShop:checkOutOfResourcesMessage+17: 48 8B F1                       - mov rsi,rcx
// ---------- INJECTING HERE ----------
ProductShop:checkOutOfResourcesMessage+1a: 0F B6 86 D9 02 00 00           - movzx eax,byte ptr [rsi+000002D9]
// ---------- DONE INJECTING  ----------
ProductShop:checkOutOfResourcesMessage+21: 85 C0                          - test eax,eax
ProductShop:checkOutOfResourcesMessage+23: 0F 84 1E 03 00 00              - je ProductShop:checkOutOfResourcesMessage+347
ProductShop:checkOutOfResourcesMessage+29: 48 8D 64 24 00                 - lea rsp,[rsp+00]
ProductShop:checkOutOfResourcesMessage+2e: 49 BB 70 53 21 60 84 01 00 00  - mov r11,ParkInfo:get_ParkTime
ProductShop:checkOutOfResourcesMessage+38: 41 FF D3                       - call r11
ProductShop:checkOutOfResourcesMessage+3b: 48 63 8E DC 02 00 00           - movsxd  rcx,dword ptr [rsi+000002DC]
ProductShop:checkOutOfResourcesMessage+42: 2B C1                          - sub eax,ecx
ProductShop:checkOutOfResourcesMessage+44: 48 BA 89 88 88 88 FF FF FF FF  - mov rdx,FFFFFFFF88888889
ProductShop:checkOutOfResourcesMessage+4e: 48 63 C0                       - movsxd  rax,eax
ProductShop:checkOutOfResourcesMessage+51: 48 8B C8                       - mov rcx,rax
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>141</ID>
          <Description>"Shop Stock Cost 0"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

//aobscan(INJECT_ShopCosts,F3 0F 10 46 48 F3 0F 5A C0 F2 0F 5A E8 F3 0F 11 6D F4 48 B8) // should be unique
define(INJECT_ShopCosts,Resource:getCosts+f)
alloc(newmem,$1000,INJECT_ShopCosts)

label(code)
label(return)

newmem:

code:
  mov [rsi+48],(float)0
  movss xmm0,[rsi+48]
  jmp return

INJECT_ShopCosts:
  jmp newmem
return:
registersymbol(INJECT_ShopCosts)

[DISABLE]

INJECT_ShopCosts:
  db F3 0F 10 46 48

unregistersymbol(INJECT_ShopCosts)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: Resource:getCosts+f

1F5B45C74C6: 00 00                          - add [rax],al
1F5B45C74C8: 00 00                          - add [rax],al
1F5B45C74CA: 00 00                          - add [rax],al
1F5B45C74CC: 00 00                          - add [rax],al
1F5B45C74CE: 00 00                          - add [rax],al
Resource:getCosts: 55                             - push rbp
Resource:getCosts+1: 48 8B EC                       - mov rbp,rsp
Resource:getCosts+4: 48 83 EC 30                    - sub rsp,30
Resource:getCosts+8: 48 89 75 F8                    - mov [rbp-08],rsi
Resource:getCosts+c: 48 8B F1                       - mov rsi,rcx
// ---------- INJECTING HERE ----------
Resource:getCosts+f: F3 0F 10 46 48                 - movss xmm0,[rsi+48]
// ---------- DONE INJECTING  ----------
Resource:getCosts+14: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
Resource:getCosts+18: F2 0F 5A E8                    - cvtsd2ss xmm5,xmm0
Resource:getCosts+1c: F3 0F 11 6D F4                 - movss [rbp-0C],xmm5
Resource:getCosts+21: 48 B8 D0 3C 03 65 F4 01 00 00  - mov rax,000001F465033CD0
Resource:getCosts+2b: 48 8B 08                       - mov rcx,[rax]
Resource:getCosts+2e: 33 D2                          - xor edx,edx
Resource:getCosts+30: 48 8D 64 24 00                 - lea rsp,[rsp+00]
Resource:getCosts+35: 90                             - nop 
Resource:getCosts+36: 49 BB 00 1F 40 EE F4 01 00 00  - mov r11,UnityEngine.Object:op_Inequality
Resource:getCosts+40: 41 FF D3                       - call r11
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>142</ID>
          <Description>"Shop Stock 999999"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

aobscan(INJECT_test,F3 0F 10 40 10 F3 0F 5A C0 F2 0F 5A C0) // should be unique
alloc(newmem,$1000,INJECT_test)

label(code)
label(return)

newmem:

code:
  mov [rax+10],(float)999999
  movss xmm0,[rax+10]
  jmp return

INJECT_test:
  jmp newmem
return:
registersymbol(INJECT_test)

[DISABLE]

INJECT_test:
  db F3 0F 10 40 10

unregistersymbol(INJECT_test)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+49

System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+23: 48 8B F0                       - mov rsi,rax
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+26: 85 C0                          - test eax,eax
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+28: 0F 8C 2A 00 00 00              - jl System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+58
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+2e: 48 8B 47 18                    - mov rax,[rdi+18]
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+32: 48 63 CE                       - movsxd  rcx,esi
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+35: 39 48 18                       - cmp [rax+18],ecx
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+38: 0F 86 4B 00 00 00              - jbe System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+89
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+3e: 48 6B C9 18                    - imul rcx,rcx,18
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+42: 48 03 C1                       - add rax,rcx
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+45: 48 83 C0 20                    - add rax,20
// ---------- INJECTING HERE ----------
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+49: F3 0F 10 40 10                 - movss xmm0,[rax+10]
// ---------- DONE INJECTING  ----------
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+4e: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+52: F2 0F 5A C0                    - cvtsd2ss xmm0,xmm0
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+56: EB 23                          - jmp System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+7b
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+58: B9 57 0A 00 02                 - mov ecx,02000A57
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+5d: 90                             - nop 
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+5e: 49 BB A0 06 CF 0A FD 7F 00 00  - mov r11,mono-2.0-bdwgc.dll+1C06A0
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+68: 41 FF D3                       - call r11
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+6b: 48 8B C8                       - mov rcx,rax
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+6e: 49 BB 30 1B 03 20 C2 01 00 00  - mov r11,000001C220031B30
System.Collections.Generic.Dictionary`2[System.String,System.Single]:get_Item+78: 41 FF D3                       - call r11
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>95</ID>
          <Description>"Stop Processing Payments (Does Not Effect Income)"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

//aobscan(INJECT_NoPayments,F3 0F 11 6E 20 F3 0F 10 46 24 F3 0F 5A C0 F3) // should be unique
define(INJECT_NoPayments,PaymentProcessor:tick+135)
alloc(newmem,$1000,INJECT_NoPayments)

label(code)
label(return)

newmem:

code:
  mov [rsi+20],(float)0
  jmp return

INJECT_NoPayments:
  jmp newmem
return:
registersymbol(INJECT_NoPayments)

[DISABLE]

INJECT_NoPayments:
  db F3 0F 11 6E 20

unregistersymbol(INJECT_NoPayments)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: PaymentProcessor:tick+135

PaymentProcessor:tick+108: 48 8B CE                 - mov rcx,rsi
PaymentProcessor:tick+10b: 48 8B 06                 - mov rax,[rsi]
PaymentProcessor:tick+10e: FF 90 D8 00 00 00        - call qword ptr [rax+000000D8]
PaymentProcessor:tick+114: F3 0F 5A C8              - cvtss2sd xmm1,xmm0
PaymentProcessor:tick+118: F2 0F 10 45 E0           - movsd xmm0,[rbp-20]
PaymentProcessor:tick+11d: F3 0F 10 15 5B 00 00 00  - movss xmm2,[PaymentProcessor:tick+180]
PaymentProcessor:tick+125: F3 0F 5A D2              - cvtss2sd xmm2,xmm2
PaymentProcessor:tick+129: F2 0F 5E CA              - divsd xmm1,xmm2
PaymentProcessor:tick+12d: F2 0F 58 C1              - addsd xmm0,xmm1
PaymentProcessor:tick+131: F2 0F 5A E8              - cvtsd2ss xmm5,xmm0
// ---------- INJECTING HERE ----------
PaymentProcessor:tick+135: F3 0F 11 6E 20           - movss [rsi+20],xmm5
// ---------- DONE INJECTING  ----------
PaymentProcessor:tick+13a: F3 0F 10 46 24           - movss xmm0,[rsi+24]
PaymentProcessor:tick+13f: F3 0F 5A C0              - cvtss2sd xmm0,xmm0
PaymentProcessor:tick+143: F3 0F 10 0D 25 00 00 00  - movss xmm1,[PaymentProcessor:tick+170]
PaymentProcessor:tick+14b: F3 0F 5A C9              - cvtss2sd xmm1,xmm1
PaymentProcessor:tick+14f: 66 0F 2F C8              - comisd xmm1,xmm0
PaymentProcessor:tick+153: 7A 02                    - jp PaymentProcessor:tick+157
PaymentProcessor:tick+155: 72 81                    - jb PaymentProcessor:tick+d8
PaymentProcessor:tick+157: 48 8B 75 E8              - mov rsi,[rbp-18]
PaymentProcessor:tick+15b: 48 8B 7D F0              - mov rdi,[rbp-10]
PaymentProcessor:tick+15f: 4C 8B 7D F8              - mov r15,[rbp-08]
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>30</ID>
          <Description>"Max Park Rating"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

//aobscan(INJECT_ParkRatings,F3 0F 10 46 6C F3 0F 5A C0 F2 0F 5A E8 F3 0F 11 6D F4) // should be unique
define(INJECT_ParkRatings,ParkInfo:getOverallRating+f)
alloc(newmem,$1000,INJECT_ParkRatings)

label(code)
label(return)

newmem:

code:
  mov [rsi+6C],(float)1 //Rating Price Satisfaction
  mov [rsi+70],(float)1 //Rating Experiences
  mov [rsi+74],(float)1 //Rating Decoration
  mov [rsi+78],(float)1 //Rating Cleanliness
  mov [rsi+7C],(float)1 //Rating Happiness
  mov [rsi+80],(float)1 //Rating Tiredness
  mov [rsi+84],(float)1 //Rating Hunger
  mov [rsi+88],(float)1 //Rating Thirst
  movss xmm0,[rsi+6C]
  jmp return

INJECT_ParkRatings:
  jmp newmem
return:
registersymbol(INJECT_ParkRatings)

[DISABLE]

INJECT_ParkRatings:
  db F3 0F 10 46 6C

unregistersymbol(INJECT_ParkRatings)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ParkInfo:getOverallRating+f

25840694286: 00 00           - add [rax],al
25840694288: 00 00           - add [rax],al
2584069428A: 00 00           - add [rax],al
2584069428C: 00 00           - add [rax],al
2584069428E: 00 00           - add [rax],al
ParkInfo:getOverallRating: 55              - push rbp
ParkInfo:getOverallRating+1: 48 8B EC        - mov rbp,rsp
ParkInfo:getOverallRating+4: 48 83 EC 70     - sub rsp,70
ParkInfo:getOverallRating+8: 48 89 75 F8     - mov [rbp-08],rsi
ParkInfo:getOverallRating+c: 48 8B F1        - mov rsi,rcx
// ---------- INJECTING HERE ----------
ParkInfo:getOverallRating+f: F3 0F 10 46 6C  - movss xmm0,[rsi+6C]
// ---------- DONE INJECTING  ----------
ParkInfo:getOverallRating+14: F3 0F 5A C0     - cvtss2sd xmm0,xmm0
ParkInfo:getOverallRating+18: F2 0F 5A E8     - cvtsd2ss xmm5,xmm0
ParkInfo:getOverallRating+1c: F3 0F 11 6D F4  - movss [rbp-0C],xmm5
ParkInfo:getOverallRating+21: F3 0F 10 45 F4  - movss xmm0,[rbp-0C]
ParkInfo:getOverallRating+26: F3 0F 5A C0     - cvtss2sd xmm0,xmm0
ParkInfo:getOverallRating+2a: F2 0F 11 45 E8  - movsd [rbp-18],xmm0
ParkInfo:getOverallRating+2f: F3 0F 10 46 70  - movss xmm0,[rsi+70]
ParkInfo:getOverallRating+34: F3 0F 5A C0     - cvtss2sd xmm0,xmm0
ParkInfo:getOverallRating+38: F2 0F 5A E8     - cvtsd2ss xmm5,xmm0
ParkInfo:getOverallRating+3c: F3 0F 11 6D F4  - movss [rbp-0C],xmm5
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>137</ID>
          <Description>"Max Customer Count"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

//aobscan(INJECT_CustomerCount,89 86 24 03 00 00 48 63) // should be unique
define(INJECT_CustomerCount,Attraction:increaseCustomersCount+18)
alloc(newmem,$1000,INJECT_CustomerCount)

label(code)
label(return)

newmem:

code:
  mov [rsi+00000324],#999999999
  jmp return

INJECT_CustomerCount:
  jmp newmem
  nop
return:
registersymbol(INJECT_CustomerCount)

[DISABLE]

INJECT_CustomerCount:
  db 89 86 24 03 00 00

unregistersymbol(INJECT_CustomerCount)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: Attraction:increaseCustomersCount+18

1854A0D3B7B: 00 00                          - add [rax],al
1854A0D3B7D: 00 00                          - add [rax],al
1854A0D3B7F: 00 55 48                       - add [rbp+48],dl
Attraction:increaseCustomersCount+2: 8B EC                          - mov ebp,esp
Attraction:increaseCustomersCount+4: 48 83 EC 30                    - sub rsp,30
Attraction:increaseCustomersCount+8: 48 89 75 F8                    - mov [rbp-08],rsi
Attraction:increaseCustomersCount+c: 48 8B F1                       - mov rsi,rcx
Attraction:increaseCustomersCount+f: 48 63 86 24 03 00 00           - movsxd  rax,dword ptr [rsi+00000324]
Attraction:increaseCustomersCount+16: FF C0                          - inc eax
Attraction:increaseCustomersCount+18: 89 86 24 03 00 00              - mov [rsi+00000324],eax
// ---------- INJECTING HERE ----------
Attraction:increaseCustomersCount+1e: 48 63 86 2C 03 00 00           - movsxd  rax,dword ptr [rsi+0000032C]
// ---------- DONE INJECTING  ----------
Attraction:increaseCustomersCount+25: FF C0                          - inc eax
Attraction:increaseCustomersCount+27: 89 86 2C 03 00 00              - mov [rsi+0000032C],eax
Attraction:increaseCustomersCount+2d: 48 8B 86 20 01 00 00           - mov rax,[rsi+00000120]
Attraction:increaseCustomersCount+34: 48 8B C8                       - mov rcx,rax
Attraction:increaseCustomersCount+37: 83 38 00                       - cmp dword ptr [rax],00
Attraction:increaseCustomersCount+3a: 48 8D 6D 00                    - lea rbp,[rbp+00]
Attraction:increaseCustomersCount+3e: 49 BB B0 52 0B 4A 85 01 00 00  - mov r11,MainThreadEvent:raise
Attraction:increaseCustomersCount+48: 41 FF D3                       - call r11
Attraction:increaseCustomersCount+4b: 48 8B 75 F8                    - mov rsi,[rbp-08]
Attraction:increaseCustomersCount+4f: 48 8D 65 00                    - lea rsp,[rbp+00]
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>135</ID>
          <Description>"Max Ride Satisfaction"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

//aobscan(INJECT_RideSatisfaction,F3 0F 10 87 20 03 00 00 F3 0F 5A C0 F3) // should be unique
define(INJECT_RideSatisfaction,Attraction:gaugeInterest+284)
alloc(newmem,$1000,INJECT_RideSatisfaction)

label(code)
label(return)

newmem:

code:
  mov [rdi+00000320],(float)1
  movss xmm0,[rdi+00000320]
  jmp return

INJECT_RideSatisfaction:
  jmp newmem
  nop 3
return:
registersymbol(INJECT_RideSatisfaction)

[DISABLE]

INJECT_RideSatisfaction:
  db F3 0F 10 87 20 03 00 00

unregistersymbol(INJECT_RideSatisfaction)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: Attraction:gaugeInterest+284

Attraction:gaugeInterest+252: F2 0F 5A D2                    - cvtsd2ss xmm2,xmm2
Attraction:gaugeInterest+256: F2 0F 5A C9                    - cvtsd2ss xmm1,xmm1
Attraction:gaugeInterest+25a: F2 0F 5A C0                    - cvtsd2ss xmm0,xmm0
Attraction:gaugeInterest+25e: 49 BB 50 CC E2 48 85 01 00 00  - mov r11,UnityEngine.Mathf:Lerp
Attraction:gaugeInterest+268: 41 FF D3                       - call r11
Attraction:gaugeInterest+26b: F3 0F 5A C8                    - cvtss2sd xmm1,xmm0
Attraction:gaugeInterest+26f: F2 0F 10 85 50 FF FF FF        - movsd xmm0,[rbp-000000B0]
Attraction:gaugeInterest+277: F2 0F 59 C1                    - mulsd xmm0,xmm1
Attraction:gaugeInterest+27b: F2 0F 5A E8                    - cvtsd2ss xmm5,xmm0
Attraction:gaugeInterest+27f: F3 0F 11 6D D4                 - movss [rbp-2C],xmm5
// ---------- INJECTING HERE ----------
Attraction:gaugeInterest+284: F3 0F 10 87 20 03 00 00        - movss xmm0,[rdi+00000320]
// ---------- DONE INJECTING  ----------
Attraction:gaugeInterest+28c: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
Attraction:gaugeInterest+290: F3 0F 10 0D 28 0D 00 00        - movss xmm1,[Attraction:gaugeInterest+fc0]
Attraction:gaugeInterest+298: F3 0F 5A C9                    - cvtss2sd xmm1,xmm1
Attraction:gaugeInterest+29c: 66 0F 2F C8                    - comisd xmm1,xmm0
Attraction:gaugeInterest+2a0: 7A 06                          - jp Attraction:gaugeInterest+2a8
Attraction:gaugeInterest+2a2: 0F 82 54 00 00 00              - jb Attraction:gaugeInterest+2fc
Attraction:gaugeInterest+2a8: F3 0F 10 05 00 0D 00 00        - movss xmm0,[Attraction:gaugeInterest+fb0]
Attraction:gaugeInterest+2b0: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
Attraction:gaugeInterest+2b4: F3 0F 10 0D E4 0C 00 00        - movss xmm1,[Attraction:gaugeInterest+fa0]
Attraction:gaugeInterest+2bc: F3 0F 5A C9                    - cvtss2sd xmm1,xmm1
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>139</ID>
          <Description>"Max Guests Visited Park (Updates When Someone Enters Park)"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

//aobscan(INJECT_guestCount,F1 48 63 46 50 FF C0) // should be unique
define(INJECT_guestCount,ParkInfo:onGuestEntered+b)
alloc(newmem,$1000,INJECT_guestCount)

label(code)
label(return)

newmem:

code:
  mov [rsi+50],#999999999
  movsxd  rax,dword ptr [rsi+50]
  inc eax
  jmp return

INJECT_guestCount:
  jmp newmem
  nop
return:
registersymbol(INJECT_guestCount)

[DISABLE]

INJECT_guestCount:
  db 48 63 46 50 FF C0

unregistersymbol(INJECT_guestCount)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ParkInfo:onGuestEntered+b

AchievementController:getIntStat+4f: C3              - ret 
1846414E180: 01 04 02        - add [rdx+rax],eax
1846414E183: 05 04 03 01 50  - add eax,50010304
1846414E188: 00 00           - add [rax],al
1846414E18A: 00 00           - add [rax],al
1846414E18C: 00 00           - add [rax],al
1846414E18E: 00 00           - add [rax],al
ParkInfo:onGuestEntered: 48 83 EC 18     - sub rsp,18
ParkInfo:onGuestEntered+4: 48 89 34 24     - mov [rsp],rsi
ParkInfo:onGuestEntered+8: 48 8B F1        - mov rsi,rcx
// ---------- INJECTING HERE ----------
ParkInfo:onGuestEntered+b: 48 63 46 50     - movsxd  rax,dword ptr [rsi+50]
// ---------- DONE INJECTING  ----------
ParkInfo:onGuestEntered+f: FF C0           - inc eax
ParkInfo:onGuestEntered+11: 89 46 50        - mov [rsi+50],eax
ParkInfo:onGuestEntered+14: 48 63 46 60     - movsxd  rax,dword ptr [rsi+60]
ParkInfo:onGuestEntered+18: FF C0           - inc eax
ParkInfo:onGuestEntered+1a: 89 46 60        - mov [rsi+60],eax
ParkInfo:onGuestEntered+1d: 48 8B 34 24     - mov rsi,[rsp]
ParkInfo:onGuestEntered+21: 48 83 C4 18     - add rsp,18
ParkInfo:onGuestEntered+25: C3              - ret 
1846414E1B6: 00 00           - add [rax],al
1846414E1B8: 01 04 01        - add [rcx+rax],eax
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>35</ID>
          <Description>"Instant Research (Currently Still Have To Wait For Cleaning And Design)"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

//aobscan(INJECT_Research,F3 0F 11 6E 64 F3 0F 10 46 64 F3 0F 5A C0 F3) // should be unique
define(INJECT_Research,ResearchTeam:update+52f)
alloc(newmem,$1000,INJECT_Research)

label(code)
label(return)

newmem:

code:
  mov [rsi+64],(float)1
  jmp return

INJECT_Research:
  jmp newmem
return:
registersymbol(INJECT_Research)

[DISABLE]

INJECT_Research:
  db F3 0F 11 6E 64

unregistersymbol(INJECT_Research)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ResearchTeam:update+52f

ResearchTeam:update+4f7: F2 0F 10 85 38 FF FF FF        - movsd xmm0,[rbp-000000C8]
ResearchTeam:update+4ff: F2 0F 5E C1                    - divsd xmm0,xmm1
ResearchTeam:update+503: F2 0F 5A C0                    - cvtsd2ss xmm0,xmm0
ResearchTeam:update+507: 48 8D AD 00 00 00 00           - lea rbp,[rbp+00000000]
ResearchTeam:update+50e: 49 BB 00 CA EA F7 57 02 00 00  - mov r11,UnityEngine.Mathf:Clamp01
ResearchTeam:update+518: 41 FF D3                       - call r11
ResearchTeam:update+51b: F3 0F 5A C8                    - cvtss2sd xmm1,xmm0
ResearchTeam:update+51f: F2 0F 10 85 40 FF FF FF        - movsd xmm0,[rbp-000000C0]
ResearchTeam:update+527: F2 0F 58 C1                    - addsd xmm0,xmm1
ResearchTeam:update+52b: F2 0F 5A E8                    - cvtsd2ss xmm5,xmm0
// ---------- INJECTING HERE ----------
ResearchTeam:update+52f: F3 0F 11 6E 64                 - movss [rsi+64],xmm5
// ---------- DONE INJECTING  ----------
ResearchTeam:update+534: F3 0F 10 46 64                 - movss xmm0,[rsi+64]
ResearchTeam:update+539: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
ResearchTeam:update+53d: F3 0F 10 0D 4B 02 00 00        - movss xmm1,[ResearchTeam:update+790]
ResearchTeam:update+545: F3 0F 5A C9                    - cvtss2sd xmm1,xmm1
ResearchTeam:update+549: 66 0F 2F C8                    - comisd xmm1,xmm0
ResearchTeam:update+54d: 0F 86 35 00 00 00              - jbe ResearchTeam:update+588
ResearchTeam:update+553: 48 8B CE                       - mov rcx,rsi
ResearchTeam:update+556: 49 BB 20 18 94 37 58 02 00 00  - mov r11,ResearchTeam:getStageIndex
ResearchTeam:update+560: 41 FF D3                       - call r11
ResearchTeam:update+563: 3B 45 90                       - cmp eax,[rbp-70]
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>46</ID>
          <Description>"Staff Max Stats and No Wage"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

//aobscan(INJECT_Staff,48 63 86 34 04 00 00) // should be unique
define(INJECT_Staff,WagesPaymentProcessor:getMonthlyDueAmount+7d)
alloc(newmem,$1000,INJECT_Staff)

label(code)
label(return)

newmem:

code:
  mov  [rsi+000003E0],(float)1 // Patience
  mov  [rsi+000003E4],(float)0 // Grumpiness
  mov  [rsi+000003E8],(float)1 // Tidiness
  mov  [rsi+000003EC],(float)1 // Genrtosity
  mov [rsi+00000270],#1 //Happiness
  mov [rsi+00000274],#0 //Tiredness
  mov [rsi+00000278],#0 //Hunger
  mov [rsi+0000027C],#0 //Thirst
  mov [rsi+00000280],#0 //Toilet
  mov [rsi+000002A0],#1 //visual Interest Value
  mov [rsi+00000434],#0 //Wage
  mov [rsi+00000438],#99 //Level
  movsxd  rax,dword ptr [rsi+00000434]
  jmp return

INJECT_Staff:
  jmp newmem
  nop 2
return:
registersymbol(INJECT_Staff)

[DISABLE]

INJECT_Staff:
  db 48 63 86 34 04 00 00

unregistersymbol(INJECT_Staff)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: WagesPaymentProcessor:getMonthlyDueAmount+7d

WagesPaymentProcessor:getMonthlyDueAmount+50: 41 FF D3                       - call r11
WagesPaymentProcessor:getMonthlyDueAmount+53: 48 89 45 D0                    - mov [rbp-30],rax
WagesPaymentProcessor:getMonthlyDueAmount+57: EB 2D                          - jmp WagesPaymentProcessor:getMonthlyDueAmount+86
WagesPaymentProcessor:getMonthlyDueAmount+59: 48 8D AD 00 00 00 00           - lea rbp,[rbp+00000000]
WagesPaymentProcessor:getMonthlyDueAmount+60: 48 8B 45 D0                    - mov rax,[rbp-30]
WagesPaymentProcessor:getMonthlyDueAmount+64: 48 8B C8                       - mov rcx,rax
WagesPaymentProcessor:getMonthlyDueAmount+67: 48 8B 00                       - mov rax,[rax]
WagesPaymentProcessor:getMonthlyDueAmount+6a: 49 BA 80 D8 EA D0 AF 02 00 00  - mov r10,000002AFD0EAD880
WagesPaymentProcessor:getMonthlyDueAmount+74: FF 90 78 FF FF FF              - call qword ptr [rax-00000088]
WagesPaymentProcessor:getMonthlyDueAmount+7a: 48 8B F0                       - mov rsi,rax
// ---------- INJECTING HERE ----------
WagesPaymentProcessor:getMonthlyDueAmount+7d: 48 63 86 34 04 00 00           - movsxd  rax,dword ptr [rsi+00000434]
// ---------- DONE INJECTING  ----------
WagesPaymentProcessor:getMonthlyDueAmount+84: 03 F8                          - add edi,eax
WagesPaymentProcessor:getMonthlyDueAmount+86: 48 8B 45 D0                    - mov rax,[rbp-30]
WagesPaymentProcessor:getMonthlyDueAmount+8a: 48 8B C8                       - mov rcx,rax
WagesPaymentProcessor:getMonthlyDueAmount+8d: 48 8B 00                       - mov rax,[rax]
WagesPaymentProcessor:getMonthlyDueAmount+90: 49 BA 48 B6 93 D0 AE 02 00 00  - mov r10,000002AED093B648
2AFB797BDBA: FF 50 88                       - call qword ptr [rax-78]
WagesPaymentProcessor:getMonthlyDueAmount+9d: 85 C0                          - test eax,eax
WagesPaymentProcessor:getMonthlyDueAmount+9f: 75 BF                          - jne WagesPaymentProcessor:getMonthlyDueAmount+60
WagesPaymentProcessor:getMonthlyDueAmount+a1: 48 C7 45 C8 00 00 00 00        - mov qword ptr [rbp-38],00000000
WagesPaymentProcessor:getMonthlyDueAmount+a9: 48 83 EC 08                    - sub rsp,08
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>39</ID>
          <Description>"Guests Max Stats / Max Money"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

//aobscan(INJECT_Guest,D3 F3 0F 10 86 70 02 00 00) // should be unique
define(INJECT_Guest,Guest:tick+aab)
alloc(newmem,$1000,INJECT_Guest)

label(code)
label(return)

newmem:

code:
  mov  [rsi+000003D8],(float)0 // Min Intensity
  mov  [rsi+000003DC],(float)1 // Max Intensity
  mov  [rsi+000003E0],(float)1 // Patience
  mov  [rsi+000003E4],(float)0 // Grumpiness
  mov  [rsi+000003E8],(float)1 // Tidiness
  mov  [rsi+000003EC],(float)1 // Genrtosity

  mov  [rsi+00000260],(float)999999 // Positive Thoughts Count
  mov  [rsi+00000264],(float)0 // Negative Thoughts Count
  mov  [rsi+0000042C],(float)0 // Dirt Encountered
  mov  [rsi+00000270],(float)1 // Guest Happieness
  mov  [rsi+00000274],(float)0 // Guest Tiredness
  mov  [rsi+00000278],(float).5 //Guest Hunger &lt;-- Change to .5 to 0 for no Hunger
  mov  [rsi+0000027C],(float).5 // Guest Thirst &lt;-- Change to .5 to 0 for no Thirts
  mov  [rsi+00000280],(float)0 // Guest Toilet Urgency
  mov  [rsi+00000284],(float)0 // Guest Nausea
  mov  [rsi+00000288],(float)1 // Guest Nausea Tolerance
  mov  [rsi+0000028C],(float)0 // Sugar Boost
  mov  [rsi+00000290],(float)1 // Immersion
  mov  [rsi+00000294],(float)999999 // money

  movss xmm0,[rsi+00000270]
  jmp return

INJECT_Guest+01:
  jmp newmem
  nop 3
return:
registersymbol(INJECT_Guest)

[DISABLE]

INJECT_Guest+01:
  db F3 0F 10 86 70 02 00 00

unregistersymbol(INJECT_Guest)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: Guest:tick+aab

Guest:tick+a7b: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
Guest:tick+a7f: F3 0F 10 8D 18 FF FF FF        - movss xmm1,[rbp-000000E8]
Guest:tick+a87: F3 0F 5A C9                    - cvtss2sd xmm1,xmm1
Guest:tick+a8b: F2 0F 58 C1                    - addsd xmm0,xmm1
Guest:tick+a8f: 48 8B CE                       - mov rcx,rsi
Guest:tick+a92: F2 0F 10 C8                    - movsd xmm1,xmm0
Guest:tick+a96: F2 0F 5A C9                    - cvtsd2ss xmm1,xmm1
Guest:tick+a9a: 48 8D 6D 00                    - lea rbp,[rbp+00]
Guest:tick+a9e: 49 BB 00 87 5C B7 AF 02 00 00  - mov r11,Person:set_Happiness
Guest:tick+aa8: 41 FF D3                       - call r11
// ---------- INJECTING HERE ----------
Guest:tick+aab: F3 0F 10 86 70 02 00 00        - movss xmm0,[rsi+00000270]
// ---------- DONE INJECTING  ----------
Guest:tick+ab3: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
Guest:tick+ab7: F2 0F 5A E8                    - cvtsd2ss xmm5,xmm0
Guest:tick+abb: F3 0F 11 AD 10 FF FF FF        - movss [rbp-000000F0],xmm5
Guest:tick+ac3: F3 0F 10 85 10 FF FF FF        - movss xmm0,[rbp-000000F0]
Guest:tick+acb: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
Guest:tick+acf: F3 0F 10 0D 29 08 00 00        - movss xmm1,[Guest:tick+1300]
Guest:tick+ad7: F3 0F 5A C9                    - cvtss2sd xmm1,xmm1
Guest:tick+adb: 66 0F 2F C8                    - comisd xmm1,xmm0
Guest:tick+adf: 7A 18                          - jp Guest:tick+af9
Guest:tick+ae1: 73 16                          - jae Guest:tick+af9
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>40</ID>
              <Description>"&lt;- I Left Hunger And Thurst To Half So They Spend Money -&gt;"</Description>
              <Color>0000FF</Color>
              <GroupHeader>1</GroupHeader>
            </CheatEntry>
            <CheatEntry>
              <ID>41</ID>
              <Description>"&lt;- Your Can Change In Script If You Want No Thurst Or Hunger Instructions Inside -&gt; "</Description>
              <Color>0000FF</Color>
              <GroupHeader>1</GroupHeader>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>126</ID>
          <Description>"Lock Weather (Will Never Change From Current Weather)"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

//aobscan(INJECT_WeatherLock,00 01 04 02 05 04 03 01 50 00 00 00 00 00 00 00 00 55 48 8B EC 48 83 EC 60 48 89 75 E8 48 89 7D F0 4C 89 7D F8 48 8B F1 48 8D) // should be unique
define(INJECT_WeatherLock,WeatherController:calculateNewWeather)
registersymbol(INJECT_WeatherLock)

INJECT_WeatherLock:
  db C3

[DISABLE]

INJECT_WeatherLock:
  db 55

unregistersymbol(INJECT_WeatherLock)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: WeatherController:calculateNewWeather

Calendar:getAbsoluteWeek+38: 48 8D 65 00                    - lea rsp,[rbp+00]
Calendar:getAbsoluteWeek+3c: 5D                             - pop rbp
Calendar:getAbsoluteWeek+3d: C3                             - ret 
1F1B499F34E: 00 00                          - add [rax],al
1F1B499F350: 01 04 02                       - add [rdx+rax],eax
1F1B499F353: 05 04 03 01 50                 - add eax,50010304
1F1B499F358: 00 00                          - add [rax],al
1F1B499F35A: 00 00                          - add [rax],al
1F1B499F35C: 00 00                          - add [rax],al
1F1B499F35E: 00 00                          - add [rax],al
// ---------- INJECTING HERE ----------
WeatherController:calculateNewWeather: 55                             - push rbp
// ---------- DONE INJECTING  ----------
WeatherController:calculateNewWeather+1: 48 8B EC                       - mov rbp,rsp
WeatherController:calculateNewWeather+4: 48 83 EC 60                    - sub rsp,60
WeatherController:calculateNewWeather+8: 48 89 75 E8                    - mov [rbp-18],rsi
WeatherController:calculateNewWeather+c: 48 89 7D F0                    - mov [rbp-10],rdi
WeatherController:calculateNewWeather+10: 4C 89 7D F8                    - mov [rbp-08],r15
WeatherController:calculateNewWeather+14: 48 8B F1                       - mov rsi,rcx
WeatherController:calculateNewWeather+17: 48 8D AD 00 00 00 00           - lea rbp,[rbp+00000000]
WeatherController:calculateNewWeather+1e: 49 BB B0 AF 96 B4 F1 01 00 00  - mov r11,WeatherController:getWeatherCalculationIndex
WeatherController:calculateNewWeather+28: 41 FF D3                       - call r11
WeatherController:calculateNewWeather+2b: 4C 8B F8                       - mov r15,rax
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>47</ID>
          <Description>"Pointers"</Description>
          <Options moHideChildren="1"/>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>4</ID>
              <Description>"Park Info"</Description>
              <Options moHideChildren="1"/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

//aobscan(INJECT_ParkInfo,38 F3 0F 10 47 48) // should be unique
define(INJECT_ParkInfo,ParkInfo:moneyTransaction+103)
alloc(newmem,$1000,INJECT_ParkInfo)

registersymbol(parkinfo)
label(parkinfo)
label(code)
label(return)

newmem:

code:
  mov [parkinfo],rdi
  movss xmm0,[rdi+48]
  jmp return

parkinfo:
dq

INJECT_ParkInfo:
  jmp newmem
return:
registersymbol(INJECT_ParkInfo)

[DISABLE]

INJECT_ParkInfo:
  db F3 0F 10 47 48

unregistersymbol(parkinfo)
unregistersymbol(INJECT_ParkInfo)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ParkInfo:moneyTransaction+103

ParkInfo:moneyTransaction+dc: 3B D8                          - cmp ebx,eax
ParkInfo:moneyTransaction+de: 72 13                          - jb ParkInfo:moneyTransaction+f3
ParkInfo:moneyTransaction+e0: 48 8D 64 24 00                 - lea rsp,[rsp+00]
ParkInfo:moneyTransaction+e5: 90                             - nop 
ParkInfo:moneyTransaction+e6: 49 BB DE 06 19 1B 58 02 00 00  - mov r11,000002581B1906DE
ParkInfo:moneyTransaction+f0: 41 FF D3                       - call r11
ParkInfo:moneyTransaction+f3: 49 8B 44 24 10                 - mov rax,[r12+10]
ParkInfo:moneyTransaction+f8: 48 63 CB                       - movsxd  rcx,ebx
ParkInfo:moneyTransaction+fb: 48 8D 44 C8 20                 - lea rax,[rax+rcx*8+20]
ParkInfo:moneyTransaction+100: 4C 8B 38                       - mov r15,[rax]
// ---------- INJECTING HERE ----------
ParkInfo:moneyTransaction+103: F3 0F 10 47 48                 - movss xmm0,[rdi+48]
// ---------- DONE INJECTING  ----------
ParkInfo:moneyTransaction+108: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
ParkInfo:moneyTransaction+10c: F2 0F 5A E8                    - cvtsd2ss xmm5,xmm0
ParkInfo:moneyTransaction+110: F3 0F 11 6D 90                 - movss [rbp-70],xmm5
ParkInfo:moneyTransaction+115: F3 0F 10 45 90                 - movss xmm0,[rbp-70]
ParkInfo:moneyTransaction+11a: F3 0F 5A C0                    - cvtss2sd xmm0,xmm0
ParkInfo:moneyTransaction+11e: F3 0F 10 4D 80                 - movss xmm1,[rbp-80]
ParkInfo:moneyTransaction+123: F3 0F 5A C9                    - cvtss2sd xmm1,xmm1
ParkInfo:moneyTransaction+127: F2 0F 58 C1                    - addsd xmm0,xmm1
ParkInfo:moneyTransaction+12b: F2 0F 5A E8                    - cvtsd2ss xmm5,xmm0
ParkInfo:moneyTransaction+12f: F3 0F 11 6D 90                 - movss [rbp-70],xmm5
}
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>2</ID>
                  <Description>"BASE"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>parkinfo</Address>
                  <Offsets>
                    <Offset>0</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>5</ID>
                  <Description>"Money"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+48</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>6</ID>
                  <Description>"Guests Left Count"</Description>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[parkinfo]+4C</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>7</ID>
                  <Description>"Total Guests"</Description>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[parkinfo]+50</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>8</ID>
                  <Description>"Customers Missed Last Month"</Description>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[parkinfo]+54</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>9</ID>
                  <Description>"Customers Missed Current Month"</Description>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[parkinfo]+58</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>10</ID>
                  <Description>"Customers Last Month"</Description>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[parkinfo]+5C</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>11</ID>
                  <Description>"Customers Current Month"</Description>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[parkinfo]+60</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>12</ID>
                  <Description>"Park Entrance Fee"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+64</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>13</ID>
                  <Description>"Land Tile Price"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+68</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>14</ID>
                  <Description>"Rating Price Satisfaction"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+6C</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>15</ID>
                  <Description>"Rating Experiences"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+70</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>16</ID>
                  <Description>"Rating Decoration"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+74</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>17</ID>
                  <Description>"Rating Cleanliness"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+78</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>18</ID>
                  <Description>"Rating Happiness"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+7C</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>19</ID>
                  <Description>"Rating Tiredness"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+80</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>20</ID>
                  <Description>"Rating Hunger"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+84</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>21</ID>
                  <Description>"Rating Thirst"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+88</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>22</ID>
                  <Description>"Rating Recent Crashes"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+8C</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>23</ID>
                  <Description>"Average Time In Park"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+90</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>24</ID>
                  <Description>"Average Money Spent"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+94</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>25</ID>
                  <Description>"Average Rides Visited"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+98</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>26</ID>
                  <Description>"Average Food Consumed"</Description>
                  <VariableType>Float</VariableType>
                  <Address>[parkinfo]+9C</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>27</ID>
                  <Description>"Vouchers Redeemed"</Description>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[parkinfo]+A0</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>28</ID>
                  <Description>"Last Closed Time"</Description>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[parkinfo]+A4</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>29</ID>
                  <Description>"Last Reopened Time"</Description>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[parkinfo]+A8</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
  <CheatCodes>
    <CodeEntry>
      <Description>Change of jbe Parkitect.UI.HoldGoalsMessage:Update+83</Description>
      <AddressString>1A2DF0FC892</AddressString>
      <Before>
        <Byte>C9</Byte>
        <Byte>66</Byte>
        <Byte>0F</Byte>
        <Byte>2F</Byte>
        <Byte>C8</Byte>
      </Before>
      <Actual>
        <Byte>0F</Byte>
        <Byte>86</Byte>
        <Byte>2B</Byte>
        <Byte>00</Byte>
        <Byte>00</Byte>
        <Byte>00</Byte>
      </Actual>
      <After>
        <Byte>F3</Byte>
        <Byte>0F</Byte>
        <Byte>10</Byte>
        <Byte>05</Byte>
        <Byte>30</Byte>
      </After>
    </CodeEntry>
    <CodeEntry>
      <Description>Change of mov r11,UnityEngine.Time:get_deltaTime</Description>
      <AddressString>1A2DF0FC85E</AddressString>
      <Before>
        <Byte>0F</Byte>
        <Byte>11</Byte>
        <Byte>45</Byte>
        <Byte>F0</Byte>
        <Byte>90</Byte>
      </Before>
      <Actual>
        <Byte>49</Byte>
        <Byte>BB</Byte>
        <Byte>60</Byte>
        <Byte>0C</Byte>
        <Byte>D7</Byte>
        <Byte>D2</Byte>
        <Byte>A2</Byte>
        <Byte>01</Byte>
        <Byte>00</Byte>
        <Byte>00</Byte>
      </Actual>
      <After>
        <Byte>41</Byte>
        <Byte>FF</Byte>
        <Byte>D3</Byte>
        <Byte>F3</Byte>
        <Byte>0F</Byte>
      </After>
    </CodeEntry>
    <CodeEntry>
      <Description>Change of jne LoanController:get_activeLoanCount+136</Description>
      <AddressString>2A353D178CB</AddressString>
      <Before>
        <Byte>8B</Byte>
        <Byte>F9</Byte>
        <Byte>48</Byte>
        <Byte>85</Byte>
        <Byte>C0</Byte>
      </Before>
      <Actual>
        <Byte>0F</Byte>
        <Byte>85</Byte>
        <Byte>E5</Byte>
        <Byte>00</Byte>
        <Byte>00</Byte>
        <Byte>00</Byte>
      </Actual>
      <After>
        <Byte>48</Byte>
        <Byte>B8</Byte>
        <Byte>00</Byte>
        <Byte>61</Byte>
        <Byte>BB</Byte>
      </After>
    </CodeEntry>
    <CodeEntry>
      <Description>Change of je BuildEveryRideAchievement:onAttractionAdded+25b</Description>
      <AddressString>2A367125553</AddressString>
      <Before>
        <Byte>C0</Byte>
        <Byte>C3</Byte>
        <Byte>45</Byte>
        <Byte>85</Byte>
        <Byte>F6</Byte>
      </Before>
      <Actual>
        <Byte>74</Byte>
        <Byte>16</Byte>
      </Actual>
      <After>
        <Byte>48</Byte>
        <Byte>8B</Byte>
        <Byte>CF</Byte>
        <Byte>48</Byte>
        <Byte>8D</Byte>
      </After>
    </CodeEntry>
    <CodeEntry>
      <Description>Change of jl BanXVandalsAchievement:onVandalBanned+4b</Description>
      <AddressString>2A3A4D1F8C6</AddressString>
      <Before>
        <Byte>47</Byte>
        <Byte>38</Byte>
        <Byte>44</Byte>
        <Byte>3B</Byte>
        <Byte>F8</Byte>
      </Before>
      <Actual>
        <Byte>7C</Byte>
        <Byte>13</Byte>
      </Actual>
      <After>
        <Byte>48</Byte>
        <Byte>8B</Byte>
        <Byte>CF</Byte>
        <Byte>66</Byte>
        <Byte>66</Byte>
      </After>
    </CodeEntry>
    <CodeEntry>
      <Description>Change of call r11</Description>
      <AddressString>1E14B293750</AddressString>
      <Before>
        <Byte>18</Byte>
        <Byte>E1</Byte>
        <Byte>01</Byte>
        <Byte>00</Byte>
        <Byte>00</Byte>
      </Before>
      <Actual>
        <Byte>41</Byte>
        <Byte>FF</Byte>
        <Byte>D3</Byte>
      </Actual>
      <After>
        <Byte>48</Byte>
        <Byte>8B</Byte>
        <Byte>C8</Byte>
        <Byte>83</Byte>
        <Byte>39</Byte>
      </After>
    </CodeEntry>
    <CodeEntry>
      <Description>Change of je RainController:enableRainAndLightning+4b</Description>
      <AddressString>1E14B293762</AddressString>
      <Before>
        <Byte>01</Byte>
        <Byte>00</Byte>
        <Byte>00</Byte>
        <Byte>85</Byte>
        <Byte>C0</Byte>
      </Before>
      <Actual>
        <Byte>74</Byte>
        <Byte>17</Byte>
      </Actual>
      <After>
        <Byte>48</Byte>
        <Byte>8B</Byte>
        <Byte>CE</Byte>
        <Byte>48</Byte>
        <Byte>8D</Byte>
      </After>
    </CodeEntry>
    <CodeEntry>
      <Description>Change of call r11</Description>
      <AddressString>1E14B293778</AddressString>
      <Before>
        <Byte>4B</Byte>
        <Byte>E1</Byte>
        <Byte>01</Byte>
        <Byte>00</Byte>
        <Byte>00</Byte>
      </Before>
      <Actual>
        <Byte>41</Byte>
        <Byte>FF</Byte>
        <Byte>D3</Byte>
      </Actual>
      <After>
        <Byte>48</Byte>
        <Byte>B9</Byte>
        <Byte>B8</Byte>
        <Byte>E7</Byte>
        <Byte>20</Byte>
      </After>
    </CodeEntry>
    <CodeEntry>
      <Description>Change of call r11</Description>
      <AddressString>1E14B294788</AddressString>
      <Before>
        <Byte>56</Byte>
        <Byte>E1</Byte>
        <Byte>01</Byte>
        <Byte>00</Byte>
        <Byte>00</Byte>
      </Before>
      <Actual>
        <Byte>41</Byte>
        <Byte>FF</Byte>
        <Byte>D3</Byte>
      </Actual>
      <After>
        <Byte>83</Byte>
        <Byte>38</Byte>
        <Byte>00</Byte>
        <Byte>0F</Byte>
        <Byte>B6</Byte>
      </After>
    </CodeEntry>
    <CodeEntry>
      <Description>Change of je WeatherController:get_IsRaining+44</Description>
      <AddressString>1F1B47EE4B2</AddressString>
      <Before>
        <Byte>8B</Byte>
        <Byte>FF</Byte>
        <Byte>48</Byte>
        <Byte>85</Byte>
        <Byte>FF</Byte>
      </Before>
      <Actual>
        <Byte>74</Byte>
        <Byte>20</Byte>
      </Actual>
      <After>
        <Byte>48</Byte>
        <Byte>8B</Byte>
        <Byte>07</Byte>
        <Byte>48</Byte>
        <Byte>8B</Byte>
      </After>
    </CodeEntry>
    <CodeEntry>
      <Description>Change of call r11</Description>
      <AddressString>1F1B464D798</AddressString>
      <Before>
        <Byte>B4</Byte>
        <Byte>F1</Byte>
        <Byte>01</Byte>
        <Byte>00</Byte>
        <Byte>00</Byte>
      </Before>
      <Actual>
        <Byte>41</Byte>
        <Byte>FF</Byte>
        <Byte>D3</Byte>
      </Actual>
      <After>
        <Byte>EB</Byte>
        <Byte>16</Byte>
        <Byte>48</Byte>
        <Byte>8B</Byte>
        <Byte>CF</Byte>
      </After>
    </CodeEntry>
  </CheatCodes>
  <UserdefinedSymbols/>
</CheatTable>
