I described the subject problem in tip 4684 » Windows XP 'Error Code: 0x80070002' - license-checking?
R. Anthony McCoy, Chief Network Administrator for the City of Trenton Free Public Library, has discovered another cause, and a resolution:
When you start Windows XP and log on, your receive the subject error. When you press OK, you are returned to the Log On to Windows dialog.
NOTE: If you perform a System Restore, the problem may persist.
This behavior will occur if you are missing the %SystemRoot%\System32\secupd.dat file and / or the %SystemRoot%\System32\oembios.dat file and / or the %SystemRoot%\System32\oembios.bin file.
To resolve this problem:
1. Restart your computer and press F8 to start in Safe Mode.
2. Log on.
3. Right-click My Computer and press Manage.
4. Open the Event Viewer.
5. Check the System event log by using the View menu to Filter for an Event source of Windows File Protection since the last time you successfully logged on. You should be able to locate the files that could not be found during logon, probably as Event ID 64005.
6. Using another Windows XP computer, preferably as the same service pack and hotfix level, copy the missing files. If you don't have another Windows XP computer, you may be able to Expand the missing files from the Windows XP CD-ROM.
7. Restart your computer normally.
8. You may have to reapply the latest service pack and hotfixes, perform a SFC /SCANNOW and also check for viruses and other malware.