Регистрация Главная Сообщество
Сообщения за день Справка Регистрация

Inject крошит PW HELP

-

Общение разработчиков

- Программирование для Perfect World, общение и обсуждене разработок

Ответ
 
Опции темы
Старый 03.09.2017, 20:30   #1
 Разведчик
Аватар для fer@bk.ru
 
fer@bk.ru неизвестен в этих краяхfer@bk.ru неизвестен в этих краяхfer@bk.ru неизвестен в этих краях
Регистрация: 17.01.2011
Сообщений: 1
Популярность: -290
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
Exclamation Inject крошит PW HELP

Что не так крошит клиент



base_addr = $00E4BAB0;
AutoPathAdress = $007EDB30;




procedure InjectFunc(hProcess: Cardinal; Func, aParams: Pointer; aParamsSize: DWORD);
var
ThreadAddr, ParamAddr: Pointer;
lpNumberOfBytes: NativeUint;
hThread: THandle;
lpThreadId: Cardinal;
begin
if hProcess<>0 then
begin
ThreadAddr:=VirtualAllocEx(hProcess,nil,256,MEM_CO MMIT,PAGE_READWRITE);
WriteProcessMemory(hProcess,ThreadAddr,Func,256,lp NumberOfBytes);
ParamAddr:=VirtualAllocEx(hProcess,nil,aParamsSize ,MEM_COMMIT,PAGE_READWRITE);
WriteProcessMemory(hProcess,ParamAddr,aParams,aPar amsSize,lpNumberOfBytes);

hThread := CreateRemoteThread(hProcess, nil, 0, ThreadAddr, ParamAddr, 0, lpThreadId);

WaitForSingleObject(hThread,INFINITE);
CloseHandle(hThread);
VirtualFreeEx(hProcess,ParamAddr,0,MEM_RELEASE);
VirtualFreeEx(hProcess,ThreadAddr,0,MEM_RELEASE);
end
end;


procedure AutoPathCall(aPParams: PParams); stdcall;
var
Addr: Pointer;
x,y,z: DWORD;
begin
x:=aPParams^.Px;
y:=aPParams^.Py;
z:=aPParams^.Pz;
Addr:=Pointer(AutoPathAdress);
asm
pushad
MOV EDI,y
MOV ESI,x
MOV EAX,DWORD PTR DS:[base_addr]
PUSH 0
PUSH EDI
MOV ECX,DWORD PTR DS:[EAX+$1C]
PUSH ESI
PUSH 0
PUSH 0
PUSH 0
PUSH $14A
call addr
MOV EDX,DWORD PTR DS:[base_addr]
XOR EAX,EAX
MOV AL,0
PUSH 0
MOV ECX,DWORD PTR DS:[EDX+$1C]
MOV EDX,z
PUSH EAX
PUSH EDX
PUSH 1
PUSH 0
PUSH 0
PUSH $14A
CALL addr
popad
end;
end;

//

procedure TForm5.sButton4Click(Sender: TObject);
var
aParams: TParams;
hProcess, ProcessID: DWORD;
x, y, z: Extended;
begin
ProcessID:=0;
GetWindowThreadProcessId(FindWindow(nil,PChar('Per fect World')),@ProcessID);
if ProcessID<>0 then
begin
hProcess:=OpenProcess(PROCESS_ALL_ACCESS,False,Pro cessID);
x:=552.88;
y:=653.16;
z:=79;
aParams.Px:=Round((x-400)*10);
aParams.Py:=Round((y-550)*10);
aParams.Pz:=Round(z);
InjectFunc(hProcess,@AutoPathCall,@aParams,SizeOf( aParams));
CloseHandle(hProcess);
end;
end;
  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Cheat Engine крошит протццес PW [email protected] Общение разработчиков 3 03.04.2016 17:08
Dll inject MickeyBlueEyes Скрипты и перехват пакетов 0 02.11.2013 10:25

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 10:17.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net