ProMod vs scanmem
ProMod
promodapp.orgscanmem
github.comSide by side
| Figure | ProMod | scanmem |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| macOS | Yes | — |
| Linux | — | Yes |
| iOS | Yes | — |
| Android | — | Yes |
| Plans published | 2 | 1 |
| Spec score · Game Memory Editors | 7.3 (#12) | 7.8 (#7) |
| Purpose | ProMod manages memory modifications per process on macOS and is optimized for ARM. | scanmem is an interactive debugging utility for isolating and modifying a variable’s address in an executing process. |
Plans
In their own words
ProMod
ProMod manages memory modifications for individual processes on macOS and iOS. On a Mac, it writes four-byte ARM instructions into a target process and automatically uses code caving for larger patches. Special mods can follow an address in a CPU register and monitor or rewrite float or int32 values when thresholds are met. One-instruction mods can use hardware breakpoints without writing to the target app’s memory; the FAQ says a Mac processor allows six at a time. Keyboard shortcuts can trigger one or several mods, with audible cues. Setups can be saved and shared as portable .pro files, with built-in or password encryption. Bytes Diff scans for memory changes, and Memory Locator searches for hex patterns. Users can enter raw hex or ARM64 assembly, which ProMod assembles, and disassemble surrounding instructions. The Mac app requires an Apple Silicon Mac with macOS 12.0 or later; Intel Macs are unsupported. ProMod Mobile runs on non-jailbroken iOS devices but requires injecting libProModMobile.dylib with Sideloadly or a similar tool. The maker describes it for debugging, learning, single-player, and offline use.
scanmem
scanmem is a free, open-source interactive debugging utility for finding and changing variable values in an executing process. It searches a process by PID and uses values observed over successive scans to narrow the possible memory addresses. The command-line tool can search for exact values, compare changed or unchanged values, find increases or decreases, take snapshots, and search strings when configured for string scans. It can monitor matches as their values change and set values for selected matches or all known matches. GameConqueror provides a graphical front end with a process finder, flexible search syntax, variable locking, and a memory browser and editor; users can choose search regions and types. The project separates the command-line frontend from libscanmem, which performs the scanning. The project describes scanmem as a Linux utility and documents an Android build using a standalone Android NDK toolchain. Linux interactive commands require libreadline and a mounted /proc filesystem, while the GUI has additional dependencies. The default scan data type is int, though the option command can change it. scanmem is GPLv3; libscanmem is LGPLv3.