I'm not sure how to interpret either of these arrays, but at least we understand the format.
I suspect that the section map is used for determining RVAs of relocated fields, but I don't know how to do the calculation, and none of the fields of OMFSegMapDesc are documented in Microsoft headers (aside from printing their values, which is how I arrived at the layout) so the meaning is unclear.
These shouldn't live in headers, they'll be duplicated in all TUs that use them. Probably the best way to expose this would be to declare a function that returns an ArrayRef of register names, and then implement that in the .cpp file, given that we don't want to duplicate the size of the array in the header. Keep the prototypes in the SymbolDumper.h header.