<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="34">
  <CheatEntries>
    <CheatEntry>
      <ID>8</ID>
      <Description>"Ressources"</Description>
      <LastState Value="" RealAddress="00000000"/>
      <ShowAsSigned>0</ShowAsSigned>
      <GroupHeader>1</GroupHeader>
      <Address>"Nomads-Win64-Shipping.exe"+0395E2B0</Address>
      <Offsets>
        <Offset>0</Offset>
      </Offsets>
      <CheatEntries>
        <CheatEntry>
          <ID>9</ID>
          <Description>"Gold"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>Float</VariableType>
          <Address>+2af8</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>10</ID>
          <Description>"Mana"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>Float</VariableType>
          <Address>+2b04</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>23</ID>
          <Description>"Advancement Points (Research Pts)"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>Float</VariableType>
          <Address>+2b18</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>33</ID>
      <Description>"Full health for units + XP Bonus"</Description>
      <LastState Activated="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]
aobscanmodule(health,Nomads-Win64-Shipping.exe,F3 0F 58 83 EC 03 00 00) // should be unique
alloc(newmem,$1000,health)

label(code)
label(return)

newmem:
// rbx + 3ec = XP of unit
// rbx + 3f4 = current HP of unit
// rbx + 45c = max HP
  push eax
  mov eax,[rbx+000003EC]
  cmp eax,0
  je @f
  mov eax,(float)999999
  mov [rbx+3ec],eax // set XP
  mov eax,[rbx+45c]
  mov [rbx+3f4],eax
@@:
  pop eax
code:
  addss xmm0,[rbx+000003EC] // XP
  jmp return

health:
  jmp newmem
  nop 3
return:
registersymbol(health)

[DISABLE]
//code from here till the end of the code will be used to disable the cheat
health:
  db F3 0F 58 83 EC 03 00 00

unregistersymbol(health)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: Nomads-Win64-Shipping.exe.text+5AB53A

