![]() |
|
|
|
#1
|
|||
|
|||
|
Quote:
I do agree that memory addresses change which wouldnt work properly. However you dont need to use memory addresses. Code:
ReadProcessMemory(procInfo.hProcess, (LPVOID)0x00409605, buffer, 12, &nSize);
if ((buffer[0] == 0xF6) && (buffer[1] == 0xC1))
{
ReadProcessMemory(procInfo.hProcess, 0x409615, buffer2, 12, &nSize);
if ((buffer2[0] == 0x74) && (buffer2[1] == 0x0C))
{
buffer2[0] = 0x90;
buffer2[1] = 0x90;
//buffer2[2] = 0x01;
//buffer2[3] = 0xEB;
//buffer2[4] = 0x0B;
//buffer2[5] = 0x90;
//buffer2[6] = 0x90;
//buffer2[7] = 0x50;
//Sleep(570);
printf("Address FOUND and patched!\n");
WriteProcessMemory(procInfo.hProcess, ADDRESS2, buffer2, 12, &nSize);
}
If you don't like the way i did it, then make it better and post it here so that people can benefit from your inputs. I agree on that you should dynamically set the bytes. I do two ReadProcessMemory to make sure I'm at the correct place. It's just something slapped together fast, and it works which is the most important thing for me. I'm not a good coder so, I do thank you for your constructive feedback and i'm sorry if it doesnt appeal to your coding ideology Please do your thing and post a better one, im sure both me and the community would be pleased. Have a good day
Last edited by 0x22; 10-20-2014 at 00:26. |
| The Following User Gave Reputation+1 to 0x22 For This Useful Post: | ||
mr.exodia (10-20-2014) | ||
| The Following User Says Thank You to 0x22 For This Useful Post: | ||
niculaita (08-30-2016) | ||
![]() |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| [HELP] How to write a simple Loader in ASM on MSDOS | stoney81 | General Discussion | 5 | 12-20-2024 15:55 |
| Simple Task [make loader for UPX target]... | diablo2oo2 | General Discussion | 1 | 12-30-2004 07:03 |