If an application is storing 'private' data that it doesn't expect to be modified by humans or any other application, then storing a struct straight into the registry seems appropriate.
It's the same as the application making a temp file to store some random state.
Except a registry entry is probably more efficient for something that's under a kilobyte typically.
It's still nasty. Structs are brittle. They aren't easy to inspect when doing some forensics on a bug. It makes it harder to extend the program when you are fussing with version number fields and multiple formats.
INI or JSON or something can make life a lot easier, at least in high level GCed languages.
GP most likely means REG_BINARY littered over the place which usually means the application in question is dumping some struct into the registry.