Wisp is a lightweight Rust inline hooking library for Android ARM64 (aarch64-linux-android). It replaces or intercepts function calls by patching executable code at runtime.
The project is under development, and the public API may change in future releases. See the safety requirements and limitations before use.
- Replace functions with proxy implementations.
- Hook functions while retaining access to the original implementation.
- Retrieve the original function dynamically with
orig_fn!(). - Intercept function entries and modify saved argument registers through a callback.
- Install single-instruction entry patches through nearby branch islands.
- Detect overlapping hooks and serialize management operations within one Wisp instance.
- Synchronize the instruction cache after code changes.