DbgUiDebugActiveProcess是NTDLL的一个导出函数。我们在调用DebugActiveProcess这个win32API时,他的内部实现过程会涉及到DbgUiDebugActiveProcess。先看看软件调试这本书上的一段描述:

实际编程中,通常将一组功能相近的函数定义为重载函数。一组重载函数是以参数类型或参数个数加以区别的。函数的返回值对区别重载函数没有意义。每个重载函数可以有不同的返回类型。
下面列举三种情况下重载函数使用实例。
全局范围内定义重载函数:
#include "stdio.h"
#include "string.h"//全局范围内定义两个重载函数
void ShowMessage(const char* Text,const char* Caption)
...
看到这软件的作者在标题上写着欢迎大家破解,觉得很有意思,就下载下来看了看。
软件加的UPX壳,脱不脱没关系。我这就不脱了,直接调试。跟踪发现,软件利用一个标志位来判断软件是否注册:
ds:[004AFAC8]=00000000
当这个标志位为1时,则为注册状态。还有个标志是判断是否有注册文件的,有的话为1,没有为2。
ds:[0x4AD8D0]=00000001
这个注册文件只要在注册窗口任意输入32位注册码即可生成。
...
SRS HD Audio Lab是个很好用的电脑音效增效工具,我自己一直在用,XP下增强效果尤其给力^_
软件简介:
SRS HD Audio Lab offers the richest and most immersive audio experience in any listening environment using technologies from SRS Labs, the world leader in post-audio processing. It includes the popular SRS TruSurround® HD processing found in a variety of consumer electronics such as television sets, as well as SRS Circle Surround Headphone™ for amazing sound through headphones. SRS TruSurround HD can offer a rich immersive experience and virtual surround sound for your music, movies, and games over only 2 speakers. SRS CS Headphone uses SRS Circle Surround® decoding to deliver accurate virtual surround sound for movie and game content when users listen on headphones.
...
最近报了个驾校,再过几天要进行理论考试,就下了这么个软件……
软件用易语言写的,还没加壳……开OD调试了下,注册还是明码比较,关键代码:
00465B41 E8 890EFFFF call carV2010.004569CF
这个call时就是真假注册码在比较了。注册算法就在上面,有兴趣的可以分析分析!
我的注册信息:
eddy
...
Visual Basic 6开发的一个实验室管理程序。避免麻烦,文中部分字符用XXX或其他代替。
跟踪分析可知注册码的计算是由一个VC6写的XXX.dll文件来控制授权的。我们的目的就是分析这个dll的关键导出函数,自己编程来调用它,算出想要的注册码^_
一个是要看有几个参数传进去,各个参数的含义和类型,以及函数的返回值。参数的个数可以看函数代码返回时的一个值(红色部分),由这个堆栈平衡,初步知道参数个数为5个。
09B42EB9 5F pop edi
...
在百度VB贴吧里看到有人问,没事就看了看。首先拖到IDA里面看了下,四个导出函数:
InitFSDSystem 100011B0 1
KillFile 100010B0 2
LoadFileKillDriver 10001040 3
UnLoadMyDriver 10001090 4
...
备份!
Private Sub Command1_Click()
Dim i As Integer, Length As Integer, eax As Long, key As String, mcode As String
mcode = Trim(Text1)
Length = Len(mcode)
For i = 1 To Length
eax = Asc(Mid(mcode, i, 1))
eax = eax + &H239
...
很早以前XX的一个软件,一点记录。
用PEID先查下壳,Microsoft Visual C++ 6.0,无壳。省了很多体力^_
OD载入,ALT+E,发现有C:\WINDOWS\system32\mfc42.dll。说明是MFC的程序……
运行程序,输入Serial:A101-0033-0037-C6D2
Options:4B00-00FF-F963-791F
Name:Eddy
...
最近脱个简单的壳,还忙活了好一会,后来发现时附加数据的问题,顺便记录下,给用的着的人作为一些参考。
不明白附加数据是什么的,先Google下吧……
简单说就是查壳时会显示overlay!
ASPack 2.12 -> Alexey Solodovnikov [Overlay]
这种情况脱壳后需要把附加数据补到脱壳修复后的文件尾即可,有工具可以做这个活,当然手动在winhex中操作亦可。找附加数据位置就是最后一个区段完,然后一直到文件尾即为附加数据。
...
论坛里下载的一个小玩意儿,OD跟踪调试得到算法核心call,IDA中F5得到核心call的代码如下:
int __stdcall text_402D30(int a1, int a2)
{
signed int v2; // ebx@1
int v3; // ebp@1
...
网上有个企业票据管理系统(宇梵增值税发票打印)软件,清空数据时需要什么超级用户权限,看了下帮助也没有说;不清楚是不会用还是怎么回事,有个朋友需要,我简单看了下,信息如下:
用户名:admin
密码:admin123
目标程序是我自己用WinLicense 2.1.0.0加的一个VB程序,保护选项默认。刚开始很灵异,最后换了个OD脱壳才OK……
工具:原版英文OD+StrongOD
用到的脚本是:Themida + WinLicense 1.1.0.0 - 2.1.0.0 Dumper + IAT Repair + CodeEncrypt Repair v2.6.0
OD载入程序,跑脚本,等待……^_
...