채팅0

    Gun

    조회수 668

    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-206292
      855708:4546
      855606:2668
      855505:0238
      855404:0933
      855302:0534
      855201:1843
      855101:1656
      855010-2545
      854910-2593
      854810-2571
      854710-2482
      854610-24115
      854510-2499
      854410-24169
      854310-24129
      854210-2367
      854110-23222
      854010-22263
      853910-2278
      안내 배너 이미지