There should be a spare copy of Regedit.exe in the C:\Windows\System32\Dllcache folder. Right click it and choose Copy then Paste it into the C:\Windows folder and see if that corrects the problem. First go into Folder Options and under the View tab choose show hidden files and folders and uncheck Hide protected system operating files, click Apply/OK.
DLLCache folder doesn't exist in Windows 7 ... \Facepalm !!