Admin *Administrator*
Jumlah posting : 74 Birthday : 21.04.87 Join date : 23.10.11 Age : 37 Lokasi : jepang
| Subyek: Base WH Simple Fri Nov 25, 2011 4:15 am | |
| Semoga Berguna Bila Tidak Work tollong Edit Sendiri ea ... - Quote :
- //-----------------------------------------------------------------------------------------------------------------------------------
/**************************************************************** Coded by: iik Type: D3D VTable Base Hook Credits: Strife, R4z8r, Zoomgod, Roverturbo and MSDN. Thanks all for helping me when i got stuck. ****************************************************************/ /*******************************************************************************/ #include #include #include #include #include #include #include #include #pragma comment(lib, "d3d9.lib") #pragma comment(lib, "d3dx9.lib") #pragma comment(lib, "wininet.lib") #pragma comment(lib, "winmm.lib") /*******************************************************************************/ #define My_HWID (-1608172847)//BUAT KASIH HWID NYA /*******************************************************************************/ #define HOOK(func,addy) o##func = (t##func)DetourB8((DWORD)addy,(DWORD)hk##func,7) #define UNHOOK(func,addy) o##func = (t##func)DetourB8((DWORD)addy,(DWORD)o##func,7) /*******************************************************************************/ #define ES 0 //EndScene #define DIP 1 //DrawIndexedPrimitive #define RES 2 //Reset /*******************************************************************************/ #define SMOKE (NumVertices == 192 || primCount == 52 || NumVertices == 256) /*******************************************************************************/ LPD3DXFONT g_pFont = NULL; LPD3DXFONT g_pFont2 = NULL; D3DVIEWPORT9 g_ViewPort; /*******************************************************************************/ LPDIRECT3DTEXTURE9 Megaze, Blooderz, Nightmarez, Avenged, Sevenfold, TujuhX, Bondan, Fadetoblack; LPDIRECT3DDEVICE9 npDevice; LPDIRECT3DTEXTURE9 txHeader; LPD3DXSPRITE bbSprite; D3DXVECTOR3 pHeader; /******************************************************************************/ LPTSTR RaffiModule = "PointBlank.i3Exec"; LPTSTR RaffiModule1 = "PBlackout.i3Exec"; /*******************************************************************************/ #pragma warning (disable:4996 4244) /*******************************************************************************/ bool CekHook=false; bool Wanjeng = true; /*******************************************************************************/ int Comander = 0; int Rezpect = 0; int Comander1 = 0; int Rezpect1 = 0; int tandasilang = 0; int Tutor = 0; /*******************************************************************************/ int CenterX = GetSystemMetrics( 0 ) / 2-1; int CenterY = GetSystemMetrics( 1 ) / 2-1; /*******************************************************************************/ int wew = 1; int whack = 0; int Respawn = 0; int d3d = 1; int uyeh = 0; int Smoking = 0; int color1 = 0; int color2 = 0; int color3 = 0; int color4 = 0; int color5 = 0; int chams = 0; int Miniindo = 0; int player = 1; int defiuss = 0; int Gosong1 = 0; int Spass = 0; int Pistol = 0; int WhGlass = 0; int GravityON = 0; int asus = 0; int panthom = 0; int WHBening = 0; int WHDino = 0; int Graf = 0; int Head = 0; int BurstAWP = 0; int Weapon = 0; int Phantom = 0; int ChamsRobot = 0; int Wireframe = 0; int crosshair = 0; int Raffie = 0; /******************************************************************************/ char *Ctest1[] = { "My Friends" }; char *Ctest2[] = { "My Friends" }; char *Ctest3[] = { "Raffi Alfaris" }; char *Ctest4[] = { "3 Friend Grups" }; /*******************************************************************************/ char *pProcessWindowTitle = "Point Blank"; char *pProcessWindowClass = "I3VIEWER"; /*******************************************************************************/ D3DRECT RectA; D3DRECT RectB; D3DVIEWPORT9 Viewport; /*******************************************************************************/ D3DCOLOR HairColor = D3DCOLOR_ARGB(150, 20, 255, 20); /*******************************************************************************/ DWORD dwProcessID; HANDLE hProcess; /*******************************************************************************/ UCHAR szFileSys[255], szVolNameBuff[255]; DWORD dwMFL, dwSysFlags, dwSerial; /*VOID CheckValidHardwareID() { GetVolumeInformation("C:\",(LPTSTR)szVolNameBuff,255,&dwSerial, &dwMFL,&dwSysFlags,(LPTSTR)szFileSys,255); if (dwSerial == My_HWID) { MessageBox(0,"MANCAP CHEAT SUDAH JALAN\n\nThank'S To PrivateELITE TamBoReS","INFORMATION",MB_OK | MB_ICONINFORMATION); } else // { MessageBox(0,"SALAH KOMPI LO TOD...","INFORMATION",MB_OK | MB_ICONERROR); ExitProcess(1); } } /*******************************************************************************/ /*#define getipurl "http://ip.warungcinta.com/ipyasfi.php"// LINK MENGGAMBIL IP ANDA #define myip "110.137.96.40 " // IP ANDA 110.137.186.98 char output[1];//BANYAK KOMPUTER /*******************************************************************************/ /*int GetIP(char *url) { HINTERNET hInternet; HINTERNET hFile; DWORD ReadSize; BOOL bResult; hInternet = InternetOpen("Some USER-AGENT",INTERNET_OPEN_TYPE_PRECONFIG,NULL,NULL,0); hFile = InternetOpenUrl(hInternet,url,NULL,0,INTERNET_FLAG_RELOAD,0); ReadSize = 15; bResult = InternetReadFile(hFile,output,15,&ReadSize); output[ReadSize] = '\1';// SAMBUANGAN UTK BANYAK KOMPUTER ANDA TADI InternetCloseHandle(hFile); InternetCloseHandle(hInternet); return 0; } /*******************************************************************************/ using namespace std; ofstream infile; ofstream myfile; /*******************************************************************************/ #define MENUMAXITEMS 100 #define MENUFOLDER 1 #define ANJING 1 #define MENUTEXT 2 #define MENUITEM 3 #define MENUWEWITEM 10 /*******************************************************************************/ int Mpos=0; // current highlighted menuitem int Mmax=0; // number of menu items int Mxofs =220; // offset for option text int Mysize=15; // heigh of a menuline int Mvisible=1; /*******************************************************************************/ extern int Mpos; extern int Mmax; extern int Mxofs; extern int Mysize; extern int Mvisible; extern char Mtitle[81]; extern char *Moptfolder[]; extern char *Moptonoff[]; /*******************************************************************************/ char Mtitle[81]= ""; char *Moptfolder[] = {"Open", "Close"}; char *Moptonoff[] = {"Off", "Onn"}; /*******************************************************************************/ void MenuAddItem(char *txt, char **opt, int *var, int maxvalue, int typ); void MenuShow(int x, int y, ID3DXFont* g_pFont); void MenuNav(void); /*******************************************************************************/ #define MCOLOR_CURRENT D3DCOLOR_ARGB(255, 255, 255, 255) #define MCOLOR_TEXT D3DCOLOR_ARGB(255, 000, 255, 000) #define MCOLOR_ACTIVE D3DCOLOR_ARGB(255, 255, 255, 255) #define MENUCOLOR_TITLE D3DCOLOR_ARGB(255, 255, 240, 0) #define MCOLOR_FOLDER D3DCOLOR_ARGB( 250, 25, 220, 251) #define MCOLOR_INACTIVE D3DCOLOR_ARGB(255, 173, 173, 173) /********************************************************************************/ bool Generate = true; LPDIRECT3DTEXTURE9 White,Red,Green,Blue,Black,Purple,Grey,Yellow,Orange; #define WHITE D3DCOLOR_ARGB(255, 255, 255, 255) #define RED D3DCOLOR_ARGB(255, 255, 000, 000) #define GREEN D3DCOLOR_ARGB(255, 000, 255, 000) #define BLUE D3DCOLOR_ARGB(255, 000, 000, 255) #define BLACK D3DCOLOR_ARGB(150, 000, 000, 000) #define mBLACK D3DCOLOR_ARGB(100, 000, 000, 205) #define PURPLE D3DCOLOR_ARGB(255, 125, 000, 255) #define GREY D3DCOLOR_ARGB(255, 128, 128, 128) #define ORANGE D3DCOLOR_ARGB(255, 255, 125, 000) #define WHITE2 D3DCOLOR_ARGB(100, 255, 255, 255) #define RED2 D3DCOLOR_ARGB(100, 255, 000, 000) #define GREEN2 D3DCOLOR_ARGB(100, 000, 255, 000) #define BLUE2 D3DCOLOR_ARGB(100, 000, 000, 255) #define BLACK2 D3DCOLOR_ARGB(100, 000, 000, 000) #define PURPLE2 D3DCOLOR_ARGB(100, 125, 000, 255) #define GREY2 D3DCOLOR_ARGB(100, 128, 128, 128) #define YELLOW2 D3DCOLOR_ARGB(100, 255, 255, 000) #define ORANGE2 D3DCOLOR_ARGB(100, 255, 125, 000) #define WHITE D3DCOLOR_ARGB(255, 255, 255, 255) #define YELLOW D3DCOLOR_ARGB(255, 255, 255, 0) #define TEAL D3DCOLOR_ARGB(255, 0, 255, 255) #define PINK D3DCOLOR_ARGB(255, 255, 240, 0) #define LIME D3DCOLOR_ARGB(255, 198, 255, 0) #define SKYBLUE D3DCOLOR_ARGB(255, 0, 180, 255) #define MAROON D3DCOLOR_ARGB(255, 142, 30, 0) #define LGRAY D3DCOLOR_ARGB(255, 174, 174, 174) #define DGRAY D3DCOLOR_ARGB(255, 71, 65, 64) #define BROWN D3DCOLOR_ARGB(255, 77, 46, 38) #define SHIT D3DCOLOR_ARGB(255, 74, 38, 38) #define Biru D3DCOLOR_ARGB( 250, 25, 220, 251) #define Biru D3DCOLOR_ARGB( 250, 25, 220, 251) /********************************************************************************/ LPDIRECT3DVERTEXBUFFER9 Stream_Data; UINT Offset = 0; UINT Stride = 0; UINT texnum = 0; /********************************************************************************/ RECT rect; RECT rect2; RECT rect3; /********************************************************************************/ struct{ int *var; int maxvalue; int typ; char *txt; char **opt; } /********************************************************************************/ MENU[MENUMAXITEMS]; /********************************************************************************/ void MenuAddItem(char *txt, char **opt, int *var, int maxvalue, int typ){ MENU[Mmax].typ=typ; MENU[Mmax].txt=txt; MENU[Mmax].opt=opt; MENU[Mmax].var=var; MENU[Mmax].maxvalue=maxvalue; Mmax++; } /********************************************************************************/ void MenuShow(int x, int y, ID3DXFont *pFont){ int i, val; DWORD color; SetRect( &rect, x+Mxofs/2, y, x+Mxofs /2 , y ); if (!Mvisible) return; if (Mtitle[0]) { pFont->DrawText(NULL,Mtitle,-1,&rect,DT_NOCLIP | DT_TOP, MCOLOR_CURRENT); y+=Mysize; } for (i=0; ival=(MENU[i].var)?(*MENU[i].var):0; // determine color if (i==Mpos) color=GREEN; else if (MENU[i].typ==MENUFOLDER) color=MCOLOR_FOLDER; else if (MENU[i].typ==ANJING) color=MCOLOR_INACTIVE; else if (MENU[i].typ==MENUTEXT) color=MCOLOR_TEXT; else color=(val)?Biru:WHITE; SetRect( &rect3, x, y, x , y ); SetRect( &rect2, x+Mxofs, y, x+Mxofs , y ); pFont->DrawText(NULL,MENU[i].txt,-1,&rect3, DT_NOCLIP,color); if (MENU[i].opt) { if (MENU[i].typ==MENUTEXT) pFont->DrawText(NULL,(char *)MENU[i].opt,-1,&rect2, DT_NOCLIP | DT_LEFT, color); else pFont->DrawText(NULL,(char *)MENU[i].opt[val],-1,&rect2, DT_NOCLIP | DT_LEFT, color); } y+=Mysize; } } /********************************************************************************/ void MenuNav(void){ /********************************************************************************/ if (GetAsyncKeyState(VK_INSERT)&1) Mvisible=(!Mvisible); if (!Mvisible) return; /********************************************************************************/ if (GetAsyncKeyState(VK_UP)&1) { do { Mpos--; if (Mpos<0) Mpos=Mmax-1; } while (MENU[Mpos].typ==MENUTEXT); /********************************************************************************/ } else if (GetAsyncKeyState(VK_DOWN)&1) { do { Mpos++; if (Mpos==Mmax) Mpos=0; } while (MENU[Mpos].typ==MENUTEXT); } else if (MENU[Mpos].var) { int dir=0; /********************************************************************************/ if (GetAsyncKeyState(VK_LEFT )&1 && *MENU[Mpos].var > 0 ) dir=-1; /********************************************************************************/ if (GetAsyncKeyState(VK_RIGHT)&1 && *MENU[Mpos].var < (MENU[Mpos].maxvalue-1)) dir=1; if (dir) { *MENU[Mpos].var += dir; if (MENU[Mpos].typ==MENUFOLDER) Mmax=0; /********************************************************************************/ } } } /********************************************************************************/ void Anjing() { bool isFindWindow = true; HWND hWnd = NULL;
while(isFindWindow) { if((hWnd = FindWindowA(pProcessWindowClass, pProcessWindowTitle)) != NULL) // jika window ditemukan { isFindWindow = false; } Sleep(500); } GetWindowThreadProcessId(hWnd, &dwProcessID); hProcess = OpenProcess(PROCESS_ALL_ACCESS|PROCESS_VM_OPERATION|PROCESS_VM_READ|PROCESS_VM_WRITE|PROCESS_QUERY_INFORMATION, FALSE, dwProcessID); } /********************************************************************************/ #define PI 3.14159265 ID3DXLine *g_pLine; /********************************************************************************/ DWORD DetourB8( DWORD SrcVA, DWORD DstVA, DWORD Size ) {
DWORD DetourVA, dwProtect, i; #define SIZEOF_MOVEAX_JMPEAX 7 if ( SrcVA && DstVA && Size >= SIZEOF_MOVEAX_JMPEAX ) { DetourVA = (DWORD) VirtualAlloc( NULL, Size + SIZEOF_MOVEAX_JMPEAX, MEM_COMMIT, PAGE_EXECUTE_READWRITE ); if ( DetourVA && VirtualProtect( (VOID*)SrcVA, Size, PAGE_EXECUTE_READWRITE, &dwProtect ) ) { for ( i=0; i < Size; i++ ) { *(BYTE*)( DetourVA + i ) = *(BYTE*)( SrcVA + i ); }
*(BYTE*)( DetourVA + Size + 0 ) = 0xB8; *(DWORD*)( DetourVA + Size + 1 ) = ( SrcVA + Size ); *(WORD*)( DetourVA + Size + 5 ) = 0xE0FF; *(BYTE*)( SrcVA + 0 ) = 0xB8; *(DWORD*)( SrcVA + 1 ) = ( DstVA ); *(WORD*)( SrcVA + 5 ) = 0xE0FF; VirtualProtect( (VOID*)SrcVA, Size, dwProtect, &dwProtect ); VirtualProtect( (VOID*)DetourVA, Size + SIZEOF_MOVEAX_JMPEAX, PAGE_EXECUTE_READ, &dwProtect ); return DetourVA; } } return (0); } /********************************************************************************/ void CopyBuffer(BYTE *Buffer, int Size, DWORD *Address) { DWORD pPrevious = 0; VirtualProtect(Address, Size, PAGE_EXECUTE_READWRITE, &pPrevious); memcpy(Address, Buffer, Size); VirtualProtect(Address, Size, pPrevious, &pPrevious); } /********************************************************************************/ void RaffiDetour(DWORD Function, DWORD Hook, int Size) { Hook = Hook - Function - 5; BYTE bHook[4]; memcpy(bHook,(void*)&Hook,4); BYTE Buffer[10]; memset(Buffer,0x90,10); Buffer[0] = 0xE9; Buffer[1] = bHook[0]; Buffer[2] = bHook[1]; Buffer[3] = bHook[2]; Buffer[4] = bHook[3]; CopyBuffer(Buffer, Size, (DWORD*)Function); } /********************************************************************************/ typedef HRESULT (WINAPI* tEndScene)(LPDIRECT3DDEVICE9 pDevice); tEndScene oEndScene = NULL; /********************************************************************************/ typedef HRESULT (WINAPI* tDrawIndexedPrimitive)(LPDIRECT3DDEVICE9 pDevice, D3DPRIMITIVETYPE PrimType,INT BaseVertexIndex,UINT MinVertexIndex,UINT NumVertices,UINT startIndex,UINT primCount); tDrawIndexedPrimitive oDrawIndexedPrimitive = NULL; /********************************************************************************/ typedef HRESULT(WINAPI* tReset)(LPDIRECT3DDEVICE9 pDevice, D3DPRESENT_PARAMETERS* pPresentationParameters); tReset oReset = NULL; /********************************************************************************/ void PrintText(char pString[], int x, int y, D3DCOLOR col, ID3DXFont *font) { RECT FontRect = { x, y, x+500, y+30 }; font->DrawText( NULL, pString, -1, &FontRect, DT_LEFT | DT_WORDBREAK, col); } /********************************************************************************/ void FillRGB( int x, int y, int w, int h, D3DCOLOR color, IDirect3DDevice9* pDevice ) { D3DRECT rec = { x, y, x + w, y + h }; pDevice->Clear( 1, &rec, D3DCLEAR_TARGET, color, 0, 0 ); } /********************************************************************************/ void DrawPoint(int x, int y, int w, int h, DWORD color) { // FillRGB((int)x, (int)y, (int)w, (int)h, color); } /********************************************************************************/ void DrawCircle(int X, int Y, int radius, int numSides, DWORD Color) { D3DXVECTOR2 Line[128]; float Step = PI * 2.0 / numSides; int Count = 0; for (float a=0; a < PI*2.0; a += Step) { float X1 = radius * cos(a) + X; float Y1 = radius * sin(a) + Y; float X2 = radius * cos(a+Step) + X; float Y2 = radius * sin(a+Step) + Y; Line[Count].x = X1; Line[Count].y = Y1; Line[Count+1].x = X2; Line[Count+1].y = Y2; Count += 2; } g_pLine->Begin(); g_pLine->Draw(Line,Count,Color); g_pLine->End(); } /********************************************************************************/ char Megaze1(void* address, int* val, char bytes) { DWORD Comander, Rezpect; VirtualProtect(address, bytes, PAGE_EXECUTE_WRITECOPY, &Comander); memcpy(address, val, bytes); VirtualProtect(address,bytes,Comander,&Rezpect); return(0); } /********************************************************************************/ char *optColor1[10] = {"Off","Putih","Merah","Hijau","Biru","Hitam","Ungu","Abu","Kuning","Orange"}; char *optColor2[10] = {"Off","Putih","Merah","Hijau","Biru","Hitam","Ungu","Abu","Kuning","Orange"}; char *optColor3[10] = {"Off","Putih","Merah","Hijau","Biru","Hitam","Ungu","Abu","Kuning","Orange"}; char *optColor4[10] = {"Off","Putih","Merah","Hijau","Biru","Hitam","Ungu","Abu","Kuning","Orange"}; char *optColor5[10] = {"Off","Putih","Merah","Hijau","Biru","Hitam","Ungu","Abu","Kuning","Orange"}; /********************************************************************************/ void RebuildMenu(void) {
MenuAddItem(" Damage SG" , Moptonoff , &Comander , 2 , MENUITEM); MenuAddItem(" WH Bening" , Moptonoff , &Miniindo , 2 , MENUITEM); MenuAddItem(" WH Dino" , Moptonoff , &WHBening , 2 , MENUITEM); MenuAddItem(" WH Asus" , Moptonoff , &asus , 2 , MENUITEM); MenuAddItem(" WH Glass" , Moptonoff , &WhGlass , 2 , MENUITEM); MenuAddItem(" ChamzZ Head" , optColor4 , &color4 , 10, MENUWEWITEM); MenuAddItem(" ChamzZ Robot" , optColor5 , &color5 , 10 , MENUWEWITEM); MenuAddItem(" ChamzZ CT" , optColor1 , &color2 , 10, MENUWEWITEM); MenuAddItem(" ChamzZ Tero" , optColor2 , &color1 , 10, MENUWEWITEM); MenuAddItem(" ChamzZ Weapon", optColor3 , &color3 , 10 ,MENUWEWITEM); MenuAddItem(" Wireframe" , Moptonoff , &Wireframe , 2 , MENUITEM); MenuAddItem(" Phantom" , Moptonoff , &Phantom , 2 , MENUITEM); MenuAddItem(" Crosshair" , Moptonoff , &crosshair , 2 , MENUITEM); MenuAddItem(" No Smoke" , Moptonoff , &Smoking , 2 , MENUITEM); } /********************************************************************************/ PBYTE HookVTableFunction( PDWORD* dwVTable, PBYTE dwHook, INT Index ) { DWORD dwOld = 0; VirtualProtect((void*)((*dwVTable) + (Index) ), 0, PAGE_EXECUTE_READWRITE, &dwOld); PBYTE pOrig = ((PBYTE)(*dwVTable)[Index]); (*dwVTable)[Index] = (DWORD)dwHook; VirtualProtect((void*)((*dwVTable) + (Index)), 0, dwOld, &dwOld); return pOrig; } /********************************************************************************/ HRESULT RaffiTexture(IDirect3DDevice9 *pD3Ddev, IDirect3DTexture9 **ppD3Dtex, DWORD colour32) { if( FAILED(pD3Ddev->CreateTexture(8, 8, 1, 0, D3DFMT_A4R4G4B4, D3DPOOL_MANAGED, ppD3Dtex, NULL)) ) return E_FAIL;
WORD colour16 = ((WORD)((colour32>>28)&0xF)<<12) |(WORD)(((colour32>>20)&0xF)<< |(WORD)(((colour32>>12)&0xF)<<4) |(WORD)(((colour32>>4)&0xF)<<0);
D3DLOCKED_RECT d3dlr; (*ppD3Dtex)->LockRect(0, &d3dlr, 0, 0); WORD *pDst16 = (WORD*)d3dlr.pBits;
for(int xy=0; xy < 8*8; xy++) *pDst16++ = colour16;
(*ppD3Dtex)->UnlockRect(0);
return S_OK; } /********************************************************************************/ void DrawString(int x, int y, DWORD color, const char *fmt, ...) { RECT FontPos = { x, y, x + 30, y + 20 }; char buf[1024] = {'\0'}; va_list va_alist; va_start(va_alist, fmt); vsprintf(buf, fmt, va_alist); va_end(va_alist);
g_pFont2->DrawText(NULL, buf, -1, &FontPos, DT_NOCLIP, color); } /********************************************************************************/ void Jam(int x,int y,D3DCOLOR color) { static float TimeElapsed = 0; static char FinalString[MAX_PATH]; static time_t TimeValue; static tm* timeinfo; RECT FontPos = { x, y, x + 200, y + 16 }; time ( &TimeValue ); timeinfo = localtime ( &TimeValue ); sprintf(FinalString, " [ TIME : %d:%d:%d ]",timeinfo->tm_hour - 12,timeinfo->tm_min,timeinfo->tm_sec); g_pFont->DrawTextA(NULL, FinalString, -1, &FontPos, DT_NOCLIP, color); } /********************************************************************************/ void Tanggal(int x,int y,D3DCOLOR color) { static char cdate[20] = "" ; struct tm * current_tm; RECT FontPos = { x, y, x + 200, y + 16 }; time_t current_time; time (¤t_time); current_tm = localtime (¤t_time); sprintf( cdate, " [ DATE : %d-%02d-%d ]",current_tm->tm_mon+1,current_tm->tm_mday,current_tm->tm_year-100+2000); g_pFont->DrawTextA(NULL, cdate, -1, &FontPos, DT_NOCLIP, color); } /********************************************************************************/ void DrawSprite(LPDIRECT3DDEVICE9 pDevice) { // pHeader.x=10.0f; pHeader.y=-1.0f; pHeader.z=0.0f; // if(txHeader == NULL)D3DXCreateTextureFromFileInMemoryEx(pDevice,&_Menu,sizeof(_Menu),280,440,D3DX_DEFAULT,0,D3DFMT_UNKNOWN,D3DPOOL_MANAGED,D3DX_DEFAULT,D3DX_DEFAULT,0,NULL,NULL,&txHeader); // if(bbSprite == NULL)D3DXCreateSprite(pDevice, &bbSprite); // bbSprite->Begin(D3DXSPRITE_ALPHABLEND); // bbSprite->Draw(txHeader, 0, 0, &pHeader, 0xFFFFFFFF); // bbSprite->End(); } /********************************************************************************/ HRESULT WINAPI hkEndScene(LPDIRECT3DDEVICE9 pDevice) { myfile << "EndScene is hooked\n"; while(!npDevice) { npDevice = pDevice; } /********************************************************************************/ if (Generate){ RaffiTexture(pDevice, &Blooderz , D3DCOLOR_ARGB(255,255,255,0)); RaffiTexture(pDevice, &TujuhX , D3DCOLOR_ARGB(255,255,192,203)); RaffiTexture(pDevice, &White, WHITE2); RaffiTexture(pDevice, &Red, RED2); RaffiTexture(pDevice, &Green, GREEN2); RaffiTexture(pDevice, &Blue, BLUE2); RaffiTexture(pDevice, &Black, BLACK2); RaffiTexture(pDevice, &Purple, PURPLE2); RaffiTexture(pDevice, &Grey, GREY2); RaffiTexture(pDevice, &Yellow, YELLOW2); RaffiTexture(pDevice, &Orange, ORANGE2); Generate = false; } if (crosshair == 1) { int x = ( GetSystemMetrics( 0 ) / 2); int y = ( GetSystemMetrics( 1 ) / 2); D3DRECT rec = { x - 10, y, x + 10, y + 1}; D3DRECT rec2 = { x, y - 10, x + 1, y + 10}; pDevice->Clear(1, &rec , D3DCLEAR_TARGET,WHITE,0, 0); pDevice->Clear(1, &rec2, D3DCLEAR_TARGET,WHITE, 0, 0); } /********************************************************************************/ if(g_pFont == NULL) D3DXCreateFont(pDevice, 20, 0, FW_BOLD, 1, 0, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, ANTIALIASED_QUALITY, DEFAULT_PITCH | FF_DONTCARE, "MS Sans Serif", &g_pFont); //Create fonts if(g_pFont2 == NULL) D3DXCreateFont(pDevice, 30, 0, FW_BOLD, 1, 0, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, ANTIALIASED_QUALITY, DEFAULT_PITCH | FF_DONTCARE, "MS Sans Serif", &g_pFont2); //Create fonts if(g_pLine == NULL) D3DXCreateLine(pDevice, &g_pLine); pDevice->GetViewport(&g_ViewPort); pDevice->GetViewport(&g_ViewPort); if(uyeh == 0) { DrawString(485, 10, 0xFFAAFFCC, " IIk"); DrawString(50, 680, 0xFFFFFF00, " >>> BY : Iik_ <<<"); DrawString(50, 720, 0xFFFF00FF, " XXX"); DrawString(485, 100, WHITE, " Indonesia Cyber Stone"); Tanggal(570,55,0xFFFFFF00); Jam(580,70,0xFFFF0000); if (Mmax==0) RebuildMenu(); MenuShow(-20,35,g_pFont); MenuNav(); DrawSprite(pDevice); } return oEndScene(pDevice); } /********************************************************************************/ HRESULT WINAPI hkDrawIndexedPrimitive(LPDIRECT3DDEVICE9 pDevice, D3DPRIMITIVETYPE PrimType,INT BaseVertexIndex,UINT MinVertexIndex,UINT NumVertices,UINT startIndex,UINT primCount) { myfile << "DIP is hooked\n"; //Check log if(pDevice->GetStreamSource(0, &Stream_Data, &Offset, &Stride) == D3D_OK) Stream_Data->Release(); if(Smoking == 1) { if(SMOKE) { return D3D_OK; }
if (asus) if (Stride==40) //Asus { pDevice->SetRenderState( D3DRS_SRCBLEND, 3 ); pDevice->SetRenderState( D3DRS_DESTBLEND, 4 ); pDevice->SetRenderState( D3DRS_ALPHABLENDENABLE, true ); } } if(WHBening) { if(Stride == 48 || Stride == 52 || Stride ==0x24 || Stride == 64 ) CekHook=true; { pDevice->SetRenderState(D3DRS_ZENABLE, false); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, true); CekHook=false; } } /*if(ChamsRobot) { if (Stride == 40) CekHook=true; { pDevice->SetRenderState(D3DRS_ZENABLE, false); pDevice->SetTexture(0, Green); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, true); } }*/ /*if(Head) { if((Stride == 0x24)) { pDevice->SetRenderState(D3DRS_ZENABLE, false); pDevice->SetTexture(0, Green); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetTexture(0, Green); pDevice->SetRenderState(D3DRS_ZENABLE, true); } }*/ if(WhGlass) { if((Stride == 52 || Stride == 48)) CekHook=true; { pDevice->SetRenderState(D3DRS_ZENABLE, false); pDevice-> SetRenderState (D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, true); CekHook=false; } } /*if (Weapon == 1) { if (Stride==32) CekHook=true;
if (CekHook==true){ pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); CekHook=false; } }*/ if (Phantom == 1) { if (Stride==44 || Stride==52) CekHook=true;
if (CekHook==true){ pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); pDevice->SetRenderState(D3DRS_ALPHABLENDENABLE,true); pDevice->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVDESTCOLOR); pDevice->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_INVSRCALPHA); pDevice->SetTexture(0, Black); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); CekHook=false; } } if (Wireframe == 1) { if (Stride==52 || Stride==44) CekHook=true;
if (CekHook==true){ pDevice->SetRenderState( D3DRS_FILLMODE, D3DFILL_WIREFRAME ); } else{ pDevice->SetRenderState( D3DRS_FILLMODE, D3DFILL_SOLID ); CekHook=false; } } if(WHDino == 1) { if(Stride == 53) CekHook=true; if (CekHook==true) { pDevice->SetRenderState(D3DRS_ZENABLE, false); pDevice->SetRenderState( D3DRS_FILLMODE,D3DFILL_SOLID ); pDevice->SetTexture(0, Orange); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState( D3DRS_ZENABLE, true ); pDevice->SetRenderState( D3DRS_FILLMODE,D3DFILL_SOLID ); pDevice->SetTexture(0, Orange); CekHook=false; } } if(WHDino == 1) { if(Stride == 53) CekHook=true; if (CekHook==true) { pDevice->SetRenderState(D3DRS_ZENABLE, false); pDevice->SetRenderState( D3DRS_FILLMODE,D3DFILL_SOLID ); pDevice->SetTexture(0, White); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState( D3DRS_ZENABLE, true ); pDevice->SetRenderState( D3DRS_FILLMODE,D3DFILL_SOLID ); pDevice->SetTexture(0, White); CekHook=false; } }
if (Raffie == 1) { if (Stride==52) CekHook=true;
if (CekHook==true){ pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); CekHook=false; }
if (Stride==44) { pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); } } if (Miniindo == 1) { if(Stride == 44 || Stride == 52 || Stride ==76 || Stride == 36) CekHook=true; if (CekHook==true){ pDevice->SetRenderState(D3DRS_ZENABLE, false); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, true); pDevice->SetRenderState(D3DRS_ZENABLE,false); CekHook=false; } } if(color1) { if( (Stride == 44) ) { if(color1==1) pDevice->SetTexture(0, White); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color1==2) pDevice->SetTexture(0, Red); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color1==3) pDevice->SetTexture(0, Green); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color1==4) pDevice->SetTexture(0, Blue); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color1==5) pDevice->SetTexture(0, Black); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color1==6) pDevice->SetTexture(0, Purple); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color1==7) pDevice->SetTexture(0, Grey); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color1== pDevice->SetTexture(0, Yellow); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color1==9) pDevice->SetTexture(0, Orange); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); } } if(color2) { if( (Stride == 52) ) { if(color2==1) pDevice->SetTexture(0, White); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color2==2) pDevice->SetTexture(0, Red); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color2==3) pDevice->SetTexture(0, Green); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color2==4) pDevice->SetTexture(0, Blue); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color2==5) pDevice->SetTexture(0, Black); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color2==6) pDevice->SetTexture(0, Purple); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color2==7) pDevice->SetTexture(0, Grey); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color2== pDevice->SetTexture(0, Yellow); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color2==9) pDevice->SetTexture(0, Orange); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); } } if(color3) { if( (Stride == 32) ) { if(color3==1) pDevice->SetTexture(0, White); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color3==2) pDevice->SetTexture(0, Red); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color3==3) pDevice->SetTexture(0, Green); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color3==4) pDevice->SetTexture(0, Blue); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color3==5) pDevice->SetTexture(0, Black); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color3==6) pDevice->SetTexture(0, Purple); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color3==7) pDevice->SetTexture(0, Grey); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color3== pDevice->SetTexture(0, Yellow); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color3==9) pDevice->SetTexture(0, Orange); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); } }
if(color4) { if((Stride == 0x24)) { if(color4==1) pDevice->SetTexture(0, White); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color4==2) pDevice->SetTexture(0, Red); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color4==3) pDevice->SetTexture(0, Green); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color4==4) pDevice->SetTexture(0, Blue); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color4==5) pDevice->SetTexture(0, Black); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color4==6) pDevice->SetTexture(0, Purple); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color4==7) pDevice->SetTexture(0, Grey); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color4== pDevice->SetTexture(0, Yellow); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color4==9) pDevice->SetTexture(0, Orange); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); } }
if(color5) { if ((Stride == 40)) { if(color5==1) pDevice->SetTexture(0, White); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color5==2) pDevice->SetTexture(0, Red); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color5==3) pDevice->SetTexture(0, Green); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color5==4) pDevice->SetTexture(0, Blue); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color5==5) pDevice->SetTexture(0, Black); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color5==6) pDevice->SetTexture(0, Purple); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color5==7) pDevice->SetTexture(0, Grey); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color5== pDevice->SetTexture(0, Yellow); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); if(color5==9) pDevice->SetTexture(0, Orange); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE); oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE); } }
return oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); } /********************************************************************************/ HRESULT WINAPI hkReset(LPDIRECT3DDEVICE9 pDevice, D3DPRESENT_PARAMETERS* pPresentationParameters) { myfile << "Reset is hooked\n"; if( g_pFont ) g_pFont->OnLostDevice(); if( g_pLine ) g_pLine->OnLostDevice(); HRESULT iReturnValue = oReset(pDevice, pPresentationParameters); if(iReturnValue == D3D_OK) { if( g_pFont ) g_pFont->OnResetDevice(); if( g_pLine ) g_pLine->OnResetDevice(); } return iReturnValue; } /********************************************************************************/ LRESULT CALLBACK MsgProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam){return DefWindowProc(hwnd, uMsg, wParam, lParam);} void DX_Init(DWORD* table) { WNDCLASSEX wc = {sizeof(WNDCLASSEX),CS_CLASSDC,MsgProc,0L,0L,GetModuleHandle(NULL),NULL,NULL,NULL,NULL,"DX",NULL}; RegisterClassEx(&wc); HWND hWnd = CreateWindow("DX",NULL,WS_OVERLAPPEDWINDOW,100,100,300,300,GetDesktopWindow(),NULL,wc.hInstance,NULL); LPDIRECT3D9 pD3D = Direct3DCreate9( D3D_SDK_VERSION ); D3DPRESENT_PARAMETERS d3dpp; ZeroMemory( &d3dpp, sizeof(d3dpp) ); d3dpp.Windowed = TRUE; d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD; d3dpp.BackBufferFormat = D3DFMT_UNKNOWN; LPDIRECT3DDEVICE9 pd3dDevice; pD3D->CreateDevice(D3DADAPTER_DEFAULT,D3DDEVTYPE_HAL,hWnd,D3DCREATE_SOFTWARE_VERTEXPROCESSING,&d3dpp,&pd3dDevice); DWORD* pVTable = (DWORD*)pd3dDevice; pVTable = (DWORD*)pVTable[0]; table[ES] = pVTable[42]; //EndScene address table[DIP] = pVTable[82]; //DrawIndexedPrimitive address table[RES] = pVTable[16]; //Reset address DestroyWindow(hWnd); } /********************************************************************************/ DWORD WINAPI VirtualMethodTableRepatchingLoopToCounterExtensionRepatching( LPVOID Param ) { while(1) { Sleep(100); HookVTableFunction((PDWORD*)npDevice, (PBYTE)0x4FE787FB,82); HookVTableFunction((PDWORD*)npDevice, (PBYTE)0x4FE787F6,42); return (0); } return 1; } /********************************************************************************/ bool hooked = false; DWORD WINAPI LoopFunction( LPVOID lpParam ) { while(1) { if(GetAsyncKeyState(VK_INSERT)&1) { uyeh = !uyeh; }
if( hooked == false) { DWORD VTable[3] = {0}; while(GetModuleHandle("d3d9.dll")==NULL) { Sleep(250); } DX_Init(VTable); HOOK(EndScene,VTable[ES]); //Hook EndScene as a device discovery hook while(!npDevice) { Sleep(50); //Sleep until npDevice is not equal to NULL } UNHOOK(EndScene, VTable[ES]); //Unhook as soon as we have a valid pointer to pDevice RaffiDetour(0xxxxxxxxxxxx,(DWORD)hkDrawIndexedPrimitive,5); RaffiDetour(0xxxxxxxxxxxx,(DWORD)hkEndScene,5);
*(PDWORD)&oDrawIndexedPrimitive = VTable[DIP]; *(PDWORD)&oEndScene = VTable[ES]; *(PDWORD)&oReset = VTable[RES]; CreateThread(0, 0, VirtualMethodTableRepatchingLoopToCounterExtensionRepatching, 0, 0, 0); hooked = true; Sleep(200); } } return 0; } /********************************************************************************/ BOOL WINAPI DllMain(HMODULE hModule, DWORD dwReason, LPVOID lpvReserved) { if(dwReason == DLL_PROCESS_ATTACH) { /* if(strcmp(myip,output)== 1) {// VALUE 1 DI KIRI ITU BANYAK KOMPUTER HARUS SAMA DENGAN BANYAK KOPUTER DAN OUT PUT DI ATAS MessageBox(0, "Succeed","", MB_OK | MB_ICONINFORMATION); } else { MessageBox(0, "Failed","", MB_OK | MB_ICONINFORMATION); ExitProcess(0); }*/ MessageBox (0,"Credit : Iman Teamelite Dx","Iman |2011", MB_OK + MB_ICONINFORMATION); MessageBox (0,"Thanks To : All Member Buricak-Burinyay.Net","Iman |2011", MB_OK + MB_ICONINFORMATION); //MessageBox (0,"KALO NGAMBIL DLL GUE JANGAN LUPA CREDIT TOD","LEACHER", MB_OK + MB_ICONSTOP); //CheckValidHardwareID(); CreateThread(0, 0, LoopFunction, 0, 0, 0); //system("start [You must be registered and logged in to see this link.] Sleep(2000); system("start [You must be registered and logged in to see this link.] system("start [You must be registered and logged in to see this link.] system("start [You must be registered and logged in to see this link.] system("start [You must be registered and logged in to see this link.] myfile.open("c:\\D3DTest.log"); myfile.clear(); myfile << "----------Attached----------\n"; myfile << "\n"; } else if(dwReason == DLL_PROCESS_DETACH) { myfile << "----------Detached----------"; myfile.close(); } return TRUE; } //-------------------------------//
| |
|