Originally Posted by
pakistanihaider
Pointer was i think static cuz when i closed and restarted game the pointer was working even the address was changed. i mean when i put value it changed my name in game.
1. Start CE and find your name -> pointerscan -> get a million results
2. Restart the game -> find new address -> check the previous pointerscan for results to your address -> get 100 results
3. Restart the game -> find new address -> check the previous pointerscan for results to your address -> get 10 results
4. Restart the game -> find new address -> check the previous pointerscan for results to your address -> get 2 results
And there you have a static pointer which can be used.
Then:
Get the base memory address for MW3 (the "iw5mp.exe" part).
Read the integer value stored at the address of the pointer.
Take the value and add the offset.
Use the new value as an address and write something to it.
Profit.
Maybe it's easier in code..
Code:
#include <windows.h>
int main()
{
DWORD pointer_add = 0x18C21;
DWORD offset = 0xC;
DWORD address = NULL;
char meep[] = "I'm a cake";
BYTE *Cake = NULL;
Cake = Get_base("IW5"); // IW5mp.exe, base from windowclass
address = (DWORD)(Cake + pointer_add + offset);
Set_Memory("IW5", address, meep); // I'll just have the function fill in the handles by windowclass because I'm lazy..
/*
WriteProcessMemory(
__in HANDLE hProcess,
__in LPVOID lpBaseAddress,
__in_bcount(nSize) LPCVOID lpBuffer,
__in SIZE_T nSize,
__out_opt SIZE_T * lpNumberOfBytesWritten
)
*/
return 0x1C3;
}
Hmm.. nope..