DBG_ARMEABI_LIBS := ./libs/armeabiDBG_ARMEABI_OBJ := ./obj/local/armeabiDBG_MOUDLE_NAME...
1. 创建项目。 进入工程 目录,打开命令行输入命令G:\adt-bundle-windows-x86_64-20140702\sdk\tools\android creat...
目录 AAPT解释,作用 AAPT基本命令 AAPT编译资源源码解析 AAPT打包和系统不一致的资源ID AAPT是什么 AAPT - Android Asset Packa...
未启用PAE 表项 启用PAE 表项 访问cr4寄存器, __asm { _emit 0x0F _emit 0x20 _emit 0xE0 mov regCR4,eax }
如何获得0环执行权限 在3环下执行sgdt会获得假的gdt地址,如何获得0环的执行权限是一个需要考虑的问题。 操作系统为了识别未知的硬件,采用了硬件驱动作为接口,具体关系如下...
转眼来到科锐学习已经超过一年的时间了,眼看三阶段已经进入尾声,内核的学习也快要结束,记录一下笔记和心得,也给刚接触的朋友做一个参考。当然,学习新知识最好的办法就是带着目的来学...
杂项 在c++中,使用子类指针表示父类,不强转是编译不过的。 构造和析构中不要调用虚函数,因为如果产生了多态,构造调到子类的方法,子类还没有初始化;析构调了子类虚函数,子类已...
杂项 多次创建相同的类会产生类似于引用计数的代码从-1开始,每构造一个相同对象加1,每析构一个相同对象减1,据说是开发编译器的工程师测试使用,不应该在发布版中出现,没什么用可...
构造。析构函数的出现时机 对象生成时会自动调用构造函数,但由于不同作用域的对象生命周期不同,构造函数出现的时机也不同,那么只要知道了对象的生命周期,便可以推断出构造函数的调用...
1.识别构造 1. 构造函数优先调用 2. ecx传参,且函数内部会将ecx给this赋值(this可能是一块内存空间,也可能是寄存器变量)且返回this指针 3. 可以点击...
函数 函数的重点是识别调用约定、参数类型和返回值类型 调用约定: cdecl调用方平栈 stdcall被调用方平栈 fastcall被调用方平栈edx, ecx 寄存器传第1...
DEBUG版本下的三种循环表现形式 do ... while 在汇编中表现的形式和if十分相似,不同的地方在于if是一个向下跳的结构,do...while是一个向上跳的过程。...
第一种情况:分支小于4个 生成引导性的跳转表 区分default和 switch end : 排除掉代码外提优化后,找一个break的点看跳的地方是否一样。 定式: 多个je...
分析文档写法 描述行为:软件干了什么,用文字表述,可以配上流程图,重要的部分详细分析,调用重要的API给予描述,写清楚函数资料,未看到使用的参数可以写未知,参考的资料最后要附...
除数位-2的幂 和除数是2的幂一样,但是最后多一个neg取反定式: cdqand edx, immAadd eax, immBneg eax 还原: 和之前的还原一样,最后加...
代码分析:分段,以块为单位看代码,逐个击破 流水线优化:在不影响结果的前提下,排列指令顺序,提高并行程度 除法 变化一 如果除数是变量,只能使用除法指令,有符号是idiv,无...
脱壳常用分析手法 首先从节表开始分析,一般压缩壳会有占位的节,文件映射一般为0,或者文件占位和内存占位相差比较大。 想要找到并分析解压缩算法,可以在写入数据的节区内下内存写入...