测试文件:https://www.wocloud.com.cn/webclient/share/sindex.action?id=i9K_Br6TgE7ZLB3oBGUcJmKcRy5TUdZ8U6_uiWwxDovNjPaT6IJAgRhtvqTOsW3w

1.删除多余窗口

1.1 找出多余窗口

将这个窗口删除,并找出Recode

和上一个分析的结构类似,都将结构体传入参数之后,间接调用。

两种方法找到需要的字符串

  1. 在查找所有参考文本字串之后,找到需要删除窗口所提示的字符换,
  2. 找到VB中的MSVBVM50.rtcMsgBox,也就找到了需要删除的窗口。

下面展示第二种方法:

找到对应的MsgBox窗口,向上查找,找到我们需要的字符串。

1.2 rent去除窗口调用函数

将显示信息这块看成一个函数,我们向上查找

00402C17   > \55            push ebp

替换为

retn 0x4

  

要根据传递给函数的参数大小调整栈(RETN XX)

1.3 保存之后,查看结果

2.找到注册码

2.1 找出输入提示字符串

接着查找所有参考文本字串,找到输入注册码时的提示信息

发现在提示注册码错误和正确的地方有共通之处:

都有一段比较字符串的strcmp函数的调用,进而猜测I'mlena151就是注册码

2.2 测试结果

最新文章

  1. UBI系统原理-中【转】
  2. struts2进阶篇(4)
  3. java课堂动手动脑博客
  4. Spring JdbcTemplate的queryForList(String sql , Class<T> elementType)易错使用--转载
  5. stl 容器
  6. WPF之外观模式
  7. python之3内置容器
  8. There is no result type defined for type 'json' mapped with name 'success'. Did you mean 'json'?
  9. SE 2014年5月6日
  10. Linux - SVN下载项目
  11. LINUX文档管理命令
  12. python2.x和python3.x的区别
  13. STL之queue
  14. Git初始化及配置
  15. hdu-6435
  16. WCF小问题总汇
  17. 腾讯云数据库团队:MySQL5.7 JSON实现简单介绍
  18. Array遍历的小技巧
  19. centos7 mysql 数据库备份与还原
  20. Java - 使可访问性最小化

热门文章

  1. python基础--2 字符串
  2. OGG复制进程延迟不断增长
  3. exec()和元类
  4. JLRoutes笔记
  5. 04 全局配置,java 编意默认版本,1.6.修改配置
  6. MySql不区分大小写。
  7. HTML基础入门学习
  8. execute、executeQuery和executeUpdate之间的区别 转
  9. js new date()方法移动端兼容
  10. NuGet-Doc:承载自己的 NuGet 源