Because I decided to not be an ass, I'll release the code against shotbots
Create a thread to antishotbot logger.Code:HHOOK MouseHook; LRESULT CALLBACK MouseHookProc(int nCode, WPARAM wParam, LPARAM lParam) { if (nCode == HC_ACTION) { if(wParam == WM_RBUTTONDOWN || wParam == WM_LBUTTONDOWN) { MSLLHOOKSTRUCT *info=(MSLLHOOKSTRUCT*)lParam; if((info->flags & LLMHF_INJECTED) == LLMHF_INJECTED) { ExitProcess(-1); } } } return CallNextHookEx(MouseHook,nCode,wParam,lParam); } void AntiShotbotLogger() { HINSTANCE hInstance = GetModuleHandle(NULL); MouseHook = SetWindowsHookEx( WH_MOUSE_LL, MouseHookProc, hInstance, NULL ); MSG message; while (GetMessage(&message,NULL,0,0)) { TranslateMessage( &message ); DispatchMessage( &message ); } UnhookWindowsHookEx(MouseHook); return; }
Thanks wizkid for pointing out the function I had to use.
Thanks google for information about WH_MOUSE_LL.
For the source users:
Create antishotbot.cpp:
Go to main.cpp in the gunz solution and add:Code:#include "StdAfx.h" HHOOK MouseHook; LRESULT CALLBACK MouseHookProc(int nCode, WPARAM wParam, LPARAM lParam) { if (nCode == HC_ACTION) { if(wParam == WM_RBUTTONDOWN || wParam == WM_LBUTTONDOWN) { MSLLHOOKSTRUCT *info=(MSLLHOOKSTRUCT*)lParam; if((info->flags & LLMHF_INJECTED) == LLMHF_INJECTED) { ExitProcess(-1); } } } return CallNextHookEx(MouseHook,nCode,wParam,lParam); } void AntiShotbotLogger() { HINSTANCE hInstance = GetModuleHandle(NULL); MouseHook = SetWindowsHookEx( WH_MOUSE_LL, MouseHookProc, hInstance, NULL ); MSG message; while (GetMessage(&message,NULL,0,0)) { TranslateMessage( &message ); DispatchMessage( &message ); } UnhookWindowsHookEx(MouseHook); return; }
Code://Don't put this inside a function, Do it like somewhere at the top (Like line 96 or so) void AntiShotbotLogger(); //Put this on line 197 under InitialLoading success CreateThread(0, 0, (LPTHREAD_START_ROUTINE)AntiShotbotLogger, 0, 0, 0);
For the DLL users:
Code:#include <windows.h> HHOOK MouseHook; LRESULT CALLBACK MouseHookProc(int nCode, WPARAM wParam, LPARAM lParam) { if (nCode == HC_ACTION) { if(wParam == WM_RBUTTONDOWN || wParam == WM_LBUTTONDOWN) { MSLLHOOKSTRUCT *info=(MSLLHOOKSTRUCT*)lParam; if((info->flags & LLMHF_INJECTED) == LLMHF_INJECTED) { ExitProcess(-1); } } } return CallNextHookEx(MouseHook,nCode,wParam,lParam); } void AntiShotbotLogger() { HINSTANCE hInstance = GetModuleHandle(NULL); MouseHook = SetWindowsHookEx( WH_MOUSE_LL, MouseHookProc, hInstance, NULL ); MSG message; while (GetMessage(&message,NULL,0,0)) { TranslateMessage( &message ); DispatchMessage( &message ); } UnhookWindowsHookEx(MouseHook); return; } extern "C" { __declspec(dllexport) BOOL __stdcall DllMain(HINSTANCE hInst,DWORD reason,LPVOID lpv) { if (reason == DLL_PROCESS_ATTACH) { CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)&AntiShotbotLogger,NULL,0,NULL); } return true; } }



LinkBack URL
About LinkBacks












