채팅0

    Gun

    조회수 704

    unit AutoGunUnit;

    interface

    uses

    Windows;

    procedure AutoGunSet;

    procedure AutoGun(AutoGunToggle: Boolean);

    var

    AutoSpeedGunHook, AutoSpeedGunAddr, BackUp: DWORD;

    CopyValue: Array [0 .. 181] of Byte;

    GunValue: Array [0 .. 9] of Byte = ($C7, $86, $E0, $00, $00, $00, $FF, $FF, $FF, $FF);

    implementation

    uses

    Unit1, CallFunc ,ShellCopy, AddressClass;

    Procedure JmpHookEx(hProcess: Cardinal; DestAddress: DWORD; FuncAdr: DWORD; NopCount: Integer);

    var

    i: Integer;

    bBuffer: byte;

    dBuffer: DWORD;

    NOW: NativeUint;

    old: Cardinal;

    begin

    bBuffer := $E9;

    VirtualProtectEx(hProcess, Pointer(DestAddress), 16,

    PAGE_EXECUTE_READWRITE, old);

    WriteProcessMemory(hProcess, Pointer(DestAddress), @bBuffer, 1, NOW);

    dBuffer := FuncAdr - DestAddress - 5;

    WriteProcessMemory(hProcess, Pointer(DestAddress + 1), @dBuffer, 4, NOW);

    bBuffer := $90;

    if NopCount <> 0 then

    begin

    for i := 0 to NopCount - 1 do

    begin

    WriteProcessMemory(hProcess, Pointer(DestAddress + 5 + i), @bBuffer, 1, NOW);

    end;

    end;

    VirtualProtectEx(hProcess, Pointer(DestAddress), 4, old, old);

    end;

    procedure AutoGunSet;

    begin

    AutoSpeedGunAddr := DWORD(VirtualAllocEx(hProcess, nil, 16, MEM_COMMIT, PAGE_EXECUTE_READWRITE));

    AutoSpeedGunHook := RPM4Byte(RPM4Byte(RPM4Byte(RPM4Byte(cshell + English + $76C) + $14)) + $178);

    ReadProcessMemory(hProcess, Pointer(AutoSpeedGunHook), @CopyValue, Sizeof(CopyValue), Pnativeuint(nil)^);

    WriteProcessMemory(hProcess, Pointer(AutoSpeedGunAddr), @CopyValue, Sizeof(CopyValue), Pnativeuint(nil)^);

    WriteProcessMemory(hProcess, Pointer(AutoSpeedGunAddr + $90), @GunValue, Sizeof(GunValue), Pnativeuint(nil)^);

    JmpHookEx(hProcess, AutoSpeedGunAddr + $9A, AutoSpeedGunHook + $94, 0);

    WPM4Byte(AutoSpeedGunAddr + $41, (AutoSpeedGunHook + $40 + RPM4Byte(AutoSpeedGunHook + $41) + $5) - (AutoSpeedGunAddr + $40) - 5);

    RPM4Byte(RPM4Byte(RPM4Byte(RPM4Byte(cshell + English + $76C) + $14)) + $178);

    end;

    procedure AutoGun(AutoGunToggle: Boolean);

    var

    I: integer;

    AutoGunSlotNum: DWORD;

    begin

    if Form1.AutoGunC.Checked then Begin

    WPM4Byte(WeaponDump + $178, AutoSpeedGunAddr);

    end else begin

    WPM4Byte(WeaponDump + $178, RPM4Byte(cshell + PointerResult + $178));

    end;

    end;

    end.

    댓글10

    삭제된 댓글입니다.

    회원프로필

    168>178

    2022.01.07 23:03

    삭제된 댓글입니다.

    회원프로필

    또그러노

    2022.01.07 23:16
    회원프로필

    ㄷㄷㄷ

    2022.01.07 23:29
    회원프로필

    ?

    2022.01.07 23:33
    회원프로필

    2022.01.07 23:33
    회원프로필

    2022.01.07 23:35
    회원프로필

    고수 ㄷㄷ

    2022.01.07 23:43
    회원프로필

    고수

    2022.01.07 23:45

      게시글 리스트
      제목작성자작성일조회
      공지10-207954
      947607-06189
      947507-0664
      947407-0690
      947307-0551
      947207-0529
      947107-0591
      947007-0526
      946907-0565
      946807-0590
      946707-04167
      946607-04141
      946507-04128
      946407-0436
      946307-03196
      946207-03200
      946107-02137
      946007-02276
      945907-02108
      945807-0286