<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="42">
  <CheatEntries>
    <CheatEntry>
      <ID>3511</ID>
      <Description>"Enable one by one, enabling script takes time; some items may not be enabled"</Description>
      <Color>400080</Color>
      <GroupHeader>1</GroupHeader>
    </CheatEntry>
    <CheatEntry>
      <ID>3512</ID>
      <Description>"If script failed, please play game for a while and try again"</Description>
      <Color>400080</Color>
      <GroupHeader>1</GroupHeader>
    </CheatEntry>
    <CheatEntry>
      <ID>3513</ID>
      <Description>"Compact Mode"</Description>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]
--https://forum.cheatengine.org/viewtopic.php?t=570055
LuaCall(function cycleFullCompact(sender,force) local state = not(compactmenuitem.Caption == 'Compact View Mode'); if force~=nil then state = not force end; compactmenuitem.Caption = state and 'Compact View Mode' or 'Full View Mode'; getMainForm().Splitter1.Visible = state; getMainForm().Panel4.Visible    = state; getMainForm().Panel5.Visible    = state; end; function addCompactMenu() if compactmenualreadyexists then return end; local parent = getMainForm().Menu.Items; compactmenuitem = createMenuItem(parent); parent.add(compactmenuitem); compactmenuitem.Caption = 'Compact View Mode'; compactmenuitem.OnClick = cycleFullCompact; compactmenualreadyexists = 'yes'; end; addCompactMenu(); cycleFullCompact(nil,true))

[DISABLE]
LuaCall(cycleFullCompact(nil,false))
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>3514</ID>
      <Description>"Init (Open process first)"</Description>
      <Options moHideChildren="1" moDeactivateChildrenAsWell="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript Async="1">[ENABLE]
{$asm}
define(MAINEXE, "DistantWorlds2.exe")
alloc(newmem, 1000, MAINEXE)
label(EMPIRE_ID)
label(is_2nd_research_step_ok)

newmem:
  EMPIRE_ID:
  dw #1
  is_2nd_research_step_ok:
  dd 0

registersymbol(EMPIRE_ID)
registersymbol(is_2nd_research_step_ok)
[DISABLE]
unregistersymbol(EMPIRE_ID)
unregistersymbol(is_2nd_research_step_ok)
dealloc(newmem, 1000)
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>3515</ID>
          <Description>"Player empire ID"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>A00000</Color>
          <VariableType>2 Bytes</VariableType>
          <Address>EMPIRE_ID</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>3516</ID>
          <Description>"Economy: Do not lock / click on money area or not pause should be faster"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-13
  Author : bbfox @ https://opencheattables.com/
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECTDRAW_MAIN_HELPER, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECTDRAW_MAIN_HELPER, "DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader"+9F1, "DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader"+2C01,C5 7A 10 40 60) // should be unique
registersymbol(INJECTDRAW_MAIN_HELPER)
 ]]

local scriptStrB = [[
aobscan(INJECTDRAW_MAIN_HELPER,C5 7A 10 40 60) // should be unique
registersymbol(INJECTDRAW_MAIN_HELPER)
 ]]

  --if (not autoAssemble(scriptStrA)) then
    --if (not autoAssemble(scriptStrB)) then
    --  print('Cannot find AOB, please play game a while and try later. / or error found')
    --  error('failed')
    --end
  --end

{$asm}
aobscan(INJECTDRAW_MAIN_HELPER,C5 7A 10 40 60) // should be unique
alloc(newmem,$1000,INJECTDRAW_MAIN_HELPER)

label(code)
label(return)
label(i_economy_addr_v2)
label(fv_min_money)
label(is_economy_addr_refresh_always)

newmem:
  cmp dword ptr [is_economy_addr_refresh_always], 1
  je eco_main
  cmp qword ptr [i_economy_addr_v2], 0
  jne code

eco_main:
  //push rbx
  //lea rbx, [rax]
  //mov [i_economy_addr_v2], rbx
  //pop rbx

  mov [i_economy_addr_v2], rax

code:
  vmovss xmm8,[rax+60]
  jmp return

align 10 cc
  is_economy_addr_refresh_always:
  dd 1
  i_economy_addr_v2:
  dq 0
  fv_min_money:
  dd (float)100000

INJECTDRAW_MAIN_HELPER:
  jmp newmem

return:
registersymbol(is_economy_addr_refresh_always)
registersymbol(i_economy_addr_v2)
registersymbol(INJECTDRAW_MAIN_HELPER)
{$lua}
getLuaEngine().close()
{$asm}
[DISABLE]

INJECTDRAW_MAIN_HELPER:
  db C5 7A 10 40 60

unregistersymbol(i_economy_addr_v2)
unregistersymbol(is_economy_addr_refresh_always)
unregistersymbol(INJECTDRAW_MAIN_HELPER)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+A06

DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+9BD: 48 89 85 18 FB FF FF           - mov [rbp-000004E8],rax
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+9C4: C4 E1 7A 10 85 28 FB FF FF     - vmovss xmm0,[rbp-000004D8]
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+9CD: C4 E1 7A 10 8D 2C FB FF FF     - vmovss xmm1,[rbp-000004D4]
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+9D6: C4 E1 7A 11 85 18 FB FF FF     - vmovss [rbp-000004E8],xmm0
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+9DF: C4 E1 7A 11 8D 1C FB FF FF     - vmovss [rbp-000004E4],xmm1
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+9E8: C4 61 7A 11 85 08 FF FF FF     - vmovss [rbp-000000F8],xmm8
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+9F1: C4 41 1A 5C E3                 - vsubss xmm12,xmm12,xmm11
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+9F6: 48 85 F6                       - test rsi,rsi
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+9F9: 0F 84 6F 26 00 00              - je DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+306E
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+9FF: 48 8B 86 38 01 00 00           - mov rax,[rsi+00000138]
// ---------- INJECTING HERE ----------
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+A06: C4 61 7A 10 48 60              - vmovss xmm9,[rax+60]
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+A0C: 48 B8 60 48 31 EB 06 02 00 00  - mov rax,00000206EB314860
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+A16: 48 8B 00                       - mov rax,[rax]
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+A19: 48 89 85 80 F8 FF FF           - mov [rbp-00000780],rax
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+A20: E8 AB 3C 2D 5D                 - call System.Globalization.NumberFormatInfo::get_CurrentInfo
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+A25: 4C 8B C0                       - mov r8,rax
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+A28: 48 8B 95 80 F8 FF FF           - mov rdx,[rbp-00000780]
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+A2F: C4 C1 78 28 C1                 - vmovaps xmm0,xmm9
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+A34: E8 E7 42 3B 5E                 - call clr.dll+70A20
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+A39: 8B 55 68                       - mov edx,[rbp+68]
DistantWorlds.Types.UserInterfaceHelper::DrawMainViewHeader+A3C: 89 95 F8 FE FF FF              - mov [rbp-00000108],edx
}



{
// ORIGINAL CODE - INJECTION POINT: 7FF8D4DA95ED

7FF8D4DA95B5: 48 89 44 24 28                 - mov [rsp+28],rax
7FF8D4DA95BA: 48 8B 85 90 FB FF FF           - mov rax,[rbp-00000470]
7FF8D4DA95C1: 48 89 44 24 30                 - mov [rsp+30],rax
7FF8D4DA95C6: E8 55 2E EA FE                 - call 7FF8D3C4C420
7FF8D4DA95CB: C5 7A 11 8D 18 FF FF FF        - vmovss [rbp-000000E8],xmm9
7FF8D4DA95D3: C4 41 1A 5C E0                 - vsubss xmm12,xmm12,xmm8
7FF8D4DA95D8: C4 41 1A 5C E3                 - vsubss xmm12,xmm12,xmm11
7FF8D4DA95DD: 4D 85 F6                       - test r14,r14
7FF8D4DA95E0: 0F 84 65 23 00 00              - je 7FF8D4DAB94B
7FF8D4DA95E6: 49 8B 86 38 01 00 00           - mov rax,[r14+00000138]
// ---------- INJECTING HERE ----------
7FF8D4DA95ED: C5 7A 10 40 60                 - vmovss xmm8,[rax+60]
// ---------- DONE INJECTING  ----------
7FF8D4DA95F2: 48 B8 E8 4B AC D4 51 01 00 00  - mov rax,00000151D4AC4BE8
7FF8D4DA95FC: 48 8B 00                       - mov rax,[rax]
7FF8D4DA95FF: 48 89 85 40 FA FF FF           - mov [rbp-000005C0],rax
7FF8D4DA9606: E8 FD 37 27 FE                 - call 7FF8D301CE08
7FF8D4DA960B: 4C 8B C0                       - mov r8,rax
7FF8D4DA960E: 48 8B 95 40 FA FF FF           - mov rdx,[rbp-000005C0]
7FF8D4DA9615: C4 C1 78 28 C0                 - vmovaps xmm0,xmm8
7FF8D4DA961A: E8 09 BF 4E FD                 - call 7FF8D2295528
7FF8D4DA961F: 8B 55 68                       - mov edx,[rbp+68]
7FF8D4DA9622: 89 95 F8 FE FF FF              - mov [rbp-00000108],edx
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>3517</ID>
              <Description>"Refresh always?"</Description>
              <DropDownListLink>is On??</DropDownListLink>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>4 Bytes</VariableType>
              <Address>is_economy_addr_refresh_always</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>3518</ID>
              <Description>"base addr"</Description>
              <ShowAsHex>1</ShowAsHex>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>808080</Color>
              <VariableType>8 Bytes</VariableType>
              <Address>i_economy_addr_v2</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>3519</ID>
              <Description>"_LastYear 0"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>8 Bytes</VariableType>
              <Address>i_economy_addr_v2</Address>
              <Offsets>
                <Offset>58</Offset>
              </Offsets>
            </CheatEntry>
            <CheatEntry>
              <ID>3520</ID>
              <Description>"_Money 0"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>Float</VariableType>
              <Address>i_economy_addr_v2</Address>
              <Offsets>
                <Offset>60</Offset>
              </Offsets>
            </CheatEntry>
            <CheatEntry>
              <ID>3521</ID>
              <Description>"_PrivateMoney 0"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>Float</VariableType>
              <Address>i_economy_addr_v2</Address>
              <Offsets>
                <Offset>64</Offset>
              </Offsets>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>3522</ID>
          <Description>"Ships min energy / fuel / hull / Speed / faster survey / damage"</Description>
          <Options moHideChildren="1" moDeactivateChildrenAsWell="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-12
  Author : bbfox @ https://opencheattables.com/

  Revised:
  4/27: 1.0.3.7
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_SHIP_DATA, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECT_SHIP_DATA, "DistantWorlds.Types.Ship::RechargeReactors"+140, "DistantWorlds.Types.Ship::RechargeReactors"+240,C5 FA 11 80 A8 01 00 00 * 83 C4 40)
registersymbol(INJECT_SHIP_DATA)
 ]]

local scriptStrB = [[
aobscan(INJECT_SHIP_DATA,C5 FA 11 80 A8 01 00 00 * 83 C4 40) // should be unique
registersymbol(INJECT_SHIP_DATA)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end

{$asm}

//aobscan(INJECT_SHIP_DATA,C5 FA 11 80 A8 01 00 00 * 83 C4 40) // should be unique
//aobscanregion(INJECT_SHIP_DATA, "DistantWorlds.Types.Ship::RechargeReactors"+128, "DistantWorlds.Types.Ship::RechargeReactors"+428,C5 FA 11 80 A8 01 00 00 * 83 C4 40)
//registersymbol(INJECT_SHIP_DATA)

alloc(newmem,$1000,INJECT_SHIP_DATA)

label(code)
label(return)
label(i_ship_is_on)
label(i_ship_data_addr)
label(i_ship_min_fuel)
label(i_ship_min_energy)
label(i_ship_min_shield)
label(i_ship_speed_factor)
label(i_ship_command_countdown_min)
label(vf_intercept_value)
label(is_enemy_ship_zero_shield)
label(is_hyperdrive_fast_charge)

newmem:
  cmp dword ptr [i_ship_is_on], 1
  jne code

  //DistantWorlds.Types.Ship
  push rbx
  //mov bx, [EMPIRE_ID]
  mov bx, 1
  cmp [rax+00000218], bx
  pop rbx
  jne check_enemy1

  push rbx
  lea rbx, [rax]
  mov [i_ship_data_addr], rbx
  pop rbx

check1: //HullDamageLevel
  vmovss xmm15, [rax+000001B0]
  vcomiss xmm15, [i_zero_d]
  je check2
  vmovss xmm15, [i_zero_d]
  movss [rsi+000001B0], xmm15

check2: //Fuel
  movss xmm15, xmm0
  vcomiss xmm15, [i_ship_min_fuel]
  jae check3
  vmovss xmm15, [i_ship_min_fuel]
  movss [rax+000001A8], xmm15
  movss xmm0, xmm15

check3:  //energy
  vmovss xmm15, [rax+000001A4]
  vcomiss xmm15, [i_ship_min_energy]
  jae check4
  vmovss xmm15, [i_ship_min_energy]
  movss [rax+000001A4], xmm15

check4:  //speed modifier
  vmovss xmm15, [rax+000001F8]
  vcomiss xmm15, [i_ship_speed_factor]
  jae check5
  vmovss xmm15, [i_ship_speed_factor]
  movss [rax+000001F8], xmm15
  movss [rax+000001FC], xmm15

check5:  // shields
  vmovss xmm15, [rax+000001AC]
  vcomiss xmm15, [i_ship_min_shield]
  jae check6

  vmovss xmm15, [i_ship_min_shield]
  vmovss [rax+000001AC], xmm15


check6: // command countdown
  vmovss xmm15, [rax+00000200]
  vmovss xmm14, [i_ship_command_countdown_min]
  vmovss xmm13, [i_ship_command_countdown_min_bias]
  addss xmm14, xmm13
  vcomiss xmm15, xmm14
  jb check7
  vmovss xmm15, [i_ship_command_countdown_min]
  movss [rax+00000200], xmm15

check7: // weapon range&amp; damage
  jmp code

check_enemy1: // shields
  cmp dword ptr [is_enemy_ship_zero_shield], 1
  jne code

  vmovss xmm15, [rax+000001AC]
  vcomiss xmm15, [i_one_d]
  jle check_enemy2
  vmovss xmm15, [i_one_d]
  movss [rax+000001AC], xmm15


check_enemy2:
  mov word ptr [is_enemy_ok], 1

  push rcx
  push rbx

  //Base -&gt; Threats
  mov rcx, [rax+100]
  cmp rcx, 0
  je enemy_endp0

  //Threats -&gt; ThreatsSystem
  mov rcx, [rcx+08]
  cmp rcx, 0
  je enemy_endp0

  mov ebx, [rcx+18] //_size
  cmp ebx, 0
  je enemy_endp0

  //Threats -&gt; ThreatsSystem -&gt; _items
  mov rcx, [rcx+08]
  cmp rcx, 0
  je enemy_endp0

  //Threats -&gt; ThreatsSystem -&gt; _items -&gt; Array[0]
  mov rcx, [rcx+10]
  cmp rcx, 0
  je enemy_endp0

  //mov bx, [EMPIRE_ID]
  mov bx, 1
  cmp [rcx+218], bx
  jne enemy_endp0

  jmp enemy_endp1

enemy_endp0: // target is not player
  mov word ptr [is_enemy_ok], 0

enemy_endp1:
  pop rbx
  pop rcx
  cmp word ptr [is_enemy_ok], 0
  je enemy_endp2

{$try}
  //First target is player, modify speed modifier &amp; shield
  vmovss xmm15, [rax+000001F8]
  vcomiss xmm15, [i_enemy_ship_speed_factor]
  jle enemy_endp1_1
  vmovss xmm15, [i_enemy_ship_speed_factor]
  movss [rax+000001F8], xmm15
{$except}

enemy_endp1_1:

enemy_endp2:


code:
  vmovss [rax+000001A8],xmm0
  jmp return

align 10 cc
  i_ship_is_on:
  dd 1
  i_ship_data_addr:
  dq 0
  i_zero_d:
  dd 0
  i_one_d:
  dd (float)1
  i_500_d:
  dd (float)500
  i_ship_min_fuel:
  dd (float)500
  i_90_d:
  dd (float)90
  i_ship_min_energy:
  dd (float)90
  i_ship_min_shield:
  dd (float)2000
  i_ship_speed_factor:
  dd (float)4.5
  i_ship_command_countdown_min:
  dd (float)40
  i_ship_command_countdown_min_bias:
  dd (float)0.5
  is_modify_weapon_range:
  dd 1
  is_modify_weapon_damage:
  dd 0
  i_weapon_min_range:
  dd (float)2500
  i_weapon_min_damage:
  dd (float)16
  i_intercept_div:
  dd (float)2
  vf_intercept_value:
  dd 0
  is_enemy_ship_zero_shield: // if check enemy
  dd 1
  i_enemy_ship_speed_factor:
  dd (float)0.5
  is_enemy_ok:
  dw 0
  vf_hyperdrive_countdown:
  dd (float)15
  vf_hyperdrive_countdown_min:
  dd (float)5
  vf_hyperdrive_speed_threshold:
  dd (float)400
  is_hyperdrive_fast_charge:
  dd 0

INJECT_SHIP_DATA:
  jmp newmem
  nop 3
return:
registersymbol(is_hyperdrive_fast_charge)
registersymbol(is_enemy_ship_zero_shield)
registersymbol(i_ship_is_on)
registersymbol(i_ship_min_fuel)
registersymbol(i_ship_min_energy)
registersymbol(i_ship_min_shield)
registersymbol(i_ship_speed_factor)
registersymbol(i_ship_command_countdown_min)
{$lua}
getLuaEngine().Close()
{$asm}
[DISABLE]

INJECT_SHIP_DATA:
  db C5 FA 11 80 A8 01 00 00

unregistersymbol(*)
unregistersymbol(INJECT_SHIP_DATA)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.Ship::RechargeReactors+16E

DistantWorlds.Types.Ship::RechargeReactors+137: C5 FA 10 40 54           - vmovss xmm0,[rax+54]
DistantWorlds.Types.Ship::RechargeReactors+13C: 48 8B 45 10              - mov rax,[rbp+10]
DistantWorlds.Types.Ship::RechargeReactors+140: C5 FA 10 88 A4 01 00 00  - vmovss xmm1,[rax+000001A4]
DistantWorlds.Types.Ship::RechargeReactors+148: E8 E3 EE F8 FD           - call 7FFCF165B720
DistantWorlds.Types.Ship::RechargeReactors+14D: 48 8B 45 10              - mov rax,[rbp+10]
DistantWorlds.Types.Ship::RechargeReactors+151: C5 FA 11 80 A4 01 00 00  - vmovss [rax+000001A4],xmm0
DistantWorlds.Types.Ship::RechargeReactors+159: 48 8B 45 10              - mov rax,[rbp+10]
DistantWorlds.Types.Ship::RechargeReactors+15D: C5 FA 10 80 A8 01 00 00  - vmovss xmm0,[rax+000001A8]
DistantWorlds.Types.Ship::RechargeReactors+165: C5 FA 5C 45 E8           - vsubss xmm0,xmm0,[rbp-18]
DistantWorlds.Types.Ship::RechargeReactors+16A: 48 8B 45 10              - mov rax,[rbp+10]
// ---------- INJECTING HERE ----------
DistantWorlds.Types.Ship::RechargeReactors+16E: C5 FA 11 80 A8 01 00 00  - vmovss [rax+000001A8],xmm0
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.Ship::RechargeReactors+176: 48 83 C4 40              - add rsp,40
DistantWorlds.Types.Ship::RechargeReactors+17A: 5D                       - pop rbp
DistantWorlds.Types.Ship::RechargeReactors+17B: C3                       - ret
7FFCF36CC86C: CC                       - int 3
7FFCF36CC86D: CC                       - int 3
7FFCF36CC86E: CC                       - int 3
7FFCF36CC86F: CC                       - int 3
7FFCF36CC870: CC                       - int 3
7FFCF36CC871: CC                       - int 3
7FFCF36CC872: CC                       - int 3
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>3523</ID>
              <Description>"is on? (default = NO)"</Description>
              <DropDownListLink>is On??</DropDownListLink>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>808000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>i_ship_is_on</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>3529</ID>
              <Description>"Stations (i.e. mining): energy / shield (enable above script first)"</Description>
              <Options moHideChildren="1"/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-12
  Author : bbfox @ https://opencheattables.com/
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_SHIP_CONSUME_ENERGY, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECT_SHIP_CONSUME_ENERGY, "DistantWorlds.Types.Ship::ConsumeStaticEnergy"+60, "DistantWorlds.Types.Ship::ConsumeStaticEnergy"+95,FC * 8B 45 10 C5 FA 11 80 A4 01 00 00) // should be unique
registersymbol(INJECT_SHIP_CONSUME_ENERGY)
 ]]

