I found this interesting bit in the BGT documentation (related to transition stuck problem where the familiar blocked Imoen from opening PC's cage and start dialogue)
Familiar importation
If a familiar is out during the transition to Shadows of Amn, it will follow the player into Irenicus’ dungeon. However, if the familiar is in inventory, its importation occurs by script in AR0602.BCS. Since DropInventory() does not drop undroppable items (this is to preserve unique items of joinable NPCs, such as Minsc’s Boo), and the start of Shadows of Amn calls upon DestroyAllEquipment(), which removes all items regardless of their parameters, there is a gap where checks for a familiar in inventory can take place. Familiar checks check for familiar type, but also required the MeetOldenFriends global variable to be set to 100, exclusive to the importation process. This prevents characters directly imported into Shadows of Amn from erroneously keeping their familiar. The familiar, if found, is placed in Picture 1 of AR0602.ARE.
I never used familiars so I am not sure about the last point of finding the familiar again. The red 100 is misprinted as 10 in the BGT documentation, it is 100 in ar0602,bcs
In my savegame, the familiar is actually not in Picture 1. I made two saves before the transition, one with cat in my backpack, and another with it outside. The relevant variables of WTPFamiliar, as far as I have found them, (WTP* and #G*) are actually identical in both saves, and also with the autosave happening after newscene.bcs. The MeetOldenFriends variable is set to 100. The familiar might not be found by BGT, because WTPFamiliar uses different names for them, all starting with wtp.