Перейти к содержанию

BitKit

Стажёры
  • Постов

    8
  • Зарегистрирован

  • Посещение

  • Победитель дней

    4

Сообщения, опубликованные BitKit

  1.  

    Полный листинг:

    Спойлер
    
    <?xml version="1.0" encoding="utf-8"?>
    <CheatTable CheatEngineTableVersion="28">
      <CheatEntries>
        <CheatEntry>
          <ID>0</ID>
          <Description>"CompactMode"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
    LuaCall(function cycleFullCompact(sender,force) local state = not(compactmenuitem.Caption == 'Compact View Mode'); if force~=nil then state = not force end; compactmenuitem.Caption = state and 'Compact View Mode' or 'Full View Mode'; getMainForm().Splitter1.Visible = state; getMainForm().Panel4.Visible    = state; getMainForm().Panel5.Visible    = state; end; function addCompactMenu() if compactmenualreadyexists then return end; local parent = getMainForm().Menu.Items; compactmenuitem = createMenuItem(parent); parent.add(compactmenuitem); compactmenuitem.Caption = 'Compact View Mode'; compactmenuitem.OnClick = cycleFullCompact; compactmenualreadyexists = 'yes'; end; addCompactMenu(); cycleFullCompact(nil,true))
    
    [DISABLE]
    LuaCall(cycleFullCompact(nil,false))
    </AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>141</ID>
          <Description>"[X] &lt;== Warhammer Inquisitor - Martyr v2.1.0b Steam"</Description>
          <Options moHideChildren="1" moDeactivateChildrenAsWell="1"/>
          <LastState Activated="1"/>
          <Color>FF0000</Color>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{
    ===========================================
     Game Title    : Warhammer 40K Inquisitor Martyr
     Game Version  : 2.1.0b
     Game Sponsor  : Myself (with Patreon funds)
     Process Name  : Warhammer.exe
     Relevant Info : 64bits/RPG
     Authors       : Recifense / Zanzer / Gigex
     Features:
     - God Mode
     - Include companions (s1.1)
     - Adrenaline
     - Suppression Resistense
     - Unlimited Ammo
     - No Weapon Heat (new)(s2.0)
     - Quick Kill (new)(s3.0)
     - Quick Warp Heat recover (s4.5)
     - Movement Speed
     - Unlimited Zoom
     - No Cooldown
    
    ===========================================
    }
    
    [ENABLE]
    
    AOBScanModule(MOPH,Warhammer.exe,49 8d 8e 88 06 00 00 e8 ?? ?? ?? ?? 44 0f 28 c0 49 8b 06 49 8b)
    AOBScanModule(GDMD,Warhammer.exe,49 8b f1 4d 8b e8 0f 28 f9 48 8b f9 48 8b 01 ff 90 68 01 00 00)
    AOBScanModule(MOHA,Warhammer.exe,45 8B F8 44 0F 28 C1 48 8B F9 4C 8D B1 30 0B 00 00 49 8B C6 B9)
    AOBScanModule(MOHS,Warhammer.exe,48 8b 9b b0 0a 00 00 48 85 db ?? ?? 48 8d 4b 08 e8 ?? ?? ?? ?? f3)
    AOBScanModule(MOPA,Warhammer.exe,48 8b f1 8b ea 48 83 c1 40 e8 ?? ?? ?? ?? 48 8b ce 8b d8 e8 ??)
    AOBScanModule(MOWH,Warhammer.exe,48 89 5c 24 08 57 48 83 ec 40 48 8b d9 0f 29 74 24 30 0f 29 7c)
    //=========================================
    alloc(MyCode,4096,$process)
    //=========================================
    
    // Declaration section
    label(_MonPlayerHero)
    label(_BackMPH)
    label(_GodMode)
    label(_BackGMD)
    label(_MonHeroAdrenaline)
    label(_BackMHA)
    label(_MonHeroSupression)
    label(_BackMHS)
    label(_MonPlayerAmmo)
    label(_BackMPA)
    label(_MonWeaponHeat)
    label(_BackMWH)
    
    label(iEnableGMD)
    label(iEnableGMO)
    label(iEnableMHA)
    label(iEnableMHS)
    label(iEnableMPA)
    label(iEnableMWH)
    label(iEnableMQK)
    label(iEnableMHW)
    
    label(pHero)
    label(pCredits)
    label(pHeroB)
    label(pLast)
    label(fLast)
    label(fBigVal)
    label(fSmallval)
    label(fressourceinc)
    label(fressourcedec)
    
    //=========================================
    // Registering Symbols
    registersymbol(MyCode)
    registersymbol(iEnableGMD)
    registersymbol(iEnableGMO)
    registersymbol(iEnableMHA)
    registersymbol(iEnableMHS)
    registersymbol(iEnableMPA)
    registersymbol(iEnableMWH)
    registersymbol(iEnableMQK)
    registersymbol(iEnableMHW)
    registersymbol(pHero)
    registersymbol(pCredits)
    registersymbol(pHeroB)
    registersymbol(pLast)
    registersymbol(fLast)
    registersymbol(fBigVal)
    registersymbol(fSmallval)
    
    registersymbol(MOPH)
    registersymbol(GDMD)
    registersymbol(MOHA)
    registersymbol(MOHS)
    registersymbol(MOPA)
    registersymbol(MOWH)
    
    //=========================================
    MyCode:
    //========================================= 200b *
    // Player Hero at Mission (all the time)
    _MonPlayerHero:
     mov [pHero],r14
    
    _ExitMPH:
     lea rcx,[r14+00000688]            // Original code
     jmp _BackMPH                      // Back to main code
    
    //========================================= 200b #
    // During Mission (Health points)
    _GodMode:
     mov [pLast],rcx
     movss [fLast],xmm1
    
     cmp rcx,[pHero]
     je _GodMD00
    
     mov rax,[rcx+00000658]
     test rax,rax
     jz _ExitGMD
    
     cmp byte ptr [rax+00000174],00
     jne _GodMD01
    
     cmp dword ptr [iEnableGMO],0
     je _ExitGMD                       // Jump if feature is disabled
    
    _GodMD00:
     cmp dword ptr [iEnableGMD],0
     je _ExitGMD                       // Jump if feature is disabled
    
     maxss xmm1,[fSmallval]
     jmp _ExitGMD
    //--
    _GodMD01:
     cmp dword ptr [iEnableMQK],0
     je _ExitGMD                       // Jump if feature is disabled
    
     minss xmm1,[fBigVal]
    
    _ExitGMD:
     mov rsi,r9                        // Original code
     mov r13,r8                        // Original code
     jmp _BackGMD                      // Back to main code
    //---------------
    fSmallval:
     dd (float)0.0001
    fBigVal:
     dd (float)-16800.0
    
    //========================================= 200b * (s4.5)
    // During Mission (Adrenaline) and (Warp Heat s4.5)
    _MonHeroAdrenaline:
     cmp rcx,[pHero]
     jne _ExitMHA
    
     cmp dword ptr [iEnableMHA],0
     je _MonHA00                       // Jump if feature is disabled
    
     maxss xmm1,[fressourceinc]
     jmp _ExitMHA
    //--
    _MonHA00:
     cmp dword ptr [iEnableMHW],0
     je _ExitMHA                       // Jump if feature is disabled
    
     minss xmm1,[fressourcedec]
    
    _ExitMHA:
     mov r15d,r8d                      // Original code
     movaps xmm8,xmm1                  // Original code
     jmp _BackMHA                      // Back to main code
    
     fressourceinc:
     dd (float)0.0001
    fressourcedec:
     dd (float)-100.0
    
    //========================================= 200b * (s2.1)(s4.1 fix)
    // During Mission (Supression Resistense)
    _MonHeroSupression:
     cmp dword ptr [iEnableMHS],0
     je _ExitMHS                       // Jump if feature is disabled
    
     cmp rbx,[pHero]
     jne _ExitMHS
    
     minss xmm6,[fMedVal]
    
    _ExitMHS:
     mov rbx,[rbx+00000AB0]            // Original code
     jmp _BackMHS                      // Back to main code
    
    fMedVal:
     dd (float)-1.00
    
    //========================================= 104 X
    // When updating Ammo
    _MonPlayerAmmo:
     cmp dword ptr [iEnableMPA],0
     je _ExitMPA                       // Jump if feature is disabled
    
     cmp rsi,[pHero]
     jne _ExitMPA
    
     test edx,edx
     jns _ExitMPA
    
     xor edx,edx
    
    _ExitMPA:
     mov rsi,rcx                       // Original code
     mov ebp,edx                       // Original code
     add rcx,40                        // Original code
     jmp _BackMPA                      // Back to main code
    
    //========================================= new S2.0 104 X
    // When updating weapon heat
    _MonWeaponHeat:
     cmp dword ptr [iEnableMWH],0
     je _ExitMWH                       // Jump if feature is disabled
    
     ret
    //--
    _ExitMWH:
     mov [rsp+08],rbx                  // Original code
     jmp _BackMWH                      // Back to main code
    
    //=========================================
    align 10,'='
    //=========================================
     db '===============================&gt;'
     db 'CE6.7 Script by Recifense 190621'
    //=========================================
    // Variables
    iEnableGMD:
     dd 0
    iEnableGMO:
     dd 0
    iEnableMHA:
     dd 0
    iEnableMHS:
     dd 0
    iEnableMPA:
     dd 0
    iEnableMWH:
     dd 0
    iEnableMQK:
     dd 0
    iEnableMHW:
     dd 0
    pHero:
     dq 0
    pCredits:
     dq 0
    pVal:
     dq 0
    pHeroB:
     dq 0
    pRAX:
     dq 0
    pLast:
     dq 0
    fLast:
     dd 0
    
    //=========================================
    // Hacking Points
    MOPH:
     jmp _MonPlayerHero
     nop
     nop
    _BackMPH:
    
    GDMD:
     jmp _GodMode
     nop
    _BackGMD:
    
    MOHA:
     jmp _MonHeroAdrenaline
     nop
     nop
    _BackMHA:
    
    MOHS:
     jmp _MonHeroSupression
     nop
     nop
    _BackMHS:
    
    MOPA:
     jmp _MonPlayerAmmo
     nop
     nop
     nop
     nop
    _BackMPA:
    
    MOWH:
     jmp _MonWeaponHeat
    _BackMWH:
    
    //=========================================
    // Script for Restoring Original Codes
    [DISABLE]
    MOPH:
    // 49 8D 8E 88060000     - lea rcx,[r14+00000688]
     db 49 8d 8e 88 06 00 00
    
    GDMD:
    // 49 8B F1              - mov rsi,r9
    // 4D 8B E8              - mov r13,r8
     db 49 8b f1 4d 8b e8
    
    MOHA:
    // 45 8B F8              - mov r15d,r8d
    // 44 0F28 C1            - movaps xmm8,xmm1
    
     db 45 8B F8 44 0F 28 C1
    
    MOHS:
    // 48 8B 9B B00A0000     - mov rbx,[rbx+00000AB0]
     db 48 8b 9b b0 0a 00 00
    
    MOPA:
    // 48 8B F1              - mov rsi,rcx
    // 8B EA                 - mov ebp,edx
    // 48 83 C1 40           - add rcx,40 { 64 }
    
     db 48 8b f1 8b ea 48 83 c1 40
    
    MOWH:
    // 48 89 5C 24 08        - mov [rsp+08],rbx
     db 48 89 5c 24 08
    
    //=========================================
    // Unregistering Symbols
    unregistersymbol(MyCode)
    unregistersymbol(iEnableGMD)
    unregistersymbol(iEnableGMO)
    unregistersymbol(iEnableMHA)
    unregistersymbol(iEnableMHS)
    unregistersymbol(iEnableMPA)
    unregistersymbol(iEnableMWH)
    unregistersymbol(iEnableMQK)
    unregistersymbol(iEnableMHW)
    unregistersymbol(pHero)
    unregistersymbol(pCredits)
    unregistersymbol(pHeroB)
    unregistersymbol(fLast)
    unregistersymbol(pLast)
    unregistersymbol(fBigVal)
    unregistersymbol(fSmallval)
    
    unregistersymbol(MOPH)
    unregistersymbol(GDMD)
    unregistersymbol(MOHA)
    unregistersymbol(MOHS)
    unregistersymbol(MOPA)
    unregistersymbol(MOWH)
    
    //=========================================
    dealloc(MyCode)
    //============= Scripts End ===============
    
    // ****************************************
    // NOTES
    // ****************************************
    {
    }
    
    </AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>242</ID>
              <Description>"pPlayer"</Description>
              <ShowAsHex>1</ShowAsHex>
              <VariableType>4 Bytes</VariableType>
              <Address>pHero</Address>
              <Offsets>
                <Offset>0</Offset>
              </Offsets>
            </CheatEntry>
            <CheatEntry>
              <ID>96</ID>
              <Description>"[X] &lt;== God Mode"</Description>
              <Options moHideChildren="1" moDeactivateChildrenAsWell="1"/>
              <LastState/>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
    {$LUA}
    writeInteger("iEnableGMD",1)
    memrec.Color=0x0004000
    {$ASM}
    
    [disable]
    {$LUA}
    writeInteger("iEnableGMD",0)
    memrec.Color=0x0c08000
    {$ASM}
    
    </AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>248</ID>
                  <Description>"Monster Damage (Positive value heals)"</Description>
                  <LastState Value="0.00009999999747" RealAddress="7FF63D5100AE"/>
                  <VariableType>Float</VariableType>
                  <Address>fSmallval</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>142</ID>
              <Description>"[X] &lt;== Include Companions"</Description>
              <LastState/>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
    {$LUA}
    writeInteger("iEnableGMO",1)
    memrec.Color=0x0004000
    {$ASM}
    
    [disable]
    {$LUA}
    writeInteger("iEnableGMO",0)
    memrec.Color=0x0c08000
    {$ASM}
    
    </AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>144</ID>
              <Description>"[X] &lt;== Unlimited Suppression Resistense"</Description>
              <LastState/>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
    {$LUA}
    writeInteger("iEnableMHS",1)
    memrec.Color=0x0004000
    {$ASM}
    
    [disable]
    {$LUA}
    writeInteger("iEnableMHS",0)
    memrec.Color=0x0c08000
    {$ASM}
    
    </AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>145</ID>
              <Description>"[X] &lt;== Unlimited Ammo (no releoad needed)"</Description>
              <LastState/>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
    {$LUA}
    writeInteger("iEnableMPA",1)
    memrec.Color=0x0004000
    {$ASM}
    
    [disable]
    {$LUA}
    writeInteger("iEnableMPA",0)
    memrec.Color=0x0c08000
    {$ASM}
    
    </AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>229</ID>
              <Description>"[X] &lt;== No Weapon Heat"</Description>
              <LastState/>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
    {$LUA}
    writeInteger("iEnableMWH",1)
    memrec.Color=0x0004000
    {$ASM}
    
    [disable]
    {$LUA}
    writeInteger("iEnableMWH",0)
    memrec.Color=0x0c08000
    {$ASM}
    
    </AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>239</ID>
              <Description>"[X] &lt;== Quick Kill"</Description>
              <Options moHideChildren="1"/>
              <LastState/>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
    {$LUA}
    writeInteger("iEnableMQK",1)
    memrec.Color=0x0004000
    {$ASM}
    
    [disable]
    {$LUA}
    writeInteger("iEnableMQK",0)
    memrec.Color=0x0c08000
    {$ASM}
    
    </AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>247</ID>
                  <Description>"Player Damage"</Description>
                  <LastState Value="-16800" RealAddress="7FF63D5100B2"/>
                  <VariableType>Float</VariableType>
                  <Address>fBigVal</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>143</ID>
              <Description>"[X] &lt;== Full Adrenaline/Focus/Data-flux (No Warp Heat should be OFF)"</Description>
              <LastState/>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
    {$LUA}
    writeInteger("iEnableMHA",1)
    memrec.Color=0x0004000
    {$ASM}
    
    [disable]
    {$LUA}
    writeInteger("iEnableMHA",0)
    memrec.Color=0x0c08000
    {$ASM}
    
    </AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>241</ID>
              <Description>"[X] &lt;== No Warp Heat (Full Adrenaline should be OFF)"</Description>
              <LastState/>
              <Color>C08000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
    {$LUA}
    writeInteger("iEnableMHW",1)
    memrec.Color=0x0004000
    {$ASM}
    
    [disable]
    {$LUA}
    writeInteger("iEnableMHW",0)
    memrec.Color=0x0c08000
    {$ASM}
    
    </AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>86</ID>
              <Description>"[X] &lt;== Set Movement Speed"</Description>
              <Options moHideChildren="1"/>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
    aobscanmodule(movement,Warhammer.exe,F3 0F 11 B3 C0 05 00 00)
    alloc(newmem,$1000,movement)
    
    //label(code)
    label(return)
    label(movement_speed)
    
    newmem:
      cmp rbx,[pHero]
      jne code
      push rax
      mov rax,movement_speed
      movss xmm6,[rax]
      pop rax
    code:
      movss [rbx+000005C0],xmm6
      jmp return
    
    movement_speed:
      dd (float)200
    
    movement:
      jmp newmem
      nop
      nop
      nop
    
    
    
    return:
    
    registersymbol(movement)
    registersymbol(movement_speed)
    
    [DISABLE]
    movement:
      db F3 0F 11 B3 C0 05 00 00
    unregistersymbol(movement)
    unregistersymbol(movement_speed)
    dealloc(newmem)
    
    {
    // ORIGINAL CODE - INJECTION POINT: "Warhammer_x64_11.exe"+32A9B0
    
    "Warhammer_x64_11.exe"+32A989: F3 0F 59 F1              -  mulss xmm6,xmm1
    "Warhammer_x64_11.exe"+32A98D: 48 8B 03                 -  mov rax,[rbx]
    "Warhammer_x64_11.exe"+32A990: BA 3C 00 00 00           -  mov edx,0000003C
    "Warhammer_x64_11.exe"+32A995: 48 8B CB                 -  mov rcx,rbx
    "Warhammer_x64_11.exe"+32A998: FF 90 C8 00 00 00        -  call qword ptr [rax+000000C8]
    "Warhammer_x64_11.exe"+32A99E: 84 C0                    -  test al,al
    "Warhammer_x64_11.exe"+32A9A0: 74 0E                    -  je Warhammer_x64_11.exe+32A9B0
    "Warhammer_x64_11.exe"+32A9A2: B9 2B 0C 00 00           -  mov ecx,00000C2B
    "Warhammer_x64_11.exe"+32A9A7: E8 34 FE 67 00           -  call Warhammer_x64_11.exe+9AA7E0
    "Warhammer_x64_11.exe"+32A9AC: F3 0F 59 F0              -  mulss xmm6,xmm0
    // ---------- INJECTING HERE ----------
    "Warhammer_x64_11.exe"+32A9B0: F3 0F 11 B3 78 05 00 00  -  movss [rbx+00000578],xmm6
    // ---------- DONE INJECTING  ----------
    "Warhammer_x64_11.exe"+32A9B8: C6 83 80 05 00 00 00     -  mov byte ptr [rbx+00000580],00
    "Warhammer_x64_11.exe"+32A9BF: F3 0F 10 83 78 05 00 00  -  movss xmm0,[rbx+00000578]
    "Warhammer_x64_11.exe"+32A9C7: 0F 28 74 24 40           -  movaps xmm6,[rsp+40]
    "Warhammer_x64_11.exe"+32A9CC: 0F 28 7C 24 30           -  movaps xmm7,[rsp+30]
    "Warhammer_x64_11.exe"+32A9D1: 48 83 C4 50              -  add rsp,50
    "Warhammer_x64_11.exe"+32A9D5: 5B                       -  pop rbx
    "Warhammer_x64_11.exe"+32A9D6: C3                       -  ret 
    "Warhammer_x64_11.exe"+32A9D7: CC                       -  int 3 
    "Warhammer_x64_11.exe"+32A9D8: CC                       -  int 3 
    "Warhammer_x64_11.exe"+32A9D9: CC                       -  int 3 
    }
    </AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>84</ID>
                  <Description>"Movement Speed (Set)"</Description>
                  <VariableType>Float</VariableType>
                  <Address>movement_speed</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>267</ID>
                  <Description>"Movement Speed"</Description>
                  <VariableType>Float</VariableType>
                  <Address>pHero</Address>
                  <Offsets>
                    <Offset>5C0</Offset>
                  </Offsets>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>250</ID>
          <Description>"Unlimited Zoom"</Description>
          <Options moHideChildren="1"/>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
    aobscanmodule(zoom,Warhammer.exe,C7 83 30 04 00 00 00 00 80 3F)
    
    zoom:
      //db C7 83 28 04 00 00 00 00 40 40
      db 90 90 90 90 90 90 90 90 90 90
    
    registersymbol(zoom)
    
    [DISABLE]
    zoom:
      db C7 83 30 04 00 00 00 00 80 3F
    unregistersymbol(zoom)
    unregistersymbol(zoom_speed)
    
    {
    ORIGINAL CODE - INJECTION POINT: "Warhammer_x64_11.exe"+2E6617
    
    "Warhammer.exe"+2E65FA - 73 0A                 - jae Warhammer.exe+2E6606
    "Warhammer.exe+2E65FC - C7 83 30040000 00000000 - mov [rbx+00000430],00000000
    "Warhammer.exe"+2E6606 - F3 0F10 05 F2005D01   - movss xmm0,[Warhammer.exe+18B6700]
    "Warhammer.exe"+2E660E - 0F2F 83 30040000      - comiss xmm0,[rbx+00000430]
    "Warhammer.exe"+2E6615 - 73 0A                 - jae Warhammer.exe+2E6621
    "Warhammer.exe"+2E6617 - C7 83 30040000 0000803F - mov [rbx+00000430],3F800000
    "Warhammer.exe"+2E6621 - 48 8B 5C 24 40        - mov rbx,[rsp+40]
    "Warhammer.exe"+2E6626 - 48 83 C4 30           - add rsp,30
    "Warhammer.exe"+2E662A - 5F                    - pop rdi
    
    }
    </AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>261</ID>
          <Description>"No Cooldown"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
    aobscanmodule(cooldown,Warhammer.exe,F3 0F 10 87 BC 01 00 00 F3 0F 5C)
    cooldown:
      db 0F 57 C0 90 90 90 90 90
    registersymbol(cooldown)
    
    [DISABLE]
    cooldown:
      db F3 0F 10 87 BC 01 00 00
    unregistersymbol(cooldown)
    
    {
    // ORIGINAL CODE - INJECTION POINT: "Warhammer_x64_11.exe"+66EE67
    
    Warhammer_x64_11.exe+A196D1 - 76 13                 - jna Warhammer_x64_11.exe+A196E6
    Warhammer_x64_11.exe+A196D3 - 44 0F2F 87 B8010000   - comiss xmm8,[rdi+000001B8]
    Warhammer_x64_11.exe+A196DB - 76 09                 - jna Warhammer_x64_11.exe+A196E6
    Warhammer_x64_11.exe+A196DD - F3 0F11 BC 24 D8000000  - movss [rsp+000000D8],xmm7
    Warhammer_x64_11.exe+A196E6 - 0F28 BC 24 90000000   - movaps xmm7,[rsp+00000090]
    Warhammer_x64_11.exe+A196EE - F3 0F58 B4 24 D8000000  - addss xmm6,dword ptr [rsp+000000D8]
    // ---------- INJECTING HERE ----------
    Warhammer_x64_11.exe+A196F7 - F3 0F10 87 BC010000   - movss xmm0,[rdi+000001BC]
    // ---------- DONE INJECTING  ----------
    Warhammer_x64_11.exe+A196FF - F3 0F5C C6            - subss xmm0,xmm6
    Warhammer_x64_11.exe+A19703 - F3 0F11 87 BC010000   - movss [rdi+000001BC],xmm0
    Warhammer_x64_11.exe+A1970B - 44 0F2F 8F BC010000   - comiss xmm9,[rdi+000001BC]
    Warhammer_x64_11.exe+A19713 - 72 07                 - jb Warhammer_x64_11.exe+A1971C
    Warhammer_x64_11.exe+A19715 - 48 89 AF B8010000     - mov [rdi+000001B8],rbp
    Warhammer_x64_11.exe+A1971C - 48 8B 87 00020000     - mov rax,[rdi+00000200]
    Warhammer_x64_11.exe+A19723 - 8B F5                 - mov esi,ebp
    
    }
    </AssemblerScript>
        </CheatEntry>
      </CheatEntries>
      <UserdefinedSymbols>
        <SymbolEntry>
          <Name>player_ptr</Name>
          <Address>20901240000</Address>
        </SymbolEntry>
        <SymbolEntry>
          <Name>Recifense</Name>
          <Address>20190621</Address>
        </SymbolEntry>
      </UserdefinedSymbols>
    </CheatTable>
    

     

     

  2. Спойлер

     

    
    // Player Hero at Mission (all the time)
    _MonPlayerHero:
     mov [pHero],r14
    
    _ExitMPH:
     lea rcx,[r14+00000688]            // Original code
     jmp _BackMPH                      // Back to main code
    
    //========================================= 200b #
    // During Mission (Health points)
    _GodMode:
     mov [pLast],rcx
     movss [fLast],xmm1
    
     cmp rcx,[pHero]
     je _GodMD00
    
     mov rax,[rcx+00000658]
     test rax,rax
     jz _ExitGMD
    
     cmp byte ptr [rax+00000174],00
     jne _GodMD01
    
     cmp dword ptr [iEnableGMO],0
     je _ExitGMD                       // Jump if feature is disabled
    
    _GodMD00:
     cmp dword ptr [iEnableGMD],0
     je _ExitGMD                       // Jump if feature is disabled
    
     maxss xmm1,[fSmallval]
     jmp _ExitGMD
    //--
    _GodMD01:
     cmp dword ptr [iEnableMQK],0
     je _ExitGMD                       // Jump if feature is disabled
    
     minss xmm1,[fBigVal]
    
    _ExitGMD:
     mov rsi,r9                        // Original code
     mov r13,r8                        // Original code
     jmp _BackGMD                      // Back to main code
    //---------------
    fSmallval:
     dd (float)0.0001
    fBigVal:
     dd (float)-16800.0

     

     

     

    Скрипт взят с fearlessrevolution.com

     

    С первоначальным автором скрипта (для версий до 2.0.0b) связаться не удалось, поэтому пытаюсь сам понять ход его действий, выходит так себе.

     

    К сути. Есть участок кода, отвечающий за бессмертие и быстрое убийство.Чтобы не подыхать на старте задания от действия скрипта происходит проверка "на миссии ли игрок", далее каким то образом происходит проверка "свой чужой". При просмотре адресов и структур, с которыми взаимодействуют приведенные строки кода вменяемая картина тоже не вырисовывается. Значения адресов, с которыми происходит взаимодействие, с каждым шагом приобретают рандомные значения и понять к чему они относятся не удается.

     

    Попытка поиска функций чтения-записи здоровья по поиску экранных значений так же ни к чему не привели - поиск находит 0 адресов по поиску по значению, а тот float, который изменяется от 0 до 1, не помог как точка отсчета.

     

    Итого:

    1. Непонятно к чему именно создатель чита привязался для проверки "игрок на миссии".

    2. Как он вышел на приведенную функцию и почему использует метод "наибольшее" для бессмертия и "наименьшее" для быстрого убийства.

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.