local scriptStrB = [[
aobscan(INJECT_SHIP_CONSUME_ENERGY,FC * 8B 45 10 C5 FA 11 80 A4 01 00 00) // should be unique
registersymbol(INJECT_SHIP_CONSUME_ENERGY)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end

{$asm}

//aobscan(INJECT_SHIP_CONSUME_ENERGY,C4 E1 7A 11 8E A4 01 00 00 48 83) // should be unique
//aobscanregion(INJECT_SHIP_CONSUME_ENERGY, "DistantWorlds.Types.Ship::ConsumeStaticEnergy"+60, "DistantWorlds.Types.Ship::ConsumeStaticEnergy"+95,FC * 8B 45 10 C5 FA 11 80 A4 01 00 00) // should be unique
//registersymbol(INJECT_SHIP_CONSUME_ENERGY)

alloc(newmem,$1000,INJECT_SHIP_CONSUME_ENERGY)

label(code)
label(return)
label(i_ship_max_energy)
label(is_ship_data_on)

newmem:
  cmp dword ptr [is_ship_data_on], 1
  jne code

  push rbx

  //mov ax, [EMPIRE_ID]
  mov bx, 1
  cmp word ptr [rax+00000218], bx
  pop rbx
  jne code

  push rcx

  lea rcx, [rax]
  mov [i_ship_data_addr], rcx

next1: //HullDamageLevel
  vmovss xmm15, [rax+000001B0]
  vucomiss xmm15, [i_zero_f]
  je next2
  vmovss xmm15, [i_zero_f]
  movss [rax+000001B0], xmm15

next2:
  vmovss xmm14, [i_float_2000] //shield
  vmovss xmm15, [rax+000001AC]
  vucomiss xmm15, xmm14
  jae next3

  //push rbx
  //mov rbx, [rsi+00000138]
  vmovss xmm15, [i_ship_min_shield]
  vmovss [rax+000001AC], xmm14
  //vmovss [rbx+00000028], xmm14
  //pop rbx


next3:  //energy
  vmovss xmm15, [rax+000001A4]
  vcomiss xmm15, [i_float_90]
  jae next4
  vmovss xmm15, [i_float_90]
  movss [rax+000001A4], xmm15
  movss xmm1, xmm15

next4:
  pop rcx

code:
  vmovss [rax+000001A4],xmm0
  jmp return

align 10 cc
  i_ship_data_addr:
  dq 0
  i_ship_max_energy_base:
  dq 0
  i_ship_max_energy:
  dd (float)0
  i_ship_max_shield:
  dd (float)0
  i_ship_max_fuel:
  dd (float)0
  i_ship_max_hull:
  dd (float)0
  i_zero_f:
  dd 0
  i_float_90:
  dd (float)90
  i_float_2000:
  dd (float)2050
  is_ship_data_on:
  dd 1

INJECT_SHIP_CONSUME_ENERGY+05:
  jmp newmem
  nop 3
return:

registersymbol(is_ship_data_on)
registersymbol(i_ship_max_energy)
//registersymbol(INJECT_SHIP_CONSUME_ENERGY)


{$lua}
getLuaEngine().Close()
{$asm}
[DISABLE]

INJECT_SHIP_CONSUME_ENERGY+05:
  db C5 FA 11 80 A4 01 00 00

unregistersymbol(*)
unregistersymbol(INJECT_SHIP_CONSUME_ENERGY)
dealloc(*)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.Ship::ConsumeStaticEnergy+75

DistantWorlds.Types.Ship::ConsumeStaticEnergy+40: C5 FA 10 48 60           - vmovss xmm1,[rax+60]
DistantWorlds.Types.Ship::ConsumeStaticEnergy+45: C5 F2 59 4D 18           - vmulss xmm1,xmm1,[rbp+18]
DistantWorlds.Types.Ship::ConsumeStaticEnergy+4A: 48 8B 45 10              - mov rax,[rbp+10]
DistantWorlds.Types.Ship::ConsumeStaticEnergy+4E: C5 FA 10 80 A4 01 00 00  - vmovss xmm0,[rax+000001A4]
DistantWorlds.Types.Ship::ConsumeStaticEnergy+56: E8 D5 F3 F8 FD           - call 7FFCF165B720
DistantWorlds.Types.Ship::ConsumeStaticEnergy+5B: C5 FA 11 45 FC           - vmovss [rbp-04],xmm0
DistantWorlds.Types.Ship::ConsumeStaticEnergy+60: 48 8B 45 10              - mov rax,[rbp+10]
DistantWorlds.Types.Ship::ConsumeStaticEnergy+64: C5 FA 10 80 A4 01 00 00  - vmovss xmm0,[rax+000001A4]
DistantWorlds.Types.Ship::ConsumeStaticEnergy+6C: C5 FA 5C 45 FC           - vsubss xmm0,xmm0,[rbp-04]
DistantWorlds.Types.Ship::ConsumeStaticEnergy+71: 48 8B 45 10              - mov rax,[rbp+10]
// ---------- INJECTING HERE ----------
DistantWorlds.Types.Ship::ConsumeStaticEnergy+75: C5 FA 11 80 A4 01 00 00  - vmovss [rax+000001A4],xmm0
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.Ship::ConsumeStaticEnergy+7D: 48 83 C4 30              - add rsp,30
DistantWorlds.Types.Ship::ConsumeStaticEnergy+81: 5D                       - pop rbp
DistantWorlds.Types.Ship::ConsumeStaticEnergy+82: C3                       - ret
7FFCF36CC373: CC                       - int 3
7FFCF36CC374: CC                       - int 3
7FFCF36CC375: CC                       - int 3
7FFCF36CC376: CC                       - int 3
7FFCF36CC377: CC                       - int 3
7FFCF36CC378: CC                       - int 3
7FFCF36CC379: CC                       - int 3
}
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>3530</ID>
                  <Description>"is On??"</Description>
                  <DropDownList DisplayValueAsItem="1">0:No
1:Yes
</DropDownList>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>is_ship_data_on</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>3524</ID>
              <Description>"Min. fuel"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>Float</VariableType>
              <Address>i_ship_min_fuel</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>3525</ID>
              <Description>"Min. energy"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>Float</VariableType>
              <Address>i_ship_min_energy</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>3526</ID>
              <Description>"Min. shield"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>Float</VariableType>
              <Address>i_ship_min_shield</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>3527</ID>
              <Description>"Speed factor"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>Float</VariableType>
              <Address>i_ship_speed_factor</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>3528</ID>
              <Description>"Max command countdown (sec)"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>Float</VariableType>
              <Address>i_ship_command_countdown_min</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>4273</ID>
              <Description>"Low enemy speed / shield to player?"</Description>
              <DropDownListLink>is On??</DropDownListLink>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>4 Bytes</VariableType>
              <Address>is_enemy_ship_zero_shield</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>4303</ID>
          <Description>"Min. resources (default: 10K)"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-10-07
  Author : bbfox @ https://opencheattables.com/
}

[ENABLE]

aobscan(INJECT_INF_RESOURCE,29 C5 FA 10 41 08) // should be unique
alloc(newmem,$1000,INJECT_INF_RESOURCE)

label(code)
label(return)
label(vf_base_amount)
label(is_base_amount_on)

newmem:
  cmp dword ptr [is_base_amount_on], 1
  jne code

  push rax
  mov ax, 1
  cmp word ptr [rcx+0E], ax  //Empire ID = 1
  pop rax
  jne code

  // offset 0008: Amount
  // offset 000C Resource ID
  // 8: Steel

  // offset 000E: Empire ID
  vmovss xmm14, [vf_base_amount]
  vmovss xmm15, [rcx+08]
  vcomiss xmm15, xmm14
  ja code
  vmovss [rcx+08], xmm14

code:
  vmovss xmm0,[rcx+08]
  jmp return
align 10 cc
  is_base_amount_on:
  dd 1
  vf_base_amount:
  dd (float)10000


INJECT_INF_RESOURCE+01:
  jmp newmem
return:

registersymbol(INJECT_INF_RESOURCE)
registersymbol(is_base_amount_on)
registersymbol(vf_base_amount)

[DISABLE]

INJECT_INF_RESOURCE+01:
  db C5 FA 10 41 08

unregistersymbol(INJECT_INF_RESOURCE)
unregistersymbol(*)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: 7FF81010FADE

7FF81010FABD: 8B 4D D8           - mov ecx,[rbp-28]
7FF81010FAC0: 3B CA              - cmp ecx,edx
7FF81010FAC2: 0F 83 2E 01 00 00  - jae 7FF81010FBF6
7FF81010FAC8: 48 8B 46 08        - mov rax,[rsi+08]
7FF81010FACC: 3B 48 08           - cmp ecx,[rax+08]
7FF81010FACF: 73 21              - jae 7FF81010FAF2
7FF81010FAD1: 48 63 C9           - movsxd  rcx,ecx
7FF81010FAD4: 48 8B 4C C8 10     - mov rcx,[rax+rcx*8+10]
7FF81010FAD9: 48 85 C9           - test rcx,rcx
7FF81010FADC: 74 29              - je 7FF81010FB07
// ---------- INJECTING HERE ----------
7FF81010FADE: C5 FA 10 41 08     - vmovss xmm0,[rcx+08]
// ---------- DONE INJECTING  ----------
7FF81010FAE3: C5 FA 58 47 08     - vaddss xmm0,xmm0,[rdi+08]
7FF81010FAE8: C5 FA 11 41 08     - vmovss [rcx+08],xmm0
7FF81010FAED: E9 1C 01 00 00     - jmp 7FF81010FC0E
7FF81010FAF2: E8 29 F8 9F 5D     - call coreclr.dll+27F320
7FF81010FAF7: 48 8B CE           - mov rcx,rsi
7FF81010FAFA: 48 8B D7           - mov rdx,rdi
7FF81010FAFD: E8 16 1C D6 FD     - call 7FF80DE71718
7FF81010FB02: E9 51 FF FF FF     - jmp 7FF81010FA58
7FF81010FB07: 44 8B 45 D8        - mov r8d,[rbp-28]
7FF81010FB0B: 44 3B C2           - cmp r8d,edx
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>4304</ID>
              <Description>"Turn on?"</Description>
              <DropDownListLink>is On??</DropDownListLink>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>4 Bytes</VariableType>
              <Address>is_base_amount_on</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>4305</ID>
              <Description>"Base amount"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>Float</VariableType>
              <Address>vf_base_amount</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>3534</ID>
          <Description>"Min. cargo stockpile"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-13
  Author : bbfox @ https://opencheattables.com/

}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_CARGOLIST_ADD, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECT_CARGOLIST_ADD,"DistantWorlds.Types.CargoList::Add"+E1, "DistantWorlds.Types.CargoList::Add"+1BB,C5 FA 11 41 08 E9 04) // should be unique
registersymbol(INJECT_CARGOLIST_ADD)
 ]]

local scriptStrB = [[
aobscan(INJECT_CARGOLIST_ADD,C5 FA 11 41 08 E9 04) // should be unique
registersymbol(INJECT_CARGOLIST_ADD)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end

{$asm}
//aobscanregion(INJECT_CARGOLIST_ADD,"DistantWorlds.Types.CargoList::Add"+E1, "DistantWorlds.Types.CargoList::Add"+1BB,C5 FA 11 41 08 E9 04) // should be unique
//registersymbol(INJECT_CARGOLIST_ADD)
alloc(newmem,$1000,INJECT_CARGOLIST_ADD)

label(code)
label(return)
label(i_cargolist_add_addr)
label(i_cargolist_add_min)
label(i_cargolist_add_on)

newmem:
  cmp dword ptr [i_cargolist_add_on], 1
  jne code

  push rax
  mov ax, [EMPIRE_ID]
  cmp [rcx+0E], ax
  pop rax
  jne code

  // player side
  push  rax
  lea rax, [rcx]
  mov [i_cargolist_add_addr], rax
  pop rax

  vmovss xmm14, [i_cargolist_add_min]
  vcomiss xmm0, xmm14
  jae code
  movss xmm0, xmm14
  jmp code

  //enemy side
  cmp dword ptr [is_min_enemy_cargo], 0
  je code


code:
  vmovss [rcx+08],xmm0
  jmp return

align 10 cc
  i_cargolist_add_addr:
  dq 0
  i_cargolist_add_min:
  dd (float)5250
  is_min_enemy_cargo:
  dd 0
  i_cargolist_add_on:
  dd 1


INJECT_CARGOLIST_ADD:
  jmp newmem
  nop
return:
registersymbol(i_cargolist_add_on)
registersymbol(i_cargolist_add_addr)
registersymbol(i_cargolist_add_min)
//registersymbol(INJECT_CARGOLIST_ADD)
{$lua}
getLuaEngine().Close()
{$asm}
[DISABLE]

INJECT_CARGOLIST_ADD:
  db  C5 FA 11 41 08 E9


unregistersymbol(*)
unregistersymbol(INJECT_CARGOLIST_ADD)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.CargoList::Add+128

DistantWorlds.Types.CargoList::Add+FE: 8B 55 E8           - mov edx,[rbp-18]
DistantWorlds.Types.CargoList::Add+101: FF 15 11 B9 75 FE  - call qword ptr [7FF80DF31748]
DistantWorlds.Types.CargoList::Add+107: 48 89 45 D8        - mov [rbp-28],rax
DistantWorlds.Types.CargoList::Add+10B: 48 83 7D D8 00     - cmp qword ptr [rbp-28],00
DistantWorlds.Types.CargoList::Add+110: 74 20              - je DistantWorlds.Types.CargoList::Add+132
DistantWorlds.Types.CargoList::Add+112: 48 8B 4D D8        - mov rcx,[rbp-28]
DistantWorlds.Types.CargoList::Add+116: C5 FA 10 41 08     - vmovss xmm0,[rcx+08]
DistantWorlds.Types.CargoList::Add+11B: 48 8B 4D 18        - mov rcx,[rbp+18]
DistantWorlds.Types.CargoList::Add+11F: C5 FA 58 41 08     - vaddss xmm0,xmm0,[rcx+08]
DistantWorlds.Types.CargoList::Add+124: 48 8B 4D D8        - mov rcx,[rbp-28]
// ---------- INJECTING HERE ----------
DistantWorlds.Types.CargoList::Add+128: C5 FA 11 41 08     - vmovss [rcx+08],xmm0
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.CargoList::Add+12D: E9 04 01 00 00     - jmp DistantWorlds.Types.CargoList::Add+236
DistantWorlds.Types.CargoList::Add+132: 48 8B 4D 10        - mov rcx,[rbp+10]
DistantWorlds.Types.CargoList::Add+136: 8B 55 E8           - mov edx,[rbp-18]
DistantWorlds.Types.CargoList::Add+139: 4C 8B 45 18        - mov r8,[rbp+18]
DistantWorlds.Types.CargoList::Add+13D: FF 15 DD B8 75 FE  - call qword ptr [7FF80DF31750]
DistantWorlds.Types.CargoList::Add+143: E9 F8 00 00 00     - jmp DistantWorlds.Types.CargoList::Add+240
DistantWorlds.Types.CargoList::Add+148: 48 8B 4D 10        - mov rcx,[rbp+10]
DistantWorlds.Types.CargoList::Add+14C: 48 8B 55 18        - mov rdx,[rbp+18]
DistantWorlds.Types.CargoList::Add+150: FF 15 E2 B8 75 FE  - call qword ptr [7FF80DF31768]
DistantWorlds.Types.CargoList::Add+156: 48 8B 4D 10        - mov rcx,[rbp+10]
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>3535</ID>
              <Description>"is on?"</Description>
              <DropDownListLink>is On??</DropDownListLink>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>4 Bytes</VariableType>
              <Address>i_cargolist_add_on</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>3536</ID>
              <Description>"Min. cargo (don't set too high)"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>Float</VariableType>
              <Address>i_cargolist_add_min</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>3537</ID>
          <Description>"Faster ship construction part 1"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-13
  Author : bbfox @ https://opencheattables.com/

  Revised:
  4/27: 1.0.3.7
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_FASTER_BUILD, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECT_FASTER_BUILD,"DistantWorlds.Types.ConstructionSystem::BuildShip"+13E, "DistantWorlds.Types.ConstructionSystem::BuildShip"+53E, FF 48 8B 45 10 C5 FA 10 88 B4 01 00 00) // should be unique
registersymbol(INJECT_FASTER_BUILD)
 ]]

local scriptStrB = [[
aobscan(INJECT_FASTER_BUILD,FF 48 8B 45 10 C5 FA 10 88 B4 01 00 00) // should be unique
registersymbol(INJECT_FASTER_BUILD)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end

{$asm}

//aobscanregion(INJECT_FASTER_BUILD,"DistantWorlds.Types.ConstructionSystem::BuildShip"+13E, "DistantWorlds.Types.ConstructionSystem::BuildShip"+53E, FF 48 8B 45 10 C5 FA 10 88 B4 01 00 00) // should be unique
//registersymbol(INJECT_FASTER_BUILD)
alloc(newmem,$1000,INJECT_FASTER_BUILD)

label(code)
label(return)
label(is_faster_build_on)
label(is_enemy_build_pending)
label(i_last_object_addr)
label(i_last_object_addr2)

newmem:
  cmp dword ptr [is_faster_build_on], 1
  jne check_enemy

  push rbx
  mov bx,1
  cmp [rax+00000218], bx
  pop rbx
  jne code

  push rbx
  //lea rax, [rsi]
  mov [i_last_object_addr], rax
  //lea rax, [rsp]
  //mov [i_last_object_addr2], rsp
  pop rbx

  vmovss xmm15, [rax+000001B4]
  vucomiss xmm15, xmm1
  jae code
  vmovss [rax+000001B4], xmm1  //hull
  jmp code

check_enemy:
  cmp dword ptr [is_enemy_build_pending], 1
  jne code

  push rbx  // recheck, make sure it's not player
  mov bx, 1
  cmp [rax+00000218], bx
  pop rbx
  je code

  vmovss xmm1, [enemy_hull_construct_value]
  vmovss [rax+000001B4], xmm1

code:
  //vucomiss xmm1,[rsi+000001B4]
  //jmp return
  vmovss xmm1,[rax+000001B4]
  jmp return



align 10 cc
  i_last_object_addr:
  dq 0
  i_last_object_addr2:
  dq 0
  is_faster_build_on:
  dd 1
  is_enemy_build_pending:
  dd 0
  enemy_hull_construct_value:
  dd (float)1

INJECT_FASTER_BUILD+05:
  jmp newmem
  nop 3
return:
registersymbol(i_last_object_addr2)
registersymbol(i_last_object_addr)
registersymbol(is_enemy_build_pending)
registersymbol(is_faster_build_on)
//registersymbol(INJECT_FASTER_BUILD)
{$lua}
getLuaEngine().Close()
{$asm}
[DISABLE]

INJECT_FASTER_BUILD+05:
  db C5 FA 10 88 B4 01 00 00

unregistersymbol(*)
unregistersymbol(INJECT_FASTER_BUILD)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.ConstructionSystem::BuildShip+1AC

DistantWorlds.Types.ConstructionSystem::BuildShip+17D: C5 FA 10 45 D0           - vmovss xmm0,[rbp-30]
DistantWorlds.Types.ConstructionSystem::BuildShip+182: E8 79 D1 84 FE           - call 7FF80E03BAA0
DistantWorlds.Types.ConstructionSystem::BuildShip+187: C5 FA 11 45 D0           - vmovss [rbp-30],xmm0
DistantWorlds.Types.ConstructionSystem::BuildShip+18C: 48 8B 4D 10              - mov rcx,[rbp+10]
DistantWorlds.Types.ConstructionSystem::BuildShip+190: C5 FA 10 45 D0           - vmovss xmm0,[rbp-30]
DistantWorlds.Types.ConstructionSystem::BuildShip+195: C5 FA 11 81 B0 01 00 00  - vmovss [rcx+000001B0],xmm0
DistantWorlds.Types.ConstructionSystem::BuildShip+19D: 48 8B 4D 10              - mov rcx,[rbp+10]
DistantWorlds.Types.ConstructionSystem::BuildShip+1A1: 39 09                    - cmp [rcx],ecx
DistantWorlds.Types.ConstructionSystem::BuildShip+1A3: E8 C0 FE 44 FF           - call 7FF80EC3E808
DistantWorlds.Types.ConstructionSystem::BuildShip+1A8: 48 8B 45 10              - mov rax,[rbp+10]
// ---------- INJECTING HERE ----------
DistantWorlds.Types.ConstructionSystem::BuildShip+1AC: C5 FA 10 88 B4 01 00 00  - vmovss xmm1,[rax+000001B4]
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.ConstructionSystem::BuildShip+1B4: 48 8B 45 10              - mov rax,[rbp+10]
DistantWorlds.Types.ConstructionSystem::BuildShip+1B8: 48 8B 80 40 01 00 00     - mov rax,[rax+00000140]
DistantWorlds.Types.ConstructionSystem::BuildShip+1BF: C5 FA 10 40 0C           - vmovss xmm0,[rax+0C]
DistantWorlds.Types.ConstructionSystem::BuildShip+1C4: C5 F8 2E C1              - vucomiss xmm0,xmm1
DistantWorlds.Types.ConstructionSystem::BuildShip+1C8: 0F 86 D1 00 00 00        - jbe DistantWorlds.Types.ConstructionSystem::BuildShip+29F
DistantWorlds.Types.ConstructionSystem::BuildShip+1CE: C5 FA 10 4D 40           - vmovss xmm1,[rbp+40]
DistantWorlds.Types.ConstructionSystem::BuildShip+1D3: C5 F2 59 4D EC           - vmulss xmm1,xmm1,[rbp-14]
DistantWorlds.Types.ConstructionSystem::BuildShip+1D8: C5 FA 11 4D C8           - vmovss [rbp-38],xmm1
DistantWorlds.Types.ConstructionSystem::BuildShip+1DD: 48 8B 45 10              - mov rax,[rbp+10]
DistantWorlds.Types.ConstructionSystem::BuildShip+1E1: C5 FA 10 88 B4 01 00 00  - vmovss xmm1,[rax+000001B4]
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>3538</ID>
              <Description>"is on?"</Description>
              <DropDownListLink>is On??</DropDownListLink>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>4 Bytes</VariableType>
              <Address>is_faster_build_on</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>3539</ID>
              <Description>"try to pause enemy building?"</Description>
              <DropDownListLink>is On??</DropDownListLink>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>4 Bytes</VariableType>
              <Address>is_enemy_build_pending</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>3540</ID>
              <Description>"Last object addr."</Description>
              <ShowAsHex>1</ShowAsHex>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>808080</Color>
              <VariableType>8 Bytes</VariableType>
              <Address>i_last_object_addr</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>3981</ID>
          <Description>"Fastest planet facility build"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-18
  Author : bbfox @ https://opencheattables.com/
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_PLANET_FACILITY, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECT_PLANET_FACILITY,"DistantWorlds.Types.Colony::ProcessFacilities"+2FE, "DistantWorlds.Types.Colony::ProcessFacilities"+3FE, C4 C1 7A 11 75 48) // should be unique
registersymbol(INJECT_PLANET_FACILITY)
 ]]

