环境
Windows xp sp3

工具
exeinfope
ollydbg

查壳
无壳的MFC程序

测试

字符串搜索:

004014F5  |.  E8 AA030000   call <jmp.&MFC42.#CWnd::GetWindowTextLengthA_>
004014FA  |.  8945 EC       mov [local.5],eax
004014FD  |.  837D EC 05    cmp [local.5],0x5                             ;  Name要大于5,不然就显示错误
00401501  |.  7F 05         jg Xcosh_3.00401508
00401503  |.  E9 BB000000   jmp cosh_3.004015C3
00401508  |>  8B4D E0       mov ecx,[local.8]
0040150B  |.  83C1 60       add ecx,0x60
0040150E  |.  E8 91030000   call <jmp.&MFC42.#CWnd::GetWindowTextLengthA_>
00401513  |.  8945 E8       mov [local.6],eax
00401516  |.  837D E8 05    cmp [local.6],0x5
0040151A  |.  7F 05         jg Xcosh_3.00401521                           ;  Serail也要大于5
0040151C  |.  E9 A2000000   jmp cosh_3.004015C3
00401521  |>  8B45 E0       mov eax,[local.8]
00401524  |.  05 E0000000   add eax,0xE0
00401529  |.  50            push eax
0040152A  |.  8B4D E0       mov ecx,[local.8]
0040152D  |.  81C1 A0000000 add ecx,0xA0
00401533  |.  E8 66030000   call <jmp.&MFC42.#CWnd::GetWindowTextA_3874>  ;  获取Name
00401538  |.  8B4D E0       mov ecx,[local.8]
0040153B  |.  81C1 E4000000 add ecx,0xE4
00401541  |.  51            push ecx
00401542  |.  8B4D E0       mov ecx,[local.8]
00401545  |.  83C1 60       add ecx,0x60
00401548  |.  E8 51030000   call <jmp.&MFC42.#CWnd::GetWindowTextA_3874>  ;  获取Serial
0040154D  |.  8B55 E0       mov edx,[local.8]
00401550  |.  81C2 E0000000 add edx,0xE0
00401556  |.  52            push edx
00401557  |.  8D4D E4       lea ecx,[local.7]
0040155A  |.  E8 39030000   call <jmp.&MFC42.#CString::operator=_858>
0040155F  |.  8B45 E0       mov eax,[local.8]
00401562  |.  05 E4000000   add eax,0xE4
00401567  |.  50            push eax
00401568  |.  8D4D F0       lea ecx,[local.4]
0040156B  |.  E8 28030000   call <jmp.&MFC42.#CString::operator=_858>
00401570  |.  33C0          xor eax,eax
00401572  |.  33DB          xor ebx,ebx
00401574  |.  33C9          xor ecx,ecx
00401576  |.  B9 01000000   mov ecx,0x1
0040157B  |.  33D2          xor edx,edx
0040157D  |.  8B45 E4       mov eax,[local.7]                             ;  name
00401580  |>  8A18          /mov bl,byte ptr ds:[eax]
00401582  |.  32D9          |xor bl,cl
00401584  |.  8818          |mov byte ptr ds:[eax],bl
00401586  |.  41            |inc ecx
00401587  |.  40            |inc eax
00401588  |.  8038 00       |cmp byte ptr ds:[eax],0x0
0040158B  |.^ 75 F3         \jnz Xcosh_3.00401580
0040158D  |.  33C0          xor eax,eax
0040158F  |.  33DB          xor ebx,ebx
00401591  |.  33C9          xor ecx,ecx
00401593  |.  B9 0A000000   mov ecx,0xA
00401598  |.  33D2          xor edx,edx
0040159A  |.  8B45 F0       mov eax,[local.4]                             ;  serial
0040159D  |>  8A18          /mov bl,byte ptr ds:[eax]
0040159F  |.  32D9          |xor bl,cl
004015A1  |.  8818          |mov byte ptr ds:[eax],bl
004015A3  |.  41            |inc ecx
004015A4  |.  40            |inc eax
004015A5  |.  8038 00       |cmp byte ptr ds:[eax],0x0
004015A8  |.^ 75 F3         \jnz Xcosh_3.0040159D
004015AA  |.  8B45 E4       mov eax,[local.7]
004015AD  |.  8B55 F0       mov edx,[local.4]                             ;  比较计算后的Name和Serial是否相同
004015B0  |>  33C9          /xor ecx,ecx
004015B2  |.  8A18          |mov bl,byte ptr ds:[eax]
004015B4  |.  8A0A          |mov cl,byte ptr ds:[edx]
004015B6  |.  3AD9          |cmp bl,cl
004015B8  |.  75 09         |jnz Xcosh_3.004015C3
004015BA  |.  40            |inc eax
004015BB  |.  42            |inc edx
004015BC  |.  8038 00       |cmp byte ptr ds:[eax],0x0
004015BF  |.^ 75 EF         \jnz Xcosh_3.004015B0
004015C1  |.  EB 16         jmp Xcosh_3.004015D9
004015C3  |>  6A 00         push 0x0
004015C5  |.  68 6C304000   push cosh_3.0040306C                          ;  ASCII "ERROR"
004015CA  |.  68 40304000   push cosh_3.00403040                          ;  ASCII "One of the Details you entered was wrong"
004015CF  |.  8B4D E0       mov ecx,[local.8]
004015D2  |.  E8 BB020000   call <jmp.&MFC42.#CWnd::MessageBoxA_4224>
004015D7  |.  EB 14         jmp Xcosh_3.004015ED
004015D9  |>  6A 00         push 0x0
004015DB  |.  68 34304000   push cosh_3.00403034                          ;  ASCII "YOU DID IT"
004015E0  |.  68 20304000   push cosh_3.00403020                          ;  ASCII "Well done,Cracker"

