#define WIN32_LEAN_AND_MEAN //buang yg tidak berguna
#include // include untuk createthread
#include
#include
#define OFS_PF 0x4FB432
#define OFS_KEY1 0x3AFEC7
#define OFS_KEY2 0x3AFEC8
#define OFS_KEY3 0x3AFEC9
#define OFS_KEY4 0x3AFEE5
#define OFS_KEY5 0x3AFEE6
#define OFS_KEY6 0x3AFEEE
#define OFS_MAP 0xE503DE
LPTSTR ModulGame = "Audition.exe";
//////////////assembly /////////////////////
void Patch(void *adr, void *ptr, int size)
{
DWORD OldProtection;
VirtualProtect(adr,size,PAGE_EXECUTE_READWRITE, &OldProtection);
memcpy(adr,ptr,size);
VirtualProtect(adr,size,OldProtection, &OldProtection);
}
///////////write memory////////////////////
void WritePointer(unsigned long ulBase, int iOffset, int iValue)
{
if (!IsBadReadPtr((VOID*)ulBase, sizeof(unsigned long)))
{
if (!IsBadWritePtr((void*)(*(unsigned long*)ulBase + iOffset), sizeof(unsigned long)))
{
*(int*)(*(unsigned long*)ulBase + iOffset) = iValue;
}
}
}
DWORD WINAPI MemPacth(LPVOID param) // Perulangan
{
while (1) { // Jika nilai 1 atau True jalankan fungsi dibawah ini !
if (GetAsyncKeyState(VK_F3)&1) {
MessageBeep(MB_ICONINFORMATION);
DWORD adrMin1, adrMin2 = 0;
DWORD dwPB = (DWORD)GetModuleHandleA(ModulGame);
if (dwPB > 0) {
adrMin1 = dwPB + (DWORD)OFS_PF;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x00\x00\x00\x00\x7D\x3F\x33\x33",
;
}
}
if (GetAsyncKeyState(VK_F4)&1) {
MessageBeep(MB_ICONINFORMATION);
DWORD adrMin1, adrMin2 = 0;
DWORD dwPB = (DWORD)GetModuleHandleA(ModulGame);
if (dwPB > 0) {
adrMin1 = dwPB + (DWORD)OFS_PF;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x7D\x3F\x33\x33\x73\x3F\x9A\x99",
;
}
}
if (GetAsyncKeyState(VK_F5)&1) {
MessageBeep(MB_ICONINFORMATION);
DWORD adrMin1, adrMin2 = 0;
DWORD dwPB = (DWORD)GetModuleHandleA(ModulGame);
if (dwPB > 0) {
adrMin1 = dwPB + (DWORD)OFS_KEY1;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x8B", 1);
adrMin1 = dwPB + (DWORD)OFS_KEY2;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x17", 1);
adrMin1 = dwPB + (DWORD)OFS_KEY3;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x89\x11", 2);
adrMin1 = dwPB + (DWORD)OFS_KEY4;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x8B", 1);
adrMin1 = dwPB + (DWORD)OFS_KEY5;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x1C\x07\x89\x18\x8B\x08\x90\x90",
;
adrMin1 = dwPB + (DWORD)OFS_KEY6;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x46\x83\xC0 ", 3);
}
}
if (GetAsyncKeyState(VK_F6)&1) {
MessageBeep(MB_ICONINFORMATION);
DWORD adrMin1, adrMin2 = 0;
DWORD dwPB = (DWORD)GetModuleHandleA(ModulGame);
if (dwPB > 0) {
adrMin1 = dwPB + (DWORD)OFS_KEY1;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x3B", 1);
adrMin1 = dwPB + (DWORD)OFS_KEY2;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x17", 1);
adrMin1 = dwPB + (DWORD)OFS_KEY3;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x75\x36", 2);
adrMin1 = dwPB + (DWORD)OFS_KEY4;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x8B", 1);
adrMin1 = dwPB + (DWORD)OFS_KEY5;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x08\x8B\x1C\x07\x3B\xCB\x75\x08",
;
adrMin1 = dwPB + (DWORD)OFS_KEY6;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x46\x83\xC0 ", 3);
}
}
if (GetAsyncKeyState(VK_F1)&1) {
MessageBeep(MB_ICONINFORMATION);
DWORD adrMin1, adrMin2 = 0;
DWORD dwPB = (DWORD)GetModuleHandleA(ModulGame);
if (dwPB > 0) {
adrMin1 = dwPB + (DWORD)OFS_MAP;
Patch((void *)(adrMin1),(void*)(PBYTE)"\x65", 1);
}
}
Sleep(5); // Berikan jeda
}
return (0); // unhook
}
BOOL WINAPI DllMain ( HMODULE hDll, DWORD dwReason, LPVOID lpReserved )
{
if (dwReason == DLL_PROCESS_ATTACH)
{
DisableThreadLibraryCalls(hDll);
if(dwReason == DLL_PROCESS_ATTACH){
MessageBox(0, "DLL Injected", "Gratis Hack", MB_OK + MB_ICONINFORMATION );
CreateThread(0, 0, (LPTHREAD_START_ROUTINE)MemPacth, 0, 0, 0);
//kuncinama
char strDLLName [_MAX_PATH];
GetModuleFileName(hDll, strDLLName , _MAX_PATH);
if (strstr(strDLLName, "Gratis.dll")
// tampilkan pesan, kalo dll nya sdh bukan asli / sudah di rename
MessageBox(0, "TIDAK ADA NAMA BANG", "Gratis Hack", 0);
ExitProcess(0);//ERROR
}
}
else if(dwReason == DLL_PROCESS_DETACH)
{
}
}
return TRUE;
}