local scriptStrB = [[
aobscan(INJECT_PLANET_FACILITY,C4 C1 7A 11 75 48) // should be unique
registersymbol(INJECT_PLANET_FACILITY)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end

{$asm}
//aobscan(INJECT_PLANET_FACILITY,C4 C1 7A 11 75 48) // should be unique
//aobscanregion(INJECT_PLANET_FACILITY,"DistantWorlds.Types.Colony::ProcessFacilities"+2FE, "DistantWorlds.Types.Colony::ProcessFacilities"+3FE, C4 C1 7A 11 75 48) // should be unique
//registersymbol(INJECT_PLANET_FACILITY)
alloc(newmem,$1000,INJECT_PLANET_FACILITY)

label(code)
label(return)

newmem:
  push rax
  mov ax, [EMPIRE_ID]
  cmp [r13+54], ax
  pop rax
  jne code


  vmovss xmm15, [vf_float_99_99]
  vucomiss xmm6, xmm15
  jae code
  movss xmm6, xmm15

code:
  vmovss [r13+48],xmm6
  jmp return

align 10 cc
  vf_float_99_99:
  dd (float)99.99


INJECT_PLANET_FACILITY:
  jmp newmem
  nop
return:
//registersymbol(INJECT_PLANET_FACILITY)
{$lua}
getLuaEngine().Close()
{$asm}
[DISABLE]

INJECT_PLANET_FACILITY:
  db C4 C1 7A 11 75 48

unregistersymbol(INJECT_PLANET_FACILITY)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.Colony::ProcessFacilities+2FF

DistantWorlds.Types.Colony::ProcessFacilities+2D8: 48 89 74 24 20                 - mov [rsp+20],rsi
DistantWorlds.Types.Colony::ProcessFacilities+2DD: 4C 89 6C 24 28                 - mov [rsp+28],r13
DistantWorlds.Types.Colony::ProcessFacilities+2E2: 33 C9                          - xor ecx,ecx
DistantWorlds.Types.Colony::ProcessFacilities+2E4: 48 89 4C 24 30                 - mov [rsp+30],rcx
DistantWorlds.Types.Colony::ProcessFacilities+2E9: 48 89 4C 24 38                 - mov [rsp+38],rcx
DistantWorlds.Types.Colony::ProcessFacilities+2EE: 49 8B CE                       - mov rcx,r14
DistantWorlds.Types.Colony::ProcessFacilities+2F1: 48 8B D7                       - mov rdx,rdi
DistantWorlds.Types.Colony::ProcessFacilities+2F4: 4C 8B 45 88                    - mov r8,[rbp-78]
DistantWorlds.Types.Colony::ProcessFacilities+2F8: E8 EB 7E 3B FF                 - call 7FFC8477D618
DistantWorlds.Types.Colony::ProcessFacilities+2FD: EB 0B                          - jmp DistantWorlds.Types.Colony::ProcessFacilities+30A
// ---------- INJECTING HERE ----------
DistantWorlds.Types.Colony::ProcessFacilities+2FF: C4 C1 7A 11 75 48              - vmovss [r13+48],xmm6
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.Colony::ProcessFacilities+305: C4 E1 48 57 F6                 - vxorps xmm6,xmm6,xmm6
DistantWorlds.Types.Colony::ProcessFacilities+30A: C4 E1 78 57 C0                 - vxorps xmm0,xmm0,xmm0
DistantWorlds.Types.Colony::ProcessFacilities+30F: C4 E1 78 2E C6                 - vucomiss xmm0,xmm6
DistantWorlds.Types.Colony::ProcessFacilities+314: 73 30                          - jae DistantWorlds.Types.Colony::ProcessFacilities+346
DistantWorlds.Types.Colony::ProcessFacilities+316: 49 0F BF 55 52                 - movsx rdx,word ptr [r13+52]
DistantWorlds.Types.Colony::ProcessFacilities+31B: 48 B9 28 C0 DF 47 23 02 00 00  - mov rcx,0000022347DFC028
DistantWorlds.Types.Colony::ProcessFacilities+325: 48 8B 09                       - mov rcx,[rcx]
DistantWorlds.Types.Colony::ProcessFacilities+328: 39 09                          - cmp [rcx],ecx
DistantWorlds.Types.Colony::ProcessFacilities+32A: E8 21 1B 6D FF                 - call 7FFC84A97280
DistantWorlds.Types.Colony::ProcessFacilities+32F: C4 E1 4A 59 70 74              - vmulss xmm6,xmm6,[rax+74]
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>4294</ID>
          <Description>"Fast hyperdrive charge (not countdown)"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-22
  Author : bbfox @ https://opencheattables.com/
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_HYPERDRIVE_TUNING, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECT_HYPERDRIVE_TUNING,"DistantWorlds.Types.Ship::RechargeHyperdrive"+14, "DistantWorlds.Types.Ship::RechargeHyperdrive"+50, C5 FA 10 88 94 01 00 00 * * * * * * * * 76 30) // should be unique
registersymbol(INJECT_HYPERDRIVE_TUNING)
 ]]

local scriptStrB = [[
aobscan(INJECT_HYPERDRIVE_TUNING,C5 FA 10 88 94 01 00 00 * * * * * * * * 76 30) // should be unique
registersymbol(INJECT_HYPERDRIVE_TUNING)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end
{$asm}

//aobscanregion(INJECT_HYPERDRIVE_TUNING,"DistantWorlds.Types.Ship::RechargeHyperdrive"+4, "DistantWorlds.Types.Ship::RechargeHyperdrive"+40, C5 FA 10 88 94 01 00 00 * * * * * * * * 76 30) // should be unique
//registersymbol(INJECT_HYPERDRIVE_TUNING)

alloc(newmem,$1000,INJECT_HYPERDRIVE_TUNING)

label(code)
label(return)

newmem:
  push rbx
  mov bx, 1
  cmp word ptr [rax+00000218],bx
  pop rbx
  jne code

  vmovss xmm1, [rax+00000194]
  vmovss xmm14, [vf_2]
  vucomiss xmm1, xmm14
  jbe code
  vmovss xmm1, [vf_1]
  vmovss [rax+00000194], xmm1

code:
  vmovss xmm1,[rax+00000194]
  jmp return

align 10 cc
  is_hyperdrive_on:
  dd 1
  vf_1:
  dd (float)1
  vf_2:
  dd (float)2

INJECT_HYPERDRIVE_TUNING:
  jmp newmem
  nop 4
return:
//registersymbol(INJECT_HYPERDRIVE_TUNING)
{$lua}
getLuaEngine().Close()
{$asm}
[DISABLE]

INJECT_HYPERDRIVE_TUNING:
  db C5 FA 10 88 94 01 00 00

unregistersymbol(INJECT_HYPERDRIVE_TUNING)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.Ship::RechargeHyperdrive+1F

7FF8100A864E: 00 00                    - add [rax],al
DistantWorlds.Types.Ship::RechargeHyperdrive: 55                       - push rbp
DistantWorlds.Types.Ship::RechargeHyperdrive+1: 48 83 EC 30              - sub rsp,30
DistantWorlds.Types.Ship::RechargeHyperdrive+5: C5 F8 77                 - vzeroupper
DistantWorlds.Types.Ship::RechargeHyperdrive+8: 48 8D 6C 24 30           - lea rbp,[rsp+30]
DistantWorlds.Types.Ship::RechargeHyperdrive+D: 33 C0                    - xor eax,eax
DistantWorlds.Types.Ship::RechargeHyperdrive+F: 89 45 FC                 - mov [rbp-04],eax
DistantWorlds.Types.Ship::RechargeHyperdrive+12: 48 89 4D 10              - mov [rbp+10],rcx
DistantWorlds.Types.Ship::RechargeHyperdrive+16: C5 FA 11 4D 18           - vmovss [rbp+18],xmm1
DistantWorlds.Types.Ship::RechargeHyperdrive+1B: 48 8B 45 10              - mov rax,[rbp+10]
// ---------- INJECTING HERE ----------
DistantWorlds.Types.Ship::RechargeHyperdrive+1F: C5 FA 10 88 94 01 00 00  - vmovss xmm1,[rax+00000194]
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.Ship::RechargeHyperdrive+27: C5 F8 57 C0              - vxorps xmm0,xmm0,xmm0
DistantWorlds.Types.Ship::RechargeHyperdrive+2B: C5 F8 2E C8              - vucomiss xmm1,xmm0
DistantWorlds.Types.Ship::RechargeHyperdrive+2F: 76 30                    - jna DistantWorlds.Types.Ship::RechargeHyperdrive+61
DistantWorlds.Types.Ship::RechargeHyperdrive+31: 48 8B 45 10              - mov rax,[rbp+10]
DistantWorlds.Types.Ship::RechargeHyperdrive+35: C5 FA 10 88 94 01 00 00  - vmovss xmm1,[rax+00000194]
DistantWorlds.Types.Ship::RechargeHyperdrive+3D: C5 F2 5C 4D 18           - vsubss xmm1,xmm1,[rbp+18]
DistantWorlds.Types.Ship::RechargeHyperdrive+42: C5 F8 57 C0              - vxorps xmm0,xmm0,xmm0
DistantWorlds.Types.Ship::RechargeHyperdrive+46: E8 05 34 F9 FD           - call 7FF80E03BAA0
DistantWorlds.Types.Ship::RechargeHyperdrive+4B: C5 FA 11 45 FC           - vmovss [rbp-04],xmm0
DistantWorlds.Types.Ship::RechargeHyperdrive+50: 48 8B 45 10              - mov rax,[rbp+10]
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>4269</ID>
          <Description>"_wip"</Description>
          <Options moHideChildren="1"/>
          <GroupHeader>1</GroupHeader>
          <Address>0</Address>
          <CheatEntries>
            <CheatEntry>
              <ID>4270</ID>
              <Description>"Min. resource V2 (wip)"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-13
  Author : bbfox @ https://opencheattables.org/
}

[ENABLE]

aobscan(INJECT_CARGO_NUM,C4 E1 7A 10 40 08 C4 E1 7A 11 44 24 24) // should be unique
//aobscanregion(INJECT_CARGO_NUM,"DistantWorlds.Types.Empire::CountResourceAvailableStockLevel"+1A1, "DistantWorlds.Types.Empire::CountResourceAvailableStockLevel"+200", C4 E1 7A 10 40 08 C4 E1 7A 11 44 24 24) // should be unique
alloc(newmem,$1000,INJECT_CARGO_NUM)

label(code)
label(return)
label(is_base_amount_on_v2)
label(vf_base_amount_v2)

newmem:
  // offset 0008: Amount
  // offset 000C Resource ID
  // 8: Steel

  // offset 000E: Empire ID
  cmp dword ptr [is_base_amount_on_v2], 1
  jne code

  push rbx
  mov bx, [EMPIRE_ID]
  cmp word ptr [rax+0E], ax  //Empire ID = 1
  pop rbx
  jne code

  vmovss xmm14, [vf_base_amount_v2]
  vmovss xmm15, [rax+08]
  vcomiss xmm15, xmm14
  jae code
  vmovss [rax+08], xmm14



code:
  vmovss xmm0,[rax+08]
  jmp return

align 10 cc
  is_base_amount_on_v2:
  dd 1
  vf_base_amount_v2:
  dd (float)8000

INJECT_CARGO_NUM:
  jmp newmem
  nop
return:
registersymbol(is_base_amount_on_v2)
registersymbol(vf_base_amount_v2)
registersymbol(INJECT_CARGO_NUM)

[DISABLE]

INJECT_CARGO_NUM:
  db C4 E1 7A 10 40 08

unregistersymbol(*)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1AD

DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+184: 48 8B 4C CA 10           - mov rcx,[rdx+rcx*8+10]
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+189: 48 85 C9                 - test rcx,rcx
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+18C: 74 4F                    - je DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1DD
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+18E: 48 0F BF 96 08 04 00 00  - movsx rdx,word ptr [rsi+00000408]
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+196: 48 8B 89 90 00 00 00     - mov rcx,[rcx+00000090]
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+19D: 4C 0F BF C7              - movsx r8,di
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1A1: 39 09                    - cmp [rcx],ecx
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1A3: E8 58 D1 FC FF           - call 7FFF4C1C6CB0
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1A8: 48 85 C0                 - test rax,rax
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1AB: 74 30                    - je DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1DD
// ---------- INJECTING HERE ----------
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1AD: C4 E1 7A 10 40 08        - vmovss xmm0,[rax+08]
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1B3: C4 E1 7A 11 44 24 24     - vmovss [rsp+24],xmm0
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1BA: 8B 54 24 24              - mov edx,[rsp+24]
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1BE: 81 E2 FF FF FF 7F        - and edx,7FFFFFFF
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1C4: 81 FA 00 00 80 7F        - cmp edx,7F800000
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1CA: 7E 0B                    - jle DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1D7
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1CC: C4 E1 78 57 C0           - vxorps xmm0,xmm0,xmm0
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1D1: C4 E1 7A 11 40 08        - vmovss [rax+08],xmm0
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1D7: C4 E1 4A 58 70 08        - vaddss xmm6,xmm6,[rax+08]
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1DD: FF C3                    - inc ebx
DistantWorlds.Types.Empire::CountResourceAvailableStockLevel+1DF: 48 8B 8E 98 00 00 00     - mov rcx,[rsi+00000098]
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>4271</ID>
              <Description>"Min. station consumed enegry level (mining, research...)"</Description>
              <Options moHideChildren="1"/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-19
  Author :
}

[ENABLE]

aobscan(INJECT_SHIP_COMSUME_ENERGY,C5 FA 11 8E 9C 01 00 00) // should be unique
alloc(newmem,$1000,INJECT_SHIP_COMSUME_ENERGY)

label(code)
label(return)
label(is_no_consume_energy_on)

newmem:
  cmp dword ptr [is_no_consume_energy_on], 1
  jne code

  push rax
  mov ax, [EMPIRE_ID]
  cmp word ptr [rsi+00000210], ax
  pop rax
  jne code

  vucomiss xmm1, [vf_float_90]
  jae code
  movss xmm1, [vf_float_90]

code:
  vmovss [rsi+0000019C],xmm1
  jmp return

align 10 cc
  i_ship_consume_energy_addr:
  dq 0
  is_no_consume_energy_on:
  dd 1
  vf_float_90:
  dd (float)90


INJECT_SHIP_COMSUME_ENERGY:
  jmp newmem
  nop 3
return:
registersymbol(is_no_consume_energy_on)
registersymbol(INJECT_SHIP_COMSUME_ENERGY)

[DISABLE]

INJECT_SHIP_COMSUME_ENERGY:
  db C5 FA 11 8E 9C 01 00 00
unregistersymbol(*)
unregistersymbol(INJECT_SHIP_COMSUME_ENERGY)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: 7FFBFD9F00A8

7FFBFD9F006C: C4 41 78 2E FE              - vucomiss xmm15,xmm14
7FFBFD9F0071: 0F 83 08 00 00 00           - jae 7FFBFD9F007F
7FFBFD9F0077: C5 7A 11 B6 A4 01 00 00     - vmovss [rsi+000001A4],xmm14
7FFBFD9F007F: C5 7A 10 BE 9C 01 00 00     - vmovss xmm15,[rsi+0000019C]
7FFBFD9F0087: C5 78 2F 3D 55 00 00 00     - vcomiss xmm15,[7FFBFD9F00E4]
7FFBFD9F008F: 0F 83 11 00 00 00           - jae 7FFBFD9F00A6
7FFBFD9F0095: C5 7A 10 3D 47 00 00 00     - vmovss xmm15,[7FFBFD9F00E4]
7FFBFD9F009D: F3 44 0F 11 BE 9C 01 00 00  - movss [rsi+0000019C],xmm15
7FFBFD9F00A6: 5B                          - pop rbx
7FFBFD9F00A7: 58                          - pop rax
// ---------- INJECTING HERE ----------
7FFBFD9F00A8: C5 FA 11 8E 9C 01 00 00     - vmovss [rsi+0000019C],xmm1
// ---------- DONE INJECTING  ----------
7FFBFD9F00B0: E9 39 0E AF FF              - jmp DistantWorlds.Types.Ship::ConsumeStaticEnergy+4E
7FFBFD9F00B5: CC                          - int 3 
7FFBFD9F00B6: CC                          - int 3 
7FFBFD9F00B7: CC                          - int 3 
7FFBFD9F00B8: CC                          - int 3 
7FFBFD9F00B9: CC                          - int 3 
7FFBFD9F00BA: CC                          - int 3 
7FFBFD9F00BB: CC                          - int 3 
7FFBFD9F00BC: CC                          - int 3 
7FFBFD9F00BD: CC                          - int 3 
}
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>4272</ID>
                  <Description>"is on?"</Description>
                  <DropDownListLink>is On??</DropDownListLink>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>is_no_consume_energy_on</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>4275</ID>
              <Description>"Zero hull damage"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-20
  Author :
}

[ENABLE]
{$asm}
aobscan(INJECT_HULL_DAMAGE,A8 FA FF FF C4 E1 78 28 C6 C4 E1 7A 58 86 A8 01 00 00 C4 E1 7A 11 86 A8 01 00 00) // should be unique
//aobscanregion(INJECT_HULL_DAMAGE,"DistantWorlds.Types.Galaxy::InflictDamage+"+1DBC, "DistantWorlds.Types.Galaxy::InflictDamage+"+1EBC, A8 FA FF FF C4 E1 78 28 C6 C4 E1 7A 58 86 A8 01 00 00 C4 E1 7A 11 86 A8 01 00 00) // should be unique
//registersymbol(INJECT_HULL_DAMAGE)
alloc(newmem,$1000,INJECT_HULL_DAMAGE)

label(code)
label(return)

newmem:
  push rax
  mov ax, [EMPIRE_ID]
  cmp [rsi+00000210], ax
  pop rax
  jne code
  vmovss xmm0, [vf_zero]


code:
  vmovss [rsi+000001A8],xmm0
  jmp return
align 10 cc
  vf_zero:
  dd 0

INJECT_HULL_DAMAGE+12:
  jmp newmem
  nop 4
return:
registersymbol(INJECT_HULL_DAMAGE)

[DISABLE]

INJECT_HULL_DAMAGE+12:
  db C4 E1 7A 11 86 A8 01 00 00

unregistersymbol(INJECT_HULL_DAMAGE)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.Galaxy::InflictDamage+1DD3

DistantWorlds.Types.Galaxy::InflictDamage+1D95: 81 E1 FF FF FF 7F           - and ecx,7FFFFFFF
DistantWorlds.Types.Galaxy::InflictDamage+1D9B: 81 F9 00 00 80 7F           - cmp ecx,7F800000
DistantWorlds.Types.Galaxy::InflictDamage+1DA1: 7E 10                       - jle DistantWorlds.Types.Galaxy::InflictDamage+1DB3
DistantWorlds.Types.Galaxy::InflictDamage+1DA3: C4 E1 78 57 C0              - vxorps xmm0,xmm0,xmm0
DistantWorlds.Types.Galaxy::InflictDamage+1DA8: C4 E1 7A 11 85 A8 FA FF FF  - vmovss [rbp-00000558],xmm0
DistantWorlds.Types.Galaxy::InflictDamage+1DB1: EB 09                       - jmp DistantWorlds.Types.Galaxy::InflictDamage+1DBC
DistantWorlds.Types.Galaxy::InflictDamage+1DB3: C4 E1 7A 11 85 A8 FA FF FF  - vmovss [rbp-00000558],xmm0
DistantWorlds.Types.Galaxy::InflictDamage+1DBC: C4 E1 7A 10 B5 A8 FA FF FF  - vmovss xmm6,[rbp-00000558]
DistantWorlds.Types.Galaxy::InflictDamage+1DC5: C4 E1 78 28 C6              - vmovaps xmm0,xmm6
DistantWorlds.Types.Galaxy::InflictDamage+1DCA: C4 E1 7A 58 86 A8 01 00 00  - vaddss xmm0,xmm0,[rsi+000001A8]
// ---------- INJECTING HERE ----------
DistantWorlds.Types.Galaxy::InflictDamage+1DD3: C4 E1 7A 11 86 A8 01 00 00  - vmovss [rsi+000001A8],xmm0
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.Galaxy::InflictDamage+1DDC: C4 E1 78 2E 86 AC 01 00 00  - vucomiss xmm0,[rsi+000001AC]
DistantWorlds.Types.Galaxy::InflictDamage+1DE5: 76 07                       - jna DistantWorlds.Types.Galaxy::InflictDamage+1DEE
DistantWorlds.Types.Galaxy::InflictDamage+1DE7: B9 01 00 00 00              - mov ecx,00000001
DistantWorlds.Types.Galaxy::InflictDamage+1DEC: EB 02                       - jmp DistantWorlds.Types.Galaxy::InflictDamage+1DF0
DistantWorlds.Types.Galaxy::InflictDamage+1DEE: 33 C9                       - xor ecx,ecx
DistantWorlds.Types.Galaxy::InflictDamage+1DF0: 88 8E 2B 02 00 00           - mov [rsi+0000022B],cl
DistantWorlds.Types.Galaxy::InflictDamage+1DF6: 48 83 BD D8 F7 FF FF 00     - cmp qword ptr [rbp-00000828],00
DistantWorlds.Types.Galaxy::InflictDamage+1DFE: 0F 95 C1                    - setne cl
DistantWorlds.Types.Galaxy::InflictDamage+1E01: 0F B6 C9                    - movzx ecx,cl
DistantWorlds.Types.Galaxy::InflictDamage+1E04: 44 8B 95 E0 00 00 00        - mov r10d,[rbp+000000E0]
}
</AssemblerScript>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>4306</ID>
          <Description>"_Not_Working"</Description>
          <Options moHideChildren="1"/>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>3531</ID>
              <Description>"(not working) Min. resources (default: 10K)"</Description>
              <Options moHideChildren="1"/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-12
  Author : bbfox @ https://opencheattables.org/
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_INF_RESOURCE, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
//aobscan(INJECT_INF_RESOURCE,C4 E1 7A 10 51 08 48 8B CB E8 ?? ?? ?? ?? FF C5) // should be unique
aobscanregion(INJECT_INF_RESOURCE, "DistantWorlds.Types.CargoList::GetAsResourceQuantities"+3B,"DistantWorlds.Types.CargoList::GetAsResourceQuantities"+A6, C4 E1 7A 10 51 08 48 8B CB E8 ?? ?? ?? ?? FF C5)
registersymbol(INJECT_INF_RESOURCE)
 ]]

