赞
踩
#include "stdafx.h"
#include <windows.h>
#include<stdio.h>
int ***p = (int ***)0x007794F8;
unsigned char *Pause = (unsigned char *)0x00472B50; //指向暂停函数代码头部,内存属性不可写
HANDLE hProcess;
void ModifyCode()
{
DWORD dwOldProtect;
VirtualProtectEx(hProcess, (void *)0x00472B50, 3, PAGE_EXECUTE_READWRITE, &dwOldProtect);
char code[] = "\xC2\x04\x00";
WriteProcessMemory(hProcess, Pause, &code, 3, NULL);
}
int *P3(int ***p, int offset2, int offset3, int value)
{
int tempValue;
ReadProcessMemory(hProcess, p, &tempValue, 4, NULL);//XX
int *lp2 = (int *)(tempValue + offset2);
ReadProcessMemory(hProcess, lp2, &tempValue, 4, NULL);//XX
lp2 = (int *)(tempValue + offset3);
if (value != -1)
{
WriteProcessMemory(hProcess, lp2, &value, 4, NULL);
}
return lp2;
//return (int *)(*(int *)(int(*p) + offset2) + offset3);
}
int *P4(int ***p, int offset2, int offset3, int offset4, int value)
{
i
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。