从 .data 和 .toc 文件中提取文件

逆向工程 文件格式
2021-07-02 10:17:51

.toc是一个始终以标题 1rrs 开头的目录文件。它还包含与数据文件相关的偏移处的目录和文件路径。

我应该从哪里开始尝试使用.toc.data文件中提取

1个回答

完全披露总是值得赞赏的。这似乎是 FASA Studio 的“Shadowrun”的(“the”?)数据文件。无论如何,数据文件包含足够的可识别项目来获得良好的开端(PNG、Unicode 文本)。数据似乎按 16 字节对齐,填充了似乎是随机垃圾的内容。

PNG 图像是一个好的开始;您可以“手动”提取它们(我使用0xED)并查看它们是否格式正确。根据 toc 文件,我尝试过的少数是,最后一个数据块应该是 PNG 图像。我将它定位在0x82A72D0,长度为0x2E231字节。

core.data 中的最后一个 PNG

然后我检查周围的最后一个PNG文件中的数据名称core.toc的这些字节。宾果游戏 - 不是一个巨大的挑战。

toc 文件的初始部分是未知的,但可能是一个快速查找表。我没有在下面的内容中进一步交叉引用这个。之后,可以在每个文件中找到以下数据:

4 bytes   length (little endian)
4 bytes   offset
8 bytes   unknown (perhaps checksum, perhaps file data/time, who knows?)
3 bytes   name length -- possibly only the first 2 though, 3 bytes is rare #
x bytes   name

在文件名块出现更多内容之后,我想不出它的用途。您可以提取所有文件名,对其进行计数,然后查看是否相关。似乎不是因为文件名块包含您要查找的所有内容。

编辑:

# 啊--对于第一个文件,这name length0x0E 0x00 0x01. 那么,似乎第三个字节表示其他内容。到目前为止,我发现了 2 个0x01,它们都是“无路径”文件。