local scriptStrB = [[
aobscan(INJECT_INF_RESOURCE,C4 E1 7A 10 51 08 48 8B CB E8 ?? ?? ?? ?? FF C5) // should be unique
//aobscanregion(INJECT_INF_RESOURCE, "DistantWorlds.Types.CargoList::GetAsResourceQuantities"+3B,"DistantWorlds.Types.CargoList::GetAsResourceQuantities"+A6, C4 E1 7A 10 51 08 48 8B CB E8 ?? ?? ?? ?? FF C5)
registersymbol(INJECT_INF_RESOURCE)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end

{$asm}
//aobscan(INJECT_INF_RESOURCE,C4 E1 7A 10 51 08 48 8B CB E8 ?? ?? ?? ?? FF C5) // should be unique
//aobscanregion(INJECT_INF_RESOURCE, "DistantWorlds.Types.CargoList::GetAsResourceQuantities"+3B,"DistantWorlds.Types.CargoList::GetAsResourceQuantities"+A6, C4 E1 7A 10 51 08 48 8B CB E8 ?? ?? ?? ?? FF C5)
//registersymbol(INJECT_INF_RESOURCE)

alloc(newmem,$1000,INJECT_INF_RESOURCE)

label(code)
label(return)
label(vf_base_amount)
label(is_base_amount_on)

newmem:
  cmp dword ptr [is_base_amount_on], 1
  jne code

  push rax
  mov ax, [EMPIRE_ID]
  cmp word ptr [rcx+0E], ax  //Empire ID = 1
  pop rax
  jne code

  // offset 0008: Amount
  // offset 000C Resource ID
  // 8: Steel

  // offset 000E: Empire ID
  vmovss xmm14, [vf_base_amount]
  vmovss xmm15, [rcx+08]
  vcomiss xmm15, xmm14
  ja code
  vmovss [rcx+08], xmm14

code:
  vmovss xmm2,[rcx+08]
  jmp return

align 10 cc
  is_base_amount_on:
  dd 1
  vf_base_amount:
  dd (float)10000

INJECT_INF_RESOURCE:
  jmp newmem
  nop
return:

registersymbol(is_base_amount_on)
registersymbol(vf_base_amount)
//registersymbol(INJECT_INF_RESOURCE)

[DISABLE]

INJECT_INF_RESOURCE:
  db C4 E1 7A 10 51 08

unregistersymbol(*)
unregistersymbol(INJECT_INF_RESOURCE)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.CargoList::GetAsResourceQuantities+80

DistantWorlds.Types.CargoList::GetAsResourceQuantities+5F: 48 8B 4C CA 10     - mov rcx,[rdx+rcx*8+10]
DistantWorlds.Types.CargoList::GetAsResourceQuantities+64: 48 85 C9           - test rcx,rcx
DistantWorlds.Types.CargoList::GetAsResourceQuantities+67: 74 25              - je DistantWorlds.Types.CargoList::GetAsResourceQuantities+8E
DistantWorlds.Types.CargoList::GetAsResourceQuantities+69: 48 0F BF D7        - movsx rdx,di
DistantWorlds.Types.CargoList::GetAsResourceQuantities+6D: 83 FA FF           - cmp edx,-01
DistantWorlds.Types.CargoList::GetAsResourceQuantities+70: 74 09              - je DistantWorlds.Types.CargoList::GetAsResourceQuantities+7B
DistantWorlds.Types.CargoList::GetAsResourceQuantities+72: 48 0F BF 41 0E     - movsx rax,word ptr [rcx+0E]
DistantWorlds.Types.CargoList::GetAsResourceQuantities+77: 3B C2              - cmp eax,edx
DistantWorlds.Types.CargoList::GetAsResourceQuantities+79: 75 13              - jne DistantWorlds.Types.CargoList::GetAsResourceQuantities+8E
DistantWorlds.Types.CargoList::GetAsResourceQuantities+7B: 48 0F BF 51 0C     - movsx rdx,word ptr [rcx+0C]
// ---------- INJECTING HERE ----------
DistantWorlds.Types.CargoList::GetAsResourceQuantities+80: C4 E1 7A 10 51 08  - vmovss xmm2,[rcx+08]
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.CargoList::GetAsResourceQuantities+86: 48 8B CB           - mov rcx,rbx
DistantWorlds.Types.CargoList::GetAsResourceQuantities+89: E8 12 A2 66 FF     - call DistantWorlds.Types.ResourceQuantityList::AddAmount
DistantWorlds.Types.CargoList::GetAsResourceQuantities+8E: FF C5              - inc ebp
DistantWorlds.Types.CargoList::GetAsResourceQuantities+90: 3B 6E 18           - cmp ebp,[rsi+18]
DistantWorlds.Types.CargoList::GetAsResourceQuantities+93: 7C AA              - jl DistantWorlds.Types.CargoList::GetAsResourceQuantities+3F
DistantWorlds.Types.CargoList::GetAsResourceQuantities+95: 48 8B C3           - mov rax,rbx
DistantWorlds.Types.CargoList::GetAsResourceQuantities+98: 48 83 C4 28        - add rsp,28
DistantWorlds.Types.CargoList::GetAsResourceQuantities+9C: 5B                 - pop rbx
DistantWorlds.Types.CargoList::GetAsResourceQuantities+9D: 5D                 - pop rbp
DistantWorlds.Types.CargoList::GetAsResourceQuantities+9E: 5E                 - pop rsi
}
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>3532</ID>
                  <Description>"Turn on?"</Description>
                  <DropDownListLink>is On??</DropDownListLink>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>is_base_amount_on</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3533</ID>
                  <Description>"Base amount"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>vf_base_amount</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>3541</ID>
              <Description>"(Not Working) Faster ship construction part 2"</Description>
              <Options moHideChildren="1"/>
              <Color>0080FF</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-19
  Author :

  Revised:
  4/27: 1.0.3.7
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_FASTER_SHIP_BUILD_P2, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECT_FASTER_SHIP_BUILD_P2,"DistantWorlds.Types.ConstructionSystem::BuildShip"+99B, "DistantWorlds.Types.ConstructionSystem::BuildShip"+C9B, C4 E1 42 58 FB 4C 8B 5E 40 4C 89 5C) // should be unique
registersymbol(INJECT_FASTER_SHIP_BUILD_P2)
 ]]

local scriptStrB = [[
aobscan(INJECT_FASTER_SHIP_BUILD_P2,C4 E1 42 58 FB 4C 8B 5E 40 4C 89 5C) // should be unique
registersymbol(INJECT_FASTER_SHIP_BUILD_P2)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end

{$asm}

//aobscan(INJECT_FASTER_SHIP_BUILD_P2,C4 E1 42 58 FB 4C 8B 5E 40 4C 89 5C) // should be unique
//aobscanregion(INJECT_FASTER_SHIP_BUILD_P2,"DistantWorlds.Types.ConstructionSystem::BuildShip"+99B, "DistantWorlds.Types.ConstructionSystem::BuildShip"+C9B, C4 E1 42 58 FB 4C 8B 5E 40 4C 89 5C) // should be unique
//registersymbol(INJECT_FASTER_SHIP_BUILD_P2)
alloc(newmem,$1000,INJECT_FASTER_SHIP_BUILD_P2)

label(code)
label(return)
label(i_faster_ship_build_p2_addr)


newmem:
  push rax
  mov ax, [EMPIRE_ID]
  cmp [rsi+00000218], ax
  pop rax
  jne code

  push rax
  lea rax, [rsi]
  mov [i_faster_ship_build_p2_addr], rax
  pop rax

  vmovss xmm15, [vf_factor]
  mulss xmm3, xmm15



code:
  vaddss xmm7,xmm7,xmm3
  jmp return

align 10 cc
  i_faster_ship_build_p2_addr:
  dq 0
  vf_factor:
  dd (float)4


INJECT_FASTER_SHIP_BUILD_P2:
  jmp newmem
return:


registersymbol(i_faster_ship_build_p2_addr)
//registersymbol(INJECT_FASTER_SHIP_BUILD_P2)

[DISABLE]

INJECT_FASTER_SHIP_BUILD_P2:
  db C4 E1 42 58 FB
unregistersymbol(*)
unregistersymbol(INJECT_FASTER_SHIP_BUILD_P2)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.ConstructionSystem::BuildShip+9A0

DistantWorlds.Types.ConstructionSystem::BuildShip+96B: 48 89 AC 24 D8 01 00 00     - mov [rsp+000001D8],rbp
DistantWorlds.Types.ConstructionSystem::BuildShip+973: EB 0D                       - jmp DistantWorlds.Types.ConstructionSystem::BuildShip+982
DistantWorlds.Types.ConstructionSystem::BuildShip+975: B9 01 00 00 00              - mov ecx,00000001
DistantWorlds.Types.ConstructionSystem::BuildShip+97A: 48 89 AC 24 D8 01 00 00     - mov [rsp+000001D8],rbp
DistantWorlds.Types.ConstructionSystem::BuildShip+982: C4 E1 60 57 DB              - vxorps xmm3,xmm3,xmm3
DistantWorlds.Types.ConstructionSystem::BuildShip+987: C4 E1 62 2A D9              - vcvtsi2ss xmm3,ebx,ecx
DistantWorlds.Types.ConstructionSystem::BuildShip+98C: C4 61 78 28 DB              - vmovaps xmm11,xmm3
DistantWorlds.Types.ConstructionSystem::BuildShip+991: C4 41 22 5E D9              - vdivss xmm11,xmm11,xmm9
DistantWorlds.Types.ConstructionSystem::BuildShip+996: C4 C1 78 28 D8              - vmovaps xmm3,xmm8
DistantWorlds.Types.ConstructionSystem::BuildShip+99B: C4 C1 62 5E DB              - vdivss xmm3,xmm3,xmm11
// ---------- INJECTING HERE ----------
DistantWorlds.Types.ConstructionSystem::BuildShip+9A0: C4 E1 42 58 FB              - vaddss xmm7,xmm7,xmm3
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.ConstructionSystem::BuildShip+9A5: 4C 8B 5E 40                 - mov r11,[rsi+40]
DistantWorlds.Types.ConstructionSystem::BuildShip+9A9: 4C 89 5C 24 78              - mov [rsp+78],r11
DistantWorlds.Types.ConstructionSystem::BuildShip+9AE: 48 8D 8C 24 08 01 00 00     - lea rcx,[rsp+00000108]
DistantWorlds.Types.ConstructionSystem::BuildShip+9B6: 48 8D 94 24 F8 00 00 00     - lea rdx,[rsp+000000F8]
DistantWorlds.Types.ConstructionSystem::BuildShip+9BE: 4C 8D A4 24 90 00 00 00     - lea r12,[rsp+00000090]
DistantWorlds.Types.ConstructionSystem::BuildShip+9C6: 48 0F BF AC 24 08 01 00 00  - movsx rbp,word ptr [rsp+00000108]
DistantWorlds.Types.ConstructionSystem::BuildShip+9CF: 66 41 89 2C 24              - mov [r12],bp
DistantWorlds.Types.ConstructionSystem::BuildShip+9D4: 40 0F B6 AC 24 0A 01 00 00  - movzx ebp,byte ptr [rsp+0000010A]
DistantWorlds.Types.ConstructionSystem::BuildShip+9DD: 41 88 6C 24 02              - mov [r12+02],bpl
DistantWorlds.Types.ConstructionSystem::BuildShip+9E2: 48 0F BF AC 24 0C 01 00 00  - movsx rbp,word ptr [rsp+0000010C]
}
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>3542</ID>
                  <Description>"Last object addr."</Description>
                  <ShowAsHex>1</ShowAsHex>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>808080</Color>
                  <VariableType>8 Bytes</VariableType>
                  <Address>i_faster_ship_build_p2_addr</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>4298</ID>
              <Description>"(Not working) Fast Hyperjump countdown"</Description>
              <Color>4080FF</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-24
  Author : bbfox @ https://opencheattables.org/

  Revised:
  4/27: v1.0.3.7
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_FAST_HYPERJUMP_COUNTDOWN, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECT_FAST_HYPERJUMP_COUNTDOWN,"DistantWorlds.Types.Ship::CommandHyperjump"+6C7, "DistantWorlds.Types.Ship::CommandHyperjump"+7C7, C4 E1 7A 11 86 98 01 00 00 C4 E1 78) // should be unique
registersymbol(INJECT_FAST_HYPERJUMP_COUNTDOWN)
 ]]

local scriptStrB = [[
aobscan(INJECT_FAST_HYPERJUMP_COUNTDOWN,C4 E1 7A 11 86 98 01 00 00 C4 E1 78) // should be unique
registersymbol(INJECT_FAST_HYPERJUMP_COUNTDOWN)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end

{$asm}
//aobscan(INJECT_FAST_HYPERJUMP_COUNTDOWN,C4 E1 7A 11 8E 98 01 00 00) // should be unique
//aobscanregion(INJECT_FAST_HYPERJUMP_COUNTDOWN,"DistantWorlds.Types.Ship::CommandHyperjump"+6C7, "DistantWorlds.Types.Ship::CommandHyperjump"+7C7, C4 E1 7A 11 8E 98 01 00 00) // should be unique
//registersymbol(INJECT_FAST_HYPERJUMP_COUNTDOWN)
alloc(newmem,$1000,INJECT_FAST_HYPERJUMP_COUNTDOWN)

label(code)
label(return)

newmem:
  push rax
  mov ax, [EMPIRE_ID]
  cmp [rsi+218], ax
  pop rax
  jne code
  vmovss xmm0, [vf_1]

code:
  vmovss [rsi+00000198],xmm0
  jmp return
align 10 cc
  vf_1:
  dd (float)1

INJECT_FAST_HYPERJUMP_COUNTDOWN:
  jmp newmem
  nop 4
return:
//registersymbol(INJECT_FAST_HYPERJUMP_COUNTDOWN)

[DISABLE]

INJECT_FAST_HYPERJUMP_COUNTDOWN:
  db C4 E1 7A 11 86 98 01 00 00

unregistersymbol(INJECT_FAST_HYPERJUMP_COUNTDOWN)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.Ship::CommandHyperjump+6ED

DistantWorlds.Types.Ship::CommandHyperjump+6B9: E8 32 0B 76 FF              - call DistantWorlds.Types.Galaxy::get_Rnd
DistantWorlds.Types.Ship::CommandHyperjump+6BE: 48 8B C8                    - mov rcx,rax
DistantWorlds.Types.Ship::CommandHyperjump+6C1: 48 8B 00                    - mov rax,[rax]
DistantWorlds.Types.Ship::CommandHyperjump+6C4: 48 8B 40 48                 - mov rax,[rax+48]
DistantWorlds.Types.Ship::CommandHyperjump+6C8: FF 10                       - call qword ptr [rax]
DistantWorlds.Types.Ship::CommandHyperjump+6CA: C4 E1 73 5A C8              - vcvtsd2ss xmm1,xmm1,xmm0
DistantWorlds.Types.Ship::CommandHyperjump+6CF: 48 8B 8E 40 01 00 00        - mov rcx,[rsi+00000140]
DistantWorlds.Types.Ship::CommandHyperjump+6D6: C4 E1 72 59 89 88 00 00 00  - vmulss xmm1,xmm1,[rcx+00000088]
DistantWorlds.Types.Ship::CommandHyperjump+6DF: C4 E1 72 59 0D 48 10 00 00  - vmulss xmm1,xmm1,[7FFC853545D0]
DistantWorlds.Types.Ship::CommandHyperjump+6E8: C4 C1 72 58 C8              - vaddss xmm1,xmm1,xmm8
// ---------- INJECTING HERE ----------
DistantWorlds.Types.Ship::CommandHyperjump+6ED: C4 E1 7A 11 8E 98 01 00 00  - vmovss [rsi+00000198],xmm1
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.Ship::CommandHyperjump+6F6: C4 E1 70 57 C9              - vxorps xmm1,xmm1,xmm1
DistantWorlds.Types.Ship::CommandHyperjump+6FB: C4 E1 7A 11 8E 94 01 00 00  - vmovss [rsi+00000194],xmm1
DistantWorlds.Types.Ship::CommandHyperjump+704: 4C 8B 07                    - mov r8,[rdi]
DistantWorlds.Types.Ship::CommandHyperjump+707: 48 8B 8E 40 01 00 00        - mov rcx,[rsi+00000140]
DistantWorlds.Types.Ship::CommandHyperjump+70E: C4 E1 7A 10 8E F8 01 00 00  - vmovss xmm1,[rsi+000001F8]
DistantWorlds.Types.Ship::CommandHyperjump+717: C4 E1 72 59 8E FC 01 00 00  - vmulss xmm1,xmm1,[rsi+000001FC]
DistantWorlds.Types.Ship::CommandHyperjump+720: 4C 89 74 24 20              - mov [rsp+20],r14
DistantWorlds.Types.Ship::CommandHyperjump+725: 4C 89 6C 24 28              - mov [rsp+28],r13
DistantWorlds.Types.Ship::CommandHyperjump+72A: C4 E1 72 59 49 6C           - vmulss xmm1,xmm1,[rcx+6C]
DistantWorlds.Types.Ship::CommandHyperjump+730: C4 E1 7A 11 4C 24 30        - vmovss [rsp+30],xmm1
}
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>4277</ID>
              <Description>"(Not Working)  Min. orb quality; colony races assimilation &amp; 1st troop strength"</Description>
              <Options moHideChildren="1"/>
              <Color>4080FF</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-21
  Author : bbfox @ https://opencheattables.org/
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_AUTO_ORB, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECT_AUTO_ORB,"DistantWorlds.Types.Empire::CalculateBonuses"+879, "DistantWorlds.Types.Empire::CalculateBonuses"+A79, 49 8B CE 39 09 E8 ?? ?? ?? ?? 4C 8B F8 4D 85 FF) // should be unique
registersymbol(INJECT_AUTO_ORB)
 ]]

