Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.93 KB | None | 0 0
  1. #include <windows.h>
  2.  
  3. typedef bool (*IsConnected_t)(void);
  4.  
  5. bool IsGameReadyForHook()
  6. {
  7. if( GetModuleHandleA( "d3d9.dll" ) != NULL
  8. && GetModuleHandleA( "ClientFX.fxd" ) != NULL
  9. && GetModuleHandleA( "CShell.dll" ) != NULL )
  10. return true;
  11. return false;
  12. }
  13.  
  14. bool bCompare(const BYTE* pData, const BYTE* bMask, const char* szMask)
  15. {
  16. for(;*szMask;++szMask,++pData,++bMask)
  17. if(*szMask=='x' && *pData!=*bMask) return 0;
  18. return (*szMask) == NULL;
  19. }
  20.  
  21. DWORD FindPattern(DWORD dwAddress,DWORD dwLen,BYTE *bMask,char * szMask)
  22. {
  23. for(DWORD i=0; i<dwLen; i++)
  24. if (bCompare((BYTE*)(dwAddress+i),bMask,szMask)) return (DWORD)(dwAddress+i);
  25. return 0;
  26. }
  27.  
  28. bool IsIngame()
  29. {
  30. DWORD* LTBase = (DWORD*)0x00485E10;
  31. IsConnected_t pConnected = *(IsConnected_t*)(*LTBase + 0x8C);
  32.  
  33. return pConnected();
  34. }
  35.  
  36. void main()
  37. {
  38.  
  39. while(!IsGameReadyForHook()){ Sleep(200);
  40. while(IsIngame());}
  41.  
  42. bool glass = false;
  43. while(true)
  44.  
  45. if(GetAsyncKeyState(VK_F1)&1){
  46. glass = !glass;
  47. }
  48. if(glass){
  49. memcpy((LPVOID)0x5725AA, "\x6A\x00", 2);
  50. } else {
  51. memcpy((LPVOID)0x5725AA, "\x6A\x01", 2);
  52. }
  53.  
  54.  
  55. Sleep(50);
  56. }
  57.  
  58. DWORD WINAPI dwHackThread(LPVOID)
  59. {
  60. while( !IsInGame()
  61. while( !IsGameReadyForHook() )
  62. Sleep(100);
  63. main();
  64. return false;
  65. }
  66.  
  67. BOOL WINAPI DllMain ( HMODULE hDll, DWORD dwReason, LPVOID lpReserved )
  68. {
  69. DisableThreadLibraryCalls(hDll);
  70. if ( dwReason == DLL_PROCESS_ATTACH )
  71. {
  72. //
  73. }
  74. {CreateThread(NULL, NULL, dwHackThread, NULL, NULL, NULL);
  75. }
  76. return TRUE;
  77. }
  78.  
  79. bool Memoria( void * pDest, char * szPatch, size_t sSize )//NOP Function
  80. {
  81. DWORD dwOrgProtect = NULL;
  82. if ( !VirtualProtect ( pDest, sSize, PAGE_EXECUTE_READWRITE, &dwOrgProtect ))
  83. return FALSE;
  84.  
  85. memcpy( pDest, szPatch, sSize );
  86. VirtualProtect( pDest, sSize, dwOrgProtect, NULL );
  87. return TRUE;
  88. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement