From f7c984cd5852972fa5e64d386a94e0a6b6e70bb4 Mon Sep 17 00:00:00 2001 From: shelru Date: Sat, 24 Sep 2016 16:30:52 +0300 Subject: [PATCH] Add files via upload --- Release/MiniBase/client.cpp | 263 ++++++++++++++++++ Release/MiniBase/offset.cpp | 380 +++++++++++++++++++++++++++ Release/ЭкстраМиррор.mix | Bin 238592 -> 239104 bytes 3 files changed, 643 insertions(+) create mode 100644 Release/MiniBase/client.cpp create mode 100644 Release/MiniBase/offset.cpp diff --git a/Release/MiniBase/client.cpp b/Release/MiniBase/client.cpp new file mode 100644 index 0000000..674c617 --- /dev/null +++ b/Release/MiniBase/client.cpp @@ -0,0 +1,263 @@ +#include "client.h" +#include +#include +#include +#include +#include // std::cout +#include // std::copy +#include "minIni.h" +#include + +#pragma warning(disable:4996) + +extern TCHAR g_settingsFileName[MAX_PATH]; +bool FirstFrame = false; +pfnUserMsgHook pMOTD; +GameInfo_t BuildInfo; +cvar_t *random; +map g_modelsHashMap; +cvar_t *logsfiles; +cvar_t *events_block; + +cvar_t *ex_thud; +cvar_t *motd_block; +cvar_t *type; +void HookEngineMessages(){ + pEngineMsgBase = (PEngineMsg)offset.FindSVCMessages(); + pSVC_StuffText = HookEngineMsg("svc_stufftext", SVC_StuffText); + pSVC_SendCvarValue = HookEngineMsg("svc_sendcvarvalue", SVC_SendCvarValue); + pSVC_SendCvarValue2 = HookEngineMsg("svc_sendcvarvalue2", SVC_SendCvarValue2); + pSVC_Director = HookEngineMsg("svc_director", SVC_Director); +// pSVC_Resourcelist = HookEngineMsg("svc_resourcelist", SVC_Resourcelist); +} + +void ConsolePrintColor(BYTE R, BYTE G, BYTE B, char* string){ + TColor24 DefaultColor;PColor24 Ptr;Ptr = Console_TextColor;DefaultColor = *Ptr;Ptr->R = R;Ptr->G = G;Ptr->B = B;g_Engine.Con_Printf("%s", string);*Ptr = DefaultColor; +} + +void models(){ + for (DWORD i = 0; i < 32; i++){ + player_info_s* player = g_pStudio->PlayerInfo(i); + if (player && (lstrlenA(player->name)>1) && player->model){ + char buffer[128]; + sprintf_s(buffer, "NAME -> [ %s ] | MODEL -> [ %s ]\n", player->name, player->model); + ConsolePrintColor(255, 255, 15, buffer); + } + } +} +void Credits(){ + ConsolePrintColor(255, 255, 255, "-- Thank's to");ConsolePrintColor(0, 255, 0, " [2010] Team\n");ConsolePrintColor(255, 255, 255, "-- Thank's to"); + ConsolePrintColor(0, 255, 0, " madotsuki-team < *\n");ConsolePrintColor(255, 255, 255, "-- Thank's to ");ConsolePrintColor(0, 255, 0, "or_75\n"); +} +int g_blockedCmdCount, g_serverCmdCount,g_anticheckfiles; +char *g_blockedCmds[1024], *g_serverCmds[2048], *g_anticheckfiles2[2048]; + +struct models_replace_s{char name[32];char repl[32];}; +vector models_list; +int Callback(const char *section, const char *key, const char *value, const void *userdata){ + if (lstrcmpA(section, "Models") == 0){ + models_replace_s model_d;lstrcpyA(model_d.name, key);lstrcpyA(model_d.repl, value);models_list.push_back(model_d); + } + return 1; +} +void Inject(){LoadLibraryA(g_Engine.Cmd_Argv(1)); } +int g_blockedCvarCount; +char *g_blockedCvars[512]; + +void Reload(){ + models_list.clear(); + ini_browse(Callback,NULL,g_settingsFileName); + memset(g_blockedCmds,0,sizeof(g_blockedCmds));memset(g_blockedCvars, 0, sizeof(g_blockedCvars)); + memset(g_serverCmds, 0, sizeof(g_serverCmds)); memset(g_anticheckfiles2, 0, sizeof(g_anticheckfiles2)); + g_blockedCvarCount = 0; g_blockedCmdCount = 0; g_serverCmdCount = 0; g_anticheckfiles = 0; + static TCHAR sKeyNames[4096*3]; + + GetPrivateProfileSection(TEXT("ADetect"), sKeyNames, ARRAYSIZE(sKeyNames), g_settingsFileName); + char *psKeyName4 = sKeyNames; + while (psKeyName4[0] != '\0') { g_anticheckfiles2[g_anticheckfiles++] = strdup(psKeyName4); psKeyName4 += strlen(psKeyName4) + 1; } + + GetPrivateProfileSection(TEXT("Commands"),sKeyNames,ARRAYSIZE(sKeyNames),g_settingsFileName); + char *psKeyName = sKeyNames; + while (psKeyName[0]!='\0'){g_blockedCmds[g_blockedCmdCount++]=strdup(psKeyName);psKeyName+=strlen(psKeyName)+1;} + + GetPrivateProfileSection(TEXT("Send Commands"), sKeyNames, ARRAYSIZE(sKeyNames), g_settingsFileName); + char *psKeyName3 = sKeyNames; + while (psKeyName3[0] != '\0') { g_serverCmds[g_serverCmdCount++] = strdup(psKeyName3); psKeyName3 += strlen(psKeyName3) + 1; } + + GetPrivateProfileSection(TEXT("Blocked cvars"),sKeyNames,ARRAYSIZE(sKeyNames),g_settingsFileName); + char *psKeyName2=sKeyNames; + while (psKeyName2[0]!='\0'){g_blockedCvars[g_blockedCvarCount++]=strdup(psKeyName2);psKeyName2+=strlen(psKeyName2)+1;} + TCHAR value[16];char cvarname[32]; + GetPrivateProfileString(TEXT("Settings"), TEXT("sid_random"), TEXT("0"), value, ARRAYSIZE(value), g_settingsFileName); + sprintf(cvarname, "sid_random %s", value);g_Engine.pfnClientCmd(cvarname); memset(value, 0, sizeof(value)); memset(cvarname, 0, sizeof(cvarname)); + GetPrivateProfileString(TEXT("Settings"), TEXT("cust_hud"), TEXT("0"), value, ARRAYSIZE(value), g_settingsFileName); + sprintf(cvarname, "cust_hud %s", value); g_Engine.pfnClientCmd(cvarname);memset(value, 0, sizeof(value)); memset(cvarname, 0, sizeof(cvarname)); + GetPrivateProfileString(TEXT("Settings"), TEXT("logs"), TEXT("0"), value, ARRAYSIZE(value), g_settingsFileName); + sprintf(cvarname, "logs %s", value); g_Engine.pfnClientCmd(cvarname);memset(value, 0, sizeof(value)); memset(cvarname, 0, sizeof(cvarname)); + GetPrivateProfileString(TEXT("Settings"), TEXT("motd_block"), TEXT("0"), value, ARRAYSIZE(value), g_settingsFileName); + sprintf(cvarname, "motd_block %s", value); g_Engine.pfnClientCmd(cvarname);memset(value, 0, sizeof(value)); memset(cvarname, 0, sizeof(cvarname)); + GetPrivateProfileString(TEXT("Settings"), TEXT("type"), TEXT("0"), value, ARRAYSIZE(value), g_settingsFileName); + sprintf(cvarname, "type %s", value); g_Engine.pfnClientCmd(cvarname); memset(value, 0, sizeof(value)); memset(cvarname, 0, sizeof(cvarname)); + GetPrivateProfileString(TEXT("Settings"), TEXT("events_block"), TEXT("0"), value, ARRAYSIZE(value), g_settingsFileName); + sprintf(cvarname, "events_block %s", value); g_Engine.pfnClientCmd(cvarname); memset(value, 0, sizeof(value)); memset(cvarname, 0, sizeof(cvarname)); + +} +void InitHack(){ + static TCHAR sKeyNames[4096 * 3]; + GetPrivateProfileSection(TEXT("Commands"), sKeyNames, ARRAYSIZE(sKeyNames), g_settingsFileName); + char *psKeyName = sKeyNames; + g_blockedCmdCount = 0; + while (psKeyName[0] != '\0') { + g_blockedCmds[g_blockedCmdCount++] = strdup(psKeyName); + psKeyName += strlen(psKeyName) + 1; + } + + GetPrivateProfileSection(TEXT("ADetect"), sKeyNames, ARRAYSIZE(sKeyNames), g_settingsFileName); + psKeyName = sKeyNames; + g_anticheckfiles = 0; + while (psKeyName[0] != '\0') { + g_anticheckfiles2[g_anticheckfiles++] = strdup(psKeyName); + psKeyName += strlen(psKeyName) + 1; + } + + GetPrivateProfileSection(TEXT("Send Commands"), sKeyNames, ARRAYSIZE(sKeyNames), g_settingsFileName); + psKeyName = sKeyNames; + g_serverCmdCount = 0; + while (psKeyName[0] != '\0') { + g_serverCmds[g_serverCmdCount++] = strdup(psKeyName); + psKeyName += strlen(psKeyName) + 1; + } + + + GetPrivateProfileSection(TEXT("AutoInject"), sKeyNames, ARRAYSIZE(sKeyNames), g_settingsFileName); + psKeyName = sKeyNames; + while (psKeyName[0] != '\0') { + LoadLibraryA(psKeyName); + psKeyName += strlen(psKeyName) + 1; + } + GetPrivateProfileSection(TEXT("Custom Commands"), sKeyNames, ARRAYSIZE(sKeyNames), g_settingsFileName); + psKeyName = sKeyNames; + while (psKeyName[0] != '\0') { + g_pEngine->pfnAddCommand(strdup(psKeyName), DRC_CMD_NONE); + psKeyName += strlen(psKeyName) + 1; + } + ini_browse(Callback, NULL, g_settingsFileName); + GetPrivateProfileSection(TEXT("Blocked cvars"), sKeyNames, ARRAYSIZE(sKeyNames), g_settingsFileName); + char *psKeyName2 = sKeyNames; + g_blockedCvarCount = 0; + while (psKeyName2[0] != '\0') { + g_blockedCvars[g_blockedCvarCount++] = strdup(psKeyName2); + psKeyName2 += strlen(psKeyName2) + 1; + } + + if (!(g_Engine.Con_IsVisible() != 0))g_Engine.pfnClientCmd("toggleconsole"); + ConsolePrintColor(0, 255, 11, "-- Extra Mirror v1.8e\n"); + ConsolePrintColor(255, 255, 255, "-- Use 'credits' for more information\n"); + ConsolePrintColor(255, 255, 255, "-- Thank's to Realwar for title\n"); + ConsolePrintColor(255, 255, 255, "-- Thank's to FightMagister for functions\n"); + ConsolePrintColor(255, 255, 255, "-- Thank's to Spawner { Kiass }\n"); + g_pEngine->pfnAddCommand("credits", Credits); g_pEngine->pfnAddCommand("inject", Inject); g_pEngine->pfnAddCommand("modelsn", models); g_pEngine->pfnAddCommand("update", Reload);TCHAR value[16]; + GetPrivateProfileString(TEXT("Settings"), TEXT("sid_random"), TEXT("0"), value, ARRAYSIZE(value), g_settingsFileName); + random = g_pEngine->pfnRegisterVariable("sid_random", strdup(value), 0);memset(value, 0, sizeof(value)); + GetPrivateProfileString(TEXT("Settings"), TEXT("cust_hud"), TEXT("0"), value, ARRAYSIZE(value), g_settingsFileName); + ex_thud = g_pEngine->pfnRegisterVariable("cust_hud", value, 0);memset(value, 0, sizeof(value)); + GetPrivateProfileString(TEXT("Settings"), TEXT("logs"), TEXT("0"), value, ARRAYSIZE(value), g_settingsFileName); + logsfiles = g_pEngine->pfnRegisterVariable("logs", value, 0);memset(value, 0, sizeof(value)); + GetPrivateProfileString(TEXT("Settings"), TEXT("events_block"), TEXT("0"), value, ARRAYSIZE(value), g_settingsFileName); + events_block = g_pEngine->pfnRegisterVariable("events_block", value, 0); memset(value, 0, sizeof(value)); + GetPrivateProfileString(TEXT("Settings"), TEXT("motd_block"), TEXT("0"), value, ARRAYSIZE(value), g_settingsFileName); + motd_block = g_pEngine->pfnRegisterVariable("motd_block", value, 0);memset(value, 0, sizeof(value)); + GetPrivateProfileString(TEXT("Settings"), TEXT("type"), TEXT("0"), value, ARRAYSIZE(value), g_settingsFileName); + type = g_pEngine->pfnRegisterVariable("type", value, 0); memset(value, 0, sizeof(value)); + GetPrivateProfileString(TEXT("Settings"), TEXT("type"), TEXT("0"), value, ARRAYSIZE(value), g_settingsFileName); +} + +void HookEventMessages(){ + pEventMsgBase = (PEventMsg)offset.FindEventMsgBase(); + pEvent_ak47 = HookEventMsg("events/ak47.sc", Event_ak47); + pEvent_aug = HookEventMsg("events/aug.sc", Event_aug); + pEvent_awp = HookEventMsg("events/awp.sc", Event_awp); + pEvent_createexplo = HookEventMsg("events/createexplo.sc", Event_createexplo); + pEvent_deagle = HookEventMsg("events/deagle.sc", Event_deagle); + pEvent_elite_left = HookEventMsg("events/elite_left.sc", Event_elite_left); + pEvent_elite_right = HookEventMsg("events/elite_right.sc", Event_elite_right); + pEvent_famas = HookEventMsg("events/famas.sc", Event_famas); + pEvent_fiveseven = HookEventMsg("events/fiveseven.sc", Event_fiveseven); + pEvent_g3sg1 = HookEventMsg("events/g3sg1.sc", Event_g3sg1); + pEvent_galil = HookEventMsg("events/galil.sc", Event_galil); + pEvent_glock = HookEventMsg("events/glock18.sc", Event_glock); + pEvent_m3 = HookEventMsg("events/m3.sc", Event_m3); + pEvent_m4a1 = HookEventMsg("events/m4a1.sc", Event_m4a1); + pEvent_m249 = HookEventMsg("events/m249.sc", Event_m249); + pEvent_mac10 = HookEventMsg("events/mac10.sc", Event_mac10); + pEvent_mp5n = HookEventMsg("events/mp5n.sc", Event_mp5n); + pEvent_p90 = HookEventMsg("events/p90.sc", Event_p90); + pEvent_p228 = HookEventMsg("events/p228.sc", Event_p228); + pEvent_scout = HookEventMsg("events/scout.sc", Event_scout); + pEvent_sg550 = HookEventMsg("events/sg550.sc", Event_sg550); + pEvent_sg552 = HookEventMsg("events/sg552.sc", Event_sg552); + pEvent_tmp = HookEventMsg("events/tmp.sc", Event_tmp); + pEvent_ump45 = HookEventMsg("events/ump45.sc", Event_ump45); + pEvent_vehicle = HookEventMsg("events/vehicle.sc", Event_vehicle); + pEvent_xm1014 = HookEventMsg("events/xm1014.sc", Event_xm1014); +// pEvent_knife = HookEventMsg("events/knife.sc", Event_knife); +// pEvent_createsmoke = HookEventMsg("events/createsmoke.sc", Event_createsmoke); +} + + +//Shel be there;(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( +void HUD_Frame(double time){ + if (!FirstFrame){ + g_Screen.iSize = sizeof(SCREENINFO);offset.HLType = g_Studio.IsHardware() + 1;offset.ConsoleColorInitalize(); + offset.GetGameInfo(&BuildInfo);HookUserMessages(); HookEngineMessages();InitHack();FirstFrame = true; + HookEventMessages(); + } + g_Engine.pfnGetScreenInfo(&g_Screen); + g_Client.HUD_Frame(time); +} + +void CL_CreateMove(float frametime, struct usercmd_s *cmd, int active){ + for (DWORD i = 1; i < 32; i++){ + player_info_s* player = g_pStudio->PlayerInfo(i); + if (player && player->name && player->model){ + for (auto m : models_list){ + if (lstrcmpA(player->model, m.name) == 0){ + lstrcpyA(player->model, m.repl); + } + } + } + } + g_Client.CL_CreateMove(frametime, cmd,active); +} +int MOTD(const char *pszName, int iSize, void *pbuf); +int MOTD(const char *pszName, int iSize, void *pbuf){ + if (logsfiles->value > 0){ + BEGIN_READ(pbuf, iSize); + int konez = READ_BYTE(); + char* buff = READ_STRING(); + char str[1024];strncpy(str, buff, sizeof(str)); + str[sizeof(str) - 1] = 0; + ConsolePrintColor(255, 255, 155, str); + if (konez == 1)ConsolePrintColor(255, 255, 155, "\n"); + } + if (motd_block->value > 0)return 1; + + return pMOTD(pszName, iSize, pbuf); +} +void HookUserMessages(){ + pUserMsgBase=(PUserMsg)offset.FindUserMsgBase();pMOTD=HookUserMsg("MOTD",MOTD); +} +int pfnDrawUnicodeCharacter(int x, int y, short number, int r, int g, int b, unsigned long hfont) { + if (ex_thud->value>0)return 1;return g_Engine.pfnDrawUnicodeCharacter(x,y,number,r,g,b,hfont); +} +void SetRenderModel(struct model_s *model) +{ + g_Engine.Con_Printf("\tmodel: %s\n", model->name); + g_Studio.SetRenderModel(model); +} +void HookFunction(){ + g_pClient->CL_CreateMove = CL_CreateMove; + g_pClient->HUD_Frame = HUD_Frame; + g_pEngine->pfnDrawUnicodeCharacter = pfnDrawUnicodeCharacter; +// g_pStudio->SetRenderModel = SetRenderModel; +} diff --git a/Release/MiniBase/offset.cpp b/Release/MiniBase/offset.cpp new file mode 100644 index 0000000..47ce1c2 --- /dev/null +++ b/Release/MiniBase/offset.cpp @@ -0,0 +1,380 @@ +#include "offset.h" + +cOffset offset; + +void cOffset::GetRenderType() +{ + HwDll = (DWORD)GetModuleHandleA(HW_DLL); + SwDll = (DWORD)GetModuleHandleA(SW_DLL); + HlMod = (DWORD)GetModuleHandleA(NULL); +} + +bool cOffset::GetModuleInfo() +{ + GetRenderType(); + + if (HwDll) + HwBase = HwDll; + else if (SwDll) + HwBase = SwDll; + else + HwBase = HlMod; + + HwSize = GetModuleSize(HwBase); + HwEnd = HwBase + HwSize - 1; + + HlBase = HlMod; + HlSize = (DWORD)GetModuleSize(HlBase); + HlEnd = HlBase + HlSize - 1; + + ClBase = (DWORD)GetModuleHandleA(CLIENT_DLL); + + if (ClBase) + { + ClSize = GetModuleSize(ClBase); + ClEnd = ClBase + ClSize - 1; + } + else + { + ClBase = HwBase; + ClEnd = HwEnd; + ClSize = HwSize; + } + + VgBase = (DWORD)GetModuleHandleA(GAMEUI_DLL); + + if (VgBase) + { + VgSize = (DWORD)GetModuleSize(VgBase); + VgEnd = VgBase + VgSize - 1; + } + + return (HwBase && ClBase && HlBase && VgBase); +} + +void cOffset::Error(char* Msg) +{ + MessageBoxA(0, Msg, OFF_ERROR, MB_OK | MB_ICONERROR); +} + +DWORD cOffset::FindClientTable() +{ + BYTE ClientOffset[2] = { 0x10, 0x13 }; + + DWORD PatternAddress = FindPattern(OFF_CLIENT_PATTERN, HwBase, HwEnd, 0); + + if (PatternAddress) + { + for (byte i = 0; i < sizeof(ClientOffset); i++) + { + DWORD ClientTablePtr = *(PDWORD)(FindReference(HwBase, HwEnd, PatternAddress) + ClientOffset[i]); + + if (!FarProc((DWORD)ClientTablePtr, HwBase, HwEnd) && + !IsBadReadPtr((PVOID)ClientTablePtr, sizeof(cl_clientfunc_t))) + { + return ClientTablePtr; + } + } + } + + return 0; +} + +DWORD cOffset::FindEngineTable() +{ + DWORD PatternAddress = FindPattern(OFF_ENGINE_PATTERN, OFF_ENGINE_MASK, ClBase, ClEnd, 0x02); + + if (PatternAddress) + { + if (!FarProc((DWORD)PatternAddress, ClBase, ClEnd)) + { + return *(PDWORD)PatternAddress; + } + } + else + { + PatternAddress = FindPattern(OFF_ENGINE_PATTERN, OFF_ENGINE_MASK, HlBase, HlEnd, 0x02); + + if (PatternAddress) + { + if (!FarProc((DWORD)PatternAddress, HlBase, HlEnd)) + { + return *(PDWORD)PatternAddress; + } + } + } + + return 0; +} + +DWORD cOffset::FindStudioTable() +{ + DWORD StudioTablePtr = *(DWORD*)((DWORD)g_pClient->HUD_GetStudioModelInterface + 0x30); // old patch, dod + + if (FarProc((DWORD)StudioTablePtr, HwBase, HwEnd) && FarProc((DWORD)StudioTablePtr, HlBase, HlEnd) && + FarProc((DWORD)StudioTablePtr, ClBase, ClEnd)) + { + StudioTablePtr = *(DWORD*)((DWORD)g_pClient->HUD_GetStudioModelInterface + 0x1A); // new patch / steam + + if (FarProc((DWORD)StudioTablePtr, ClBase, ClEnd)) + return 0; + } + + return StudioTablePtr; +} + +DWORD cOffset::FindUserMsgBase() +{ + BYTE Pattern_UserMsg[9] = + { + 0x52, 0x50, 0xE8, 0xFF, 0xFF, 0xFF, 0xFF, 0x83, 0x00 + }; + + BYTE Pattern_UserMsg2[13] = + { + 0xFF, 0xFF, 0xFF, 0x0C, + 0x56, 0x8B, 0x35, 0xFF, 0xFF, 0xFF, 0xFF, 0x57, 0x00 + }; + + DWORD Address = (DWORD)g_Engine.pfnHookUserMsg; + DWORD UserMsgBase = Absolute(FindPattern((PCHAR)Pattern_UserMsg, OFF_MSG_USER_MASK1, Address, Address + 0x32, 3)); + + if (FarProc(UserMsgBase, HwBase, HwEnd)) + { + Error(OFF_USER_MSG_EROR1); + return 0; + } + + UserMsgBase = FindPattern((PCHAR)Pattern_UserMsg2, OFF_MSG_USER_MASK2, UserMsgBase, UserMsgBase + 0x32, 7); + + if (FarProc(UserMsgBase, HwBase, HwEnd)) + { + Error(OFF_USER_MSG_EROR2); + return 0; + } + + return **(PDWORD*)UserMsgBase; +} + +DWORD cOffset::FindGameConsole() +{ + DWORD PatternAddress = FindPattern(OFF_GAME_CONSOLE_P, VgBase, VgEnd, 0); + DWORD ReferenAddress = FindReference(VgBase, VgEnd, PatternAddress) + 0x21; + + if (FarProc(ReferenAddress, VgBase, VgEnd)) + { + Error(OFF_GAME_CONSOLE_R); + return 0; + } + + DWORD GameConsole = *(PDWORD)ReferenAddress; + + return GameConsole; +} + +DWORD cOffset::FindSVCMessages() +{ + DWORD EngineMsgBase = FindPattern(OFF_SVC_MSG_PATTERN, OFF_SVC_MSG_MASK, HwBase, HwEnd, 1); + + PEngineMsg pEngineMsgBase = (PEngineMsg)(*(PDWORD)EngineMsgBase - sizeof(DWORD)); + + if (pEngineMsgBase) + { + MSG_ReadByte = (HL_MSG_ReadByte)offset.Absolute(((DWORD)pEngineMsgBase[SVC_CDTRACK].pfn) + 1); + MSG_ReadShort = (HL_MSG_ReadShort)offset.Absolute(((DWORD)pEngineMsgBase[SVC_STOPSOUND].pfn) + 1); + MSG_ReadLong = (HL_MSG_ReadLong)offset.Absolute(((DWORD)pEngineMsgBase[SVC_VERSION].pfn) + 1); + MSG_ReadFloat = (HL_MSG_ReadFloat)offset.Absolute(((DWORD)pEngineMsgBase[SVC_TIMESCALE].pfn) + 1); + MSG_ReadString = (HL_MSG_ReadString)offset.Absolute(((DWORD)pEngineMsgBase[SVC_PRINT].pfn) + 1); + + DWORD CallMSG_ReadCoord = offset.Absolute((DWORD)(pEngineMsgBase[SVC_PARTICLE].pfn) + 1); + + if (*(PBYTE)(CallMSG_ReadCoord + 0x13) == 0xE8) // STEAM + MSG_ReadCoord = (HL_MSG_ReadCoord)offset.Absolute((CallMSG_ReadCoord + 0x14)); + else if (*(PBYTE)(CallMSG_ReadCoord + 0x15) == 0xE8) // OLD PATCH (SOFTWARE) + MSG_ReadCoord = (HL_MSG_ReadCoord)offset.Absolute((CallMSG_ReadCoord + 0x16)); + else if (*(PBYTE)(CallMSG_ReadCoord + 0x0E) == 0xE8) // OLD PATCH + MSG_ReadCoord = (HL_MSG_ReadCoord)offset.Absolute((CallMSG_ReadCoord + 0x0F)); + else if (*(PBYTE)(CallMSG_ReadCoord + 0x0B) == 0xE8) // OLD OLD PATCH + MSG_ReadCoord = (HL_MSG_ReadCoord)offset.Absolute((CallMSG_ReadCoord + 0x0C)); + else + offset.Error(OFF_MSG_READ_CORD); + + MSG_ReadCount = *(PINT*)((INT)(MSG_ReadByte)+1); + MSG_CurrentSize = *(PINT*)((INT)(MSG_ReadByte)+7); + MSG_BadRead = *(PINT*)((INT)(MSG_ReadByte)+20); + + DWORD SVC_SoundBase = (DWORD)pEngineMsgBase[SVC_SOUND].pfn; + + if (*(PBYTE)(SVC_SoundBase + 0x0E) == 0xE8) + { + MSG_Buffer = (sizebuf_t *)(*(PDWORD)(SVC_SoundBase + 0x0A)); + MSG_StartBitReading = (HL_MSG_StartBitReading)offset.Absolute(SVC_SoundBase + 0x0F); + MSG_ReadBits = (HL_MSG_ReadBits)offset.Absolute(SVC_SoundBase + 0x16); + } + else if (*(PBYTE)(SVC_SoundBase + 0x0C) == 0xE8) + { + MSG_Buffer = (sizebuf_t *)(*(PDWORD)(SVC_SoundBase + 0x08)); + MSG_StartBitReading = (HL_MSG_StartBitReading)offset.Absolute(SVC_SoundBase + 0x0D); + MSG_ReadBits = (HL_MSG_ReadBits)offset.Absolute(SVC_SoundBase + 0x14); + } + else + offset.Error(OFF_MSG_STR_READING); + + if (*(PBYTE)(SVC_SoundBase + 0xD6) == 0xE8) + { + MSG_EndBitReading = (HL_MSG_EndBitReading)offset.Absolute(SVC_SoundBase + 0xD7); + MSG_ReadBitVec3Coord = (HL_MSG_ReadBitVec3Coord)offset.Absolute(SVC_SoundBase + 0xAF); + } + else if (*(PBYTE)(SVC_SoundBase + 0xE2) == 0xE8) + { + MSG_EndBitReading = (HL_MSG_EndBitReading)offset.Absolute(SVC_SoundBase + 0xE3); + MSG_ReadBitVec3Coord = (HL_MSG_ReadBitVec3Coord)offset.Absolute(SVC_SoundBase + 0xBE); + } + else + offset.Error(OFF_MSG_END_READING); + } + else + offset.Error(OFF_ENGINE_MSG_BASE); + + return (DWORD)pEngineMsgBase; +} +#define equali !stricmp +DWORD cOffset::FindEventMsgBase() +{ + DWORD PatternAddress = FindPattern(OFF_EVENT_MSG_BASE, HwBase, HwEnd, 0); + DWORD ReferenAddress; + if (equali(BuildInfo.GameVersion,"4554")){ + ReferenAddress = FindReference(HwBase, HwEnd, PatternAddress) - 0x06; + } + else { ReferenAddress = FindReference(HwBase, HwEnd, PatternAddress) - 0x07; } + + if (FarProc(ReferenAddress, HwBase, HwEnd)) + { + Error(OFF_EVENT_MSG_ERROR); + return 0; + } + + return *(PDWORD)(*(PDWORD)ReferenAddress); +} +void cOffset::ConsoleColorInitalize() +{ + DWORD GameConsole = FindGameConsole(); + + if (GameConsole) + { + DWORD Panel = (*(PDWORD)(GameConsole + 8) - GameConsole); + + Console_TextColor = PColor24(Panel + GameConsole + 288 + sizeof(DWORD)); + + if (*(PDWORD)(DWORD(Console_TextColor) + 8) != 0) + { + Console_TextColor = PColor24(Panel + GameConsole + 288 + (sizeof(DWORD) * 2)); + } + } +} + +void cOffset::GetGameInfo(pGameInfo_s GameInfo) +{ + typedef int(*function)(); + pcmd_t cmd = CommandByName("version"); + DWORD Address = (DWORD)cmd->function; + + GameInfo->GameName = *(PCHAR*)(UINT(Address) + 1); + GameInfo->GameVersion = *(PCHAR*)(UINT(Address) + 6); + GameInfo->Protocol = *(PBYTE)(UINT(Address) + 11); + + Address = Absolute(UINT(Address) + 23); + + if (FarProc(Address, HwBase, HwEnd)) + Error(OFF_ERR_GAMEINFO); + + function GetBuild = (function)Address; + GameInfo->Build = GetBuild(); +} + +void cOffset::CopyClient() +{ + native_memcpy(&g_Client, g_pClient, sizeof(cl_clientfunc_t)); +} + +void cOffset::CopyEngine() +{ + native_memcpy(&g_Engine, g_pEngine, sizeof(cl_enginefunc_t)); +} + +void cOffset::CopyStudio() +{ + native_memcpy(&g_Studio, g_pStudio, sizeof(engine_studio_api_t)); +} + +DWORD cOffset::Absolute(DWORD Address) +{ + return Address + *(PDWORD)Address + 4; +} + +DWORD cOffset::FarProc(DWORD Address, DWORD LB, DWORD HB) +{ + return ((Address < LB) || (Address > HB)); +} + +DWORD cOffset::FindReference(DWORD start, DWORD end, DWORD Address) +{ + char szPattern[] = { 0x68, 0x00, 0x00, 0x00, 0x00, 0x00 }; + *(PDWORD)&szPattern[1] = Address; + return FindPattern(szPattern, start, end, 0); +} + +DWORD cOffset::FindPattern(PCHAR pattern, PCHAR mask, DWORD start, DWORD end, DWORD offset) +{ + int patternLength = native_strlen(pattern); + bool found = false; + + for (DWORD i = start; i < end - patternLength; i++) + { + found = true; + for (int idx = 0; idx < patternLength; idx++) + { + if (mask[idx] == 'x' && pattern[idx] != *(PCHAR)(i + idx)) + { + found = false; + break; + } + } + if (found) + { + return i + offset; + } + } + + return 0; +} + +DWORD cOffset::FindPattern(PCHAR pattern, DWORD start, DWORD end, DWORD offset) +{ + int patternLength = native_strlen(pattern); + bool found = false; + + for (DWORD i = start; i < end - patternLength; i++) + { + found = true; + for (int idx = 0; idx < patternLength; idx++) + { + if (pattern[idx] != *(PCHAR)(i + idx)) + { + found = false; + break; + } + } + if (found) + { + return i + offset; + } + } + + return 0; +} + +DWORD cOffset::GetModuleSize(DWORD Address) +{ + return PIMAGE_NT_HEADERS(Address + (DWORD)PIMAGE_DOS_HEADER(Address)->e_lfanew)->OptionalHeader.SizeOfImage; +} \ No newline at end of file diff --git a/Release/ЭкстраМиррор.mix b/Release/ЭкстраМиррор.mix index 2728e011a1f9e70da7f05a684a7f383904e382db..24f26eb61f36966878e31683c7d5800005c15a9b 100644 GIT binary patch delta 67323 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 delta 66570 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 Hy>R~kSxtN-