local scriptStrB = [[
aobscan(INJECT_AUTO_ORB,49 8B CE 39 09 E8 ?? ?? ?? ?? 4C 8B F8 4D 85 FF) // should be unique
registersymbol(INJECT_AUTO_ORB)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end

{$asm}
//aobscan(INJECT_AUTO_ORB,49 8B CE 39 09 E8 ?? ?? ?? ?? 4C 8B F8 4D 85 FF) // should be unique
//aobscanregion(INJECT_AUTO_ORB,"DistantWorlds.Types.Empire::CalculateBonuses"+879, "DistantWorlds.Types.Empire::CalculateBonuses"+A79, 49 8B CE 39 09 E8 ?? ?? ?? ?? 4C 8B F8 4D 85 FF) // should be unique
//registersymbol(INJECT_AUTO_ORB)
alloc(newmem,$1000,INJECT_AUTO_ORB)

label(code)
label(return)
label(is_min_quailty)
label(is_min_assimilation)
label(is_min_troop_setting)
label(i_readiness_min)
label(i_min_def)
label(i_min_atk)
label(i_min_population)
label(vf_quality_min)
label(vf_min_assimilation)

newmem:
  push rax
  push rcx
  push rbx
  push rdx
  push r15

  xor rdx, rdx
  xor ebx, ebx
  xor r15, r15

  mov rcx,r14

  lea rax, [rcx]
  mov [i_auto_orb_addr], rax

  cmp word ptr [rcx+0B0], 0 //_ColonyId
  je endp

  mov rbx, [rcx+080] //_Colony
  cmp rbx, 0
  je endp

  mov ax, [EMPIRE_ID]
  cmp [rbx+1D6], ax //EmpireID
  jne endp

  //_Quality
  cmp dword ptr [is_min_quailty], 1
  jne next1
  vmovss xmm14, [rcx+0A4]
  vucomiss xmm14, [vf_quality_min]
  jae next1
  vmovss xmm15, [vf_quality_step]
  vaddss xmm15, xmm15, xmm14
  vmovss [rcx+0A4], xmm15



next1:
  mov rcx, [rcx+080]  //_Colony
  cmp rcx, 0
  je endp

  mov rbx, [rcx+048] //_Colony-&gt;Population
  cmp rbx, 0
  je endp

  cmp dword ptr [rbx+018], 1 //race size
  jb next2
  mov r15d, dword ptr [rbx+018]
  mov [i_race_count], r15d
  mov rbx, [rbx+008] //_items
  cmp rbx, 0
  je endp

  mov rbx, [rbx+010] // race 1: _Colony-&gt;Population-&gt;_Items-&gt;Array[0]

  cmp rbx, 0
  je endp

  // Population -&gt; _Items
  mov r15, [rcx+048] //_Colony-&gt;Population
  mov r15, [r15+008] //_Colony-&gt;Population-&gt;_Items
{
  // Amount for 1t race
  mov rax, [i_min_population]
  cmp [rbx+008], rax
  jae next1_2
  mov [rbx+008], rax

next1_1:  //1t race Assimilation for all player colonies
  vmovss xmm15, [vf_min_assimilation]
  vmovss xmm14, [rbx+014]
  vucomiss xmm14, xmm15
  //jae next2
  jae next1_2
  vmovss [rbx+014], xmm15
}

next1_2:
  // all races Assimilation &amp; population
  push rcx
  push rax
  push rdx
  push r14
  xor rcx, rcx
  mov ecx, [i_race_count]

assi_loop:
  xor rdx, rdx
  xor rax, rax

  mov eax, 8
  mul ecx
  add eax, 8
  mov r14, [r15+eax] // raceN
  cmp r14, 0
  je assi_loop_end
  vmovss xmm15, [vf_min_assimilation]
  vmovss xmm14, [r14+014]
  vucomiss xmm14, xmm15
  jae check_pop
  vmovss [r14+014], xmm15

check_pop:
  // population
  mov rax, [i_min_population]
  cmp [r14+008], rax
  jae assi_loop_end
  mov [r14+008], rax

assi_loop_end:
  loop assi_loop
  pop r14
  pop rdx
  pop rax
  pop rcx


next2: // 1st troops
  cmp dword ptr [is_min_troop_setting], 1
  jne endp
  mov rbx, [rcx+050] //_Colony -&gt; _Troops
  cmp rbx, 0
  je endp

  cmp dword ptr [rbx+018], 1
  jl endp

  mov rbx, [rbx+008] //_items
  cmp rbx, 0
  je endp

  mov rbx, [rbx+010] //Array[0]
  cmp rbx, 0
  je endp
  mov ax, [EMPIRE_ID]
  cmp word ptr [rbx+04A], ax //EmpireID
  jne endp

  //troop health
  vmovss xmm15, [i_readiness_min]
  vmovss xmm14, [rbx+03C]
  vucomiss xmm14, xmm15
  jae next2_1
  vmovss [rbx+03C], xmm15

next2_1:
  vmovss xmm15, [i_min_def]
  vucomiss xmm15, [rbx+030]
  jb next3
  vmovss [rbx+030], xmm15

next3:
  vmovss xmm15, [i_min_atk]
  vmovss xmm14, [rbx+02C]
  vucomiss xmm15, xmm14
  jb endp
  vmovss [rbx+02C], xmm15

endp:
  pop r15
  pop rdx
  pop rbx
  pop rcx
  pop rax

code:
  mov rcx,r14
  cmp [rcx],ecx
  jmp return

align 10 cc
  i_auto_orb_addr:
  dq 0
  is_min_quailty:
  dd 1
  is_min_assimilation:
  dd 1
  is_min_troop_setting:
  dd 1
  vf_quality_min:
  dd (float)0.55
  vf_quality_step:
  dd (float)0.02
  i_race_count:
  dd 0
  vf_min_assimilation:
  dd (float)0.7
  vf_0_7:
  dd (float)0.7
  i_min_population:
  dq #120000000
  i_readiness_min:
  dd (float)0.90
  i_min_def:
  dd (float)300
  i_min_atk:
  dd (float)300

INJECT_AUTO_ORB:
  jmp newmem
return:

registersymbol(vf_quality_min)
registersymbol(vf_min_assimilation)
registersymbol(i_min_population)
registersymbol(is_min_quailty)
registersymbol(is_min_assimilation)
registersymbol(is_min_troop_setting)
registersymbol(i_readiness_min)
registersymbol(i_min_def)
registersymbol(i_min_atk)
//registersymbol(INJECT_AUTO_ORB)

[DISABLE]

INJECT_AUTO_ORB:
  db 49 8B CE 39 09

unregistersymbol(*)
unregistersymbol(INJECT_AUTO_ORB)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.Empire::CalculateBonuses+882

DistantWorlds.Types.Empire::CalculateBonuses+855: B9 0D 00 00 00        - mov ecx,0000000D
DistantWorlds.Types.Empire::CalculateBonuses+85A: BA 16 00 00 00        - mov edx,00000016
DistantWorlds.Types.Empire::CalculateBonuses+85F: E8 FC AD B9 5B        - call System.ThrowHelper::ThrowArgumentOutOfRangeException
DistantWorlds.Types.Empire::CalculateBonuses+864: 49 8B 4E 08           - mov rcx,[r14+08]
DistantWorlds.Types.Empire::CalculateBonuses+868: 3B 59 08              - cmp ebx,[rcx+08]
DistantWorlds.Types.Empire::CalculateBonuses+86B: 0F 83 CD 05 00 00     - jae DistantWorlds.Types.Empire::CalculateBonuses+E3E
DistantWorlds.Types.Empire::CalculateBonuses+871: 48 63 C3              - movsxd  rax,ebx
DistantWorlds.Types.Empire::CalculateBonuses+874: 4C 8B 74 C1 10        - mov r14,[rcx+rax*8+10]
DistantWorlds.Types.Empire::CalculateBonuses+879: 4D 85 F6              - test r14,r14
DistantWorlds.Types.Empire::CalculateBonuses+87C: 0F 84 86 03 00 00     - je DistantWorlds.Types.Empire::CalculateBonuses+C08
// ---------- INJECTING HERE ----------
DistantWorlds.Types.Empire::CalculateBonuses+882: 49 8B CE              - mov rcx,r14
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.Empire::CalculateBonuses+885: 39 09                 - cmp [rcx],ecx
DistantWorlds.Types.Empire::CalculateBonuses+887: E8 44 CB B3 FF        - call DistantWorlds.Types.Orb::get_Colony
DistantWorlds.Types.Empire::CalculateBonuses+88C: 4C 8B F8              - mov r15,rax
DistantWorlds.Types.Empire::CalculateBonuses+88F: 4D 85 FF              - test r15,r15
DistantWorlds.Types.Empire::CalculateBonuses+892: 0F 84 70 03 00 00     - je DistantWorlds.Types.Empire::CalculateBonuses+C08
DistantWorlds.Types.Empire::CalculateBonuses+898: 48 8B 4D 10           - mov rcx,[rbp+10]
DistantWorlds.Types.Empire::CalculateBonuses+89C: 48 8B 89 78 01 00 00  - mov rcx,[rcx+00000178]
DistantWorlds.Types.Empire::CalculateBonuses+8A3: 41 8B 56 24           - mov edx,[r14+24]
DistantWorlds.Types.Empire::CalculateBonuses+8A7: 48 8B 49 08           - mov rcx,[rcx+08]
DistantWorlds.Types.Empire::CalculateBonuses+8AB: 3B 51 08              - cmp edx,[rcx+08]
}
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>4284</ID>
                  <Description>"Min orb quality enabled?"</Description>
                  <DropDownListLink>is On??</DropDownListLink>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>is_min_quailty</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>4287</ID>
                  <Description>"Min. quailty (0-1.0)"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>vf_quality_min</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>4285</ID>
                  <Description>"Min. assimilation enabled?"</Description>
                  <DropDownListLink>is On??</DropDownListLink>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>is_min_assimilation</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>4288</ID>
                  <Description>"Min. assimilation value (0-1.0; 1=100%)"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>vf_min_assimilation</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>4289</ID>
                  <Description>"Min. population value"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>8 Bytes</VariableType>
                  <Address>i_min_population</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>4286</ID>
                  <Description>"Min. 1st troop strength enabled?"</Description>
                  <DropDownListLink>is On??</DropDownListLink>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>is_min_troop_setting</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>4290</ID>
                  <Description>"Min. health (0-1.0; 0.1 = 10%, 1 = 100%)"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>i_readiness_min</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>4292</ID>
                  <Description>"Min. attack"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>i_min_atk</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>4291</ID>
                  <Description>"Min. defense"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>i_min_def</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>3726</ID>
              <Description>"(Not Working)  Ship/Station Editor (select ship / station; slower response)"</Description>
              <Options moHideChildren="1"/>
              <Color>4080FF</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-15
  Author : bbfox @ https://opencheattables.org/

  Revised:
  4/27: v1.0.3.7
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_SET_ACTION_BUTTON, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECT_SET_ACTION_BUTTON,"DistantWorlds.Types.UserInterfaceHelper::SetActionButtons"+BF, "DistantWorlds.Types.UserInterfaceHelper::SetActionButtons"+1BF, 48 39 11 74 0B 48 8B CA 48 8B D3 E8 ?? ?? ?? ?? 48 89 5D B8) // should be unique
registersymbol(INJECT_SET_ACTION_BUTTON)
 ]]

local scriptStrB = [[
aobscan(INJECT_SET_ACTION_BUTTON,48 39 11 74 0B 48 8B CA 48 8B D3 E8 ?? ?? ?? ?? 48 89 5D B8) // should be unique
registersymbol(INJECT_SET_ACTION_BUTTON)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end

{$asm}
//aobscan(INJECT_SET_ACTION_BUTTON,48 39 11 74 0B 48 8B CA 48 8B D3 E8 ?? ?? ?? ?? 48 89 5D B8) // should be unique
//aobscanregion(INJECT_SET_ACTION_BUTTON,"DistantWorlds.Types.UserInterfaceHelper::SetActionButtons"+BF, "DistantWorlds.Types.UserInterfaceHelper::SetActionButtons"+1BF, 48 39 11 74 0B 48 8B CA 48 8B D3 E8 ?? ?? ?? ?? 48 89 5D B8) // should be unique
//registersymbol(INJECT_SET_ACTION_BUTTON)
alloc(newmem,$1000,INJECT_SET_ACTION_BUTTON)

alloc(INJECT_SET_ACTION_BUTTONo,5)
INJECT_SET_ACTION_BUTTONo:
  readmem(INJECT_SET_ACTION_BUTTON, 5)


label(code)
label(return)
label(i_select_item_addr)

newmem:
  mov [i_select_item_addr], rcx

code:
  cmp [rcx],rdx
  //je DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+D9

  reassemble(INJECT_SET_ACTION_BUTTON+3)
  jmp return

align 10 cc
  i_select_item_addr:
  dq 0

INJECT_SET_ACTION_BUTTON:
  jmp newmem
return:

registersymbol(i_select_item_addr)
//registersymbol(INJECT_SET_ACTION_BUTTON)
registersymbol(INJECT_SET_ACTION_BUTTONo)
{$lua}
getLuaEngine().Close()
{$asm}
[DISABLE]

INJECT_SET_ACTION_BUTTON:
  //db 48 39 11 74 0B
  readmem(INJECT_SET_ACTION_BUTTONo,5)

unregistersymbol(*)
unregistersymbol(INJECT_SET_ACTION_BUTTON)
dealloc(*)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+C9

DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+99: 48 8B D3                       - mov rdx,rbx
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+9C: 48 B9 C8 A8 B4 95 FD 7F 00 00  - mov rcx,00007FFD95B4A8C8
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+A6: E8 15 9C FA 5D                 - call clr.dll+3D00
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+AB: 48 89 85 60 FA FF FF           - mov [rbp-000005A0],rax
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+B2: 48 85 C0                       - test rax,rax
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+B5: 74 3A                          - je DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+F1
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+B7: 48 8B CB                       - mov rcx,rbx
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+BA: 48 85 C9                       - test rcx,rcx
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+BD: 74 1A                          - je DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+D9
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+BF: 48 BA C8 A8 B4 95 FD 7F 00 00  - mov rdx,00007FFD95B4A8C8
// ---------- INJECTING HERE ----------
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+C9: 48 39 11                       - cmp [rcx],rdx
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+CC: 74 0B                          - je DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+D9
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+CE: 48 8B CA                       - mov rcx,rdx
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+D1: 48 8B D3                       - mov rdx,rbx
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+D4: E8 87 9C FA 5D                 - call clr.dll+3DA0
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+D9: 48 89 5D B8                    - mov [rbp-48],rbx
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+DD: 48 85 DB                       - test rbx,rbx
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+E0: 74 0F                          - je DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+F1
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+E2: 48 8B 4D B8                    - mov rcx,[rbp-48]
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+E6: E8 2D 19 2E FF                 - call 7FFD959CBA58
DistantWorlds.Types.UserInterfaceHelper::SetActionButtons+EB: 0F B6 C0                       - movzx eax,al
}
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>3727</ID>
                  <Description>"Addr"</Description>
                  <ShowAsHex>1</ShowAsHex>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>808080</Color>
                  <VariableType>8 Bytes</VariableType>
                  <Address>i_select_item_addr</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3728</ID>
                  <Description>"m_stringLength"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[i_select_item_addr]+30</Address>
                  <Offsets>
                    <Offset>8</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>3729</ID>
                  <Description>"m_firstChar"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>String</VariableType>
                  <Length>256</Length>
                  <Unicode>1</Unicode>
                  <CodePage>0</CodePage>
                  <ZeroTerminate>1</ZeroTerminate>
                  <Address>[i_select_item_addr]+30</Address>
                  <Offsets>
                    <Offset>C</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>4295</ID>
                  <Description>"EmpireId"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>A00000</Color>
                  <VariableType>2 Bytes</VariableType>
                  <Address>[i_select_item_addr]+218</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3730</ID>
                  <Description>"Summary+"</Description>
                  <Options moHideChildren="1"/>
                  <GroupHeader>1</GroupHeader>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>3731</ID>
                      <Description>"Size"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3732</ID>
                      <Description>"HullSize"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3733</ID>
                      <Description>"DisplaySize"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>10</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3734</ID>
                      <Description>"BuildCost"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>14</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3735</ID>
                      <Description>"SizeFactor"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>18</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3736</ID>
                      <Description>"BuildCostFactor"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3737</ID>
                      <Description>"CrewRequired"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>20</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3738</ID>
                      <Description>"StrengthCached"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>24</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3739</ID>
                      <Description>"ShieldCapacity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>28</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3740</ID>
                      <Description>"ShieldRechargeRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>2C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3741</ID>
                      <Description>"ShieldResistance"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>30</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3742</ID>
                      <Description>"ShieldPenetrationChance"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>34</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3743</ID>
                      <Description>"ShieldPenetrationRatio"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>38</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3744</ID>
                      <Description>"ShieldAreaRechargeRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>3C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3745</ID>
                      <Description>"ShieldAreaRechargeCapacity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>40</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3746</ID>
                      <Description>"ShieldAreaRechargeEnergyRequired"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>44</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3747</ID>
                      <Description>"ArmorStrength"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>48</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3748</ID>
                      <Description>"ArmorReactive"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>4C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3749</ID>
                      <Description>"ReactorEnergyOutputPerSecond"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>50</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3750</ID>
                      <Description>"ReactorEnergyStorageCapacity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>54</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3751</ID>
                      <Description>"ReactorFuelUnitsForFullCharge"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>58</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3752</ID>
                      <Description>"FuelCapacity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>5C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3753</ID>
                      <Description>"StaticEnergyConsumption"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>60</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3754</ID>
                      <Description>"TopSpeed"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>64</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3755</ID>
                      <Description>"TopSpeedEnergyUsage"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>68</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3756</ID>
                      <Description>"CruiseSpeed"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>6C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3757</ID>
                      <Description>"CruiseSpeedEnergyUsage"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>70</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3758</ID>
                      <Description>"ImpulseSpeedEnergyUsage"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>74</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3759</ID>
                      <Description>"AccelerationRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>78</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3760</ID>
                      <Description>"TurnRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>7C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3761</ID>
                      <Description>"HyperDriveSpeed"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>80</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3762</ID>
                      <Description>"HyperDriveEnergyUsage"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>84</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3763</ID>
                      <Description>"HyperDriveJumpInitiationTime"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>88</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3764</ID>
                      <Description>"HyperDriveBlockingInsulation"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>8C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3765</ID>
                      <Description>"HyperDriveJumpRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>90</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3766</ID>
                      <Description>"HyperDriveRechargeTime"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>94</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3767</ID>
                      <Description>"HyperDriveJumpAccuracy"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>98</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3768</ID>
                      <Description>"HyperDenyRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>9C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3769</ID>
                      <Description>"HyperDenyStrength"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>A0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3770</ID>
                      <Description>"HyperDenyEnergyUsage"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>A4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3771</ID>
                      <Description>"HyperStopRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>A8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3772</ID>
                      <Description>"HyperStopStrength"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>AC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3773</ID>
                      <Description>"EnergyCollection"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>B0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3774</ID>
                      <Description>"EnergyFuelProductionRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>B4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3775</ID>
                      <Description>"CrewCapacity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>B8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3776</ID>
                      <Description>"MedicalCapacity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>BC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3777</ID>
                      <Description>"RecreationCapacity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>C0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3778</ID>
                      <Description>"Research"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>C4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3779</ID>
                      <Description>"CargoCapacity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>C8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3780</ID>
                      <Description>"PassengerCapacity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>CC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3781</ID>
                      <Description>"TroopCapacity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>D0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3782</ID>
                      <Description>"FighterCapacity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>D4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3783</ID>
                      <Description>"FighterBayBuildRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>D8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3784</ID>
                      <Description>"FighterBayRepairRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>DC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3785</ID>
                      <Description>"ColonizationPopulationAmount"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>E0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3786</ID>
                      <Description>"MiningExtractionRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>E4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3787</ID>
                      <Description>"MiningRangeAsteroid"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>E8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3788</ID>
                      <Description>"DockingBayCount"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>EC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3789</ID>
                      <Description>"ConstructionYardCount"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>F0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3790</ID>
                      <Description>"ConstructionBuildSpeed"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>F4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3791</ID>
                      <Description>"ConstructionRepairSpeed"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>F8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3792</ID>
                      <Description>"RemoteFuelTransferRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>FC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3793</ID>
                      <Description>"RemoteFuelTransferRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>100</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3794</ID>
                      <Description>"MaintenanceSavings"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>104</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3795</ID>
                      <Description>"TradeBonuses"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>108</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3796</ID>
                      <Description>"SensorTargetting"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>10C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3797</ID>
                      <Description>"SensorCountermeasures"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>110</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3798</ID>
                      <Description>"SensorTargettingFleet"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>114</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3799</ID>
                      <Description>"SensorCountermeasuresFleet"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>118</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3800</ID>
                      <Description>"ScannerLongRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>11C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3801</ID>
                      <Description>"ScannerLongRangePower"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>120</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3802</ID>
                      <Description>"ScannerExplorationRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>124</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3803</ID>
                      <Description>"ScannerExplorationPower"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>128</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3804</ID>
                      <Description>"ScannerExplorationSurveyAmount"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>12C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3805</ID>
                      <Description>"ScannerExplorationSurveyMaximumLevel"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>130</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3806</ID>
                      <Description>"ScannerExplorationSurveyTime"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>134</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3807</ID>
                      <Description>"ScannerExplorationTime"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>138</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3808</ID>
                      <Description>"ScannerJumpTrackingChance"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>13C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3809</ID>
                      <Description>"ScannerTraceRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>140</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3810</ID>
                      <Description>"ScannerTracePower"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>144</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3811</ID>
                      <Description>"ScannerJammingPower"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>148</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3812</ID>
                      <Description>"ScannerEmpireMaskingPower"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>14C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3813</ID>
                      <Description>"ScannerRoleMaskingPower"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>150</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3814</ID>
                      <Description>"Stealth"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>154</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3815</ID>
                      <Description>"DamageRepairRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>158</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3816</ID>
                      <Description>"DestroyedRepairChance"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>15C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3817</ID>
                      <Description>"HullRepairRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>160</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3818</ID>
                      <Description>"DamageReduction"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>164</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3819</ID>
                      <Description>"WeaponFirepower"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>168</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3820</ID>
                      <Description>"WeaponBombardPower"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>16C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3821</ID>
                      <Description>"WeaponShortestRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>170</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3822</ID>
                      <Description>"WeaponLongestRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>174</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3823</ID>
                      <Description>"WeaponPointDefenseRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>178</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3824</ID>
                      <Description>"WeaponPointDefenseRangePrimary"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>17C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3825</ID>
                      <Description>"IonDefense"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>180</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3826</ID>
                      <Description>"WeaponIonPower"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>184</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3827</ID>
                      <Description>"WeaponIonRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>188</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3828</ID>
                      <Description>"TractorBeamRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>18C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3829</ID>
                      <Description>"TractorBeamPower"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>190</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3830</ID>
                      <Description>"AssaultStrength"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>194</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3831</ID>
                      <Description>"AssaultRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>198</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3832</ID>
                      <Description>"AssaultShieldPenetration"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>19C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3833</ID>
                      <Description>"AssaultDefense"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1A0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3834</ID>
                      <Description>"WeaponBombardRangeMinimum"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1A4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3835</ID>
                      <Description>"WeaponBombardRangeMaximum"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1A8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3836</ID>
                      <Description>"WeaponDamageRateLongestRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1AC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3837</ID>
                      <Description>"WeaponDamageRateZeroRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1B0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3838</ID>
                      <Description>"WeaponAreaDamageRateLongestRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1B4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3839</ID>
                      <Description>"WeaponAreaDamageRateZeroRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1B8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3840</ID>
                      <Description>"WeaponIonDamageRateLongestRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1BC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3841</ID>
                      <Description>"WeaponIonDamageRateZeroRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1C0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3842</ID>
                      <Description>"WeaponInterceptDamageRateLongestRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1C4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3843</ID>
                      <Description>"WeaponInterceptDamageRateZeroRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1C8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3844</ID>
                      <Description>"SizeVisibilityFactor"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1CC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3845</ID>
                      <Description>"ReactorFuelResourceId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1D0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3846</ID>
                      <Description>"CollisionSphereRadius"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_select_item_addr]+140</Address>
                      <Offsets>
                        <Offset>1D2</Offset>
                      </Offsets>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>3847</ID>
                  <Description>"General+"</Description>
                  <Options moHideChildren="1"/>
                  <GroupHeader>1</GroupHeader>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>3848</ID>
                      <Description>"DesignId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+180</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3849</ID>
                      <Description>"ParentId"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+184</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3850</ID>
                      <Description>"FighterCarrierId"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+188</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3851</ID>
                      <Description>"HyperdriveCharge"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+18C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3852</ID>
                      <Description>"HyperDriveCountdown"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+190</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3853</ID>
                      <Description>"TargetSpeed"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+194</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3854</ID>
                      <Description>"Speed"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+198</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3855</ID>
                      <Description>"Energy"</Description>
                      <Color>A00000</Color>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+19C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3856</ID>
                      <Description>"Fuel"</Description>
                      <Color>A00000</Color>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1A0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3857</ID>
                      <Description>"Shields"</Description>
                      <Color>A00000</Color>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1A4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3858</ID>
                      <Description>"HullDamageLevel"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1A8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3859</ID>
                      <Description>"HullConstructionLevel"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1AC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3860</ID>
                      <Description>"TransparencyLevel"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1B0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3861</ID>
                      <Description>"PeriodicCycleCounter"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+1B4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3862</ID>
                      <Description>"CollisionAvoidSpeedFactor"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1B8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3863</ID>
                      <Description>"SummarySize"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+1BC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3864</ID>
                      <Description>"SummaryAssaultShieldPenetration"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1C0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3865</ID>
                      <Description>"SummaryTopSpeed"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1C4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3866</ID>
                      <Description>"StrengthCached"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1C8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3867</ID>
                      <Description>"DockDataDockTargetId"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+1CC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3868</ID>
                      <Description>"BattleDataAssaultAttackerStrength"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1D0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3869</ID>
                      <Description>"BattleDataDamageFireTransition"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1D4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3870</ID>
                      <Description>"SummaryHyperDriveSpeed"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1D8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3871</ID>
                      <Description>"SummaryHyperDriveJumpRange"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1DC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3872</ID>
                      <Description>"MissionAssignmentSystemId"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+1E0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3873</ID>
                      <Description>"NebulaPermeability"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1E4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3874</ID>
                      <Description>"JumpBlockingFactor"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1E8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3875</ID>
                      <Description>"SensorDisableFactor"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1EC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3876</ID>
                      <Description>"SpeedModifier"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1F0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3877</ID>
                      <Description>"SpeedModifierNoFuel"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1F4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3878</ID>
                      <Description>"CommandCountdown"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1F8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3879</ID>
                      <Description>"DroneLaunchCountdown"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+1FC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3880</ID>
                      <Description>"PickupCountdown"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+200</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3881</ID>
                      <Description>"_CurrentTargetId"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+204</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3882</ID>
                      <Description>"ScannerLongRange"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+208</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3883</ID>
                      <Description>"ScannerLongRangePower"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+20C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3884</ID>
                      <Description>"EmpireId"</Description>
                      <Color>A00000</Color>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_select_item_addr]+210</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3885</ID>
                      <Description>"_FleetId"</Description>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_select_item_addr]+212</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3886</ID>
                      <Description>"BattleDataAssaultAttackerEmpireId"</Description>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_select_item_addr]+214</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3887</ID>
                      <Description>"DroneLaunchCount"</Description>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_select_item_addr]+216</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3888</ID>
                      <Description>"Role"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+218</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3889</ID>
                      <Description>"ParentType"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+219</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3890</ID>
                      <Description>"ParentIsDockedAt"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+21A</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3891</ID>
                      <Description>"ParentIsOnboard"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+21B</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3892</ID>
                      <Description>"FighterCarrierType"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+21C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3893</ID>
                      <Description>"NormalComponentCount"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+21D</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3894</ID>
                      <Description>"DamagedComponentCount"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+21E</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3895</ID>
                      <Description>"DestroyedComponentCount"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+21F</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3896</ID>
                      <Description>"UnbuiltComponentCount"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+220</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3897</ID>
                      <Description>"IsBase"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+221</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3898</ID>
                      <Description>"DockDataDockTargetType"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+222</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3899</ID>
                      <Description>"MissionAssignmentType"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+223</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3900</ID>
                      <Description>"AutomateStockLevelsForBase"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+224</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3901</ID>
                      <Description>"EnemyHyperDenyActive"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+225</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3902</ID>
                      <Description>"DroneLaunchShipToTarget"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+226</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3903</ID>
                      <Description>"_CurrentTargetType"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+227</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3904</ID>
                      <Description>"PlayerEncounterAction"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+228</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3905</ID>
                      <Description>"IsPlanetDestroyer"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+229</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3906</ID>
                      <Description>"IsFighterOptimized"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+22A</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3907</ID>
                      <Description>"IsDestroyedCached"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_select_item_addr]+22B</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3908</ID>
                      <Description>"TargetHeading"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+230</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3909</ID>
                      <Description>"TargetHeading_2"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+234</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3910</ID>
                      <Description>"TargetHeading_3"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+238</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3911</ID>
                      <Description>"TargetHeading_4"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+23C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3912</ID>
                      <Description>"LastTouch"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+240</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3913</ID>
                      <Description>"LastTouch_2"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+244</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3914</ID>
                      <Description>"LastTouchPeriodic"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+248</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3915</ID>
                      <Description>"LastTouchPeriodic_2"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+24C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3916</ID>
                      <Description>"LastTouchLong"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+250</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3917</ID>
                      <Description>"LastTouchLong_2"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+254</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3918</ID>
                      <Description>"_LastThreatReviewTime"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+258</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3919</ID>
                      <Description>"_LastThreatReviewTime_2"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+25C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3920</ID>
                      <Description>"_LastInvadeCheckTime"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+260</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3921</ID>
                      <Description>"_LastInvadeCheckTime_2"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+264</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3922</ID>
                      <Description>"LastRetrofitDate"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+268</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3923</ID>
                      <Description>"LastRetrofitDate_2"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+26C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3924</ID>
                      <Description>"Rotation"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+270</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3925</ID>
                      <Description>"Rotation_2"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+274</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3926</ID>
                      <Description>"Rotation_3"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+278</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3927</ID>
                      <Description>"Rotation_4"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+27C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3928</ID>
                      <Description>"Rotation_5"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+280</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3929</ID>
                      <Description>"Rotation_6"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+284</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3930</ID>
                      <Description>"Rotation_7"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+288</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3931</ID>
                      <Description>"Rotation_8"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+28C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3932</ID>
                      <Description>"Rotation_9"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+290</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3933</ID>
                      <Description>"Rotation_10"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+294</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3934</ID>
                      <Description>"Rotation_11"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+298</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3935</ID>
                      <Description>"Rotation_12"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+29C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3936</ID>
                      <Description>"Rotation_13"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2A0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3937</ID>
                      <Description>"Rotation_14"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2A4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3938</ID>
                      <Description>"Rotation_15"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2A8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3939</ID>
                      <Description>"Rotation_16"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2AC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3940</ID>
                      <Description>"DeRotation"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2B0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3941</ID>
                      <Description>"DeRotation_2"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2B4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3942</ID>
                      <Description>"DeRotation_3"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2B8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3943</ID>
                      <Description>"DeRotation_4"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2BC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3944</ID>
                      <Description>"DeRotation_5"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2C0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3945</ID>
                      <Description>"DeRotation_6"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2C4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3946</ID>
                      <Description>"DeRotation_7"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2C8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3947</ID>
                      <Description>"DeRotation_8"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2CC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3948</ID>
                      <Description>"DeRotation_9"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2D0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3949</ID>
                      <Description>"DeRotation_10"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2D4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3950</ID>
                      <Description>"DeRotation_11"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2D8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3951</ID>
                      <Description>"DeRotation_12"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2DC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3952</ID>
                      <Description>"DeRotation_13"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2E0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3953</ID>
                      <Description>"DeRotation_14"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2E4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3954</ID>
                      <Description>"DeRotation_15"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2E8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3955</ID>
                      <Description>"DeRotation_16"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_select_item_addr]+2EC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3956</ID>
                      <Description>"CollisionAvoidHeadingDeviation"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+2F0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3957</ID>
                      <Description>"CollisionAvoidHeadingDeviation_2"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+2F4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3958</ID>
                      <Description>"CollisionAvoidHeadingDeviation_3"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+2F8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3959</ID>
                      <Description>"CollisionAvoidHeadingDeviation_4"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+2FC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3960</ID>
                      <Description>"PathRerouteTarget"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+300</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3961</ID>
                      <Description>"PathRerouteTarget_2"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+304</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3962</ID>
                      <Description>"PathRerouteTarget_3"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+308</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3963</ID>
                      <Description>"PathRerouteTarget_4"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+30C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3964</ID>
                      <Description>"PullVector"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+310</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3965</ID>
                      <Description>"PullVector_2"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+314</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3966</ID>
                      <Description>"PullVector_3"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+318</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>3967</ID>
                      <Description>"PullVector_4"</Description>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_select_item_addr]+31C</Address>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>4278</ID>
                  <Description>"HyperdriveCharge"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_select_item_addr]+194</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>4279</ID>
                  <Description>"HyperDriveCountdown"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_select_item_addr]+198</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>4280</ID>
                  <Description>"TargetSpeed"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_select_item_addr]+19C</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>4281</ID>
                  <Description>"Speed"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_select_item_addr]+1A0</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3968</ID>
                  <Description>"Energy"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>A00000</Color>
                  <VariableType>Float</VariableType>
                  <Address>[i_select_item_addr]+1A4</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3969</ID>
                  <Description>"Fuel"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>A00000</Color>
                  <VariableType>Float</VariableType>
                  <Address>[i_select_item_addr]+1A8</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3970</ID>
                  <Description>"Shields"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>A00000</Color>
                  <VariableType>Float</VariableType>
                  <Address>[i_select_item_addr]+1AC</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3971</ID>
                  <Description>"HullDamageLevel"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_select_item_addr]+1B0</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3972</ID>
                  <Description>"HullConstructionLevel"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_select_item_addr]+1B4</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3973</ID>
                  <Description>"GalaxyX"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[i_select_item_addr]+8</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3974</ID>
                  <Description>"GalaxyY"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[i_select_item_addr]+C</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3975</ID>
                  <Description>"LocationId"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[i_select_item_addr]+10</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3976</ID>
                  <Description>"CollisionSphereRadius"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_select_item_addr]+14</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3977</ID>
                  <Description>"_Position"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_select_item_addr]+18</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3978</ID>
                  <Description>"_Position_2"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_select_item_addr]+1C</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3979</ID>
                  <Description>"_Position_3"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_select_item_addr]+20</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>3980</ID>
                  <Description>"ShipId"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[i_select_item_addr]+24</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>3983</ID>
              <Description>"(Not Working)  Orb / Colony Editor (Usage: click planet)"</Description>
              <Options moHideChildren="1"/>
              <Color>4080FF</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-18
  Author : bbfox @ https://opencheattables.org/
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_ORB_EDITOR, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECT_ORB_EDITOR,"DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche"+18C0, "DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche"+28C0,48 8D 87 98 00 00 00 8B 00 89 85 E0) // should be unique
registersymbol(INJECT_ORB_EDITOR)
 ]]

