public int GetInt() { int xor_value = MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, pThis + 0x30); xor_value ^= (int)pThis; return(xor_value); }
public CBaseCombatWeapon GetWearableWeapon() { int Handle = MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, pThis + Globals._netvar.m_hMyWearables); Handle &= 0xFFF; return(new CBaseCombatWeapon(MainThread.g_EntityList.GetEntityByIndex(Handle))); }
public CSGOClassID GetClassID() { IntPtr vTables = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, pThis + 0x8); IntPtr vFunction = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, vTables + 0x8); IntPtr vClass = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, vFunction + 0x1); return((CSGOClassID)MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, vClass + 0x14)); }
public string GetNetworkName() { IntPtr vTables = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, pThis + 0x8); IntPtr vFunction = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, vTables + 0x8); IntPtr vClass = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, vFunction + 0x1); return(MemoryAPI.ReadTextFromProcess(Globals._csgo.ProcessHandle, MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, vClass + 0x8), -1)); }
public static mstudiobbox_t GetHitBox(IClientEntity pEntity, string szModelName, int iIndex) { if (m_ModelHitboxes.ContainsKey(szModelName)) { if (m_ModelHitboxes[szModelName].ContainsKey(iIndex)) { return(m_ModelHitboxes[szModelName][iIndex]); } else { return(default(mstudiobbox_t)); } } IntPtr pStudioHdr = pEntity.GetStudioHdr(); if (pStudioHdr == IntPtr.Zero) { return(default(mstudiobbox_t)); } int hitbox_set_index = MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, pStudioHdr + 0xB0); int studio_hitbox_set = (int)pStudioHdr + hitbox_set_index; int num_hitboxes = MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, new IntPtr(studio_hitbox_set + 0x4)); int hitbox_index = MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, new IntPtr(studio_hitbox_set + 0x8)); m_ModelHitboxes.Add(szModelName, new Dictionary <int, mstudiobbox_t>()); for (int i = 0; i < num_hitboxes; ++i) { mstudiobbox_t model_hitbox = MemoryAPI.ReadFromProcess <mstudiobbox_t>(Globals._csgo.ProcessHandle, new IntPtr((0x44 * i) + hitbox_index + studio_hitbox_set)); float radius = model_hitbox.m_flRadius; if (radius != -1f) { model_hitbox.bbmin.x -= radius; model_hitbox.bbmin.y -= radius; model_hitbox.bbmin.z -= radius; model_hitbox.bbmin.x += radius; model_hitbox.bbmin.y += radius; model_hitbox.bbmin.z += radius; } m_ModelHitboxes[szModelName].Add(i, model_hitbox); } if (m_ModelHitboxes[szModelName].ContainsKey(iIndex)) { return(m_ModelHitboxes[szModelName][iIndex]); } else { return(default(mstudiobbox_t)); } }
public void Update() { pPlayerList.Clear(); for (int i = 1; i <= MainThread.g_GlobalVars.Get().maxClients; ++i) { IntPtr pEntity = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, pThis + ((i - 1) * 0x10)); if (pEntity != IntPtr.Zero) { pPlayerList.Add(pEntity); } } }
public void RegisterGlowObject(int iGlowIndex, float r, float g, float b, float a, bool bInnerGlow, bool bFullRender = false) { GlowObjectDefinition_t glow = MemoryAPI.ReadFromProcess <GlowObjectDefinition_t>(Globals._csgo.ProcessHandle, pThis + (iGlowIndex * 0x38)); glow.fR = r / 255f; glow.fG = g / 255f; glow.fB = b / 255f; glow.fAlpha = a / 255f; glow.m_bInnerGlow = bInnerGlow; glow.bRenderWhenOccluded = true; glow.bRenderWhenUnoccluded = false; glow.bFullBloomRender = bFullRender; MemoryAPI.WriteToProcess <GlowObjectDefinition_t>(Globals._csgo.ProcessHandle, pThis + (iGlowIndex * 0x38), glow); }
public void Update() { Items.Clear(); IntPtr startAddress = GetItems(); for (int i = 0; i < 1024; ++i) { IntPtr namePointer = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, startAddress + 0xC + (i * 0x34)); string model_name = MemoryAPI.ReadTextFromProcess(Globals._csgo.ProcessHandle, namePointer, -1); if (model_name.StartsWith("models")) { Items.Add(model_name, i - 3); } } }
public void Update() { pThis = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, Globals._csgo.CSGOModules["engine"].BaseAddress + Globals._signatures.dw_ClientState); if (IsInGame()) { if (m_pModelPrecacheTable == null) { m_pModelPrecacheTable = GetModelPrecacheTable(); } if (m_pModelPrecacheTable != null && m_pModelPrecacheTable.lastMap != GetMapName()) { m_pModelPrecacheTable.Update(); m_pModelPrecacheTable.lastMap = GetMapName(); } } }
public static bool MatchFound() { IntPtr CLobbyScreen = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, Globals._csgo.CSGOModules["client"].BaseAddress + Globals._signatures.dw_CLobbyScreen); if (CLobbyScreen != IntPtr.Zero) { int iAccept = MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, CLobbyScreen + Globals._signatures.dw_MatchAccepted); int iFound = MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, CLobbyScreen + Globals._signatures.dw_MatchFound); return(iAccept == 0 && iFound != 0); } else { return(false); } }
public static bool Do(Vector start, Vector end) { if (Address == IntPtr.Zero) { Alloc(); if (Address == IntPtr.Zero) { return(false); } int param_startAddr = (int)Address + 80; int param_endAddr = param_startAddr + 12; int returnAddr = param_endAddr + 12; ReturnAddress = new IntPtr(returnAddr); int param_end_y = param_endAddr + 4; int param_end_z = param_endAddr + 8; int param_start_y = param_startAddr + 4; int param_start_z = param_startAddr + 8; Buffer.BlockCopy(BitConverter.GetBytes(param_endAddr), 0, Shellcode, 0xA, 4); Buffer.BlockCopy(BitConverter.GetBytes(param_end_y), 0, Shellcode, 0x12, 4); Buffer.BlockCopy(BitConverter.GetBytes(param_end_z), 0, Shellcode, 0x1B, 4); Buffer.BlockCopy(BitConverter.GetBytes(param_startAddr), 0, Shellcode, 0x28, 4); Buffer.BlockCopy(BitConverter.GetBytes(param_start_y), 0, Shellcode, 0x30, 4); Buffer.BlockCopy(BitConverter.GetBytes(param_start_z), 0, Shellcode, 0x38, 4); Buffer.BlockCopy(BitConverter.GetBytes(Globals._signatures.dw_lineThroughSmoke), 0, Shellcode, 0x40, 4); Buffer.BlockCopy(BitConverter.GetBytes(returnAddr), 0, Shellcode, 0x47, 4); } Buffer.BlockCopy(MemoryAPI.GetStructBytes <struct_Vector>(start.ToStruct()), 0, Shellcode, 0x50, 12); Buffer.BlockCopy(MemoryAPI.GetStructBytes <struct_Vector>(end.ToStruct()), 0, Shellcode, 0x5C, 12); WinAPI.WriteProcessMemory(Globals._csgo.ProcessHandle, Address, Shellcode, Shellcode.Length, 0); IntPtr Thread = WinAPI.CreateRemoteThread(Globals._csgo.ProcessHandle, (IntPtr)null, IntPtr.Zero, Address, (IntPtr)null, 0, (IntPtr)null); WinAPI.WaitForSingleObject(Thread, 0xFFFFFFFF); WinAPI.CloseHandle(Thread); bool returnVal = MemoryAPI.ReadFromProcess <bool>(Globals._csgo.ProcessHandle, ReturnAddress); return(returnVal); }
public IntPtr GetConVarAddress(string name) { var hash = GetStringHash(name); IntPtr Pointer = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, pThis + 0x34) + ((byte)hash * 4)); while (Pointer != IntPtr.Zero) { if (MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, Pointer) == hash) { IntPtr ConVarPointer = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, Pointer + 0x4); if (MemoryAPI.ReadTextFromProcess(Globals._csgo.ProcessHandle, MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, ConVarPointer + 0xC), -1) == name) { return(ConVarPointer); } } Pointer = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, Pointer + 0xC); } return(IntPtr.Zero); }
void ScanTable(IntPtr table, int level, int offset, string name) { var count = MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, table + 0x4); for (var i = 0; i < count; ++i) { int propID = MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, table) + i * 0x3C; string propName = MemoryAPI.ReadTextFromProcess(Globals._csgo.ProcessHandle, MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, new IntPtr(propID)), 64); var isBaseClass = propName.IndexOf("baseclass") == 0; int propOffset = offset + MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, new IntPtr(propID + 0x2C)); if (!isBaseClass) { if (!_tables.ContainsKey(name)) { _tables.Add(name, new Dictionary <string, int>()); } if (!_tables[name].ContainsKey(propName)) { _tables[name].Add(propName, propOffset); } } var child = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, new IntPtr(propID + 0x28)); if (child == IntPtr.Zero) { continue; } if (isBaseClass) { --level; } ScanTable(child, ++level, propOffset, name); } }
public int GetHighestEntityIndex() { return(MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, pThis + Globals._signatures.dw_HighestEntityIndex)); }
public bool GetInputState() { return(MemoryAPI.ReadFromProcess <bool>(Globals._csgo.ProcessHandle, pThis + Globals._signatures.dw_inputenabled)); }
public CInputSystem() { pThis = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, Globals._csgo.CSGOModules["inputsystem"].BaseAddress + Globals._signatures.dw_inputsystem); }
public CConVarManager() { codes = MemoryAPI.ReadFromProcess <CharCodes>(Globals._csgo.ProcessHandle, Globals._csgo.CSGOModules["vstdlib"].BaseAddress + Globals._signatures.dw_Convarchartable); pThis = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, Globals._csgo.CSGOModules["vstdlib"].BaseAddress + Globals._signatures.dw_enginecvar); }
public ModelINetworkStringTable GetModelPrecacheTable() { IntPtr pPointer = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, pThis + Globals._signatures.dw_ModelPrecacheTable); return(pPointer != IntPtr.Zero ? new ModelINetworkStringTable(pPointer) : null); }
public void Update() { pGlobals = MemoryAPI.ReadFromProcess <GlobalVarsBase>(Globals._csgo.ProcessHandle, Globals._csgo.CSGOModules["engine"].BaseAddress + Globals._signatures.dw_GlobalVars); }
public int GetLastOutGoingCommand() { return(MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, pThis + Globals._signatures.dw_lastoutgoingcommand)); }
public Vector GetViewAngles() { return(new Vector(MemoryAPI.ReadFromProcess <struct_Vector>(Globals._csgo.ProcessHandle, pThis + Globals._signatures.dw_viewangles))); }
public bool GetSendPacket() { return(MemoryAPI.ReadFromProcess <bool>(Globals._csgo.ProcessHandle, Globals._csgo.CSGOModules["engine"].BaseAddress + Globals._signatures.dw_bSendPackets)); }
public void Update() { pThis = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, Globals._csgo.CSGOModules["client"].BaseAddress + Globals._signatures.dw_WeaponTable); }
public bool IsInGame() { return(MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, pThis + Globals._signatures.dw_isingame) == 6); }
public player_info_s GetPlayerInfo(int index) { var items = MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, GetUserInfoTable() + 0x3C) + 0xC); return(MemoryAPI.ReadFromProcess <player_info_s>(Globals._csgo.ProcessHandle, MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, items + 0x20 + ((index - 1) * 0x34)))); }
public IntPtr GetUserInfoTable() { return(MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, pThis + Globals._signatures.dw_UserInfoTable)); }
public IntPtr GetItems() { return(MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, pThis + 0x3C) + 0xC)); }
public int GetAttackState() { return(MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, Globals._csgo.CSGOModules["client"].BaseAddress + Globals._signatures.dw_forceattack)); }
public void Init() { dw_LocalPlayer = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "A3 ? ? ? ? C7 05 ? ? ? ? ? ? ? ? E8 ? ? ? ? 59 C3 6A ?", Globals._csgo.CSGOModules["client"], true, 0x1, true, 0) + 16; Console.WriteLine("- dw_LocalPlayer => 0x" + dw_LocalPlayer.ToString("X")); dw_traceline = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "55 8B EC 83 E4 F0 83 EC 7C 56 52", Globals._csgo.CSGOModules["client"], true); Console.WriteLine("- dw_traceline => 0x" + dw_traceline.ToString("X")); dw_traceline += (int)Globals._csgo.CSGOModules["client"].BaseAddress; dw_lineThroughSmoke = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "55 8B EC 83 EC 08 8B 15 ? ? ? ? 0F 57 C0", Globals._csgo.CSGOModules["client"], true); Console.WriteLine("- dw_lineThroughSmoke => 0x" + dw_lineThroughSmoke.ToString("X")); dw_lineThroughSmoke += (int)Globals._csgo.CSGOModules["client"].BaseAddress; dw_entitylist = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "BB ? ? ? ? 83 FF 01 0F 8C ? ? ? ? 3B F8", Globals._csgo.CSGOModules["client"], true, 0x1, true, 0); Console.WriteLine("- dw_entitylist => 0x" + dw_entitylist.ToString("X")); dw_CLobbyScreen = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "A1 ? ? ? ? 85 C0 74 0F 6A 00", Globals._csgo.CSGOModules["client"], true, 0x1, true, 0); Console.WriteLine("- dw_CLobbyScreen => 0x" + dw_CLobbyScreen.ToString("X")); dw_AcceptMatch = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "55 8B EC 83 E4 F8 83 EC 08 56 8B 35 ? ? ? ? 57 83 BE", Globals._csgo.CSGOModules["client"], true); Console.WriteLine("- dw_AcceptMatch => 0x" + dw_AcceptMatch.ToString("X")); dw_AcceptMatch += (int)Globals._csgo.CSGOModules["client"].BaseAddress; dw_MatchAccepted = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "89 B7 ? ? ? ? 8B 4F 04 85 C9", Globals._csgo.CSGOModules["client"], false, 0x2, true); Console.WriteLine("- dw_MatchAccepted => 0x" + dw_MatchAccepted.ToString("X")); dw_MatchFound = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "89 87 ? ? ? ? 8B 87 ? ? ? ? 3B F0", Globals._csgo.CSGOModules["client"], false, 0x2, true); Console.WriteLine("- dw_MatchFound => 0x" + dw_MatchFound.ToString("X")); dw_ChangeClanTag = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "53 56 57 8B DA 8B F9 FF 15", Globals._csgo.CSGOModules["engine"], true); Console.WriteLine("- dw_ChangeClanTag => 0x" + dw_ChangeClanTag.ToString("X")); dw_ChangeClanTag += (int)Globals._csgo.CSGOModules["engine"].BaseAddress; dw_RevealRankFn = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "55 8B EC 8B 0D ? ? ? ? 68", Globals._csgo.CSGOModules["client"], true); Console.WriteLine("- dw_RevealRankFn => 0x" + dw_RevealRankFn.ToString("X")); dw_RevealRankFn += (int)Globals._csgo.CSGOModules["client"].BaseAddress; dw_pInput = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "B9 ? ? ? ? F3 0F 11 04 24 FF 50 10", Globals._csgo.CSGOModules["client"], true, 0x1, true); Console.WriteLine("- dw_pInput => 0x" + dw_pInput.ToString("X")); dw_ClientState = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "A1 ? ? ? ? 33 D2 6A 00 6A 00 33 C9 89 B0", Globals._csgo.CSGOModules["engine"], true, 0x1, true); Console.WriteLine("- dw_ClientState => 0x" + dw_ClientState.ToString("X")); dw_viewangles = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "F3 0F 11 80 ? ? ? ? D9 46 04", Globals._csgo.CSGOModules["engine"], false, 0x4, true); Console.WriteLine("- dw_viewangles => 0x" + dw_viewangles.ToString("X")); dw_lastoutgoingcommand = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "C7 80 ? ? ? ? ? ? ? ? A1 ? ? ? ? F2 0F 10 05 ? ? ? ? F2 0F 11 80 ? ? ? ? FF 15", Globals._csgo.CSGOModules["engine"], false, 0x2, true); Console.WriteLine("- dw_lastoutgoingcommand => 0x" + dw_lastoutgoingcommand.ToString("X")); dw_bSendPackets = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "B3 01 8B 01 8B 40 10 FF D0 84 C0 74 0F 80 BF ? ? ? ? ? 0F 84", Globals._csgo.CSGOModules["engine"], true) + 0x1; Console.WriteLine("- dw_bSendPackets => 0x" + dw_bSendPackets.ToString("X")); dw_GlobalVars = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "68 ? ? ? ? 68 ? ? ? ? FF 50 08 85 C0", Globals._csgo.CSGOModules["engine"], true, 0x1, true); Console.WriteLine("- dw_GlobalVars => 0x" + dw_GlobalVars.ToString("X")); dw_bDormant = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "55 8B EC 53 8B 5D 08 56 8B F1 88 9E ? ? ? ? E8", Globals._csgo.CSGOModules["client"], false, 0xC, true); Console.WriteLine("- dw_bDormant => 0x" + dw_bDormant.ToString("X")); m_pStudioHdr = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "8B B6 ? ? ? ? 85 F6 74 05 83 3E 00 75 02 33 F6 F3 0F 10 44 24", Globals._csgo.CSGOModules["client"], false, 0x2, true); Console.WriteLine("- dw_pStudioHdr => 0x" + m_pStudioHdr.ToString("X")); dw_GlowObjectManager = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "A1 ? ? ? ? A8 01 75 4B", Globals._csgo.CSGOModules["client"], true, 0x1, true) + 4; Console.WriteLine("- dw_GlowObjectManager => 0x" + dw_GlowObjectManager.ToString("X")); dw_forceattack = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "89 0D ? ? ? ? 8B 0D ? ? ? ? 8B F2 8B C1 83 CE 04", Globals._csgo.CSGOModules["client"], true, 0x2, true); Console.WriteLine("- dw_forceattack => 0x" + dw_forceattack.ToString("X")); dw_isingame = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "83 B8 ? ? ? ? ? 0F 94 C0 C3", Globals._csgo.CSGOModules["engine"], false, 0x2, true); Console.WriteLine("- dw_isingame => 0x" + dw_isingame.ToString("X")); m_dwMapDirectory = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "05 ? ? ? ? C3 CC CC CC CC CC CC CC 80 3D", Globals._csgo.CSGOModules["engine"], false, 0x1, true); Console.WriteLine("- dw_MapDirectory => 0x" + m_dwMapDirectory.ToString("X")); dw_ModelPrecacheTable = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "8B 8E ? ? ? ? 8B D0 85 C9", Globals._csgo.CSGOModules["engine"], false, 0x2, true); Console.WriteLine("- dw_ModelPrecacheTable => 0x" + dw_ModelPrecacheTable.ToString("X")); dw_UserInfoTable = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "8B 89 ? ? ? ? 85 C9 0F 84 ? ? ? ? 8B 01", Globals._csgo.CSGOModules["engine"], false, 0x2, true); Console.WriteLine("- dw_UserInfoTable => 0x" + dw_UserInfoTable.ToString("X")); dw_Convarchartable = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "8B 3C 85", Globals._csgo.CSGOModules["vstdlib"], true, 0x3, true); Console.WriteLine("- dw_Convarchartable => 0x" + dw_Convarchartable.ToString("X")); dw_enginecvar = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "8B 0D ? ? ? ? C7 05", Globals._csgo.CSGOModules["vstdlib"], true, 0x2, true); Console.WriteLine("- dw_enginecvar => 0x" + dw_enginecvar.ToString("X")); dw_clientcmd = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "55 8B EC A1 ? ? ? ? 33 C9 8B 55 08", Globals._csgo.CSGOModules["engine"], true); Console.WriteLine("- dw_clientcmd => 0x" + dw_clientcmd.ToString("X")); dw_clientcmd += (int)Globals._csgo.CSGOModules["engine"].BaseAddress; dw_WeaponTable = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "B9 ? ? ? ? 6A 00 FF 50 08 C3", Globals._csgo.CSGOModules["client"], true, 0x1, true); Console.WriteLine("- dw_WeaponTable => 0x" + dw_WeaponTable.ToString("X")); dw_WeaponTableIndex = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "39 86 ? ? ? ? 74 06 89 86 ? ? ? ? 8B 86", Globals._csgo.CSGOModules["client"], false, 0x2, true); Console.WriteLine("- dw_WeaponTableIndex => 0x" + dw_WeaponTableIndex.ToString("X")); dw_inputsystem = PatternScanner.FindPattern(Globals._csgo.ProcessHandle, "8B 0D ? ? ? ? FF 75 10", Globals._csgo.CSGOModules["inputsystem"], true, 0x2, true); Console.WriteLine("- dw_inputsystem => 0x" + dw_inputsystem.ToString("X")); dw_inputenabled = MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, Globals._csgo.CSGOModules["inputsystem"].BaseAddress + dw_inputsystem)) + 0x2C /*(11 * 4)*/) + 0x8); Console.WriteLine("- dw_inputenabled => 0x" + dw_inputenabled.ToString("X")); }
public CCSWeaponInfo GetWeaponInfo(int nTableIndex) { return(new CCSWeaponInfo(MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, pThis + 0xC + (0x10 * nTableIndex)))); }