And they emailed me this response:

"Because ScanDisk keeps freezing, most likely SpinRite will run into the same problem! SpinRite is not a "file structure re-builder". It will not find and recover data that's been lost due to a destroyed FAT or partition table."

So it sounds like, even if I rebuild the FAT from scratch, SpinRite can't help me recover any files.