[INTERNAL]C++ How to Read/Write Process Memory Tutorial
Vložit
- čas přidán 11. 06. 2020
- This is a follow up on my first tutorial I made a week ago, I figured id make one more to end it off. This should be uploaded today, 3/12/20. at 3:20pm.
This is an add-on to the previous code, whats different is that the code functions to read/write process memory. Also includes functions to read the module you are targeting for.
Credits to GuidedHacking for the GetPROCID, GetModuleBaseAddress, and FindDMAAddy functions.
Github source code:
github.com/sFIsAnExpert/inter... - Jak na to + styl
is it working on x86?
Yes just set project to x86 and make sure the process is x86 before injecting
im reporting you to the it support in india
Please dont
lol its not internal its external
No it is internal code, I just wasnt using winapi for a dll project, I only wanted to point across the code I used for grabbing the main processe through a DLL injection.
@@TreckStrend u know how to use *reinterpret_cast(ModuleBase + 0x0027A6F0) = 123;
i want write 1 byte but i don't know how to do that without external ReadProcessMemory bullshit .
To use ReadProcessMemory i can use c# and this realy easy .
@@Japrajah I'm not familiar with C# but using internal code doesn't require you to call readprocessmemory since you already have a handle to the process by injecting the dll, I had used RPM calls in the video since I wasnt coding with winapi which is necessary for a dll compile. And what are you trying to say? Are you having trouble getting the Module Base Address? Maybe cast to a byte* instead of int*
@@TreckStrend yes im stupid
uintptr_t ModuleBase = reinterpret_cast(GetModuleHandle(TEXT("game.dll")));
uintptr_t RandomVoid = ModuleBase + 0x12345;
...
...
byte* ret = reinterpret_cast(cheat::RandomVoid);
*ret = 0xC3;
@@Japrajah why must you reinterpret cast for? Just cast the module base address from the get go. Ex. (BYTE*)ModuleBaseAddr+0x123, in C++ it will do the conversion from there and return a byte* no need for reinterpret