首页
社区
课程
招聘
[求助]如何通过写IDA插件获取库函数信息
发表于: 2010-4-13 17:11 4757

[求助]如何通过写IDA插件获取库函数信息

2010-4-13 17:11
4757
如何提取IDA已经识别好的库函数信息?
IDA的sdk里有相应的接口吗?

如果不通过IDA的sdk,有没有什么工具提供接口将提取出来的信息存放在string值里面的?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 254
活跃值: (15)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
库函数与其它诸如sub_401000这样的函数是一样的,
都是用func_t类(位于IDA SDK的funcs.hpp)表示相关函数信息,

其中func_t类中,第一个公共成员就表示函数的标志。
预定义符FUNC_LIB,标明函数是否为库函数。

class func_t : public area_t
{
public:
  ushort flags;
#define FUNC_NORET      0x00000001     // Function doesn't return
#define FUNC_FAR        0x00000002     // Far function
#define FUNC_LIB        0x00000004     // Library function
     ……其它略
};

用下面代码测试库函数
    ea_t ea;
    ea = get_screen_ea();
   
    func_t *Function = get_func(ea);

        // 判断是否为库函数
        if(FUNC_LIB & Function->flags)
        {
                msg("it's libary function\n");
        }
        else{
                msg("it's not libary function\n");
        }

接着就可以用Alt+P快键打开函数属性,并参考其中的Library func一项。如图
上传的附件:
2010-5-7 16:46
0
游客
登录 | 注册 方可回帖
返回
//