<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="46">
  <CheatEntries>
    <CheatEntry>
      <ID>0</ID>
      <Description>"Compact Mode"</Description>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]
{$lua}
if syntaxcheck then return end

if not toggleCompactView then
    function toggleCompactView(sender, forceEnable)
        local isCompactMode = not (compactViewMenuItem.Caption == 'Compact View Mode')
        if forceEnable ~= nil then
            isCompactMode = not forceEnable
        end

    synchronize(function()
        compactViewMenuItem.Caption = isCompactMode and 'Compact View Mode' or 'Full View Mode'
        getMainForm().Splitter1.Visible = isCompactMode
        getMainForm().Panel4.Visible    = isCompactMode
        getMainForm().Panel5.Visible    = isCompactMode
    end)
end
end

if not createCompactViewMenu then
    function createCompactViewMenu()
        if isCompactMenuCreated then return end

    synchronize(function()
        local mainMenu = getMainForm().Menu.Items
        compactViewMenuItem = createMenuItem(mainMenu)
        mainMenu.add(compactViewMenuItem)
        compactViewMenuItem.Caption = 'Compact View Mode'
        compactViewMenuItem.OnClick = toggleCompactView
    end)

    isCompactMenuCreated = true
end
end

createCompactViewMenu()
toggleCompactView(nil, true)

[DISABLE]
{$lua}
if toggleCompactView then
    toggleCompactView(nil, false)
end

</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>118</ID>
      <Description>"Toggle scripts on / off"</Description>
      <Color>4080FF</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]
{$lua}
if (syntaxcheck) then return end
synchronize(function()
  getLuaEngine().menuItem5.doClick()
  getLuaEngine().Close()
end)

local enableBattleScripts = {
  0, -- "Compact Mode"
  1, -- "+HP/MP"
  102, -- "Intermission: fort condor ATB"
  11, -- "Quick ATB"
  14, -- "Slower burst gauge down"
  16, -- "Faster burst gauge gain"
  20, -- "Quick Limit Break"
  25, -- "Enemy HP (Easy kill / Full)"
  37, -- "+Item related"
  67, -- "Materia editor (menu: Item-&gt;Materia)"
  75, -- "Moogle Medal 90 / consumables / skill book (At least got 1; Active: open menu-&gt;Item)"
  80, -- "Bike skill gauge (Chap. 4 / 18)"
  81, -- "Chap. 9: squats game (Chap. 14 working, too)"
  82, -- "Fast weapon proficiency (use ability twice)"
  83, -- "XP Multiplier"
  87, -- "Whack-a-Box"
  9, -- "Gil"
  90, -- "Get field controlled char (non-battle)"
  93, -- "Get party member list"
  2, -- "HP"
  51, -- "Action: Buy/get item (stackable? at least count &gt;=2)"
  6, -- "MP"
  78, -- "Refill consumables"
}
local addressList = getAddressList()
synchronize(function()
  for _, id in ipairs(enableBattleScripts) do
    local memRec = addressList.getMemoryRecordByID(id)
    if memRec and not memRec.Active then
      memRec.Active = true
      sleep(30)
    end
    addressList.refresh()
  end
end)
synchronize(function() getLuaEngine().Close() end)
[DISABLE]
{$lua}
if (syntaxcheck) then return end
synchronize(function()
  getLuaEngine().menuItem5.doClick()
  getLuaEngine().Close()
end)

local disableBattleScripts = {
  55, -- "ID"
  53, -- "Base Addr (0x18 per item)"
  52, -- "_Pointers"
  49, -- "Min. Threshold"
  47, -- "Min. trigger count after used (must &gt;= 2)"
  39, -- "_Pointers"
  78, -- "Refill consumables"
  61, -- "New item ID"
  6, -- "MP"
  51, -- "Action: Buy/get item (stackable? at least count &gt;=2)"
  38, -- "Last used consumable (i.e. potion; count/number -)"
  27, -- "**********Value-Lock  is not recommended / only valid during battle***********"
  2, -- "HP"
  114, -- "(not working) Lock Timer: (Tested in Chap. 6; Timer will freeze; display is incorrect)"
  111, -- "Last Gauge data #0"
  106, -- "Enemy HP data"
  104, -- "Get materia base addr. (open item menu)"
  93, -- "Get party member list"
  90, -- "Get field controlled char (non-battle)"
  9, -- "Gil"
  87, -- "Whack-a-Box"
  85, -- "Materia XP multiplier"
  83, -- "XP Multiplier"
  82, -- "Fast weapon proficiency (use ability twice)"
  81, -- "Chap. 9: squats game (Chap. 14 working, too)"
  80, -- "Bike skill gauge (Chap. 4 / 18)"
  75, -- "Moogle Medal 90 / consumables / skill book (At least got 1; Active: open menu-&gt;Item)"
  67, -- "Materia editor (menu: Item-&gt;Materia)"
  37, -- "+Item related"
  25, -- "Enemy HP (Easy kill / Full)"
  20, -- "Quick Limit Break"
  16, -- "Faster burst gauge gain"
  14, -- "Slower burst gauge down"
  116, -- "Final Fantasy VII Remake Intergrade  /  https://opencheattables.com  /  CE 7.6"
  11, -- "Quick ATB"
  103, -- "_wip"
  102, -- "Intermission: fort condor ATB"
  1, -- "+HP/MP"
  0, -- "Compact Mode"
}
local addressList = getAddressList()
synchronize(function()
  for _, id in ipairs(disableBattleScripts) do
    local memRec = addressList.getMemoryRecordByID(id)
    if memRec and memRec.Active then
      memRec.Active = false
      sleep(30)
    end
    addressList.refresh()
  end
end)
synchronize(function() getLuaEngine().Close() end)
-- Comments:
-- ID: 0, Description: "Compact Mode", Depth: 0
-- ID: 1, Description: "+HP/MP", Depth: 0
--   ID: 2, Description: "HP", Depth: 1
--   ID: 6, Description: "MP", Depth: 1
-- ID: 9, Description: "Gil", Depth: 0
-- ID: 11, Description: "Quick ATB", Depth: 0
-- ID: 14, Description: "Slower burst gauge down", Depth: 0
-- ID: 16, Description: "Faster burst gauge gain", Depth: 0
-- ID: 20, Description: "Quick Limit Break", Depth: 0
-- ID: 25, Description: "Enemy HP (Easy kill / Full)", Depth: 0
--   ID: 27, Description: "**********Value-Lock  is not recommended / only valid during battle***********", Depth: 1
-- ID: 37, Description: "+Item related", Depth: 0
--   ID: 38, Description: "Last used consumable (i.e. potion; count/number -)", Depth: 1
--     ID: 39, Description: "_Pointers", Depth: 2
--     ID: 47, Description: "Min. trigger count after used (must &gt;= 2)", Depth: 2
--     ID: 49, Description: "Min. Threshold", Depth: 2
--   ID: 51, Description: "Action: Buy/get item (stackable? at least count &gt;=2)", Depth: 1
--     ID: 52, Description: "_Pointers", Depth: 2
--       ID: 53, Description: "Base Addr (0x18 per item)", Depth: 3
--       ID: 55, Description: "ID", Depth: 3
--   ID: 61, Description: "New item ID", Depth: 1
-- ID: 67, Description: "Materia editor (menu: Item-&gt;Materia)", Depth: 0
-- ID: 75, Description: "Moogle Medal 90 / consumables / skill book (At least got 1; Active: open menu-&gt;Item)", Depth: 0
--   ID: 78, Description: "Refill consumables", Depth: 1
-- ID: 80, Description: "Bike skill gauge (Chap. 4 / 18)", Depth: 0
-- ID: 81, Description: "Chap. 9: squats game (Chap. 14 working, too)", Depth: 0
-- ID: 82, Description: "Fast weapon proficiency (use ability twice)", Depth: 0
-- ID: 83, Description: "XP Multiplier", Depth: 0
-- ID: 85, Description: "Materia XP multiplier", Depth: 0
-- ID: 87, Description: "Whack-a-Box", Depth: 0
-- ID: 90, Description: "Get field controlled char (non-battle)", Depth: 0
-- ID: 93, Description: "Get party member list", Depth: 0
-- ID: 102, Description: "Intermission: fort condor ATB", Depth: 0
-- ID: 103, Description: "_wip", Depth: 0
--   ID: 104, Description: "Get materia base addr. (open item menu)", Depth: 1
--   ID: 106, Description: "Enemy HP data", Depth: 1
--   ID: 111, Description: "Last Gauge data #0", Depth: 1
--   ID: 114, Description: "(not working) Lock Timer: (Tested in Chap. 6; Timer will freeze; display is incorrect)", Depth: 1
-- ID: 116, Description: "Final Fantasy VII Remake Intergrade  /  https://opencheattables.com  /  CE 7.6", Depth: 0


</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>1</ID>
      <Description>"+HP/MP"</Description>
      <Options moHideChildren="1"/>
      <GroupHeader>1</GroupHeader>
      <CheatEntries>
        <CheatEntry>
          <ID>2</ID>
          <Description>"HP"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_HP,ff7remake_.exe,89 7C 01 30 48 8B 5C 24 30) // should be unique
alloc(newmem,$1000,INJECT_HP)

label(code)
label(return)
label(HP_ALWAYS_FULL)
label(MIN_HP_VALUE)
label(LAST_HP_ADDR)

newmem:

code:
  push rax
  lea rax,[rcx+rax+30]
  mov [LAST_HP_ADDR], rax
  pop rax

  cmp [HP_ALWAYS_FULL], 1
  jne @F
  mov edi,[rcx+rax+34]
  jmp orig_code
@@:
  cmp edi, [MIN_HP_VALUE]
  cmovb edi, [MIN_HP_VALUE]
  cmp edi,[rcx+rax+34]
  jae @F
  inc edi

orig_code:
  mov [rcx+rax+30],edi
  mov rbx,[rsp+30]
  jmp return

align 10 cc
  HP_ALWAYS_FULL:
  dd 0
  MIN_HP_VALUE:
  dd #3600
  LAST_HP_ADDR:
  dq 0


INJECT_HP:
  jmp newmem
  nop 4
return:

registersymbol(LAST_HP_ADDR)
registersymbol(HP_ALWAYS_FULL)
registersymbol(MIN_HP_VALUE)
registersymbol(INJECT_HP)

[DISABLE]

INJECT_HP:
  db 89 7C 01 30 48 8B 5C 24 30

unregistersymbol(LAST_HP_ADDR)
unregistersymbol(HP_ALWAYS_FULL)
unregistersymbol(MIN_HP_VALUE)
unregistersymbol(INJECT_HP)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+AFB738

ff7remake_.exe+AFB709: E8 F2 AB 02 00        - call ff7remake_.exe+B26300
ff7remake_.exe+AFB70E: 48 89 05 D3 1F CA 04  - mov [ff7remake_.exe+579D6E8],rax
ff7remake_.exe+AFB715: 48 8B 80 80 6D 0B 00  - mov rax,[rax+000B6D80]
ff7remake_.exe+AFB71C: 80 FB 08              - cmp bl,08
ff7remake_.exe+AFB71F: 73 1B                 - jae ff7remake_.exe+AFB73C
ff7remake_.exe+AFB721: F6 05 B8 1F CA 04 10  - test byte ptr [ff7remake_.exe+579D6E0],10
ff7remake_.exe+AFB728: 77 12                 - ja ff7remake_.exe+AFB73C
ff7remake_.exe+AFB72A: 48 8B 80 60 3E 00 00  - mov rax,[rax+00003E60]
ff7remake_.exe+AFB731: 0F B6 CB              - movzx ecx,bl
ff7remake_.exe+AFB734: 48 C1 E1 06           - shl rcx,06
// ---------- INJECTING HERE ----------
ff7remake_.exe+AFB738: 89 7C 01 30           - mov [rcx+rax+30],edi
// ---------- DONE INJECTING  ----------
ff7remake_.exe+AFB73C: 48 8B 5C 24 30        - mov rbx,[rsp+30]
ff7remake_.exe+AFB741: 48 83 C4 20           - add rsp,20
ff7remake_.exe+AFB745: 5F                    - pop rdi
ff7remake_.exe+AFB746: C3                    - ret 
ff7remake_.exe+AFB747: CC                    - int 3 
ff7remake_.exe+AFB748: CC                    - int 3 
ff7remake_.exe+AFB749: CC                    - int 3 
ff7remake_.exe+AFB74A: CC                    - int 3 
ff7remake_.exe+AFB74B: CC                    - int 3 
ff7remake_.exe+AFB74C: CC                    - int 3 
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>3</ID>
              <Description>"Always full"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">1:On
0:Off
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>HP_ALWAYS_FULL</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>4</ID>
              <Description>"Min. value"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">600:600
1200:1200
1800:1800
2400:2400
3600:3600
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>MIN_HP_VALUE</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>5</ID>
              <Description>"Last HP addr. (read only)"</Description>
              <ShowAsHex>1</ShowAsHex>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>808080</Color>
              <VariableType>8 Bytes</VariableType>
              <Address>LAST_HP_ADDR</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>6</ID>
          <Description>"MP"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_MP,ff7remake_.exe,89 7C 08 38 48 8B 5C 24 30) // should be unique
alloc(newmem,$1000,INJECT_MP)

label(code)
label(return)
label(MP_ALWAYS_FULL)
label(MIN_MP_VALUE)

newmem:

code:
  cmp [MP_ALWAYS_FULL], 1
  jne @F
  mov edi,[rax+rcx+38+4]
  jmp orig_code
@@:
  cmp edi, [MIN_MP_VALUE]
  cmovb edi, [MIN_MP_VALUE]


orig_code:
  mov [rax+rcx+38],edi
  mov rbx,[rsp+30]
  jmp return

align 10 cc
  MP_ALWAYS_FULL:
  dd 0
  MIN_MP_VALUE:
  dd #36


INJECT_MP:
  jmp newmem
  nop 4
return:

registersymbol(MP_ALWAYS_FULL)
registersymbol(MIN_MP_VALUE)
registersymbol(INJECT_MP)

[DISABLE]

INJECT_MP:
  db 89 7C 08 38 48 8B 5C 24 30

unregistersymbol(MP_ALWAYS_FULL)
unregistersymbol(MIN_MP_VALUE)
unregistersymbol(INJECT_MP)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+AFB93F

ff7remake_.exe+AFB914: 74 08                 - je ff7remake_.exe+AFB91E
ff7remake_.exe+AFB916: 48 8B C8              - mov rcx,rax
ff7remake_.exe+AFB919: E8 E2 A9 02 00        - call ff7remake_.exe+B26300
ff7remake_.exe+AFB91E: 48 89 05 C3 1D CA 04  - mov [ff7remake_.exe+579D6E8],rax
ff7remake_.exe+AFB925: 80 FB 08              - cmp bl,08
ff7remake_.exe+AFB928: 73 19                 - jae ff7remake_.exe+AFB943
ff7remake_.exe+AFB92A: 48 8B 80 80 6D 0B 00  - mov rax,[rax+000B6D80]
ff7remake_.exe+AFB931: 0F B6 CB              - movzx ecx,bl
ff7remake_.exe+AFB934: 48 C1 E1 06           - shl rcx,06
ff7remake_.exe+AFB938: 48 8B 80 60 3E 00 00  - mov rax,[rax+00003E60]
// ---------- INJECTING HERE ----------
ff7remake_.exe+AFB93F: 89 7C 08 38           - mov [rax+rcx+38],edi
// ---------- DONE INJECTING  ----------
ff7remake_.exe+AFB943: 48 8B 5C 24 30        - mov rbx,[rsp+30]
ff7remake_.exe+AFB948: 48 83 C4 20           - add rsp,20
ff7remake_.exe+AFB94C: 5F                    - pop rdi
ff7remake_.exe+AFB94D: C3                    - ret 
ff7remake_.exe+AFB94E: CC                    - int 3 
ff7remake_.exe+AFB94F: CC                    - int 3 
ff7remake_.exe+AFB950: 40 53                 - push rbx
ff7remake_.exe+AFB952: 48 83 EC 20           - sub rsp,20
ff7remake_.exe+AFB956: 48 8B 05 8B 1D CA 04  - mov rax,[ff7remake_.exe+579D6E8]
ff7remake_.exe+AFB95D: 0F B6 D9              - movzx ebx,cl
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>7</ID>
              <Description>"Always full"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">1:On
0:Off
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>MP_ALWAYS_FULL</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>8</ID>
              <Description>"Min. MP value"</Description>
              <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">18:18
24:24
36:36
48:48
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>MIN_MP_VALUE</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>9</ID>
      <Description>"Gil"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_GIL_V1,ff7remake_.exe,89 5A 0C 48 8B 5C 24 30 48 83) // should be unique
alloc(newmem,$1000,INJECT_GIL_V1)

label(code)
label(return)
label(MIN_MONEY_V1)
label(CUR_ITEM_TYPE_V1)


newmem:

code:
  push rax
  mov eax, [rdx+10]
  mov [CUR_ITEM_TYPE_V1], eax
  cmp [CUR_ITEM_TYPE_V1], 1
  jne inter_exit
  cmp ebx, [MIN_MONEY_V1]
  cmovb ebx, [MIN_MONEY_V1]


inter_exit:
  pop rax

  mov [rdx+0C],ebx
  mov rbx,[rsp+30]
  jmp return


align 10 cc
  MIN_MONEY_V1:
  dd #80000
  CUR_ITEM_TYPE_V1:
  dd 1


INJECT_GIL_V1:
  jmp newmem
  nop 3
return:
registersymbol(INJECT_GIL_V1)
registersymbol(MIN_MONEY_V1)

[DISABLE]

INJECT_GIL_V1:
  db 89 5A 0C 48 8B 5C 24 30


unregistersymbol(MIN_MONEY_V1)
unregistersymbol(INJECT_GIL_V1)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+B20A8A

ff7remake_.exe+B20A69: 48 8D 04 40        - lea rax,[rax+rax*2]
ff7remake_.exe+B20A6D: 48 8D 14 C1        - lea rdx,[rcx+rax*8]
ff7remake_.exe+B20A71: 48 85 D2           - test rdx,rdx
ff7remake_.exe+B20A74: 74 17              - je ff7remake_.exe+B20A8D
ff7remake_.exe+B20A76: 48 8B 47 10        - mov rax,[rdi+10]
ff7remake_.exe+B20A7A: 48 85 C0           - test rax,rax
ff7remake_.exe+B20A7D: 74 0E              - je ff7remake_.exe+B20A8D
ff7remake_.exe+B20A7F: 8B 80 88 00 00 00  - mov eax,[rax+00000088]
ff7remake_.exe+B20A85: 3B C3              - cmp eax,ebx
ff7remake_.exe+B20A87: 0F 4E D8           - cmovle ebx,eax
// ---------- INJECTING HERE ----------
ff7remake_.exe+B20A8A: 89 5A 0C           - mov [rdx+0C],ebx
// ---------- DONE INJECTING  ----------
ff7remake_.exe+B20A8D: 48 8B 5C 24 30     - mov rbx,[rsp+30]
ff7remake_.exe+B20A92: 48 83 C4 20        - add rsp,20
ff7remake_.exe+B20A96: 5F                 - pop rdi
ff7remake_.exe+B20A97: C3                 - ret 
ff7remake_.exe+B20A98: CC                 - int 3 
ff7remake_.exe+B20A99: CC                 - int 3 
ff7remake_.exe+B20A9A: CC                 - int 3 
ff7remake_.exe+B20A9B: CC                 - int 3 
ff7remake_.exe+B20A9C: CC                 - int 3 
ff7remake_.exe+B20A9D: CC                 - int 3 
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>10</ID>
          <Description>"Min. Gil"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>MIN_MONEY_V1</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>11</ID>
      <Description>"Quick ATB"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_QUICK_ATB,ff7remake_.exe,F3 0F 11 74 08 44) // should be unique
alloc(newmem,$1000,INJECT_QUICK_ATB)

label(code)
label(return)
label(XMM_TMP1)
label(XMM_TMP2)
label(CUR_ATB_VALUE)
label(ONLY_1ST_ATB)
label(2nd_ATB_SPEED)

newmem:

code:
  push rax
  movq [XMM_TMP1], xmm5
  mov [in_2nd_ATB], 0

  mov rax, (float)1000
  movq xmm5, rax
  comiss xmm6, xmm5
  jae @F
  jmp quick_start

@@:
  mov [in_2nd_ATB], 1
  cmp [ONLY_1ST_ATB], 1
  je quick_end

quick_start:
  cmp [in_2nd_ATB], 1
  je @F
  mov rax, (float)4.8
  jmp next_step
@@:
  mov rax, (float)1.3
next_step:
  movq xmm5, rax
  addss xmm6, xmm5

quick_end:
  movq xmm5, [XMM_TMP1]
  pop rax

  movss [rax+rcx+44],xmm6

  push rax
  mov rax,[rax+rcx+44]
  mov [CUR_ATB_VALUE], rax
  pop rax

  jmp return

align 10 cc
  XMM_TMP1:
  dq 0
  XMM_TMP2:
  dq 0
  CUR_ATB_VALUE:
  dq 0
  ONLY_1ST_ATB:
  dd 1
  in_2nd_ATB:
  dd 0
  2nd_ATB_SPEED:
  dd (float)1.2

INJECT_QUICK_ATB:
  jmp newmem
  nop
return:

registersymbol(ONLY_1ST_ATB)
registersymbol(CUR_ATB_VALUE)
registersymbol(INJECT_QUICK_ATB)

[DISABLE]

INJECT_QUICK_ATB:
  db F3 0F 11 74 08 44

unregistersymbol(ONLY_1ST_ATB)
unregistersymbol(CUR_ATB_VALUE)
unregistersymbol(INJECT_QUICK_ATB)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+949702

ff7remake_.exe+9496D7: 74 08                 - je ff7remake_.exe+9496E1
ff7remake_.exe+9496D9: 48 8B C8              - mov rcx,rax
ff7remake_.exe+9496DC: E8 1F CC 1D 00        - call ff7remake_.exe+B26300
ff7remake_.exe+9496E1: 48 89 05 00 40 E5 04  - mov [ff7remake_.exe+579D6E8],rax
ff7remake_.exe+9496E8: 80 FB 08              - cmp bl,08
ff7remake_.exe+9496EB: 73 1B                 - jae ff7remake_.exe+949708
ff7remake_.exe+9496ED: 48 8B 80 80 6D 0B 00  - mov rax,[rax+000B6D80]
ff7remake_.exe+9496F4: 0F B6 CB              - movzx ecx,bl
ff7remake_.exe+9496F7: 48 C1 E1 06           - shl rcx,06
ff7remake_.exe+9496FB: 48 8B 80 60 3E 00 00  - mov rax,[rax+00003E60]
// ---------- INJECTING HERE ----------
ff7remake_.exe+949702: F3 0F 11 74 08 44     - movss [rax+rcx+44],xmm6
// ---------- DONE INJECTING  ----------
ff7remake_.exe+949708: 0F 28 74 24 20        - movaps xmm6,[rsp+20]
ff7remake_.exe+94970D: 48 83 C4 30           - add rsp,30
ff7remake_.exe+949711: 5B                    - pop rbx
ff7remake_.exe+949712: C3                    - ret 
ff7remake_.exe+949713: CC                    - int 3 
ff7remake_.exe+949714: CC                    - int 3 
ff7remake_.exe+949715: CC                    - int 3 
ff7remake_.exe+949716: CC                    - int 3 
ff7remake_.exe+949717: CC                    - int 3 
ff7remake_.exe+949718: CC                    - int 3 
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>12</ID>
          <Description>"Only for 1st ATB bar"</Description>
          <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">1:On
0:Off
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>ONLY_1ST_ATB</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>13</ID>
          <Description>"Current ATB value (readonly)"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>808080</Color>
          <VariableType>Float</VariableType>
          <Address>CUR_ATB_VALUE</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>14</ID>
      <Description>"Slower burst gauge down"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_BURST_GAUGE_DOWN,ff7remake_.exe,F3 0F 5C C7 0F 2F C6 F3 0F 11 47 10) // should be unique
alloc(newmem,$1000,INJECT_BURST_GAUGE_DOWN)

label(code)
label(return)
label(GAUGE_DOWN_DIV)

newmem:

code:
  movq [XMM_TMP2], xmm15

  movss xmm2, [GAUGE_DOWN_DIV]
  divss xmm7, xmm2

  movq xmm15, [XMM_TMP2]

  subss xmm0,xmm7
  comiss xmm0,xmm6
  jmp return

align 10 cc
  XMM_TMP2:
  dq 0
  XMM_TMP3:
  dq 0
  GAUGE_DOWN_DIV:
  dd (float)2

INJECT_BURST_GAUGE_DOWN:
  jmp newmem
  nop 2
return:

registersymbol(GAUGE_DOWN_DIV)
registersymbol(INJECT_BURST_GAUGE_DOWN)

[DISABLE]

INJECT_BURST_GAUGE_DOWN:
  db F3 0F 5C C7 0F 2F C6
unregistersymbol(GAUGE_DOWN_DIV)
unregistersymbol(INJECT_BURST_GAUGE_DOWN)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+962C81

ff7remake_.exe+962C59: 48 8B 09              - mov rcx,[rcx]
ff7remake_.exe+962C5C: 48 8B 1D 3D AA E3 04  - mov rbx,[ff7remake_.exe+579D6A0]
ff7remake_.exe+962C63: 48 8B 01              - mov rax,[rcx]
ff7remake_.exe+962C66: FF 50 20              - call qword ptr [rax+20]
ff7remake_.exe+962C69: 48 8B D0              - mov rdx,rax
ff7remake_.exe+962C6C: 48 8D 8B C0 01 00 00  - lea rcx,[rbx+000001C0]
ff7remake_.exe+962C73: E8 C8 56 07 00        - call ff7remake_.exe+9D8340
ff7remake_.exe+962C78: 84 C0                 - test al,al
ff7remake_.exe+962C7A: 75 27                 - jne ff7remake_.exe+962CA3
ff7remake_.exe+962C7C: F3 0F 10 47 10        - movss xmm0,[rdi+10]
// ---------- INJECTING HERE ----------
ff7remake_.exe+962C81: F3 0F 5C C7           - subss xmm0,xmm7
// ---------- DONE INJECTING  ----------
ff7remake_.exe+962C85: 0F 2F C6              - comiss xmm0,xmm6
ff7remake_.exe+962C88: F3 0F 11 47 10        - movss [rdi+10],xmm0
ff7remake_.exe+962C8D: 73 14                 - jae ff7remake_.exe+962CA3
ff7remake_.exe+962C8F: 48 8B CF              - mov rcx,rdi
ff7remake_.exe+962C92: E8 19 0F 00 00        - call ff7remake_.exe+963BB0
ff7remake_.exe+962C97: 48 8B 0F              - mov rcx,[rdi]
ff7remake_.exe+962C9A: 48 8B 01              - mov rax,[rcx]
ff7remake_.exe+962C9D: FF 90 68 07 00 00     - call qword ptr [rax+00000768]
ff7remake_.exe+962CA3: 80 7F 29 00           - cmp byte ptr [rdi+29],00
ff7remake_.exe+962CA7: 48 8B 0F              - mov rcx,[rdi]
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>15</ID>
          <Description>"Down speed division"</Description>
          <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">1:None
2:Half
4:Slow
10:Very slow
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>Float</VariableType>
          <Address>GAUGE_DOWN_DIV</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>16</ID>
      <Description>"Faster burst gauge gain"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_ENEMY_BURST_GAUGE,ff7remake_.exe,F3 41 0F 58 44 24 08 0F 2F) // should be unique
alloc(newmem,$1000,INJECT_ENEMY_BURST_GAUGE)

label(code)
label(return)
label(CUR_BURST_VALUE)
label(MAX_BURST_VALUE)
label(INIT_BURST_VALUE)
label(BURST_GROW_MUL)

newmem:

code:
  addss xmm0,[r12+08]

  push rax
  movq [XMM_TMP2],xmm2
  movq [XMM_TMP3],xmm3

  //mov rax, (float)2.0
  //movq xmm2, rax
  movss xmm2, [BURST_GROW_MUL]

  mulss xmm2, xmm6
  addss xmm0, xmm2

  mov rax, (float)3.33333
  movq xmm3, rax
  movss xmm2, xmm1
  divss xmm2, xmm3
  movss [INIT_BURST_VALUE],xmm2

  movq xmm2,[XMM_TMP2]
  movq xmm3,[XMM_TMP3]
  pop rax

  comiss xmm0, [INIT_BURST_VALUE]
  jae @F
  movss xmm0, [INIT_BURST_VALUE]
@@:
  movss [CUR_BURST_VALUE], xmm0
  movss [MAX_BURST_VALUE], xmm1
  jmp return

align 10 cc
  INIT_BURST_VALUE:
  dd (float)9
  CUR_BURST_VALUE:
  dd 0
  MAX_BURST_VALUE:
  dd 0
  XMM_TMP2:
  dq 0
  XMM_TMP3:
  dq 0
  BURST_GROW_MUL:
  dd (float)2.0


INJECT_ENEMY_BURST_GAUGE:
  jmp newmem
  nop 2
return:

registersymbol(BURST_GROW_MUL)
registersymbol(CUR_BURST_VALUE)
registersymbol(MAX_BURST_VALUE)
registersymbol(INJECT_ENEMY_BURST_GAUGE)

[DISABLE]

INJECT_ENEMY_BURST_GAUGE:
  db F3 41 0F 58 44 24 08

unregistersymbol(BURST_GROW_MUL)
unregistersymbol(CUR_BURST_VALUE)
unregistersymbol(MAX_BURST_VALUE)
unregistersymbol(INJECT_ENEMY_BURST_GAUGE)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+963166

ff7remake_.exe+96313D: 48 85 C0                 - test rax,rax
ff7remake_.exe+963140: 74 1A                    - je ff7remake_.exe+96315C
ff7remake_.exe+963142: 41 80 BF B8 00 00 00 01  - cmp byte ptr [r15+000000B8],01
ff7remake_.exe+96314A: 75 07                    - jne ff7remake_.exe+963153
ff7remake_.exe+96314C: F3 0F 10 40 3C           - movss xmm0,[rax+3C]
ff7remake_.exe+963151: EB 05                    - jmp ff7remake_.exe+963158
ff7remake_.exe+963153: F3 0F 10 40 58           - movss xmm0,[rax+58]
ff7remake_.exe+963158: F3 0F 59 F0              - mulss xmm6,xmm0
ff7remake_.exe+96315C: F3 41 0F 10 4C 24 0C     - movss xmm1,[r12+0C]
ff7remake_.exe+963163: 0F 28 C6                 - movaps xmm0,xmm6
// ---------- INJECTING HERE ----------
ff7remake_.exe+963166: F3 41 0F 58 44 24 08     - addss xmm0,[r12+08]
// ---------- DONE INJECTING  ----------
ff7remake_.exe+96316D: 0F 2F C8                 - comiss xmm1,xmm0
ff7remake_.exe+963170: F3 41 0F 11 44 24 08     - movss [r12+08],xmm0
ff7remake_.exe+963177: 0F 87 AA 04 00 00        - ja ff7remake_.exe+963627
ff7remake_.exe+96317D: 41 0F 2F F0              - comiss xmm6,xmm8
ff7remake_.exe+963181: F3 41 0F 11 4C 24 08     - movss [r12+08],xmm1
ff7remake_.exe+963188: 0F 86 99 04 00 00        - jbe ff7remake_.exe+963627
ff7remake_.exe+96318E: 41 38 7C 24 20           - cmp [r12+20],dil
ff7remake_.exe+963193: 0F 85 8E 04 00 00        - jne ff7remake_.exe+963627
ff7remake_.exe+963199: 49 8B 0C 24              - mov rcx,[r12]
ff7remake_.exe+96319D: E8 BE A7 01 00           - call ff7remake_.exe+97D960
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>17</ID>
          <Description>"Grow speed multiple (+base)"</Description>
          <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">1:1
2:2
4:4
10:10
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>Float</VariableType>
          <Address>BURST_GROW_MUL</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>18</ID>
          <Description>"Current value (read only)"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>808080</Color>
          <VariableType>Float</VariableType>
          <Address>CUR_BURST_VALUE</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>19</ID>
          <Description>"Max value (read only)"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>808080</Color>
          <VariableType>Float</VariableType>
          <Address>MAX_BURST_VALUE</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>20</ID>
      <Description>"Quick Limit Break"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_FAST_LB,ff7remake_.exe,F3 0F 11 74 08 24) // should be unique
alloc(newmem,$1000,INJECT_FAST_LB)

label(code)
label(return)
label(IS_FAST_LB)
label(CUR_LB_VALUE)
label(LB_ADD_VALUE)
label(vf_lb_multiplier)

newmem:
  push r15
  lea r15, [rax+rcx+24]
  mov [CUR_LB_VALUE], r15
  pop r15

  //vmovss xmm14, [lb_limit]
  vmovss xmm14, [rax+rcx+24]
  vcomiss xmm14, xmm6
  jae code

  cmp dword ptr [IS_FAST_LB], 1
  jne next1

  vmovss xmm15, [LB_ADD_VALUE]
  vaddss xmm6, xmm15, xmm6

  vcomiss xmm6, xmm14
  jbe code
  vmovss xmm6, [lb_limit]
  jmp code

next1:  //multiplier
  cmp dword ptr [IS_FAST_LB], 2
  jne code

  vmovss xmm15, dword ptr [rax+rcx+24]
  vcomiss xmm6, xmm15
  jbe code

  vmovss xmm14, [vf_lb_multiplier]
  vsubss xmm13, xmm6, xmm15
  vmulss xmm13, xmm14, xmm13
  vaddss xmm6, xmm15, xmm13


code:
  movss [rax+rcx+24],xmm6
  jmp return

align 10 cc
  XMM_TMP1:
  dq 0
  IS_FAST_LB:
  dd 2
  CUR_LB_VALUE:
  dq 0
  LB_ADD_VALUE:
  dd (float)500
  lb_limit:
  dd (float)1000
  vf_lb_multiplier:
  dd (float)3.3333333

INJECT_FAST_LB:
  jmp newmem
  nop
return:

registersymbol(LB_ADD_VALUE)
registersymbol(CUR_LB_VALUE)
registersymbol(IS_FAST_LB)
registersymbol(INJECT_FAST_LB)
registersymbol(vf_lb_multiplier)
[DISABLE]

INJECT_FAST_LB:
  db F3 0F 11 74 08 24

unregistersymbol(*)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+AFBAC1

ff7remake_.exe+AFBA96: 74 08                 - je ff7remake_.exe+AFBAA0
ff7remake_.exe+AFBA98: 48 8B C8              - mov rcx,rax
ff7remake_.exe+AFBA9B: E8 60 A8 02 00        - call ff7remake_.exe+B26300
ff7remake_.exe+AFBAA0: 48 89 05 41 1C CA 04  - mov [ff7remake_.exe+579D6E8],rax
ff7remake_.exe+AFBAA7: 80 FB 08              - cmp bl,08
ff7remake_.exe+AFBAAA: 73 1B                 - jae ff7remake_.exe+AFBAC7
ff7remake_.exe+AFBAAC: 48 8B 80 80 6D 0B 00  - mov rax,[rax+000B6D80]
ff7remake_.exe+AFBAB3: 0F B6 CB              - movzx ecx,bl
ff7remake_.exe+AFBAB6: 48 C1 E1 06           - shl rcx,06
ff7remake_.exe+AFBABA: 48 8B 80 60 3E 00 00  - mov rax,[rax+00003E60]
// ---------- INJECTING HERE ----------
ff7remake_.exe+AFBAC1: F3 0F 11 74 08 24     - movss [rax+rcx+24],xmm6
// ---------- DONE INJECTING  ----------
ff7remake_.exe+AFBAC7: 0F 28 74 24 20        - movaps xmm6,[rsp+20]
ff7remake_.exe+AFBACC: 48 83 C4 30           - add rsp,30
ff7remake_.exe+AFBAD0: 5B                    - pop rbx
ff7remake_.exe+AFBAD1: C3                    - ret 
ff7remake_.exe+AFBAD2: CC                    - int 3 
ff7remake_.exe+AFBAD3: CC                    - int 3 
ff7remake_.exe+AFBAD4: CC                    - int 3 
ff7remake_.exe+AFBAD5: CC                    - int 3 
ff7remake_.exe+AFBAD6: CC                    - int 3 
ff7remake_.exe+AFBAD7: CC                    - int 3 
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>21</ID>
          <Description>"Current Value"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>Float</VariableType>
          <Address>CUR_LB_VALUE</Address>
          <Offsets>
            <Offset>0</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>22</ID>
          <Description>"LB growth mode"</Description>
          <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">0:None
1:Fast LB
2:By multiplier
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>IS_FAST_LB</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>23</ID>
          <Description>"Fast LB grow speed (0-1500)"</Description>
          <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">0:None
250:Normal
500:Fast
1500:Fastest
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>Float</VariableType>
          <Address>LB_ADD_VALUE</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>24</ID>
          <Description>"Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>Float</VariableType>
          <Address>vf_lb_multiplier</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>25</ID>
      <Description>"Enemy HP (Easy kill / Full)"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_ENEMY_HP2,ff7remake_.exe,8B 54 24 40 48 8B 01 FF 50 50) // should be unique
alloc(newmem,$1000,INJECT_ENEMY_HP2)

label(code)
label(return)
label(ENEMY_CUR_HP)
label(ENEMY_MAX_HP)
label(ENEMY_CUR_HP_ADDR)
label(ENEMY_HP_SWITCH)
label(ENEMY_HP_BYPASS_THRESHOLD)
label(ENEMY_CUR_MP)
label(ENEMY_MAX_MP)
label(IS_ENEMY_HP_ADDR_SAFETY)

newmem:

code:
  mov edx,[rsp+40]
  mov rax,[rcx]
  //custom code here
  mov [ENEMY_CUR_HP_ADDR], 0
  mov [IS_ENEMY_HP_ADDR_SAFETY], 0
  cmp edx, [ENEMY_HP_BYPASS_THRESHOLD]
  jae bypass_all
  cmp [rcx+18+4], 0
  je bypass_all
  cmp [rcx+18], 0
  je bypass_all

  mov [ENEMY_CUR_HP], edx


  push rax
  push rbx

  mov eax, [rcx+18+8]
  mov [ENEMY_CUR_MP], eax
  mov ebx, eax
  mov eax, [rcx+18+C]
  mov [ENEMY_MAX_MP], eax
  cmp eax, 0
  jne step_end
  cmp ebx, 0
  jne step_end

  mov [IS_ENEMY_HP_ADDR_SAFETY], 1

  lea rax, [rcx+18]
  mov [ENEMY_CUR_HP_ADDR], rax



  cmp [ENEMY_HP_SWITCH], 0
  je step_end
  cmp [ENEMY_HP_SWITCH], 1
  jne @F
  cmp edx, 1
  jbe step_end
  mov edx, 1
  jmp step_end
@@:
  cmp [ENEMY_HP_SWITCH], 2
  jne @F
  // HP always Full
  mov edx, [rcx+18+4]

step_end:
  pop rbx
  pop rax

bypass_all:
  jmp return

align 10 cc
  ENEMY_CUR_HP:
  dd 0
  ENEMY_MAX_HP:
  dd 0
  ENEMY_CUR_HP_ADDR:
  dq 0
  //0: Disable, 1: 1 HP, 2: FULL
  ENEMY_HP_SWITCH:
  dd 0
  ENEMY_HP_BYPASS_THRESHOLD:
  dd #1000000
  ENEMY_CUR_MP:
  dd FF
  ENEMY_MAX_MP:
  dd FF
  IS_ENEMY_HP_ADDR_SAFETY:
  dd 0


INJECT_ENEMY_HP2:
  jmp newmem
  nop 2
return:

registersymbol(IS_ENEMY_HP_ADDR_SAFETY)
registersymbol(ENEMY_HP_BYPASS_THRESHOLD)
registersymbol(ENEMY_HP_SWITCH)
registersymbol(ENEMY_CUR_HP)
registersymbol(ENEMY_MAX_HP)
registersymbol(ENEMY_CUR_MP)
registersymbol(ENEMY_MAX_MP)
registersymbol(ENEMY_CUR_HP_ADDR)
registersymbol(INJECT_ENEMY_HP2)

[DISABLE]

INJECT_ENEMY_HP2:
  db 8B 54 24 40 48 8B 01

unregistersymbol(IS_ENEMY_HP_ADDR_SAFETY)
unregistersymbol(ENEMY_HP_BYPASS_THRESHOLD)
unregistersymbol(ENEMY_HP_SWITCH)
unregistersymbol(ENEMY_CUR_HP)
unregistersymbol(ENEMY_MAX_HP)
unregistersymbol(ENEMY_CUR_MP)
unregistersymbol(ENEMY_MAX_MP)
unregistersymbol(ENEMY_CUR_HP_ADDR)
unregistersymbol(INJECT_ENEMY_HP2)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+16E747C

ff7remake_.exe+16E744D: 48 8B 8E E8 05 00 00  - mov rcx,[rsi+000005E8]
ff7remake_.exe+16E7454: 48 8B 01              - mov rax,[rcx]
ff7remake_.exe+16E7457: FF 50 48              - call qword ptr [rax+48]
ff7remake_.exe+16E745A: 85 C0                 - test eax,eax
ff7remake_.exe+16E745C: 0F 84 18 01 00 00     - je ff7remake_.exe+16E757A
ff7remake_.exe+16E7462: 48 81 C3 E8 00 00 00  - add rbx,000000E8
ff7remake_.exe+16E7469: 49 3B DE              - cmp rbx,r14
ff7remake_.exe+16E746C: 0F 85 6E FF FF FF     - jne ff7remake_.exe+16E73E0
ff7remake_.exe+16E7472: 45 32 E4              - xor r12l,r12l
ff7remake_.exe+16E7475: 48 8B 8E E8 05 00 00  - mov rcx,[rsi+000005E8]
// ---------- INJECTING HERE ----------
ff7remake_.exe+16E747C: 8B 54 24 40           - mov edx,[rsp+40]
// ---------- DONE INJECTING  ----------
ff7remake_.exe+16E7480: 48 8B 01              - mov rax,[rcx]
ff7remake_.exe+16E7483: FF 50 50              - call qword ptr [rax+50]
ff7remake_.exe+16E7486: 48 8B 4C 24 58        - mov rcx,[rsp+58]
ff7remake_.exe+16E748B: 48 85 C9              - test rcx,rcx
ff7remake_.exe+16E748E: 74 05                 - je ff7remake_.exe+16E7495
ff7remake_.exe+16E7490: E8 4B C0 FC FF        - call ff7remake_.exe+16B34E0
ff7remake_.exe+16E7495: 4C 8B 6D C8           - mov r13,[rbp-38]
ff7remake_.exe+16E7499: 48 8B 75 A0           - mov rsi,[rbp-60]
ff7remake_.exe+16E749D: 48 8B DE              - mov rbx,rsi
ff7remake_.exe+16E74A0: 45 85 FF              - test r15d,r15d
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>26</ID>
          <Description>"HP Options (only turn on during battle)"</Description>
          <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">0:None
1:Easy kill
2:Always full
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>ENEMY_HP_SWITCH</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>27</ID>
          <Description>"**********Value-Lock  is not recommended / only valid during battle***********"</Description>
          <Options moHideChildren="1"/>
          <Color>8080FF</Color>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>28</ID>
              <Description>"is HP address save? (for reference only)"</Description>
              <DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">0:**No**
1:Yes
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>FF8000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>IS_ENEMY_HP_ADDR_SAFETY</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>29</ID>
              <Description>"Cur. MP chk (should be 0)"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>FF8000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>ENEMY_CUR_MP</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>30</ID>
              <Description>"Max Mp chk (should be 0)"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>FF8000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>ENEMY_MAX_MP</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>31</ID>
          <Description>"HP check bypass threshold"</Description>
          <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">100000:100,000
500000:500,000
1000000:1,000,000
2000000:2,000,000
5000000:5,000,000
10000000:10,000,000
20000000:20,000,000
100000000:100,000,000
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>ENEMY_HP_BYPASS_THRESHOLD</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>32</ID>
          <Description>"Enemy current HP Address"</Description>
          <ShowAsHex>1</ShowAsHex>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8000</Color>
          <VariableType>8 Bytes</VariableType>
          <Address>ENEMY_CUR_HP_ADDR</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>33</ID>
          <Description>"Current HP"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>ENEMY_CUR_HP_ADDR</Address>
          <Offsets>
            <Offset>0</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>34</ID>
          <Description>"Max HP"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>ENEMY_CUR_HP_ADDR</Address>
          <Offsets>
            <Offset>4</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>35</ID>
          <Description>"Current MP"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>ENEMY_CUR_HP_ADDR</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>36</ID>
          <Description>"Max MP"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>ENEMY_CUR_HP_ADDR</Address>
          <Offsets>
            <Offset>c</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>37</ID>
      <Description>"+Item related"</Description>
      <Options moHideChildren="1"/>
      <GroupHeader>1</GroupHeader>
      <CheatEntries>
        <CheatEntry>
          <ID>38</ID>
          <Description>"Last used consumable (i.e. potion; count/number -)"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_CUR_ITEM,ff7remake_.exe,89 42 0C C7 43 08 FF FF FF FF) // should be unique
alloc(newmem,$1000,INJECT_CUR_ITEM)

label(code)
label(return)

label(CUR_ITEM_BASE)
label(CUR_ITEM_ID)
label(CUR_ITEM_CNT)
label(MIN_ITEM_CNT)
label(MIN_THRESHOLD_CNT)
label(CUR_ITEM_TYPE)
label(MIN_MONEY)

newmem:

code:

  mov [CUR_ITEM_BASE], rdx
  push rax
  mov eax, [rdx+8]
  mov [CUR_ITEM_ID], eax
  //mov eax, [MIN_ITEM_CNT]
  mov eax, [rdx+10]
  mov [CUR_ITEM_TYPE], eax
  pop rax

  mov [CUR_ITEM_CNT], eax

  cmp eax, [MIN_ITEM_CNT]
  jl next1
  cmp eax, [MIN_THRESHOLD_CNT]
  ja next1
  mov eax, [MIN_THRESHOLD_CNT]
next1:
  ////gil section

  //cmp [CUR_ITEM_TYPE], 1
  //jne next4


  //cmp eax, [MIN_MONEY]
  //jae next4
  //mov eax, [MIN_MONEY]

next4:


  /////////////


  // original code
  mov [rdx+0C],eax
  mov [rbx+08],FFFFFFFF
  jmp return

align 10 cc
  CUR_ITEM_BASE:
  dq 0
  CUR_ITEM_ID:
  dd FFFF
  CUR_ITEM_CNT:
  dd 0
  MIN_ITEM_CNT:
  dd #5
  MIN_THRESHOLD_CNT:
  dd #15
  CUR_ITEM_TYPE:
  dd FFFF
  MIN_MONEY:
  dd #10000


INJECT_CUR_ITEM:
  jmp newmem
  nop 5
return:
registersymbol(INJECT_CUR_ITEM)
registersymbol(CUR_ITEM_BASE)
registersymbol(CUR_ITEM_ID)
registersymbol(CUR_ITEM_TYPE)
registersymbol(CUR_ITEM_CNT)
registersymbol(MIN_ITEM_CNT)
registersymbol(MIN_THRESHOLD_CNT)
registersymbol(MIN_MONEY)


[DISABLE]

INJECT_CUR_ITEM:
  db 89 42 0C C7 43 08 FF FF FF FF

unregistersymbol(MIN_MONEY)
unregistersymbol(MIN_THRESHOLD_CNT)
unregistersymbol(MIN_ITEM_CNT)
unregistersymbol(CUR_ITEM_TYPE)
unregistersymbol(CUR_ITEM_ID)
unregistersymbol(CUR_ITEM_CNT)
unregistersymbol(CUR_ITEM_BASE)
unregistersymbol(INJECT_CUR_ITEM)
dealloc(newmem)

//use
{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+B1CBE4

ff7remake_.exe+B1CBC6: 8B 47 0C              - mov eax,[rdi+0C]
ff7remake_.exe+B1CBC9: 89 41 0C              - mov [rcx+0C],eax
ff7remake_.exe+B1CBCC: 48 8B 5E 48           - mov rbx,[rsi+48]
ff7remake_.exe+B1CBD0: 48 8B 13              - mov rdx,[rbx]
ff7remake_.exe+B1CBD3: 48 85 D2              - test rdx,rdx
ff7remake_.exe+B1CBD6: 74 1E                 - je ff7remake_.exe+B1CBF6
ff7remake_.exe+B1CBD8: 8B 4A 0C              - mov ecx,[rdx+0C]
ff7remake_.exe+B1CBDB: 41 8B C6              - mov eax,r14d
ff7remake_.exe+B1CBDE: 2B 4B 0C              - sub ecx,[rbx+0C]
ff7remake_.exe+B1CBE1: 0F 49 C1              - cmovns eax,ecx
// ---------- INJECTING HERE ----------
ff7remake_.exe+B1CBE4: 89 42 0C              - mov [rdx+0C],eax
// ---------- DONE INJECTING  ----------
ff7remake_.exe+B1CBE7: C7 43 08 FF FF FF FF  - mov [rbx+08],FFFFFFFF
ff7remake_.exe+B1CBEE: 44 89 73 0C           - mov [rbx+0C],r14d
ff7remake_.exe+B1CBF2: 48 8B 5E 48           - mov rbx,[rsi+48]
ff7remake_.exe+B1CBF6: 48 85 DB              - test rbx,rbx
ff7remake_.exe+B1CBF9: 74 25                 - je ff7remake_.exe+B1CC20
ff7remake_.exe+B1CBFB: 48 8B 0D C6 C9 CB 04  - mov rcx,[ff7remake_.exe+57D95C8]
ff7remake_.exe+B1CC02: 48 85 C9              - test rcx,rcx
ff7remake_.exe+B1CC05: 75 0C                 - jne ff7remake_.exe+B1CC13
ff7remake_.exe+B1CC07: E8 84 5F 10 01        - call ff7remake_.exe+1C22B90
ff7remake_.exe+B1CC0C: 48 8B 0D B5 C9 CB 04  - mov rcx,[ff7remake_.exe+57D95C8]
}

</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>39</ID>
              <Description>"_Pointers"</Description>
              <Options moHideChildren="1"/>
              <GroupHeader>1</GroupHeader>
              <CheatEntries>
                <CheatEntry>
                  <ID>40</ID>
                  <Description>"Base address"</Description>
                  <ShowAsHex>1</ShowAsHex>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>8 Bytes</VariableType>
                  <Address>CUR_ITEM_BASE</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>41</ID>
                  <Description>"ID"</Description>
                  <DropDownList DisplayValueAsItem="1">00000001:Potion
00000002:Hi-potion
00000003:Ether
00000004:Turbo Ether
00000005:Elixir
00000006:Phoenix Down
00000007:Antidote
00000008:Echo Mist
00000009:Adrenaline
0000000A:Sedative
0000000B:Remedy
0000000C:Celeris
0000000D:Grenade
0000000E:Spiderweb
0000000F:Hazardous Material
00000010:Big Bomber
00000011:Molotov Cocktail
00000012:Orb of Gravity
00000013:Smelling Salts
00000014:Gil
00000015:Maiden's Kiss
00000016:Mega-Potion
0000001F:Ai Programing Core
00000020:Fuzzy Wuzzy
00000021:Mr. Cuddlesworth
00000032:Fire Damage (General)
00000033:Ice Damage (Fixed)
00000034:Lightning Damage (STR)
00000035:Wind Damage (Owner Max Hp Percentage)
00000036:Earth Damage (HP Percentage)
00000037:Holy Damage
00000038:Dark Damage
00000039:Non-Elemental Damage
0000003A:Fire Damage (Physical)
0000003B:Ice Damage (Physical)
0000003C:Lightning Damage (Physical)
0000003D:Wind Damage (Physical)
0000003E:Earth Damage (Physical)
0000003F:Holy Damage (Physical)
00000040:Dark Damage (Physical)
00000041:Non-Elemental Damage (Physical)
00000042:0 Damage Spell (General)
00000043:0 Damage Physical Attack (Fixed)
00000044:Reflect
00000045:Shield
00000046:Pierce Reflect
00000047:Nullify Reflect
00000048:Pierce Shield
00000049:Nullify Shield
0000004A:Toad
0000004B:Toad All
0000004C:Maiden's Kiss (All)
00000064:Sector 5 Reactor Card	(Key)
00000066:Tournament Entry Form	(Key)
00000067:Madam M's Endorsement	(Key)
00000068:Andrea's Endorsement	(Key)
0000006F:Shinra ID Card	(Key)
00000073:Grappling Gun	(Key)
00000074:Grappling Gun	(Key)
00000075:Key to the Sewers	(Key)
00000076:Moogle Medal	(Key)
00000077:Sam’s Coin	(Key)
00000078:Shinra Keycard	(Key)
00000079:Hojo's Research Lab Keycard	(Key)
0000007A:Combat Analyzer	(Key)
0000007B:Watch Security Key	(Key)
0000007C:Handmade Necklace	(Key)
0000007E:Behemoth Horn	(Key)
0000007F:Medicinal Flowers	(Key)
00000084:Sam's Delivery Lifetime Pass	(Key)
0000008B:Madam M’s Requests	(Key)
0000008C:Sam's Requests	(Key)
0000008D:The Sauce	(Key)
0000008E:Medicine Voucher	(Key)
0000008F:VIP Card	(Key)
00000090:Yellow Flower	(Key)
00000094:Graveyard Key	(Key)
00000095:Guardian Angel’s Calling Cards	(Key)
00000096:Vialabrew	(Key)
00000097:Crimson Spike	(Key)
00000098:Bottle of Antiemetic	(Key)
00000099:Deodorizing Tablets	(Key)
0000009A:Packets of Antacid	(Key)
0000009B:Moogle Membership Card	(Key)
0000009C:Gysahl Greens	(Key)
0000009D:Doctor's List	(Key)
0000009E:Moogle's Mortar	(Key)
0000009F:Map to the Hideout	(Key)
000000A0:Ruby Tiara	(Key)
000000A1:Diamond Tiara	(Key)
000000A2:Emerald Tiara	(Key)
000000A3:Johnny's Wallet	(Key)
000000A4:Corneo Vault Key	(Key)
000000A5:Shinra Keycard	(Key)
000000A6:Shinra Keycard	(Key)
000000A7:Shinra Keycard	(Key)
000000A8:Shinra Executive Keycard	(Key)
000000A9:Letter from the Guardian Angel	(Key)
000000AA:Andrea's Earrings	(Key)
000000AB:Real Calling Card	(Key)
000000AC:Fake Calling Card	(Key)
000000AD:Corneo Vault Note	(Key)
0000013C:The Art of Swordplay Vol. I	(Key)
0000013D:The Art of Swordplay Vol. II	(Key)
0000013E:The Art of Swordplay Vol. III	(Key)
0000013F:The Art of Swordplay Vol. IV	(Key)
00000140:The Art of Swordplay Vol. V	(Key)
00000141:The Art of Swordplay Vol. VI	(Key)
00000142:The Art of Swordplay Vol. VII	(Key)
00000143:The Art of Swordplay Vol. VIII	(Key)
00000144:The Art of Swordplay Vol. IX	(Key)
00000145:The Art of Swordplay Vol. X	(Key)
00000146:The Art of Swordplay Vol. XI	(Key)
00000147:The Art of Swordplay Vol. XII	(Key)
00000148:The Art of Swordplay Vol. XIII	(Key)
00000149:The Art of Swordplay Vol. XIV	(Key)
0000014B:Sharpshooter's Companion Vol. I	(Key)
0000014C:Sharpshooter's Companion Vol. II	(Key)
0000014D:Sharpshooter's Companion Vol. III	(Key)
0000014E:Sharpshooter's Companion Vol. IV	(Key)
0000014F:Sharpshooter's Companion Vol. V	(Key)
00000150:Sharpshooter's Companion Vol. VI	(Key)
00000151:Sharpshooter's Companion Vol. VII	(Key)
00000152:Sharpshooter's Companion Vol. VIII	(Key)
00000153:Sharpshooter's Companion Vol. IX	(Key)
00000154:Sharpshooter's Companion Vol. X	(Key)
00000155:Sharpshooter's Companion Vol. XI	(Key)
00000156:Sharpshooter's Companion Vol. XII	(Key)
00000157:Sharpshooter's Companion Vol. XIII	(Key)
00000158:Sharpshooter's Companion Vol. XIV	(Key)
0000015A:Way of the First Vol. I	(Key)
0000015B:Way of the First Vol. II	(Key)
0000015C:Way of the First Vol. III	(Key)
0000015D:Way of the First Vol. IV	(Key)
0000015E:Way of the First Vol. V	(Key)
0000015F:Way of the First Vol. VI	(Key)
00000160:Way of the First Vol. VII	(Key)
00000161:Way of the First Vol. VIII	(Key)
00000162:Way of the First Vol. IX	(Key)
00000163:Way of the First Vol. X	(Key)
00000164:Way of the First Vol. XI	(Key)
00000165:Way of the First Vol. XII	(Key)
00000166:Way of the First Vol. XIII	(Key)
00000167:Way of the First Vol. XIV	(Key)
00000169:Telluric Scriptures Vol. I	(Key)
0000016A:Telluric Scriptures Vol. II	(Key)
0000016B:Telluric Scriptures Vol. III	(Key)
0000016C:Telluric Scriptures Vol. IV	(Key)
0000016D:Telluric Scriptures Vol. V	(Key)
0000016E:Telluric Scriptures Vol. VI	(Key)
0000016F:Telluric Scriptures Vol. VII	(Key)
00000170:Telluric Scriptures Vol. VIII	(Key)
00000171:Telluric Scriptures Vol. IX	(Key)
00000172:Telluric Scriptures Vol. X	(Key)
00000173:Telluric Scriptures Vol. XI	(Key)
00000174:Telluric Scriptures Vol. XII	(Key)
00000175:Telluric Scriptures Vol. XIII	(Key)
00000176:Telluric Scriptures Vol. XIV	(Key)
0000017C:Legacy: Ascension	(Key)
0000017D:Legacy: Catastrophe	(Key)
0000017E:Legacy: Dolphin Flurry	(Key)
0000017F:Legacy: Planet's Protection	(Key)
0000235A:Enchanted Ring	(Accessories)
0000235B:Supernatural Wristguards	(Accessories)
0000235C:Survival Vest	(Accessories)
0000235D:Platinum Earrings	(Accessories)
0000235E:Timeworn Talisman	(Accessories)
0000235F:Midgar Bangle	(Armor)
00002360:Shinra Bangle	(Armor)
00002361:Corneo Armlet	(Armor)
00002362:Superstar Belt	(Accessories)
00002363:Mako Crystal	(Accessories)
00002364:Gotterdammerung	(Accessories)
00002711:Healing Materia	(Materia)
00002712:Cleansing Materia	(Materia)
00002713:Revival Materia	(Materia)
00002714:Fire Materia	(Materia)
00002715:Ice Materia	(Materia)
00002716:Lightning Materia	(Materia)
00002717:Wind Materia	(Materia)
00002718:Poison Materia	(Materia)
00002719:Binding Materia	(Materia)
0000271A:Time Materia	(Materia)
0000271B:Barrier Materia	(Materia)
0000271C:Subversion Materia	(Materia)
00002AF9:Magnify Materia	(Materia)
00002AFA:Elemental Materia	(Materia)
00002AFB:Warding Materia	(Materia)
00002AFC:HP Absorption Materia	(Materia)
00002AFD:MP Absorption Materia	(Materia)
00002AFE:Synergy Materia	(Materia)
00002AFF:AP Up Materia	(Materia)
00002EE1:Steal Materia	(Materia)
00002EE2:Assess Materia	(Materia)
00002EE3:Enemy Skill Materia	(Materia)
00002EE4:Chakra Materia	(Materia)
00002EE5:Prayer Materia	(Materia)
00002EE6:ATB Boost Materia	(Materia)
000032C9:HP Up Materia	(Materia)
000032CA:MP Up Materia	(Materia)
000032CB:Magic Up Materia	(Materia)
000032CC:Luck Up Materia	(Materia)
000032CD:Gil Up Materia	(Materia)
000032CE:EXP Up Materia	(Materia)
000032CF:Item Master Materia	(Materia)
000032D0:ATB Stagger Materia	(Materia)
000032D1:First Strike Materia	(Materia)
000032D2:Steadfast Block Materia	(Materia)
000032D3:Skill Master Materia	(Materia)
000032D4:Deadly Dodge Materia	(Materia)
000032D5:Parry Materia	(Materia)
000032D6:ATB Assist Materia	(Materia)
000032D7:Auto-Cure  Materia	(Materia)
000032D8:Provoke Materia	(Materia)
000032D9:Pedometer Materia	(Materia)
000032DA:Refocus Materia	(Materia)
000036B1:Chocobo &amp; Moogle Materia	(Materia)
000036B2:Shiva Materia	(Materia)
000036B3:Ifrit Materia	(Materia)
000036B4:Leviathan Materia	(Materia)
000036B5:Bahamut Materia	(Materia)
000036B6:Fat Chocobo Materia	(Materia)
000036B7:Carbuncle Materia	(Materia)
000036B8:Cactuar Materia	(Materia)
000036B9:Chocobo Chick Materia	(Materia)
000037B1:Chocobo &amp; Moogle Materia	(Materia)
000037B2:Shiva Materia	(Materia)
000037B3:Ifrit Materia	(Materia)
000037B4:Leviathan Materia	(Materia)
000037B5:Bahamut Materia	(Materia)
000037B6:Fat Chocobo Materia	(Materia)
000037B7:Carbuncle Materia	(Materia)
000037B8:Cactuar Materia	(Materia)
000037B9:Chocobo Chick Materia	(Materia)
</DropDownList>
                  <ShowAsHex>1</ShowAsHex>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>CUR_ITEM_BASE</Address>
                  <Offsets>
                    <Offset>8</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>42</ID>
                  <Description>"Count"</Description>
                  <DropDownList DisplayValueAsItem="1">00000000:Item
00000001:Gil
00000002:Key
00000008:Armor
00000009:Accessories
0000000A:Music Collection
</DropDownList>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>CUR_ITEM_BASE</Address>
                  <Offsets>
                    <Offset>C</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>43</ID>
                  <Description>"Type"</Description>
                  <DropDownList DisplayValueAsItem="1">00000000:Item
00000001:Gil
00000002:Key
00000008:Armor
00000009:Accessories
0000000A:Music Collection
</DropDownList>
                  <ShowAsHex>1</ShowAsHex>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>CUR_ITEM_BASE</Address>
                  <Offsets>
                    <Offset>10</Offset>
                  </Offsets>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>44</ID>
              <Description>"ID (readonly)"</Description>
              <DropDownList DisplayValueAsItem="1">00000001:Potion
