吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2743|回复: 7
收起左侧

[求助] 【U盘自动复制工具】追码算法讨论

[复制链接]
billy74 发表于 2020-11-26 14:14
首先感谢大佬dlweixiu 发表的一个帖子 https://www.52pojie.cn/thread-553308-1-1.html
我自己也是个新手,就下载软件跟视频跟着做了,新版1.71也是可以用这个方法破解的,但是我想深入一下去追码,探究他的算法的时候遇到问题,发上来跟大家讨论一下

这个软件虽然很小,但是很有意思
1.带重启验证 (主要验证位置是C:\Windows\AutoUCopy.ini里的key)
2.注册只验证部分注册码
3.重启验证时验证固定4位置的注册码 算法不同
4.注册码长度固定为12位

所以想一次追出完整注册码很难。
我只解决了重启验证的那4位,补齐12位是可以过重启验证的,但是点击注册按钮时候提示注册码不对
00496CE1  |.  E8 7A120000   call U盘自动?00497F60                       ;  关键CALL


在进去看了下 主要的算法如下:
[Asm] 纯文本查看 复制代码
00403238  /$  53            push ebx

00403239  |.  56            push esi                                 ;  U盘自动?004473D4

0040323A  |.  57            push edi

0040323B  |.  89C6          mov esi,eax

0040323D  |.  50            push eax

0040323E  |.  85C0          test eax,eax

00403240  |.  74 6C         je short U盘自动?004032AE

00403242  |.  31C0          xor eax,eax

00403244  |.  31DB          xor ebx,ebx

00403246  |.  BF CCCCCC0C   mov edi,0xCCCCCCC

0040324B  |>  8A1E          /mov bl,byte ptr ds:[esi]                ;  Case 20 (' ') of switch 0040324E

0040324D  |.  46            |inc esi                                 ;  U盘自动?004473D4

0040324E  |.  80FB 20       |cmp bl,0x20                             ;  Switch (cases 20..2D)

00403251  |.^ 74 F8         \je short U盘自动?0040324B

00403253  |.  B5 00         mov ch,0x0

00403255  |.  80FB 2D       cmp bl,0x2D

00403258  |.  74 62         je short U盘自动?004032BC

0040325A  |.  80FB 2B       cmp bl,0x2B

0040325D  |.  74 5F         je short U盘自动?004032BE

0040325F  |>  80FB 24       cmp bl,0x24                              ;  Switch (cases 0..78)

00403262  |.  74 5F         je short U盘自动?004032C3

00403264  |.  80FB 78       cmp bl,0x78

00403267  |.  74 5A         je short U盘自动?004032C3

00403269  |.  80FB 58       cmp bl,0x58

0040326C  |.  74 55         je short U盘自动?004032C3

0040326E  |.  80FB 30       cmp bl,0x30

00403271  |.  75 13         jnz short U盘自动?00403286

00403273  |.  8A1E          mov bl,byte ptr ds:[esi]                 ;  Case 30 ('0') of switch 0040325F

00403275  |.  46            inc esi                                  ;  U盘自动?004473D4

00403276  |.  80FB 78       cmp bl,0x78

00403279  |.  74 48         je short U盘自动?004032C3

0040327B  |.  80FB 58       cmp bl,0x58

0040327E  |.  74 43         je short U盘自动?004032C3

00403280  |.  84DB          test bl,bl

00403282  |.  74 20         je short U盘自动?004032A4

00403284  |.  EB 04         jmp short U盘自动?0040328A

00403286  |>  84DB          test bl,bl

00403288  |.  74 2D         je short U盘自动?004032B7

0040328A  |>  80EB 30       /sub bl,0x30                             ;  Default case of switch 0040325F

0040328D  |.  80FB 09       |cmp bl,0x9

00403290  |.  77 25         |ja short U盘自动?004032B7

00403292  |.  39F8          |cmp eax,edi

00403294  |.  77 21         |ja short U盘自动?004032B7

00403296  |.  8D0480        |lea eax,dword ptr ds:[eax+eax*4]

00403299  |.  01C0          |add eax,eax

0040329B  |.  01D8          |add eax,ebx

0040329D  |.  8A1E          |mov bl,byte ptr ds:[esi]

0040329F  |.  46            |inc esi                                 ;  U盘自动?004473D4

004032A0  |.  84DB          |test bl,bl

004032A2  |.^ 75 E6         \jnz short U盘自动?0040328A

004032A4  |>  FECD          dec ch

004032A6  |.  74 09         je short U盘自动?004032B1

004032A8  |.  85C0          test eax,eax

004032AA  |.  7D 54         jge short U盘自动?00403300

004032AC  |.  EB 09         jmp short U盘自动?004032B7

004032AE  |>  46            inc esi                                  ;  U盘自动?004473D4

004032AF  |.  EB 06         jmp short U盘自动?004032B7

004032B1  |>  F7D8          neg eax

004032B3  |.  7E 4B         jle short U盘自动?00403300

