Got my hands on v2.1.10 of the free Android Fate route. I mounted the obb file with UltraISO (since it's a FAT disc image) and extracted the content. The files of interest are
Code:
fileinfo_movie_ex.txt
fileinfo_saber_ex.txt
movie_ex.dat
saber_ex.dat
Basically the txt files are an index table as to where in the binary dat files specific assets are stored. It looks like this:
Code:
op01::ogv::movie_ex.dat::0::33570701::252e0fb499b6dc58fdc010a0e7b864f8::0::1.0::
op01h::ogv::movie_ex.dat::72055812::76764141::76b2f014c56c91c7291c1a82ed2d2f02::0::1.0::
op01s::ogv::movie_ex.dat::33570701::20639998::91e75baad9b393418fe787d0168adaa3::0::1.0::
op01z::ogv::movie_ex.dat::54210699::17845113::b5ed829a367e49781935164c090058d8::0::1.0::
op02::ogv::movie_ex.dat::148819953::29290515::b9ddc9e786bfec003b988747389f758b::0::1.0::
...
It's simply
File Name :: File Extension :: Archive Name :: Offset :: Lenth :: MD5 Checksum :: no idea :: no idea
So I parse it with a script and write the specified binary ranges to separate files. Works well with the movies.
I had less success with saber_ex.dat. The extracted files seem to be encrypted. Probably something to do with the 7. and 8. value of the index table, which is different for the image archive:
Code:
003-バス停::webp::saber_ex.dat::0::55024::e39de0d4149b3ed071930b61e0d57eaa::1::1.5::
01星空::webp::saber_ex.dat::55024::22882::fb29182299b2eaca57a395334997983d::1::1.5::
...
So 0 and 1.0 for the movies, 1 and 1.5 for the images.
Does anybody know how to process this properly?