Oi, estou usando o FindPattern para tentar fazer um logger...
Ele retorna o endereço do wall correto, mas para o BasicPlayerInfo ele retorna
um Address diferente toda vez.
Alguma sugestão para como eu posso fazer isso funcionar?
Code:
BOOL bCompare(const BYTE* pData, const BYTE* bMask, const char* szMask)
{
for(;*szMask;++szMask,++pData,++bMask)
{
if(*szMask == 'x' && *pData != *bMask)
return 0;
}
return (*szMask)==NULL;
}
DWORD FindPattern(DWORD dwAddress,DWORD dwLen,BYTE *bMask,char * szMask)
{
for(DWORD i=0; i < dwLen; i++)
if( bCompare( (BYTE*)( dwAddress+i ),bMask,szMask) )
return (DWORD)(dwAddress+i);
return 0;
}
BASIC = FindPattern((DWORD)CShell, 0xFFFFFF,(PBYTE)"\x8B\x0D\xD8\x52\xF6\x10\x83\xC4\x04\x69\xC0\xA8\x00\x00\x00\xD9\x9C\x08\x88\x00\x00\x00\x8B\x4C\x24\x30\x3B\xCB", "xx????xxxxx????xxx????xxx?xx");