Code:
v9 = &unk_10015658;
v8 = 7403897;
v2 = (int)GetCurrentProcess();
v3 = sub_10011127(&v8 == &v8, v2);
v4 = WriteProcessMemory((HANDLE)v3, (LPVOID)v8, v9, v10, v11);
sub_10011127(&v12 == &v12, v4);
v11 = 0;
v10 = 6;
v9 = &unk_1001565C;
v8 = 7754746;
v5 = (int)GetCurrentProcess();
v6 = sub_10011127(&v8 == &v8, v5);
v7 = WriteProcessMemory((HANDLE)v6, (LPVOID)v8, v9, v10, v11);
sub_10011127(&v12 == &v12, v7);
return sub_10011127(1, 0);
Just wanna point out, you didn't need to use WriteProcessMemory as it's a DLL and you can directly edit the memory.
Code:
byte x = 0x6A;
WriteProcessMemory((HANDLE)GetCurrentProcess(), (LPVOID)0x70F979, &x, 2, 0);
byte x[] = { 0xB8, 0x44, 0xEC, 0x3B, 0x03, 0x90 };
WriteProcessMemory((HANDLE)GetCurrentProcess(), (LPVOID)0x7653FA, &x, 6, 0);
You could've done:
Code:
*( BYTE* )0x70F979 = 0x6A;
byte x[] = { 0xB8, 0x44, 0xEC, 0x3B, 0x03, 0x90 };
for( int i=0; i<6; i++) *( BYTE* )( 0x7653FA + i ) = x[ i ];
Shorter + Faster code