local scriptStrB = [[
aobscan(INJECT_ORB_EDITOR,48 8D 87 98 00 00 00 8B 00 89 85 E0) // should be unique
registersymbol(INJECT_ORB_EDITOR)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end

{$asm}
//aobscan(INJECT_ORB_EDITOR,48 8D 87 98 00 00 00 8B 00 89 85 E0) // should be unique
//aobscanregion(INJECT_ORB_EDITOR,"DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche"+18C0, "DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche"+28C0,48 8D 87 98 00 00 00 8B 00 89 85 E0) // should be unique
//registersymbol(INJECT_ORB_EDITOR)
alloc(newmem,$1000,INJECT_ORB_EDITOR)

label(code)
label(return)
label(i_orb_base_addr)

newmem:
  lea rax, [rdi]
  mov [i_orb_base_addr], rax

code:
  lea rax,[rdi+00000098]
  jmp return

align 10 cc
  i_orb_base_addr:
  dq 0

INJECT_ORB_EDITOR:
  jmp newmem
  nop 2
return:

registersymbol(i_orb_base_addr)
//registersymbol(INJECT_ORB_EDITOR)

[DISABLE]

INJECT_ORB_EDITOR:
  db 48 8D 87 98 00 00 00

unregistersymbol(*)
unregistersymbol(INJECT_ORB_EDITOR)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18D5

DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+1898: 48 B9 C8 AE E0 9A F1 01 00 00  - mov rcx,000001F19AE0AEC8
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18A2: 48 8B 01                       - mov rax,[rcx]
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18A5: 48 89 85 B0 F8 FF FF           - mov [rbp-00000750],rax
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18AC: 0F B6 8F B4 00 00 00           - movzx ecx,byte ptr [rdi+000000B4]
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18B3: E8 70 63 26 FF                 - call 7FFC7A0CD718
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18B8: 4C 8B C0                       - mov r8,rax
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18BB: 48 8B 95 B0 F8 FF FF           - mov rdx,[rbp-00000750]
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18C2: 48 8B 8D 38 F9 FF FF           - mov rcx,[rbp-000006C8]
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18C9: E8 D2 A0 25 5A                 - call System.String::Concat
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18CE: 48 89 85 38 F9 FF FF           - mov [rbp-000006C8],rax
// ---------- INJECTING HERE ----------
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18D5: 48 8D 87 98 00 00 00           - lea rax,[rdi+00000098]
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18DC: 8B 00                          - mov eax,[rax]
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18DE: 89 85 E0 FC FF FF              - mov [rbp-00000320],eax
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18E4: 48 B9 C8 BE E0 9A F1 01 00 00  - mov rcx,000001F19AE0BEC8
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18EE: 48 8B 09                       - mov rcx,[rcx]
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18F1: 48 89 8D A0 F8 FF FF           - mov [rbp-00000760],rcx
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+18F8: 49 B8 58 F1 E0 9A F1 01 00 00  - mov r8,000001F19AE0F158
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+1902: 4D 8B 00                       - mov r8,[r8]
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+1905: 4C 89 85 A8 F8 FF FF           - mov [rbp-00000758],r8
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+190C: E8 CF 8F 26 5A                 - call System.Globalization.NumberFormatInfo::get_CurrentInfo
DistantWorlds.Types.UserInterfaceHelper::DrawOrbCartouche+1911: 4C 8B C0                       - mov r8,rax
}
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>3984</ID>
                  <Description>"Base addr."</Description>
                  <ShowAsHex>1</ShowAsHex>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>808080</Color>
                  <VariableType>8 Bytes</VariableType>
                  <Address>i_orb_base_addr</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>4296</ID>
                  <Description>"EmpireId"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>A00000</Color>
                  <VariableType>2 Bytes</VariableType>
                  <Address>[i_orb_base_addr]+80</Address>
                  <Offsets>
                    <Offset>1D6</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>3985</ID>
                  <Description>"m_stringLength"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>[i_orb_base_addr]+28</Address>
                  <Offsets>
                    <Offset>8</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>3986</ID>
                  <Description>"m_firstChar"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>FF0080</Color>
                  <VariableType>String</VariableType>
                  <Length>256</Length>
                  <Unicode>1</Unicode>
                  <CodePage>0</CodePage>
                  <ZeroTerminate>1</ZeroTerminate>
                  <Address>[i_orb_base_addr]+28</Address>
                  <Offsets>
                    <Offset>C</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>3987</ID>
                  <Description>"Colony+"</Description>
                  <Options moHideChildren="1"/>
                  <GroupHeader>1</GroupHeader>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>3988</ID>
                      <Description>"Population+"</Description>
                      <Options moHideChildren="1"/>
                      <GroupHeader>1</GroupHeader>
                      <CheatEntries>
                        <CheatEntry>
                          <ID>3989</ID>
                          <Description>"_size 0"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <Color>808080</Color>
                          <VariableType>4 Bytes</VariableType>
                          <Address>[i_orb_base_addr]+80</Address>
                          <Offsets>
                            <Offset>18</Offset>
                            <Offset>48</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>3990</ID>
                          <Description>"Race0"</Description>
                          <Options moHideChildren="1"/>
                          <GroupHeader>1</GroupHeader>
                          <CheatEntries>
                            <CheatEntry>
                              <ID>3991</ID>
                              <Description>"Amount"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>8 Bytes</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>8</Offset>
                                <Offset>10</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>3992</ID>
                              <Description>"ReproductionRate"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Float</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>10</Offset>
                                <Offset>10</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>3993</ID>
                              <Description>"Assimilation"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Float</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>14</Offset>
                                <Offset>10</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>3994</ID>
                              <Description>"_RaceId0"</Description>
                              <DropDownList DisplayValueAsItem="1">0:Human
1:Ackdarian
2:Teekan
3:Haakonish
4:Mortalen
5:Ikkuro
6:Boskara
7:Zenox
8:Wekkarus
9:Atuuk
10:Dhayut
11:Gizurean
12:Ketarov
13:Kiaidian
14:Naxxilian
15:Quameno
16:Securan
17:Shandar
18:Sluken
19:Ugnari
</DropDownList>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Byte</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>18</Offset>
                                <Offset>10</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                          </CheatEntries>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>3995</ID>
                          <Description>"Race1"</Description>
                          <Options moHideChildren="1"/>
                          <GroupHeader>1</GroupHeader>
                          <CheatEntries>
                            <CheatEntry>
                              <ID>3996</ID>
                              <Description>"Amount"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>8 Bytes</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>8</Offset>
                                <Offset>18</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>3997</ID>
                              <Description>"ReproductionRate"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Float</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>10</Offset>
                                <Offset>18</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>3998</ID>
                              <Description>"Assimilation"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Float</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>14</Offset>
                                <Offset>18</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>3999</ID>
                              <Description>"_RaceId"</Description>
                              <DropDownListLink>_RaceId0</DropDownListLink>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Byte</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>18</Offset>
                                <Offset>18</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                          </CheatEntries>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4000</ID>
                          <Description>"Race2"</Description>
                          <Options moHideChildren="1"/>
                          <GroupHeader>1</GroupHeader>
                          <CheatEntries>
                            <CheatEntry>
                              <ID>4001</ID>
                              <Description>"Amount"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>8 Bytes</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>8</Offset>
                                <Offset>20</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>4002</ID>
                              <Description>"ReproductionRate"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Float</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>10</Offset>
                                <Offset>20</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>4003</ID>
                              <Description>"Assimilation"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Float</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>14</Offset>
                                <Offset>20</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>4004</ID>
                              <Description>"_RaceId"</Description>
                              <DropDownListLink>_RaceId0</DropDownListLink>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Byte</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>18</Offset>
                                <Offset>20</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                          </CheatEntries>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4005</ID>
                          <Description>"Race3"</Description>
                          <Options moHideChildren="1"/>
                          <GroupHeader>1</GroupHeader>
                          <CheatEntries>
                            <CheatEntry>
                              <ID>4006</ID>
                              <Description>"Amount"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>8 Bytes</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>8</Offset>
                                <Offset>28</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>4007</ID>
                              <Description>"ReproductionRate"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Float</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>10</Offset>
                                <Offset>28</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>4008</ID>
                              <Description>"Assimilation"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Float</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>14</Offset>
                                <Offset>28</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>4009</ID>
                              <Description>"_RaceId"</Description>
                              <DropDownListLink>_RaceId0</DropDownListLink>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Byte</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>18</Offset>
                                <Offset>28</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                          </CheatEntries>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4010</ID>
                          <Description>"Race4"</Description>
                          <Options moHideChildren="1"/>
                          <GroupHeader>1</GroupHeader>
                          <CheatEntries>
                            <CheatEntry>
                              <ID>4011</ID>
                              <Description>"Amount"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>8 Bytes</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>8</Offset>
                                <Offset>30</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>4012</ID>
                              <Description>"ReproductionRate"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Float</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>10</Offset>
                                <Offset>30</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>4013</ID>
                              <Description>"Assimilation"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Float</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>14</Offset>
                                <Offset>30</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>4014</ID>
                              <Description>"_RaceId"</Description>
                              <DropDownListLink>_RaceId0</DropDownListLink>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Byte</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>18</Offset>
                                <Offset>30</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                          </CheatEntries>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4015</ID>
                          <Description>"Race5"</Description>
                          <Options moHideChildren="1"/>
                          <GroupHeader>1</GroupHeader>
                          <CheatEntries>
                            <CheatEntry>
                              <ID>4016</ID>
                              <Description>"Amount"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>8 Bytes</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>8</Offset>
                                <Offset>38</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>4017</ID>
                              <Description>"ReproductionRate"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Float</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>10</Offset>
                                <Offset>38</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>4018</ID>
                              <Description>"Assimilation"</Description>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Float</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>14</Offset>
                                <Offset>38</Offset>
                                <Offset>8</Offset>
                                <Offset>48</Offset>
                              </Offsets>
                            </CheatEntry>
                            <CheatEntry>
                              <ID>4019</ID>
                              <Description>"_RaceId"</Description>
                              <DropDownListLink>_RaceId0</DropDownListLink>
                              <ShowAsSigned>0</ShowAsSigned>
                              <VariableType>Byte</VariableType>
                              <Address>[i_orb_base_addr]+80</Address>
                              <Offsets>
                                <Offset>18</Offset>
                                <Offset>38</Offset>
                                <Offset>8</Offset>
                                <Offset>38</Offset>
                              </Offsets>
                            </CheatEntry>
                          </CheatEntries>
                        </CheatEntry>
                      </CheatEntries>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4020</ID>
                      <Description>"MaximumPopulation"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>8 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>108</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4021</ID>
                      <Description>"LastColonyEventDate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>8 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>110</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4022</ID>
                      <Description>"LastPlagueDate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>8 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>118</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4023</ID>
                      <Description>"LastDisasterDate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>8 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>120</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4024</ID>
                      <Description>"OrbId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>128</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4025</ID>
                      <Description>"_DevelopmentLevel"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>12C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4026</ID>
                      <Description>"_EventDevelopmentLevel"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>130</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4027</ID>
                      <Description>"TaxRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>134</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4028</ID>
                      <Description>"TaxRateModifier"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>138</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4029</ID>
                      <Description>"Corruption"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>13C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4030</ID>
                      <Description>"_MigrationFactor"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>140</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4031</ID>
                      <Description>"_EventMigrationFactor"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>144</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4032</ID>
                      <Description>"_EventResourceAbundance"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>148</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4033</ID>
                      <Description>"_EventColonyHappinessFactor"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>14C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4034</ID>
                      <Description>"ColonyInfluenceRadius"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>150</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4035</ID>
                      <Description>"EmpireApprovalRating"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>154</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4036</ID>
                      <Description>"ConqueredFactor"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>158</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4037</ID>
                      <Description>"CulturalDistressFactor"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>15C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4038</ID>
                      <Description>"RaidCountdown"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>160</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4039</ID>
                      <Description>"RacialHappiness"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>164</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4040</ID>
                      <Description>"Unrest"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>168</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4041</ID>
                      <Description>"InvasionDamageTotal"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>16C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4042</ID>
                      <Description>"GrowthFundingRatio"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>170</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4043</ID>
                      <Description>"SlaveryFactor"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>174</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4044</ID>
                      <Description>"PrioritizeGrowth"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>178</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4045</ID>
                      <Description>"PrioritizeMigration"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>17C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4046</ID>
                      <Description>"PrioritizeResources"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>180</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4047</ID>
                      <Description>"GalaxyX"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>184</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4048</ID>
                      <Description>"GalaxyY"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>188</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4049</ID>
                      <Description>"PlanetaryShieldMaximumDamageAbsorbed"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>18C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4050</ID>
                      <Description>"PlanetaryShieldPenetrationChance"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>190</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4051</ID>
                      <Description>"TerraformingDamageRepairRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>194</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4052</ID>
                      <Description>"TerraformingQualityImprovementRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>198</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4053</ID>
                      <Description>"TerraformingQualityMaximum"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>19C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4054</ID>
                      <Description>"IncomeDrainRatio"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1A0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4055</ID>
                      <Description>"CorruptionReductionProjectionRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1A4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4056</ID>
                      <Description>"FighterBuildRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1A8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4057</ID>
                      <Description>"FighterRepairRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1AC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4058</ID>
                      <Description>"HyperDenyRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1B0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4059</ID>
                      <Description>"HyperDenyStrength"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1B4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4060</ID>
                      <Description>"MedicalRating"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1B8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4061</ID>
                      <Description>"QualityBoost"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1BC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4062</ID>
                      <Description>"WeaponRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1C0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4063</ID>
                      <Description>"WeaponPointDefenseRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1C4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4064</ID>
                      <Description>"TractorBeamRange"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1C8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4065</ID>
                      <Description>"_Strength"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1CC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4066</ID>
                      <Description>"ArmyTemplateId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1D0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4067</ID>
                      <Description>"ColonyId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1D4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4068</ID>
                      <Description>"EmpireId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <Color>A00000</Color>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1D6</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4069</ID>
                      <Description>"CulturalDistressEmpireId"</Description>
                      <ShowAsSigned>1</ShowAsSigned>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1D8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4070</ID>
                      <Description>"InvasionEmpireId"</Description>
                      <ShowAsSigned>1</ShowAsSigned>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1DA</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4071</ID>
                      <Description>"PreviousEmpireId"</Description>
                      <ShowAsSigned>1</ShowAsSigned>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1DC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4072</ID>
                      <Description>"IncomeDrainEmpireId"</Description>
                      <ShowAsSigned>1</ShowAsSigned>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1DE</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4073</ID>
                      <Description>"IsRebelling"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1E0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4074</ID>
                      <Description>"InvasionType"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1E1</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4075</ID>
                      <Description>"FighterCapacity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1E2</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4076</ID>
                      <Description>"AutomateStockLevels"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1E3</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4077</ID>
                      <Description>"AutomatePopulationPolicy"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1E4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4078</ID>
                      <Description>"AutomateTaxRates"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1E5</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4079</ID>
                      <Description>"AutomateInfantryRecruitmentGarrison"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1E6</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4080</ID>
                      <Description>"ShowingInGroundReport"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1E7</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4081</ID>
                      <Description>"_LastTimeShort"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1E8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4082</ID>
                      <Description>"_LastTimeShort_2"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1EC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4083</ID>
                      <Description>"_LastTimePeriodic"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1F0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4084</ID>
                      <Description>"_LastTimePeriodic_2"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1F4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4085</ID>
                      <Description>"_LastTimePeriodic_3"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1F8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4086</ID>
                      <Description>"_LastTimePeriodic_4"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+80</Address>
                      <Offsets>
                        <Offset>1FC</Offset>
                      </Offsets>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>4087</ID>
                  <Description>"Bonuses+"</Description>
                  <Options moHideChildren="1"/>
                  <GroupHeader>1</GroupHeader>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>4088</ID>
                      <Description>"_size"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <Color>808080</Color>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+48</Address>
                      <Offsets>
                        <Offset>18</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4089</ID>
                      <Description>"Item0+"</Description>
                      <Options moHideChildren="1"/>
                      <GroupHeader>1</GroupHeader>
                      <CheatEntries>
                        <CheatEntry>
                          <ID>4090</ID>
                          <Description>"m_stringLength"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>4 Bytes</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>8</Offset>
                            <Offset>8</Offset>
                            <Offset>10</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4091</ID>
                          <Description>"m_firstChar"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>String</VariableType>
                          <Length>256</Length>
                          <Unicode>1</Unicode>
                          <CodePage>0</CodePage>
                          <ZeroTerminate>1</ZeroTerminate>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>C</Offset>
                            <Offset>8</Offset>
                            <Offset>10</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4092</ID>
                          <Description>"Amount"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Float</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>20</Offset>
                            <Offset>10</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4093</ID>
                          <Description>"FilterId"</Description>
                          <ShowAsSigned>1</ShowAsSigned>
                          <VariableType>2 Bytes</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>24</Offset>
                            <Offset>10</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4094</ID>
                          <Description>"Type"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>26</Offset>
                            <Offset>10</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4095</ID>
                          <Description>"AppliesTo"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>27</Offset>
                            <Offset>10</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4096</ID>
                          <Description>"DiscoveryLevel"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>28</Offset>
                            <Offset>10</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                      </CheatEntries>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4097</ID>
                      <Description>"Item1+"</Description>
                      <Options moHideChildren="1"/>
                      <GroupHeader>1</GroupHeader>
                      <CheatEntries>
                        <CheatEntry>
                          <ID>4098</ID>
                          <Description>"m_stringLength"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>4 Bytes</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>8</Offset>
                            <Offset>8</Offset>
                            <Offset>18</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4099</ID>
                          <Description>"m_firstChar"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>String</VariableType>
                          <Length>256</Length>
                          <Unicode>1</Unicode>
                          <CodePage>0</CodePage>
                          <ZeroTerminate>1</ZeroTerminate>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>C</Offset>
                            <Offset>8</Offset>
                            <Offset>18</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4100</ID>
                          <Description>"Amount"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Float</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>20</Offset>
                            <Offset>18</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4101</ID>
                          <Description>"FilterId"</Description>
                          <ShowAsSigned>1</ShowAsSigned>
                          <VariableType>2 Bytes</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>24</Offset>
                            <Offset>18</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4102</ID>
                          <Description>"Type"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>26</Offset>
                            <Offset>18</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4103</ID>
                          <Description>"AppliesTo"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>27</Offset>
                            <Offset>18</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4104</ID>
                          <Description>"DiscoveryLevel"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>28</Offset>
                            <Offset>18</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                      </CheatEntries>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4105</ID>
                      <Description>"Item2+"</Description>
                      <Options moHideChildren="1"/>
                      <GroupHeader>1</GroupHeader>
                      <CheatEntries>
                        <CheatEntry>
                          <ID>4106</ID>
                          <Description>"m_stringLength"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>4 Bytes</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>8</Offset>
                            <Offset>8</Offset>
                            <Offset>20</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4107</ID>
                          <Description>"m_firstChar"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>String</VariableType>
                          <Length>256</Length>
                          <Unicode>1</Unicode>
                          <CodePage>0</CodePage>
                          <ZeroTerminate>1</ZeroTerminate>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>C</Offset>
                            <Offset>8</Offset>
                            <Offset>20</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4108</ID>
                          <Description>"Amount"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Float</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>20</Offset>
                            <Offset>20</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4109</ID>
                          <Description>"FilterId"</Description>
                          <ShowAsSigned>1</ShowAsSigned>
                          <VariableType>2 Bytes</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>24</Offset>
                            <Offset>20</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4110</ID>
                          <Description>"Type"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>26</Offset>
                            <Offset>20</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4111</ID>
                          <Description>"AppliesTo"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>27</Offset>
                            <Offset>20</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4112</ID>
                          <Description>"DiscoveryLevel"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>28</Offset>
                            <Offset>20</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                      </CheatEntries>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4113</ID>
                      <Description>"Item3+"</Description>
                      <Options moHideChildren="1"/>
                      <GroupHeader>1</GroupHeader>
                      <CheatEntries>
                        <CheatEntry>
                          <ID>4114</ID>
                          <Description>"m_stringLength"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>4 Bytes</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>8</Offset>
                            <Offset>8</Offset>
                            <Offset>28</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4115</ID>
                          <Description>"m_firstChar"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>String</VariableType>
                          <Length>256</Length>
                          <Unicode>1</Unicode>
                          <CodePage>0</CodePage>
                          <ZeroTerminate>1</ZeroTerminate>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>C</Offset>
                            <Offset>8</Offset>
                            <Offset>28</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4116</ID>
                          <Description>"Amount"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Float</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>20</Offset>
                            <Offset>28</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4117</ID>
                          <Description>"FilterId"</Description>
                          <ShowAsSigned>1</ShowAsSigned>
                          <VariableType>2 Bytes</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>24</Offset>
                            <Offset>28</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4118</ID>
                          <Description>"Type"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>26</Offset>
                            <Offset>28</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4119</ID>
                          <Description>"AppliesTo"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>27</Offset>
                            <Offset>28</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4120</ID>
                          <Description>"DiscoveryLevel"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>28</Offset>
                            <Offset>28</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                      </CheatEntries>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4121</ID>
                      <Description>"Item4+"</Description>
                      <Options moHideChildren="1"/>
                      <GroupHeader>1</GroupHeader>
                      <CheatEntries>
                        <CheatEntry>
                          <ID>4122</ID>
                          <Description>"m_stringLength"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>4 Bytes</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>8</Offset>
                            <Offset>8</Offset>
                            <Offset>30</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4123</ID>
                          <Description>"m_firstChar"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>String</VariableType>
                          <Length>256</Length>
                          <Unicode>1</Unicode>
                          <CodePage>0</CodePage>
                          <ZeroTerminate>1</ZeroTerminate>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>C</Offset>
                            <Offset>8</Offset>
                            <Offset>30</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4124</ID>
                          <Description>"Amount"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Float</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>20</Offset>
                            <Offset>30</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4125</ID>
                          <Description>"FilterId"</Description>
                          <ShowAsSigned>1</ShowAsSigned>
                          <VariableType>2 Bytes</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>24</Offset>
                            <Offset>30</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4126</ID>
                          <Description>"Type"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>26</Offset>
                            <Offset>30</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4127</ID>
                          <Description>"AppliesTo"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>27</Offset>
                            <Offset>30</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4128</ID>
                          <Description>"DiscoveryLevel"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <VariableType>Byte</VariableType>
                          <Address>[i_orb_base_addr]+48</Address>
                          <Offsets>
                            <Offset>28</Offset>
                            <Offset>30</Offset>
                            <Offset>8</Offset>
                          </Offsets>
                        </CheatEntry>
                      </CheatEntries>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>4129</ID>
                  <Description>"General+"</Description>
                  <Options moHideChildren="1"/>
                  <GroupHeader>1</GroupHeader>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>4130</ID>
                      <Description>"GalaxyX"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4131</ID>
                      <Description>"GalaxyY"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4132</ID>
                      <Description>"LocationId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+10</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4133</ID>
                      <Description>"CollisionSphereRadius"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+14</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4134</ID>
                      <Description>"_Position"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+18</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4135</ID>
                      <Description>"_Position_2"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+1C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4136</ID>
                      <Description>"_Position_3"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+20</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4137</ID>
                      <Description>"OrbId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+24</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4138</ID>
                      <Description>"ParentId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+88</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4139</ID>
                      <Description>"Heading"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+8C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4140</ID>
                      <Description>"Pitch"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+90</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4141</ID>
                      <Description>"Roll"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+94</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4142</ID>
                      <Description>"Diameter"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+98</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4143</ID>
                      <Description>"OrbitalDistance"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+9C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4144</ID>
                      <Description>"_Quality"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <Color>A00000</Color>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+A4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4145</ID>
                      <Description>"Damage"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+A8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4146</ID>
                      <Description>"EmissiveIntensity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_orb_base_addr]+AC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4147</ID>
                      <Description>"_ColonyId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+B0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4148</ID>
                      <Description>"EnergyOutput"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+B2</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4149</ID>
                      <Description>"Category"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+B4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4150</ID>
                      <Description>"TypeId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+B5</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4151</ID>
                      <Description>"SubTypeId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+B6</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4152</ID>
                      <Description>"HasRings"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+B7</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4153</ID>
                      <Description>"ResourceCount"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+B8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4154</ID>
                      <Description>"FacilityCount"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_orb_base_addr]+B9</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4155</ID>
                      <Description>"LastTouch"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+C0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4156</ID>
                      <Description>"LastTouch_2"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+C4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4157</ID>
                      <Description>"Velocity"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+C8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4158</ID>
                      <Description>"Velocity_2"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+CC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4159</ID>
                      <Description>"Velocity_3"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+D0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4160</ID>
                      <Description>"Velocity_4"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_orb_base_addr]+D4</Address>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>4161</ID>
              <Description>"(Not Working) Get player empire base data (Active: mouse move over resources header)"</Description>
              <Options moHideChildren="1"/>
              <Color>4080FF</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-15
  Author : bbfox @ https://opencheattables.org/

  Revised:
  4/27: v1.0.3.7
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_DRAW_RESOURCE_SECTION_EMPIRE_DATA, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECT_DRAW_RESOURCE_SECTION_EMPIRE_DATA,"DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection"+F1, "DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection"+200, 41 8B 0F 33 C9 48 89 8C) // should be unique
registersymbol(INJECT_DRAW_RESOURCE_SECTION_EMPIRE_DATA)
 ]]

