I believe 0x800f references CBS or component based servicing. 0998 is the actual error portion of the code which does not appear to be documented. You can probably get more details about what is not working by looking at the CBS log %WinDir%\Logs\CBS\CBS.log
For starters you can run the following to see if any problems exist that can be repaired. DISM /Online /Cleanup-Image /RestoreHealth