LOBYTE(some_var) = 0;的含义在 IDA HexRays 中?
The meaning of LOBYTE(some_var) = 0; in IDA HexRays?
我读了一些关于 LOBYTE 是提取低字节的宏的信息,但我看到的是一些非常奇怪的东西。它看起来像为函数设置值 -_- 我不是专业的逆向工程师并且这样做,因为我没有其他选择了。
所以一些算法逐字节读取文件。某处确实如此
fread(&third_block_first_zero_byte, 1u, 1u, hd6_file_ptr);
然后再做
LOBYTE(third_block_first_zero_byte) = 0;
所以...它到底是做什么的?从单字节变量中提取低字节...哎哟...伤脑筋了
这两行代码没有关联。
fread(&third_block_first_zero_byte, 1u, 1u, hd6_file_ptr);
本例中的 fread 函数 returns 位于内存中的文件对象流中的单个元素('hd6_file_ptr' 是指向流的指针)。
LOBYTE(third_block_first_zero_byte) = 0;
上一行只是从当前存储在 'third_block_first_zero_byte' 变量中的值中检索低位字节,并将其重新分配为零值。
类似查询here
我读了一些关于 LOBYTE 是提取低字节的宏的信息,但我看到的是一些非常奇怪的东西。它看起来像为函数设置值 -_- 我不是专业的逆向工程师并且这样做,因为我没有其他选择了。
所以一些算法逐字节读取文件。某处确实如此
fread(&third_block_first_zero_byte, 1u, 1u, hd6_file_ptr);
然后再做
LOBYTE(third_block_first_zero_byte) = 0;
所以...它到底是做什么的?从单字节变量中提取低字节...哎哟...伤脑筋了
这两行代码没有关联。
fread(&third_block_first_zero_byte, 1u, 1u, hd6_file_ptr);
本例中的 fread 函数 returns 位于内存中的文件对象流中的单个元素('hd6_file_ptr' 是指向流的指针)。
LOBYTE(third_block_first_zero_byte) = 0;
上一行只是从当前存储在 'third_block_first_zero_byte' 变量中的值中检索低位字节,并将其重新分配为零值。
类似查询here