[挖坟] 突破WINISO未注册时100M限制
突然发现很久很久以前写的东西,小小怀念一下,以及浸泡在看雪(www.pediy.com)里的日子,哈哈~
----------------------------------- 传送
----------------------------------- 2008年2月4日
把下载的文件.exe直接复制到程序目录下
运行WINISO,什么还没注册?
点 帮助 菜单,点 注册 项, 随便输个注册码
再次直接运行WINISO,OK,注册完毕!
WINISO 是一个ISO制作程序, 未注册的话不能保存大于100M的ISO.
怎么办呢, 于是想到了 UltrEdit 与 OllyICE
先用peid查看WINISO, 是UPX压缩过的程序
下个UPX程序,将WINISO解压
用OllyICE打开WINISO进行调试
从头到WINISO的第一个对话框出现, 记录最左边地址栏的地址
继续出现了注册提示窗口, 记录地址
最后便出现了主窗口, 当然是未注册的, 窗口的标题上有 "Buy Now" 和 "Unregistered Version"
先利用 字符串参考找到这两个字符串被调用的位置, 在附近找找, 有条件跳转(jnz)在代码上方, 直接改成 jmp 试试, 再次调试, 果然窗口的标题上的"Buy Now" 和 "Unregistered Version"消失了, 于是记录代码数据:
755766c7461020
755866c746104400
用UltrEdit打开WINISO,然后查找以上16位数据,把 75 改为 EB (jnz -> jmp),这样直接运行WINISO也不会有"Buy Now" 和 "Unregistered Version"了.
下面是解决第一个对话框,这个似乎不管有无注册都会跳出(我从网上直接用了一个注册码,注册后这个对话框还会出现, 注册后到注册表可以把注册信息抹去)
调用这个对话框的代码上面好像也有个跳转命令(jnz),改成jmp果然就好了,于是记录代码数据:
75136a4068
用UltrEdit打开WINISO,然后查找以上16位数据,把 75 改为 EB (jnz -> jmp),这样讨厌的对话框也不会有了.
下面就用同样的方法搞定注册提示对话框,代码数据:
752cc785b4fcffffec
用UltrEdit打开WINISO,然后查找以上16位数据,把 75 改为 EB (jnz -> jmp)
本以为万事完毕,但试一下200M的文件做ISO,可是提示没注册!
所以用OllyICE调试,找到了那个验证的地方,由于我不愿花太多时间(可我后来还是耐下心看了,附录会给出一些重要偏移地址),注册码演算直接跳过了,到了验证区
,原来这里有不少跳转,一个一个NOP一下,果然OK了,记录代码数据:
752c8a41
用UltrEdit打开WINISO,然后查找以上16位数据,把 75**(jnz **) 改为 9090(nop nop),再在代码向下找到:
7522 7518 750e 7505
通通改为 9090
再次直接运行WINISO,什么还没注册?
于是点 帮助 菜单,点 注册 项, 随便输个注册码
再次直接运行WINISO,OK,注册完毕!
下面再用UPX把WINISO压缩,这样可以减小体积(1.7M -> 400K)
附录:
1BAE6 读取 username 和 registration 的开始地址
1BC92 搜索黑名单的地址
注册码黑名单:
B9EDA3326B574719D67268E9339320519E80ACD5ECDFA87F
FF940B917E86F1272F03536F72DFA14FDE3A5E60A034ED32
2AB03C9D5CF0D96827908ABD67F0045411A889996010AE26
0B7C505D2BC69D6F44F17E7499FEE7D91B6B667A1E3AD93D
9E4FA00AB9651EFC4DF9A1C5E5452BBA3E965229C83691DF
2D56DC52FB47FDF46B1BE80E42396A443B6F09AFBF4C792E
866C50120D1C3918C9AE7EF6830D3E7F36C1ED51DFCA5D71
6B9958C813E8933CA078DACE1AFCF244F1566D1B991E9250
A13036EC2772DFE2CAC8ACC6DCD22F94208A4E27847F626C
524D48C7986F0FDCAB98CB9385CDA3B847C9CA7D0175A1BC
94FB2F0057AB446FC790B6A30ED5F01EC2F45ED1023322AC
273D005D796168A62943544D98F9B41726DDB84B7EEA32FC
7B6D6675EC9E72DFCAB6ABA13949A6ADB30AB87C14A21544
2E32F51401686E023CBE28035A02003914B58B45926451D1
671647DFC4CEA1B12932C2C7830B2E5BC645C60B3BFA885A
9083BEC803D0DCC7FAEB1ADA104CAEE8A99A04FB8DB626C9
789C6D9E001B0DD4BEC9E8E6FE453065D37884F29177A06C
B5663 开始验证的地址
[挖坟] 突破WINISO未注册时100M限制相关推荐
- 点星PBX(DotAsterisk)外线呼入到离线坐席(sip分机未注册)时,如何播放语音提示外线客户坐席不在线
1. 公司需求说明 公司部署的点星PBX(DotAsterisk)呼叫中心进行电话业务,一段时间后,运维人员提出了下面一个需求,需求内容如下. 客户公司话务员是轮班制,采用电脑SIP软电话坐席,坐席下 ...
- Ant Design Pro在使用TreeSelect树选择组件时,报错未注册
Ant Design Pro在使用树选择组件时,报错未注册 did you register the component correctly? 经过检查发现Ant Design Pro是按需引入的,需 ...
- 【板栗糖GIS】在使用EPS导入dwg时显示SSDWGX组件未注册该怎么办
在使用EPS导入dwg时显示SSDWGX组件未注册该怎么办 eps使用功能 文件-插入外部数据(.dwg,.dgn)会弹出SSDWGX组件未注册的窗口,那么该如何导入外部的dwg格式呢? 可以使用文件 ...
- Windows 8安装软件时遇到运行时错误‘339’ MSCOMCTL.ocx或其附件之一未注册
今天安装软件的时候出了这样的问题:运行时错误'339' MSCOMCTL.ocx或其附件之一未注册 于是到网上查找了一下,大家都说是缺少一个叫mscomctl32.ocx的东东,而且很多人都说用以下的 ...
- c#使用Flash控件AxShockwaveFlash时,报“未注册类”。
背景: 网上下载了一个小程序用到了Flash控件,运行的时候却报错,实例AxShockwaveFlash类的时候报"未注册类".于是上网查找资料,有人说要注册c盘下面flash安装 ...
- vue 调用共众url_vue单页面,在微信公众号支付中遇到的URL未注册BUG解决方法-Go语言中文社区...
今天在做微信公众号支付的时候,遇到一个bug,在当前支付页面点击支付,就会报错,提示当前页面的URL未注册.如下图: 但是,这个URL我们是在后台微信公众号配置了的,所以说不会出错. 但是我们刷新一次 ...
- Activity启动流程:Hook实现启动未注册Activity
Android中插件化的简单实现:启动未注册的Activity 前言 本文介绍在Android中启动未在AndroidManifest中注册的Activity的一个解决方案.主要需要掌握以下知识点: ...
- 5. OD-把限制的功能恢复,把阉割的功能添加(未注册版本,部分功能不可使用的修改)
导入后程序运行F9出现异常, 使用shift+F7/F8/F9来忽略程序异常 异常就是程序中的抛异常,比如除数不能为0,对系统有破坏,做异常处理. 或者 1. 在弹出程序错误时,提示功能未注册版本限制 ...
- 英国FCA将比特币ATM加入未注册加密业务名单
作为推动反洗钱的一部分,英国金融监管机构-英国金融行为监管局(FCA)将比特币ATM添加到未注册的加密业务清单中.在3月24日进行但于4月1日发表的演讲中,FCA执法和市场监督部门负责人Mark St ...
- 微信支付当前页面的URL未注册问题[单页面]
前言 微信支付时,当调用微信支付的时候,微信会判断当前页面和微信公众号后台设置的支付授权目录是否一致,他会把页面最后一次刷新的url作为判断依据(如果用户刷新了任何页面,这个页面就是支付页面),这个时 ...
最新文章
- Windows10下安装Anaconda3(附带python3.7.9)+Tensorflow2.0.0+Pycharm
- 20145309信息安全系统设计基础第3周学习总结
- 计算机硬件市场调查实验报告,计算机组装与维护实训报告范例.doc
- 引用 看下面图片是向左转还是向右转呢?
- 面试必备Linux基础知识
- datetime 日期_用Hamcrest验证DateTime和日期
- phpMyAdmin密码设置
- linux中iconv函数,Linux下编码转换(iconv函数族)
- 看,他们都转行做web前端工程师了
- Linux-Ubuntu安装 MySQL
- 未来已来!分布式数据库的“星辰大海”绝不仅限于替换!
- IntelliJ IDEA创建JavaWeb项目
- java gps_用Java解析GPS经纬度
- dep指定版本 go_golang 官方依赖管理工具 dep 使用和持续集成
- TS学习之错误一:ES5/ES3 中的异步函数或方法需要 “Promise“ 构造函数
- 《引力的动态理论》的解读-尼古拉·特斯拉
- python代码复制运行不了_pycharm 复制代码出现空格的解决方式
- 2022年测试工程师高频面试题及答案【python篇】
- 大公司,一般都怎么开会?
- 【IntelliJ IDEA】如何汉化成简体中文