00000002:Hi-potion
00000003:Ether
00000004:Turbo Ether
00000005:Elixir
00000006:Phoenix Down
00000007:Antidote
00000008:Echo Mist
00000009:Adrenaline
0000000A:Sedative
0000000B:Remedy
0000000C:Celeris
0000000D:Grenade
0000000E:Spiderweb
0000000F:Hazardous Material
00000010:Big Bomber
00000011:Molotov Cocktail
00000012:Orb of Gravity
00000013:Smelling Salts
00000014:Gil
00000015:Maiden's Kiss
00000016:Mega-Potion
0000001F:Ai Programing Core
00000020:Fuzzy Wuzzy
00000021:Mr. Cuddlesworth
00000032:Fire Damage (General)
00000033:Ice Damage (Fixed)
00000034:Lightning Damage (STR)
00000035:Wind Damage (Owner Max Hp Percentage)
00000036:Earth Damage (HP Percentage)
00000037:Holy Damage
00000038:Dark Damage
00000039:Non-Elemental Damage
0000003A:Fire Damage (Physical)
0000003B:Ice Damage (Physical)
0000003C:Lightning Damage (Physical)
0000003D:Wind Damage (Physical)
0000003E:Earth Damage (Physical)
0000003F:Holy Damage (Physical)
00000040:Dark Damage (Physical)
00000041:Non-Elemental Damage (Physical)
00000042:0 Damage Spell (General)
00000043:0 Damage Physical Attack (Fixed)
00000044:Reflect
00000045:Shield
00000046:Pierce Reflect
00000047:Nullify Reflect
00000048:Pierce Shield
00000049:Nullify Shield
0000004A:Toad
0000004B:Toad All
0000004C:Maiden's Kiss (All)
00000064:Sector 5 Reactor Card	(Key)
00000066:Tournament Entry Form	(Key)
00000067:Madam M's Endorsement	(Key)
00000068:Andrea's Endorsement	(Key)
0000006F:Shinra ID Card	(Key)
00000073:Grappling Gun	(Key)
00000074:Grappling Gun	(Key)
00000075:Key to the Sewers	(Key)
00000076:Moogle Medal	(Key)
00000077:Sam’s Coin	(Key)
00000078:Shinra Keycard	(Key)
00000079:Hojo's Research Lab Keycard	(Key)
0000007A:Combat Analyzer	(Key)
0000007B:Watch Security Key	(Key)
0000007C:Handmade Necklace	(Key)
0000007E:Behemoth Horn	(Key)
0000007F:Medicinal Flowers	(Key)
00000084:Sam's Delivery Lifetime Pass	(Key)
0000008B:Madam M’s Requests	(Key)
0000008C:Sam's Requests	(Key)
0000008D:The Sauce	(Key)
0000008E:Medicine Voucher	(Key)
0000008F:VIP Card	(Key)
00000090:Yellow Flower	(Key)
00000094:Graveyard Key	(Key)
00000095:Guardian Angel’s Calling Cards	(Key)
00000096:Vialabrew	(Key)
00000097:Crimson Spike	(Key)
00000098:Bottle of Antiemetic	(Key)
00000099:Deodorizing Tablets	(Key)
0000009A:Packets of Antacid	(Key)
0000009B:Moogle Membership Card	(Key)
0000009C:Gysahl Greens	(Key)
0000009D:Doctor's List	(Key)
0000009E:Moogle's Mortar	(Key)
0000009F:Map to the Hideout	(Key)
000000A0:Ruby Tiara	(Key)
000000A1:Diamond Tiara	(Key)
000000A2:Emerald Tiara	(Key)
000000A3:Johnny's Wallet	(Key)
000000A4:Corneo Vault Key	(Key)
000000A5:Shinra Keycard	(Key)
000000A6:Shinra Keycard	(Key)
000000A7:Shinra Keycard	(Key)
000000A8:Shinra Executive Keycard	(Key)
000000A9:Letter from the Guardian Angel	(Key)
000000AA:Andrea's Earrings	(Key)
000000AB:Real Calling Card	(Key)
000000AC:Fake Calling Card	(Key)
000000AD:Corneo Vault Note	(Key)
0000013C:The Art of Swordplay Vol. I	(Key)
0000013D:The Art of Swordplay Vol. II	(Key)
0000013E:The Art of Swordplay Vol. III	(Key)
0000013F:The Art of Swordplay Vol. IV	(Key)
00000140:The Art of Swordplay Vol. V	(Key)
00000141:The Art of Swordplay Vol. VI	(Key)
00000142:The Art of Swordplay Vol. VII	(Key)
00000143:The Art of Swordplay Vol. VIII	(Key)
00000144:The Art of Swordplay Vol. IX	(Key)
00000145:The Art of Swordplay Vol. X	(Key)
00000146:The Art of Swordplay Vol. XI	(Key)
00000147:The Art of Swordplay Vol. XII	(Key)
00000148:The Art of Swordplay Vol. XIII	(Key)
00000149:The Art of Swordplay Vol. XIV	(Key)
0000014B:Sharpshooter's Companion Vol. I	(Key)
0000014C:Sharpshooter's Companion Vol. II	(Key)
0000014D:Sharpshooter's Companion Vol. III	(Key)
0000014E:Sharpshooter's Companion Vol. IV	(Key)
0000014F:Sharpshooter's Companion Vol. V	(Key)
00000150:Sharpshooter's Companion Vol. VI	(Key)
00000151:Sharpshooter's Companion Vol. VII	(Key)
00000152:Sharpshooter's Companion Vol. VIII	(Key)
00000153:Sharpshooter's Companion Vol. IX	(Key)
00000154:Sharpshooter's Companion Vol. X	(Key)
00000155:Sharpshooter's Companion Vol. XI	(Key)
00000156:Sharpshooter's Companion Vol. XII	(Key)
00000157:Sharpshooter's Companion Vol. XIII	(Key)
00000158:Sharpshooter's Companion Vol. XIV	(Key)
0000015A:Way of the First Vol. I	(Key)
0000015B:Way of the First Vol. II	(Key)
0000015C:Way of the First Vol. III	(Key)
0000015D:Way of the First Vol. IV	(Key)
0000015E:Way of the First Vol. V	(Key)
0000015F:Way of the First Vol. VI	(Key)
00000160:Way of the First Vol. VII	(Key)
00000161:Way of the First Vol. VIII	(Key)
00000162:Way of the First Vol. IX	(Key)
00000163:Way of the First Vol. X	(Key)
00000164:Way of the First Vol. XI	(Key)
00000165:Way of the First Vol. XII	(Key)
00000166:Way of the First Vol. XIII	(Key)
00000167:Way of the First Vol. XIV	(Key)
00000169:Telluric Scriptures Vol. I	(Key)
0000016A:Telluric Scriptures Vol. II	(Key)
0000016B:Telluric Scriptures Vol. III	(Key)
0000016C:Telluric Scriptures Vol. IV	(Key)
0000016D:Telluric Scriptures Vol. V	(Key)
0000016E:Telluric Scriptures Vol. VI	(Key)
0000016F:Telluric Scriptures Vol. VII	(Key)
00000170:Telluric Scriptures Vol. VIII	(Key)
00000171:Telluric Scriptures Vol. IX	(Key)
00000172:Telluric Scriptures Vol. X	(Key)
00000173:Telluric Scriptures Vol. XI	(Key)
00000174:Telluric Scriptures Vol. XII	(Key)
00000175:Telluric Scriptures Vol. XIII	(Key)
00000176:Telluric Scriptures Vol. XIV	(Key)
0000017C:Legacy: Ascension	(Key)
0000017D:Legacy: Catastrophe	(Key)
0000017E:Legacy: Dolphin Flurry	(Key)
0000017F:Legacy: Planet's Protection	(Key)
0000235A:Enchanted Ring	(Accessories)
0000235B:Supernatural Wristguards	(Accessories)
0000235C:Survival Vest	(Accessories)
0000235D:Platinum Earrings	(Accessories)
0000235E:Timeworn Talisman	(Accessories)
0000235F:Midgar Bangle	(Armor)
00002360:Shinra Bangle	(Armor)
00002361:Corneo Armlet	(Armor)
00002362:Superstar Belt	(Accessories)
00002363:Mako Crystal	(Accessories)
00002364:Gotterdammerung	(Accessories)
00002711:Healing Materia	(Materia)
00002712:Cleansing Materia	(Materia)
00002713:Revival Materia	(Materia)
00002714:Fire Materia	(Materia)
00002715:Ice Materia	(Materia)
00002716:Lightning Materia	(Materia)
00002717:Wind Materia	(Materia)
00002718:Poison Materia	(Materia)
00002719:Binding Materia	(Materia)
0000271A:Time Materia	(Materia)
0000271B:Barrier Materia	(Materia)
0000271C:Subversion Materia	(Materia)
00002AF9:Magnify Materia	(Materia)
00002AFA:Elemental Materia	(Materia)
00002AFB:Warding Materia	(Materia)
00002AFC:HP Absorption Materia	(Materia)
00002AFD:MP Absorption Materia	(Materia)
00002AFE:Synergy Materia	(Materia)
00002AFF:AP Up Materia	(Materia)
00002EE1:Steal Materia	(Materia)
00002EE2:Assess Materia	(Materia)
00002EE3:Enemy Skill Materia	(Materia)
00002EE4:Chakra Materia	(Materia)
00002EE5:Prayer Materia	(Materia)
00002EE6:ATB Boost Materia	(Materia)
000032C9:HP Up Materia	(Materia)
000032CA:MP Up Materia	(Materia)
000032CB:Magic Up Materia	(Materia)
000032CC:Luck Up Materia	(Materia)
000032CD:Gil Up Materia	(Materia)
000032CE:EXP Up Materia	(Materia)
000032CF:Item Master Materia	(Materia)
000032D0:ATB Stagger Materia	(Materia)
000032D1:First Strike Materia	(Materia)
000032D2:Steadfast Block Materia	(Materia)
000032D3:Skill Master Materia	(Materia)
000032D4:Deadly Dodge Materia	(Materia)
000032D5:Parry Materia	(Materia)
000032D6:ATB Assist Materia	(Materia)
000032D7:Auto-Cure  Materia	(Materia)
000032D8:Provoke Materia	(Materia)
000032D9:Pedometer Materia	(Materia)
000032DA:Refocus Materia	(Materia)
000036B1:Chocobo &amp; Moogle Materia	(Materia)
000036B2:Shiva Materia	(Materia)
000036B3:Ifrit Materia	(Materia)
000036B4:Leviathan Materia	(Materia)
000036B5:Bahamut Materia	(Materia)
000036B6:Fat Chocobo Materia	(Materia)
000036B7:Carbuncle Materia	(Materia)
000036B8:Cactuar Materia	(Materia)
000036B9:Chocobo Chick Materia	(Materia)
000037B1:Chocobo &amp; Moogle Materia	(Materia)
000037B2:Shiva Materia	(Materia)
000037B3:Ifrit Materia	(Materia)
000037B4:Leviathan Materia	(Materia)
000037B5:Bahamut Materia	(Materia)
000037B6:Fat Chocobo Materia	(Materia)
000037B7:Carbuncle Materia	(Materia)
000037B8:Cactuar Materia	(Materia)
000037B9:Chocobo Chick Materia	(Materia)
</DropDownList>
              <ShowAsHex>1</ShowAsHex>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>808080</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>CUR_ITEM_ID</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>45</ID>
              <Description>"Type (Readonly)"</Description>
              <DropDownList DisplayValueAsItem="1">00000000:Item
00000001:Gil
00000002:Key
00000008:Armor
00000009:Accessories
0000000A:Music Collection
</DropDownList>
              <ShowAsHex>1</ShowAsHex>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>808080</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>CUR_ITEM_TYPE</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>46</ID>
              <Description>"Count (readonly)"</Description>
              <DropDownList DisplayValueAsItem="1">00000000:Item
00000001:Gil
00000002:Key
00000008:Armor
00000009:Accessories
0000000A:Music Collection
</DropDownList>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>808080</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>CUR_ITEM_CNT</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>47</ID>
              <Description>"Min. trigger count after used (must &gt;= 2)"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>MIN_ITEM_CNT</Address>
              <CheatEntries>
                <CheatEntry>
                  <ID>48</ID>
                  <Description>"***Notes: Only item count &gt;= this value will be triggered"</Description>
                  <Color>8080FF</Color>
                  <GroupHeader>1</GroupHeader>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>49</ID>
              <Description>"Min. Threshold"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>MIN_THRESHOLD_CNT</Address>
              <CheatEntries>
                <CheatEntry>
                  <ID>50</ID>
                  <Description>"***Notes: When item count &gt;= "Min. trigger count", item count will restore to this value"</Description>
                  <Color>8080FF</Color>
                  <GroupHeader>1</GroupHeader>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>51</ID>
          <Description>"Action: Buy/get item (stackable? at least count &gt;=2)"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_BUY,ff7remake_.exe,89 8A CC 4D 03 00 48) // should be unique
alloc(newmem,$1000,INJECT_BUY)

label(code)
label(return)
label(ITEM_BUY_BASE)
label(ITEM_BUY_MIN_CNT)
label(ITEM_BUY_THRESHOLD)
label(ITEM_BUY_INDEX)

newmem:

code:
  push rax
  mov rax, rdx
  add rax, 34DC0
  mov [ITEM_BUY_BASE], rax
  pop rax
  mov [ITEM_BUY_INDEX], eax

  cmp ecx, [ITEM_BUY_MIN_CNT]
  jl next1
  cmp ecx, [ITEM_BUY_THRESHOLD]
  cmovb ecx, [ITEM_BUY_THRESHOLD]
next1:

  mov [rdx+00034DCC],ecx
  jmp return

align 10 cc
  ITEM_BUY_BASE:
  dq 0
  ITEM_BUY_MIN_CNT:
  dd 5
  ITEM_BUY_REC_CNT:
  dd 1
  ITEM_BUY_THRESHOLD:
  dd #15
  ITEM_BUY_INDEX:
  dd FFFF

INJECT_BUY:
  jmp newmem
  nop
return:


registersymbol(ITEM_BUY_INDEX)
registersymbol(ITEM_BUY_BASE)
registersymbol(ITEM_BUY_MIN_CNT)
registersymbol(ITEM_BUY_THRESHOLD)
registersymbol(INJECT_BUY)

[DISABLE]

INJECT_BUY:
  db 89 8A CC 4D 03 00

unregistersymbol(ITEM_BUY_INDEX)
unregistersymbol(ITEM_BUY_THRESHOLD)
unregistersymbol(ITEM_BUY_MIN_CNT)
unregistersymbol(ITEM_BUY_BASE)
unregistersymbol(INJECT_BUY)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+B1D594

ff7remake_.exe+B1D56E: 83 F8 FF              - cmp eax,-01
ff7remake_.exe+B1D571: 74 62                 - je ff7remake_.exe+B1D5D5
ff7remake_.exe+B1D573: 8B 4D DF              - mov ecx,[rbp-21]
ff7remake_.exe+B1D576: 48 98                 - cdqe 
ff7remake_.exe+B1D578: 48 8D 90 88 00 00 00  - lea rdx,[rax+00000088]
ff7remake_.exe+B1D57F: 48 8D 14 50           - lea rdx,[rax+rdx*2]
ff7remake_.exe+B1D583: 49 8D 14 D7           - lea rdx,[r15+rdx*8]
ff7remake_.exe+B1D587: 03 8A CC 4D 03 00     - add ecx,[rdx+00034DCC]
ff7remake_.exe+B1D58D: 39 4D FF              - cmp [rbp-01],ecx
ff7remake_.exe+B1D590: 0F 4E 4D FF           - cmovle ecx,[rbp-01]
// ---------- INJECTING HERE ----------
ff7remake_.exe+B1D594: 89 8A CC 4D 03 00     - mov [rdx+00034DCC],ecx
// ---------- DONE INJECTING  ----------
ff7remake_.exe+B1D59A: 48 8B 4D 07           - mov rcx,[rbp+07]
ff7remake_.exe+B1D59E: 48 89 8A C0 4D 03 00  - mov [rdx+00034DC0],rcx
ff7remake_.exe+B1D5A5: EB 65                 - jmp ff7remake_.exe+B1D60C
ff7remake_.exe+B1D5A7: 48 8B 5D EF           - mov rbx,[rbp-11]
ff7remake_.exe+B1D5AB: 49 63 C5              - movsxd  rax,r13d
ff7remake_.exe+B1D5AE: 48 8D 0C C3           - lea rcx,[rbx+rax*8]
ff7remake_.exe+B1D5B2: E8 69 F6 FD FF        - call ff7remake_.exe+AFCC20
ff7remake_.exe+B1D5B7: 44 8B F0              - mov r14d,eax
ff7remake_.exe+B1D5BA: 48 85 DB              - test rbx,rbx
ff7remake_.exe+B1D5BD: 74 08                 - je ff7remake_.exe+B1D5C7
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>52</ID>
              <Description>"_Pointers"</Description>
              <Options moHideChildren="1"/>
              <GroupHeader>1</GroupHeader>
              <CheatEntries>
                <CheatEntry>
                  <ID>53</ID>
                  <Description>"Base Addr (0x18 per item)"</Description>
                  <Options moHideChildren="1"/>
                  <ShowAsHex>1</ShowAsHex>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>8 Bytes</VariableType>
                  <Address>ITEM_BUY_BASE</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>54</ID>
                  <Description>"Count"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>ITEM_BUY_BASE</Address>
                  <Offsets>
                    <Offset>C</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>55</ID>
                  <Description>"ID"</Description>
                  <DropDownList DisplayValueAsItem="1">00000001:Potion
00000002:Hi-potion
00000003:Ether
00000004:Turbo Ether
00000005:Elixir
00000006:Phoenix Down
00000007:Antidote
00000008:Echo Mist
00000009:Adrenaline
0000000A:Sedative
0000000B:Remedy
0000000C:Celeris
0000000D:Grenade
0000000E:Spiderweb
0000000F:Hazardous Material
00000010:Big Bomber
00000011:Molotov Cocktail
00000012:Orb of Gravity
00000013:Smelling Salts
00000014:Gil
00000015:Maiden's Kiss
00000016:Mega-Potion
0000001F:Ai Programing Core
00000020:Fuzzy Wuzzy
00000021:Mr. Cuddlesworth
00000032:Fire Damage (General)
00000033:Ice Damage (Fixed)
00000034:Lightning Damage (STR)
00000035:Wind Damage (Owner Max Hp Percentage)
00000036:Earth Damage (HP Percentage)
00000037:Holy Damage
00000038:Dark Damage
00000039:Non-Elemental Damage
0000003A:Fire Damage (Physical)
0000003B:Ice Damage (Physical)
0000003C:Lightning Damage (Physical)
0000003D:Wind Damage (Physical)
0000003E:Earth Damage (Physical)
0000003F:Holy Damage (Physical)
00000040:Dark Damage (Physical)
00000041:Non-Elemental Damage (Physical)
00000042:0 Damage Spell (General)
00000043:0 Damage Physical Attack (Fixed)
00000044:Reflect
00000045:Shield
00000046:Pierce Reflect
00000047:Nullify Reflect
00000048:Pierce Shield
00000049:Nullify Shield
0000004A:Toad
0000004B:Toad All
0000004C:Maiden's Kiss (All)
00000064:Sector 5 Reactor Card	(Key)
00000066:Tournament Entry Form	(Key)
00000067:Madam M's Endorsement	(Key)
00000068:Andrea's Endorsement	(Key)
0000006F:Shinra ID Card	(Key)
00000073:Grappling Gun	(Key)
00000074:Grappling Gun	(Key)
00000075:Key to the Sewers	(Key)
00000076:Moogle Medal	(Key)
00000077:Sam’s Coin	(Key)
00000078:Shinra Keycard	(Key)
00000079:Hojo's Research Lab Keycard	(Key)
0000007A:Combat Analyzer	(Key)
0000007B:Watch Security Key	(Key)
0000007C:Handmade Necklace	(Key)
0000007E:Behemoth Horn	(Key)
0000007F:Medicinal Flowers	(Key)
00000084:Sam's Delivery Lifetime Pass	(Key)
0000008B:Madam M’s Requests	(Key)
0000008C:Sam's Requests	(Key)
0000008D:The Sauce	(Key)
0000008E:Medicine Voucher	(Key)
0000008F:VIP Card	(Key)
00000090:Yellow Flower	(Key)
00000094:Graveyard Key	(Key)
00000095:Guardian Angel’s Calling Cards	(Key)
00000096:Vialabrew	(Key)
00000097:Crimson Spike	(Key)
00000098:Bottle of Antiemetic	(Key)
00000099:Deodorizing Tablets	(Key)
0000009A:Packets of Antacid	(Key)
0000009B:Moogle Membership Card	(Key)
0000009C:Gysahl Greens	(Key)
0000009D:Doctor's List	(Key)
0000009E:Moogle's Mortar	(Key)
0000009F:Map to the Hideout	(Key)
000000A0:Ruby Tiara	(Key)
000000A1:Diamond Tiara	(Key)
000000A2:Emerald Tiara	(Key)
000000A3:Johnny's Wallet	(Key)
000000A4:Corneo Vault Key	(Key)
000000A5:Shinra Keycard	(Key)
000000A6:Shinra Keycard	(Key)
000000A7:Shinra Keycard	(Key)
000000A8:Shinra Executive Keycard	(Key)
000000A9:Letter from the Guardian Angel	(Key)
000000AA:Andrea's Earrings	(Key)
000000AB:Real Calling Card	(Key)
000000AC:Fake Calling Card	(Key)
000000AD:Corneo Vault Note	(Key)
0000013C:The Art of Swordplay Vol. I	(Key)
0000013D:The Art of Swordplay Vol. II	(Key)
0000013E:The Art of Swordplay Vol. III	(Key)
0000013F:The Art of Swordplay Vol. IV	(Key)
00000140:The Art of Swordplay Vol. V	(Key)
00000141:The Art of Swordplay Vol. VI	(Key)
00000142:The Art of Swordplay Vol. VII	(Key)
00000143:The Art of Swordplay Vol. VIII	(Key)
00000144:The Art of Swordplay Vol. IX	(Key)
00000145:The Art of Swordplay Vol. X	(Key)
00000146:The Art of Swordplay Vol. XI	(Key)
00000147:The Art of Swordplay Vol. XII	(Key)
00000148:The Art of Swordplay Vol. XIII	(Key)
00000149:The Art of Swordplay Vol. XIV	(Key)
0000014B:Sharpshooter's Companion Vol. I	(Key)
0000014C:Sharpshooter's Companion Vol. II	(Key)
0000014D:Sharpshooter's Companion Vol. III	(Key)
0000014E:Sharpshooter's Companion Vol. IV	(Key)
0000014F:Sharpshooter's Companion Vol. V	(Key)
00000150:Sharpshooter's Companion Vol. VI	(Key)
00000151:Sharpshooter's Companion Vol. VII	(Key)
00000152:Sharpshooter's Companion Vol. VIII	(Key)
00000153:Sharpshooter's Companion Vol. IX	(Key)
00000154:Sharpshooter's Companion Vol. X	(Key)
00000155:Sharpshooter's Companion Vol. XI	(Key)
00000156:Sharpshooter's Companion Vol. XII	(Key)
00000157:Sharpshooter's Companion Vol. XIII	(Key)
00000158:Sharpshooter's Companion Vol. XIV	(Key)
0000015A:Way of the First Vol. I	(Key)
0000015B:Way of the First Vol. II	(Key)
0000015C:Way of the First Vol. III	(Key)
0000015D:Way of the First Vol. IV	(Key)
0000015E:Way of the First Vol. V	(Key)
0000015F:Way of the First Vol. VI	(Key)
00000160:Way of the First Vol. VII	(Key)
00000161:Way of the First Vol. VIII	(Key)
00000162:Way of the First Vol. IX	(Key)
00000163:Way of the First Vol. X	(Key)
00000164:Way of the First Vol. XI	(Key)
00000165:Way of the First Vol. XII	(Key)
00000166:Way of the First Vol. XIII	(Key)
00000167:Way of the First Vol. XIV	(Key)
00000169:Telluric Scriptures Vol. I	(Key)
0000016A:Telluric Scriptures Vol. II	(Key)
0000016B:Telluric Scriptures Vol. III	(Key)
0000016C:Telluric Scriptures Vol. IV	(Key)
0000016D:Telluric Scriptures Vol. V	(Key)
0000016E:Telluric Scriptures Vol. VI	(Key)
0000016F:Telluric Scriptures Vol. VII	(Key)
00000170:Telluric Scriptures Vol. VIII	(Key)
00000171:Telluric Scriptures Vol. IX	(Key)
00000172:Telluric Scriptures Vol. X	(Key)
00000173:Telluric Scriptures Vol. XI	(Key)
00000174:Telluric Scriptures Vol. XII	(Key)
00000175:Telluric Scriptures Vol. XIII	(Key)
00000176:Telluric Scriptures Vol. XIV	(Key)
0000017C:Legacy: Ascension	(Key)
0000017D:Legacy: Catastrophe	(Key)
0000017E:Legacy: Dolphin Flurry	(Key)
0000017F:Legacy: Planet's Protection	(Key)
000003E9:Buster Sword	(Weapon - Cloud)
000003EA:Iron Blade	(Weapon - Cloud)
000003EB:HardEdge	(Weapon - Cloud)
000003EC:MythrilSaber	(Weapon - Cloud)
000003ED:TwinStinger	(Weapon - Cloud)
000003EE:NailBat	(Weapon - Cloud)
000007D1:Gatilg Gun	(Weapon - Barret)
000007D2:Light Machine Gun	(Weapon - Barret)
000007D3:Steel Pincers	(Weapon - Barret)
000007D4:Big Bertha	(Weapon - Barret)
000007D5:EKG Cannon	(Weapon - Barret)
000007D6:Wrecking Ball	(Weapon - Barret)
00000BB9:Leather Gloves	(Weapon - Tifa)
00000BBA:Metal Knuckles	(Weapon - Tifa)
00000BBB:Feathered Gloves	(Weapon - Tifa)
00000BBC:Mythril Claws	(Weapon - Tifa)
00000BBD:Purple Pain	(Weapon - Tifa)
00000BBE:Sonic Strikers	(Weapon - Tifa)
00000FA1:Guard Stick	(Weapon - Aerith)
00000FA2:Silver Staff	(Weapon - Aerith)
00000FA3:Bladed Staff	(Weapon - Aerith)
00000FA4:Mythril Rod	(Weapon - Aerith)
00000FA5:Reinforced Staff	(Weapon - Aerith)
00000FA6:Arcane Scepter	(Weapon - Aerith)
000011C0:Stand Up	Music
000011D0:Good Night, Until Tomorrow	Music
00001389:Mythril Clip	(Weapons - RED XIII)
00002329:Bronze Bangle	(Armor)
0000232A:Iron Bangle	(Armor)
0000232B:Titanium Bangle	(Armor)
0000232C:Gothic Bangle	(Armor)
0000232D:Cog Bangle	(Armor)
0000232E:Chain Bangle	(Armor)
0000232F:Leather Bracer	(Armor)
00002330:Studded Bracer	(Armor)
00002331:Heavy-Duty Bracer 	(Armor)
00002332:Supreme Bracer	(Armor)
00002333:Iron Maiden	(Armor)
00002334:Mesmeric Bracelet	(Armor)
00002335:Mythril Bracelet	(Armor)
00002336:Sorcerer’s Armlet 	(Armor)
00002337:Rune Armlet	(Armor)
00002338:Astral Cuff	(Armor)
00002339:Power Wristguards	(Accessories)
0000233A:Bulletproof Vest	(Accessories)
0000233B:Earrings	(Accessories)
0000233C:Talisman	(Accessories)
0000233D:Headband	(Accessories)
0000233E:Star Pendant	(Accessories)
0000233F:Fury Ring	(Accessories)
00002340:Revival Earrings	(Accessories)
00002341:Whistlewind Scarf	(Accessories)
00002342:Mythical Amulet	(Accessories)
00002343:Healing Carcanet	(Accessories)
00002344:Clarity Pendant	(Accessories)
00002345:Transference Module	(Accessories)
00002346:Spectral Cogwheel	(Accessories)
00002347:Moogle's Amulet	(Accessories)
00002348:Enfeeblement Ring	(Accessories)
00002349:Crescent Moon Charm	(Accessories)
0000234A:Champion Belt	(Accessories)
0000234B:Protective Boots	(Accessories)
0000234C:Circlet	(Accessories)
0000234D:Tarot Cards	(Accessories)
0000234E:Otherworldly Crystal	(Accessories)
0000234F:Salvation Badge	(Accessories)
00002350:Star Bracelet	(Armor)
00002351:Caliginous Bracelet	(Armor)
00002352:Magician’s Bracelet	(Armor)
00002353:Geometric Bracelet	(Armor)
00002354:Force Bracelet	(Armor)
0000235A:Enchanted Ring	(Accessories)
0000235B:Supernatural Wristguards	(Accessories)
0000235C:Survival Vest	(Accessories)
0000235D:Platinum Earrings	(Accessories)
0000235E:Timeworn Talisman	(Accessories)
0000235F:Midgar Bangle	(Armor)
00002360:Shinra Bangle	(Armor)
00002361:Corneo Armlet	(Armor)
00002362:Superstar Belt	(Accessories)
00002363:Mako Crystal	(Accessories)
00002364:Gotterdammerung	(Accessories)
00002711:Healing Materia	(Materia)
00002712:Cleansing Materia	(Materia)
00002713:Revival Materia	(Materia)
00002714:Fire Materia	(Materia)
00002715:Ice Materia	(Materia)
00002716:Lightning Materia	(Materia)
00002717:Wind Materia	(Materia)
00002718:Poison Materia	(Materia)
00002719:Binding Materia	(Materia)
0000271A:Time Materia	(Materia)
0000271B:Barrier Materia	(Materia)
0000271C:Subversion Materia	(Materia)
00002AF9:Magnify Materia	(Materia)
00002AFA:Elemental Materia	(Materia)
00002AFB:Warding Materia	(Materia)
00002AFC:HP Absorption Materia	(Materia)
00002AFD:MP Absorption Materia	(Materia)
00002AFE:Synergy Materia	(Materia)
00002AFF:AP Up Materia	(Materia)
00002EE1:Steal Materia	(Materia)
00002EE2:Assess Materia	(Materia)
00002EE3:Enemy Skill Materia	(Materia)
00002EE4:Chakra Materia	(Materia)
00002EE5:Prayer Materia	(Materia)
00002EE6:ATB Boost Materia	(Materia)
000032C9:HP Up Materia	(Materia)
000032CA:MP Up Materia	(Materia)
000032CB:Magic Up Materia	(Materia)
000032CC:Luck Up Materia	(Materia)
000032CD:Gil Up Materia	(Materia)
000032CE:EXP Up Materia	(Materia)
000032CF:Item Master Materia	(Materia)
000032D0:ATB Stagger Materia	(Materia)
000032D1:First Strike Materia	(Materia)
000032D2:Steadfast Block Materia	(Materia)
000032D3:Skill Master Materia	(Materia)
000032D4:Deadly Dodge Materia	(Materia)
000032D5:Parry Materia	(Materia)
000032D6:ATB Assist Materia	(Materia)
000032D7:Auto-Cure  Materia	(Materia)
000032D8:Provoke Materia	(Materia)
000032D9:Pedometer Materia	(Materia)
000032DA:Refocus Materia	(Materia)
000036B1:Chocobo &amp; Moogle Materia	(Materia)
000036B2:Shiva Materia	(Materia)
000036B3:Ifrit Materia	(Materia)
000036B4:Leviathan Materia	(Materia)
000036B5:Bahamut Materia	(Materia)
000036B6:Fat Chocobo Materia	(Materia)
000036B7:Carbuncle Materia	(Materia)
000036B8:Cactuar Materia	(Materia)
000036B9:Chocobo Chick Materia	(Materia)
000037B1:Chocobo &amp; Moogle Materia	(Materia)
000037B2:Shiva Materia	(Materia)
000037B3:Ifrit Materia	(Materia)
000037B4:Leviathan Materia	(Materia)
000037B5:Bahamut Materia	(Materia)
000037B6:Fat Chocobo Materia	(Materia)
000037B7:Carbuncle Materia	(Materia)
000037B8:Cactuar Materia	(Materia)
000037B9:Chocobo Chick Materia	(Materia)
</DropDownList>
                  <ShowAsHex>1</ShowAsHex>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>ITEM_BUY_BASE</Address>
                  <Offsets>
                    <Offset>8</Offset>
                  </Offsets>
                  <CheatEntries>
                    <CheatEntry>
                      <ID>56</ID>
                      <Description>"***Note: Be careful if you want to change this to other one"</Description>
                      <Color>8080FF</Color>
                      <GroupHeader>1</GroupHeader>
                    </CheatEntry>
                  </CheatEntries>
                </CheatEntry>
                <CheatEntry>
                  <ID>57</ID>
                  <Description>"Item index"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>ITEM_BUY_INDEX</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>58</ID>
                  <Description>"Type"</Description>
                  <DropDownList DisplayValueAsItem="1">00000000:Item