Nomads-Win64-Shipping.exe.text+5AB50E: 41 3B 82 90 00 00 00     - cmp eax,[r10+00000090]
Nomads-Win64-Shipping.exe.text+5AB515: 7F 4E                    - jg Nomads-Win64-Shipping.exe.text+5AB565
Nomads-Win64-Shipping.exe.text+5AB517: 48 8B C8                 - mov rcx,rax
Nomads-Win64-Shipping.exe.text+5AB51A: 49 8B 82 88 00 00 00     - mov rax,[r10+00000088]
Nomads-Win64-Shipping.exe.text+5AB521: 4C 39 1C C8              - cmp [rax+rcx*8],r11
Nomads-Win64-Shipping.exe.text+5AB525: 75 3E                    - jne Nomads-Win64-Shipping.exe.text+5AB565
Nomads-Win64-Shipping.exe.text+5AB527: 48 8B CB                 - mov rcx,rbx
Nomads-Win64-Shipping.exe.text+5AB52A: E8 71 58 DB FF           - call Nomads-Win64-Shipping.exe.text+360DA0
Nomads-Win64-Shipping.exe.text+5AB52F: F3 0F 10 83 F0 03 00 00  - movss xmm0,[rbx+000003F0]
Nomads-Win64-Shipping.exe.text+5AB537: 0F 57 C9                 - xorps xmm1,xmm1
// ---------- INJECTING HERE ----------
Nomads-Win64-Shipping.exe.text+5AB53A: F3 0F 58 83 EC 03 00 00  - addss xmm0,[rbx+000003EC]
// ---------- DONE INJECTING  ----------
Nomads-Win64-Shipping.exe.text+5AB542: F3 0F 2C C8              - cvttss2si ecx,xmm0
Nomads-Win64-Shipping.exe.text+5AB546: 85 C0                    - test eax,eax
Nomads-Win64-Shipping.exe.text+5AB548: 74 12                    - je Nomads-Win64-Shipping.exe.text+5AB55C
Nomads-Win64-Shipping.exe.text+5AB54A: 66 0F 6E C9              - movd xmm1,ecx
Nomads-Win64-Shipping.exe.text+5AB54E: 66 0F 6E C0              - movd xmm0,eax
Nomads-Win64-Shipping.exe.text+5AB552: 0F 5B C9                 - cvtdq2ps xmm1,xmm1
Nomads-Win64-Shipping.exe.text+5AB555: 0F 5B C0                 - cvtdq2ps xmm0,xmm0
Nomads-Win64-Shipping.exe.text+5AB558: F3 0F 5E C8              - divss xmm1,xmm0
Nomads-Win64-Shipping.exe.text+5AB55C: F3 0F 11 0F              - movss [rdi],xmm1
Nomads-Win64-Shipping.exe.text+5AB560: 89 06                    - mov [rsi],eax
}
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>11</ID>
      <Description>"Backup Ptrs to Gold"</Description>
      <Options moHideChildren="1"/>
      <LastState Value="" RealAddress="00000000"/>
      <Color>C0C0C0</Color>
      <GroupHeader>1</GroupHeader>
      <CheatEntries>
        <CheatEntry>
          <ID>12</ID>
          <Description>"pointerscan result"</Description>
          <VariableType>Float</VariableType>
          <Address>"Nomads-Win64-Shipping.exe"+0395E2B0</Address>
          <Offsets>
            <Offset>2AF8</Offset>
            <Offset>240</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>13</ID>
          <Description>"pointerscan result"</Description>
          <VariableType>Float</VariableType>
          <Address>"Nomads-Win64-Shipping.exe"+0395E2B0</Address>
          <Offsets>
            <Offset>2AF8</Offset>
            <Offset>1E8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>14</ID>
          <Description>"pointerscan result"</Description>
          <VariableType>Float</VariableType>
          <Address>"Nomads-Win64-Shipping.exe"+0395E2B0</Address>
          <Offsets>
            <Offset>2AF8</Offset>
            <Offset>18</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>15</ID>
          <Description>"pointerscan result"</Description>
          <VariableType>Float</VariableType>
          <Address>"Nomads-Win64-Shipping.exe"+0395E2B0</Address>
          <Offsets>
            <Offset>2AF8</Offset>
            <Offset>C8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>16</ID>
          <Description>"pointerscan result"</Description>
          <VariableType>Float</VariableType>
          <Address>"Nomads-Win64-Shipping.exe"+038B4A70</Address>
          <Offsets>
            <Offset>2AF8</Offset>
            <Offset>3A0</Offset>
            <Offset>0</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>17</ID>
          <Description>"pointerscan result"</Description>
          <VariableType>Float</VariableType>
          <Address>"Nomads-Win64-Shipping.exe"+03BADD28</Address>
          <Offsets>
            <Offset>2AF8</Offset>
            <Offset>3A0</Offset>
            <Offset>550</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>18</ID>
          <Description>"pointerscan result"</Description>
          <VariableType>Float</VariableType>
          <Address>"Nomads-Win64-Shipping.exe"+038B49D0</Address>
          <Offsets>
            <Offset>2AF8</Offset>
            <Offset>3A0</Offset>
            <Offset>30</Offset>
            <Offset>458</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>19</ID>
          <Description>"pointerscan result"</Description>
          <VariableType>Float</VariableType>
          <Address>"Nomads-Win64-Shipping.exe"+03BADD28</Address>
          <Offsets>
            <Offset>2AF8</Offset>
            <Offset>3A0</Offset>
            <Offset>3A8</Offset>
            <Offset>4B0</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
  <UserdefinedSymbols>
    <SymbolEntry>
      <Name>addy</Name>
      <Address>290878E0000</Address>
    </SymbolEntry>
    <SymbolEntry>
      <Name>ressoucesaddy</Name>
      <Address>290878E0010</Address>
    </SymbolEntry>
  </UserdefinedSymbols>
</CheatTable>
