Posting to discuss the data files.
Some clues are found here
https://www.asheronscall.com/en/forums/showthread.php?46283-Monthly-Portal-DAT-i... 0x0000 Start File
[Super Block]
0x0100 DWord : 0x4C5000 ( HexDump : 00 50 4C 00 )
0x0104 DWord : ???
0x0108 DWord : ???
0x010C DWord : ???
[...]
0x0130 DWord : ???
0x0134 DWord : ???
0x0138 DWord : ???
0x013C DWord : ???
0x0140 DWord : 0x5442 ( HexDump : 42 54 00 00 )
0x0144 DWord : Block_Size
0x0148 DWord : Size
0x014C DWord : Version
0x0150 DWord : Version-2
! 0 : client_anim, client_gamelogic, client_general, client_highres, client_mesh, client_sound, client_surface
! 1 : client_local_English, client_cell_1, client_map_1;
! 2 : client_cell_2, client_map_2
0x0154 DWord : FirstFreeLoc ! File offset of first free block !
0x0158 DWord : LastFreeLoc ! File offset of last free block !
0x015C DWord : FreeBlkCount ! Free Block Count !
0x0160 DWord : DirOffset ! Offset to Directory !
Check if DWords between 0x104 and 0x13C checksums and CRCs?
Next group :
Directory :
[0x0000] DWord : 00 00 00 00
[0x0004] DWord : 9C 09 00 00
[0x0008] DWord : Directory Pointer 1
[0x000C] DWord : 9C 09 00 00
[0x0010] DWord : Directory Pointer 2
[0x0014] DWord : 9C 09 00 00
Repeat until a pointer to 0x00000000.
The hex addresses above are relative to the start of the directory. If the DWord at address 0x0160 of the file contains 0x00D00, the 0x0000 address above is 0x00D00 and the first directory pointer is at address 0x00D08.
Mr.B