<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="29">
  <CheatEntries>
    <CheatEntry>
      <ID>52</ID>
      <Description>"Health (freeze me). Full = 53"</Description>
      <LastState Value="53" Activated="1" RealAddress="07695FD9"/>
      <VariableType>Byte</VariableType>
      <Address>"ddtrilogy.exe"+00118028</Address>
      <Offsets>
        <Offset>3C1</Offset>
        <Offset>24</Offset>
      </Offsets>
    </CheatEntry>
    <CheatEntry>
      <ID>53</ID>
      <Description>"Debug"</Description>
      <Options moHideChildren="1"/>
      <LastState Value="" RealAddress="00000000"/>
      <GroupHeader>1</GroupHeader>
      <CheatEntries>
        <CheatEntry>
          <ID>18</ID>
          <Description>"always 3 Lifes left but Score is Zero"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

aobscanmodule(life,ddtrilogy.exe,0F B6 8E EA 03 00 00) // should be unique
alloc(newmem,$1000)

label(code)
label(return)

newmem:
  mov [esi+000003EA],#3

code:
  movzx ecx,byte ptr [esi+000003EA]
  jmp return

life:
  jmp newmem
  nop 2
return:
registersymbol(life)

[DISABLE]

life:
  db 0F B6 8E EA 03 00 00

unregistersymbol(life)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "ddtrilogy.exe"+183C6

"ddtrilogy.exe"+183A4: 57                    -  push edi
"ddtrilogy.exe"+183A5: E8 F6 03 04 00        -  call ddtrilogy.exe+587A0
"ddtrilogy.exe"+183AA: 57                    -  push edi
"ddtrilogy.exe"+183AB: 89 44 24 34           -  mov [esp+34],eax
"ddtrilogy.exe"+183AF: E8 3C 04 04 00        -  call ddtrilogy.exe+587F0
"ddtrilogy.exe"+183B4: 89 44 24 1C           -  mov [esp+1C],eax
"ddtrilogy.exe"+183B8: 83 FF 01              -  cmp edi,01
"ddtrilogy.exe"+183BB: 75 09                 -  jne ddtrilogy.exe+183C6
"ddtrilogy.exe"+183BD: 0F B6 8E 48 04 00 00  -  movzx ecx,byte ptr [esi+00000448]
"ddtrilogy.exe"+183C4: EB 07                 -  jmp ddtrilogy.exe+183CD
// ---------- INJECTING HERE ----------
"ddtrilogy.exe"+183C6: 0F B6 8E EA 03 00 00  -  movzx ecx,byte ptr [esi+000003EA]
// ---------- DONE INJECTING  ----------
"ddtrilogy.exe"+183CD: E8 5E 31 03 00        -  call ddtrilogy.exe+4B530
"ddtrilogy.exe"+183D2: 8B 74 24 30           -  mov esi,[esp+30]
"ddtrilogy.exe"+183D6: 89 44 24 34           -  mov [esp+34],eax
"ddtrilogy.exe"+183DA: B8 05 00 00 00        -  mov eax,00000005
"ddtrilogy.exe"+183DF: 3B F0                 -  cmp esi,eax
"ddtrilogy.exe"+183E1: 0F 4F F0              -  cmovg esi,eax
"ddtrilogy.exe"+183E4: E8 77 D6 FE FF        -  call ddtrilogy.exe+5A60
"ddtrilogy.exe"+183E9: 8B 0D 0C 69 DA 00     -  mov ecx,[ddtrilogy.exe+11690C]
"ddtrilogy.exe"+183EF: 83 78 10 00           -  cmp dword ptr [eax+10],00
"ddtrilogy.exe"+183F3: 75 4A                 -  jne ddtrilogy.exe+1843F
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>54</ID>
          <Description>"pointerscan result"</Description>
          <LastState Value="53" RealAddress="07695FD9"/>
          <VariableType>Byte</VariableType>
          <Address>"ddtrilogy.exe"+00118028</Address>
          <Offsets>
            <Offset>3C1</Offset>
            <Offset>24</Offset>
            <Offset>2C</Offset>
            <Offset>4</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>55</ID>
          <Description>"pointerscan result"</Description>
          <LastState Value="53" RealAddress="07695FD9"/>
          <VariableType>Byte</VariableType>
          <Address>"ddtrilogy.exe"+00118028</Address>
          <Offsets>
            <Offset>3C1</Offset>
            <Offset>24</Offset>
            <Offset>4C</Offset>
            <Offset>4</Offset>
            <Offset>84</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>56</ID>
          <Description>"pointerscan result"</Description>
          <LastState Value="53" RealAddress="07695FD9"/>
          <VariableType>Byte</VariableType>
          <Address>"ddtrilogy.exe"+00118028</Address>
          <Offsets>
            <Offset>3C1</Offset>
            <Offset>24</Offset>
            <Offset>34</Offset>
            <Offset>C</Offset>
            <Offset>88</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>57</ID>
          <Description>"pointerscan result"</Description>
          <LastState Value="53" RealAddress="07695FD9"/>
          <VariableType>Byte</VariableType>
          <Address>"ddtrilogy.exe"+00118028</Address>
          <Offsets>
            <Offset>3C1</Offset>
            <Offset>24</Offset>
            <Offset>34</Offset>
            <Offset>C</Offset>
            <Offset>8C</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>58</ID>
          <Description>"pointerscan result"</Description>
          <LastState Value="53" RealAddress="07695FD9"/>
          <VariableType>Byte</VariableType>
          <Address>"ddtrilogy.exe"+00118028</Address>
          <Offsets>
            <Offset>3C1</Offset>
            <Offset>24</Offset>
            <Offset>24</Offset>
            <Offset>4</Offset>
            <Offset>B0</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>59</ID>
          <Description>"pointerscan result"</Description>
          <LastState Value="53" RealAddress="07695FD9"/>
          <VariableType>Byte</VariableType>
          <Address>"ddtrilogy.exe"+00118028</Address>
          <Offsets>
            <Offset>3C1</Offset>
            <Offset>24</Offset>
            <Offset>24</Offset>
            <Offset>4</Offset>
            <Offset>80</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
  <UserdefinedSymbols/>
</CheatTable>
