Does the WinSCP.ini contain ALL of the configuration data? Is there ANY config data in the registry?
When you use INI file for configuration, it contains everything.
Can the temporary storage be re-defined for any directory on D:, or does it require a specific name or permissions?
Yes - https://winscp.net/eng/docs/ui_pref_storage
In my case, I have a an .ini file in the default Program Files (x86) WinSCP directory on C:. Can I just copy all the files/folders in the directory to a directory on D:. Then re-define temp storage location, and create shortcut to WinSCP.exe in the new location?
Yes. Though it's a strange setup. You generally do not have a write access to
Program Files (x86). So you should not have an INI file there. Unless you run WinSCP with Admin privileges or you have allowed writing to
Program Files (x86)(both is wrong).
Though a way easier is to move the
WinSCPfolder and create a symlink from the original location. Then you do not have to change any shortcut. And WinSCP installer will be able to correctly update your copy of WinSCP, when upgrading.