edit: first of all.. if the dll is missing, try
download and replace in its directory. if it was the cause by after a removel of spyware/malware, u need to follow the steps below
go start>run>
input: msconfig
go to "startup" tab
den, under "command" coloumn, go find something like "C:\WINDOWS\system32\hal.dll"
uncheck the box beside it.. then restart.
if the problem still persist, go to start>run>
input: regedit
den go to HKEY_LOCAL_MACHINE>SOFTWARE>Microsoft>Windows>CurrrentVersion >Run
go find something like : "C:\WINDOWS\system32\hal.dll" on the third coloumn.
delete the whole row of it.