004032B5  |.  78 49         js short U盘自动?00403300

004032B7  |>  5B            pop ebx                                  ;  U盘自动?00408E1C; Default case of switch 004032D7

004032B8  |.  29DE          sub esi,ebx

004032BA  |.  EB 47         jmp short U盘自动?00403303

004032BC  |>  FEC5          inc ch                                   ;  Case 2D ('-') of switch 0040324E

004032BE  |>  8A1E          mov bl,byte ptr ds:[esi]                 ;  Case 2B ('+') of switch 0040324E

004032C0  |.  46            inc esi                                  ;  U盘自动?004473D4

004032C1  |.^ EB 9C         jmp short U盘自动?0040325F

004032C3  |>  BF FFFFFF0F   mov edi,0xFFFFFFF                        ;  Cases 24 ('$'),58 ('X'),78 ('x') of switch 0040325F

004032C8  |.  8A1E          mov bl,byte ptr ds:[esi]

004032CA  |.  46            inc esi                                  ;  U盘自动?004473D4

004032CB  |.  84DB          test bl,bl

004032CD  |.^ 74 DF         je short U盘自动?004032AE

004032CF  |>  80FB 61       /cmp bl,0x61

004032D2  |.  72 03         |jb short U盘自动?004032D7

004032D4  |.  80EB 20       |sub bl,0x20

004032D7  |>  80EB 30       |sub bl,0x30                             ;  Switch (cases 30..46)

004032DA  |.  80FB 09       |cmp bl,0x9

004032DD  |.  76 0B         |jbe short U盘自动?004032EA

004032DF  |.  80EB 11       |sub bl,0x11

004032E2  |.  80FB 05       |cmp bl,0x5

004032E5  |.^ 77 D0         |ja short U盘自动?004032B7

004032E7  |.  80C3 0A       |add bl,0xA                              ;  Cases 41 ('A'),42 ('B'),43 ('C'),44 ('D'),45 ('E'),46 ('F') of switch 004032D7

004032EA  |>  39F8          |cmp eax,edi                             ;  Cases 30 ('0'),31 ('1'),32 ('2'),33 ('3'),34 ('4'),35 ('5'),36 ('6'),37 ('7'),38 ('8'),39 ('9') of switch 004032D7

004032EC  |.^ 77 C9         |ja short U盘自动?004032B7

004032EE  |.  C1E0 04       |shl eax,0x4

004032F1  |.  01D8          |add eax,ebx

004032F3  |.  8A1E          |mov bl,byte ptr ds:[esi]

004032F5  |.  46            |inc esi                                 ;  U盘自动?004473D4

004032F6  |.  84DB          |test bl,bl

004032F8  |.^ 75 D5         \jnz short U盘自动?004032CF

004032FA  |.  FECD          dec ch

004032FC  |.  75 02         jnz short U盘自动?00403300

004032FE  |.  F7D8          neg eax

00403300  |>  59            pop ecx                                  ;  U盘自动?00408E1C

00403301  |.  31F6          xor esi,esi                              ;  U盘自动?004473D4

00403303  |>  8932          mov dword ptr ds:[edx],esi               ;  U盘自动?004473D4

00403305  |.  5F            pop edi                                  ;  U盘自动?00408E1C

00403306  |.  5E            pop esi                                  ;  U盘自动?00408E1C

00403307  |.  5B            pop ebx                                  ;  U盘自动?00408E1C

00403308  \.  C3            retn

00403309      8D40 00       lea eax,dword ptr ds:[eax]

0040330C  /$  B9 FF000000   mov ecx,0xFF

00403311  |.  E8 02000000   call U盘自动?00403318

00403316  \.  C3            retn



大致的逻辑应该是(我的猜想)
根据机器码以及估计值 套入算法计算出一个变量 然后取值机器码跟这个变量组合 在去套入算法 得到注册时候的部分注册码,重启后在验证剩下的4位,这样就固定下来完整的注册码了。
我说的可能有点复杂。。。。希望大佬可以下载跑跑看看 小白一枚 套入个几次我就晕了 实在是找不到 大家又心得可以一起讨论
原版软件下载:
http://ys-g.ys168.com/608637956/ ... %8E%9F%E7%89%88.exe
备用
https://blz.lanzouj.com/iGrH3isgc2b

免费评分

参与人数 2吾爱币 +2 热心值 +1 收起 理由
半夜睡不着 + 1 热心回复!
DreamEgg + 1 + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Alanroar 发表于 2020-11-26 14:18
mark一下,试试先
 楼主| billy74 发表于 2020-11-26 14:32

大佬有时间可以试一试 这个的注册码有点意思的
搞不定前半段
吾名张 发表于 2020-11-26 14:57
myh17909 发表于 2020-11-26 15:11
楼主辛苦了
半夜睡不着 发表于 2020-11-26 15:37
感谢分享,关键时候也能用上的
djqiuzhe 发表于 2021-1-12 11:39
干货,先行测试一下。感谢楼主分享!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 05:22

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表