README.md
June 23, 2026 ยท View on GitHub
Intro
Since there is no good source to hook BitBlt from gdi32.dll, I decided to release this simple project that will help you understand how to hook BitBlt and enable it to take a clean screenshot of the game window.
Why BitBlt?
BitBlt is a function from the Windows API that is commonly used to capture screenshots of a game's screen to detect ESP overlays, visual modifications, or other forms of cheating. It is widely used as part of anti-cheat systems, including those found in games such as Valorant, as well as anti-cheat solutions like FairFight, PunkBuster, and Ricochet for Call of Duty.
About project
This project provides two examples:
- internal_hook that's hooks the BitBlt function.
- Dummy which is just a target application used to test the hook.
The hook includes its own overlay, allowing us to verify whether screenshots remain clean. As shown below, the captured screenshot appears clean:

However, an overlay is actually being rendered and is not detected in the screenshot:

Overlay with the function call visible:

This should work with most anti-cheats. However, depending on the game, additional screenshot related functions may also need to be hooked. If the game relies on BitBlt for screenshot capture, this hook should work perfectly.
Credits
- Extreme injector by @master131
- MinHook by the MinHook contributors.