Basically, the file contains a table full of pointers.
For every reclass option you add to a character, you have to take the address of where you added the class (say it's added at 0xA46B), you would need to subtract 0x20 from the address, so from 0xA46B, minus 0x20 would make it 0xA44B, then you flip the bytes, also remember that pointers are 4 bytes, so the value would be 4B A4 00 00, then you'd add this pointer to the pointers table.
The Address at 0x00 and 0x01 are the filesize, the bytes are flipped, the 0x04 and 0x05 is a pointer to where the pointer table starts, flip the bytes, add 0x20, and in that address is where you will find the start of the pointer table.
0x08 and 0x09 are the values for how many pointers are located within the pointers table, values are also flipped.
Note that to add new pointers to the pointers table, you'd have to move the Map Sprite data located above it to the end of the file, just copy/paste it to the end and repoint the character's "Mystert Pointer" to the end of the file where you moved their sprite data, and then your free to go up from there and start adding pointers to the pointer table, remember to increase the value at 0x08 by one each time you add a pointer, and just remember to change the values at 0x04 and 0x05 to reflect the new start of the pointer table.
This was explained in greater detail, I'll find the post and link it.
Edit:
https://gbatemp.net/threads/fire-emblem-awakening-same-sex-marriage-more.404061/page-14#post-5893912