missing HAL.DLL is usually one of the following
bad / failing / corrupted hard drive
virus
missing boot.ini file
faulty memory (the HAL can't load as a result)
someones switched the hardware on the machine - typically replaced a single core processor with a multicore, or switched the motherboard from an APM version to ACPI. However thats unlikely now
Things to try
reseat the memory
boot the machine with a live CD such as VistaPE or BARTPE and scan the drive for errors (or with a Windows CD boot to recovery console and run chkdsk /r)
copy the boot.ini file in from another machine (note - needs to be same version of windows, and needs to point at exactly the same boot partition, which may require editing by hand)
boot with a live recovery CD and scan for virii / rootkits