2666fff 发表于 2010-7-17 20:36

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

本帖最后由 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:,eax
00557ECB   .33C0          xor eax,eax
00557ECD   .55            push ebp
00557ECE   .68 6C8C5500   push STTV.00558C6C
00557ED3   .64:FF30       push dword ptr fs:
00557ED6   .64:8920       mov dword ptr fs:,esp
00557ED9   .8B15 843C5700 mov edx,dword ptr ds:          ;STTV.005766E0
00557EDF   .8B12          mov edx,dword ptr ds:
00557EE1   .8D45 E0       lea eax,dword ptr ss:
00557EE4   .B9 848C5500   mov ecx,STTV.00558C84                  ;/service/
00557EE9   .E8 4AC8EAFF   call STTV.00404738
00557EEE   .8B15 783A5700 mov edx,dword ptr ds:          ;STTV.005766E4
00557EF4   .8B12          mov edx,dword ptr ds:
00557EF6   .8D45 DC       lea eax,dword ptr ss:
00557EF9   .B9 848C5500   mov ecx,STTV.00558C84                  ;/service/
00557EFE   .E8 35C8EAFF   call STTV.00404738
00557F03   .8D55 D4       lea edx,dword ptr ss:
00557F06   .8B45 FC       mov eax,dword ptr ss:
00557F09   .8B98 14030000 mov ebx,dword ptr ds:
00557F0F   .8BC3          mov eax,ebx
00557F11   .E8 0AF9F5FF   call STTV.004B7820
00557F16   .8B45 D4       mov eax,dword ptr ss:          ;用户名
00557F19   .8D55 D8       lea edx,dword ptr ss:
00557F1C   .E8 0F0DEBFF   call STTV.00408C30
00557F21   .8B55 D8       mov edx,dword ptr ss:
00557F24   .8BC3          mov eax,ebx
00557F26   .E8 89F9F5FF   call STTV.004B78B4
00557F2B   .8D55 CC       lea edx,dword ptr ss:
00557F2E   .8B45 FC       mov eax,dword ptr ss:
00557F31   .8B98 18030000 mov ebx,dword ptr ds:
00557F37   .8BC3          mov eax,ebx
00557F39   .E8 E2F8F5FF   call STTV.004B7820                     ;注册码
00557F3E   .8B45 CC       mov eax,dword ptr ss:
00557F41   .8D55 D0       lea edx,dword ptr ss:
00557F44   .E8 E70CEBFF   call STTV.00408C30
00557F49   .8B55 D0       mov edx,dword ptr ss:
00557F4C   .8BC3          mov eax,ebx
00557F4E   .E8 61F9F5FF   call STTV.004B78B4
00557F53   .8D55 C8       lea edx,dword ptr ss:
00557F56   .8B45 FC       mov eax,dword ptr ss:
00557F59   .8B80 F8020000 mov eax,dword ptr ds:
00557F5F   .E8 54ACF0FF   call STTV.00462BB8
00557F64   .8B45 C8       mov eax,dword ptr ss:
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:
00557F7C   .8B45 FC       mov eax,dword ptr ss:
00557F7F   .8B80 14030000 mov eax,dword ptr ds:
00557F85   .E8 96F8F5FF   call STTV.004B7820
00557F8A   .837D C4 00    cmp dword ptr ss:,0x0
00557F8E   .74 17         je short STTV.00557FA7
00557F90   .8D55 C0       lea edx,dword ptr ss:
00557F93   .8B45 FC       mov eax,dword ptr ss:
00557F96   .8B80 18030000 mov eax,dword ptr ds:
00557F9C   .E8 7FF8F5FF   call STTV.004B7820
00557FA1   .837D C0 00    cmp dword ptr ss:,0x0
00557FA5   .75 16         jnz short STTV.00557FBD
00557FA7   >A1 68395700   mov eax,dword ptr ds:
00557FAC   .8B00          mov eax,dword ptr ds:
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:          ;判断是否是以下几个用户名
00557FC0   .8B45 FC       mov eax,dword ptr ss:
00557FC3   .8B80 14030000 mov eax,dword ptr ds:
00557FC9   .E8 52F8F5FF   call STTV.004B7820
00557FCE   .8B45 BC       mov eax,dword ptr ss:
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:
00557FE2   .8B45 FC       mov eax,dword ptr ss:
00557FE5   .8B80 14030000 mov eax,dword ptr ds:
00557FEB   .E8 30F8F5FF   call STTV.004B7820
00557FF0   .8B45 B8       mov eax,dword ptr ss:
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:
00558004   .8B45 FC       mov eax,dword ptr ss:
00558007   .8B80 14030000 mov eax,dword ptr ds:
0055800D   .E8 0EF8F5FF   call STTV.004B7820
00558012   .8B45 B4       mov eax,dword ptr ss:
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:
00558026   .8B45 FC       mov eax,dword ptr ss:
00558029   .8B80 14030000 mov eax,dword ptr ds:
0055802F   .E8 ECF7F5FF   call STTV.004B7820
00558034   .8B45 B0       mov eax,dword ptr ss:
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:
00558048   .E8 3B75F2FF   call STTV.0047F588
0055804D   .E9 4A0A0000   jmp STTV.00558A9C
00558052   >8D55 A8       lea edx,dword ptr ss:
00558055   .8B45 FC       mov eax,dword ptr ss:
00558058   .8B80 14030000 mov eax,dword ptr ds:
0055805E   .E8 BDF7F5FF   call STTV.004B7820
00558063   .8B55 A8       mov edx,dword ptr ss:
00558066   .8D4D AC       lea ecx,dword ptr ss:
00558069   .A1 68395700   mov eax,dword ptr ds:
0055806E   .8B00          mov eax,dword ptr ds:
00558070   .E8 C7830000   call STTV.0056043C                     ;标准版注册码算法call
00558075   .8B45 AC       mov eax,dword ptr ss:
00558078   .50            push eax
00558079   .8D55 A4       lea edx,dword ptr ss:
0055807C   .8B45 FC       mov eax,dword ptr ss:
0055807F   .8B80 18030000 mov eax,dword ptr ds:
00558085   .E8 96F7F5FF   call STTV.004B7820
0055808A   .8B55 A4       mov edx,dword ptr ss:
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:
0055809A   .8B45 FC       mov eax,dword ptr ss:
0055809D   .8B80 14030000 mov eax,dword ptr ds:
005580A3   .E8 78F7F5FF   call STTV.004B7820
005580A8   .8B4D A0       mov ecx,dword ptr ss:
005580AB   .8D45 F4       lea eax,dword ptr ss:
005580AE   .BA 0C8D5500   mov edx,STTV.00558D0C                  ;软件授权:
005580B3   .E8 80C6EAFF   call STTV.00404738
005580B8   .8D45 F0       lea eax,dword ptr ss:
005580BB   .BA 208D5500   mov edx,STTV.00558D20                  ;版本类型:标准版
005580C0   .E8 FFC3EAFF   call STTV.004044C4
005580C5   .8D45 EC       lea eax,dword ptr ss:
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:
005580D7   .8B80 F8020000 mov eax,dword ptr ds:
005580DD   .BA A08D5500   mov edx,STTV.00558DA0                  ;升级为VIP版或钻石版
005580E2   .E8 01ABF0FF   call STTV.00462BE8
005580E7   >8D55 98       lea edx,dword ptr ss:
005580EA   .8B45 FC       mov eax,dword ptr ss:
005580ED   .8B80 14030000 mov eax,dword ptr ds:
005580F3   .E8 28F7F5FF   call STTV.004B7820
005580F8   .8B55 98       mov edx,dword ptr ss:
005580FB   .8D4D 9C       lea ecx,dword ptr ss:
005580FE   .A1 68395700   mov eax,dword ptr ds:
00558103   .8B00          mov eax,dword ptr ds:
00558105   .E8 4A840000   call STTV.00560554                     ;VIp版注册码计算call
0055810A   .8B45 9C       mov eax,dword ptr ss:
0055810D   .50            push eax
0055810E   .8D55 94       lea edx,dword ptr ss:
00558111   .8B45 FC       mov eax,dword ptr ss:
00558114   .8B80 18030000 mov eax,dword ptr ds:
0055811A   .E8 01F7F5FF   call STTV.004B7820
0055811F   .8B55 94       mov edx,dword ptr ss:
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:
0055812F   .8B45 FC       mov eax,dword ptr ss:
00558132   .8B80 14030000 mov eax,dword ptr ds:
00558138   .E8 E3F6F5FF   call STTV.004B7820
0055813D   .8B4D 90       mov ecx,dword ptr ss:
00558140   .8D45 F4       lea eax,dword ptr ss:
00558143   .BA 0C8D5500   mov edx,STTV.00558D0C                  ;软件授权:
00558148   .E8 EBC5EAFF   call STTV.00404738
0055814D   .8D45 F0       lea eax,dword ptr ss:
00558150   .BA BC8D5500   mov edx,STTV.00558DBC                  ;版本类型:VIP版
00558155   .E8 6AC3EAFF   call STTV.004044C4
0055815A   .8D45 EC       lea eax,dword ptr ss:
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:
0055816C   .8B80 F8020000 mov eax,dword ptr ds:
00558172   .BA 448E5500   mov edx,STTV.00558E44                  ;升级为钻石版
00558177   .E8 6CAAF0FF   call STTV.00462BE8
0055817C   >8D55 88       lea edx,dword ptr ss:
0055817F   .8B45 FC       mov eax,dword ptr ss:
00558182   .8B80 14030000 mov eax,dword ptr ds:
00558188   .E8 93F6F5FF   call STTV.004B7820
0055818D   .8B55 88       mov edx,dword ptr ss:
00558190   .8D4D 8C       lea ecx,dword ptr ss:
00558193   .A1 68395700   mov eax,dword ptr ds:
00558198   .8B00          mov eax,dword ptr ds:
0055819A   .E8 CD840000   call STTV.0056066C                     ;钻石版注册码计算call
0055819F   .8B45 8C       mov eax,dword ptr ss:
005581A2   .50            push eax
005581A3   .8D55 84       lea edx,dword ptr ss:
005581A6   .8B45 FC       mov eax,dword ptr ss:
005581A9   .8B80 18030000 mov eax,dword ptr ds:
005581AF   .E8 6CF6F5FF   call STTV.004B7820
005581B4   .8B55 84       mov edx,dword ptr ss:
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:
005581C4   .8B45 FC       mov eax,dword ptr ss:
005581C7   .8B80 14030000 mov eax,dword ptr ds:
005581CD   .E8 4EF6F5FF   call STTV.004B7820
005581D2   .8B4D 80       mov ecx,dword ptr ss:
005581D5   .8D45 F4       lea eax,dword ptr ss:
005581D8   .BA 0C8D5500   mov edx,STTV.00558D0C                  ;软件授权:
005581DD   .E8 56C5EAFF   call STTV.00404738
005581E2   .8D45 F0       lea eax,dword ptr ss:

