我想修改数据

逆向工程 调试 十六进制
2021-06-26 11:16:53

我对这件事很陌生。

我有一个包含数据的文件 XXXX.record 文件。

当我打开文件

在此处输入图片说明

如何读取此数据并修改值?

谢谢。

在此处输入图片说明

1个回答

您文件的第一行包含设备信息 - 您似乎正在读取HT DataLogger的数据。乍一看,我得出结论,该设备可以测量温度。

后续数据看起来像一个浮点数组- 可以从每个字节块中的41's 和42'推断出它4(“合理的”浮点数通常以十六进制写入时以它们开头)。

要读取数据,只需取任意4字节,块以可被整除的地址开头,4然后使用此站点但是,您可能会注意到,每个4-byte 块中的字节顺序必须不同于“从左到右”,即所谓的big endian

知道每个数字都必须以41or开头42(否则结果数字会太高或太低而无法反映温度),您可以得出结论,事实上,数字ABCD实际上意味着BADC,因此对于每个字节而言,它是小端编码2

例如,如果要解码01 41 33 33则要将数字转换41 01 33 33为十进制格式(即 ~8.075摄氏度)。

修改数据相当简单——十六进制编辑器提供了非常简单的方法;只需突出显示相关字节并开始输入。

编辑:假设第一个从 address 开始,也有可能(并且更有可能)以小端编码存储数字0012h在这种情况下,0x421( 21 04 00 00) 可能是浮点数组的大小。