00000001:Gil
00000002:Key
00000008:Armor
00000009:Accessories
0000000A:Music Collection
</DropDownList>
                  <ShowAsHex>1</ShowAsHex>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>ITEM_BUY_BASE</Address>
                  <Offsets>
                    <Offset>10</Offset>
                  </Offsets>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>59</ID>
              <Description>"Min. count (Usage: same as above script)"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>ITEM_BUY_MIN_CNT</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>60</ID>
              <Description>"Min. Threshold"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>C08000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>ITEM_BUY_THRESHOLD</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>61</ID>
          <Description>"New item ID"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_NEW_ITEM_ID,ff7remake_.exe,41 89 8C C7 4C 56 03 00) // should be unique
alloc(newmem,$1000,INJECT_NEW_ITEM_ID)

label(code)
label(return)
label(NEW_ITEM_BASE_ADDR)
label(NEW_ITEM_INDEX)

newmem:

code:
  push rax
  push rdx
  push rbx
  mov rbx, 8
  mul rbx
  add rax, r15
  add rax, 35640
  mov [NEW_ITEM_BASE_ADDR], rax
  pop rbx
  pop rdx
  pop rax


  mov [r15+rax*8+0003564C],ecx
  jmp return

align 10 cc
  NEW_ITEM_BASE_ADDR:
  dq 0
  NEW_ITEM_INDEX:
  dd ffff


INJECT_NEW_ITEM_ID:
  jmp newmem
  nop 3
return:

registersymbol(NEW_ITEM_INDEX)
registersymbol(NEW_ITEM_BASE_ADDR)
registersymbol(INJECT_NEW_ITEM_ID)


[DISABLE]

INJECT_NEW_ITEM_ID:
  db 41 89 8C C7 4C 56 03 00

unregistersymbol(NEW_ITEM_INDEX)
unregistersymbol(NEW_ITEM_BASE_ADDR)
unregistersymbol(INJECT_NEW_ITEM_ID)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+B1D5F0

ff7remake_.exe+B1D5C7: 44 8B 6D CB              - mov r13d,[rbp-35]
ff7remake_.exe+B1D5CB: 44 0F B6 45 C8           - movzx r8d,byte ptr [rbp-38]
ff7remake_.exe+B1D5D0: E9 62 FF FF FF           - jmp ff7remake_.exe+B1D537
ff7remake_.exe+B1D5D5: 83 FF FF                 - cmp edi,-01
ff7remake_.exe+B1D5D8: 74 32                    - je ff7remake_.exe+B1D60C
ff7remake_.exe+B1D5DA: 48 63 CF                 - movsxd  rcx,edi
ff7remake_.exe+B1D5DD: 48 8D 04 49              - lea rax,[rcx+rcx*2]
ff7remake_.exe+B1D5E1: 45 88 AC C7 50 56 03 00  - mov [r15+rax*8+00035650],r13l
ff7remake_.exe+B1D5E9: 48 8D 04 49              - lea rax,[rcx+rcx*2]
ff7remake_.exe+B1D5ED: 8B 4D DF                 - mov ecx,[rbp-21]
// ---------- INJECTING HERE ----------
ff7remake_.exe+B1D5F0: 41 89 8C C7 4C 56 03 00  - mov [r15+rax*8+0003564C],ecx
// ---------- DONE INJECTING  ----------
ff7remake_.exe+B1D5F8: 48 8B 4D 07              - mov rcx,[rbp+07]
ff7remake_.exe+B1D5FC: 49 89 8C C7 40 56 03 00  - mov [r15+rax*8+00035640],rcx
ff7remake_.exe+B1D604: 41 89 B4 C7 48 56 03 00  - mov [r15+rax*8+00035648],esi
ff7remake_.exe+B1D60C: 83 7D 03 02              - cmp dword ptr [rbp+03],02
ff7remake_.exe+B1D610: 0F 85 94 00 00 00        - jne ff7remake_.exe+B1D6AA
ff7remake_.exe+B1D616: 8B 4D E3                 - mov ecx,[rbp-1D]
ff7remake_.exe+B1D619: 83 F9 FF                 - cmp ecx,-01
ff7remake_.exe+B1D61C: 0F 84 88 00 00 00        - je ff7remake_.exe+B1D6AA
ff7remake_.exe+B1D622: 8D 41 F6                 - lea eax,[rcx-0A]
ff7remake_.exe+B1D625: 3C 04                    - cmp al,04
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>62</ID>
              <Description>"Item base address"</Description>
              <ShowAsHex>1</ShowAsHex>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>808080</Color>
              <VariableType>8 Bytes</VariableType>
              <Address>NEW_ITEM_BASE_ADDR</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>63</ID>
              <Description>"Item index"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>808080</Color>
              <VariableType>8 Bytes</VariableType>
              <Address>NEW_ITEM_INDEX</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>64</ID>
              <Description>"ID_"</Description>
              <DropDownList DisplayValueAsItem="1">00000001:Potion
00000002:Hi-potion
00000003:Ether
00000004:Turbo Ether
00000005:Elixir
00000006:Phoenix Down
00000007:Antidote
00000008:Echo Mist
00000009:Adrenaline
0000000A:Sedative
0000000B:Remedy
0000000C:Celeris
0000000D:Grenade
0000000E:Spiderweb
0000000F:Hazardous Material
00000010:Big Bomber
00000011:Molotov Cocktail
00000012:Orb of Gravity
00000013:Smelling Salts
00000014:Gil
00000015:Maiden's Kiss
00000016:Mega-Potion
0000001F:Ai Programing Core
00000020:Fuzzy Wuzzy
00000021:Mr. Cuddlesworth
00000032:Fire Damage (General)
00000033:Ice Damage (Fixed)
00000034:Lightning Damage (STR)
00000035:Wind Damage (Owner Max Hp Percentage)
00000036:Earth Damage (HP Percentage)
00000037:Holy Damage
00000038:Dark Damage
00000039:Non-Elemental Damage
0000003A:Fire Damage (Physical)
0000003B:Ice Damage (Physical)
0000003C:Lightning Damage (Physical)
0000003D:Wind Damage (Physical)
0000003E:Earth Damage (Physical)
0000003F:Holy Damage (Physical)
00000040:Dark Damage (Physical)
00000041:Non-Elemental Damage (Physical)
00000042:0 Damage Spell (General)
00000043:0 Damage Physical Attack (Fixed)
00000044:Reflect
00000045:Shield
00000046:Pierce Reflect
00000047:Nullify Reflect
00000048:Pierce Shield
00000049:Nullify Shield
0000004A:Toad
0000004B:Toad All
0000004C:Maiden's Kiss (All)
00000064:Sector 5 Reactor Card	(Key)
00000066:Tournament Entry Form	(Key)
00000067:Madam M's Endorsement	(Key)
00000068:Andrea's Endorsement	(Key)
0000006F:Shinra ID Card	(Key)
00000073:Grappling Gun	(Key)
00000074:Grappling Gun	(Key)
00000075:Key to the Sewers	(Key)
00000076:Moogle Medal	(Key)
00000077:Sam’s Coin	(Key)
00000078:Shinra Keycard	(Key)
00000079:Hojo's Research Lab Keycard	(Key)
0000007A:Combat Analyzer	(Key)
0000007B:Watch Security Key	(Key)
0000007C:Handmade Necklace	(Key)
0000007E:Behemoth Horn	(Key)
0000007F:Medicinal Flowers	(Key)
00000084:Sam's Delivery Lifetime Pass	(Key)
0000008B:Madam M’s Requests	(Key)
0000008C:Sam's Requests	(Key)
0000008D:The Sauce	(Key)
0000008E:Medicine Voucher	(Key)
0000008F:VIP Card	(Key)
00000090:Yellow Flower	(Key)
00000094:Graveyard Key	(Key)
00000095:Guardian Angel’s Calling Cards	(Key)
00000096:Vialabrew	(Key)
00000097:Crimson Spike	(Key)
00000098:Bottle of Antiemetic	(Key)
00000099:Deodorizing Tablets	(Key)
0000009A:Packets of Antacid	(Key)
0000009B:Moogle Membership Card	(Key)
0000009C:Gysahl Greens	(Key)
0000009D:Doctor's List	(Key)
0000009E:Moogle's Mortar	(Key)
0000009F:Map to the Hideout	(Key)
000000A0:Ruby Tiara	(Key)
000000A1:Diamond Tiara	(Key)
000000A2:Emerald Tiara	(Key)
000000A3:Johnny's Wallet	(Key)
000000A4:Corneo Vault Key	(Key)
000000A5:Shinra Keycard	(Key)
000000A6:Shinra Keycard	(Key)
000000A7:Shinra Keycard	(Key)
000000A8:Shinra Executive Keycard	(Key)
000000A9:Letter from the Guardian Angel	(Key)
000000AA:Andrea's Earrings	(Key)
000000AB:Real Calling Card	(Key)
000000AC:Fake Calling Card	(Key)
000000AD:Corneo Vault Note	(Key)
0000013C:The Art of Swordplay Vol. I	(Key)
0000013D:The Art of Swordplay Vol. II	(Key)
0000013E:The Art of Swordplay Vol. III	(Key)
0000013F:The Art of Swordplay Vol. IV	(Key)
00000140:The Art of Swordplay Vol. V	(Key)
00000141:The Art of Swordplay Vol. VI	(Key)
00000142:The Art of Swordplay Vol. VII	(Key)
00000143:The Art of Swordplay Vol. VIII	(Key)
00000144:The Art of Swordplay Vol. IX	(Key)
00000145:The Art of Swordplay Vol. X	(Key)
00000146:The Art of Swordplay Vol. XI	(Key)
00000147:The Art of Swordplay Vol. XII	(Key)
00000148:The Art of Swordplay Vol. XIII	(Key)
00000149:The Art of Swordplay Vol. XIV	(Key)
0000014B:Sharpshooter's Companion Vol. I	(Key)
0000014C:Sharpshooter's Companion Vol. II	(Key)
0000014D:Sharpshooter's Companion Vol. III	(Key)
0000014E:Sharpshooter's Companion Vol. IV	(Key)
0000014F:Sharpshooter's Companion Vol. V	(Key)
00000150:Sharpshooter's Companion Vol. VI	(Key)
00000151:Sharpshooter's Companion Vol. VII	(Key)
00000152:Sharpshooter's Companion Vol. VIII	(Key)
00000153:Sharpshooter's Companion Vol. IX	(Key)
00000154:Sharpshooter's Companion Vol. X	(Key)
00000155:Sharpshooter's Companion Vol. XI	(Key)
00000156:Sharpshooter's Companion Vol. XII	(Key)
00000157:Sharpshooter's Companion Vol. XIII	(Key)
00000158:Sharpshooter's Companion Vol. XIV	(Key)
0000015A:Way of the First Vol. I	(Key)
0000015B:Way of the First Vol. II	(Key)
0000015C:Way of the First Vol. III	(Key)
0000015D:Way of the First Vol. IV	(Key)
0000015E:Way of the First Vol. V	(Key)
0000015F:Way of the First Vol. VI	(Key)
00000160:Way of the First Vol. VII	(Key)
00000161:Way of the First Vol. VIII	(Key)
00000162:Way of the First Vol. IX	(Key)
00000163:Way of the First Vol. X	(Key)
00000164:Way of the First Vol. XI	(Key)
00000165:Way of the First Vol. XII	(Key)
00000166:Way of the First Vol. XIII	(Key)
00000167:Way of the First Vol. XIV	(Key)
00000169:Telluric Scriptures Vol. I	(Key)
0000016A:Telluric Scriptures Vol. II	(Key)
0000016B:Telluric Scriptures Vol. III	(Key)
0000016C:Telluric Scriptures Vol. IV	(Key)
0000016D:Telluric Scriptures Vol. V	(Key)
0000016E:Telluric Scriptures Vol. VI	(Key)
0000016F:Telluric Scriptures Vol. VII	(Key)
00000170:Telluric Scriptures Vol. VIII	(Key)
00000171:Telluric Scriptures Vol. IX	(Key)
00000172:Telluric Scriptures Vol. X	(Key)
00000173:Telluric Scriptures Vol. XI	(Key)
00000174:Telluric Scriptures Vol. XII	(Key)
00000175:Telluric Scriptures Vol. XIII	(Key)
00000176:Telluric Scriptures Vol. XIV	(Key)
0000017C:Legacy: Ascension	(Key)
0000017D:Legacy: Catastrophe	(Key)
0000017E:Legacy: Dolphin Flurry	(Key)
0000017F:Legacy: Planet's Protection	(Key)
000003E9:Buster Sword	(Weapon - Cloud)
000003EA:Iron Blade	(Weapon - Cloud)
000003EB:HardEdge	(Weapon - Cloud)
000003EC:MythrilSaber	(Weapon - Cloud)
000003ED:TwinStinger	(Weapon - Cloud)
000003EE:NailBat	(Weapon - Cloud)
000007D1:Gatilg Gun	(Weapon - Barret)
000007D2:Light Machine Gun	(Weapon - Barret)
000007D3:Steel Pincers	(Weapon - Barret)
000007D4:Big Bertha	(Weapon - Barret)
000007D5:EKG Cannon	(Weapon - Barret)
000007D6:Wrecking Ball	(Weapon - Barret)
00000BB9:Leather Gloves	(Weapon - Tifa)
00000BBA:Metal Knuckles	(Weapon - Tifa)
00000BBB:Feathered Gloves	(Weapon - Tifa)
00000BBC:Mythril Claws	(Weapon - Tifa)
00000BBD:Purple Pain	(Weapon - Tifa)
00000BBE:Sonic Strikers	(Weapon - Tifa)
00000FA1:Guard Stick	(Weapon - Aerith)
00000FA2:Silver Staff	(Weapon - Aerith)
00000FA3:Bladed Staff	(Weapon - Aerith)
00000FA4:Mythril Rod	(Weapon - Aerith)
00000FA5:Reinforced Staff	(Weapon - Aerith)
00000FA6:Arcane Scepter	(Weapon - Aerith)
000011C0:Stand Up	Music
000011D0:Good Night, Until Tomorrow	Music
00001389:Mythril Clip	(Weapons - RED XIII)
00002329:Bronze Bangle	(Armor)
0000232A:Iron Bangle	(Armor)
0000232B:Titanium Bangle	(Armor)
0000232C:Gothic Bangle	(Armor)
0000232D:Cog Bangle	(Armor)
0000232E:Chain Bangle	(Armor)
0000232F:Leather Bracer	(Armor)
00002330:Studded Bracer	(Armor)
00002331:Heavy-Duty Bracer 	(Armor)
00002332:Supreme Bracer	(Armor)
00002333:Iron Maiden	(Armor)
00002334:Mesmeric Bracelet	(Armor)
00002335:Mythril Bracelet	(Armor)
00002336:Sorcerer’s Armlet 	(Armor)
00002337:Rune Armlet	(Armor)
00002338:Astral Cuff	(Armor)
00002339:Power Wristguards	(Accessories)
0000233A:Bulletproof Vest	(Accessories)
0000233B:Earrings	(Accessories)
0000233C:Talisman	(Accessories)
0000233D:Headband	(Accessories)
0000233E:Star Pendant	(Accessories)
0000233F:Fury Ring	(Accessories)
00002340:Revival Earrings	(Accessories)
00002341:Whistlewind Scarf	(Accessories)
00002342:Mythical Amulet	(Accessories)
00002343:Healing Carcanet	(Accessories)
00002344:Clarity Pendant	(Accessories)
00002345:Transference Module	(Accessories)
00002346:Spectral Cogwheel	(Accessories)
00002347:Moogle's Amulet	(Accessories)
00002348:Enfeeblement Ring	(Accessories)
00002349:Crescent Moon Charm	(Accessories)
0000234A:Champion Belt	(Accessories)
0000234B:Protective Boots	(Accessories)
0000234C:Circlet	(Accessories)
0000234D:Tarot Cards	(Accessories)
0000234E:Otherworldly Crystal	(Accessories)
0000234F:Salvation Badge	(Accessories)
00002350:Star Bracelet	(Armor)
00002351:Caliginous Bracelet	(Armor)
00002352:Magician’s Bracelet	(Armor)
00002353:Geometric Bracelet	(Armor)
00002354:Force Bracelet	(Armor)
0000235A:Enchanted Ring	(Accessories)
0000235B:Supernatural Wristguards	(Accessories)
0000235C:Survival Vest	(Accessories)
0000235D:Platinum Earrings	(Accessories)
0000235E:Timeworn Talisman	(Accessories)
0000235F:Midgar Bangle	(Armor)
00002360:Shinra Bangle	(Armor)
00002361:Corneo Armlet	(Armor)
00002362:Superstar Belt	(Accessories)
00002363:Mako Crystal	(Accessories)
00002364:Gotterdammerung	(Accessories)
00002711:Healing Materia	(Materia)
00002712:Cleansing Materia	(Materia)
00002713:Revival Materia	(Materia)
00002714:Fire Materia	(Materia)
00002715:Ice Materia	(Materia)
00002716:Lightning Materia	(Materia)
00002717:Wind Materia	(Materia)
00002718:Poison Materia	(Materia)
00002719:Binding Materia	(Materia)
0000271A:Time Materia	(Materia)
0000271B:Barrier Materia	(Materia)
0000271C:Subversion Materia	(Materia)
00002AF9:Magnify Materia	(Materia)
00002AFA:Elemental Materia	(Materia)
00002AFB:Warding Materia	(Materia)
00002AFC:HP Absorption Materia	(Materia)
00002AFD:MP Absorption Materia	(Materia)
00002AFE:Synergy Materia	(Materia)
00002AFF:AP Up Materia	(Materia)
00002EE1:Steal Materia	(Materia)
00002EE2:Assess Materia	(Materia)
00002EE3:Enemy Skill Materia	(Materia)
00002EE4:Chakra Materia	(Materia)
00002EE5:Prayer Materia	(Materia)
00002EE6:ATB Boost Materia	(Materia)
000032C9:HP Up Materia	(Materia)
000032CA:MP Up Materia	(Materia)
000032CB:Magic Up Materia	(Materia)
000032CC:Luck Up Materia	(Materia)
000032CD:Gil Up Materia	(Materia)
000032CE:EXP Up Materia	(Materia)
000032CF:Item Master Materia	(Materia)
000032D0:ATB Stagger Materia	(Materia)
000032D1:First Strike Materia	(Materia)
000032D2:Steadfast Block Materia	(Materia)
000032D3:Skill Master Materia	(Materia)
000032D4:Deadly Dodge Materia	(Materia)
000032D5:Parry Materia	(Materia)
000032D6:ATB Assist Materia	(Materia)
000032D7:Auto-Cure  Materia	(Materia)
000032D8:Provoke Materia	(Materia)
000032D9:Pedometer Materia	(Materia)
000032DA:Refocus Materia	(Materia)
000036B1:Chocobo &amp; Moogle Materia	(Materia)
000036B2:Shiva Materia	(Materia)
000036B3:Ifrit Materia	(Materia)
000036B4:Leviathan Materia	(Materia)
000036B5:Bahamut Materia	(Materia)
000036B6:Fat Chocobo Materia	(Materia)
000036B7:Carbuncle Materia	(Materia)
000036B8:Cactuar Materia	(Materia)
000036B9:Chocobo Chick Materia	(Materia)
000037B1:Chocobo &amp; Moogle Materia	(Materia)
000037B2:Shiva Materia	(Materia)
000037B3:Ifrit Materia	(Materia)
000037B4:Leviathan Materia	(Materia)
000037B5:Bahamut Materia	(Materia)
000037B6:Fat Chocobo Materia	(Materia)
000037B7:Carbuncle Materia	(Materia)
000037B8:Cactuar Materia	(Materia)
000037B9:Chocobo Chick Materia	(Materia)
</DropDownList>
              <ShowAsHex>1</ShowAsHex>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>FF8080</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>NEW_ITEM_BASE_ADDR</Address>
              <Offsets>
                <Offset>8</Offset>
              </Offsets>
            </CheatEntry>
            <CheatEntry>
              <ID>65</ID>
              <Description>"Count"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>FF8080</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>NEW_ITEM_BASE_ADDR</Address>
              <Offsets>
                <Offset>C</Offset>
              </Offsets>
            </CheatEntry>
            <CheatEntry>
              <ID>66</ID>
              <Description>"Type"</Description>
              <DropDownList DisplayValueAsItem="1">00000000:Item
