Uma ajudinha, please
Certo, já faz uma semana que eu tô estudando C++ e resolvi fazer uma dll simplezinha aqui(só pra ver se eu aprendi algo). Pelo jeito a estrutura tá legal(compila certinho), mas o Xtrap pega e alguns segundos depois de aparecer a tela de login, fecha o game. Aqui a base que eu tô usando(do @Swiftdude, antigassa):
Aminha dúvida é: dá pra 'salvar' essa base ou terei que fazer uma do zero? Já tentei HideModule e umas outras coisinhas, mas sempre dá na mesma(às vezes eu consigo logar, mas logo em seguida dá erro do Xtrap). Alguém pode me ajudar?(lembrando que eu não quero tudo de mão beijada, preciso apenas de um pequeno auxílio).
Code:
#include<windows.h>
#define WeaponMgr 0xCFC99C
#define NoReload 0xC38
DWORD WINAPI Inicio(LPVOID)
{
bool reload = true; // Make it true; if you want it to be auto on
while(1)
{
DWORD CShell = (DWORD)GetModuleHandleA("CShell.dll");
DWORD pWeaponMgr = *(DWORD*)(CShell + WeaponMgr);
if(reload)
{
if (pWeaponMgr)
{
for(int i=0; i<445; i++)
{
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i))) != NULL)
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i))) + NoReload) = 100;
}
}
}
Sleep(100);
}
}
bool Ready2Hook()
{
if(GetModuleHandleA("CShell.dll") != NULL
&& GetModuleHandleA("ClientFx.fxd") != NULL)
return 1;
return 0;
}
DWORD WINAPI PreInicio(LPVOID)
{
CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)Inicio, NULL, NULL, NULL);
return 1;
}
DWORD WINAPI Wait(LPVOID)
{
while(!Ready2Hook()) Sleep(300);
CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)PreInicio, NULL, NULL, NULL);
return 0;
}
BOOL WINAPI DllMain ( HMODULE hDll, DWORD dwReason, LPVOID lpReserved )
{
DisableThreadLibraryCalls(hDll);
if ( dwReason == DLL_PROCESS_ATTACH )
{
DisableThreadLibraryCalls(hDll);
MessageBoxA(0, "Message","Injected", 0);
CreateThread(0,0,(LPTHREAD_START_ROUTINE)Wait,0,0,0);
}
return 1;
}





