Windows stopped with a BAD_POOL_HEADER (bug check 0x00000019) because corruption was detected in the kernel pool memory header. The pool allocator found that a block's header had been overwritten or was in an inconsistent state, which indicates that some code (usually a driver) has written beyond the end of a pool allocation or otherwise corrupted pool metadata.
A kernel-mode driver has a buffer overrun bug that writes past the end of a pool allocation, corrupting the adjacent pool header.
A recently installed or updated driver introduced a memory management regression.
Faulty RAM is causing random bit flips in kernel pool memory, corrupting headers.
Antivirus or security software is hooking into the kernel in a way that corrupts pool metadata.
A third-party application using kernel-level access (e.g., anti-cheat software, virtualisation tools) has a memory corruption bug.
How to fix it
Analyse the minidump in WinDbg or an online BSOD analyser to identify the driver that last allocated from the corrupted pool — this is the most likely cause.
Update all third-party drivers, especially recently installed or updated ones. Focus on security software, GPU, network, and storage drivers.
Uninstall recently added software — particularly antivirus products, anti-cheat clients, or virtualisation tools — and test whether the crash recurs.
Run Windows Memory Diagnostic (mdsched.exe) or MemTest86 to test for faulty RAM.
Run `sfc /scannow` and `DISM /Online /Cleanup-Image /RestoreHealth` in an elevated Command Prompt to repair corrupted system files.
Enable Driver Verifier (`verifier.exe`) with pool tracking and special pool options enabled to catch the exact driver corrupting pool memory.
If a clean boot (msconfig > disable all non-Microsoft services and startup items) resolves the issue, re-enable services in batches to identify the responsible software.