According to the comment, the rest of the script "uses IFEO to attach to Virtual Disk Service Loader process running during setup, then erases appraiserres.dll [...] it must also do some ping-pong renaming of vdsldr in system32\11" Could anyone explain this in more detail?
The Image File Execution Options's "Debugger" key works in an extremely simple way - it literally intercepts process creation, takes whatever's in the "Debuggers" key, and prepends it to the command-line to run. If that thing is not a Debugger, it means you effectively get to hook whenever a process is created and Do Something.
This is a great way to nerf a program You Don't Like (i.e. corporate antivirus), because you can write `Please Die` (or literally anything really) in the Debuggers line, and because the resulting command-line is invalid, the CreateProcess call simply fails, yet every integrity check for verifying the file still exists and its ACLs are set still pass.
This is a great way to nerf a program You Don't Like (i.e. corporate antivirus), because you can write `Please Die` (or literally anything really) in the Debuggers line, and because the resulting command-line is invalid, the CreateProcess call simply fails, yet every integrity check for verifying the file still exists and its ACLs are set still pass.