⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pubwin_loader.dpr

📁 升级版 了让广大delphi爱好者更好的学习delphi
💻 DPR
字号:
{
  PubWin4 No Password loader By Anskya
  Email:Anskya@Gmail.com
  Web:Www.Anskya.Net
}
program PubWin_Loader;

uses
  Windows,TlHelp32;

const
  OldData : array[0..1] of byte = ($75,$09);
  NewData : array[0..1] of byte = ($90,$90);

var
  StartInfo: TStartupInfo;
  ProcInfo: TProcessInformation;
  ProcessHndle,PID: HWND;
  BytesRead : DWORD;
  TmpData : array[0..1] of Byte;
  FilePath:String;

function FindPath(PID:longword):String;
var
  ModuleSnapshot: THandle;
  Module32: TModuleEntry32;
begin
  Result:='';
  ModuleSnapshot := CreateToolHelp32SnapShot(TH32CS_SNAPMODULE,PID);
  if ModuleSnapshot>0 then
  begin
    Module32.dwSize := sizeof(Module32);
    Module32First(ModuleSnapshot, Module32);
    Result:=Module32.szExePath;
  end;
end;

begin
  GetWindowThreadProcessId(FindWindow('Afx:400000:0','Socket Notification Sink'), @PID);
  if PID<=0 then Exit;
  FilePath:=FindPath(PID);
  if FilePath='' then Exit;
  ProcessHndle:=OpenProcess(PROCESS_TERMINATE,FALSE,PID);
  if ProcessHndle<= 0 then Exit;
  TerminateProcess(ProcessHndle, 0);
  CloseHandle(ProcessHndle);


  ZeroMemory(@StartInfo, SizeOf(TStartupInfo));
  StartInfo.cb := SizeOf(TStartupInfo);
  if not CreateProcess(nil,Pchar(FilePath), nil, nil, False, Create_Suspended, nil, nil, StartInfo, ProcInfo) then Exit;
  ReadProcessMemory(ProcInfo.hProcess,Pointer($40F43A),@TmpData,2,BytesRead);
  if (TmpData[0] = OldData[0]) and (TmpData[1] = OldData[1]) then
  begin
    if WriteProcessMemory(ProcInfo.hProcess, Pointer($40F43A), @NewData, 2, BytesRead) then
      MessageBox(0,'恭喜补丁成功',nil,0) else MessageBox(0,'不好意思补丁失败',nil,0);
  end else
  begin
    MessageBox(0,'不好意思补丁失败',nil,0)
  end;
  ResumeThread(ProcInfo.hThread);
  CloseHandle(ProcInfo.hProcess);
  CloseHandle(ProcInfo.hThread);
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -