一个KeyGenMe有空来看看?
本帖最后由 NuclearEngine 于 2020-4-4 19:14 编辑一个keygenme
上次那个由于编译器错误优化导致部分东西丢掉了,立刻被gg了,再来一个
一样的VMP3.4虚机+码执行器
逆向下算法呗 链接
https://www.lanzouj.com/iazty0d 灌水 灌水 水满了算 灌水 灌水 水满了算 灌水 灌水 水满了算 第一帖旧版本的CM发我下;没来得及下。
另外兄弟你这有点猛。
本帖最后由 NuclearEngine 于 2020-4-6 11:02 编辑
没人看出来啥了吗,算法不难的呀
vs2010mfc ida可以反的 本帖最后由 周易 于 2020-4-12 08:43 编辑
NuclearEngine 发表于 2020-4-6 11:00
没人看出来啥了吗,算法不难的呀
vs2010mfc ida可以反的
没仔细看。
首先是`ChrMap`,如图。
!(https://i.loli.net/2020/04/11/eJaYlE4DAsSBF3P.png)
结果分两部分,**字符加密部分**和**长度加密部分**。两部分长度都和输入长度相同。
## KeyGenerator ##
```
#include <stdio.h>
char ChrMap[] = "?MRSPQVWXUABCYAFGDEJKHIJOPMRSPQVWXUABCYAFGDEJKHIJOPMRSPQVWXUABCYAFGDEJKHIJOPMRSPQVWXUABCYAFGDEJKHIJOPMRSPQVWXUABCYAFGDEJKHIJOFKL";
char buf;
int main(int argc, char *argv[])
{
scanf("%[^\n]", buf);
int iStrLen;
for(iStrLen = 0; buf != '\0'; iStrLen++)
{
printf("%c", ChrMap]);
}
for(int iPos = 0; iPos < iStrLen; iPos++)
{
printf("%c", ChrMap);
}
printf("\n");
return 0;
}
```
## 后记 ##
另外你这个好像有bug,取值会超过范围的。**KeyGenerator我大概写的,也会超过范围,并且还用了scanf,很不安全,执行请谨慎!**字符串长度超过20以后,多半要崩溃。
不是我说,你这个“UPX”,你确定IDA能直接分析吗…… 周易 发表于 2020-4-11 18:14
没仔细看。
首先是`ChrMap`,如图。
!()
emmmmm你这个注册机是数学方法算来的???怎么跟我生成码的算法那么不一样呢 本帖最后由 周易 于 2020-6-9 22:32 编辑
内容有误,已删除。
页:
[1]