FreeFixer is an interesting tool which can help you find and remove adware, spyware, viruses and more. Although while we say "help", you're going to have to do a great deal of the work.
The program works by scanning areas where it knows there may be signs of unwanted software: transport and namespace service providers, AppInit_DLLs, browser helper objects, IE toolbars, services, Explorer extensions, drivers, recently created or modified files and more.
FreeFixer will then ignore or highlight files within those sections which it knows are trusted, so for instance it didn't list 43 common or system services on our test PC. You will see whatever's left, and it becomes your job to choose anything that you'd like to remove.
This plainly isn't for beginners. At all. FreeFixer's reports are unashamedly technical (section headers include items such as "Csrss.exe's virtual memory files") can contain a great deal of information. You need to know your way around a PC to follow them.
If you're used to manually hunting malware, though, FreeFixer could be very helpful. It checks a lot of locations; its whitelisting does a good job of removing known safe files so that you can concentrate on what's left; and there are plenty of useful bonus features. The program detects many system policies commonly set by malware to, say, prevent you launching Regedit or Task Manager, and allows you to fix them with a click.
And while the program doesn't come in a portable form, you can run it from a USB stick with just a little work. The FreeFixer manual explains all (search the page for "portable").
FreeFixer 1.03 ships with these changes:
FreeFixer now limits the use of CPU and IO while running periodic background scans.
Decreased the memory usage while calculating MD5 and SHA256 hashes.
Fixed bug where FreeFixer closed itself when a background scan had completed and the user clicked the Donate, Tools or Settings tab.
Other minor optimizations that speeds up the scanning.