local scriptStrB = [[
aobscan(INJECT_DRAW_RESOURCE_SECTION_EMPIRE_DATA,41 8B 0F 33 C9 48 89 8C) // should be unique
registersymbol(INJECT_DRAW_RESOURCE_SECTION_EMPIRE_DATA)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end

{$asm}


//aobscan(INJECT_DRAW_RESOURCE_SECTION_EMPIRE_DATA,41 8B 0F 33 C9 48 89 8C) // should be unique
//aobscanregion(INJECT_DRAW_RESOURCE_SECTION_EMPIRE_DATA,"DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection"+F1, "DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection"+200, 41 8B 0F 33 C9 48 89 8C) // should be unique
//registersymbol(INJECT_DRAW_RESOURCE_SECTION_EMPIRE_DATA)
alloc(newmem,$1000,INJECT_DRAW_RESOURCE_SECTION_EMPIRE_DATA)

label(code)
label(return)
label(i_draw_resource_empire_data_addr)

newmem:
  push rax
  lea rax, [r15]
  mov [i_draw_resource_empire_data_addr], r15
  pop rax

code:
  mov ecx,[r15]
  xor ecx,ecx
  jmp return

align 10 cc
  i_draw_resource_empire_data_addr:
  dq 0


INJECT_DRAW_RESOURCE_SECTION_EMPIRE_DATA:
  jmp newmem
return:
registersymbol(i_draw_resource_empire_data_addr)
//registersymbol(INJECT_DRAW_RESOURCE_SECTION_EMPIRE_DATA)

[DISABLE]

INJECT_DRAW_RESOURCE_SECTION_EMPIRE_DATA:
  db 41 8B 0F 33 C9

unregistersymbol(*)
unregistersymbol(INJECT_DRAW_RESOURCE_SECTION_EMPIRE_DATA)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+F8

DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+C9: C4 61 78 28 C0                 - vmovaps xmm8,xmm0
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+CE: C4 61 3A 5C C1                 - vsubss xmm8,xmm8,xmm1
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+D3: C4 E1 7A 10 05 50 17 00 00     - vmovss xmm0,[7FF7C52E8EEC]
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+DC: E8 2F 79 3B FF                 - call DistantWorlds.Types.UserInterfaceHelper::CalculateScaledValue
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+E1: C4 61 78 28 C8                 - vmovaps xmm9,xmm0
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+E6: 48 8B 4E 10                    - mov rcx,[rsi+10]
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+EA: 39 09                          - cmp [rcx],ecx
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+EC: E8 4F 54 46 FF                 - call DistantWorlds.Types.Empire::DetermineFuelResourcesByShips
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+F1: 4C 8B F0                       - mov r14,rax
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+F4: 4C 8B 7E 10                    - mov r15,[rsi+10]
// ---------- INJECTING HERE ----------
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+F8: 41 8B 0F                       - mov ecx,[r15]
// ---------- DONE INJECTING  ----------
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+FB: 33 C9                          - xor ecx,ecx
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+FD: 48 89 8C 24 F0 00 00 00        - mov [rsp+000000F0],rcx
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+105: 48 89 8C 24 F0 00 00 00        - mov [rsp+000000F0],rcx
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+10D: 48 B9 30 82 44 C4 F7 7F 00 00  - mov rcx,00007FF7C4448230
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+117: E8 64 AD CC 5D                 - call clr.dll+2540
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+11C: 4C 8B E0                       - mov r12,rax
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+11F: 49 8B CC                       - mov rcx,r12
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+122: E8 C9 FB 00 FF                 - call 7FF7C42F73B0
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+127: 49 8B CC                       - mov rcx,r12
DistantWorlds.UI.SectionHeaderPanel::DrawResourcesSection+12A: BA 01 00 00 00                 - mov edx,00000001
}
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>4162</ID>
                  <Description>"Empire data base addr."</Description>
                  <ShowAsHex>1</ShowAsHex>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>808080</Color>
                  <VariableType>8 Bytes</VariableType>
                  <Address>i_draw_resource_empire_data_addr</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>4163</ID>
                  <Description>"Name len."</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>i_draw_resource_empire_data_addr</Address>
                  <Offsets>
                    <Offset>8</Offset>
                    <Offset>8</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>4164</ID>
                  <Description>"Name"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>String</VariableType>
                  <Length>64</Length>
                  <Unicode>1</Unicode>
                  <CodePage>0</CodePage>
                  <ZeroTerminate>1</ZeroTerminate>
                  <Address>i_draw_resource_empire_data_addr</Address>
                  <Offsets>
                    <Offset>C</Offset>
                    <Offset>8</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>4165</ID>
                  <Description>"Policy+"</Description>
                  <Options moHideChildren="1"/>
                  <GroupHeader>1</GroupHeader>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>4166</ID>
                      <Description>"CashflowColonyGrowthFunding"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>40</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4167</ID>
                      <Description>"AttackOvermatchFactor"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>2C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4168</ID>
                      <Description>"RefuelThreshold"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>30</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4169</ID>
                      <Description>"CashflowResearchFunding"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>44</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4170</ID>
                      <Description>"CashflowStateShipMaintenance"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>48</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4171</ID>
                      <Description>"CashflowTroopMaintenance"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>4C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4172</ID>
                      <Description>"CashflowFacilityMaintenance"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>50</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4173</ID>
                      <Description>"CashflowResourceTrading"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>54</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4174</ID>
                      <Description>"CashflowUncommitted"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>58</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4175</ID>
                      <Description>"ColonyTroopGarrisonLevel"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>5C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4176</ID>
                      <Description>"AttackTroopLevel"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>60</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4177</ID>
                      <Description>"ConstructionMilitaryBuildRatioEscort"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>90</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4178</ID>
                      <Description>"ConstructionMilitaryBuildRatioFrigate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>94</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4179</ID>
                      <Description>"ConstructionMilitaryBuildRatioDestroyer"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>98</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4180</ID>
                      <Description>"ConstructionMilitaryBuildRatioCruiser"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>9C</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4181</ID>
                      <Description>"ConstructionMilitaryBuildRatioCapitalShip"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>A0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4182</ID>
                      <Description>"ConstructionMilitaryBuildRatioCarrier"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>A4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4183</ID>
                      <Description>"ConstructionMilitaryBuildRatioTroopTransport"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>A8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4184</ID>
                      <Description>"ResearchMaximumConcurrentProjects"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>AC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4185</ID>
                      <Description>"MilitaryShipMissionRatioEscort"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>B0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4186</ID>
                      <Description>"MilitaryShipMissionRatioGuard"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>B4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4187</ID>
                      <Description>"MilitaryShipMissionRatioPatrol"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>B8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4188</ID>
                      <Description>"MilitaryShipMissionRatioRaid"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>BC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4189</ID>
                      <Description>"ColonizationMinimumSuitability"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>C0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4190</ID>
                      <Description>"IndependentColonizationMinimumSuccessChanceThreshold"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>C4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4191</ID>
                      <Description>"IntelligenceMissionCounterIntelRatio"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>C8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4192</ID>
                      <Description>"IntelligenceMissionAggressiveness"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>CC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4193</ID>
                      <Description>"IntelligenceMissionCaution"</Description>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>D0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4194</ID>
                      <Description>"CaptureTargetConditionShip"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>D4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4195</ID>
                      <Description>"CaptureTargetConditionBase"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>D5</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4196</ID>
                      <Description>"CaptureEnlistMilitaryShip"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>D6</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4197</ID>
                      <Description>"CaptureDisassembleMilitaryShip"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>D7</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4198</ID>
                      <Description>"CaptureEnlistCivilianShip"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>D8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4199</ID>
                      <Description>"CaptureDisassembleCivilianShip"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>D9</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4200</ID>
                      <Description>"CaptureEnlistBase"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>DA</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4201</ID>
                      <Description>"UpgradeEnlistedMilitaryShips"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>DB</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4202</ID>
                      <Description>"UpgradeEnlistedCivilianShips"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>DC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4203</ID>
                      <Description>"CharacterHandlingWhenTakeoverShipOrColony"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>DD</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4204</ID>
                      <Description>"ExecuteCapturedForeignAgents"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>DE</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4205</ID>
                      <Description>"ExplorationWhenSendSurveyTeam"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>DF</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4206</ID>
                      <Description>"ExplorationWhenInvestigateRuins"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>E0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4207</ID>
                      <Description>"ExplorationWhenInvestigateAbandonedShips"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>E1</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4208</ID>
                      <Description>"AutoRefuelManualShips"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>E2</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4209</ID>
                      <Description>"AutoRepairManualShips"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>E3</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4210</ID>
                      <Description>"AutoRetrofitManualShips"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>E4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4211</ID>
                      <Description>"AutoRefuelManualFleets"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>E5</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4212</ID>
                      <Description>"AutoRepairManualFleets"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>E6</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4213</ID>
                      <Description>"AutoRetrofitManualFleets"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>E7</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4214</ID>
                      <Description>"AutoRetrofitAutomatedFleets"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>E8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4215</ID>
                      <Description>"NewShipsAutomatedMilitary"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>E9</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4216</ID>
                      <Description>"NewShipsAutomatedOtherState"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>EA</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4217</ID>
                      <Description>"ConstructionPrioritizeStateShipsInQueue"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>EB</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4218</ID>
                      <Description>"DockingPrioritizeStateShipsInQueue"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>EC</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4219</ID>
                      <Description>"BuyShipsFromOtherEmpiresWhen"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>ED</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4220</ID>
                      <Description>"RepairIndependentShips"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>EE</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4221</ID>
                      <Description>"BuildIndependentShips"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>EF</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4222</ID>
                      <Description>"EngageInTourism"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>F0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4223</ID>
                      <Description>"IntelligenceMissionAllowSabotageConstruction"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>F1</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4224</ID>
                      <Description>"IntelligenceMissionAllowStealTerritoryMap"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>F2</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4225</ID>
                      <Description>"IntelligenceMissionAllowStealGalaxyMap"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>F3</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4226</ID>
                      <Description>"IntelligenceMissionAllowStealOperationsMap"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>F4</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4227</ID>
                      <Description>"IntelligenceMissionAllowStealTechData"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>F5</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4228</ID>
                      <Description>"IntelligenceMissionAllowSabotageColony"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>F6</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4229</ID>
                      <Description>"IntelligenceMissionAllowDeepCover"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>F7</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4230</ID>
                      <Description>"IntelligenceMissionAllowDestroyBase"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>F8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4231</ID>
                      <Description>"IntelligenceMissionAllowAssassinate"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>F9</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4232</ID>
                      <Description>"IntelligenceMissionAllowInciteRevolution"</Description>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+20</Address>
                      <Offsets>
                        <Offset>FA</Offset>
                      </Offsets>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>4233</ID>
                  <Description>"General+ (read only?)"</Description>
                  <Options moHideChildren="1"/>
                  <GroupHeader>1</GroupHeader>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>4234</ID>
                      <Description>"DifficultyResearchSpeed"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+3D0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4235</ID>
                      <Description>"DifficultyColonyIncome"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+3D4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4236</ID>
                      <Description>"DifficultyColonyGrowthRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+3D8</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4237</ID>
                      <Description>"DifficultyDiplomacyTradeFactor"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+3DC</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4238</ID>
                      <Description>"DifficultyMiningRate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+3E0</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4239</ID>
                      <Description>"DifficultyWarWeariness"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+3E4</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4240</ID>
                      <Description>"MilitaryResearchRefactor"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+404</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4241</ID>
                      <Description>"MilitaryResearchRefactorMinor"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+408</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4242</ID>
                      <Description>"EmpireHappiness"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+40C</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4243</ID>
                      <Description>"EmpireId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+458</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4244</ID>
                      <Description>"GovernmentId"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>2 Bytes</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+45A</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4245</ID>
                      <Description>"Active"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+45F</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4246</ID>
                      <Description>"IsPlayer"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+460</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4247</ID>
                      <Description>"IsPirate"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+461</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4248</ID>
                      <Description>"IsDormant"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+462</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4249</ID>
                      <Description>"PirateFactionType"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+463</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4250</ID>
                      <Description>"SpecialMode"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>[i_draw_resource_empire_data_addr]+464</Address>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>4251</ID>
                  <Description>"Research Progress 1"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_draw_resource_empire_data_addr]+168</Address>
                  <Offsets>
                    <Offset>30</Offset>
                    <Offset>10</Offset>
                    <Offset>8</Offset>
                    <Offset>38</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>4252</ID>
                  <Description>"Research Progress 2"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_draw_resource_empire_data_addr]+168</Address>
                  <Offsets>
                    <Offset>30</Offset>
                    <Offset>18</Offset>
                    <Offset>8</Offset>
                    <Offset>38</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>4253</ID>
                  <Description>"Research Progress 4"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_draw_resource_empire_data_addr]+168</Address>
                  <Offsets>
                    <Offset>30</Offset>
                    <Offset>28</Offset>
                    <Offset>8</Offset>
                    <Offset>38</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>4254</ID>
                  <Description>"Research Progress 3"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>[i_draw_resource_empire_data_addr]+168</Address>
                  <Offsets>
                    <Offset>30</Offset>
                    <Offset>20</Offset>
                    <Offset>8</Offset>
                    <Offset>38</Offset>
                  </Offsets>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>4255</ID>
              <Description>"(Not Working) Faster research+ (for 1st queue project only)"</Description>
              <Options moHideChildren="1"/>
              <Color>4080FF</Color>
              <GroupHeader>1</GroupHeader>
              <CheatEntries>
                <CheatEntry>
                  <ID>4256</ID>
                  <Description>"Step 1. Faster Research init. "</Description>
                  <Options moHideChildren="1"/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-14
  Author : bbfox @ https://opencheattables.org/

  Revised:
  4/27: v1.0.3.7
}

