<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="32">
  <CheatEntries>
    <CheatEntry>
      <ID>1</ID>
      <Description>"F1: do not spend attribute points"</Description>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(bonuspoints,Wiz8.exe,29 06 01 44 BE 08) // should be unique
alloc(newmem,$1000)

label(code)
label(return)

newmem:

code:
  // sub [esi],eax
  add [esi+edi*4+08],eax
  jmp return

bonuspoints:
  jmp newmem
  nop
return:
registersymbol(bonuspoints)

[DISABLE]

bonuspoints:
  db 29 06 01 44 BE 08

unregistersymbol(bonuspoints)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: Wiz8.exe+157A54

Wiz8.exe+157A2E: 7E 04                 - jle Wiz8.exe+157A34
Wiz8.exe+157A30: 2B CB                 - sub ecx,ebx
Wiz8.exe+157A32: 8B C1                 - mov eax,ecx
Wiz8.exe+157A34: 8B 6C 24 14           - mov ebp,[esp+14]
Wiz8.exe+157A38: 8D 0C BF              - lea ecx,[edi+edi*4]
Wiz8.exe+157A3B: 8B 94 8D E5 00 00 00  - mov edx,[ebp+ecx*4+000000E5]
Wiz8.exe+157A42: 8D 4C 8D 00           - lea ecx,[ebp+ecx*4+00]
Wiz8.exe+157A46: 03 D0                 - add edx,eax
Wiz8.exe+157A48: 89 91 E5 00 00 00     - mov [ecx+000000E5],edx
Wiz8.exe+157A4E: 01 81 E9 00 00 00     - add [ecx+000000E9],eax
// ---------- INJECTING HERE ----------
Wiz8.exe+157A54: 29 06                 - sub [esi],eax
// ---------- DONE INJECTING  ----------
Wiz8.exe+157A56: 01 44 BE 08           - add [esi+edi*4+08],eax
Wiz8.exe+157A5A: 83 3E 00              - cmp dword ptr [esi],00
Wiz8.exe+157A5D: BB 01 00 00 00        - mov ebx,00000001
Wiz8.exe+157A62: 7E 15                 - jle Wiz8.exe+157A79
Wiz8.exe+157A64: 33 C0                 - xor eax,eax
Wiz8.exe+157A66: 8D 4E 08              - lea ecx,[esi+08]
Wiz8.exe+157A69: 8B 11                 - mov edx,[ecx]
Wiz8.exe+157A6B: 3B 51 20              - cmp edx,[ecx+20]
Wiz8.exe+157A6E: 7C 69                 - jl Wiz8.exe+157AD9
Wiz8.exe+157A70: 40                    - inc eax
}
</AssemblerScript>
      <Hotkeys>
        <Hotkey>
          <Action>Toggle Activation</Action>
          <Keys>
            <Key>112</Key>
          </Keys>
          <ID>0</ID>
          <ActivateSound>Activate</ActivateSound>
          <DeactivateSound>Deactivate</DeactivateSound>
        </Hotkey>
      </Hotkeys>
    </CheatEntry>
    <CheatEntry>
      <ID>38</ID>
      <Description>"F2: Invulnerability"</Description>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(health,Wiz8.exe,89 87 11 0B 00 00) // should be unique
alloc(newmem,$1000)

label(code)
label(return)

newmem:

code:
  // mov [edi+00000B11],eax
  jmp return

health:
  jmp newmem
  nop
return:
registersymbol(health)

[DISABLE]

health:
  db 89 87 11 0B 00 00

unregistersymbol(health)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: Wiz8.exe+12AAB0

