0XC000000A

STATUS_BAD_INITIAL_PC (0XC000000A) Thread Fix

Windows Errors Intermediate 👁 0 views 📅 May 26, 2026

STATUS_BAD_INITIAL_PC means Windows couldn't start a thread because the entry point address was garbage — usually caused by a corrupted app or driver.

Quick answer for pros: Reinstall or update the crashing app. If that fails, run sfc /scannow in an admin prompt, then check your antivirus logs — it's often a false positive that corrupts thread entry points. If it's a driver, roll it back in Device Manager.

STATUS_BAD_INITIAL_PC (0xC000000A) shows up when the kernel's thread creation function — NtCreateThread — gets handed a starting address that points to invalid memory. The culprit is almost always a corrupt executable or a third-party driver that's patching the thread start address mid-flight. I've seen this most often after a failed update, a buggy antivirus scan that quarantines part of a running app, or a memory scribble from a faulty driver. You'll usually see it as a crash in Event Viewer under Application or System logs, often paired with a failing module name.

Fix Steps for STATUS_BAD_INITIAL_PC

  1. Note the crashing process. Open Event Viewer, navigate to Windows Logs > Application, and look for the error. The source will be "Application Error" or "Windows Error Reporting". The failing module name (e.g., chrome.exe or nvlddmkm.sys) tells you what needs a reinstall or rollback.
  2. Reinstall the crashing application. Uninstall it from Control Panel, reboot, then grab the latest version from the official source. Don't use a backup copy — corruption can persist in cached files.
  3. Run System File Checker. Open Command Prompt as admin and run:
    sfc /scannow
    This checks core Windows files. If it finds corruption, run DISM /Online /Cleanup-Image /RestoreHealth next, then sfc /scannow again.
  4. Check your antivirus. Temporarily disable real-time protection (or uninstall third-party AV if it's aggressive like McAfee or Norton). If the error stops, exclude the app's folder in your AV settings, then re-enable protection. False positives on thread-injection patterns are common here.
  5. Roll back recent driver updates. If you updated a graphics or chipset driver before the error showed, go to Device Manager, find the device, right-click > Properties > Driver > Roll Back Driver. Reboot and test.
  6. Run a clean boot. This strips out all non-Microsoft services and startup items:
    msconfig
    Select Selective Startup, uncheck Load startup items, then Services tab > Hide all Microsoft services > Disable all. Apply, reboot. If the error stops, enable services one by one until you find the culprit.

Alternative Fixes If the Main Steps Don't Work

  • Use Sysinternals Process Monitor. Filter for Result is BAD_INITIAL_PC or Process Name contains the crashing app. You'll see the stack trace — the last CreateThread call with an invalid address. This points to the exact DLL or driver doing the damage.
  • Check for memory corruption. Run mdsched.exe to test RAM. Bad memory can scramble thread start addresses, though this is less common. Let it run overnight — don't trust a quick pass.
  • System Restore. If you have a restore point from before the error started, roll back. Type rstrui in Run, pick a point, let it complete.

Prevention Tip

Keep a system restore point before any driver update or major app install. Also, if you're using third-party antivirus, configure it to exclude your development or gaming folders from real-time scanning — those are prime triggers for false positives on thread creation. I've seen this error drop to near zero on machines that follow those two rules.

Was this solution helpful?