码迷,mamicode.com
首页 >  
搜索关键字:ida    ( 2304个结果
IDA配套真机ROM修改教程
模拟器调试的缺点: 1、android自带emulator,基于ARM架构,缺点启动慢,IDA附加经常下不了断点,权限不够等 2、droid4x(中文名海马玩),基于ARM架构,缺点同上 3、Genymotion,基于X86架构,启动快,缺点对于不...
分类:其他好文   时间:2015-08-05 10:52:46    阅读次数:536
11212 - Editing a Book(IDA*算法)
又一道迭代加深搜索,从小到大枚举上限 。   关键的剪枝部分是写出启发函数,这个比较难。。 不过每次剪切后,不正确的数字个数最多减三还是很好理解的,因为我们算不正确数字个数的方法是看当前数字+1是不是等于下一个数字 。 所以每次剪切最多只有3个数字的后继数字发生了改变。  那么 剪枝条件就显而易见了 。 代码如下: #include using namespace std; const in...
分类:编程语言   时间:2015-08-05 10:31:49    阅读次数:156
11214 - Guarding the Chessboard(暴力搜索)
IDA*算法, 从小到大枚举深度上限,不过该题是有深度上限的,题目中的第一个样例表明:最多需要5个皇后就可以覆盖整个棋盘 。  利用紫书上的技巧,我们可以快速的判断任意两个棋子是不是在同一行、同一列、同一对角线 (详情见紫书P193那两个图)。  这样之后暴力搜索就可以了 。 每一层需要O(nm)的复杂度,但是实际上并不需要那么大的复杂度 。和八皇后问题类似 , 当前行之前的行已经放置了皇后,...
分类:其他好文   时间:2015-08-05 08:57:48    阅读次数:194
12558 - Egyptian Fractions (HARD version)(IDA*算法)
IDA*算法,迭代加深搜索和A*算法的结合 。 迭代加深搜索适用于那些没有明显深度上限的题目,将深度从小到大枚举,直到找到最优解 ,减小了深搜的盲目性 。 A*算法需要一个乐观估价函数,在这个函数里寻找一个代价最小的点去搜索,所以时间复杂度都浪费在这个上面了 。 其实我照着紫书上巧的,感觉很容易,实际上其中的算法思想是要静下心来仔细研究的,练ACM这么久了,深深感到这个竞赛是那么的迷人,又是...
分类:编程语言   时间:2015-08-04 21:06:59    阅读次数:163
IDA调试.init_array和JNI_OnLoad
我们知道so文件在被加载的时候会首先执行.init_array中的函数,然后再执行JNI_OnLoad()函数。JNI_Onload()函数因为有符号表所以非常容易找到,但是.init_array里的函数需要自己去找一下。首先打开view ->Open subviews->Segments。然后点击...
分类:其他好文   时间:2015-08-04 20:48:17    阅读次数:184
IDA还原JNI函数方法名
在android调试中,你会经常见到这种类型的函数:首先是一个指针加上一个数字,比如v3+676。然后将这个地址作为一个方法指针进行方法调用,并且第一个参数就是指针自己,比如(v3+676)(v3…)。这实际上就是我们在JNI里经常用到的JNIEnv方法。因为Ida并不会自动的对这些方法进行识别,所...
分类:其他好文   时间:2015-08-04 20:38:29    阅读次数:167
Ida双开定位
Ida双开定位的意思是先用ida静态分析so文件,然后再开一个ida动态调试so文件。因为在动态调试中ida并不会对整个动态加载的so文件进行详细的分析,所以很多函数并无法识别出来。比如静态分析中有很多的sub_XXXX函数:但动态调试中的ida是没有这些信息的。所以我们需要双开ida,然后通过id...
分类:其他好文   时间:2015-08-04 20:37:50    阅读次数:135
Function Rewrite函数重写
有时我们想要将app中的某个函数的逻辑提取出来,用gcc重新编译一个可执行文件,比如我们想要写一个注册机,就需要把app生成key的逻辑提取出来。但是ida ”F5”过后的c语言直接编译经常会有很多错误,比如未定义的宏,未定义的声明等。这是因为这些宏都在ida的一个头文件里。里面定义了所有ida自定...
分类:其他好文   时间:2015-08-04 20:36:36    阅读次数:761
【Reverse】level2_very_success writeup
因为题目还可以做所以不放比赛名称,做个备忘吧~首先上IDA,前面401000处第一条指令跳过,修复栈平衡。然后发现验证的函数如下,可以看出这里主要是要逆算法了。当时室友也在做这题,晚了10分钟解出来,卡在我分析的地方,以后一定记住所见即所得。把算法捋一下,同时用ollydbg跑,即可看出算法的大致端...
分类:其他好文   时间:2015-07-30 07:03:07    阅读次数:201
IDA+VMWARE 调试 X86 版本 Android SO 最快的android so 调试方法
1. 首先,在VMWARE上安装 android 系统 2. 安装完成后 安装APK程序, 3. 启动APK程序 4. 启动andriod上的terminal 然后su 到root 5. 用ps命令查看进程要调试的APK进程ID 6.在Andriod 上启动gdbserver 并attach 到要调试的进程上     具体命令为 gdbserver 0.0.0.0:12345 --at...
分类:移动开发   时间:2015-07-17 10:10:37    阅读次数:468
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!