由于IDA基础数据库的本质,你对反汇编代码所做的更改将迅速“扩散”到IDA的所有子窗口中,以使反汇编代码保持一致

说明

记住,IDA不提供撤销功能。在操纵数据库时,请一定记住这一点。你所能做的,就是经常保存数据库,并恢复到最近保存的数据库版本。

1.改名

多数情况下,要修改一个名称,只需单击你希望修改的名称(使其突出显示),并使用热键N打开更名对话框。另外,右击需要修改的名称,并在出现的上下文菜单中选择Rename选项,也可以更改名称

1.1.参数和局部变量

此类重命名只和当前函数相关,如果希望恢复某个变量的默认名称,打开更名对话框,在输入框中输入一个空白名称,IDA将为你生成默认的名称

1.2.已命名的位置

重命名一个已命名的位置或给一个未命名的位置取名,这个过程与修改栈变量的名称略有不同,如对函数名重命名

Local names(局部名称):
局部名称的作用域仅限于当前函数,两个不同的函数可能含有完全相同的局部名称,但一个函数不可能包含两个完全相同的局部名称。在函数边界以外的已命名的位置不能被指定为局部名称,这包括表示函数及全局变量的名称。局部名称最常用于为函数中的跳转目标提供符号名称,如那些与分支控制结构有关的名称。
简洁点,在函数内设置一个跳转标签:

Include in names list(包含在名称列表中):
选择这个选项将有一个名称被添加到名称窗口中,这样,当你需要返回该名称所在位置时,就更容易找到这个名称。默认情况下,自动生成的名称(哑名)不包含在名称窗口中,注意,如果选中了Local names,则会自动取消这项,加入后,可以在name window中找到你的自定义名称

1.3.寄存器名称

在函数内,IDA允许对寄存器进行重命名,如果一段代码不属于某个函数,那么,重命名这段代码中的寄存器是不可能的

2.注释

使用Edit▶Comments命令提供的选项,可以为反汇编代码清单中的任何一行代码添加注释。通过热键或上下文菜单,同样可以使用IDA的注释功能。

2.1.常规注释

常规注释位于汇编代码行的尾部,右击行右边缘(或冒号(:)快捷键),可打开“输入注释”对话框。
若在其中输入了多行注释,注释将跨越多行。
要编辑或删除一段注释,必须重新打开“输入注释”对话框。
默认情况下,常规注释以蓝色显示。
IDA本身就大量使用常规注释。在分析阶段,IDA插入常规注释说明为调用函数而压入的参数

2.2.可重复注释

可重复注释一旦输入,将会自动出现在反汇编窗口中的许多位置(分号热键),和常规注释非常相似
如果一个程序位置引用了另一个包含可重复注释的位置,则该注释会在第一个位置回显,默认情况下,回显的注释以灰色文本显示,从而将这些注释与其他注释区分开来
如果在一个显示可重复注释的位置添加一段常规注释,则可重复注释将被常规注释覆盖,该位置将仅显示常规注释

2.3.在前注释和在后注释

在前注释和在后注释是出现在指定的反汇编行之前或之后的全行注释,它们是IDA中仅有的不以分号为前缀的注释

2.4.函数注释

通过函数注释,你可以为函数的反汇编代码清单顶部显示的注释分组,要输入函数注释,首先应突出显示函数顶部的函数名称,然后再输入一段常规注释或可重复注释。可重复函数注释将在调用该函数的任何位置回显。

