<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="46">
  <CheatEntries>
    <CheatEntry>
      <ID>2066</ID>
      <Description>"Geometry Wars: Retro Evolved"</Description>
      <Options moHideChildren="1" moActivateChildrenAsWell="1" moDeactivateChildrenAsWell="1"/>
      <Color>C08000</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(One,GeometryWars.exe,8B 90 98 00 00 00)
aobscanmodule(Two,GeometryWars.exe,F3 0F 10 86 D0 00 00 00)

alloc(newmemOne,$1000)
alloc(newmemTwo,$1000)
alloc(Three,4)
alloc(Four,4)

registersymbol(One)
registersymbol(Two)
registersymbol(Three)
registersymbol(Four)

label(codeOne)
label(codeTwo)
label(returnOne)
label(returnTwo)

Three:
  dd 0

Four:
  dd 0

newmemOne:

codeOne:
  mov dword ptr [Three],eax
  mov edx,[eax+00000098]
  jmp returnOne

One:
  jmp newmemOne
  nop

returnOne:

newmemTwo:

codeTwo:
  mov dword ptr [Four],esi
  movss xmm0,[esi+000000D0]
  jmp returnTwo

Two:
  jmp newmemTwo
  nop 3

returnTwo:

{$lua}
  if not clockTimer then
  clockTimer=createTimer(nil,false)
  clockTimer.Interval=100
  if not Five then
  Five=allocateMemory(8)
  registerSymbol("Five")
  end
  previousTime=-1
  lastTime=""
  clockTimer.OnTimer=function()
  if not Five then return end
  local addr=getAddress("[Four]+D0")
  if not addr or addr==0 then return end
  local txt=readString(Five) or ""
  if txt~=lastTime then
  local s=txt:match("^(%d+)$")
  if s then
  s=tonumber(s)
  if s and s&gt;=0 then
  writeFloat(addr,s)
  previousTime=s
  end
  else
  local m,ss=txt:match("^(%d+):(%d%d)$")
  if m and ss then
  m=tonumber(m) ss=tonumber(ss)
  if m&gt;=0 and ss&gt;=0 and ss&lt;60 then
  local total=m*60+ss
  writeFloat(addr,total)
  previousTime=total
  end
  end
  end
  lastTime=txt
  end
  local ok,v=pcall(readFloat,addr)
  if not ok or not v or v~=v or v&lt;0 then
  for i=0,7 do pcall(writeBytes,Five+i,0) end
  writeString(Five,"Waiting")
  return
  end
  local total=math.floor(v)
  local out
  if total&lt;60 then
  if total&lt;10 then out=string.format("%d",total)
  else out=string.format("%02d",total) end
  else
  local m=math.floor(total/60)
  local s=total%60
  if m&lt;10 then out=string.format("%d:%02d",m,s)
  elseif m&lt;100 then out=string.format("%02d:%02d",m,s)
  elseif m&lt;1000 then out=string.format("%03d:%02d",m,s)
  else out=string.format("%04d:%02d",m,s) end
  end
  if out~=lastTime then
  for i=0,7 do pcall(writeBytes,Five+i,0) end
  writeString(Five,out)
  lastTime=out
  previousTime=total
  end
  end
  clockTimer.Enabled=true
  end
{$asm}

[DISABLE]

One:
  db 8B 90 98 00 00 00

Two:
  db F3 0F 10 86 D0 00 00 00

unregistersymbol(One)
unregistersymbol(Two)
unregistersymbol(Three)
unregistersymbol(Four)

dealloc(newmemOne)
dealloc(newmemTwo)
dealloc(Three)
dealloc(Four)

{$lua}
  if clockTimer then
  clockTimer.destroy()
  clockTimer=nil
  end
{$asm}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>2092</ID>
          <Description>"==== General ===="</Description>
          <Options moHideChildren="1" moDeactivateChildrenAsWell="1"/>
          <Color>C080FF</Color>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>4</ID>
              <Description>"Infinite Lives"</Description>
              <Options moAlwaysHideChildren="1" moDeactivateChildrenAsWell="1"/>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

aobscanmodule(Six,GeometryWars.exe,83 86 A0 00 00 00 FF)
registersymbol(Six)

GeometryWars.exe+24AD3:
  db 90 90 90 90 90 90 90

[DISABLE]

Six:
  db 83 86 A0 00 00 00 FF

unregistersymbol(Six)
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>21</ID>
                  <Description>"Always 99 Lives (alternative)"</Description>
                  <Color>C0C0C0</Color>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript>[ENABLE]

aobscanmodule(Lives,GeometryWars.exe,83 86 A0 00 00 00 FF)
alloc(newmem,$1000)

label(code)
label(return)

newmem:

code:
  mov dword ptr [esi+000000A0],63
  jmp return

Lives:
  jmp newmem
  nop 2

return:
registersymbol(Lives)

[DISABLE]

Lives:
  db 83 86 A0 00 00 00 FF

unregistersymbol(Lives)
dealloc(newmem)
</AssemblerScript>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>6</ID>
              <Description>"Infinite Bombs"</Description>
              <Options moAlwaysHideChildren="1" moDeactivateChildrenAsWell="1"/>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

aobscanmodule(Seven,GeometryWars.exe,89 86 8C 00 00 00 F3 0F 11 86)
registersymbol(Seven)

GeometryWars.exe+2480C:
  db 90 90 90 90 90 90

[DISABLE]

Seven:
  db 89 86 8C 00 00 00

unregistersymbol(Seven)
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>20</ID>
                  <Description>"Always 99 Bombs (alternative)"</Description>
                  <Color>C0C0C0</Color>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript>[ENABLE]

