codesafety_x11repo

Untitled

Apr 26th, 2020
1,404
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.70 KB | None | 0 0
  1. DWORD getModuleBaseAddress(DWORD pid, const char* name)
  2. {
  3.    HANDLE snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, pid);
  4.    MODULEENTRY32 mEntry;
  5.    mEntry.dwSize = sizeof(MODULEENTRY32);
  6.    do
  7.    {
  8.        if (!strcmp(mEntry.szModule, name))
  9.        {
  10.            CloseHandle(snapshot);
  11.            return (DWORD)mEntry.modBaseAddr;
  12.        }
  13.    } while (Module32Next(snapshot, &mEntry));
  14. }
  15.  
  16. template <typename T>
  17. T readMem(DWORD address)
  18. {
  19.    T buffer;
  20.    ReadProcessMemory(process, (LPVOID)address, &buffer, sizeof(buffer), 0);
  21.    return buffer;
  22. }
  23.  
  24. template <typename T>
  25. void writeMem(DWORD address, T value)
  26. {
  27.    WriteProcessMemory(process, (LPVOID)address, &value, sizeof(value), 0);
  28. }
Advertisement
Add Comment
Please, Sign In to add comment