Wiz8.exe+12AA9D: 5D                 - pop ebp
Wiz8.exe+12AA9E: 5B                 - pop ebx
Wiz8.exe+12AA9F: C3                 - ret 
Wiz8.exe+12AAA0: 8B 87 11 0B 00 00  - mov eax,[edi+00000B11]
Wiz8.exe+12AAA6: 3B D8              - cmp ebx,eax
Wiz8.exe+12AAA8: 76 02              - jna Wiz8.exe+12AAAC
Wiz8.exe+12AAAA: 8B D8              - mov ebx,eax
Wiz8.exe+12AAAC: 2B C3              - sub eax,ebx
Wiz8.exe+12AAAE: 53                 - push ebx
Wiz8.exe+12AAAF: 56                 - push esi
// ---------- INJECTING HERE ----------
Wiz8.exe+12AAB0: 89 87 11 0B 00 00  - mov [edi+00000B11],eax
// ---------- DONE INJECTING  ----------
Wiz8.exe+12AAB6: E8 85 01 07 00     - call Wiz8.exe+19AC40
Wiz8.exe+12AABB: 8B 87 11 0B 00 00  - mov eax,[edi+00000B11]
Wiz8.exe+12AAC1: 83 C4 08           - add esp,08
Wiz8.exe+12AAC4: 85 C0              - test eax,eax
Wiz8.exe+12AAC6: 0F 85 C7 00 00 00  - jne Wiz8.exe+12AB93
Wiz8.exe+12AACC: 85 ED              - test ebp,ebp
Wiz8.exe+12AACE: 0F 84 A5 00 00 00  - je Wiz8.exe+12AB79
Wiz8.exe+12AAD4: 6A 6C              - push 6C
Wiz8.exe+12AAD6: FF 15 A0 B1 5E 00  - call dword ptr [Wiz8.exe+1EB1A0]
Wiz8.exe+12AADC: 8B D0              - mov edx,eax
}
</AssemblerScript>
      <Hotkeys>
        <Hotkey>
          <Action>Toggle Activation</Action>
          <Keys>
            <Key>113</Key>
          </Keys>
          <ID>0</ID>
          <ActivateSound>Activate</ActivateSound>
          <DeactivateSound>Deactivate</DeactivateSound>
        </Hotkey>
      </Hotkeys>
    </CheatEntry>
    <CheatEntry>
      <ID>10</ID>
      <Description>"Pointer to the opened Character"</Description>
      <LastState Value="" RealAddress="0CC2AC8C"/>
      <GroupHeader>1</GroupHeader>
      <Address>"Wiz8.exe"+0029C0F8</Address>
      <Offsets>
        <Offset>0</Offset>
      </Offsets>
      <CheatEntries>
        <CheatEntry>
          <ID>36</ID>
          <Description>"Hitpoints Current"</Description>
          <LastState Value="19" RealAddress="0CC2B79D"/>
          <Color>0000FF</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>+b11</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>34</ID>
          <Description>"Stamina Current"</Description>
          <LastState Value="122" RealAddress="0CC2B7A9"/>
          <Color>4080FF</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>+b1d</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>12</ID>
          <Description>"Nickname"</Description>
          <LastState RealAddress="0CC2AC91"/>
          <VariableType>String</VariableType>
          <Length>10</Length>
          <Unicode>1</Unicode>
          <CodePage>0</CodePage>
          <ZeroTerminate>1</ZeroTerminate>
          <Address>+05</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>13</ID>
          <Description>"Long Name"</Description>
          <LastState RealAddress="0CC2ACA5"/>
          <VariableType>String</VariableType>
          <Length>10</Length>
          <Unicode>1</Unicode>
          <CodePage>0</CodePage>
          <ZeroTerminate>1</ZeroTerminate>
          <Address>+19</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>11</ID>
          <Description>"Strength Normal"</Description>
          <LastState Value="69" RealAddress="0CC2AD71"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+e5</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>16</ID>
          <Description>"Strength Current"</Description>
          <LastState Value="69" RealAddress="0CC2AD75"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+e9</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>15</ID>
          <Description>"Intelligence Normal"</Description>
          <LastState Value="45" RealAddress="0CC2AD85"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+f9</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>14</ID>
          <Description>"Intelligence Current"</Description>
          <LastState Value="45" RealAddress="0CC2AD89"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+fd</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>19</ID>
          <Description>"Piety Normal"</Description>
          <LastState Value="45" RealAddress="0CC2AD99"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+10d</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>20</ID>
          <Description>"Piety Current"</Description>
          <LastState Value="45" RealAddress="0CC2AD9D"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+111</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>17</ID>
          <Description>"Vitality Normal"</Description>
          <LastState Value="60" RealAddress="0CC2ADAD"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+121</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>22</ID>
          <Description>"Vitality Current"</Description>
          <LastState Value="60" RealAddress="0CC2ADB1"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+125</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>21</ID>
          <Description>"Dexterity Normal"</Description>
          <LastState Value="61" RealAddress="0CC2ADC1"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+135</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>18</ID>
          <Description>"Dexterity Current"</Description>
          <LastState Value="61" RealAddress="0CC2ADC5"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+139</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>23</ID>
          <Description>"Speed Normal"</Description>
          <LastState Value="50" RealAddress="0CC2ADD5"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+149</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>24</ID>
          <Description>"Speed Current"</Description>
          <LastState Value="50" RealAddress="0CC2ADD9"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+14d</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>25</ID>
          <Description>"Senses Normal"</Description>
          <LastState Value="45" RealAddress="0CC2ADE9"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+15d</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>26</ID>
          <Description>"Senses Current"</Description>
          <LastState Value="45" RealAddress="0CC2ADED"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+161</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>32</ID>
          <Description>"Experience"</Description>
          <LastState Value="0" RealAddress="0CC2B679"/>
          <Color>FF00FF</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>+9ed</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>33</ID>
          <Description>"Hitpoints Normal"</Description>
          <LastState Value="19" RealAddress="0CC2B799"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+b0d</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>35</ID>
          <Description>"Stamina Normal"</Description>
          <LastState Value="122" RealAddress="0CC2B7A5"/>
          <VariableType>4 Bytes</VariableType>
          <Address>+b19</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>37</ID>
      <Description>"Gold from Party"</Description>
      <LastState Value="500" RealAddress="00685189"/>
      <VariableType>4 Bytes</VariableType>
      <Address>Wiz8.exe+285189</Address>
    </CheatEntry>
  </CheatEntries>
  <UserdefinedSymbols/>
</CheatTable>