先进入第一个标准版算法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 ,ecx
00560451|.8955 FC       mov ,edx
00560454|.8B45 FC       mov eax,
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:
00560467|.64:8920       mov dword ptr fs:,esp
0056046A|.8D55 EC       lea edx,
0056046D|.8B45 FC       mov eax,
00560470|.E8 A785EAFF   call STTV.00408A1C
00560475|.8B45 EC       mov eax,
00560478|.8D55 F0       lea edx,
0056047B|.E8 B087EAFF   call STTV.00408C30
00560480|.8B55 F0       mov edx,
00560483|.8D45 FC       lea eax,
00560486|.E8 3940EAFF   call STTV.004044C4
0056048B|.8D45 F4       lea eax,
0056048E|.E8 993FEAFF   call STTV.0040442C
00560493|.BE 01000000   mov esi,0x1                              ;esi为1
00560498|.8B45 FC       mov eax,
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,                     ;进注册名
005604AC|.0FB6541A FF   |movzx edx,byte ptr ds:   ;取各位的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 传到eax
005604D1|.0FAFF8      |imul edi,eax                            ;edi*eax
005604D4|.0FAFF8      |imul edi,eax                            ;同上
005604D7|.0FAFF8      |imul edi,eax                            ;同上
005604DA|.8D4D E8       |lea ecx,
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,                     ;进edx
005604EC|.8D45 F4       |lea eax,
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,
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,
0056050F|.8B55 F4       mov edx,                        ;完整普通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:,edx
0056051F|.68 41055600   push STTV.00560541
00560524|>8D45 E8       lea eax,
00560527|.BA 04000000   mov edx,0x4
0056052C|.E8 1F3FEAFF   call STTV.00404450
00560531|.8D45 FC       lea eax,
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 = 十到十六 (edi)' 用一个数组来记录每次循环出的16进制值。十到十六这个是万挂作坊模块的已给命令,用来转十进制到十六
      c = c + 1
.判断循环尾 ()
编辑框2.内容 = sum + “-” + sum + “-” + sum + “-” + sum + “-” + sum + “-” + sum ' 连接数组个值


再看VIP版的算法call

005605A3|.8D45 F4       lea eax,
005605A6|.E8 813EEAFF   call STTV.0040442C
005605AB|.BE 01000000   mov esi,0x1                              ;esi为1
005605B0|.8B45 FC       mov eax,
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,                     ;进用户名
005605C4|.0FB6541A FF   |movzx edx,byte ptr ds:   ;取各位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进eax
005605EB|.0FAFF8      |imul edi,eax                            ;edi*eax
005605EE|.0FAFF8      |imul edi,eax                            ;edi*eax
005605F1|.8D4D E8       |lea ecx,
005605F4|.BA 08000000   |mov edx,0x8
005605F9|.8BC7          |mov eax,edi
005605FB|.E8 148BEAFF   |call STTV.00409114                      ;注册码每一段
00560600|.8B55 E8       |mov edx,
00560603|.8D45 F4       |lea eax,
00560606|.E8 E940EAFF   |call STTV.004046F4
0056060B|.83FB 06       |cmp ebx,0x6
0056060E|.74 0D         |je short STTV.0056061D
00560610|.8D45 F4       |lea eax,
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,
00560626|.8B55 F4       mov edx,
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 = 十到十六 (edi)
      c = c + 1
.判断循环尾 ()
编辑框2.内容 = sum + “-” + sum + “-” + sum + “-” + sum + “-” + sum + “-” + sum


钻石版的CALL

005606BE|.E8 693DEAFF   call STTV.0040442C
005606C3|.BE 01000000   mov esi,0x1                              ;esi置1
005606C8|.8B45 FC       mov eax,
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,
005606DC|.0FB6541A FF   |movzx edx,byte ptr ds:
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

lwsdwhb 发表于 2010-7-17 23:38

软件发一下呀

Hmily 发表于 2010-7-19 14:12

感谢发布原创作品,[吾爱破解]因你更精彩!加精鼓励.

2666fff 发表于 2010-7-19 15:27

感谢发布原创作品,[吾爱破解]因你更精彩!加精鼓励.
Hmily 发表于 2010-7-19 14:12 http://www.52pojie.cn/images/common/back.gif


    老大你终于看到了,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

看来破解了注册也看不了:(eew
页: [1] 2 3 4
查看完整版本: STTV-视通卫星网络电视 2010 build 0709 豪华版 算法分析+注册机编写