吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 25025|回复: 32
收起左侧

[原创] STTV-视通卫星网络电视 2010 build 0709 豪华版 算法分析+注册机编写

  [复制链接]
2666fff 发表于 2010-7-17 20:36
本帖最后由 2666fff 于 2010-7-17 20:40 编辑

【文章标题】: STTV-视通卫星网络电视 2010 build 0709 豪华版 算法分析+注册机
【文章作者】: 2666fff
【作者邮箱】: wan0001@brauer.vic.edu.au
【软件名称】: STTV-视通卫星网络电视 2010 build 0709 豪华版
【下载地址】: 自己搜索下载
【编写语言】: Delphi
【使用工具】: OD 易语言 DEDE
【软件介绍】: STTV-视通卫星网络电视(带自由录像功能)是一款值得推荐的高速网络电视软件,集当前流行网络电视软件的优点于一身,无论从界面、功能,还是从节目质量、速度都超过其它同类软件。
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
--------------------------------------------------------------------------------
【详细过程】
  上次发了个分析半仙算命的,可能是太简单了吧,连个加分的都没。。可怜我打了这么多字,这次来个不是很简单的。
  
  PEID查壳 STTV.exe 发现没有加壳,为Delphi编写,又用DEDE查到注册按钮的事件发生为: 00557EB8
  
  OD载入
  
  运行软件,输入假码,点击注册,OD断下,开始分析。
  
  00557EB8   .  55            push ebp
  00557EB9   .  8BEC          mov ebp,esp
  00557EBB   .  B9 20000000   mov ecx,0x20
  00557EC0   >  6A 00         push 0x0
  00557EC2   .  6A 00         push 0x0
  00557EC4   .  49            dec ecx
  00557EC5   .^ 75 F9         jnz short STTV.00557EC0
  00557EC7   .  53            push ebx
  00557EC8   .  8945 FC       mov dword ptr ss:[ebp-0x4],eax
  00557ECB   .  33C0          xor eax,eax
  00557ECD   .  55            push ebp
  00557ECE   .  68 6C8C5500   push STTV.00558C6C
  00557ED3   .  64:FF30       push dword ptr fs:[eax]
  00557ED6   .  64:8920       mov dword ptr fs:[eax],esp
  00557ED9   .  8B15 843C5700 mov edx,dword ptr ds:[0x573C84]          ;  STTV.005766E0
  00557EDF   .  8B12          mov edx,dword ptr ds:[edx]
  00557EE1   .  8D45 E0       lea eax,dword ptr ss:[ebp-0x20]
  00557EE4   .  B9 848C5500   mov ecx,STTV.00558C84                    ;  /service/
  00557EE9   .  E8 4AC8EAFF   call STTV.00404738
  00557EEE   .  8B15 783A5700 mov edx,dword ptr ds:[0x573A78]          ;  STTV.005766E4
  00557EF4   .  8B12          mov edx,dword ptr ds:[edx]
  00557EF6   .  8D45 DC       lea eax,dword ptr ss:[ebp-0x24]
  00557EF9   .  B9 848C5500   mov ecx,STTV.00558C84                    ;  /service/
  00557EFE   .  E8 35C8EAFF   call STTV.00404738
  00557F03   .  8D55 D4       lea edx,dword ptr ss:[ebp-0x2C]
  00557F06   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00557F09   .  8B98 14030000 mov ebx,dword ptr ds:[eax+0x314]
  00557F0F   .  8BC3          mov eax,ebx
  00557F11   .  E8 0AF9F5FF   call STTV.004B7820
  00557F16   .  8B45 D4       mov eax,dword ptr ss:[ebp-0x2C]          ;  用户名
  00557F19   .  8D55 D8       lea edx,dword ptr ss:[ebp-0x28]
  00557F1C   .  E8 0F0DEBFF   call STTV.00408C30
  00557F21   .  8B55 D8       mov edx,dword ptr ss:[ebp-0x28]
  00557F24   .  8BC3          mov eax,ebx
  00557F26   .  E8 89F9F5FF   call STTV.004B78B4
  00557F2B   .  8D55 CC       lea edx,dword ptr ss:[ebp-0x34]
  00557F2E   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00557F31   .  8B98 18030000 mov ebx,dword ptr ds:[eax+0x318]
  00557F37   .  8BC3          mov eax,ebx
  00557F39   .  E8 E2F8F5FF   call STTV.004B7820                       ;  注册码
  00557F3E   .  8B45 CC       mov eax,dword ptr ss:[ebp-0x34]
  00557F41   .  8D55 D0       lea edx,dword ptr ss:[ebp-0x30]
  00557F44   .  E8 E70CEBFF   call STTV.00408C30
  00557F49   .  8B55 D0       mov edx,dword ptr ss:[ebp-0x30]
  00557F4C   .  8BC3          mov eax,ebx
  00557F4E   .  E8 61F9F5FF   call STTV.004B78B4
  00557F53   .  8D55 C8       lea edx,dword ptr ss:[ebp-0x38]
  00557F56   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00557F59   .  8B80 F8020000 mov eax,dword ptr ds:[eax+0x2F8]
  00557F5F   .  E8 54ACF0FF   call STTV.00462BB8
  00557F64   .  8B45 C8       mov eax,dword ptr ss:[ebp-0x38]
  00557F67   .  BA 988C5500   mov edx,STTV.00558C98                    ;  注册认证
  00557F6C   .  E8 C7C8EAFF   call STTV.00404838
  00557F71   .  0F85 EF090000 jnz STTV.00558966
  00557F77   .  33DB          xor ebx,ebx
  00557F79   .  8D55 C4       lea edx,dword ptr ss:[ebp-0x3C]
  00557F7C   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00557F7F   .  8B80 14030000 mov eax,dword ptr ds:[eax+0x314]
  00557F85   .  E8 96F8F5FF   call STTV.004B7820
  00557F8A   .  837D C4 00    cmp dword ptr ss:[ebp-0x3C],0x0
  00557F8E   .  74 17         je short STTV.00557FA7
  00557F90   .  8D55 C0       lea edx,dword ptr ss:[ebp-0x40]
  00557F93   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00557F96   .  8B80 18030000 mov eax,dword ptr ds:[eax+0x318]
  00557F9C   .  E8 7FF8F5FF   call STTV.004B7820
  00557FA1   .  837D C0 00    cmp dword ptr ss:[ebp-0x40],0x0
  00557FA5   .  75 16         jnz short STTV.00557FBD
  00557FA7   >  A1 68395700   mov eax,dword ptr ds:[0x573968]
  00557FAC   .  8B00          mov eax,dword ptr ds:[eax]
  00557FAE   .  BA AC8C5500   mov edx,STTV.00558CAC                    ;  请输入用户名和注册码!
  00557FB3   .  E8 80880000   call STTV.00560838
  00557FB8   .  E9 DF0A0000   jmp STTV.00558A9C
  00557FBD   >  8D55 BC       lea edx,dword ptr ss:[ebp-0x44]          ;  判断是否是以下几个用户名
  00557FC0   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00557FC3   .  8B80 14030000 mov eax,dword ptr ds:[eax+0x314]
  00557FC9   .  E8 52F8F5FF   call STTV.004B7820
  00557FCE   .  8B45 BC       mov eax,dword ptr ss:[ebp-0x44]
  00557FD1   .  BA CC8C5500   mov edx,STTV.00558CCC                    ;  yunfeng
  00557FD6   .  E8 210BEBFF   call STTV.00408AFC
  00557FDB   .  84C0          test al,al
  00557FDD   .  75 66         jnz short STTV.00558045
  00557FDF   .  8D55 B8       lea edx,dword ptr ss:[ebp-0x48]
  00557FE2   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00557FE5   .  8B80 14030000 mov eax,dword ptr ds:[eax+0x314]
  00557FEB   .  E8 30F8F5FF   call STTV.004B7820
  00557FF0   .  8B45 B8       mov eax,dword ptr ss:[ebp-0x48]
  00557FF3   .  BA DC8C5500   mov edx,STTV.00558CDC                    ;  SUGAR8A
  00557FF8   .  E8 FF0AEBFF   call STTV.00408AFC
  00557FFD   .  84C0          test al,al
  00557FFF   .  75 44         jnz short STTV.00558045
  00558001   .  8D55 B4       lea edx,dword ptr ss:[ebp-0x4C]
  00558004   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00558007   .  8B80 14030000 mov eax,dword ptr ds:[eax+0x314]
  0055800D   .  E8 0EF8F5FF   call STTV.004B7820
  00558012   .  8B45 B4       mov eax,dword ptr ss:[ebp-0x4C]
  00558015   .  BA EC8C5500   mov edx,STTV.00558CEC                    ;  5x54
  0055801A   .  E8 DD0AEBFF   call STTV.00408AFC
  0055801F   .  84C0          test al,al
  00558021   .  75 22         jnz short STTV.00558045
  00558023   .  8D55 B0       lea edx,dword ptr ss:[ebp-0x50]
  00558026   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00558029   .  8B80 14030000 mov eax,dword ptr ds:[eax+0x314]
  0055802F   .  E8 ECF7F5FF   call STTV.004B7820
  00558034   .  8B45 B0       mov eax,dword ptr ss:[ebp-0x50]
  00558037   .  BA FC8C5500   mov edx,STTV.00558CFC                    ;  tvrocn
  0055803C   .  E8 BB0AEBFF   call STTV.00408AFC
  00558041   .  84C0          test al,al
  00558043   .  74 0D         je short STTV.00558052
  00558045   >  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00558048   .  E8 3B75F2FF   call STTV.0047F588
  0055804D   .  E9 4A0A0000   jmp STTV.00558A9C
  00558052   >  8D55 A8       lea edx,dword ptr ss:[ebp-0x58]
  00558055   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00558058   .  8B80 14030000 mov eax,dword ptr ds:[eax+0x314]
  0055805E   .  E8 BDF7F5FF   call STTV.004B7820
  00558063   .  8B55 A8       mov edx,dword ptr ss:[ebp-0x58]
  00558066   .  8D4D AC       lea ecx,dword ptr ss:[ebp-0x54]
  00558069   .  A1 68395700   mov eax,dword ptr ds:[0x573968]
  0055806E   .  8B00          mov eax,dword ptr ds:[eax]
  00558070   .  E8 C7830000   call STTV.0056043C                       ;  标准版注册码算法call
  00558075   .  8B45 AC       mov eax,dword ptr ss:[ebp-0x54]
  00558078   .  50            push eax
  00558079   .  8D55 A4       lea edx,dword ptr ss:[ebp-0x5C]
  0055807C   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  0055807F   .  8B80 18030000 mov eax,dword ptr ds:[eax+0x318]
  00558085   .  E8 96F7F5FF   call STTV.004B7820
  0055808A   .  8B55 A4       mov edx,dword ptr ss:[ebp-0x5C]
  0055808D   .  58            pop eax
  0055808E   .  E8 690AEBFF   call STTV.00408AFC
  00558093   .  84C0          test al,al
  00558095   .  74 50         je short STTV.005580E7
  00558097   .  8D55 A0       lea edx,dword ptr ss:[ebp-0x60]
  0055809A   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  0055809D   .  8B80 14030000 mov eax,dword ptr ds:[eax+0x314]
  005580A3   .  E8 78F7F5FF   call STTV.004B7820
  005580A8   .  8B4D A0       mov ecx,dword ptr ss:[ebp-0x60]
  005580AB   .  8D45 F4       lea eax,dword ptr ss:[ebp-0xC]
  005580AE   .  BA 0C8D5500   mov edx,STTV.00558D0C                    ;  软件授权:
  005580B3   .  E8 80C6EAFF   call STTV.00404738
  005580B8   .  8D45 F0       lea eax,dword ptr ss:[ebp-0x10]
  005580BB   .  BA 208D5500   mov edx,STTV.00558D20                    ;  版本类型:标准版
  005580C0   .  E8 FFC3EAFF   call STTV.004044C4
  005580C5   .  8D45 EC       lea eax,dword ptr ss:[ebp-0x14]
  005580C8   .  BA 3C8D5500   mov edx,STTV.00558D3C                    ;  享受服务:享受标准版节目永久观看、节目更新、软件自动升级、酷眩\r          皮肤自动下载服务
  005580CD   .  E8 F2C3EAFF   call STTV.004044C4
  005580D2   .  B3 01         mov bl,0x1
  005580D4   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  005580D7   .  8B80 F8020000 mov eax,dword ptr ds:[eax+0x2F8]
  005580DD   .  BA A08D5500   mov edx,STTV.00558DA0                    ;  升级为VIP版或钻石版
  005580E2   .  E8 01ABF0FF   call STTV.00462BE8
  005580E7   >  8D55 98       lea edx,dword ptr ss:[ebp-0x68]
  005580EA   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  005580ED   .  8B80 14030000 mov eax,dword ptr ds:[eax+0x314]
  005580F3   .  E8 28F7F5FF   call STTV.004B7820
  005580F8   .  8B55 98       mov edx,dword ptr ss:[ebp-0x68]
  005580FB   .  8D4D 9C       lea ecx,dword ptr ss:[ebp-0x64]
  005580FE   .  A1 68395700   mov eax,dword ptr ds:[0x573968]
  00558103   .  8B00          mov eax,dword ptr ds:[eax]
  00558105   .  E8 4A840000   call STTV.00560554                       ;  VIp版注册码计算call
  0055810A   .  8B45 9C       mov eax,dword ptr ss:[ebp-0x64]
  0055810D   .  50            push eax
  0055810E   .  8D55 94       lea edx,dword ptr ss:[ebp-0x6C]
  00558111   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00558114   .  8B80 18030000 mov eax,dword ptr ds:[eax+0x318]
  0055811A   .  E8 01F7F5FF   call STTV.004B7820
  0055811F   .  8B55 94       mov edx,dword ptr ss:[ebp-0x6C]
  00558122   .  58            pop eax
  00558123   .  E8 D409EBFF   call STTV.00408AFC
  00558128   .  84C0          test al,al
  0055812A   .  74 50         je short STTV.0055817C
  0055812C   .  8D55 90       lea edx,dword ptr ss:[ebp-0x70]
  0055812F   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00558132   .  8B80 14030000 mov eax,dword ptr ds:[eax+0x314]
  00558138   .  E8 E3F6F5FF   call STTV.004B7820
  0055813D   .  8B4D 90       mov ecx,dword ptr ss:[ebp-0x70]
  00558140   .  8D45 F4       lea eax,dword ptr ss:[ebp-0xC]
  00558143   .  BA 0C8D5500   mov edx,STTV.00558D0C                    ;  软件授权:
  00558148   .  E8 EBC5EAFF   call STTV.00404738
  0055814D   .  8D45 F0       lea eax,dword ptr ss:[ebp-0x10]
  00558150   .  BA BC8D5500   mov edx,STTV.00558DBC                    ;  版本类型:VIP版
  00558155   .  E8 6AC3EAFF   call STTV.004044C4
  0055815A   .  8D45 EC       lea eax,dword ptr ss:[ebp-0x14]
  0055815D   .  BA D48D5500   mov edx,STTV.00558DD4                    ;  享受服务:1、享受VIP节目观看、节目更新等服务一年;\r          2、享受非VIP节目永久观看、永久免费升级服务
  00558162   .  E8 5DC3EAFF   call STTV.004044C4
  00558167   .  B3 01         mov bl,0x1
  00558169   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  0055816C   .  8B80 F8020000 mov eax,dword ptr ds:[eax+0x2F8]
  00558172   .  BA 448E5500   mov edx,STTV.00558E44                    ;  升级为钻石版
  00558177   .  E8 6CAAF0FF   call STTV.00462BE8
  0055817C   >  8D55 88       lea edx,dword ptr ss:[ebp-0x78]
  0055817F   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  00558182   .  8B80 14030000 mov eax,dword ptr ds:[eax+0x314]
  00558188   .  E8 93F6F5FF   call STTV.004B7820
  0055818D   .  8B55 88       mov edx,dword ptr ss:[ebp-0x78]
  00558190   .  8D4D 8C       lea ecx,dword ptr ss:[ebp-0x74]
  00558193   .  A1 68395700   mov eax,dword ptr ds:[0x573968]
  00558198   .  8B00          mov eax,dword ptr ds:[eax]
  0055819A   .  E8 CD840000   call STTV.0056066C                       ;  钻石版注册码计算call
  0055819F   .  8B45 8C       mov eax,dword ptr ss:[ebp-0x74]
  005581A2   .  50            push eax
  005581A3   .  8D55 84       lea edx,dword ptr ss:[ebp-0x7C]
  005581A6   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  005581A9   .  8B80 18030000 mov eax,dword ptr ds:[eax+0x318]
  005581AF   .  E8 6CF6F5FF   call STTV.004B7820
  005581B4   .  8B55 84       mov edx,dword ptr ss:[ebp-0x7C]
  005581B7   .  58            pop eax
  005581B8   .  E8 3F09EBFF   call STTV.00408AFC
  005581BD   .  84C0          test al,al
  005581BF   .  74 50         je short STTV.00558211
  005581C1   .  8D55 80       lea edx,dword ptr ss:[ebp-0x80]
  005581C4   .  8B45 FC       mov eax,dword ptr ss:[ebp-0x4]
  005581C7   .  8B80 14030000 mov eax,dword ptr ds:[eax+0x314]
  005581CD   .  E8 4EF6F5FF   call STTV.004B7820
  005581D2   .  8B4D 80       mov ecx,dword ptr ss:[ebp-0x80]
  005581D5   .  8D45 F4       lea eax,dword ptr ss:[ebp-0xC]
  005581D8   .  BA 0C8D5500   mov edx,STTV.00558D0C                    ;  软件授权:
  005581DD   .  E8 56C5EAFF   call STTV.00404738
  005581E2   .  8D45 F0       lea eax,dword ptr ss:[ebp-0x10]
  
  先进入第一个标准版算法CALL看看
  0056043C  /$  55            push ebp
  0056043D  |.  8BEC          mov ebp,esp
  0056043F  |.  6A 00         push 0x0
  00560441  |.  6A 00         push 0x0
  00560443  |.  6A 00         push 0x0
  00560445  |.  6A 00         push 0x0
  00560447  |.  6A 00         push 0x0
  00560449  |.  6A 00         push 0x0
  0056044B  |.  53            push ebx
  0056044C  |.  56            push esi
  0056044D  |.  57            push edi
  0056044E  |.  894D F8       mov [local.2],ecx
  00560451  |.  8955 FC       mov [local.1],edx
  00560454  |.  8B45 FC       mov eax,[local.1]
  00560457  |.  E8 8044EAFF   call STTV.004048DC
  0056045C  |.  33C0          xor eax,eax
  0056045E  |.  55            push ebp
  0056045F  |.  68 3A055600   push STTV.0056053A
  00560464  |.  64:FF30       push dword ptr fs:[eax]
  00560467  |.  64:8920       mov dword ptr fs:[eax],esp
  0056046A  |.  8D55 EC       lea edx,[local.5]
  0056046D  |.  8B45 FC       mov eax,[local.1]
  00560470  |.  E8 A785EAFF   call STTV.00408A1C
  00560475  |.  8B45 EC       mov eax,[local.5]
  00560478  |.  8D55 F0       lea edx,[local.4]
  0056047B  |.  E8 B087EAFF   call STTV.00408C30
  00560480  |.  8B55 F0       mov edx,[local.4]
  00560483  |.  8D45 FC       lea eax,[local.1]
  00560486  |.  E8 3940EAFF   call STTV.004044C4
  0056048B  |.  8D45 F4       lea eax,[local.3]
  0056048E  |.  E8 993FEAFF   call STTV.0040442C
  00560493  |.  BE 01000000   mov esi,0x1                              ;  esi为1
  00560498  |.  8B45 FC       mov eax,[local.1]
  0056049B  |.  E8 4C42EAFF   call STTV.004046EC
  005604A0  |.  85C0          test eax,eax
  005604A2  |.  7E 14         jle short STTV.005604B8
  005604A4  |.  BB 01000000   mov ebx,0x1                              ;  ebx为1
  005604A9  |>  8B55 FC       /mov edx,[local.1]                       ;  进注册名
  005604AC  |.  0FB6541A FF   |movzx edx,byte ptr ds:[edx+ebx-0x1]     ;  取各位的ASCII
  005604B1  |.  03F2          |add esi,edx                             ;  加上esi的值,结果保存至esi。esi初始值为1
  005604B3  |.  46            |inc esi                                 ;  esi+1
  005604B4  |.  43            |inc ebx                                 ;  ebx初始值为1,ebx+1
  005604B5  |.  48            |dec eax                                 ;  eax-1
  005604B6  |.^ 75 F1         \jnz short STTV.005604A9
  005604B8  |>  BB 01000000   mov ebx,0x1                              ;  ebx=1
  005604BD  |>  8BFE          /mov edi,esi                             ;  esi的值进edi
  005604BF  |.  0FAFFE        |imul edi,esi                            ;  esi*edi,结果保存至edi
  005604C2  |.  0FAFFE        |imul edi,esi                            ;  再乘
  005604C5  |.  0FAFFB        |imul edi,ebx                            ;  edi*ebx,初始ebx为1
  005604C8  |.  0FAFFB        |imul edi,ebx                            ;  同上
  005604CB  |.  0FAFFB        |imul edi,ebx                            ;  同上
  005604CE  |.  8D041E        |lea eax,dword ptr ds:[esi+ebx]          ;  esi+ebx 传到eax
  005604D1  |.  0FAFF8        |imul edi,eax                            ;  edi*eax
  005604D4  |.  0FAFF8        |imul edi,eax                            ;  同上
  005604D7  |.  0FAFF8        |imul edi,eax                            ;  同上
  005604DA  |.  8D4D E8       |lea ecx,[local.6]
  005604DD  |.  BA 08000000   |mov edx,0x8                             ;  edx赋值为8
  005604E2  |.  8BC7          |mov eax,edi
  005604E4  |.  E8 2B8CEAFF   |call STTV.00409114                      ;  每循环一次,edi的值,就为普通VIP注册码的每一段
  005604E9  |.  8B55 E8       |mov edx,[local.6]                       ;  进edx
  005604EC  |.  8D45 F4       |lea eax,[local.3]
  005604EF  |.  E8 0042EAFF   |call STTV.004046F4
  005604F4  |.  83FB 06       |cmp ebx,0x6                             ;  ebx与6比较
  005604F7  |.  74 0D         |je short STTV.00560506                  ;  等于则跳过加 “-” 这一步
  005604F9  |.  8D45 F4       |lea eax,[local.3]
  005604FC  |.  BA 50055600   |mov edx,STTV.00560550                   ;  -
  00560501  |.  E8 EE41EAFF   |call STTV.004046F4
  00560506  |>  43            |inc ebx                                 ;  ebx+1
  00560507  |.  83FB 07       |cmp ebx,0x7                             ;  ebx与7比较
  0056050A  |.^ 75 B1         \jnz short STTV.005604BD                 ;  循环计算直至ebx为7,即:计算6次
  0056050C  |.  8B45 F8       mov eax,[local.2]
  0056050F  |.  8B55 F4       mov edx,[local.3]                        ;  完整普通VIP版注册码出现
  00560512  |.  E8 693FEAFF   call STTV.00404480
  00560517  |.  33C0          xor eax,eax
  00560519  |.  5A            pop edx
  0056051A  |.  59            pop ecx
  0056051B  |.  59            pop ecx
  0056051C  |.  64:8910       mov dword ptr fs:[eax],edx
  0056051F  |.  68 41055600   push STTV.00560541
  00560524  |>  8D45 E8       lea eax,[local.6]
  00560527  |.  BA 04000000   mov edx,0x4
  0056052C  |.  E8 1F3FEAFF   call STTV.00404450
  00560531  |.  8D45 FC       lea eax,[local.1]
  00560534  |.  E8 F33EEAFF   call STTV.0040442C
  00560539  \.  C3            retn
  0056053A   .^ E9 6D38EAFF   jmp STTV.00403DAC
  0056053F   .^ EB E3         jmp short STTV.00560524
  00560541   .  5F            pop edi
  00560542   .  5E            pop esi
  00560543   .  5B            pop ebx
  00560544   .  8BE5          mov esp,ebp
  00560546   .  5D            pop ebp
  00560547   .  C3            retn
  
  
  总结一下标准版的算法:
  
  先取esi先置1,然后加上用户名第一位的ASCII,esi再+1,然后再加上第二位的ASCII,esi再加1 …… 最后加上最后一位的ASCII,再加1,
  由此esi的值便固定了。
  接着再将ebx置1,esi的值进入edi,3次edi*esi,在进行3次edi*ebx,再将esi的值+上ebx的值放入eax,3次edi*eax,最后得出来的结果
  转为16进制就为注册码第一段,算第二段时ebx的值+1,循环6次直至6段注册码全部出现。
  
  易语言写注册机:
  
  .版本 2
  
  .子程序 _按钮1_被单击
  .局部变量 i, 整数型, , , 循环计次变量
  .局部变量 len, 整数型, , , 用户名长度
  .局部变量 name, 文本型, , , 用户名
  .局部变量 a, 整数型, , , a为esi
  .局部变量 b, 字节型
  .局部变量 c, 整数型
  .局部变量 edi, 长整数型
  .局部变量 d, 整数型
  .局部变量 sum, 文本型, , "6", 数组,表示出用户名的每一段
  
  name = 编辑框1.内容
  a = 1  ' esi为1
  len = 取文本长度 (name)  ' 用户名的长度
  .计次循环首 (len, i)
      b = 取代码 (name, i)  ' 取各位的ASCII值
      a = a + b  ' 加ascii
      a = a + 1  ' 加1
  .计次循环尾 ()
  c = 1
  .判断循环首 (c < 7)
      edi = a  ' esi的值进edi
      edi = edi × a  ' esi*edi,结果保存至edi
      edi = edi × a
      edi = edi × c  ' edi*ebx,初始ebx为1
      edi = edi × c
      edi = edi × c
      d = c + a  ' esi+ebx 传到eax
      edi = edi × d  ' edi*eax
      edi = edi × d
      edi = edi × d
      sum [c] = 十到十六 (edi)  ' 用一个数组来记录每次循环出的16进制值。十到十六这个是万挂作坊模块的已给命令,用来转十进制到十六
      c = c + 1
  .判断循环尾 ()
  编辑框2.内容 = sum [1] + “-” + sum [2] + “-” + sum [3] + “-” + sum [4] + “-” + sum [5] + “-” + sum [6]  ' 连接数组个值
  

  再看VIP版的算法call
  005605A3  |.  8D45 F4       lea eax,[local.3]
  005605A6  |.  E8 813EEAFF   call STTV.0040442C
  005605AB  |.  BE 01000000   mov esi,0x1                              ;  esi为1
  005605B0  |.  8B45 FC       mov eax,[local.1]
  005605B3  |.  E8 3441EAFF   call STTV.004046EC
  005605B8  |.  85C0          test eax,eax
  005605BA  |.  7E 16         jle short STTV.005605D2
  005605BC  |.  BB 01000000   mov ebx,0x1                              ;  ebx为1
  005605C1  |>  8B55 FC       /mov edx,[local.1]                       ;  进用户名
  005605C4  |.  0FB6541A FF   |movzx edx,byte ptr ds:[edx+ebx-0x1]     ;  取各位ASCII
  005605C9  |.  03F2          |add esi,edx                             ;  各位ASCII+esi(初始为1)
  005605CB  |.  83C6 06       |add esi,0x6                             ;  esi+6
  005605CE  |.  43            |inc ebx                                 ;  ebx++
  005605CF  |.  48            |dec eax                                 ;  eax--
  005605D0  |.^ 75 EF         \jnz short STTV.005605C1                 ;  循环至注册码所有位都取完
  005605D2  |>  BB 01000000   mov ebx,0x1                              ;  ebx为1
  005605D7  |>  8BFE          /mov edi,esi                             ;  esi进edi
  005605D9  |.  0FAFFE        |imul edi,esi                            ;  esi*edi
  005605DC  |.  0FAFFE        |imul edi,esi                            ;  同上
  005605DF  |.  0FAFFB        |imul edi,ebx                            ;  edi×ebx
  005605E2  |.  0FAFFB        |imul edi,ebx                            ;  同上
  005605E5  |.  0FAFFB        |imul edi,ebx                            ;  同上
  005605E8  |.  8D041E        |lea eax,dword ptr ds:[esi+ebx]          ;  esi+ebx进eax
  005605EB  |.  0FAFF8        |imul edi,eax                            ;  edi*eax
  005605EE  |.  0FAFF8        |imul edi,eax                            ;  edi*eax
  005605F1  |.  8D4D E8       |lea ecx,[local.6]
  005605F4  |.  BA 08000000   |mov edx,0x8
  005605F9  |.  8BC7          |mov eax,edi
  005605FB  |.  E8 148BEAFF   |call STTV.00409114                      ;  注册码每一段
  00560600  |.  8B55 E8       |mov edx,[local.6]
  00560603  |.  8D45 F4       |lea eax,[local.3]
  00560606  |.  E8 E940EAFF   |call STTV.004046F4
  0056060B  |.  83FB 06       |cmp ebx,0x6
  0056060E  |.  74 0D         |je short STTV.0056061D
  00560610  |.  8D45 F4       |lea eax,[local.3]
  00560613  |.  BA 68065600   |mov edx,STTV.00560668                   ;  -
  00560618  |.  E8 D740EAFF   |call STTV.004046F4
  0056061D  |>  43            |inc ebx
  0056061E  |.  83FB 07       |cmp ebx,0x7
  00560621  |.^ 75 B4         \jnz short STTV.005605D7
  00560623  |.  8B45 F8       mov eax,[local.2]
  00560626  |.  8B55 F4       mov edx,[local.3]
  00560629  |.  E8 523EEAFF   call STTV.00404480
  0056062E  |.  33C0          xor eax,eax
  00560630  |.  5A            pop edx
  
  大体都一样,只有算esi时,每次循环+6而不是+1。下面算edi时,只算两次3次edi*eax。
  
  注册机稍微改下就行
  
  .版本 2
  
  .子程序 _按钮2_被单击
  .局部变量 i, 整数型
  .局部变量 len, 整数型
  .局部变量 name, 文本型
  .局部变量 a, 整数型
  .局部变量 b, 字节型
  .局部变量 c, 整数型
  .局部变量 edi, 长整数型
  .局部变量 d, 整数型
  .局部变量 sum, 文本型, , "6"
  
  name = 编辑框1.内容
  a = 1  ' esi为1
  len = 取文本长度 (name)  ' 用户名的长度
  .计次循环首 (len, i)
      b = 取代码 (name, i)  ' 取各位的ASCII值
      a = a + b  ' 加ascii
      a = a + 6  ' 加6
  .计次循环尾 ()
  c = 1
  .判断循环首 (c < 7)
      edi = a
      edi = edi × a
      edi = edi × a
      edi = edi × c
      edi = edi × c
      edi = edi × c
      d = c + a
      edi = edi × d
      edi = edi × d
      sum [c] = 十到十六 (edi)
      c = c + 1
  .判断循环尾 ()
  编辑框2.内容 = sum [1] + “-” + sum [2] + “-” + sum [3] + “-” + sum [4] + “-” + sum [5] + “-” + sum [6]
  

  钻石版的CALL
  005606BE  |.  E8 693DEAFF   call STTV.0040442C
  005606C3  |.  BE 01000000   mov esi,0x1                              ;  esi置1
  005606C8  |.  8B45 FC       mov eax,[local.1]
  005606CB  |.  E8 1C40EAFF   call STTV.004046EC
  005606D0  |.  85C0          test eax,eax
  005606D2  |.  7E 16         jle short STTV.005606EA
  005606D4  |.  BB 01000000   mov ebx,0x1                              ;  ebx置1
  005606D9  |>  8B55 FC       /mov edx,[local.1]
  005606DC  |.  0FB6541A FF   |movzx edx,byte ptr ds:[edx+ebx-0x1]
  005606E1  |.  03F2          |add esi,edx
  005606E3  |.  83C6 08       |add esi,0x8                             ;  esi+8
  005606E6  |.  43            |inc ebx
  005606E7  |.  48            |dec eax
  
  只有esi那里每次循环是+8,其他的跟VIP版都一样。
  钻石的注册机就不贴了,按VIP版的稍微改下就行。
  
