DavidR,
I followed your advice already and that's why the error number had changed; it was the previous, undamaged version of kernel32.dll that was saved over the new version while in safe mode. When the kernelupdater program was run from microsoft, it changed the error number back to the most recent version of kernel32.dll. InstallShield is perhaps the culprit; I don't know anymore.