Advertisement
chrondog

Untitled

Dec 28th, 2012
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.07 KB | None | 0 0
  1. #include "stdafx.h"
  2. #include <iostream>
  3. #include <Windows.h>
  4. #include <TlHelp32.h>
  5. using namespace std;
  6.  
  7. HANDLE phandle;
  8. ULONG Clientdll;
  9. ULONG GameOverlayRendererDLL;
  10. ULONG VGUIMatSurfaceDLL;
  11. bool Continue=false;
  12.  
  13. int ONLADDER();
  14. int INWATER();
  15. int ONGROUND();
  16. int INCHAT();
  17.  
  18. void PressKey(unsigned short KeyCode);
  19. ULONG GetModuleAddress(const char *szModuleName, const ULONG dwProcessId);
  20. bool getwindow();
  21.  
  22. int main()
  23. {
  24.         bool Continue = getwindow();
  25.         if(Continue)
  26.         {
  27.                 cout << "External bunnyhop enabled\nPut in console <bind space \"+jump 1; -jump 1\">\nHold SPACE to bunnyhop";
  28.                 long int FL_ONGROUND = 0, FL_INWATER = 0, FL_ONLADDER = 0, FL_INCHAT = 0;
  29.                 while(1)
  30.                 {
  31.                     FL_INCHAT = INCHAT(); FL_ONGROUND = ONGROUND(); FL_INWATER = INWATER(); FL_ONLADDER = ONLADDER();
  32.                     if(GetKeyState(VK_SPACE) & (1 << 15) && !FL_INCHAT)
  33.                     {
  34.                         if(FL_ONGROUND != -1 || FL_INWATER != 0 && FL_INWATER != 1 || FL_ONLADDER == 9)
  35.                             PressKey(0x39);
  36.                     }
  37.                 }
  38.         }
  39.         cin.get();
  40.         return 0;
  41. }
  42.  
  43. int ONLADDER()
  44. {
  45.     int OnLadder = 0;
  46.     ReadProcessMemory(phandle, LPCVOID(Clientdll+0x76202C), &OnLadder, sizeof(OnLadder), NULL);
  47.     ReadProcessMemory(phandle, LPCVOID(OnLadder+0x13c), &OnLadder, sizeof(OnLadder), NULL);
  48.     return OnLadder;
  49. }
  50.  
  51. int INWATER()
  52. {
  53.     int InWater = 0;
  54.     ReadProcessMemory(phandle, LPCVOID(Clientdll+0x77FE3C), &InWater, sizeof(InWater), NULL);
  55.     return InWater;
  56. }
  57.  
  58. int ONGROUND()
  59. {
  60.     int OnGround = 0;
  61.     ReadProcessMemory(phandle, LPCVOID(Clientdll+0x782158), &OnGround, sizeof(OnGround), NULL);
  62.     return OnGround;
  63. }
  64.  
  65. int INCHAT()
  66. {
  67.     int InChat = 0, InChat2 = 0;
  68.     ReadProcessMemory(phandle, LPCVOID(GameOverlayRendererDLL + 0x7BE70), &InChat, sizeof(InChat), NULL);
  69.     ReadProcessMemory(phandle, LPCVOID(VGUIMatSurfaceDLL+0x114064), &InChat2, sizeof(InChat2), NULL);
  70.     if (InChat || !InChat2)
  71.         return 1;
  72.     else
  73.         return 0;
  74. }
  75.  
  76. void PressKey(unsigned short KeyCode)
  77. {
  78.     INPUT InputData;
  79.     InputData.type = INPUT_KEYBOARD;
  80.     InputData.ki.wScan = KeyCode;
  81.     InputData.ki.time = (NULL);
  82.     InputData.ki.dwExtraInfo = 0;
  83.     InputData.ki.dwFlags = 0;
  84.     SendInput(1, &InputData, sizeof(InputData));
  85.     Sleep(1);
  86.     InputData.ki.dwFlags = KEYEVENTF_KEYUP;
  87.     SendInput(1, &InputData, sizeof(InputData));
  88. }
  89.  
  90. ULONG GetModuleAddress(const char *szModuleName, const ULONG dwProcessId)
  91. {
  92.     if (!szModuleName || !dwProcessId)
  93.         return 0;
  94.         HANDLE hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, dwProcessId);
  95.     if (hSnap == INVALID_HANDLE_VALUE)
  96.         return 0;
  97.         MODULEENTRY32 me;
  98.     me.dwSize = sizeof(MODULEENTRY32);
  99.     if (Module32First(hSnap, &me))
  100.     {
  101.         while (Module32Next(hSnap, &me))
  102.         {
  103.                         if (strcmp(reinterpret_cast<const char*>(me.szModule), szModuleName)==0)
  104.                         {
  105.                 CloseHandle(hSnap);
  106.                 return (ULONG)me.modBaseAddr;
  107.                         }
  108.         }
  109.     }
  110.     CloseHandle(hSnap);
  111.     return 0;
  112. }
  113.  
  114. bool getwindow()
  115. {
  116.     DWORD pid=0;
  117.     HWND hWnd=0;
  118.     hWnd = FindWindow(NULL,(TEXT("Counter-Strike Source")));
  119.     if(!hWnd)
  120.     {
  121.             cout << "Game not found.";
  122.             cin.get();
  123.             return false;
  124.     }
  125.     else
  126.     {
  127.             GetWindowThreadProcessId(hWnd,&pid);
  128.             phandle = OpenProcess(PROCESS_VM_READ,0,pid);
  129.             if(!phandle)
  130.             {
  131.                     cout << "Could not get handle to window.";
  132.                     cin.get();
  133.                     return false;
  134.             }
  135.             else
  136.             {
  137.                     Clientdll = GetModuleAddress("client.dll", pid);
  138.                     GameOverlayRendererDLL = GetModuleAddress("gameoverlayrenderer.dll", pid);
  139.                     VGUIMatSurfaceDLL = GetModuleAddress("vguimatsurface.dll", pid);
  140.                     return true;
  141.             }
  142.             return false;
  143.     }
  144. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement