<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="45">
  <CheatEntries>
    <CheatEntry>
      <ID>15</ID>
      <Description>"[ACTIVATE]"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>// Original Code by G40sty.
[ENABLE]
{$lua}
local gameName = "Aliens: Dark Descent"
local gameProcess = "AliensDarkDescentGameSteam-Win64-Shipping.exe"
if getProcessIDFromProcessName(gameProcess) ~= nil then
   if readInteger(process) == nil then
      openProcess(gameProcess)
   else
       if readInteger(process) ~= readInteger(gameProcess) then
          openProcess(gameProcess)
      end
   end
else
    beep() error(showMessage(string.format("%s is not running.",gameName)))
end
--; Auto Attach Process For User
if syntaxcheck then return end
if messageDialog([[
Copyright © 2023 OpenCheatTables.com
Table Creator: Marcus101RR
Would you like to read additional information?
]],mtInformation,mbYes,mbNo) == mrYes then
messageDialog("This information has been added to deter users of FRF (Fearless Revolution Forums) to violate the GPL License. You are hereby informed that use of this table is strictly forbidden from distribution, upload, or alterations with or without consent from this author on FRF. All other sources are allowed with permission.")
else
end


[DISABLE]


</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>16</ID>
          <Description>"[POINTERS]"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

define(ADD_Player,AliensDarkDescentGameSteam-Win64-Shipping.exe+5826090)
define(ADD_Otago,AliensDarkDescentGameSteam-Win64-Shipping.exe+583E1C0)
define(ADD_Squad,AliensDarkDescentGameSteam-Win64-Shipping.exe+5706828)

registersymbol(ADD_Player)
registersymbol(ADD_Otago)
registersymbol(ADD_Squad)

[DISABLE]
unregistersymbol(ADD_Player)
unregistersymbol(ADD_Otago)
unregistersymbol(ADD_Squad)
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>44</ID>
              <Description>"Deployment"</Description>
              <Options moHideChildren="1"/>
              <GroupHeader>1</GroupHeader>
              <CheatEntries>
                <CheatEntry>
                  <ID>38</ID>
                  <Description>"Tool"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Byte</VariableType>
                  <Address>ADD_Player</Address>
                  <Offsets>
                    <Offset>8</Offset>
                    <Offset>B8</Offset>
                    <Offset>60</Offset>
                    <Offset>1A8</Offset>
                    <Offset>688</Offset>
                    <Offset>30</Offset>
                  </Offsets>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>39</ID>
                      <Description>"Max"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>ADD_Player</Address>
                      <Offsets>
                        <Offset>C</Offset>
                        <Offset>B8</Offset>
                        <Offset>60</Offset>
                        <Offset>1A8</Offset>
                        <Offset>688</Offset>
                        <Offset>30</Offset>
                      </Offsets>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>11</ID>
                  <Description>"Medical Supplies"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Byte</VariableType>
                  <Address>ADD_Player</Address>
                  <Offsets>
                    <Offset>30</Offset>
                    <Offset>B8</Offset>
                    <Offset>60</Offset>
                    <Offset>1A8</Offset>
                    <Offset>688</Offset>
                    <Offset>30</Offset>
                  </Offsets>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>12</ID>
                      <Description>"Max"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>ADD_Player</Address>
                      <Offsets>
                        <Offset>34</Offset>
                        <Offset>B8</Offset>
                        <Offset>60</Offset>
                        <Offset>1A8</Offset>
                        <Offset>688</Offset>
                        <Offset>30</Offset>
                      </Offsets>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>42</ID>
                  <Description>"Sentry Gun"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Byte</VariableType>
                  <Address>ADD_Player</Address>
                  <Offsets>
                    <Offset>58</Offset>
                    <Offset>B8</Offset>
                    <Offset>60</Offset>
                    <Offset>1A8</Offset>
                    <Offset>688</Offset>
                    <Offset>30</Offset>
                  </Offsets>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>43</ID>
                      <Description>"Max"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>ADD_Player</Address>
                      <Offsets>
                        <Offset>5C</Offset>
                        <Offset>B8</Offset>
                        <Offset>60</Offset>
                        <Offset>1A8</Offset>
                        <Offset>688</Offset>
                        <Offset>30</Offset>
                      </Offsets>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>10</ID>
                  <Description>"Ammo Clip"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Byte</VariableType>
                  <Address>ADD_Player</Address>
                  <Offsets>
                    <Offset>80</Offset>
                    <Offset>B8</Offset>
                    <Offset>60</Offset>
                    <Offset>1A8</Offset>
                    <Offset>688</Offset>
                    <Offset>30</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>40</ID>
                  <Description>"Command Points"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Byte</VariableType>
                  <Address>ADD_Player</Address>
                  <Offsets>
                    <Offset>A8</Offset>
                    <Offset>B8</Offset>
                    <Offset>60</Offset>
                    <Offset>1A8</Offset>
                    <Offset>688</Offset>
                    <Offset>30</Offset>
                  </Offsets>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>41</ID>
                      <Description>"Max"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Byte</VariableType>
                      <Address>ADD_Player</Address>
                      <Offsets>
                        <Offset>AC</Offset>
                        <Offset>B8</Offset>
                        <Offset>60</Offset>
                        <Offset>1A8</Offset>
                        <Offset>688</Offset>
                        <Offset>30</Offset>
                      </Offsets>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>48</ID>
              <Description>"Otago"</Description>
              <Options moHideChildren="1"/>
              <GroupHeader>1</GroupHeader>
              <CheatEntries>
                <CheatEntry>
                  <ID>47</ID>
                  <Description>"Materials"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>2 Bytes</VariableType>
                  <Address>ADD_Otago</Address>
                  <Offsets>
                    <Offset>8</Offset>
                    <Offset>B0</Offset>
                    <Offset>620</Offset>
                    <Offset>120</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>49</ID>
                  <Description>"Xenosamples"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>2 Bytes</VariableType>
                  <Address>ADD_Otago</Address>
                  <Offsets>
                    <Offset>30</Offset>
                    <Offset>B0</Offset>
                    <Offset>620</Offset>
                    <Offset>120</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>50</ID>
                  <Description>"Tools"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>2 Bytes</VariableType>
                  <Address>ADD_Otago</Address>
                  <Offsets>
                    <Offset>58</Offset>
                    <Offset>B0</Offset>
                    <Offset>620</Offset>
                    <Offset>120</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>51</ID>
                  <Description>"Medical Supplies"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>2 Bytes</VariableType>
                  <Address>ADD_Otago</Address>
                  <Offsets>
                    <Offset>6C</Offset>
                    <Offset>B0</Offset>
                    <Offset>620</Offset>
                    <Offset>120</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>52</ID>
                  <Description>"Physicians Used"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>2 Bytes</VariableType>
                  <Address>ADD_Otago</Address>
                  <Offsets>
                    <Offset>36C</Offset>
                    <Offset>38</Offset>
                    <Offset>98</Offset>
                    <Offset>30</Offset>
                  </Offsets>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>53</ID>
                      <Description>"Max"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>2 Bytes</VariableType>
                      <Address>ADD_Otago</Address>
                      <Offsets>
                        <Offset>368</Offset>
                        <Offset>38</Offset>
                        <Offset>98</Offset>
                        <Offset>30</Offset>
                      </Offsets>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>61</ID>
              <Description>"Squad"</Description>
              <Options moHideChildren="1"/>
              <GroupHeader>1</GroupHeader>
              <CheatEntries>
                <CheatEntry>
                  <ID>63</ID>
                  <Description>"Marine 1"</Description>
                  <Options moHideChildren="1"/>
                  <GroupHeader>1</GroupHeader>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>58</ID>
                      <Description>"Base"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>ADD_Squad</Address>
                      <Offsets>
                        <Offset>0</Offset>
                        <Offset>2A0</Offset>
                        <Offset>350</Offset>
                        <Offset>250</Offset>
                        <Offset>18</Offset>
                        <Offset>90</Offset>
                        <Offset>B8</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>68</ID>
                      <Description>"HP"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>ADD_Squad</Address>
                      <Offsets>
                        <Offset>108</Offset>
                        <Offset>B0</Offset>
                        <Offset>328</Offset>
                        <Offset>350</Offset>
                        <Offset>40</Offset>
                        <Offset>18</Offset>
                        <Offset>40</Offset>
                        <Offset>D0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>67</ID>
                      <Description>"Ammo"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>ADD_Squad</Address>
                      <Offsets>
                        <Offset>3D8</Offset>
                        <Offset>2A0</Offset>
                        <Offset>350</Offset>
                        <Offset>250</Offset>
                        <Offset>18</Offset>
                        <Offset>90</Offset>
                        <Offset>B8</Offset>
                      </Offsets>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>69</ID>
                  <Description>"Marine 2"</Description>
                  <Options moHideChildren="1"/>
                  <GroupHeader>1</GroupHeader>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>70</ID>
                      <Description>"HP"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>ADD_Squad</Address>
                      <Offsets>
                        <Offset>108</Offset>
                        <Offset>B0</Offset>
                        <Offset>328</Offset>
                        <Offset>350</Offset>
                        <Offset>40</Offset>
                        <Offset>18</Offset>
                        <Offset>80</Offset>
                        <Offset>D0</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>59</ID>
                      <Description>"Ammo"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>4 Bytes</VariableType>
                      <Address>ADD_Squad</Address>
                      <Offsets>
                        <Offset>3D8</Offset>
                        <Offset>2A0</Offset>
                        <Offset>350</Offset>
                        <Offset>250</Offset>
                        <Offset>18</Offset>
                        <Offset>D0</Offset>
                        <Offset>B8</Offset>
                      </Offsets>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>71</ID>
          <Description>"[SCRIPTS]"</Description>
          <Options moHideChildren="1"/>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>115771</ID>
              <Description>"Get Marine"</Description>
              <Options moHideChildren="1"/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

