Some malware are harder to remove than others with some able to hide or resist efforts of antimalware software by embedding itself deep within windows. Have you tried Avast boot time scan? It is under "Scan Computer"~~~~~>"Boot time Scan." There you should see a "Schedule Now" button and click it. Then restart your machine and Avast boot time scan should run before Windows load itself.
Theoretically it should have a much higher chance to clear out difficult malware, b/c it runs before any malware or windows for that matter is able to load itself. To be very cautious and safe, during the scan, only click on "repair," Do not click delete though. It might be catastrophic if you accidently delete a infected Windows system files.
The boot time scan should theoretically work. If it doesn't then you will need to do other things, but try that first and get back to us. Also install Windows XP sp3 immediately if you can. Using SP2 is a huge security risk.