ASUS Armoury Crate - Self-installing Bloat/Malware

Back in December 2022, I bought myself a Laptop in the hopes that I would be able to take it anywhere and keep working or playing. The idea mostly worked, with the massive downside that I forgot entirely about which vendor made the Laptop: ASUS. ASUS, like MSI, is one of those that will silently push Malware, Spyware and Bloatware as a required Windows update, often hiding it as a new driver.

Unfortunately for me, Microsoft Windows is a necessity for Windows development - cross-compiling may work, but the generated binaries are horribly wasteful and slow. It's just better to use Microsoft Visual Studio instead, and get proper decent binaries out. So, I needed a solution for the ASUS problem, and I think I found one.

⚠️ Attention ⚠️

I've moved this guide into its own dedicated page, so that I can update it with ease. See this link for the new updated guide!

How to (temporarily) remove Armoury Crate

1. Disable the feature in BIOS/UEFI

This is the easiest step, as you just have to get into UEFI and turn the switch for it to Disabled or Off. This should remove the device for which Windows will attempt to fetch drivers for, but it may still be present. Just reboot into Windows once you've set the setting.

2. Remove the Services

With the "feature" disabled, we can now enjoy some time before Windows will reinstall everything. So lets start by disabling, stopping and deleteing the Services that it created - and the best way to do that is a good old cmd Terminal running as Administrator! We're not using Powershell here, because the sc command is broken in Powershell. Once you have it open, the following command will make quick work of the Services:

@for %L IN (ASUSSystemDiagnosis ASUSSystemAnalysis ASUSSwitch ASUSSoftwareManager ASUSOptimization ASUSLinkNear ASUSLinkRemote ASUSAppService asus asusm AsusCertService AsusROGLSLService) DO ( sc config %L start=disabled sc stop %L sc delete %L )

Optionally you can remove the sc delete %L part if you only wish to soft-disable the Driver, without actually removing it. This prevents windows from reinstalling it, but it will still update it adding new things.

3. Remove the "Driver"

Now that nothing is using the driver itself anymore, we can begin by figuring out where it is, and what it was registered as. This time we'll use a Powershell Terminal running as Administrator, and a single command will do all the work for us:

pnputil /enum-drivers | ` Select-String -Pattern "asussci" -Context 2, 5 | ` ForEach-Object {@{ ` "Inf" = ($_.Context.PreContext[1] -split ':')[1].trim(); ` "ClassName" = ($_.Context.PostContext[1] -split ':')[1].trim(); ` }} | ForEach-Object { ` pnputil /delete-driver $_.Inf /uninstall /force /reboot ` }

Note that this command can restart your system in the event that it is necessary to do so in order to remove all driver files. But once it is done, the driver is no more!

4. Enjoy the regained performance!

ASUS's Driver and Services are absolutely horrible for input latency, as well as system performance. They've caused me quite a few audio stutters, and combined with other shitty drivers and services made any proper audio playback near impossible. This behavior from Microsoft and Laptop manufacturers needs to stop, but it likely won't until a government steps in - so here's me hoping the European Union will do something to stop this. It's bad enough on "smart"phones, we don't need it on Laptops and Desktops too...

A downside is that Windows will immediately reinstall the Driver when it checks for updates again, and I found no way to prevent that. It is a similar situation to the random RGB device driver Windows kept installing for my AMD Ryzen 5950X, except this time it's on purpose. Maybe someone else knows how to prevent this entirely.

Comments for: ASUS Armoury Crate - Self-installing Bloat/Malware