[KVM – vmread] Apex ESP and Aimbot
This is an an edited version of “Apex Simple KVM DMA Aimbot+Glow”, you need a QEMU KVM with GPU passthrough to use this. Credits to TheCruZ for the base hack and the overlay, h33p for vmread and Y33Tcoder for his initial port. I added aim prediction, no sway and other minor things.
There are two main sources in the zip: apex_dma is for the host program that performs the memory operations, apex_guest contains the source for the guest client application that manages the hotkeys and draws on the overlay. You can choose to use the NVIDIA overlay or a custom one by setting the variable “use_nvidia” (apex_guest also contains the source of a simple overlay). If everything works you should see the title and the options written in red in the top-left corner of the screen. The overlay should appear without pressing ALT+Z. The screen resolution is hardcoded to 1920×1080 in the apex_dma source so you have to change it if you are using a different one.
I think that you have to edit the guest source a bit before compiling in order to change the signature of the compiled program. Edit strings, add some (useless) functions between the code, change the program destination name, change the compiler optimization settings or use an obfuscator with virtualization like VMProtect.
From the guest you can use ssh to control the host and start the apex_dma program. While you are in game you don’t need a second keyboard/mouse to activate the features, everything is managed by a “communication” between the host and the guest client program.
I tested this with Ubuntu 20.04 as host and Windows 10 1903 as guest.
1 – (On host) Compile the source by running the script “build.sh”. You need to have meson installed.
2 – (On guest) Compile the project apex_guest.
3 – Open the guest overlay application (you can skip this step if you are using the NVIDIA overlay)
4 – Open the guest client application
5 – Run Apex
6 – (On host) Move inside the directory apex_dma/build and run apex_dma as root.
Now you should see “Ready” on the host terminal and on the guest client application.
F4 – Close the client and the overlay
F5 – Toggle ESP
F6 – Toggle Aimbot
F7 – Change “safe” level. If the title is red, everything works without checks on the spectators count. If it is orange, everything is disabled only if you have enemy spectators. If it is green, everything is disabled if you have enemy or allied spectators.
LEFT/RIGHT arrows – Decrease/Increase max distance for ESP/Aimbot (200 meters default, 100 min, 800 max).
The (0 – 0) next to the title is the spectators count (enemy – allied). The bars around the players are the indicators of health and shield. The number next to the distance is the team id of the player. If the distance from the enemy is written in red instead of green, it means that the player is knocked. The aimbot doesn’t aim at knocked players. Currently there is almost no smooth with aimbot, you can increase the value but with more smooth you have less prediction accuracy. The host program exits if you close Apex and the guest client application. Game version 184.108.40.20677.
– Added player visibility check (thanks to SenatorII). If the esp box is white then the player isn’t visible. To enable the visibility check for the aimbot you have to press F6 again and you should see “F6: AIM (V)”.
– Added item glow (F8 to activate)
– Added an interactive menu made with Dear ImGui
You can still use the hotkeys from 1.2 version to activate the features.
Press INS to toggle the menu. When the menu is hidden, an indicator in the top-left corner which indicates “enemy – allied” spectators will be shown. The bar above the number of spectators indicates the “safe level”, like the title colour in the old versions.
– Added player name on ESP
– Added string encryption on the guest application
– LeakSanitizer: detected memory leaks:
Remove the argument ‘-fsanitize=address’ and ‘-lasan’ in the file meson.build. It is a temporary solution until a proper fix is found.
– Cannot find -lX11:
Install the libx11 library (“sudo apt install libx11-dev” on Ubuntu/Debian).
– Initialization error: 8:
vmread can’t get the Windows NT version/build. Try to install Windows 10 1903 or 1909.
Last edited by MisterY; 5th November 2020 at 08:51 PM.