[ENABLE]
{$lua}
if syntaxcheck then return 'define(INJECT_PERFORM_RESEARCH_EMPIRE, 0)' end
if memrec then print(memrec.Description) end
local scriptStrA = [[
aobscanregion(INJECT_PERFORM_RESEARCH_EMPIRE,"DistantWorlds.Types.Empire::PerformResearch"+2A8, "DistantWorlds.Types.Empire::PerformResearch"+400, 48 8B 8E 68 01 00 00 48 8B 41 38) // should be unique
registersymbol(INJECT_PERFORM_RESEARCH_EMPIRE)
 ]]

local scriptStrB = [[
aobscan(INJECT_PERFORM_RESEARCH_EMPIRE,48 8B 8E 68 01 00 00 48 8B 41 38) // should be unique
registersymbol(INJECT_PERFORM_RESEARCH_EMPIRE)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end

{$asm}
//aobscan(INJECT_PERFORM_RESEARCH_EMPIRE,48 8B 8E 68 01 00 00 48 8B 41 38) // should be unique
//aobscanregion(INJECT_PERFORM_RESEARCH_EMPIRE,"DistantWorlds.Types.Empire::PerformResearch"+2A8, "DistantWorlds.Types.Empire::PerformResearch"+400, 48 8B 8E 68 01 00 00 48 8B 41 38) // should be unique
//registersymbol(INJECT_PERFORM_RESEARCH_EMPIRE)
alloc(newmem,$1000,INJECT_PERFORM_RESEARCH_EMPIRE)

label(code)
label(return)
label(i_empire_research_base_addr)
label(is_empire_research_on)
label(i_num_of_elements)
label(vf_research_step)
label(vf_research_value)
label(vf_research_value_before)
label(i_empire_research_progress_addr)

newmem:

  cmp [is_empire_research_on], 1
  jne endp_off

  push rax
  mov ax, [EMPIRE_ID]
  cmp [rsi+00000460], ax
  pop rax
  jne endp_off



  // [[addr+168]+38] //Research -&gt; ResearchQueue
  mov rcx,[rsi+00000168]
  mov rcx,[rcx+38]

  push rax
  mov eax, 1
  mov [is_2nd_research_step_ok], eax

  lea rax, [rsi]
  mov [i_empire_research_base_addr], rax
  mov rax,[rcx+08]
  cmp [rax+08], 0 //array: number of elements
  pop rax
  je endp_off

  push rax
  mov eax, [rcx+18]
  mov [i_num_of_elements], eax //queue size
  // [[[[addr+168]+38]+08]+10] //Research -&gt; ResearchQueue -&gt; _items-&gt;Array[0]
  mov rcx,[rcx+08]
  mov rcx,[rcx+10]
  // [[[[addr+168]+38]+08]+10]+30
  // Research-&gt;ResearchQueue-&gt;_items-&gt;Array[0]-&gt;Progress
  lea rax, [rcx+30]
  mov [i_empire_research_progress_addr], rax

  vmovss xmm15, [rcx+30]
  vmovss [vf_research_value_before], xmm15
  vmovss xmm14, [vf_research_step]
  addss xmm15, xmm14
  vmovss [rcx+30], xmm15
  vmovss [vf_research_value], xmm15
  pop rax


  jmp endp
endp_off:
  mov [i_empire_research_progress_addr], 0

  push rax
  mov eax, 0
  mov [is_2nd_research_step_ok], eax
  pop rax

  jmp code
endp:

code:
  mov rcx,[rsi+00000168]
  jmp return

align 10 cc
  i_empire_research_base_addr:
  dq 0
  i_empire_research_progress_addr:
  dq 0
  is_empire_research_on:
  dd 1
  i_num_of_elements:
  dd 0
  vf_research_step:
  dd (float)12.0
  vf_research_value:
  dd 0
  vf_research_value_before:
  dd 0

INJECT_PERFORM_RESEARCH_EMPIRE:
  jmp newmem
  nop 2
return:

registersymbol(i_empire_research_progress_addr)
registersymbol(vf_research_value_before)
registersymbol(vf_research_value)
registersymbol(vf_research_step)
registersymbol(i_empire_research_base_addr)
registersymbol(is_empire_research_on)
registersymbol(i_num_of_elements)
//registersymbol(INJECT_PERFORM_RESEARCH_EMPIRE)

[DISABLE]

INJECT_PERFORM_RESEARCH_EMPIRE:
  db 48 8B 8E 68 01 00 00

unregistersymbol(*)
unregistersymbol(INJECT_PERFORM_RESEARCH_EMPIRE)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.Empire::PerformResearch+2D9

DistantWorlds.Types.Empire::PerformResearch+2AB: 48 8B 12              - mov rdx,[rdx]
DistantWorlds.Types.Empire::PerformResearch+2AE: 49 8D 4C 24 08        - lea rcx,[r12+08]
DistantWorlds.Types.Empire::PerformResearch+2B3: E8 38 B2 D8 5D        - call clr.dll+3FB0
DistantWorlds.Types.Empire::PerformResearch+2B8: 45 33 ED              - xor r13d,r13d
DistantWorlds.Types.Empire::PerformResearch+2BB: 45 85 F6              - test r14d,r14d
DistantWorlds.Types.Empire::PerformResearch+2BE: 0F 8E E6 05 00 00     - jng DistantWorlds.Types.Empire::PerformResearch+8AA
DistantWorlds.Types.Empire::PerformResearch+2C4: 48 8B 8E 68 01 00 00  - mov rcx,[rsi+00000168]
DistantWorlds.Types.Empire::PerformResearch+2CB: 48 8B 49 38           - mov rcx,[rcx+38]
DistantWorlds.Types.Empire::PerformResearch+2CF: 44 39 69 18           - cmp [rcx+18],r13d
DistantWorlds.Types.Empire::PerformResearch+2D3: 0F 8E C5 05 00 00     - jng DistantWorlds.Types.Empire::PerformResearch+89E
// ---------- INJECTING HERE ----------
DistantWorlds.Types.Empire::PerformResearch+2D9: 48 8B 8E 68 01 00 00  - mov rcx,[rsi+00000168]
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.Empire::PerformResearch+2E0: 48 8B 41 38           - mov rax,[rcx+38]
DistantWorlds.Types.Empire::PerformResearch+2E4: 48 89 85 B0 FE FF FF  - mov [rbp-00000150],rax
DistantWorlds.Types.Empire::PerformResearch+2EB: 44 3B 68 18           - cmp r13d,[rax+18]
DistantWorlds.Types.Empire::PerformResearch+2EF: 72 0F                 - jb DistantWorlds.Types.Empire::PerformResearch+300
DistantWorlds.Types.Empire::PerformResearch+2F1: B9 0D 00 00 00        - mov ecx,0000000D
DistantWorlds.Types.Empire::PerformResearch+2F6: BA 16 00 00 00        - mov edx,00000016
DistantWorlds.Types.Empire::PerformResearch+2FB: E8 30 67 53 5D        - call System.ThrowHelper::ThrowArgumentOutOfRangeException
DistantWorlds.Types.Empire::PerformResearch+300: 48 8B 85 B0 FE FF FF  - mov rax,[rbp-00000150]
DistantWorlds.Types.Empire::PerformResearch+307: 48 8B 48 08           - mov rcx,[rax+08]
DistantWorlds.Types.Empire::PerformResearch+30B: 44 3B 69 08           - cmp r13d,[rcx+08]
}
</AssemblerScript>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>4257</ID>
                      <Description>"is on?"</Description>
                      <DropDownListLink>is On??</DropDownListLink>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>is_empire_research_on</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4258</ID>
                      <Description>"Additional value per tick"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>vf_research_step</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4259</ID>
                      <Description>"Research Progress"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>[i_empire_research_base_addr]+168</Address>
                      <Offsets>
                        <Offset>30</Offset>
                        <Offset>10</Offset>
                        <Offset>8</Offset>
                        <Offset>38</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4260</ID>
                      <Description>"Stats+"</Description>
                      <Options moHideChildren="1"/>
                      <Color>808080</Color>
                      <GroupHeader>1</GroupHeader>
                      <CheatEntries>
                        <CheatEntry>
                          <ID>4261</ID>
                          <Description>"Number of queues"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <Color>808080</Color>
                          <VariableType>4 Bytes</VariableType>
                          <Address>i_num_of_elements</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4262</ID>
                          <Description>"Base addr"</Description>
                          <ShowAsHex>1</ShowAsHex>
                          <ShowAsSigned>0</ShowAsSigned>
                          <Color>808080</Color>
                          <VariableType>8 Bytes</VariableType>
                          <Address>i_empire_research_base_addr</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4263</ID>
                          <Description>"Research value"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <Color>808080</Color>
                          <VariableType>Float</VariableType>
                          <Address>vf_research_value</Address>
                        </CheatEntry>
                        <CheatEntry>
                          <ID>4264</ID>
                          <Description>"Research value (before)"</Description>
                          <ShowAsSigned>0</ShowAsSigned>
                          <Color>808080</Color>
                          <VariableType>Float</VariableType>
                          <Address>vf_research_value_before</Address>
                        </CheatEntry>
                      </CheatEntries>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>4265</ID>
                  <Description>"Step 2. Faster Research multiplier"</Description>
                  <Options moHideChildren="1"/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{ Game   : DistantWorlds2.exe
  Version: 
  Date   : 2022-03-15
  Author : bbfox@ https://opencheattables.org

  Revised:
  4/27: v1.0.3.7
}

[ENABLE]
{$lua}
if syntaxcheck then
  return [[
  define(INJECT_RESEARCH_MULTI,0)
  define(i_empire_research_base_addr,0)
  define(i_empire_research_progress_addr,0)
  ]]
end
if memrec then print(memrec.Description) end

local scriptStrA = [[
aobscanregion(INJECT_RESEARCH_MULTI, "DistantWorlds.Types.Empire::PerformResearch"+608, "DistantWorlds.Types.Empire::PerformResearch"+758, C4 E1 7A 58 40 30) // should be unique
registersymbol(INJECT_RESEARCH_MULTI)
 ]]

local scriptStrB = [[
aobscan(INJECT_RESEARCH_MULTI,C4 E1 7A 58 40 30) // should be unique
registersymbol(INJECT_RESEARCH_MULTI)
 ]]

  if (not autoAssemble(scriptStrA)) then
    if (not autoAssemble(scriptStrB)) then
      print('Cannot find AOB, please play game a while and try later. / or error found')
      error('failed')
    end
  end
{$asm}

//aobscan(INJECT_RESEARCH_MULTI,C4 E1 7A 58 40 30) // should be unique
//aobscanregion(INJECT_RESEARCH_MULTI, "DistantWorlds.Types.Empire::PerformResearch"+608, "DistantWorlds.Types.Empire::PerformResearch"+758, C4 E1 7A 58 40 30) // should be unique
//registersymbol(INJECT_RESEARCH_MULTI)
alloc(newmem,$1000,INJECT_RESEARCH_MULTI)

label(code)
label(return)
label(is_empire_research_s2_on)
label(vf_research_multi)

newmem:
  cmp [is_empire_research_s2_on], 1
  jne endp_pre

  push rax
  mov eax, [is_2nd_research_step_ok]
  cmp eax, 0
  pop rax
  je endp_pre
  cmp dword ptr [i_empire_research_base_addr], 0
  je endp_pre

  //check address if match
  push rbx
  push rcx
  mov rcx, [i_empire_research_progress_addr]
  lea rbx, [rax+30]
  cmp rcx, rbx
  pop rcx
  pop rbx
  jne endp

  vmovss xmm14, [vf_research_multi]
  vmulss xmm0, xmm0, xmm14
  jmp endp


endp_pre:
  push rax
  mov eax, 0
  mov [is_2nd_research_step_ok], eax
  pop rax

  jmp code
endp:

code:
  vaddss xmm0,xmm0,[rax+30]
  jmp return

align 10 cc
  is_empire_research_s2_on:
  dd 1
  vf_research_multi:
  dd (float)8


INJECT_RESEARCH_MULTI:
  jmp newmem
  nop
return:
registersymbol(vf_research_multi)
registersymbol(is_empire_research_s2_on)
//registersymbol(INJECT_RESEARCH_MULTI)

[DISABLE]

INJECT_RESEARCH_MULTI:
  db C4 E1 7A 58 40 30

unregistersymbol(*)
unregistersymbol(INJECT_RESEARCH_MULTI)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DistantWorlds.Types.Empire::PerformResearch+630

DistantWorlds.Types.Empire::PerformResearch+5FD: 48 8B 85 F0 FE FF FF           - mov rax,[rbp-00000110]
DistantWorlds.Types.Empire::PerformResearch+604: 80 78 4A 00                    - cmp byte ptr [rax+4A],00
DistantWorlds.Types.Empire::PerformResearch+608: 74 09                          - je DistantWorlds.Types.Empire::PerformResearch+613
DistantWorlds.Types.Empire::PerformResearch+60A: C4 61 32 59 0D 75 E5 DF FE     - vmulss xmm9,xmm9,[7FFC84217648]
DistantWorlds.Types.Empire::PerformResearch+613: 45 33 C0                       - xor r8d,r8d
DistantWorlds.Types.Empire::PerformResearch+616: C4 E1 78 57 C0                 - vxorps xmm0,xmm0,xmm0
DistantWorlds.Types.Empire::PerformResearch+61B: C4 61 78 2E C8                 - vucomiss xmm9,xmm0
DistantWorlds.Types.Empire::PerformResearch+620: 0F 86 78 02 00 00              - jbe DistantWorlds.Types.Empire::PerformResearch+89E
DistantWorlds.Types.Empire::PerformResearch+626: E9 49 02 00 00                 - jmp DistantWorlds.Types.Empire::PerformResearch+874
DistantWorlds.Types.Empire::PerformResearch+62B: C4 C1 78 28 C1                 - vmovaps xmm0,xmm9
// ---------- INJECTING HERE ----------
DistantWorlds.Types.Empire::PerformResearch+630: C4 E1 7A 58 40 30              - vaddss xmm0,xmm0,[rax+30]
// ---------- DONE INJECTING  ----------
DistantWorlds.Types.Empire::PerformResearch+636: C4 E1 7A 11 40 30              - vmovss [rax+30],xmm0
DistantWorlds.Types.Empire::PerformResearch+63C: C4 61 78 28 C8                 - vmovaps xmm9,xmm0
DistantWorlds.Types.Empire::PerformResearch+641: 48 B9 38 C0 DF 47 23 02 00 00  - mov rcx,0000022347DFC038
DistantWorlds.Types.Empire::PerformResearch+64B: 4C 8B 09                       - mov r9,[rcx]
DistantWorlds.Types.Empire::PerformResearch+64E: 48 89 85 F0 FE FF FF           - mov [rbp-00000110],rax
DistantWorlds.Types.Empire::PerformResearch+655: 4C 0F BF 50 44                 - movsx r10,word ptr [rax+44]
DistantWorlds.Types.Empire::PerformResearch+65A: 44 89 95 44 FF FF FF           - mov [rbp-000000BC],r10d
DistantWorlds.Types.Empire::PerformResearch+661: 4C 89 8D 88 FE FF FF           - mov [rbp-00000178],r9
DistantWorlds.Types.Empire::PerformResearch+668: 45 3B 51 18                    - cmp r10d,[r9+18]
DistantWorlds.Types.Empire::PerformResearch+66C: 0F 82 7A 01 00 00              - jb DistantWorlds.Types.Empire::PerformResearch+7EC
}
</AssemblerScript>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>4266</ID>
                      <Description>"is on?"</Description>
                      <DropDownListLink>is On??</DropDownListLink>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>is_empire_research_s2_on</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4267</ID>
                      <Description>"Research multiplier"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>vf_research_multi</Address>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>4268</ID>
                      <Description>"Step 2 valid?"</Description>
                      <DropDownListLink>is On??</DropDownListLink>
                      <ShowAsSigned>0</ShowAsSigned>
                      <Color>808080</Color>
                      <VariableType>4 Bytes</VariableType>
                      <Address>is_empire_research_s2_on</Address>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>4299</ID>
      <Description>"*** Distance Worlds 2 v1.0.8.3  /  https://opencheattables.com  /  CE 7.4+"</Description>
      <Color>400080</Color>
      <GroupHeader>1</GroupHeader>
    </CheatEntry>
  </CheatEntries>
  <UserdefinedSymbols/>
</CheatTable>
