Code:
//bUTL9R ChatHook, credits to florian0 from cp-g, uc-forums
//=====================================================
// Includes
//=====================================================
#include "Manager.h"
void CallChat(char* Text);
//==================================================================
// Important Variables
//==================================================================
DWORD dwModuleBase, dwModuleSize, dwSendMessageAddress;
bool bAutoSpam = false;
void CreateConsole()
{
AllocConsole();
freopen( "CONOUT$", "wb", stdout );
}
void CheckHotkeys()
{
while (true)
{
Sleep(10);
if (GetAsyncKeyState(VK_NUMPAD1) &1)
{
if (bAutoSpam == false)
{
bAutoSpam = true;
}
else
{
bAutoSpam = false;
}
}
if (GetAsyncKeyState(VK_NUMPAD2) &1)
{
CallChat("/all ____________________________");
CallChat("/all __GGGGGG__________GGGGGG");
CallChat("/all GG_______________GG");
CallChat("/all GG____GGG_______GG_____GGG");
CallChat("/all GG_____GG________GG_____GG");
CallChat("/all _GGGGGG___________GGGGGG");
CallChat("/all ____________________________");
CallChat("/all well played guys!");
}
if (GetAsyncKeyState(VK_NUMPAD3) &1)
{
CallChat("/all I molest rubber chicken!");
}
if (GetAsyncKeyState(VK_NUMPAD4) &1)
{
CallChat("/all B1tch where you going?!");
}
if (GetAsyncKeyState(VK_NUMPAD5) &1)
{
CallChat("/all Not even close baby!");
}
if (GetAsyncKeyState(VK_NUMPAD6) &1)
{
CallChat("/all My favorite poker card? The ACE!");
}
if (GetAsyncKeyState(VK_NUMPAD7) &1)
{
CallChat("/all Nope, not on my watch!");
}
if (bAutoSpam == true)
{
Sleep(100);
CallChat("/all What is love?");
CallChat("/all Baby, don't hurt me");
CallChat("/all Don't hurt me no more");
CallChat("/all What is love?");
CallChat("/all Baby, don't hurt me");
CallChat("/all Don't hurt me no more");
}
}
}
//==================================================================
// CallChat
//Our CallChat function, wich calls the original CallChat function with our text parameter
//==================================================================
void CallChat(char* Text)
{
__asm
{
push Text
call dwSendMessageAddress
}
return;
}
//==================================================================
// InitializeChatHook
//==================================================================
void InitializeChatHook()
{
CreateConsole();
//Get module Base Address and module size
dwModuleBase = (DWORD)GetModuleHandle("League of Legends.exe");
//GetModuleSize()?!
MODULEINFO modinfo;
GetModuleInformation(GetCurrentProcess(), GetModuleHandle("League of Legends.exe"), &modinfo, sizeof(MODULEINFO));
dwModuleSize = modinfo.SizeOfImage;
printf("Modulebase: %x , ModuleSize: %x \n", dwModuleBase, dwModuleSize);
printf("Searching chat address!\n");
dwSendMessageAddress = FrameWork->FindPattern(dwModuleBase, dwModuleSize, (PBYTE)"\x55\x8B\xEC\x6A\xFF\x68\x00\x00\x00\x00\x64\xA1\x00\x00\x00\x00\x50\x83\xEC\x3C\xA1\x00\x00\x00\x00\x33\xC5\x89\x45\xEC\x56\x57\x50\x8D\x45\xF4\x64\xA3\x00\x00\x00\x00\x8B\x55\x08", "xxxxxx????xx????xxxxx????xxxxxxxxxxxxx????xxx");
if (dwSendMessageAddress != 0)
{
printf("Found chat address: %x\n", dwSendMessageAddress);
//MessageBox(NULL, "Found chat address. Ready to go!", "Attention!", MB_OK);
CheckHotkeys();
}
else
{
printf("Did not find chat address!\n");
//MessageBox(NULL, "Oh shit i cant find the chat address!", "Attention!", MB_OK);
return;
}
return;
}