ya_makaron

Untitled

Feb 4th, 2019
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.03 KB | None | 0 0
  1. #include <Windows.h>
  2. #include <process.h>
  3.  
  4. DWORD samp_addr;
  5. DWORD *input;
  6.  
  7.  
  8. void Say(char *msg)
  9. {
  10.     DWORD stSampPointer = (DWORD)GetModuleHandleA("samp.dll") + 0x21A0F8;
  11.     DWORD stSampPoolsAddr = *(DWORD*)(*(DWORD*)stSampPointer + 0x3CD);
  12.     DWORD stPlayerPool = *(DWORD*)(stSampPoolsAddr + 0x18);
  13.     DWORD LocalPlayerPointer = *(DWORD*)(stPlayerPool + 0x22);
  14.  
  15.  
  16.     if (msg[0] == '/') ((void(__thiscall *) (void *_this, char *message)) (samp_addr + 0x65C60))(input, msg);
  17.     else ((void(__thiscall *) (void *_this, char *message)) (samp_addr + 0x57F0)) ((void*)LocalPlayerPointer, msg);
  18. }
  19.  
  20. void __cdecl Init(void*)
  21. {
  22.     while (true)
  23.     {
  24.         Sleep(100);
  25.  
  26.         samp_addr = (DWORD)GetModuleHandleA("samp.dll");
  27.         if (samp_addr == 0)
  28.             continue;
  29.  
  30.         input = (DWORD*)(samp_addr + 0x21A0E8);
  31.  
  32.         if (input == nullptr)
  33.             continue;
  34.  
  35.         Say("test");
  36.  
  37.         break;
  38.     }
  39. }
  40.  
  41.  
  42. BOOL APIENTRY DllMain(HMODULE hModule, DWORD ReasonForCall, LPVOID lpReserved)
  43. {
  44.     if (ReasonForCall == DLL_PROCESS_ATTACH)
  45.         _beginthread(Init, 0, nullptr);
  46.  
  47.     return TRUE;
  48. }
Advertisement
Add Comment
Please, Sign In to add comment