Originally Posted by
Thunder Jr
And now, he changes the code from :
#include <Windows.H>
#include <Stdio.H>
BYTE ByteAsli[6] = {0x00, 0x00, 0x00, 0x00, 0xFF, 0x95};
BYTE RubahByte[6] = {0x00, 0x00, 0x00, 0x00, 0xFF, 0x95};
DWORD Maroon5_Hack = 0;
LPTSTR Maroon5 = "Blackshot.Exe";
void Patch(Void *Adr, Void *Ptr, Int Size)
{
DWORD NewProtection;
VirtualProtect(Adr,Size,PAGE_EXECUTE_WRITECOPY, &NewProtection);
Memcpy(Adr,Ptr,Size);
VirtualProtect(Adr,Size,NewProtection, &NewProtection);
}
DWORD WINAPI LoopFunction(LPVOID Param)
{
While (1) {
if (GetAsyncKeyState(VK_END)&1)
{
DWORD MPGH = (DWORD)GetModuleHandleA(Maroon5);
{
if (MPGH > 0) {
Maroon5_Hack = MPGH + 0x4C778F;
((Void *)(Maroon5_Hack),(Void*)(PBYTE)RubahByte, 6);
Sleep(100);
Patch((Void *)(Maroon5_Hack),(Void*)(PBYTE)ByteAsli, 6);
}
Sleep(10);
}
}
}
Return (0);
}
BOOL WINAPI DllMain ( HMODULE HDll, DWORD DwReason, LPVOID LpReserved )
{
DisableThreadLibraryCalls(HDll);
if (DwReason == DLL_PROCESS_ATTACH) {
CreateThread(0, 0, LoopFunction, 0, 0, 0);
}
return TRUE;
}
To :
#Include <Windows.H>
#Include <Stdio.H>
BYTE ByteAsli[6] = {0x00, 0x00, 0x00, 0x00, 0xFF, 0x95};
BYTE RubahByte[6] = {0x00, 0x00, 0x00, 0x00, 0xFF, 0x95};
DWORD Maroon5_Hack = 0;
LPTSTR Maroon5 = "Blackshot.Exe";
Void Patch(Void *Adr, Void *Ptr, Int Size)
{
DWORD NewProtection;
VirtualProtect(Adr,Size,PAGE_EXECUTE_WRITECOPY, &NewProtection);
Memcpy(Adr,Ptr,Size);
VirtualProtect(Adr,Size,NewProtection, &NewProtection);
}
DWORD WINAPI LoopFunction(LPVOID Param)
{
While (1) {
If (GetAsyncKeyState(VK_END)&1)
{
DWORD MPGH = (DWORD)GetModuleHandleA(Maroon5);
{
If (MPGH > 0) {
Maroon5_Hack = MPGH + 0x950000; //Npsc.Des | 0x950000 | 228KB | NProtect SpeedCheck ModulePatch
((Void *)(Maroon5_Hack),(Void*)(PBYTE)RubahByte, 6);
Sleep(100);
Patch((Void *)(Maroon5_Hack),(Void*)(PBYTE)ByteAsli, 6);
}
Sleep(10);
}
}
}
Return (0);
}
BOOL WINAPI DllMain ( HMODULE HDll, DWORD DwReason, LPVOID LpReserved )
{
DisableThreadLibraryCalls(HDll);
If (DwReason == DLL_PROCESS_ATTACH) {
CreateThread(0, 0, LoopFunction, 0, 0, 0);
}
Return TRUE;
}