aobscanmodule(getMarine,AliensDarkDescentGameSteam-Win64-Shipping.exe,48 8B 9F 90 06 00 00) // should be unique
alloc(newmem,$64,getMarine)

label(code)
label(return)

label(gMarine)
registersymbol(gMarine)

newmem:

code:
  mov rbx,[rdi+00000690]
  mov [gMarine],rbx
  jmp return

gMarine:
  dq 0

getMarine:
  jmp newmem
  nop 2
return:
registersymbol(getMarine)

[DISABLE]

getMarine:
  db 48 8B 9F 90 06 00 00

unregistersymbol(getMarine)
dealloc(newmem)
unregistersymbol(gMarine)

{
// ORIGINAL CODE - INJECTION POINT: AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCDB

AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCB7: 75 05                    - jne AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCBE
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCB9: 45 84 FF                 - test r15b,r15b
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCBC: 74 15                    - je AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCD3
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCBE: 41 B1 02                 - mov r9b,02
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCC1: C6 44 24 20 00           - mov byte ptr [rsp+20],00
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCC6: 4C 8B C7                 - mov r8,rdi
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCC9: B2 01                    - mov dl,01
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCCB: 48 8B CD                 - mov rcx,rbp
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCCE: E8 9D 12 15 00           - call AliensDarkDescentGameSteam-Win64-Shipping.exe+13E0F70
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCD3: 4C 8B BC 24 98 00 00 00  - mov r15,[rsp+00000098]
// ---------- INJECTING HERE ----------
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCDB: 48 8B 9F 90 06 00 00     - mov rbx,[rdi+00000690]
// ---------- DONE INJECTING  ----------
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCE2: E8 79 54 2F 00           - call AliensDarkDescentGameSteam-Win64-Shipping.exe+1585160
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCE7: 4C 8B 03                 - mov r8,[rbx]
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCEA: 48 8B D0                 - mov rdx,rax
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCED: 48 8B CB                 - mov rcx,rbx
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCF0: 41 FF 90 20 06 00 00     - call qword ptr [r8+00000620]
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCF7: 48 85 C0                 - test rax,rax
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCFA: 74 0A                    - je AliensDarkDescentGameSteam-Win64-Shipping.exe+128FD06
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCFC: B2 01                    - mov dl,01
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FCFE: 48 8B C8                 - mov rcx,rax
AliensDarkDescentGameSteam-Win64-Shipping.exe+128FD01: E8 9A 57 0D 00           - call AliensDarkDescentGameSteam-Win64-Shipping.exe+13654A0
}
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>115772</ID>
                  <Description>"Base"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>gMarine</Address>
                  <Offsets>
                    <Offset>0</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115773</ID>
                  <Description>"Name"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>String</VariableType>
                  <Length>16</Length>
                  <Unicode>1</Unicode>
                  <CodePage>0</CodePage>
                  <ZeroTerminate>1</ZeroTerminate>
                  <Address>gMarine</Address>
                  <Offsets>
                    <Offset>0</Offset>
                    <Offset>668</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115774</ID>
                  <Description>"XP"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>gMarine</Address>
                  <Offsets>
                    <Offset>A64</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115775</ID>
                  <Description>"Level"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>gMarine</Address>
                  <Offsets>
                    <Offset>A6A</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115776</ID>
                  <Description>"HP"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>gMarine</Address>
                  <Offsets>
                    <Offset>108</Offset>
                    <Offset>658</Offset>
                  </Offsets>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>115777</ID>
                      <Description>"Initial"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>gMarine</Address>
                      <Offsets>
                        <Offset>110</Offset>
                        <Offset>658</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>115778</ID>
                      <Description>"Max"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>gMarine</Address>
                      <Offsets>
                        <Offset>110</Offset>
                        <Offset>658</Offset>
                      </Offsets>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>115779</ID>
                  <Description>"Armor"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>gMarine</Address>
                  <Offsets>
                    <Offset>140</Offset>
                    <Offset>658</Offset>
                  </Offsets>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>115780</ID>
                      <Description>"Initial"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>gMarine</Address>
                      <Offsets>
                        <Offset>144</Offset>
                        <Offset>658</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>115781</ID>
                      <Description>"Max"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>gMarine</Address>
                      <Offsets>
                        <Offset>148</Offset>
                        <Offset>658</Offset>
                      </Offsets>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>115782</ID>
                  <Description>"Weapon"</Description>
                  <GroupHeader>1</GroupHeader>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>115784</ID>
                      <Description>"Min Damage"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>gMarine</Address>
                      <Offsets>
                        <Offset>30</Offset>
                        <Offset>60</Offset>
                        <Offset>378</Offset>
                        <Offset>170</Offset>
                        <Offset>1078</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>115787</ID>
                      <Description>"Max Damage"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>gMarine</Address>
                      <Offsets>
                        <Offset>34</Offset>
                        <Offset>60</Offset>
                        <Offset>378</Offset>
                        <Offset>170</Offset>
                        <Offset>1078</Offset>
                      </Offsets>
                    </CheatEntry>
                    <CheatEntry>
                      <ID>115786</ID>
                      <Description>"Min Spread"</Description>
                      <ShowAsSigned>0</ShowAsSigned>
                      <VariableType>Float</VariableType>
                      <Address>gMarine</Address>
                      <Offsets>
                        <Offset>48</Offset>
                        <Offset>378</Offset>
                        <Offset>170</Offset>
                        <Offset>1078</Offset>
                      </Offsets>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>115791</ID>
              <Description>"Get Marine (Barracks)"</Description>
              <Options moHideChildren="1"/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

aobscanmodule(getMarineOtago,AliensDarkDescentGameSteam-Win64-Shipping.exe,8B 81 68 0A 00 00 2B) // should be unique
alloc(newmem,$64,getMarineOtago)

label(code)
label(return)

label(gMarineOtago)
registersymbol(gMarineOtago)

newmem:

code:
  mov [gMarineOtago],rcx
  mov eax,[rcx+00000A68]
  jmp return

gMarineOtago:
  dq 0

getMarineOtago:
  jmp newmem
  nop
return:
registersymbol(getMarineOtago)

[DISABLE]

getMarineOtago:
  db 8B 81 68 0A 00 00

unregistersymbol(getMarineOtago)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: AliensDarkDescentGameSteam-Win64-Shipping.exe+13740B0

AliensDarkDescentGameSteam-Win64-Shipping.exe+1374088: 0F 57 C0                 - xorps xmm0,xmm0
AliensDarkDescentGameSteam-Win64-Shipping.exe+137408B: 48 83 C4 28              - add rsp,28
AliensDarkDescentGameSteam-Win64-Shipping.exe+137408F: C3                       - ret 
AliensDarkDescentGameSteam-Win64-Shipping.exe+1374090: 41 C7 00 00 00 00 00     - mov [r8],00000000
AliensDarkDescentGameSteam-Win64-Shipping.exe+1374097: 8B 81 14 04 00 00        - mov eax,[rcx+00000414]
AliensDarkDescentGameSteam-Win64-Shipping.exe+137409D: F2 0F 10 81 0C 04 00 00  - movsd xmm0,[rcx+0000040C]
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740A5: F2 0F 11 02              - movsd [rdx],xmm0
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740A9: 89 42 08                 - mov [rdx+08],eax
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740AC: 48 8B C2                 - mov rax,rdx
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740AF: C3                       - ret 
// ---------- INJECTING HERE ----------
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740B0: 8B 81 68 0A 00 00        - mov eax,[rcx+00000A68]
// ---------- DONE INJECTING  ----------
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740B6: 2B 81 6C 0A 00 00        - sub eax,[rcx+00000A6C]
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740BC: C3                       - ret 
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740BD: CC                       - int 3 
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740BE: CC                       - int 3 
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740BF: CC                       - int 3 
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740C0: 48 8D 81 10 03 00 00     - lea rax,[rcx+00000310]
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740C7: C3                       - ret 
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740C8: CC                       - int 3 
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740C9: CC                       - int 3 
AliensDarkDescentGameSteam-Win64-Shipping.exe+13740CA: CC                       - int 3 
}
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>115792</ID>
                  <Description>"Base"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>gMarineOtago</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>115793</ID>
                  <Description>"Trait"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>gMarineOtago</Address>
                  <Offsets>
                    <Offset>970</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115794</ID>
                  <Description>"Trauma"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>gMarineOtago</Address>
                  <Offsets>
                    <Offset>9A0</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115806</ID>
                  <Description>"Trauma Points"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>gMarineOtago</Address>
                  <Offsets>
                    <Offset>9AC</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115807</ID>
                  <Description>"Trauma Level"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>gMarineOtago</Address>
                  <Offsets>
                    <Offset>9B0</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115796</ID>
                  <Description>"XP"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>gMarineOtago</Address>
                  <Offsets>
                    <Offset>A64</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115795</ID>
                  <Description>"Level"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>gMarineOtago</Address>
                  <Offsets>
                    <Offset>A68</Offset>
                  </Offsets>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>115799</ID>
              <Description>"Get Weapon (Barracks)"</Description>
              <Options moHideChildren="1"/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

