如何使用 Python api 在 Binary ninja 中获取 `MediumLevelILVar` 类型变量引用?

问题描述 投票:0回答:1

我尝试使用二进制忍者来分析混淆的二进制函数。我想使用 python api 进行二进制忍者获取变量 var_3290 引用,如下所示:

我使用的api

get_var_uses
只能以
variable.Variable
类型接收,但是
var_3290
MediumLevelILVar
,调用这个api会出错!

get_var_uses
    var_data = var.to_BNVariable()
AttributeError: 'MediumLevelILVar' object has no attribute 'to_BNVariable'

我怎样才能像二进制忍者交叉引用行为一样?谢谢。

像上面一样获取

var_x3290
变量的交叉引用。

reverse-engineering
1个回答
0
投票

尝试使用

get_var_uses 
类型数据的
get_var_definitions
方法来使用
MediumLevelILVar
src
,如下所示:

    var=None
    if isinstance(state_var,MediumLevelILVar):
        var = state_var.src
    else:
        var = state_var

state_var 作为 MediumLevelILVar 类型数据。

© www.soinside.com 2019 - 2024. All rights reserved.