-
Автор темы
- #1
this just been chilling on my pc for a while some code is still psudo and idk if this works or not or if its full code
C++:
if (config->AntiAim.Exploits_lc_break.GetValue() && g_pLocalPlayer->m_vecVelocity().Length2D() > 0.1f && !wasAttacking && !send_packet) {
static void(__thiscall * clc_move_construct)(CCLCMsg_Move_t*);
if (!clc_move_construct) {
auto vtable = *(uint8_t***)(sig("engine.dll", "83 C6 01 C7 45 ? ? ? ? ?") + 6);
auto CreateCLCMoveMsg = vtable[13];
auto relative_call = CreateCLCMoveMsg + 0x20;
auto offset = *(uintptr_t*)(relative_call + 0x1);
clc_move_construct = (void(__thiscall*)(CCLCMsg_Move_t*))(relative_call + 5 + offset);
}
static void(__thiscall * clc_move_destruct)(CCLCMsg_Move_t*);
if (!clc_move_destruct) {
auto scan = sig("engine.dll", "FF 90 A0 00 00 00 8D 4D A8 E8 ? ? ? ? 5F 5E 5B 8B E5 5D C3");
auto relative_call = scan + 0x9;
auto offset = *(uintptr_t*)(relative_call + 0x1);
clc_move_destruct = (void(__thiscall*)(CCLCMsg_Move_t*))(relative_call + 5 + offset);
}
auto WriteUsercmd = [](bf_write* buf, CUserCmd* incmd, CUserCmd* outcmd) {
using WriteUsercmd_t = void(__fastcall*)(void*, CUserCmd*, CUserCmd*);
static WriteUsercmd_t WriteUsercmdF = (WriteUsercmd_t)sig("client.dll", ("55 8B EC 83 E4 F8 51 53 56 8B D9"));
__asm
{
mov ecx, buf
mov edx, incmd
push outcmd
call WriteUsercmdF
add esp, 4
}
};
auto ReadUsercmd = [](bf_read* buf, CUserCmd* incmd, CUserCmd* outcmd) {
static uintptr_t ReadUsercmd = (uintptr_t)sig("client.dll", ("55 8B EC 83 EC 08 53 8B 5D 08 8B C2"));
__asm
{
mov ecx, buf
mov edx, incmd
push outcmd
call ReadUsercmd
add esp, 4
}
};
if (clc_move_construct && clc_move_destruct && m_pClientState->m_iChockedCommands > 1) {
auto base_cmd = *cmd;
int last_command_number = base_cmd.command_number + 1;
int last_tick_count = base_cmd.tick_count + 100; // anything bigger than 9 + latency
uint8_t buffer[4000];
uint8_t message[0x100] = { 0 };
CCLCMsg_Move_t* CL_Move = (CCLCMsg_Move_t*)&message[0];
clc_move_construct(CL_Move);
CL_Move->m_DataIn.m_pDebugName = 0;
CL_Move->m_DataIn.m_pData = (const unsigned int*)15;
CL_Move->m_DataIn.m_pBufferEnd = 0;
CL_Move->m_DataOut.m_pData = (unsigned char*)&buffer[0];
CL_Move->m_DataOut.m_nDataBytes = 4000;
CL_Move->m_DataOut.m_nDataBits = 32000;
CL_Move->m_DataOut.m_iCurBit = 0;
CL_Move->m_DataOut.m_bOverflow = 0;
CL_Move->m_DataOut.m_pDebugName = nullptr;
*(uintptr_t*)&CL_Move->m_DataIn.m_bOverflow = 3 | 4;
auto v8 = m_pClientState->m_iChockedCommands;
auto v9 = v8 + m_pClientState->m_iLastOutgoingCommand + 1;
auto v10 = v8 + 1;
auto v36 = v8 + m_pClientState->m_iLastOutgoingCommand + 1;
if (v8 + 1 > 62)
v10 = 62;
auto v4 = true;
auto v11 = -1;
auto v35 = v10;
auto v12 = (v9 - v10 + 1);
auto v13 = 1;
auto v14 = v12;
auto v34 = v12;
auto result = v36;
if (v14 > v36)
goto LABEL_17;
auto v15 = v14;
do
{
v13 = v13 && (v4 = m_pClient->WriteUsercmdDeltaToBuffer(0, &CL_Move->m_DataOut, v11, v14, v14 >= v15) == 0, result = v36, !v4);
v11 = v14++;
} while (v14 <= result);
if (v13)
{
LABEL_17:
CUserCmd from = CUserCmd(), to = base_cmd;
to.command_number = last_command_number;
to.tick_count = last_tick_count;
for (int cmd_count = 0; cmd_count < m_pClientState->m_iChockedCommands - 1; cmd_count++)
{
WriteUsercmd(&CL_Move->m_DataOut, &to, &from);
from = to;
to.command_number += 1;
to.tick_count += 1;
last_command_number++;
last_tick_count++;
}
}
CL_Move->m_nNewCommands = m_pClientState->m_iChockedCommands - 1;
CL_Move->m_nBackupCommands = 0;
int v19 = (CL_Move->m_DataOut.m_iCurBit + 7) >> 3;
using assign = std::string&(__thiscall*)(int, const char*, size_t);
static auto assign_std_autistic_string = (assign)sig("engine.dll", "55 8B EC 53 8B 5D 08 56 8B F1 85 DB 74 57 8B 4E 14 83 F9 10 72 04 8B 06 EB 02");
assign_std_autistic_string(CL_Move->m_data, (const char*)CL_Move->m_DataOut.m_pData, v19);
CallVFunction< SendNetMsg >(m_pClientState->m_NetChannel, index::SendNetMsg)(g_ClientState->m_NetChannel, *CL_Move, false, false);
VCall< SendNetMsg_t >(m_pClientState->m_ptrNetChannel, 40)(m_pClientState->m_ptrNetChannel, *CL_Move, false, false);
VCall<int(__thiscall*)(INetChannel*, bf_write*)>(m_pClientState->m_ptrNetChannel, 46)(m_pClientState->m_ptrNetChannel, 0);
m_pClientState->m_NetChannel->SendDatagram(nullptr);
clc_move_destruct(CL_Move);
}
}