aobscanmodule(getWeapon,AliensDarkDescentGameSteam-Win64-Shipping.exe,48 8B 8F 70 01 00 00 48 85 C9 74 0A 41 B0 01 33 D2 E8 88) // should be unique
alloc(newmem,$64,getWeapon)

label(code)
label(return)

label(gWeapon)
registersymbol(gWeapon)

newmem:

code:
  mov [gWeapon],rdi
  mov rcx,[rdi+00000170]
  jmp return

gWeapon:
  dq 0

getWeapon:
  jmp newmem
  nop 2
return:
registersymbol(getWeapon)

[DISABLE]

getWeapon:
  db 48 8B 8F 70 01 00 00

unregistersymbol(getWeapon)
dealloc(newmem)
unregistersymbol(gWeapon)
{
// ORIGINAL CODE - INJECTION POINT: AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95A2

AliensDarkDescentGameSteam-Win64-Shipping.exe+13C9576: 41 B8 01 00 00 00     - mov r8d,00000001
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C957C: 48 8D 15 BD 4E E7 02  - lea rdx,[AliensDarkDescentGameSteam-Win64-Shipping.exe+423E440]
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C9583: 48 8D 4C 24 60        - lea rcx,[rsp+60]
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C9588: E8 D3 ED 42 00        - call AliensDarkDescentGameSteam-Win64-Shipping.exe+17F8360
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C958D: 48 8B D0              - mov rdx,rax
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C9590: 48 8D 4C 24 68        - lea rcx,[rsp+68]
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C9595: 41 B0 01              - mov r8b,01
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C9598: E8 53 B8 98 01        - call AliensDarkDescentGameSteam-Win64-Shipping.exe+2D54DF0
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C959D: 48 3B 18              - cmp rbx,[rax]
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95A0: 75 1F                 - jne AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95C1
// ---------- INJECTING HERE ----------
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95A2: 48 8B 8F 70 01 00 00  - mov rcx,[rdi+00000170]
// ---------- DONE INJECTING  ----------
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95A9: 48 85 C9              - test rcx,rcx
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95AC: 74 0A                 - je AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95B8
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95AE: 41 B0 01              - mov r8b,01
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95B1: 33 D2                 - xor edx,edx
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95B3: E8 88 3C A6 01        - call AliensDarkDescentGameSteam-Win64-Shipping.exe+2E2D240
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95B8: 48 89 B7 70 01 00 00  - mov [rdi+00000170],rsi
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95BF: EB 4D                 - jmp AliensDarkDescentGameSteam-Win64-Shipping.exe+13C960E
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95C1: 41 B8 01 00 00 00     - mov r8d,00000001
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95C7: 48 8D 15 AA 4E E7 02  - lea rdx,[AliensDarkDescentGameSteam-Win64-Shipping.exe+423E478]
AliensDarkDescentGameSteam-Win64-Shipping.exe+13C95CE: 48 8D 4C 24 60        - lea rcx,[rsp+60]
}
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>115800</ID>
                  <Description>"Min Damage"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>gWeapon</Address>
                  <Offsets>
                    <Offset>30</Offset>
                    <Offset>60</Offset>
                    <Offset>378</Offset>
                    <Offset>170</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115801</ID>
                  <Description>"Max Damage"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>gWeapon</Address>
                  <Offsets>
                    <Offset>34</Offset>
                    <Offset>60</Offset>
                    <Offset>378</Offset>
                    <Offset>170</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115802</ID>
                  <Description>"Critical Chance"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>gWeapon</Address>
                  <Offsets>
                    <Offset>44</Offset>
                    <Offset>60</Offset>
                    <Offset>378</Offset>
                    <Offset>170</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115803</ID>
                  <Description>"Dismember Chance"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>gWeapon</Address>
                  <Offsets>
                    <Offset>48</Offset>
                    <Offset>60</Offset>
                    <Offset>378</Offset>
                    <Offset>170</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115804</ID>
                  <Description>"Ammo Clip Size"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>gWeapon</Address>
                  <Offsets>
                    <Offset>94</Offset>
                    <Offset>378</Offset>
                    <Offset>170</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>115805</ID>
                  <Description>"Range"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Float</VariableType>
                  <Address>gWeapon</Address>
                  <Offsets>
                    <Offset>9C</Offset>
                    <Offset>378</Offset>
                    <Offset>170</Offset>
                  </Offsets>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>37</ID>
          <Description>"[DEBUG]"</Description>
          <Options moHideChildren="1"/>
          <Color>0000FF</Color>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>65</ID>
              <Description>"Fetch Base Addresses"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>{$lua}
