SYMBIAN 平台的手机软件破解教程
2010-08-20 01:47:00 来源:WEB开发网用NOKIA和西门子以及MOTOROLA的drler很多,但是有没有想过自己动手来做一件事:自己xx软件!
做个教程,就算是抛砖引玉吧,欢迎大家来动手做,请不要PM相关xx的问题,教程如下以callcounter.v1.1.trial.sis软件为例子,自己多实践吧!
PC端软件:
IDA Pro 4.3
UltraEdit
设备:
一个7650或3650或是其他S60手机
红外或者蓝牙连接
OK,开始!先在手机上安装CallCounter v1.1试用版(请下载附件),寻找存在的时间或功能限制。发现程序从后台调入前台时,会弹出一个对话框说有20天试用期并有时间延时,提醒你注册该软件就可以去除这个延时。再多看看,似乎没有别的功能限制。好,运行SeleQ,到c:systema ppcallcounter下面找到.app文件,这是可执行文件,相当于PC中的.exe文件,通过红外或蓝牙传送到PC中,用IDA Pro打开。
确认一系列对话框后,在IDA View-A标签中就应该能看到程序的汇编代码了。不过对于这个软件,现在还看不到,你现在只能看到大量DCD 0x22004468模样的数据。。它是采用Thumb模式编译,一个命令占2个字节,IDA默认不能解码。在程序的开头处找到CODE32,点一下,然后按alt+g,弹出一个对话框Segment Register Value,在Value里面输入1,点OK。然后菜单项Options->General,点第二个标签Analysis,右下角有个按钮 Reanalyse program,点一下开始对代码进行重新分析。一会儿,汇编代码就出来了。一般情况下不能将所有代码完全分析,你就得手工逐个的右击DCD 0x...等数据,选择undefine,然后重新进行Reanalyse program的工作,直到你能看清楚自己所感兴趣的代码为止。累吧?呵呵。
现在看右边偏上的框Names window,这里有非常重要的字符串,你会发现aYouHave,aDayLeft,aRegisterCallCo等与注册有关的字符串。双击aYouHave,代码框会立即跳到字符串所在的地方:
.text:10007C30 aYouHave unicode 0, ,0 ; DATA XREF: .text:1000062C
右击参考连接DATA XREF,选择jump to cross reference,就能跳到调用这个字符串的代码,我们选择up方向的一个,又跳到了这里:
.text:1000062C off_1000062C DCD aYouHave ; DATA XREF: .text:10000602
再重复上面的步骤,jump to cross reference,跳到了真正调用字符串的代码:
.text:10000602 LDR R1, =aYouHave ; Load from Memory
更多精彩
赞助商链接