00000001:Gil
00000002:Key/Recipe
00000008:Armor
00000009:Accessories
0000000A:Music Collection
</DropDownList>
              <ShowAsHex>1</ShowAsHex>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>FF8080</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>NEW_ITEM_BASE_ADDR</Address>
              <Offsets>
                <Offset>10</Offset>
              </Offsets>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>67</ID>
      <Description>"Materia editor (menu: Item-&gt;Materia)"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_MATERIA_EDITOR,ff7remake_.exe,8B 84 08 38 18 00 00 48 83) // should be unique
alloc(newmem,$1000,INJECT_MATERIA_EDITOR)

label(code)
label(return)
label(MATERIA_EDITOR_BASE_ADDR)

newmem:

code:
  push rax
  lea rax, [rax+rcx+00001828]
  mov [MATERIA_EDITOR_BASE_ADDR], rax
  pop rax

  mov eax,[rax+rcx+00001838]
  jmp return

align 10 cc
  MATERIA_EDITOR_BASE_ADDR:
  dq 0


INJECT_MATERIA_EDITOR:
  jmp newmem
  nop 2
return:


registersymbol(MATERIA_EDITOR_BASE_ADDR)
registersymbol(INJECT_MATERIA_EDITOR)

[DISABLE]

INJECT_MATERIA_EDITOR:
  db 8B 84 08 38 18 00 00

unregistersymbol(MATERIA_EDITOR_BASE_ADDR)
unregistersymbol(INJECT_MATERIA_EDITOR)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+B049C0

ff7remake_.exe+B0499E: 81 FB E8 03 00 00     - cmp ebx,000003E8
ff7remake_.exe+B049A4: 72 08                 - jb ff7remake_.exe+B049AE
ff7remake_.exe+B049A6: 33 C0                 - xor eax,eax
ff7remake_.exe+B049A8: 48 83 C4 20           - add rsp,20
ff7remake_.exe+B049AC: 5B                    - pop rbx
ff7remake_.exe+B049AD: C3                    - ret 
ff7remake_.exe+B049AE: 48 8B 80 98 6D 0B 00  - mov rax,[rax+000B6D98]
ff7remake_.exe+B049B5: 48 8B CB              - mov rcx,rbx
ff7remake_.exe+B049B8: 48 C1 E1 05           - shl rcx,05
ff7remake_.exe+B049BC: 48 8B 40 10           - mov rax,[rax+10]
// ---------- INJECTING HERE ----------
ff7remake_.exe+B049C0: 8B 84 08 38 18 00 00  - mov eax,[rax+rcx+00001838]
// ---------- DONE INJECTING  ----------
ff7remake_.exe+B049C7: 48 83 C4 20           - add rsp,20
ff7remake_.exe+B049CB: 5B                    - pop rbx
ff7remake_.exe+B049CC: C3                    - ret 
ff7remake_.exe+B049CD: CC                    - int 3 
ff7remake_.exe+B049CE: CC                    - int 3 
ff7remake_.exe+B049CF: CC                    - int 3 
ff7remake_.exe+B049D0: 40 53                 - push rbx
ff7remake_.exe+B049D2: 48 83 EC 20           - sub rsp,20
ff7remake_.exe+B049D6: 48 8B 05 0B 8D C9 04  - mov rax,[ff7remake_.exe+579D6E8]
ff7remake_.exe+B049DD: 8B D9                 - mov ebx,ecx
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>68</ID>
          <Description>"Base address"</Description>
          <ShowAsHex>1</ShowAsHex>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>8 Bytes</VariableType>
          <Address>MATERIA_EDITOR_BASE_ADDR</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>69</ID>
          <Description>"Serial#"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8000</Color>
          <VariableType>2 Bytes</VariableType>
          <Address>MATERIA_EDITOR_BASE_ADDR</Address>
          <Offsets>
            <Offset>0</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>70</ID>
          <Description>"Level"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>Byte</VariableType>
          <Address>MATERIA_EDITOR_BASE_ADDR</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>71</ID>
          <Description>"Bind to char# (9:None)"</Description>
          <DropDownList DisplayValueAsItem="1">0:Cloud
1:Barret
2:Tifa
3:Aerith
9:None
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>Byte</VariableType>
          <Address>MATERIA_EDITOR_BASE_ADDR</Address>
          <Offsets>
            <Offset>9</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>72</ID>
          <Description>"ID (save &amp; reload , if changed this)"</Description>
          <DropDownList DisplayValueAsItem="1">00002711:Healing Materia	(Materia)
00002712:Cleansing Materia	(Materia)
00002713:Revival Materia	(Materia)
00002714:Fire Materia	(Materia)
00002715:Ice Materia	(Materia)
00002716:Lightning Materia	(Materia)
00002717:Wind Materia	(Materia)
00002718:Poison Materia	(Materia)
00002719:Binding Materia	(Materia)
0000271A:Time Materia	(Materia)
0000271B:Barrier Materia	(Materia)
0000271C:Subversion Materia	(Materia)
00002AF9:Magnify Materia	(Materia)
00002AFA:Elemental Materia	(Materia)
00002AFB:Warding Materia	(Materia)
00002AFC:HP Absorption Materia	(Materia)
00002AFD:MP Absorption Materia	(Materia)
00002AFE:Synergy Materia	(Materia)
00002AFF:AP Up Materia	(Materia)
00002EE1:Steal Materia	(Materia)
00002EE2:Assess Materia	(Materia)
00002EE3:Enemy Skill Materia	(Materia)
00002EE4:Chakra Materia	(Materia)
00002EE5:Prayer Materia	(Materia)
00002EE6:ATB Boost Materia	(Materia)
000032C9:HP Up Materia	(Materia)
000032CA:MP Up Materia	(Materia)
000032CB:Magic Up Materia	(Materia)
000032CC:Luck Up Materia	(Materia)
000032CD:Gil Up Materia	(Materia)
000032CE:EXP Up Materia	(Materia)
000032CF:Item Master Materia	(Materia)
000032D0:ATB Stagger Materia	(Materia)
000032D1:First Strike Materia	(Materia)
000032D2:Steadfast Block Materia	(Materia)
000032D3:Skill Master Materia	(Materia)
000032D4:Deadly Dodge Materia	(Materia)
000032D5:Parry Materia	(Materia)
000032D6:ATB Assist Materia	(Materia)
000032D7:Auto-Cure  Materia	(Materia)
000032D8:Provoke Materia	(Materia)
000032D9:Pedometer Materia	(Materia)
000032DA:Refocus Materia	(Materia)
000036B1:Chocobo &amp; Moogle Materia	(Materia)
000036B2:Shiva Materia	(Materia)
000036B3:Ifrit Materia	(Materia)
000036B4:Leviathan Materia	(Materia)
000036B5:Bahamut Materia	(Materia)
000036B6:Fat Chocobo Materia	(Materia)
000036B7:Carbuncle Materia	(Materia)
000036B8:Cactuar Materia	(Materia)
000036B9:Chocobo Chick Materia	(Materia)
000037B1:Chocobo &amp; Moogle Materia	(Materia)
000037B2:Shiva Materia	(Materia)
000037B3:Ifrit Materia	(Materia)
000037B4:Leviathan Materia	(Materia)
000037B5:Bahamut Materia	(Materia)
000037B6:Fat Chocobo Materia	(Materia)
000037B7:Carbuncle Materia	(Materia)
000037B8:Cactuar Materia	(Materia)
000037B9:Chocobo Chick Materia	(Materia)
FFFFFFFF:None
</DropDownList>
          <ShowAsHex>1</ShowAsHex>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>MATERIA_EDITOR_BASE_ADDR</Address>
          <Offsets>
            <Offset>C</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>73</ID>
          <Description>"XP"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>MATERIA_EDITOR_BASE_ADDR</Address>
          <Offsets>
            <Offset>10</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>74</ID>
          <Description>"Created UNIX Time (Seconds since 1/1/1970)"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>MATERIA_EDITOR_BASE_ADDR</Address>
          <Offsets>
            <Offset>18</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>75</ID>
      <Description>"Moogle Medal 90 / consumables / skill book (At least got 1; Active: open menu-&gt;Item)"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_MOG_MEDAL,ff7remake_.exe,8B 4A 0C B8 00 00 00 00) // should be unique
alloc(newmem,$1000,INJECT_MOG_MEDAL)

label(code)
label(return)
label(MIN_ITEM_COUNT_ALL)
label(IS_MOOGLE_ON)
label(IS_CONSUME_ON)
label(IS_SKILLBOOK_ON)

newmem:

code:
  //Moogle Medal
  cmp [IS_MOOGLE_ON], 1
  jne next1

  push rax
  mov eax,[rdx+08]
  cmp eax, 76
  jne @F
  mov eax, [rdx+0C]
  cmp eax, #90
  jae @F
  mov eax, #90
  mov [rdx+0C], eax

chk_condor:
  mov eax,[rdx+08]
  cmp eax, AE
  jne @F
  mov eax, [rdx+0C]
  cmp eax, #90
  jae @F
  mov eax, #90
  mov [rdx+0C], eax

@@:
  pop rax

next1:


  cmp [IS_CONSUME_ON], 1
  jne the_consume_final
  //general item set #1
  push rax
  mov eax,[rdx+08]
  sub eax, 22
  jnc @F
  mov eax, [rdx+0C]
  cmp eax, [MIN_ITEM_COUNT_ALL]
  jae the_comsume_end
  mov eax, [MIN_ITEM_COUNT_ALL]
  mov [rdx+0C], eax
  jmp the_comsume_end

@@:
  //pop rax

  //general item set #2
  //push rax
  mov eax,[rdx+08]
  sub eax, 44
  jc the_comsume_end
  sub eax, 9
  jnc @F
  cmp eax, [MIN_ITEM_COUNT_ALL]
  jae the_comsume_end
  mov eax, [MIN_ITEM_COUNT_ALL]
  mov [rdx+0C], eax
  jmp the_comsume_end
@@:

  //Sector 5 Reactor Card	(Key)
  mov eax,[rdx+08]
  cmp eax, 64
  jne @F
  mov eax, [rdx+0C]
  cmp eax, #6
  jae @F
  mov eax, #6
  mov [rdx+0C], eax

the_comsume_end:
  pop rax
the_consume_final:


  //Skill book
  //0000013C:The Art of Swordplay Vol. I	(Key)
  //0000014B:Sharpshooter's Companion Vol. I	(Key)
  //0000015A:Way of the First Vol. I	(Key)
  //00000169:Telluric Scriptures Vol. I	(Key)
  //000001F4:Secrets if the Ninja Vol. I (key)
  //000001F5:Secrets if the Ninja Vol. II (key)
  //000001F8:Secrets if the Ninja Vol. V (key)
  //00000202:Secrets of the Staff Vol. I (key)
  //00000203:Secrets of the Staff Vol. II (key)
  //00000206:Secrets of the Staff Vol. V (key)
  cmp [IS_SKILLBOOK_ON], 1
  jne the_skillbook_final

  //jmp the_skillbook_final

  push rax
  mov eax,[rdx+08]
  cmp eax, 13c
  je @F
  cmp eax, 14b
  je @F
  cmp eax, 15a
  je @F
  cmp eax, 169
  je @F
  cmp eax, 1F4
  je @F
  cmp eax, 1F5
  je @F
  cmp eax, 1F8
  je @F
  cmp eax, 202
  je @F
  cmp eax, 203
  je @F
  cmp eax, 206
  je @F
  jmp refill_item_final

@@:
  mov eax, #999
  mov [rdx+0C], eax

refill_item_final:
  pop rax
the_skillbook_final:

// original code
  mov ecx,[rdx+0C]
  mov eax,00000000
  jmp return

align 10 cc
  MIN_ITEM_COUNT_ALL:
  dd #20
  IS_MOOGLE_ON:
  dd 1
  IS_CONSUME_ON:
  dd 1
  IS_SKILLBOOK_ON:
  dd 1



INJECT_MOG_MEDAL:
  jmp newmem
  nop 3
return:

registersymbol(IS_SKILLBOOK_ON)
registersymbol(IS_CONSUME_ON)
registersymbol(IS_MOOGLE_ON)
registersymbol(MIN_ITEM_COUNT_ALL)
registersymbol(INJECT_MOG_MEDAL)

[DISABLE]

INJECT_MOG_MEDAL:
  db 8B 4A 0C B8 00 00 00 00

unregistersymbol(IS_SKILLBOOK_ON)
unregistersymbol(IS_CONSUME_ON)
unregistersymbol(IS_MOOGLE_ON)
unregistersymbol(MIN_ITEM_COUNT_ALL)
unregistersymbol(INJECT_MOG_MEDAL)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+B20E68

ff7remake_.exe+B20E41: 8B F8                 - mov edi,eax
ff7remake_.exe+B20E43: E8 C8 87 E2 FF        - call ff7remake_.exe+949610
ff7remake_.exe+B20E48: 48 63 4B 1C           - movsxd  rcx,dword ptr [rbx+1C]
ff7remake_.exe+B20E4C: 81 F9 FF 07 00 00     - cmp ecx,000007FF
ff7remake_.exe+B20E52: 77 5F                 - ja ff7remake_.exe+B20EB3
ff7remake_.exe+B20E54: 48 81 C1 98 23 00 00  - add rcx,00002398
ff7remake_.exe+B20E5B: 48 8D 0C 49           - lea rcx,[rcx+rcx*2]
ff7remake_.exe+B20E5F: 48 8D 14 C8           - lea rdx,[rax+rcx*8]
ff7remake_.exe+B20E63: 48 85 D2              - test rdx,rdx
ff7remake_.exe+B20E66: 74 4B                 - je ff7remake_.exe+B20EB3
// ---------- INJECTING HERE ----------
ff7remake_.exe+B20E68: 8B 4A 0C              - mov ecx,[rdx+0C]
// ---------- DONE INJECTING  ----------
ff7remake_.exe+B20E6B: B8 00 00 00 00        - mov eax,00000000
ff7remake_.exe+B20E70: 2B CF                 - sub ecx,edi
ff7remake_.exe+B20E72: 0F 49 C1              - cmovns eax,ecx
ff7remake_.exe+B20E75: 48 8B 5C 24 30        - mov rbx,[rsp+30]
ff7remake_.exe+B20E7A: 48 83 C4 20           - add rsp,20
ff7remake_.exe+B20E7E: 5F                    - pop rdi
ff7remake_.exe+B20E7F: C3                    - ret 
ff7remake_.exe+B20E80: E8 8B 87 E2 FF        - call ff7remake_.exe+949610
ff7remake_.exe+B20E85: 48 63 4B 1C           - movsxd  rcx,dword ptr [rbx+1C]
ff7remake_.exe+B20E89: 81 F9 FF 07 00 00     - cmp ecx,000007FF
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>76</ID>
          <Description>"Refill Moogle medal / Condor coin"</Description>
          <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">1:On
0:Off
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>IS_MOOGLE_ON</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>77</ID>
          <Description>"Skill books"</Description>
          <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">1:On
0:Off
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>IS_SKILLBOOK_ON</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>78</ID>
          <Description>"Refill consumables"</Description>
          <Options moHideChildren="1"/>
          <DropDownList DescriptionOnly="1" DisplayValueAsItem="1">1:On
0:Off
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>IS_CONSUME_ON</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>79</ID>
          <Description>"Min. consumables count"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>MIN_ITEM_COUNT_ALL</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>80</ID>
      <Description>"Bike skill gauge (Chap. 4 / 18)"</Description>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_BIKE_LIMIT,ff7remake_.exe,F3 0F 11 81 D0 01 00 00 F3 0F 5E) // should be unique
alloc(newmem,$1000,INJECT_BIKE_LIMIT)

label(code)
label(return)

newmem:

code:
  //movss [rcx+000001D0],xmm0
  mov [rcx+000001D0],(float)1000
  jmp return

INJECT_BIKE_LIMIT:
  jmp newmem
  nop 3
return:
registersymbol(INJECT_BIKE_LIMIT)

[DISABLE]

INJECT_BIKE_LIMIT:
  db F3 0F 11 81 D0 01 00 00

unregistersymbol(INJECT_BIKE_LIMIT)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+1594090

ff7remake_.exe+159406C: 66 0F 6E 91 34 02 00 00  - movd xmm2,[rcx+00000234]
ff7remake_.exe+1594074: 0F 29 74 24 20           - movaps [rsp+20],xmm6
ff7remake_.exe+1594079: 0F 57 F6                 - xorps xmm6,xmm6
ff7remake_.exe+159407C: 0F 5B D2                 - cvtdq2ps xmm2,xmm2
ff7remake_.exe+159407F: 0F 2F CE                 - comiss xmm1,xmm6
ff7remake_.exe+1594082: 73 05                    - jae ff7remake_.exe+1594089
ff7remake_.exe+1594084: 0F 57 C0                 - xorps xmm0,xmm0
ff7remake_.exe+1594087: EB 07                    - jmp ff7remake_.exe+1594090
ff7remake_.exe+1594089: 0F 28 C2                 - movaps xmm0,xmm2
ff7remake_.exe+159408C: F3 0F 5D C1              - minss xmm0,xmm1
// ---------- INJECTING HERE ----------
ff7remake_.exe+1594090: F3 0F 11 81 D0 01 00 00  - movss [rcx+000001D0],xmm0
// ---------- DONE INJECTING  ----------
ff7remake_.exe+1594098: F3 0F 5E C2              - divss xmm0,xmm2
ff7remake_.exe+159409C: 0F 2F C6                 - comiss xmm0,xmm6
ff7remake_.exe+159409F: 72 0B                    - jb ff7remake_.exe+15940AC
ff7remake_.exe+15940A1: 0F 28 F0                 - movaps xmm6,xmm0
ff7remake_.exe+15940A4: F3 0F 5D 35 9C 50 9C 03  - minss xmm6,[ff7remake_.exe+4F59148]
ff7remake_.exe+15940AC: E8 DF B9 E0 FF           - call ff7remake_.exe+139FA90
ff7remake_.exe+15940B1: 48 8B 80 50 01 00 00     - mov rax,[rax+00000150]
ff7remake_.exe+15940B8: 83 78 10 00              - cmp dword ptr [rax+10],00
ff7remake_.exe+15940BC: 7E 09                    - jle ff7remake_.exe+15940C7
ff7remake_.exe+15940BE: 48 8B 40 08              - mov rax,[rax+08]
}
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>81</ID>
      <Description>"Chap. 9: squats game (Chap. 14 working, too)"</Description>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_CHAP9_MINIGAME,ff7remake_.exe,00 41 FF 40 3C 41 8B 40 14) // should be unique
alloc(newmem,$1000,INJECT_CHAP9_MINIGAME)

label(code)
label(return)

newmem:

code:
  cmp [r8+3C], #97
  jae squats_end
  cmp [r8+3C], #60
  jae @F
  push rax
  mov al, #60
  mov [r8+3C], al
  pop rax
@@:
  inc [r8+3C]

