Join us on our Discord Channel
Squalr is performant Memory Editing software that allows users to create and share cheats in their windows desktop games. This includes memory scanning, pointers, x86/x64 assembly injection, and so on.
How does Squalr achieve fast memory scans in .NET? Multi-threading combined with single-core parallelism via SIMD instructions. See this article: SIMD in .NET. To take advantage of these gains, your CPU needs to have support for SSE, AVX, or AVX-512.
You can find more documentation on the Wiki
Reference | Description |
---|---|
XAML Formatter | XAML should be run through this formatter |
StyleCop | StyleCop to enforce code conventions. Note that we deviate on some standard conventions. We use the full type name for variables (ex Int32 rather than int). The reasoning is that this is a memory editor, so we prefer to use the type name that is most explicit to avoid coding mistakes. |
In order to compile Squalr, you should only need Visual Studio 2017. This should be up to date, we frequently update Squalr to use the latest version of the .NET framework. Here are the important 3rd party libraries that this project uses:
Library | Description |
---|---|
EasyHook | Managed/Unmanaged API Hooking |
SharpDisasm | Udis86 Assembler Ported to C# |
MemorySharp | Memory Editing Library |
FASM | Flat Assembler (C# Invocation done via MemorySharp) |
CsScript | C# Scripting Library |
AvalonEdit | Code Editing Library |
SharpDX | DirectX Wrapper |
CLRMD | .NET Application Inspection Library |
AvalonDock | Docking Library |
LiveCharts | WPF Charts |
Intending to Use (Eventually):
Library | Description | Purpose |
---|---|---|
AsmJit | x86/x64 Assembler | Replace FASM, improve scripting drastically |
AsmJit | x86/x64 Assembler | Original C++ project. May port/interop this if the above version does not work (Neither may fully work, and something custom may be needed) |
WpfHexEditorControl | Hex Editor | Hex editor / Memory Hex Editor |
Ninject | Dependency Injection Framework | (Option #1) Fixing my abuse of singletons |
AutoFac | Dependency Injection Framework | (Option #2) Fixing my abuse of singletons |
OpenTK | OpenGL Wrapper | Graphics Injection |
SharpDX | DirectX Wrapper | Graphics Injection (Currently using SharpDX just for input) |
SharpPCap | Packet Capture | Packet Editor |
Packet.Net | Packet Capture | Packet Editor |