14-12-2021, 06:53 PM
محاكاة عمل مكتبة البرنامج الأصلي...
اوامر بسيطة بدون اضافة تحقق نجاح كل مرحلة من التنفيذ...
![[صورة: WIxIrZF.gif]](https://i.imgur.com/WIxIrZF.gif)
اوامر بسيطة بدون اضافة تحقق نجاح كل مرحلة من التنفيذ...
![[صورة: WIxIrZF.gif]](https://i.imgur.com/WIxIrZF.gif)
PHP كود :
library HookTimeD4A;
uses
Windows;
procedure FakeGeSystemTime(out SytemTime: SYSTEMTIME); stdcall;
begin
SytemTime.wYear := 2222;
SytemTime.wMonth := 11;
SytemTime.wDay := 11;
SytemTime.wHour := 11;
SytemTime.wMinute := 11;
SytemTime.wSecond := 11;
SytemTime.wMilliseconds := 1111;
end;
// --- 64bit
type
TDataToWrite = packed record
MOV: WORD;
FakeProc: Pointer;
JMPEAX: WORD end;
(*
//--- 32bit
type
TDataToWrite = packed record
MOV: BYTE;
FakeProc: Pointer;
JMPEAX: WORD
end;
*)
var
lpNumberOfBytesWritten: SIZE_T;
DataToWrite: TDataToWrite;
pGetSystemTime: Pointer;
pGetLocalTime: Pointer;
begin
// --- 64bit
DataToWrite.MOV := $B848;
// --- 32bit
// DataToWrite.MOV := $B8;
DataToWrite.FakeProc := @FakeGeSystemTime;
DataToWrite.JMPEAX := $E0FF;
pGetSystemTime := GetProcAddress(GetModuleHandleA('kernel32.dll'),
'GetSystemTime');
WriteProcessMemory(GetCurrentProcess(), pGetSystemTime, @DataToWrite,
sizeof(DataToWrite), lpNumberOfBytesWritten);
pGetLocalTime := GetProcAddress(GetModuleHandleA('kernel32.dll'),
'GetLocalTime');
WriteProcessMemory(GetCurrentProcess(), pGetLocalTime, @DataToWrite,
sizeof(DataToWrite), lpNumberOfBytesWritten);
end.



![[-]](https://delphi4arab.net/forum/D4A2020/collapse.png)