├── CESP.cpp
├── menu.cpp
├── CDraw.cpp
├── dt_recv2.h
├── valve_off.h
├── valve_on.h
├── dt_common2.h
├── .gitattributes
├── checksum_crc.cpp
├── checksum_crc.h
├── CSSBase.vcxproj.user
├── CESP.h
├── IMoveHelper.h
├── CDebugOverlay.h
├── CGameMovement.h
├── CGameEventManager.h
├── IGameEventListener2.h
├── Surface.h
├── IPanel.h
├── ClientClass.h
├── CWinsock.h
├── CGlobalVars.h
├── MD5.h
├── CNoSpread.h
├── IGameEventManager.h
├── xor.h
├── CEntityList.h
├── CPrediction.h
├── IGameEvent.h
├── CModelInfo.h
├── HLClient.h
├── ConVar.h
├── mouse.h
├── CDraw.h
├── client.h
├── netvars.h
├── DllMain.h
├── CSSBase.sln
├── CMath.h
├── CMath.cpp
├── Utils.cpp
├── CEngineClient.h
├── Utils.h
├── wchartypes.h
├── ReflectiveDLLInjection.h
├── CAimbot.h
├── CWinsock.cpp
├── CVARS.h
├── mouse.cpp
├── CGameEventManager.cpp
├── DllMain.cpp
├── Netvars.cpp
├── CVARS.cpp
├── sdk.h
├── ReflectiveLoader.h
├── CSSBase.vcxproj.filters
├── CValve.cpp
├── CInput.h
├── menu.h
├── CNoSpread.cpp
├── MD5.cpp
├── CTrace.h
├── CBaseEntity.h
├── Vector.h
├── CSSBase.vcxproj
├── CBaseCombatWeapon.h
├── Surface.cpp
└── ISurface.h
/CESP.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mr-nv/interwebz-csgo/HEAD/CESP.cpp
--------------------------------------------------------------------------------
/menu.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mr-nv/interwebz-csgo/HEAD/menu.cpp
--------------------------------------------------------------------------------
/CDraw.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mr-nv/interwebz-csgo/HEAD/CDraw.cpp
--------------------------------------------------------------------------------
/dt_recv2.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mr-nv/interwebz-csgo/HEAD/dt_recv2.h
--------------------------------------------------------------------------------
/valve_off.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mr-nv/interwebz-csgo/HEAD/valve_off.h
--------------------------------------------------------------------------------
/valve_on.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mr-nv/interwebz-csgo/HEAD/valve_on.h
--------------------------------------------------------------------------------
/dt_common2.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mr-nv/interwebz-csgo/HEAD/dt_common2.h
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
--------------------------------------------------------------------------------
/checksum_crc.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mr-nv/interwebz-csgo/HEAD/checksum_crc.cpp
--------------------------------------------------------------------------------
/checksum_crc.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mr-nv/interwebz-csgo/HEAD/checksum_crc.h
--------------------------------------------------------------------------------
/CSSBase.vcxproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/CESP.h:
--------------------------------------------------------------------------------
1 | class CESP
2 | {
3 | public:
4 | void DrawHeader( int x, int y, int w, int r, int g, int b, int HealthBarWidth );
5 | void DrawRadar( void );
6 | void DrawChickenESP( void );
7 | void draw( void );
8 | };
--------------------------------------------------------------------------------
/IMoveHelper.h:
--------------------------------------------------------------------------------
1 | namespace ValveSDK
2 | {
3 | class ImoveHelper
4 | {
5 | public:
6 | void SetHost(CBaseEntity *pPlayer)
7 | {
8 | typedef void(__thiscall* OriginalFn)(PVOID, CBaseEntity *pPlayer);
9 | getvfunc(this, 1)(this, pPlayer);
10 | }
11 | };
12 | }
--------------------------------------------------------------------------------
/CDebugOverlay.h:
--------------------------------------------------------------------------------
1 | namespace ValveSDK
2 | {
3 | class CDebugOverlay
4 | {
5 | public:
6 | int ScreenPosition(const Vector& vIn, Vector& vOut)
7 | {
8 | typedef int(__thiscall* OriginalFn)(PVOID, const Vector&, Vector&);
9 | return getvfunc(this, 13)(this, vIn, vOut);
10 | }
11 | };
12 | }
--------------------------------------------------------------------------------
/CGameMovement.h:
--------------------------------------------------------------------------------
1 | namespace ValveSDK
2 | {
3 | class CGameMovement
4 | {
5 | public:
6 | void ProcessMovement(CBaseEntity *pPlayer, PVOID moveData)
7 | {
8 | typedef void(__thiscall* OriginalFn)(PVOID, CBaseEntity *pPlayer, PVOID moveData);
9 | getvfunc(this, 1)(this, pPlayer, moveData);
10 | }
11 | };
12 | }
--------------------------------------------------------------------------------
/CGameEventManager.h:
--------------------------------------------------------------------------------
1 | #ifndef _CGAMEEVENTMANAGER_H_
2 | #define _CGAMEEVENTMANAGER_H_
3 |
4 | class cGameEventManager : public ValveSDK::IGameEventListener2
5 | {
6 | public:
7 | void FireGameEvent(ValveSDK::IGameEvent *event);
8 | void RegisterSelf();
9 |
10 | };
11 |
12 | extern cGameEventManager gGameEventManager;
13 |
14 |
15 | #endif
--------------------------------------------------------------------------------
/IGameEventListener2.h:
--------------------------------------------------------------------------------
1 | namespace ValveSDK
2 | {
3 | class IGameEventListener2
4 | {
5 | public:
6 | virtual ~IGameEventListener2(void) {};
7 |
8 | // FireEvent is called by EventManager if event just occured
9 | // KeyValue memory will be freed by manager if not needed anymore
10 | virtual void FireGameEvent(IGameEvent *event) = 0;
11 | };
12 |
13 | }
--------------------------------------------------------------------------------
/Surface.h:
--------------------------------------------------------------------------------
1 | extern void FullCham( ValveSDK::IMaterial *pMat, const ValveSDK::ModelRenderInfo_t &pInfo, int r, int g, int b, int r2, int g2, int b2, bool bDeadIgnorez = false);
2 | extern ValveSDK::IMaterial *CreateMaterial(BOOL bFullbright, BOOL bIgnorez);
3 | extern void GenerateRandomString(char *s, const int len);
4 | extern void ChamModel( float r, float g, float b, ValveSDK::IMaterial *pMat);
5 |
6 | extern bool bMenu;
7 | extern bool bGetMaterials;
--------------------------------------------------------------------------------
/IPanel.h:
--------------------------------------------------------------------------------
1 | namespace ValveSDK
2 | {
3 | class IPanel
4 | {
5 | public:
6 | unsigned int GetPanel(int type)
7 | {
8 | typedef unsigned int(__thiscall *tGetPanel)(void*, int type);
9 | return getvfunc(this, 1)(this, type);
10 | }
11 | const char *GetName(unsigned int vguiPanel)
12 | {
13 | typedef const char* (__thiscall* OriginalFn)(PVOID, unsigned int);
14 | return getvfunc(this, 36)(this, vguiPanel);
15 | }
16 | };
17 | }
--------------------------------------------------------------------------------
/ClientClass.h:
--------------------------------------------------------------------------------
1 | /*
2 | Clientclass rebuild
3 | 22.08.2014
4 | */
5 | namespace ValveSDK
6 | {
7 | class ClientClass
8 | {
9 | public:
10 | const char* GetName(void)
11 | {
12 | return *(char**)(this + 0x8);
13 | }
14 | RecvTable* GetTable()
15 | {
16 | return *(RecvTable**)(this + 0xC);
17 | }
18 | ClientClass* NextClass()
19 | {
20 | return *(ClientClass**)(this + 0x10);
21 | }
22 | int GetClassID(void)
23 | {
24 | return *(int*)(this + 0x14);
25 | }
26 | };
27 | }
--------------------------------------------------------------------------------
/CWinsock.h:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | class cWinsocky
4 | {
5 | public:
6 | cWinsocky ( VOID );
7 |
8 | VOID InitWinsock ( VOID );
9 | VOID Connect ( const char* pszServerUrl );
10 | VOID SendHttpGet ( const char* pszFileUrl, std::string &sDestBuffer );
11 |
12 | VOID Disconnect ( VOID );
13 | VOID CleanUp ( VOID );
14 | private:
15 | SOCKET m_ConnectedSocket;
16 | const char* m_pszConnectedUrl;
17 |
18 | };
19 |
20 | extern cWinsocky g_Winsock;
--------------------------------------------------------------------------------
/CGlobalVars.h:
--------------------------------------------------------------------------------
1 | namespace ValveSDK
2 | {
3 | class CGlobalVars
4 | {
5 | public:
6 | float realtime;
7 | int framecount;
8 | float absoluteframetime;
9 | float fNew;
10 | float curtime;
11 | float frametime;
12 | int maxclients;
13 | int tickcount;
14 | float interval_per_tick;
15 | float interpolation_amount;
16 | int simTicksThisFrame;
17 | int network_protocol;
18 | PVOID pSaveData;
19 | bool m_bClient;
20 | int nTimestampNetworkingBase;
21 | int nTimestampRandomizeWindow;
22 | };
23 | }
--------------------------------------------------------------------------------
/MD5.h:
--------------------------------------------------------------------------------
1 | #define MD5_DIGEST_LENGTH 16 // 16 bytes == 128 bit digest
2 |
3 | // MD5 Hash
4 | typedef struct
5 | {
6 | unsigned int buf[4];
7 | unsigned int bits[2];
8 | unsigned char in[64];
9 | } MD5Context_t;
10 |
11 | void MD5Init( MD5Context_t *context );
12 | void MD5Update( MD5Context_t *context, unsigned char const *buf, unsigned int len );
13 | void MD5Final( unsigned char digest[ MD5_DIGEST_LENGTH ], MD5Context_t *context );
14 | void MD5Transform(unsigned int buf[4], unsigned int const in[16]);
15 | unsigned int MD5_PseudoRandom(unsigned int nSeed);
16 |
--------------------------------------------------------------------------------
/CNoSpread.h:
--------------------------------------------------------------------------------
1 | class CNoSpread
2 | {
3 | public:
4 | void GetSpreadFix(ValveSDK::CBaseCombatWeapon *m_pWeapon, UINT seed, Vector& pflInAngles);
5 | void GetRollSpreadFix(ValveSDK::CBaseCombatWeapon *m_pWeapon, UINT seed, Vector& pflInAngles);
6 |
7 | void angleVectors(Vector angles, Vector &f, Vector &r, Vector &u);
8 | void angleVectors(Vector angles, Vector &f);
9 | void vectorAngles(Vector forward, Vector &angles);
10 | float AngleNormalize(float angle);
11 | void RandomSeed(int iSeed);
12 | float RandomFloat(float fMin, float fMax);
13 | };
14 | extern CNoSpread g_NoSpread;
--------------------------------------------------------------------------------
/IGameEventManager.h:
--------------------------------------------------------------------------------
1 | namespace ValveSDK
2 | {
3 | class IGameEventManager
4 | {
5 | public:
6 | bool AddListener(IGameEventListener2 *listener, const char *name, bool bServerSide)
7 | {
8 | typedef bool(__thiscall* OriginalFn)(PVOID, IGameEventListener2*, const char*, bool);
9 | return getvfunc(this, 3)(this, listener, name, bServerSide);
10 | }
11 |
12 | bool FireEventClientSide(IGameEvent *event)
13 | {
14 | typedef bool(__thiscall* OriginalFn)(PVOID, IGameEvent*);
15 | return getvfunc(this, 8)(this, event);
16 | }
17 | };
18 |
19 | }
--------------------------------------------------------------------------------
/xor.h:
--------------------------------------------------------------------------------
1 | template
2 | class XorStr
3 | {
4 | private:
5 | XorStr();
6 | public:
7 | char s[BUFLEN];
8 |
9 | XorStr(const char* xs);
10 | ~XorStr()
11 | {
12 | for(int i=0; i < BUFLEN; i++) s[i] = 0;
13 | }
14 | };
15 |
16 | template
17 | XorStr::XorStr(const char* xs)
18 | {
19 | int xvalue = XORSTART;
20 | int i = 0;
21 | for(; i < (BUFLEN - 1); i++)
22 | {
23 | s[i] = xs[i - XREFKILLER] ^ xvalue;
24 | xvalue += 1;
25 | xvalue %= 256;
26 | }
27 | s[BUFLEN-1] = (2 * 2 - 3) - 1;
28 | }
--------------------------------------------------------------------------------
/CEntityList.h:
--------------------------------------------------------------------------------
1 | namespace ValveSDK
2 | {
3 | class CEntityList
4 | {
5 | public:
6 | CBaseEntity* GetClientEntity(int entnum)
7 | {
8 | typedef CBaseEntity* (__thiscall* OriginalFn)(PVOID, int);
9 | return getvfunc(this, 3)(this, entnum);
10 | }
11 | CBaseEntity* GetClientEntityFromHandle(int hEnt)
12 | {
13 | typedef CBaseEntity* (__thiscall* OriginalFn)(PVOID, int);
14 | return getvfunc(this, 4)(this, hEnt);
15 | }
16 | int GetHighestEntityIndex(void)
17 | {
18 | typedef int(__thiscall* OriginalFn)(PVOID);
19 | return getvfunc(this, 6)(this);
20 | }
21 | };
22 | }
--------------------------------------------------------------------------------
/CPrediction.h:
--------------------------------------------------------------------------------
1 | namespace ValveSDK
2 | {
3 | class CPrediction
4 | {
5 | public:
6 | void SetupMove(CBaseEntity *player, ValveSDK::CInput::CUserCmd *ucmd, PVOID movehelper, PVOID moveData)
7 | {
8 | typedef void(__thiscall* OriginalFn)(PVOID, CBaseEntity*, ValveSDK::CInput::CUserCmd*, PVOID, PVOID);
9 | getvfunc(this, 20)(this, player, ucmd, movehelper, moveData);
10 | }
11 |
12 | void FinishMove(CBaseEntity *player, ValveSDK::CInput::CUserCmd *ucmd, PVOID moveData)
13 | {
14 | typedef void(__thiscall* OriginalFn)(PVOID, CBaseEntity*, ValveSDK::CInput::CUserCmd*, PVOID);
15 | getvfunc(this, 21)(this, player, ucmd, moveData);
16 | }
17 | };
18 | }
--------------------------------------------------------------------------------
/IGameEvent.h:
--------------------------------------------------------------------------------
1 | namespace ValveSDK
2 | {
3 | class IGameEvent
4 | {
5 | public:
6 | const char* GetName()
7 | {
8 | typedef const char* (__thiscall* OriginalFn)(PVOID);
9 | return getvfunc(this, 1)(this);
10 | }
11 |
12 | int GetInt(const char *keyName, int defaultValue)
13 | {
14 | typedef int(__thiscall* OriginalFn)(PVOID, const char *, int);
15 | return getvfunc(this, 6)(this, keyName, defaultValue);
16 | }
17 |
18 | const char *GetString(const char *keyName, const char *defaultValue)
19 | {
20 | typedef const char* (__thiscall* OriginalFn)(PVOID, const char *, const char*);
21 | return getvfunc(this, 8)(this, keyName, defaultValue);
22 | }
23 | };
24 | }
--------------------------------------------------------------------------------
/CModelInfo.h:
--------------------------------------------------------------------------------
1 | namespace ValveSDK
2 | {
3 | class CModelInfo
4 | {
5 | public:
6 | const char* GetModelName(const model_t* pModel)
7 | {
8 | typedef const char* (__thiscall* OriginalFn)(PVOID, const model_t*);
9 | return getvfunc(this, 3)(this, pModel);
10 | }
11 |
12 | studiohdr_t* GetStudiomodel(const model_t *pModel)
13 | {
14 | typedef studiohdr_t* (__thiscall* OriginalFn)(PVOID, const model_t*);
15 | return getvfunc< OriginalFn >(this, 32)(this, pModel);
16 | }
17 |
18 | void GetModelMaterials(const model_t *pModel, int count, IMaterial** ppMaterial)
19 | {
20 | typedef void (__thiscall* OriginalFn)(PVOID, const model_t*, int, IMaterial**);
21 | getvfunc< OriginalFn >(this, 19)(this, pModel, count, ppMaterial);
22 | }
23 | };
24 | }
--------------------------------------------------------------------------------
/HLClient.h:
--------------------------------------------------------------------------------
1 | /*
2 | HLClient rebuild
3 | 22.08.2014
4 | */
5 | namespace ValveSDK
6 | {
7 | class HLCLient
8 | {
9 | public:
10 | ClientClass* GetAllClasses(VOID)
11 | {
12 | typedef ClientClass* (__thiscall* OriginalFn)(PVOID);
13 | return getvfunc(this, 8)(this);
14 | }
15 |
16 | /*int GetScreenWidth(VOID)
17 | {
18 | typedef int (__thiscall* OriginalFn)(PVOID);
19 | return getvfunc(this, 56)(this);
20 | }
21 |
22 | int GetScreenHeight(VOID)
23 | {
24 | typedef int (__thiscall* OriginalFn)(PVOID);
25 | return getvfunc(this, 57)(this);
26 | }*/
27 |
28 | /*int IN_KeyEvent(int eventcode, ButtonCode_t keynum, const char *pszCurrentBinding)
29 | {
30 | typedef int(__thiscall* OriginalFn)(PVOID, int, ButtonCode_t, const char*);
31 | return getvfunc(this, 20)(this, eventcode, keynum, pszCurrentBinding);
32 | }*/
33 | };
34 | }
--------------------------------------------------------------------------------
/ConVar.h:
--------------------------------------------------------------------------------
1 | namespace ValveSDK
2 | {
3 | class ConVar
4 | {
5 | public:
6 | int GetInt()
7 | {
8 | return getvfunc( this, 13 )( this );
9 | }
10 |
11 | void SetValue(int iValue)
12 | {
13 | getvfunc( this, 16 )( this, iValue );
14 | }
15 | };
16 |
17 | class IAppSystem
18 | {
19 | public:
20 | // Here's where the app systems get to learn about each other
21 | virtual void func00() = 0;
22 | virtual void func01() = 0;
23 | virtual void func02() = 0;
24 | virtual void func03() = 0;
25 | virtual void func04() = 0;
26 | };
27 |
28 | class ICvar : public IAppSystem
29 | {
30 | public:
31 | virtual void funcy() = 0;
32 | virtual void funcy1() = 0;
33 | virtual void funcy2() = 0;
34 | virtual void funcy3() = 0;
35 | virtual void funcy4() = 0;
36 | virtual void funcy5() = 0;
37 | virtual void funcy6( ) = 0;
38 | virtual void funcy7( ) = 0;
39 | virtual void funcy8( ) = 0;
40 | virtual void funcy9( ) = 0;
41 | virtual ConVar *FindVar(const char *var_name) = 0;
42 | //virtual const ConVar *FindVar(const char *var_name) const = 0;
43 | };
44 | }
--------------------------------------------------------------------------------
/mouse.h:
--------------------------------------------------------------------------------
1 | #define MAX_DRAG_OBJECTS 3
2 |
3 | class cMouse
4 | {
5 | public:
6 |
7 | //called after menu drawn
8 | void DrawMouse();
9 |
10 | //called when menu on/whatever
11 | void Update();
12 |
13 | bool LeftClick(int x,int y,int w,int h);
14 | bool OneLeftClick(int x,int y,int w,int h);
15 | bool RightClick(int x,int y,int w,int h);
16 | bool OneRightClick(int x,int y,int w,int h);
17 | bool IsOver(int x,int y,int w,int h);
18 |
19 | void Drag(bool& bDrag, bool bCheck, bool bDragCheck,int& x, int& y, int& xdif, int& ydif);
20 |
21 | void GetMousePosition(int &posx, int &posy)
22 | {
23 | posx = mouse_x;
24 | posy = mouse_y;
25 | }
26 |
27 | bool HasMouseOneJustBeenReleased()
28 | {
29 | return mouse1released;
30 | }
31 |
32 | bool IsMouseTwoBeingHeld()
33 | {
34 | return mouse2pressed;
35 | }
36 |
37 | bool bReturn;
38 |
39 | bool bDragged[MAX_DRAG_OBJECTS];
40 | int iDiffX[MAX_DRAG_OBJECTS];
41 | int iDiffY[MAX_DRAG_OBJECTS];
42 |
43 | private:
44 | int mouse_x, mouse_y;
45 |
46 | bool mouse1pressed;
47 | bool mouse1released;
48 | bool mouse2pressed;
49 | bool mouse2released;
50 | };
51 |
52 | extern cMouse g_Mouse;
53 |
--------------------------------------------------------------------------------
/CDraw.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | class CDraw
4 | {
5 | public:
6 | VOID InitFonts();
7 | INT getWidht(unsigned long font, const char* input);
8 | std::wstring stringToWide(const std::string& text);
9 | VOID DrawString(unsigned long font,int x, int y, int r, int g, int b, const wchar_t *pszText);
10 | VOID DrawStringA(unsigned long font, bool center, int x, int y, int r, int g, int b, int a, const char *input, ...);
11 | VOID FillRGBA(int x, int y, int w, int h, int r, int g, int b, int a);
12 | VOID DrawHeader(INT x, INT y, INT w, INT r, INT g, INT b, INT HealthBarWidth);
13 | VOID DrawHealthBox(int x, int y, int r, int g, int b, int a, int CurHealth, int MaxHealth);
14 | VOID boxESP(int x, int y, int radius, int R, int G, int B);
15 | VOID drawCrosshair(int x, int y, int r, int g, int b);
16 | VOID DrawBox(int x, int y, int w, int h, int lw, int r, int g, int b, int a);
17 | VOID DrawBoxHealth(int x, int y, int w, int h, int lw, int r, int g, int b, int a, int targetId, int damageDealt, int animTimer, int index);
18 | VOID DrawOutlinedRect(int x0, int y0, int x1, int y1, int R, int G, int B);
19 |
20 | unsigned long m_ESPFont, m_WatermarkFont, m_MenuFont, m_ListItemFont;
21 | private:
22 | };
--------------------------------------------------------------------------------
/client.h:
--------------------------------------------------------------------------------
1 | void __fastcall hkdCreateMove(void* ecx, void* edx, int sequence_number, float input_sample_frametime, bool active);
2 | void __stdcall hkdRunCommand(CBaseEntity* pEntity, ValveSDK::CInput::CUserCmd* pUserCmd, void* moveHelper);
3 | void __fastcall hkdFrameStageNotify(void* ecx, void*, ClientFrameStage_t curStage);
4 | void __stdcall hkdPaintTraverse(unsigned vguiPanel, bool forceRepaint, bool allowForce);
5 | void __stdcall hkdDrawModelExecute(void* rendercontext, const ValveSDK::DrawModelState_t &state, const ValveSDK::ModelRenderInfo_t &pInfo, matrix3x4_t *pCustomBoneToWorld = NULL);
6 | ValveSDK::CInput::CUserCmd* __fastcall hkdGetUserCmd( void* ecx, void*, int slot, int sequence_number );
7 | int __stdcall hkdIN_KeyEvent(int eventcode,ValveSDK::ButtonCode_t keynum,const char *pszCurrentBinding);
8 | void __stdcall hkdFinishMove(CBaseEntity *player, ValveSDK::CInput::CUserCmd *ucmd, PVOID move);
9 | void __fastcall hkdLockCursor( void* ecx, void* );
10 |
11 | extern DWORD dwOriginCreateMove;
12 | extern Base::Utils::CVMTHookManager g_pClientVMT;
13 | extern Base::Utils::CVMTHookManager g_pPanelVMT;
14 | extern Base::Utils::CVMTHookManager g_pPredictionVMT;
15 | extern Base::Utils::CVMTHookManager g_pModelRenderVMT;
16 | extern Base::Utils::CVMTHookManager g_pInputVMT;
17 | extern Base::Utils::CVMTHookManager g_pSurfaceVMT;
--------------------------------------------------------------------------------
/netvars.h:
--------------------------------------------------------------------------------
1 | //Credits: Kiro
2 |
3 | typedef struct
4 | {
5 | char szTableName[256];
6 | char szPropName[256];
7 | RecvVarProxyFn SavedProxy;
8 | } Oldproxy_t;
9 |
10 | class CNetworkedVariableManager
11 | {
12 | public:
13 |
14 | ~CNetworkedVariableManager(void);
15 |
16 | // stores all tables, and all props inside those
17 | void Init();
18 |
19 | // calls GetProp wrapper to get the absolute offset of the prop
20 | int GetOffset(const char *tableName, const char *propName);
21 |
22 | // calls GetProp wrapper to get prop and sets the proxy of the prop
23 | bool HookProp(const char *tableName, const char *propName, RecvVarProxyFn function);
24 |
25 | private:
26 |
27 | // wrapper so we can use recursion without too much performance loss
28 | int GetProp(const char *tableName, const char *propName, RecvProp **prop = 0);
29 |
30 | // uses recursion to return a the relative offset to the given prop and sets the prop param
31 | int GetProp(RecvTable *recvTable, const char *propName, RecvProp **prop = 0);
32 |
33 | RecvTable *GetTable(const char *tableName);
34 |
35 | std::vector m_tables;
36 |
37 | std::vector m_savedproxy;
38 | };
39 |
40 | extern void YawEyeAngleProxy(const CRecvProxyData *pData, void *pStruct, void *pOut);
41 | extern void PitchEyeAngleProxy(const CRecvProxyData *pData, void *pStruct, void *pOut);
42 |
43 | extern CNetworkedVariableManager g_NetworkedVariableManager;
--------------------------------------------------------------------------------
/DllMain.h:
--------------------------------------------------------------------------------
1 | #define _CRT_SECURE_NO_WARNINGS
2 |
3 | #include
4 | #pragma comment(lib, "ws2_32.lib" )
5 |
6 | #include
7 | #include
8 | #include
9 | #include
10 | #include
11 | #include
12 | #include
13 | #include
14 | #include
15 | #include
16 | #include
17 | #include
18 | #include