6.IDA-重命名、注释相关推荐

  1. 【Android 逆向】IDA 工具使用 ( 重命名函数 | 添加注释 | 添加标签 / 跳转标签 | 代码跳转前进 / 后退 )

    文章目录 一.重命名函数 二.添加注释 三.添加标签 / 跳转标签 四.代码跳转前进 / 后退 一.重命名函数 针对一个 匿名函数 , 在分析函数时 , 可以为匿名函数进行命名 ; 右键点击 函数名 ...

  2. ORACLE 授权 新增 修改 删除 注释 重命名 表字段 表

    1.增加新字段 alter table table_name add (name varchar(20) default '',age int default 18); 2.修改表字段 2.1字段属性 ...

  3. 数据库表(字段类型、约束、截断表、修改表字段、重命名表)

    字段类型: 在这里只列举一些常用的字段类型: 整数类型:int(Integer):普通大小的整数 小数类型: float(m,d):单精度浮点数,m表示数字长度,d表示小数位数,例如float(5,2 ...

  4. python重命名文件pycharm_Python中批量修改变量名太费劲?Pycharm中使用重命名一次搞定...

    标签:rename   current   变量   阅读   tor   小伙伴   search   其他   就是如果程序中有一个变量被用得比较多,但名字起得不是很好,导致其他阅读程序的人搞不清 ...

  5. 您如何重命名MongoDB数据库?

    我的MongoDB数据库名称中有一个错字,我想重命名该数据库. 我可以像这样复制和删除... db.copyDatabase('old_name', 'new_name'); use old_name ...

  6. iOS开发-项目的完整重命名方法,图文教程。

    前言:在IOS开发中,有时候想改一下项目的名字,都会遇到很多麻烦.直接改项目名吧,XCODE又不会帮你改所有的名字.总是有很多文件.文件夹或者是项目设置的项.而且都是不能随便改的,有时候改着改着,编译 ...

  7. 重命名Jakarta EE的Java EE规范

    现在该更改规范名称了-- 当我们首先将Java EE规范的API和TCK移到Jakarta EE旗帜下的Eclipse Foundation时 ,我们保留了规范的现有名称,并为保存其工件的开源项目采用 ...

  8. webstorm两个文件比对_webstorm怎么更改文件名称?或者是重命名

    在开发的过程中,我们一个项目中会有很多的文件,每个文件中也会有很多的层级关系,有时候新建一个文件的时候,一不下心就会出错,位置出错我们可以移动更换位置,名称命名错误,我们可以重命名,在这里教大家使用w ...

  9. iOS项目的完整重命名方法图文教程

    前言:在iOS开发中,有时候想改一下项目的名字,都会遇到很多麻烦.直接改项目名吧,XCODE又不会帮你改所有的名字.总是有很多文件.文件夹或者是项目设置的项.而且都是不能随便改的,有时候改着改着,编译 ...

  10. 一个简单的重命名,在git中也有这么多学问

    重命名如何在git中高效的完成呢? $ pwd$ ll$ cd git-rainbow/$ ll$ cd mtxcrm/$ ls -la 所有的工作先在工作区(或工作目录)里面进行操作,然后再加到暂存 ...

最新文章

  1. 通用权限管理模块系列——需求分析——列举需求
  2. 不删除文件,清空文件内容命令
  3. 生产者消费者问题——C++ windows版 多生产者多消费者的队列实现
  4. 软件工程师怎样减轻工作过程中遇到的压力
  5. 今天,开源中国出了一条广告史上最“正直”的广告
  6. MacOS 常用终端命令大全
  7. [论文泛读] Dynamic placement of virtual machines for managing sla violations (IM, 2007)
  8. 如何将win10的资源管理器指向“这台电脑”?
  9. Flyod和Warshall
  10. 计算机自带的画图软件在哪里,mac画图工具在哪里_mac自带画图工具怎么打开-win7之家...
  11. 论文阅读笔记:内卷involution《Involution: Inverting the Inherence of Convolution for Visual Recognition》
  12. c语言间接级别不同_间接寻址不同问题?求解决!
  13. Windows下Pidgin介绍/安装配置图文攻略
  14. c语言链表拆分,P2 拆分链表
  15. 美团外卖成立骑手服务部,联合全国2200家餐厅推出骑手专属折扣餐
  16. 如何用C++开发STM32?
  17. 泰勒级数为什么不可以展开?
  18. HashMap中hash(Object key)原理,为什么(hashcode >>> 16)。
  19. word 向程序发送命令时出现错误
  20. 深度学习与自然语言处理教程(3) - 神经网络与反向传播(NLP通关指南·完结)

热门文章

  1. 什么?你做的差异基因方法不合适?
  2. 免费Linux系统和生信宝典原创学习教程
  3. python的实例属性和静态属性_Python面向对象之静态属性、类方法与静态方法分析...
  4. vue router 的两种路由模式hash与history的区别
  5. 【九】Git 可视化GUI管理工具 - SourceTree
  6. python划分训练集和测试集_杨涛的Python机器学习3:单特征与多特征、训练集与测试集,杨桃...
  7. Qt笔记-使用正则表达式匹配URL及获取Get请求后面的参数(QRegExp)
  8. Java笔记-Spring Boot中Spring WS WS-Addressing中@Action实例
  9. Redis工作笔记-spring整合jedis
  10. Spring Boot笔记-对dto数据传输对象及物联网公司主创建主键的认识