【问题标题】:How to find the offset value of @PAGE/@PAGEOFF如何找到@PAGE/@PAGEOFF 的偏移值
【发布时间】:2021-06-20 05:35:55
【问题描述】:

查看反汇编代码,我看到如下指令:

adrp x8,l066@PAGE
add x8,x8,l066@PAGEOFF

它们是在某处定义的偏移标签吗?以及如何找到它们的价值?

【问题讨论】:

标签: assembly llvm arm64


【解决方案1】:

@page@pageoff 是用于在链接时计算偏移量的汇编程序指令。 @page 采用与位置无关的符号 4k 页偏移量,并使用 PC 将其转换为绝对页地址。 @pageoff 给出符号所在页面的偏移量。它们一起能够以与位置无关的方式生成 64 位地址。

【讨论】:

  • 那么,是否可以通过 ida 或 hopper 找到它们?我的意思不是在运行时检查它们。
【解决方案2】:

我以前没有见过这种反汇编风格,但我会自动假设l066 是反汇编程序推断的标签,它还注释了适当的重定位as Margaret says。换句话说,它实际上是adrl x8, l066

【讨论】:

  • 那些是由otool -Vtdj -arch arm64生成的。
猜你喜欢
  • 2014-08-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-05
  • 1970-01-01
  • 2014-12-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多