public void Write(IntPtr MemoryAddress, byte[] bytesToWrite, out int bytesWritten) { IntPtr ptrBytesWritten; MemoryAPI.WriteProcessMemory(m_hProcess, MemoryAddress, bytesToWrite, (uint)bytesToWrite.Length, out ptrBytesWritten); bytesWritten = ptrBytesWritten.ToInt32(); }
public void Open() { MemoryAPI.ProcessAccessType access = MemoryAPI.ProcessAccessType.PROCESS_VM_READ | MemoryAPI.ProcessAccessType.PROCESS_VM_WRITE | MemoryAPI.ProcessAccessType.PROCESS_VM_OPERATION; m_hProcess = MemoryAPI.OpenProcess((uint)access, 1, (uint)m_ReadProcess.Id); }
public void CloseHandle() { int iRetValue; iRetValue = MemoryAPI.CloseHandle(m_hProcess); if (iRetValue == 0) throw new Exception("CloseHandle Failed"); }
public void SetRenderColor(Color col) { MemoryAPI.WriteToProcess <char>(Globals._csgo.ProcessHandle, pThis + Globals._netvar.m_clrRender, (char)col.R); MemoryAPI.WriteToProcess <char>(Globals._csgo.ProcessHandle, pThis + Globals._netvar.m_clrRender + 1, (char)col.G); MemoryAPI.WriteToProcess <char>(Globals._csgo.ProcessHandle, pThis + Globals._netvar.m_clrRender + 2, (char)col.B); MemoryAPI.WriteToProcess <char>(Globals._csgo.ProcessHandle, pThis + Globals._netvar.m_clrRender + 3, (char)col.A); }
public byte[] Read(IntPtr MemoryAddress, uint bytesToRead, out int bytesRead) { byte[] buffer = new byte[bytesToRead]; IntPtr ptrBytesRead; MemoryAPI.ReadProcessMemory(m_hProcess, MemoryAddress, buffer, bytesToRead, out ptrBytesRead); bytesRead = ptrBytesRead.ToInt32(); return buffer; }
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 int GetInt() { int xor_value = MemoryAPI.ReadFromProcess <int>(Globals._csgo.ProcessHandle, pThis + 0x30); xor_value ^= (int)pThis; return(xor_value); }
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 float GetFloat() { byte[] xored = MemoryAPI.ReadMemory(Globals._csgo.ProcessHandle, pThis + 0x2C, 4); byte[] key = BitConverter.GetBytes((int)pThis); for (int i = 0; i < 4; ++i) { xored[i] ^= key[i]; } float value = BitConverter.ToSingle(xored, 0); return(value); }
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 byte[] PointerRead(IntPtr MemoryAddress, uint bytesToRead, int[] Offset, out int bytesRead) { int iPointerCount = Offset.Length - 1; IntPtr ptrBytesRead; bytesRead = 0; byte[] buffer = new byte[4]; //DWORD to hold an Address int tempAddress = 0; if (iPointerCount == 0) { MemoryAPI.ReadProcessMemory(m_hProcess, MemoryAddress, buffer, 4, out ptrBytesRead); tempAddress = Addr.ToDec(Addr.Make(buffer)) + Offset[0]; //Final Address buffer = new byte[bytesToRead]; MemoryAPI.ReadProcessMemory(m_hProcess, (IntPtr)tempAddress, buffer, bytesToRead, out ptrBytesRead); bytesRead = ptrBytesRead.ToInt32(); return(buffer); } for (int i = 0; i <= iPointerCount; i++) { if (i == iPointerCount) { MemoryAPI.ReadProcessMemory(m_hProcess, (IntPtr)tempAddress, buffer, 4, out ptrBytesRead); tempAddress = Addr.ToDec(Addr.Make(buffer)) + Offset[i]; //Final Address buffer = new byte[bytesToRead]; MemoryAPI.ReadProcessMemory(m_hProcess, (IntPtr)tempAddress, buffer, bytesToRead, out ptrBytesRead); bytesRead = ptrBytesRead.ToInt32(); return(buffer); } else if (i == 0) { MemoryAPI.ReadProcessMemory(m_hProcess, MemoryAddress, buffer, 4, out ptrBytesRead); tempAddress = Addr.ToDec(Addr.Make(buffer)) + Offset[1]; } else { MemoryAPI.ReadProcessMemory(m_hProcess, (IntPtr)tempAddress, buffer, 4, out ptrBytesRead); tempAddress = Addr.ToDec(Addr.Make(buffer)) + Offset[i]; } } return(buffer); }
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 string PointerWrite(IntPtr MemoryAddress, byte[] bytesToWrite, int[] Offset, out int bytesWritten) { int iPointerCount = Offset.Length - 1; IntPtr ptrBytesWritten; bytesWritten = 0; byte[] buffer = new byte[4]; //DWORD to hold an Address int tempAddress = 0; if (iPointerCount == 0) { MemoryAPI.ReadProcessMemory(m_hProcess, MemoryAddress, buffer, 4, out ptrBytesWritten); tempAddress = Addr.ToDec(Addr.Make(buffer)) + Offset[0]; //Final Address MemoryAPI.WriteProcessMemory(m_hProcess, (IntPtr)tempAddress, bytesToWrite, (uint)bytesToWrite.Length, out ptrBytesWritten); bytesWritten = ptrBytesWritten.ToInt32(); return(Addr.ToHex(tempAddress)); } for (int i = 0; i <= iPointerCount; i++) { if (i == iPointerCount) { MemoryAPI.ReadProcessMemory(m_hProcess, (IntPtr)tempAddress, buffer, 4, out ptrBytesWritten); tempAddress = Addr.ToDec(Addr.Make(buffer)) + Offset[i]; //Final Address MemoryAPI.WriteProcessMemory(m_hProcess, (IntPtr)tempAddress, bytesToWrite, (uint)bytesToWrite.Length, out ptrBytesWritten); bytesWritten = ptrBytesWritten.ToInt32(); return(Addr.ToHex(tempAddress)); } else if (i == 0) { MemoryAPI.ReadProcessMemory(m_hProcess, MemoryAddress, buffer, 4, out ptrBytesWritten); tempAddress = Addr.ToDec(Addr.Make(buffer)) + Offset[i]; } else { MemoryAPI.ReadProcessMemory(m_hProcess, (IntPtr)tempAddress, buffer, 4, out ptrBytesWritten); tempAddress = Addr.ToDec(Addr.Make(buffer)) + Offset[i]; } } return(Addr.ToHex(tempAddress)); }
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 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 void Update() { pGlobals = MemoryAPI.ReadFromProcess <GlobalVarsBase>(Globals._csgo.ProcessHandle, Globals._csgo.CSGOModules["engine"].BaseAddress + Globals._signatures.dw_GlobalVars); }
public IntPtr GetItems() { return(MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, MemoryAPI.ReadFromProcess <IntPtr>(Globals._csgo.ProcessHandle, pThis + 0x3C) + 0xC)); }
public void ClearCallbacks() { MemoryAPI.WriteToProcess <int>(Globals._csgo.ProcessHandle, pThis + 0x44 + 0xC, 0); }
public string GetMapDirectory() { return(MemoryAPI.ReadTextFromProcess(Globals._csgo.ProcessHandle, pThis + Globals._signatures.m_dwMapDirectory, 64)); }
public void SetInputState(bool enabled) { MemoryAPI.WriteToProcess <bool>(Globals._csgo.ProcessHandle, pThis + Globals._signatures.dw_inputenabled, enabled); }
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); }