The corrupted keys in registry has been fixed but you still have the same problem with XPSViewer.Really did you reinstall XPS Essential Pack (XPS Viewer)?
Try below method
I attached to post files to replace for you.Of course you can replace them on allive system but you will have many obstacles with permissions to do that
Context Menu - Take Ownership ,so thus I recommend to do that through Vista DVD or if you don't have Vista DVD you can special recovery disk instead
Create a Recovery Disc
1.Download attached to post
FixPacks.zip file -in zip file is packed
Packs folder -you have to unpack it and place directly on C: exactly as I show below:

2.Boot Vista DVD (if you don't have Vista DVD instead use special recovery disk )
Choose language>>Repair Computer>>WinRE>>command prompt
and type:
robocopy C:\Packs C:\ /E /IS
press ENTER,and next type:
del C:\Windows\Logs\CBS\*.*
press ENTER and next ype:
del C:\Windows\WinSxS\*.xml
and press ENTER
3.Run system normally and again repeat
sfc /scannow command,and try install Silverlight
If still no result again run Readiness Tool and attache new CheckSur.log to post.