Stop code 0x18 — REFERENCE_BY_POINTER — means a driver told Windows it was done with a kernel object once too often. The reference count broke, Windows noticed, and the system stopped before the corruption could cascade. It’s a driver bug with a paper trail: the crash dump usually names the offender outright. That paper trail is what makes this guide short on guesswork.
On ASUS laptops, Armoury Crate’s kernel services join the usual lineup of antivirus filters and network drivers as suspects. Here’s the full diagnostic path.
Why this happens
- Buggy third-party driver. Antivirus filters, VPN clients, and disk tools with reference-counting defects.
- Armoury Crate kernel services. Power, fan, and lighting services operating at kernel level with occasional reference bugs.
- Network driver bugs. Wi-Fi drivers mishandling object lifetimes across power transitions.
- Recent driver update. A new version introducing the bug — check what changed when crashes began.
- Corrupted driver binaries. Damaged files behaving differently from their tested code.
- Unstable overclock corrupting kernel structures. XMP/EXPO or CPU overclocks producing errors blamed on innocent drivers.
- Bad RAM. The rotating-suspects pattern — different driver blamed on each dump.
- MyASUS background services. Like Armoury Crate, MyASUS installs services that operate at system level and have been linked to reference-count crashes.
- RGB and peripheral utilities. Lighting-control software with kernel drivers is a surprising but documented source of 0x18 on gaming laptops.
How to fix it
Work through these in order — identify, fix, verify.
Fix 1: Read the dump and note the pattern
The pattern matters as much as the name. This is the most important diagnostic step in the whole guide: a consistent culprit means a driver bug you can fix, while rotating culprits mean hardware or overclock instability underneath. Don’t skip the pattern check.
- Ensure minidumps are enabled: Advanced system settings > Startup and Recovery > Settings > Small memory dump.
- Open the latest dumps in
%SystemRoot%\Minidumpwith WinDbg Preview; run!analyze -von each. - Same driver every time = driver bug (continue below). Different drivers each time = skip to Fix 7 (RAM/overclock) — that’s memory corruption.
- Write down the consistent culprit’s MODULE_NAME.
Fix 2: Update the driver from ASUS or the vendor
Get the validated fix.
- For ASUS-shipped hardware, download the latest driver for your exact model from ASUS’s official support page.
- For GPUs, use NVIDIA or AMD directly, with clean-install options.
- Install, restart, and test for several days under normal workloads.
Fix 3: Update or test without Armoury Crate
ASUS-specific suspect, ASUS-specific test. Armoury Crate updates frequently include kernel-service fixes that never make the changelog headlines, so “latest” is worth verifying even if you updated last month.
- Update Armoury Crate to the latest version — ASUS fixes these kernel-service bugs in updates.
- If crashes persist, uninstall Armoury Crate completely from Settings > Apps > Installed apps and test for a few days.
- Stable without it = Armoury Crate’s services were the problem. Reinstall only the latest version if you need its features, or manage fans/power through Windows and BIOS instead.
Fix 4: Roll back recent driver updates
When the timeline is clear, act on it.
- In Device Manager, find the device, open Properties > Driver, and click Roll Back Driver.
- Restart and confirm stability.
- Decline that driver version in Windows Update > Advanced options > Optional updates until a newer build appears.
Fix 5: Eliminate antivirus filter conflicts
The most common third-party cause of this bugcheck. Antivirus filters live at the exact layer where reference counts are managed, which is why they dominate this particular stop code.
- Fully update the antivirus engine.
- If the dump implicates it (or crashes continue), remove it with the vendor’s cleanup tool and test on Windows Security.
- Clean on Windows Security confirms the diagnosis — reinstall only the latest version afterward.
Fix 6: Repair system files
Exclude binary corruption. Damaged driver files fail in ways the original code never would, so this step matters most on systems with a history of bad shutdowns or disk errors.
- Run
sfc /scannowin Terminal (Admin), thenDISM /Online /Cleanup-Image /RestoreHealth. - Restart and retest. A driver that still crashes after clean reinstall + file repair has the bug in its code — try an older version.
Fix 7: Disable overclocks and test RAM
For the rotating-suspects pattern. When every dump blames someone different, stop updating drivers — the drivers are victims, not culprits. Unstable memory or a bad stick is corrupting kernel structures underneath them.
- Enter the BIOS and disable XMP/EXPO and any CPU overclock or undervolt.
- Run
mdsched.exein Extended mode; for certainty, run MemTest86 overnight. - If crashes stop at stock speeds, the overclock was corrupting kernel structures. If MemTest86 finds errors, replace the RAM.
Fix 8: Verify with a clean driver state
Confirm the fix holds.
- After fixing, use the laptop normally for a full week — including gaming or heavy workloads if those triggered crashes.
- Check Event Viewer > Windows Logs > System for warning patterns even without crashes.
- For ongoing driver-management guidance, see Microsoft’s Windows support pages .
For the same error on other brands, see our Dell and Acer variants, the 24H2 version , or the general guide .
Closing
On ASUS machines, REFERENCE_BY_POINTER is usually one bad driver — sometimes wearing an Armoury Crate uniform. Read the dumps for the pattern, fix the consistent culprit, and check the overclock if the suspects keep changing. It’s methodical work, but it ends with a stable laptop. Keep Armoury Crate updated but don’t let it auto-update drivers silently — review what changes so you can connect a new crash to its cause.
