Hmm. I can find, on my system, at least two of cmdlg32.ocx.
One, 140,288 bytes, 5/7/1999 1 AM is located in \windows\system32 (xpsp2)
Another, 140,488 bytes 5/22/2000 4:58 PM is located in a folder created when
you extract the installation files contained in the downloaded executable
for Microsoft Antispyware.
Can you check out what files by this name you have on your system.
If you go to \windows\system32 at a command prompt, and if comdlg32.ocx is
present there, you should be able to type regsvr32 comdlg32.ocx and get a
"dllRegisterServer in Comdlg32.ocx succeeded" message.
If you haven't got a likely looking one of these files, you can extract the
one from the Microsoft Antispyware install by running the downloaded
executable with a -a switch, pointing it to a new folder of your choice.
The OCX will then be found in \foldername\System32\Redist\MS\System. I'd
then try copying that to \%windir%\system32 on your system and trying the
regsvr32 operation on it.