if syntaxcheck then return end
[ENABLE]
  print(string.format("Fetching Base Addresses..."))

  local aobList = {
  "48 8B 05 ?? ?? ?? ?? 49 8B D3 45 33 C0 48 8B 0A 48 39 81 80 02 00 00",
  "48 8D 05 ?? ?? ?? ?? 48 83 C4 28 C3 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 83 3D ?? ?? ?? ?? FF 75 DF 66 0F 6F 05 ?? ?? ?? ?? 48 8D 05 ?? ?? ?? ?? 48 89 5C 24 20 48 8D 0D ?? ?? ?? ?? 33 DB C7 05",
  "48 8B 05 ?? ?? ?? ?? 48 8B 48 20 48 8B 01 FF 90 48 01 00 00"
  }
  local aobNames = {
  "ADD_Otago",
  "ADD_Player (+D0)",
  "ADD_Squad"
  }
  local xbase = readInteger(process)and GetAddress(process)
  print(string.format("Base: %X",xbase))
  for i = 1, #aobList do
        local aob = AOBScan(aobList[i],"+X*C*W")
        local instruct = getAddressSafe(aob[0])
        local distance = getAddressSafe(instruct)+3
        distance = readInteger(distance)

        local instructSize = getInstructionSize(instruct)

        local address = (instruct + distance + instructSize) - xbase
        print(string.format("%s: %s+%X",aobNames[i],process,address))
  end
[DISABLE]
</AssemblerScript>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
  <UserdefinedSymbols/>
  <Comments>1.0
- Initial Release
</Comments>
</CheatTable>
