well base from experience this might have been caused by a malicious code...my box suffered the same thing...it is always looking for the hal.dll...the thing is even when the specific dll is copied to the system folder still you would realize that it would not work and would still prompt to the missing dll screen. upon my investigation to this problem, i have found out that somehow my system produced a new windows system folder with all the files that seem legitimate and this is where the system tries to boot from discarding your true system folder. i troubleshooted it by making my harmed HDD as a slave to a working one and deleted the system folder impostor..
by the way, be sure to make a backup of all your important files..you may be required to do a reformat... :cry:
hope this helps...