If you view in hex the character data is there for each player. (it appears this is the case?)
Knowing which player is what character data, well that would be difficult.
But it could go in order of player names listed in roster?
The player names of the roster can be viewed in hex as well.
Replacing the player names with more current ones can be done.
They might only work if using exact character limit but maybe when writing over the player names and ending with 00 then each name after would need to follow the same strutcture.
Just replacing the character names will still keep the original character data, so we would have to figure that out.

Character data (maybe?)

Roster
If any1 wants to look at it and give some input let me know.
The roster files are attached.
2k3 roster looks encrypted?