--------------------------------------------------------------------------------
【经验总结】
  最后我说一句,你们拍死我吧,这个视频软件现在就算算出注册码也没用,他还有个播放时的网络验证。。。。
  给一组码

  2666fff

  7F26F000-421111F8-B8BD3594-9D63CDC0-443B9A30-EB3E50E8

  any way, 这篇主要是分析算法。其他的就不多说了。


  
--------------------------------------------------------------------------------
【版权声明】: 本文原创于2666fff, 转载请注明作者并保持文章的完整, 谢谢!
                                                       2010年07月17日 22:32:15

免费评分

参与人数 1热心值 +1 收起 理由
xiaoyuye + 1 虽然看不懂 不过长长见识 学习:)

查看全部评分

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

lwsdwhb 发表于 2010-7-17 23:38
软件发一下呀
Hmily 发表于 2010-7-19 14:12
感谢发布原创作品,[吾爱破解]因你更精彩!加精鼓励.
 楼主| 2666fff 发表于 2010-7-19 15:27
感谢发布原创作品,[吾爱破解]因你更精彩!加精鼓励.
Hmily 发表于 2010-7-19 14:12



    [s:65] 老大你终于看到了,555~~~
Hmily 发表于 2010-7-19 17:48
回复 4# 2666fff


金子总会发光的.
cklee 发表于 2010-7-19 21:01
正好在找电视软件,就看到精品了
xuld00 发表于 2010-7-19 21:46
看不懂,,不过还是支持、!!!
liu8135 发表于 2010-7-20 08:00
刚学习,看不懂,不过还是觉得你很强呀,支持。
wok 发表于 2010-7-29 01:30
O(∩_∩)O哈哈~来学习啦
lovenana81 发表于 2010-8-5 12:48
看来破解了注册也看不了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

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

GMT+8, 2024-5-15 17:43

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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