Wing IDE 4.1 Windows Crack 【续】

这篇文章是和上一篇文章紧密相连的,上一篇文章中提到关于授权信息的问题。终于在我的不断折腾之下现在这个鸟信息显示出来了(版本:wing ide 4.1.3-1 )。在使用的时候还是需要激活免费试用授权,在美页的文章中提到的方法不过是把程序比较的那个代码给改成了70,其实也是一个跳转,但是这个跳转在改完之后重新反编译pyo文件得到的代码是什么样子我也不知道。而后意外的把那段代码改错了一个字节,竟然程序还能跑,但是授权信息还是missing。作为一个半完美主义者这个东西是不能容忍的。嘎嘎。 smile

于是开始继续折腾这个鸟玩意儿,用文本编辑器直接打开看雪学院的那个文中提供的附件可以发现这个附件中的文件也是和授权信息相关的。同样用unpyc反编译文件可以看到下面的信息:

1
2
3
4
5
6
7
8
9
10
11
00002880 STR: '\x88\x00\x00i\x00\x00o\x08\x00\x01d\x01\x00Sn\x01\x00\x01\x88\x00\x00i\x01\x00\x83\x00\x00}\x01\x00|\x01\x00d\x02...' (BE 01 00 00 88 00 00 69 00 00 6F 08...)
00000000 88 - LOAD_DEREF 'self'
00000003 69 - LOAD_ATTR '_fExpiringLicenseCheck'
00000006 6F - JUMP_IF_FALSE -> 00000011
00000009 01 - POP_TOP
0000000A 64 - LOAD_CONST None
0000000D 53 - RETURN_VALUE
0000000E 6E - JUMP_FORWARD -> 00000012
00000011 01 - POP_TOP
00000012 88 - LOAD_DEREF 'self'
00000015 69 - LOAD_ATTR '_GetTermDaysLeft'

原来的这个函数太长了,这里只显示前面一点点,其实这个就是弹出授权只剩九天的那个提示窗口。 如果去掉那些恼人的提示信息,只需要让程序在 0000000D 53 – RETURN_VALUE一行直接返回即可。那么唯一需要做的就是把上面的 00000006 6F – JUMP_IF_FALSE -> 00000011一行代码nop掉。而所有的代码应该都是三个字节的,定位到二进制文件中的对应的位置如下所示:

上面的09其实就是python code中的nop,如果你连nop是虾米都不知道,那我也没办法了。照着改就行了。

上面提到的是wingctl.pyo修改方法,另外一个需要修改的文件还是abstract.pyo 对应的指令如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
code:
0000523E STR: 't\x00\x00d\x01\x00\x83\x01\x00|\x01\x00d\x02\x00<x6\x00t\x01\x00D].\x00}\x03\x00|\x01\x00i\x02\x00...' (2F 03 00 00 74 00 00 64 01 00 83 01...)
 
……省略部分代码……
 
000001BC 64 - LOAD_CONST 'Invalid license activation'
000001BF 83 - CALL_FUNCTION
000001C2 66 - BUILD_TUPLE
000001C5 53 - RETURN_VALUE
000001C6 6E - JUMP_FORWARD -> 000001CA
000001C9 01 - POP_TOP
000001CA 7C - LOAD_FAST 'self'
000001CD 69 - LOAD_ATTR '_GetTermDaysLeft'
000001D0 7C - LOAD_FAST 'lic'
000001D3 83 - CALL_FUNCTION
000001D6 7D - STORE_FAST 'daysleft'
000001D9 7C - LOAD_FAST 'daysleft'
000001DC 64 - LOAD_CONST -1
000001DF 6A - COMPARE_OP "=="
000001E2 6F - JUMP_IF_FALSE -> 000001F9

这个要想过期仍然能用,只需要将 000001E2 6F – JUMP_IF_FALSE -> 000001F9 一行跳转到过期的代码nop掉即可。所以其实爆破还是很简单滴。对应二进制文件修改内容如下:

既然说的明白了就不提供修改之后的文件了,把这两个文件修改之后重新压缩到src.zip文件中,重启wing即可。嘎嘎,其实本来我也没想提供破解后的文件滴。嘻嘻。 smile

这样看起来就比较好啦,至少比那个missing看起来好多啦。嘎嘎。

其实python的程序破解和普通的pe破解是异曲同工的,只是处理的指令不同而已。嘎嘎。不过那个bytecode让我找了好久啊,不过最后还是让我找到了嘎嘎。nop是09.嘻嘻 :8

0000523E STR: ‘t\x00\x00d\x01\x00\x83\x01\x00|\x01\x00d\x02\x00

You may also like

发表评论

电子邮件地址不会被公开。 必填项已用*标注