前两个函数用来确定Name和Serial的长度要大于5,然后取得Name的每个字符,分别于字符的位置异或。
Serial也是取每个字符,分别与每个字符的位置加0x9异或,比较两个字符串的异或结果是否相同,相同就显示正确的消息框,否则显示错误的消息框。

可以简单写出注册机:

    char Name[50];scanf("%s",Name);for(int i=0;i<strlen(Name);i++){printf("%c",Name[i]^(1+i)^(10+i));}

160 - 29 cosh.3相关推荐

  1. 160 - 28 CoSH.2

    环境 Windows xp sp3 工具 exeinfope ollydbg 查壳 无壳的MFC程序 测试 输入 Nmae:123456 Serial:12345 点击"CHECK" ...

  2. 160 - 27 Cosh.1

    环境 Windows XP sp3 工具 exeinfope ollydbg 查壳 无壳的MFC程序 测试 弹出这个: 是一个CD-CHECK保护的程序. 字符串搜索,一下子就能来到这里: 00401 ...

  3. adminlte+layui框架搭建3 - layui弹出层

    在amdinlte首页引入layui.js 和layui.css后添加代码 <script>layui.use(['layer'], function() {var layer =layu ...

  4. outlook邮箱邮件大小限制_设置Office 365邮箱默认发送和接收邮件大小限制

    Office 365默认的 35MB 的邮件大小限制.Office 365 最大是支持 150MB 的邮件体积的. 我们只需用 Windows Powershell 连接 Office 365 ,然后 ...

  5. 基于超大规模集群的本地存储系统优化

    关注获得更多内容 精彩预告:第八届数据技术嘉年华大会将于2018年11月16日~17日在北京市朝阳区东三环中路61号富力万丽酒店盛大开启.本次大会邀请互联网领先企业的数据库专家,国产数据库的领军人物, ...

  6. 从入门到入土(九)手摸手教你搭建RocketMQ双主双从同步集群,不信学不会!...

    精彩推荐 一百期Java面试题汇总 SpringBoot内容聚合 IntelliJ IDEA内容聚合 Mybatis内容聚合 接上一篇:从入门到入土(八)RocketMQ的Consumer是如何做的负 ...

  7. 哥德巴赫猜想用计算机证明,用计算机证明有限数哥德巴赫猜想成立:运行结果...

    运行结果: 8 = 3 + 5 10 = 3 + 7 12 = 5 + 7 14 = 3 + 11 16 = 3 + 13 16 = 5 + 11 18 = 5 + 13 18 = 7 + 11 20 ...

  8. OpenCV图像特征SIFT

    文章目录 图像尺度空间 多分辨率金字塔 多分辨率金字塔DOG DoG空间极值检测 关键点的精确定位 消除边界响应 SIFT算法特征点 特征点的主方向 生成特征描述 OpenCV中SIFT算法的使用 图 ...

  9. 一文搞定Centos7.x安装ELK的7.6.2版本以及Cerebro集群监控

    编程界的小学生 一.Centos7安装Elasticsearch7.6.2 1.下载 2.安装 3.进行配置 3.1.修改elasticsearch.yml 3.2.修改jvm参数 3.3.修改sys ...

最新文章

  1. Linux内核网络栈1.2.13-socket.c函数概述
  2. 自己动手实现OpenGL之glViewPort(一)
  3. 解决异方差问题--加权最小二乘法
  4. java设计前期工作基础和存在的困难_Java秒杀系统实战系列-基于Redisson的分布式锁优化秒杀逻辑...
  5. 2019蓝桥杯省赛b组
  6. shell 命令返回值判断
  7. 软件测试常见的用例设计方法
  8. excel手机版_一秒用手机找回被误删的Excel文件,学会这招,再不怕文件丢失了...
  9. java mail pom_集成JavaMail
  10. 生物信息学:根据PDB名称、爬虫PDB数据库的信息、保存到Excel里
  11. python 操作微信小程序数据库 实现批量修改
  12. 无人机集群通信网络拓扑重构及关键技术研究∗
  13. 浏览器发送POST请求
  14. CSDN 图片加载不出来
  15. 如何删除计算机guest用户,win7如何删掉Guest账户?win7删除Guest账户方法
  16. 周鸿祎:360 基本不触碰用户数据;苹果与亚马逊被指控合谋推高 iPhone 等产品价格|极客头条
  17. python374安装教程_Centos7.6安装工具(5)--编译安装python374
  18. 1752年9月-----消失的那11天
  19. 抖音最后一面,问我Java 是如何实现线程间通信的?
  20. java和基岩版凋零打法,六种凋零打法介绍 凋零还可以这么打

热门文章

  1. 中科软测试面试题2019_2019国考成绩今日是否会发布,笔试120能进面不?
  2. 7个顶级资源网站,不知道就很可惜
  3. EditThisCookie使用
  4. 贝塞尔曲线理解与应用
  5. 微信小程序APP(商超营销类)经验总结
  6. 转载 300年前的黑色“巫女”
  7. SSH登录太慢(等很久才提示输入密码)的问题
  8. 在java web工程中jsp页面中使用kindeditor
  9. MySQL学习笔记1(增删查改)
  10. ASP.NET Core2.0 环境下MVC模式的支付宝PC网站支付接口-沙箱环境开发测试