160个CrackMe_逆向 2/160
作者:互联网
文件名:Afkayas.1
一、软件信息
属于name,serial类的软件,有注册算法
错误提示
二、分析
这种软件一般第一步查看字符串,在ASCII中没有找到相应字符串,在UNICODE中找到了相应的字符串
双击跟进,到代码的位置,依旧是在函数最前面下断点,输入之后点击OK
计算name的长度
将得到的长度*0x17CFB,值保存在EDI中
取name的第一个字节,函数运行完之后把这个字符转换成了对应的ASCII码
把ASCII的值跟之前乘法运算得到的值相加,后面还有一个验证是否溢出的判断,如果结果有溢出,直接跳到ErrorOverFolw错误提示处。
vbaStrI4函数,将数值转换成字符串,传参的值为:name的长度*0x17CFB+name首字节的ASCII值,转换之后为UNICODE "487704"
字符串拼接
拼接完成后
字符串比较
三、注册码算法
vbaStrCat("AKA-",vbaStrI4(name长度*0x17FCB+name首字节的ASCII值)),name要求为数字开头,后面的字符没有要求
标签:逆向,vbaStrI4,name,160,CrackMe,字符串,长度,ASCII,字节 来源: https://blog.csdn.net/CMC_HHM/article/details/90045469