You can stop the repair program and open either a Command Prompt (Admin) or Powershell (Admin) and enter chkdsk /r then enter -
shutdown /r /t 00 to effect an immediate reboot.
You can view the chkdsk log - open Event Viewer - expand Windows Logs - click on Application/Action/Find then type chkdsk into the Find box.
Cancel the Find box and read the log in the scrollable pane below.
Primarily you are looking to see if it reports any KBs in Bad sectors.
The /r switch will move what data it can to good sectors although it cannot repair bad sectors.
If it reports bad sectors then you will need to immediately create a system image onto external media in preparation for full HDD failure.
If it reports that then check to see if it will create a restore point.
If the chkdsk comes back clean then open either a Command Prompt (Admin) or Powershell (Admin) and enter these cmds -
dism /online /cleanup-image /restorehealth
sfc /scannow
Enter exit to close the cmd window but let me know if the sfc /scannow reports anything other than it repaired all corruption or found no integrity violations.
An infection can also cause problems with restore points, so an antivirus scan with a robust scanner may be advisable.
I occasionally use the free ESET Online Scanner -
https://www.eset.com/us/home/online-scanner/?intcmp=intrw