squats_end:
  mov eax,[r8+14]
  jmp return

INJECT_CHAP9_MINIGAME+01:
  jmp newmem
  nop 3
return:
registersymbol(INJECT_CHAP9_MINIGAME)

[DISABLE]

INJECT_CHAP9_MINIGAME+01:
  db 41 FF 40 3C 41 8B 40 14

unregistersymbol(INJECT_CHAP9_MINIGAME)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+ECC410

ff7remake_.exe+ECC3EE: CC                    - int 3 
ff7remake_.exe+ECC3EF: CC                    - int 3 
ff7remake_.exe+ECC3F0: 40 53                 - push rbx
ff7remake_.exe+ECC3F2: 48 83 EC 20           - sub rsp,20
ff7remake_.exe+ECC3F6: 4C 8B 41 20           - mov r8,[rcx+20]
ff7remake_.exe+ECC3FA: 48 8B D9              - mov rbx,rcx
ff7remake_.exe+ECC3FD: 4D 85 C0              - test r8,r8
ff7remake_.exe+ECC400: 0F 84 98 00 00 00     - je ff7remake_.exe+ECC49E
ff7remake_.exe+ECC406: 41 3A 50 13           - cmp dl,[r8+13]
ff7remake_.exe+ECC40A: 0F 85 8E 00 00 00     - jne ff7remake_.exe+ECC49E
// ---------- INJECTING HERE ----------
ff7remake_.exe+ECC410: 41 FF 40 3C           - inc [r8+3C]
// ---------- DONE INJECTING  ----------
ff7remake_.exe+ECC414: 41 8B 40 14           - mov eax,[r8+14]
ff7remake_.exe+ECC418: 49 8B 08              - mov rcx,[r8]
ff7remake_.exe+ECC41B: FF C0                 - inc eax
ff7remake_.exe+ECC41D: 41 89 40 14           - mov [r8+14],eax
ff7remake_.exe+ECC421: 48 85 C9              - test rcx,rcx
ff7remake_.exe+ECC424: 74 4F                 - je ff7remake_.exe+ECC475
ff7remake_.exe+ECC426: 44 8B 89 C4 01 00 00  - mov r9d,[rcx+000001C4]
ff7remake_.exe+ECC42D: 45 85 C9              - test r9d,r9d
ff7remake_.exe+ECC430: 7E 43                 - jle ff7remake_.exe+ECC475
ff7remake_.exe+ECC432: 99                    - cdq 
}
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>82</ID>
      <Description>"Fast weapon proficiency (use ability twice)"</Description>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : ff7remake_.exe
  Version: 
  Date   : 2022-06-18
  Author : bbfox @https://opencheattables.org
}

[ENABLE]

aobscanmodule(INJECT_FAST_WPRO,ff7remake_.exe,66 41 89 AC 46 C0 45 03 00) // should be unique
alloc(newmem,$1000,INJECT_FAST_WPRO)

label(code)
label(return)

newmem:
  cmp bp, 9
  jae code
  mov bp, 9

code:
  mov [r14+rax*2+000345C0],bp
  jmp return

INJECT_FAST_WPRO:
  jmp newmem
  nop 4
return:
registersymbol(INJECT_FAST_WPRO)

[DISABLE]

INJECT_FAST_WPRO:
  db 66 41 89 AC 46 C0 45 03 00

unregistersymbol(INJECT_FAST_WPRO)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+B069A3

ff7remake_.exe+B06980: 39 68 0C                    - cmp [rax+0C],ebp
ff7remake_.exe+B06983: 0F 4F 68 0C                 - cmovg ebp,[rax+0C]
ff7remake_.exe+B06987: 8B 40 10                    - mov eax,[rax+10]
ff7remake_.exe+B0698A: 85 C0                       - test eax,eax
ff7remake_.exe+B0698C: 7E 05                       - jle ff7remake_.exe+B06993
ff7remake_.exe+B0698E: 3B C5                       - cmp eax,ebp
ff7remake_.exe+B06990: 0F 4C E8                    - cmovl ebp,eax
ff7remake_.exe+B06993: 48 63 41 08                 - movsxd  rax,dword ptr [rcx+08]
ff7remake_.exe+B06997: 44 8B C5                    - mov r8d,ebp
ff7remake_.exe+B0699A: 41 0F B7 94 46 C0 45 03 00  - movzx edx,word ptr [r14+rax*2+000345C0]
// ---------- INJECTING HERE ----------
ff7remake_.exe+B069A3: 66 41 89 AC 46 C0 45 03 00  - mov [r14+rax*2+000345C0],bp
// ---------- DONE INJECTING  ----------
ff7remake_.exe+B069AC: E8 CF 01 00 00              - call ff7remake_.exe+B06B80
ff7remake_.exe+B069B1: 48 8B 5C 24 30              - mov rbx,[rsp+30]
ff7remake_.exe+B069B6: 48 8B 6C 24 38              - mov rbp,[rsp+38]
ff7remake_.exe+B069BB: 48 8B 74 24 40              - mov rsi,[rsp+40]
ff7remake_.exe+B069C0: 48 8B 7C 24 48              - mov rdi,[rsp+48]
ff7remake_.exe+B069C5: 48 83 C4 20                 - add rsp,20
ff7remake_.exe+B069C9: 41 5E                       - pop r14
ff7remake_.exe+B069CB: C3                          - ret 
ff7remake_.exe+B069CC: CC                          - int 3 
ff7remake_.exe+B069CD: CC                          - int 3 
}
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>83</ID>
      <Description>"XP Multiplier"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : ff7remake_.exe
  Version: 
  Date   : 2022-06-18
  Author : bbfox @ https://opencheattables.org
}

[ENABLE]

aobscanmodule(INJECT_XP_MULTI,ff7remake_.exe,46 89 44 10 40) // should be unique
alloc(newmem,$1000,INJECT_XP_MULTI)

label(code)
label(return)
label(vf_xp_multi)

newmem:
  cmp [rax+r10+40],0
  je code

  push r15
  mov r15,r8d
  cmp r15,[rax+r10+40]
  jbe endp

  sub r15,[rax+r10+40]
  vmovss xmm14, [vf_xp_multi]
  cvtsi2ss xmm15, r15
  vmulss xmm15, xmm15, xmm14
  cvtss2si r15, xmm15
  mov r8d,[rax+r10+40]
  add r8d,r15

endp:
  pop r15

code:
  mov [rax+r10+40],r8d
  jmp return
align 10 cc
  vf_xp_multi:
  dd (float)2


INJECT_XP_MULTI:
  jmp newmem
return:
registersymbol(vf_xp_multi)
registersymbol(INJECT_XP_MULTI)

[DISABLE]

INJECT_XP_MULTI:
  db 46 89 44 10 40

unregistersymbol(*)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+B355B8

ff7remake_.exe+B3558C: 48 83 EC 20           - sub rsp,20
ff7remake_.exe+B35590: 48 8B 81 60 3E 00 00  - mov rax,[rcx+00003E60]
ff7remake_.exe+B35597: 0F B6 DA              - movzx ebx,dl
ff7remake_.exe+B3559A: 44 0F B6 D2           - movzx r10d,dl
ff7remake_.exe+B3559E: 48 8B F9              - mov rdi,rcx
ff7remake_.exe+B355A1: 49 C1 E2 06           - shl r10,06
ff7remake_.exe+B355A5: 48 8D 54 24 48        - lea rdx,[rsp+48]
ff7remake_.exe+B355AA: 48 89 74 24 40        - mov [rsp+40],rsi
ff7remake_.exe+B355AF: 41 0F B6 E9           - movzx ebp,r9l
ff7remake_.exe+B355B3: 4C 89 74 24 50        - mov [rsp+50],r14
// ---------- INJECTING HERE ----------
ff7remake_.exe+B355B8: 46 89 44 10 40        - mov [rax+r10+40],r8d
// ---------- DONE INJECTING  ----------
ff7remake_.exe+B355BD: 4C 8B B1 60 3E 00 00  - mov r14,[rcx+00003E60]
ff7remake_.exe+B355C4: 48 81 C1 58 14 00 00  - add rcx,00001458
ff7remake_.exe+B355CB: 4C 8B 05 46 02 CC 04  - mov r8,[ff7remake_.exe+57F5818]
ff7remake_.exe+B355D2: 4D 03 F2              - add r14,r10
ff7remake_.exe+B355D5: E8 36 F4 B4 FF        - call ff7remake_.exe+684A10
ff7remake_.exe+B355DA: 83 38 FF              - cmp dword ptr [rax],-01
ff7remake_.exe+B355DD: 74 3F                 - je ff7remake_.exe+B3561E
ff7remake_.exe+B355DF: 48 8D 54 24 48        - lea rdx,[rsp+48]
ff7remake_.exe+B355E4: 48 8D 8F 58 14 00 00  - lea rcx,[rdi+00001458]
ff7remake_.exe+B355EB: E8 20 F4 B4 FF        - call ff7remake_.exe+684A10
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>84</ID>
          <Description>"Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>Float</VariableType>
          <Address>vf_xp_multi</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>85</ID>
      <Description>"Materia XP multiplier"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : ff7remake_.exe
  Version: 
  Date   : 2022-06-18
  Author : bbfox @ https://opencheattables.org
}

[ENABLE]

aobscanmodule(INJECT_MXP_MULTI,ff7remake_.exe,44 8D 04 08 41 B1 01) // should be unique
alloc(newmem,$1000,INJECT_MXP_MULTI)

label(code)
label(return)
label(vf_mxp_multi)

newmem:
  vmovss xmm14, [vf_mxp_multi]
  cvtsi2ss xmm15, rcx
  vmulss xmm15, xmm15, xmm14
  cvtss2si rcx, xmm15

code:
  lea r8d,[rax+rcx]
  mov r9l,01
  jmp return

align 10 cc
  vf_mxp_multi:
  dd (float)12

INJECT_MXP_MULTI:
  jmp newmem
  nop 2
return:
registersymbol(vf_mxp_multi)
registersymbol(INJECT_MXP_MULTI)

[DISABLE]

INJECT_MXP_MULTI:
  db 44 8D 04 08 41 B1 01

unregistersymbol(*)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+B580ED

ff7remake_.exe+B580C3: 4D 8B 97 98 6D 0B 00     - mov r10,[r15+000B6D98]
ff7remake_.exe+B580CA: 8B 14 06                 - mov edx,[rsi+rax]
ff7remake_.exe+B580CD: 81 FA E8 03 00 00        - cmp edx,000003E8
ff7remake_.exe+B580D3: 72 05                    - jb ff7remake_.exe+B580DA
ff7remake_.exe+B580D5: 41 8B C5                 - mov eax,r13d
ff7remake_.exe+B580D8: EB 13                    - jmp ff7remake_.exe+B580ED
ff7remake_.exe+B580DA: 49 8B 42 10              - mov rax,[r10+10]
ff7remake_.exe+B580DE: 4C 8B C2                 - mov r8,rdx
ff7remake_.exe+B580E1: 49 C1 E0 05              - shl r8,05
ff7remake_.exe+B580E5: 41 8B 84 00 38 18 00 00  - mov eax,[r8+rax+00001838]
// ---------- INJECTING HERE ----------
ff7remake_.exe+B580ED: 44 8D 04 08              - lea r8d,[rax+rcx]
// ---------- DONE INJECTING  ----------
ff7remake_.exe+B580F1: 41 B1 01                 - mov r9l,01
ff7remake_.exe+B580F4: 49 8B CA                 - mov rcx,r10
ff7remake_.exe+B580F7: E8 14 39 FD FF           - call ff7remake_.exe+B2BA10
ff7remake_.exe+B580FC: 4C 8B 05 E5 D6 C4 04     - mov r8,[ff7remake_.exe+57A57E8]
ff7remake_.exe+B58103: 84 C0                    - test al,al
ff7remake_.exe+B58105: B8 01 00 00 00           - mov eax,00000001
ff7remake_.exe+B5810A: 45 0F B6 F6              - movzx r14d,r14l
ff7remake_.exe+B5810E: 44 0F 45 F0              - cmovne r14d,eax
ff7remake_.exe+B58112: 48 83 C6 04              - add rsi,04
ff7remake_.exe+B58116: 48 83 FE 30              - cmp rsi,30
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>86</ID>
          <Description>"Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>Float</VariableType>
          <Address>vf_mxp_multi</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>87</ID>
      <Description>"Whack-a-Box"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : ff7remake_.exe
  Version: 
  Date   : 2022-06-18
  Author : bbfox @ https://opencheattables.org
}

[ENABLE]

aobscanmodule(INJECT_WBOX,ff7remake_.exe,F3 0F 11 8F 50 02 00 00 77) // should be unique
alloc(newmem,$1000,INJECT_WBOX)

label(code)
label(return)
label(i_wb_cur_timer)
label(is_stop_timer)

newmem:
  mov [i_wb_cur_timer], rdi

code:
  pushfq
  cmp dword ptr [is_stop_timer], 1
  je skipt
  movss [rdi+00000250],xmm1
skipt:
  popfq
  jmp return
align 10 cc
  i_wb_cur_timer:
  dq 0
  is_stop_timer:
  dd 1

INJECT_WBOX:
  jmp newmem
  nop 3
return:
registersymbol(INJECT_WBOX)
registersymbol(i_wb_cur_timer)
registersymbol(is_stop_timer)
[DISABLE]

INJECT_WBOX:
  db F3 0F 11 8F 50 02 00 00

unregistersymbol(*)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+EA168A

ff7remake_.exe+EA1662: 48 83 EC 20              - sub rsp,20
ff7remake_.exe+EA1666: 48 8B F9                 - mov rdi,rcx
ff7remake_.exe+EA1669: 0F 28 C1                 - movaps xmm0,xmm1
ff7remake_.exe+EA166C: 48 8B 89 C8 00 00 00     - mov rcx,[rcx+000000C8]
ff7remake_.exe+EA1673: 48 85 C9                 - test rcx,rcx
ff7remake_.exe+EA1676: 74 5C                    - je ff7remake_.exe+EA16D4
ff7remake_.exe+EA1678: F3 0F 10 8F 50 02 00 00  - movss xmm1,[rdi+00000250]
ff7remake_.exe+EA1680: F3 0F 5C C8              - subss xmm1,xmm0
ff7remake_.exe+EA1684: 0F 57 C0                 - xorps xmm0,xmm0
ff7remake_.exe+EA1687: 0F 2F C8                 - comiss xmm1,xmm0
// ---------- INJECTING HERE ----------
ff7remake_.exe+EA168A: F3 0F 11 8F 50 02 00 00  - movss [rdi+00000250],xmm1
// ---------- DONE INJECTING  ----------
ff7remake_.exe+EA1692: 77 5F                    - ja ff7remake_.exe+EA16F3
ff7remake_.exe+EA1694: 48 89 5C 24 30           - mov [rsp+30],rbx
ff7remake_.exe+EA1699: 0F 57 C9                 - xorps xmm1,xmm1
ff7remake_.exe+EA169C: 33 DB                    - xor ebx,ebx
ff7remake_.exe+EA169E: 89 9F 50 02 00 00        - mov [rdi+00000250],ebx
ff7remake_.exe+EA16A4: E8 97 23 00 00           - call ff7remake_.exe+EA3A40
ff7remake_.exe+EA16A9: 8B 4F 10                 - mov ecx,[rdi+10]
ff7remake_.exe+EA16AC: 48 89 5F 28              - mov [rdi+28],rbx
ff7remake_.exe+EA16B0: 85 C9                    - test ecx,ecx
ff7remake_.exe+EA16B2: 7E 1B                    - jle ff7remake_.exe+EA16CF
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>88</ID>
          <Description>"Timer"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>Float</VariableType>
          <Address>i_wb_cur_timer</Address>
          <Offsets>
            <Offset>250</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>89</ID>
          <Description>"Stop timer?"</Description>
          <DropDownList DisplayValueAsItem="1">0:No
1:Yes
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C08000</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>is_stop_timer</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>90</ID>
      <Description>"Get field controlled char (non-battle)"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : ff7remake_.exe
  Version: 
  Date   : 2023-01-20
  Author : bbfox@https://opencheattables.com
}

[ENABLE]

aobscanmodule(INJECT_GET_FIELD_CTRL_CHAR,ff7remake_.exe,44 0F B6 80 ?? ?? ?? ?? 41 B1 01 33 D2) // should be unique
alloc(newmem,$1000,INJECT_GET_FIELD_CTRL_CHAR)

alloc(INJECT_GET_FIELD_CTRL_CHARo,8)

label(code)
label(return)
label(i_base_ctrl_char_var1)
label(i_base_ctrl_char_addr1)

INJECT_GET_FIELD_CTRL_CHARo:
  readmem(INJECT_GET_FIELD_CTRL_CHAR, 8)

newmem:
  push r15
  push r14

  mov r15, INJECT_GET_FIELD_CTRL_CHARo
  add r15, 4
  mov r15d, [r15]
  mov [i_base_ctrl_char_var1], r15d

  lea r14, [rax+r15d]
  mov [i_base_ctrl_char_addr1], r14
  pop r14
  pop r15

code:
  reassemble(INJECT_GET_FIELD_CTRL_CHAR)
  //movzx r8d,byte ptr [rax+0005089B]
  jmp return
align 10 cc
  i_base_ctrl_char_addr1:
  dq 0
  i_base_ctrl_char_var1:
  dd 0

  db EB 3B 54 68 69 73 20 74
  db 61 62 6C 65 20 63 6F 6D
  db 65 73 20 66 72 6F 6D 20
  db 68 74 74 70 73 3A 2F
  db 2F 6F 70 65 6E 63 68 65
  db 61 74
  db 74 61 62 6C 65 73 2E 63 6F 6D
  db 20 2F 20 43 45 20 37 2E 34 2B

INJECT_GET_FIELD_CTRL_CHAR:
  jmp newmem
  nop 3
return:
registersymbol(INJECT_GET_FIELD_CTRL_CHAR)
registersymbol(i_base_ctrl_char_var1)
registersymbol(INJECT_GET_FIELD_CTRL_CHARo)
registersymbol(i_base_ctrl_char_addr1)

[DISABLE]

INJECT_GET_FIELD_CTRL_CHAR:
  //db 44 0F B6 80 9B 08 05 00
  readmem(INJECT_GET_FIELD_CTRL_CHARo,8)

unregistersymbol(*)
unregistersymbol(INJECT_GET_FIELD_CTRL_CHARo)
dealloc(newmem)
dealloc(INJECT_GET_FIELD_CTRL_CHARo)
{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+15E449B

ff7remake_.exe+15E4472: 48 8B 0D 4F D2 1F 04     - mov rcx,[ff7remake_.exe+57E16C8]
ff7remake_.exe+15E4479: 48 8B 01                 - mov rax,[rcx]
ff7remake_.exe+15E447C: 45 33 C0                 - xor r8d,r8d
ff7remake_.exe+15E447F: BA F0 6D 0B 00           - mov edx,000B6DF0
ff7remake_.exe+15E4484: FF 50 10                 - call qword ptr [rax+10]
ff7remake_.exe+15E4487: 48 85 C0                 - test rax,rax
ff7remake_.exe+15E448A: 74 08                    - je ff7remake_.exe+15E4494
ff7remake_.exe+15E448C: 48 8B C8                 - mov rcx,rax
ff7remake_.exe+15E448F: E8 6C 1E 54 FF           - call ff7remake_.exe+B26300
ff7remake_.exe+15E4494: 48 89 05 4D 13 1C 04     - mov [ff7remake_.exe+57A57E8],rax
// ---------- INJECTING HERE ----------
ff7remake_.exe+15E449B: 44 0F B6 80 9B 08 05 00  - movzx r8d,byte ptr [rax+0005089B]
// ---------- DONE INJECTING  ----------
ff7remake_.exe+15E44A3: 41 B1 01                 - mov r9b,01
ff7remake_.exe+15E44A6: 33 D2                    - xor edx,edx
ff7remake_.exe+15E44A8: 48 8B CB                 - mov rcx,rbx
ff7remake_.exe+15E44AB: 48 83 C4 20              - add rsp,20
ff7remake_.exe+15E44AF: 5B                       - pop rbx
ff7remake_.exe+15E44B0: E9 FB E8 FF FF           - jmp ff7remake_.exe+15E2DB0
ff7remake_.exe+15E44B5: 8B 93 3C 02 00 00        - mov edx,[rbx+0000023C]
ff7remake_.exe+15E44BB: 85 D2                    - test edx,edx
ff7remake_.exe+15E44BD: 74 3E                    - je ff7remake_.exe+15E44FD
ff7remake_.exe+15E44BF: 48 63 83 38 02 00 00     - movsxd  rax,dword ptr [rbx+00000238]
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>91</ID>
          <Description>"Open &amp;  lose menu to take affect"</Description>
          <Color>8000FF</Color>
          <GroupHeader>1</GroupHeader>
        </CheatEntry>
        <CheatEntry>
          <ID>92</ID>
          <Description>"ID"</Description>
          <DropDownList DisplayValueAsItem="1">0:Cloud / クラウド
1:Barret / バレット
2:Tifa / ティファ
3:Aerith / エアリス
4:Red XIII / レッドXIII
5:Yuffie / ユフィ
6:Sonon / ソノン (Guest)
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>Byte</VariableType>
          <Address>i_base_ctrl_char_addr1</Address>
          <Offsets>
            <Offset>0</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>93</ID>
      <Description>"Get party member list"</Description>
      <Options moHideChildren="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : ff7remake_.exe
  Version: 
  Date   : 2023-01-20
  Author : bbfox@https://opencheattables.com
}

[ENABLE]

aobscanmodule(INJECT_GET_PARTY_MEMBER_STAT,ff7remake_.exe,0F B6 94 01 9C 08 05 00 80 EA 02 F6 C2 FD 75) // should be unique
alloc(newmem,$1000,INJECT_GET_PARTY_MEMBER_STAT)

label(code)
label(return)
label(i_base_party_member_addr)

newmem:
  push r15
  lea r15, [rcx+rax+0005089C]
  cmp r15, qword ptr [i_base_party_member_addr]
  jae endp
  mov [i_base_party_member_addr], r15

endp:
  pop r15

code:
  movzx edx,byte ptr [rcx+rax+0005089C]
  jmp return
align 10 cc
  i_base_party_member_addr:
  dq 7FFFFFFFFFF
  i_calc_cnt:
  dd 0

INJECT_GET_PARTY_MEMBER_STAT:
  jmp newmem
  nop 3
return:
registersymbol(INJECT_GET_PARTY_MEMBER_STAT)
registersymbol(i_base_party_member_addr)

[DISABLE]

INJECT_GET_PARTY_MEMBER_STAT:
  db 0F B6 94 01 9C 08 05 00