aobscanmodule(Bombs,GeometryWars.exe,89 86 8C 00 00 00 F3 0F 11 86)
alloc(newmem,$1000)

label(code)
label(return)

newmem:

code:
  mov [esi+0000008C],63
  jmp return

Bombs:
  jmp newmem
  nop

return:
registersymbol(Bombs)

[DISABLE]

Bombs:
  db 89 86 8C 00 00 00

unregistersymbol(Bombs)
dealloc(newmem)
</AssemblerScript>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>2065</ID>
              <Description>"Infinite Shield"</Description>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

aobscanmodule(Eight,GeometryWars.exe,F3 0F 10 86 84 00 00 00 0F 2F C1 0F)
alloc(newmem,$1000)

label(code)
label(return)
label(Nine)

newmem:

code:
  movss xmm0,[Nine]
  movss [esi+00000084],xmm0
  jmp return

Nine:
  dd (float)3

Eight:
  jmp newmem
  nop 3

return:
registersymbol(Eight)

[DISABLE]

Eight:
  db F3 0F 10 86 84 00 00 00

unregistersymbol(Eight)
dealloc(newmem)
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>2081</ID>
              <Description>"Insane"</Description>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

aobscanmodule(Ten,GeometryWars.exe,0F 86 41 0B 00 00)
registersymbol(Ten)

GeometryWars.exe+ED57:
  db 90 90 90 90 90 90

[DISABLE]

Ten:
  db 0F 86 41 0B 00 00

unregistersymbol(Ten)
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>2091</ID>
              <Description>"Pacifist"</Description>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

aobscanmodule(Eleven,GeometryWars.exe,8B 86 A4 00 00 00)
alloc(newmem,$1000)

label(code)
label(return)

newmem:

code:
  mov dword ptr [esi+000000A4],3
  mov eax,[esi+000000A4]
  jmp return

Eleven:
  jmp newmem
  nop

return:
registersymbol(Eleven)

[DISABLE]

Eleven:
  db 8B 86 A4 00 00 00

unregistersymbol(Eleven)
dealloc(newmem)
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>2083</ID>
              <Description>"High Density"</Description>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]

aobscanmodule(Twelve,GeometryWars.exe,F3 0F 10 0E F3 0F 10 15 60 00 4E 00)
alloc(newmem,$1000)

label(code)
label(return)
label(Thirteen)

newmem:
  movss xmm1,[esi]
  comiss xmm1,[Thirteen]
  jae code
  movss xmm1,[Thirteen]
  movss [esi],xmm1

code:
  movss xmm1,[esi]
  movss xmm2,[GeometryWars.exe+E0060]
  jmp return

Thirteen:
  dd (float)100

Twelve:
  jmp newmem
  nop 7

return:
registersymbol(Twelve)

[DISABLE]

Twelve:
  db F3 0F 10 0E F3 0F 10 15 60 00 4E 00

unregistersymbol(Twelve)
dealloc(newmem)
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>2086</ID>
              <Description>"⬆Edit the script if you want to start with a different density."</Description>
              <Color>C0C0C0</Color>
              <GroupHeader>1</GroupHeader>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>2082</ID>
          <Description>"==== Extras ====="</Description>
          <Options moHideChildren="1" moDeactivateChildrenAsWell="1"/>
          <Color>C080FF</Color>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>2094</ID>
              <Description>"Time"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">??:Waiting
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>String</VariableType>
              <Length>10</Length>
              <Unicode>0</Unicode>
              <CodePage>0</CodePage>
              <ZeroTerminate>1</ZeroTerminate>
              <Address>Five</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>2071</ID>
              <Description>"High Score"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">??:Waiting
</DropDownList>
              <Color>C08000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>GeometryWars.exe+23C898</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>2070</ID>
              <Description>"Score"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">??:Waiting
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>[Three]+98</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>2074</ID>
              <Description>"Lives"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">??:Waiting
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>2 Bytes</VariableType>
              <Address>[Three]+A0</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>2075</ID>
              <Description>"⬆Next Bonus"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">??:Waiting
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C0C0C0</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>[Three]+B0</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>2076</ID>
              <Description>"Bombs"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">??:Waiting
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>2 Bytes</VariableType>
              <Address>[Three]+8C</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>2077</ID>
              <Description>"⬆Next Bonus"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">??:Waiting
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C0C0C0</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>[Three]+AC</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>2078</ID>
              <Description>"Shield"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">??:Waiting
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>Float</VariableType>
              <Address>[Three]+84</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>2068</ID>
              <Description>"Weapon"</Description>
              <DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">*:Waiting
0:Normal
2:Power
1:Spread
3:Pacifist
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>2 Bytes</VariableType>
              <Address>[Three]+A4</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>2069</ID>
              <Description>"⬆Next Weapon"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">??:Waiting
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C0C0C0</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>[Three]+B4</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>2072</ID>
              <Description>"Kills"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">??:Waiting
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>2 Bytes</VariableType>
              <Address>[Three]+C4</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>2073</ID>
              <Description>"Multiplier"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">??:Waiting
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>2 Bytes</VariableType>
              <Address>[Three]+C0</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>2079</ID>
              <Description>"Enemy Density"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">??:Waiting
</DropDownList>
              <Color>C08000</Color>
              <VariableType>Float</VariableType>
              <Address>GeometryWars.exe+23FB60</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
  <UserdefinedSymbols/>
  <Comments>Created by: Outrun
https://opencheattables.com</Comments>
</CheatTable>