unregistersymbol(*)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+894ACC

ff7remake_.exe+894AAE: CC                       - int 3
ff7remake_.exe+894AAF: CC                       - int 3
ff7remake_.exe+894AB0: 40 53                    - push rbx
ff7remake_.exe+894AB2: 48 83 EC 20              - sub rsp,20
ff7remake_.exe+894AB6: 0F B6 59 58              - movzx ebx,byte ptr [rcx+58]
ff7remake_.exe+894ABA: E8 C1 F2 DB FF           - call ff7remake_.exe+653D80
ff7remake_.exe+894ABF: 80 FB 08                 - cmp bl,08
ff7remake_.exe+894AC2: 73 20                    - jae ff7remake_.exe+894AE4
ff7remake_.exe+894AC4: E8 47 4B 0B 00           - call ff7remake_.exe+949610
ff7remake_.exe+894AC9: 0F B6 CB                 - movzx ecx,bl
// ---------- INJECTING HERE ----------
ff7remake_.exe+894ACC: 0F B6 94 01 9C 08 05 00  - movzx edx,byte ptr [rcx+rax+0005089C]
// ---------- DONE INJECTING  ----------
ff7remake_.exe+894AD4: 80 EA 02                 - sub dl,02
ff7remake_.exe+894AD7: F6 C2 FD                 - test dl,-03
ff7remake_.exe+894ADA: 75 08                    - jne ff7remake_.exe+894AE4
ff7remake_.exe+894ADC: 32 C0                    - xor al,al
ff7remake_.exe+894ADE: 48 83 C4 20              - add rsp,20
ff7remake_.exe+894AE2: 5B                       - pop rbx
ff7remake_.exe+894AE3: C3                       - ret
ff7remake_.exe+894AE4: 48 8B 05 65 0F F1 04     - mov rax,[ff7remake_.exe+57A5A50]
ff7remake_.exe+894AEB: 48 8B 88 38 01 00 00     - mov rcx,[rax+00000138]
ff7remake_.exe+894AF2: 83 B9 BC 63 10 01 00     - cmp dword ptr [rcx+011063BC],00
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>94</ID>
          <Description>"Use with caution!"</Description>
          <Color>8000FF</Color>
          <GroupHeader>1</GroupHeader>
        </CheatEntry>
        <CheatEntry>
          <ID>95</ID>
          <Description>"Cloud / クラウド"</Description>
          <DropDownListLink>-in Party status-</DropDownListLink>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>Byte</VariableType>
          <Address>i_base_party_member_addr</Address>
          <Offsets>
            <Offset>0</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>96</ID>
          <Description>"Barret / バレット"</Description>
          <DropDownListLink>-in Party status-</DropDownListLink>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>Byte</VariableType>
          <Address>i_base_party_member_addr</Address>
          <Offsets>
            <Offset>1</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>97</ID>
          <Description>"Tifa / ティファ"</Description>
          <DropDownListLink>-in Party status-</DropDownListLink>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>Byte</VariableType>
          <Address>i_base_party_member_addr</Address>
          <Offsets>
            <Offset>2</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>98</ID>
          <Description>"Aerith / エアリス"</Description>
          <DropDownListLink>-in Party status-</DropDownListLink>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>Byte</VariableType>
          <Address>i_base_party_member_addr</Address>
          <Offsets>
            <Offset>3</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>99</ID>
          <Description>"Red XIII / レッドXIII"</Description>
          <DropDownListLink>-in Party status-</DropDownListLink>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>Byte</VariableType>
          <Address>i_base_party_member_addr</Address>
          <Offsets>
            <Offset>4</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>100</ID>
          <Description>"Yuffie / ユフィ"</Description>
          <DropDownListLink>-in Party status-</DropDownListLink>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>Byte</VariableType>
          <Address>i_base_party_member_addr</Address>
          <Offsets>
            <Offset>5</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>101</ID>
          <Description>"Sonon / ソノン (Guest)"</Description>
          <DropDownListLink>-in Party status-</DropDownListLink>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>FF8080</Color>
          <VariableType>Byte</VariableType>
          <Address>i_base_party_member_addr</Address>
          <Offsets>
            <Offset>6</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>102</ID>
      <Description>"Intermission: fort condor ATB"</Description>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : ff7remake_.exe
  Version: 
  Date   : 2023-01-23
  Author : bbfox@https://opencheattables.com
}

[ENABLE]

aobscanmodule(INJECT_CONDOR_ATB,ff7remake_.exe,42 0F 2F 04 39) // should be unique
alloc(newmem,$1000,INJECT_CONDOR_ATB)

label(code)
label(return)

newmem:
  cmp rcx, 39C
  je to_player
  jmp to_enemy

to_player:
  mov dword ptr [rcx+r15], (float)100
  jmp code

to_enemy:
  mov dword ptr [rcx+r15], 0

code:
  comiss xmm0,[rcx+r15]
  jmp return

INJECT_CONDOR_ATB:
  jmp newmem
return:
registersymbol(INJECT_CONDOR_ATB)

[DISABLE]

INJECT_CONDOR_ATB:
  db 42 0F 2F 04 39

unregistersymbol(INJECT_CONDOR_ATB)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+11D52E3

ff7remake_.exe+11D52B5: B8 EC 04 00 00        - mov eax,000004EC
ff7remake_.exe+11D52BA: B9 9C 03 00 00        - mov ecx,0000039C
ff7remake_.exe+11D52BF: 0F 44 C8              - cmove ecx,eax
ff7remake_.exe+11D52C2: 41 B8 48 05 00 00     - mov r8d,00000548
ff7remake_.exe+11D52C8: B8 F8 03 00 00        - mov eax,000003F8
ff7remake_.exe+11D52CD: 41 0F 44 C0           - cmove eax,r8d
ff7remake_.exe+11D52D1: 42 8B 04 38           - mov eax,[rax+r15]
ff7remake_.exe+11D52D5: 0F AF 87 E8 03 00 00  - imul eax,[rdi+000003E8]
ff7remake_.exe+11D52DC: 66 0F 6E C0           - movd xmm0,eax
ff7remake_.exe+11D52E0: 0F 5B C0              - cvtdq2ps xmm0,xmm0
// ---------- INJECTING HERE ----------
ff7remake_.exe+11D52E3: 42 0F 2F 04 39        - comiss xmm0,[rcx+r15]
// ---------- DONE INJECTING  ----------
ff7remake_.exe+11D52E8: 0F 96 C1              - setbe cl
ff7remake_.exe+11D52EB: 83 FA 04              - cmp edx,04
ff7remake_.exe+11D52EE: 0F 9C C0              - setl al
ff7remake_.exe+11D52F1: 22 C8                 - and cl,al
ff7remake_.exe+11D52F3: 0F B6 D9              - movzx ebx,cl
ff7remake_.exe+11D52F6: 83 FA 04              - cmp edx,04
ff7remake_.exe+11D52F9: B9 01 00 00 00        - mov ecx,00000001
ff7remake_.exe+11D52FE: 0F 4D D9              - cmovge ebx,ecx
ff7remake_.exe+11D5301: 38 9F FB 03 00 00     - cmp [rdi+000003FB],bl
ff7remake_.exe+11D5307: 75 09                 - jne ff7remake_.exe+11D5312
}
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>103</ID>
      <Description>"_wip"</Description>
      <Options moHideChildren="1" moAllowManualCollapseAndExpand="1"/>
      <GroupHeader>1</GroupHeader>
      <CheatEntries>
        <CheatEntry>
          <ID>104</ID>
          <Description>"Get materia base addr. (open item menu)"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_GET_MATERIA_ADDR,ff7remake_.exe,0F B6 9C 08 30 18 00 00 48) // should be unique
alloc(newmem,$1000,INJECT_GET_MATERIA_ADDR)

label(code)
label(return)
label(MATERIA_BASE_ADDR)

newmem:

code:
  jne next1
  push rax
  lea rax, [rax+rcx+00001828]
  mov [MATERIA_BASE_ADDR], rax
  pop rax


next1:
  movzx ebx,byte ptr [rax+rcx+00001830]
  cmp rsi,0
  jmp return

align 10 cc
  MATERIA_BASE_ADDR:
  dq 0

INJECT_GET_MATERIA_ADDR:
  jmp newmem
  nop 3
return:


registersymbol(MATERIA_BASE_ADDR)
registersymbol(INJECT_GET_MATERIA_ADDR)

[DISABLE]

INJECT_GET_MATERIA_ADDR:
  db 0F B6 9C 08 30 18 00 00

unregistersymbol(MATERIA_BASE_ADDR)
unregistersymbol(INJECT_GET_MATERIA_ADDR)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+1265C90

ff7remake_.exe+1265C61: 48 C1 E1 05              - shl rcx,05
ff7remake_.exe+1265C65: 48 8B 40 10              - mov rax,[rax+10]
ff7remake_.exe+1265C69: 0F B6 BC 08 30 18 00 00  - movzx edi,byte ptr [rax+rcx+00001830]
ff7remake_.exe+1265C71: E8 9A 39 6E FF           - call ff7remake_.exe+949610
ff7remake_.exe+1265C76: 81 FE E8 03 00 00        - cmp esi,000003E8
ff7remake_.exe+1265C7C: 73 1A                    - jae ff7remake_.exe+1265C98
ff7remake_.exe+1265C7E: 48 8B 80 98 6D 0B 00     - mov rax,[rax+000B6D98]
ff7remake_.exe+1265C85: 48 8B CE                 - mov rcx,rsi
ff7remake_.exe+1265C88: 48 C1 E1 05              - shl rcx,05
ff7remake_.exe+1265C8C: 48 8B 40 10              - mov rax,[rax+10]
// ---------- INJECTING HERE ----------
ff7remake_.exe+1265C90: 0F B6 9C 08 30 18 00 00  - movzx ebx,byte ptr [rax+rcx+00001830]
// ---------- DONE INJECTING  ----------
ff7remake_.exe+1265C98: 48 8B 74 24 38           - mov rsi,[rsp+38]
ff7remake_.exe+1265C9D: 3B FB                    - cmp edi,ebx
ff7remake_.exe+1265C9F: 48 8B 5C 24 30           - mov rbx,[rsp+30]
ff7remake_.exe+1265CA4: 0F 97 C0                 - seta al
ff7remake_.exe+1265CA7: 48 83 C4 20              - add rsp,20
ff7remake_.exe+1265CAB: 5F                       - pop rdi
ff7remake_.exe+1265CAC: C3                       - ret 
ff7remake_.exe+1265CAD: CC                       - int 3 
ff7remake_.exe+1265CAE: CC                       - int 3 
ff7remake_.exe+1265CAF: CC                       - int 3 
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>105</ID>
              <Description>"Materia base addr. (Readonly)"</Description>
              <ShowAsHex>1</ShowAsHex>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>8 Bytes</VariableType>
              <Address>MATERIA_BASE_ADDR</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>106</ID>
          <Description>"Enemy HP data"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_ENEMY_HP,ff7remake_.exe,8B D3 48 8B CE FF 50 50) // should be unique
alloc(newmem,$1000,INJECT_ENEMY_HP)

label(code)
label(return)
label(ENEMY_CUR_HP)
label(ENEMY_MAX_HP)
label(ENEMY_CUR_HP_ADDR)
label(ENEMY_1_HP)

newmem:

code:
  mov edx,ebx
  mov rcx,rsi
  // full hp
  mov [ENEMY_CUR_HP], edx
  push rdx
  mov edx, [rcx+18+4]
  mov [ENEMY_MAX_HP], edx
  lea rdx, [rcx+18]
  mov [ENEMY_CUR_HP_ADDR], rdx
  pop rdx
  cmp [ENEMY_1_HP], 1
  jne @F
  cmp edx, 1
  jbe @F
  mov edx, 1
  //mov edx, [rcx+18+4]
  //mov [rcx+18], edx
@@:
  jmp return

align 10 cc
  ENEMY_CUR_HP:
  dd 0
  ENEMY_MAX_HP:
  dd 0
  ENEMY_CUR_HP_ADDR:
  dq 0
  ENEMY_1_HP:
  dd 0

INJECT_ENEMY_HP:
  jmp newmem
return:
registersymbol(ENEMY_1_HP)
registersymbol(ENEMY_CUR_HP)
registersymbol(ENEMY_MAX_HP)
registersymbol(ENEMY_CUR_HP_ADDR)
registersymbol(INJECT_ENEMY_HP)

[DISABLE]

INJECT_ENEMY_HP:
  db 8B D3 48 8B CE

unregistersymbol(ENEMY_1_HP)
unregistersymbol(ENEMY_CUR_HP)
unregistersymbol(ENEMY_MAX_HP)
unregistersymbol(ENEMY_CUR_HP_ADDR)
unregistersymbol(INJECT_ENEMY_HP)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+975451

ff7remake_.exe+97542E: E8 AD E0 D3 00           - call ff7remake_.exe+16B34E0
ff7remake_.exe+975433: 4D 85 F6                 - test r14,r14
ff7remake_.exe+975436: 74 16                    - je ff7remake_.exe+97544E
ff7remake_.exe+975438: 8B D3                    - mov edx,ebx
ff7remake_.exe+97543A: 49 8B CE                 - mov rcx,r14
ff7remake_.exe+97543D: E8 FE 2E FF FF           - call ff7remake_.exe+968340
ff7remake_.exe+975442: 4C 8B A4 24 28 01 00 00  - mov r12,[rsp+00000128]
ff7remake_.exe+97544A: B0 01                    - mov al,01
ff7remake_.exe+97544C: EB 5F                    - jmp ff7remake_.exe+9754AD
ff7remake_.exe+97544E: 48 8B 06                 - mov rax,[rsi]
// ---------- INJECTING HERE ----------
ff7remake_.exe+975451: 8B D3                    - mov edx,ebx
// ---------- DONE INJECTING  ----------
ff7remake_.exe+975453: 48 8B CE                 - mov rcx,rsi
ff7remake_.exe+975456: FF 50 50                 - call qword ptr [rax+50]
ff7remake_.exe+975459: 4C 8B A4 24 28 01 00 00  - mov r12,[rsp+00000128]
ff7remake_.exe+975461: B0 01                    - mov al,01
ff7remake_.exe+975463: EB 48                    - jmp ff7remake_.exe+9754AD
ff7remake_.exe+975465: 45 33 E4                 - xor r12d,r12d
ff7remake_.exe+975468: B0 01                    - mov al,01
ff7remake_.exe+97546A: 45 89 27                 - mov [r15],r12d
ff7remake_.exe+97546D: 4C 8B A4 24 28 01 00 00  - mov r12,[rsp+00000128]
ff7remake_.exe+975475: EB 36                    - jmp ff7remake_.exe+9754AD
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>107</ID>
              <Description>"Current HP address"</Description>
              <ShowAsHex>1</ShowAsHex>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>8 Bytes</VariableType>
              <Address>ENEMY_CUR_HP_ADDR</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>108</ID>
              <Description>"Current HP (P*)"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>4 Bytes</VariableType>
              <Address>ENEMY_CUR_HP_ADDR</Address>
              <Offsets>
                <Offset>0</Offset>
              </Offsets>
            </CheatEntry>
            <CheatEntry>
              <ID>109</ID>
              <Description>"Max HP (P*)"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>4 Bytes</VariableType>
              <Address>ENEMY_CUR_HP_ADDR</Address>
              <Offsets>
                <Offset>4</Offset>
              </Offsets>
            </CheatEntry>
            <CheatEntry>
              <ID>110</ID>
              <Description>"1 HP"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>4 Bytes</VariableType>
              <Address>ENEMY_1_HP</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>111</ID>
          <Description>"Last Gauge data #0"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_SUMMON_INFO2,ff7remake_.exe,48 8D 99 40 03 00 00 48 89) // should be unique
alloc(newmem,$1000,INJECT_SUMMON_INFO2)

label(code)
label(return)
label(SUMMON_GAUGE)
label(SUMMON_GAUGE_ADDR)


newmem:

code:
  push rax
  mov eax, [rdx]
  mov [SUMMON_GAUGE], eax
  mov [SUMMON_GAUGE_ADDR], rdx
  pop rax

  lea rbx,[rcx+00000340]
  jmp return

align 10 cc
  SUMMON_GAUGE:
  dd (float)2
  SUMMON_GAUGE_ADDR:
  dq 0



INJECT_SUMMON_INFO2:
  jmp newmem
  nop 2
return:


registersymbol(SUMMON_GAUGE_ADDR)
registersymbol(SUMMON_GAUGE)
registersymbol(INJECT_SUMMON_INFO2)

[DISABLE]

INJECT_SUMMON_INFO2:
  db 48 8D 99 40 03 00 00

unregistersymbol(SUMMON_GAUGE_ADDR)
unregistersymbol(SUMMON_GAUGE)
unregistersymbol(INJECT_SUMMON_INFO2)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+14DEBB9

ff7remake_.exe+14DEBA8: CC                    - int 3 
ff7remake_.exe+14DEBA9: CC                    - int 3 
ff7remake_.exe+14DEBAA: CC                    - int 3 
ff7remake_.exe+14DEBAB: CC                    - int 3 
ff7remake_.exe+14DEBAC: CC                    - int 3 
ff7remake_.exe+14DEBAD: CC                    - int 3 
ff7remake_.exe+14DEBAE: CC                    - int 3 
ff7remake_.exe+14DEBAF: CC                    - int 3 
ff7remake_.exe+14DEBB0: 48 83 EC 38           - sub rsp,38
ff7remake_.exe+14DEBB4: 48 89 5C 24 50        - mov [rsp+50],rbx
// ---------- INJECTING HERE ----------
ff7remake_.exe+14DEBB9: 48 8D 99 40 03 00 00  - lea rbx,[rcx+00000340]
// ---------- DONE INJECTING  ----------
ff7remake_.exe+14DEBC0: 48 89 7C 24 28        - mov [rsp+28],rdi
ff7remake_.exe+14DEBC5: 48 8B F9              - mov rdi,rcx
ff7remake_.exe+14DEBC8: 48 8B CB              - mov rcx,rbx
ff7remake_.exe+14DEBCB: 4C 89 74 24 20        - mov [rsp+20],r14
ff7remake_.exe+14DEBD0: 4C 8B F2              - mov r14,rdx
ff7remake_.exe+14DEBD3: E8 48 CC 02 00        - call ff7remake_.exe+150B820
ff7remake_.exe+14DEBD8: 84 C0                 - test al,al
ff7remake_.exe+14DEBDA: 0F 85 D4 00 00 00     - jne ff7remake_.exe+14DECB4
ff7remake_.exe+14DEBE0: 41 8B 06              - mov eax,[r14]
ff7remake_.exe+14DEBE3: 49 8D 56 10           - lea rdx,[r14+10]
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>112</ID>
              <Description>"Gauge"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>Float</VariableType>
              <Address>SUMMON_GAUGE</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>113</ID>
              <Description>"Gauge addr."</Description>
              <ShowAsHex>1</ShowAsHex>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>8 Bytes</VariableType>
              <Address>SUMMON_GAUGE_ADDR</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>114</ID>
          <Description>"(not working) Lock Timer: (Tested in Chap. 6; Timer will freeze; display is incorrect)"</Description>
          <Options moHideChildren="1"/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]

aobscanmodule(INJECT_TIMER_1,ff7remake_.exe,F3 0F 11 49 38 48 8B F9) // should be unique
alloc(newmem,$1000,INJECT_TIMER_1)

label(code)
label(return)

newmem:

code:
  push rax
  mov rax, (float)1800.0
  movq xmm1, rax
  pop rax
  movss [rcx+38],xmm1
  jmp return

INJECT_TIMER_1:
  jmp newmem
return:
registersymbol(INJECT_TIMER_1)

[DISABLE]

INJECT_TIMER_1:
  db F3 0F 11 49 38

unregistersymbol(INJECT_TIMER_1)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: ff7remake_.exe+13E71F6

ff7remake_.exe+13E71E7: 41 5D              - pop r13
ff7remake_.exe+13E71E9: 5F                 - pop rdi
ff7remake_.exe+13E71EA: 5D                 - pop rbp
ff7remake_.exe+13E71EB: C3                 - ret 
ff7remake_.exe+13E71EC: CC                 - int 3 
ff7remake_.exe+13E71ED: CC                 - int 3 
ff7remake_.exe+13E71EE: CC                 - int 3 
ff7remake_.exe+13E71EF: CC                 - int 3 
ff7remake_.exe+13E71F0: 40 57              - push rdi
ff7remake_.exe+13E71F2: 48 83 EC 30        - sub rsp,30
// ---------- INJECTING HERE ----------
ff7remake_.exe+13E71F6: F3 0F 11 49 38     - movss [rcx+38],xmm1
// ---------- DONE INJECTING  ----------
ff7remake_.exe+13E71FB: 48 8B F9           - mov rdi,rcx
ff7remake_.exe+13E71FE: 44 8B 41 04        - mov r8d,[rcx+04]
ff7remake_.exe+13E7202: 45 85 C0           - test r8d,r8d
ff7remake_.exe+13E7205: 0F 84 E8 02 00 00  - je ff7remake_.exe+13E74F3
ff7remake_.exe+13E720B: 48 63 01           - movsxd  rax,dword ptr [rcx]
ff7remake_.exe+13E720E: 85 C0              - test eax,eax
ff7remake_.exe+13E7210: 0F 88 DD 02 00 00  - js ff7remake_.exe+13E74F3
ff7remake_.exe+13E7216: 3B 05 C0 B1 F9 03  - cmp eax,[ff7remake_.exe+53823DC]
ff7remake_.exe+13E721C: 0F 8D D1 02 00 00  - jnl ff7remake_.exe+13E74F3
ff7remake_.exe+13E7222: 48 8D 0C 40        - lea rcx,[rax+rax*2]
}
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>115</ID>
              <Description>"***Tested in Char 6: Fan stop timer (Chocobo &amp; Moogle Materia)"</Description>
              <GroupHeader>1</GroupHeader>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>116</ID>
      <Description>"Final Fantasy VII Remake Intergrade  /  https://opencheattables.com  /  CE 7.6"</Description>
      <Options moHideChildren="1" moDeactivateChildrenAsWell="1"/>
      <Color>009900</Color>
      <GroupHeader>1</GroupHeader>
      <CheatEntries>
        <CheatEntry>
          <ID>117</ID>
          <Description>"-in Party status-"</Description>
          <DropDownList DisplayValueAsItem="1">0:Leave
1:In party
2:Follower
5:Guest (sonon)
</DropDownList>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>Byte</VariableType>
          <Address>0000</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
  <UserdefinedSymbols/>
</CheatTable>
