【破文标题】User Time Administrator 4.6.4.3算法分析
【破文作者】tianxj
【作者邮箱】tianxj_2007@126.com
【作者主页】WwW.ChiNaPYG.CoM
【破解工具】PEiD,OD
【破解平台】Windows XP
【软件名称】User Time Administrator 4.6.4.3
【软件大小】2758KB
【软件类别】国外软件/开关定时  
【软件授权】共享版 
【软件语言】英文 
【运行环境】Win9x/Me/NT/2000/XP/2003 
【更新时间】2008-9-12
【原版下载】自己找一下
【保护方式】注册码
【软件简介】一种实用工具,可让您限制时间为PC用户,并限制他们进入。 如果您担心您的孩子可能会花费太多时间上网或玩游戏-或者您不想他/她使用您的电脑当您要么睡觉或离家出走-这种类型的软件提供了一个解决方案。
【破解声明】我是一只小菜鸟,偶得一点心得,愿与大家分享:)
--------------------------------------------------------------
【破解内容】
--------------------------------------------------------------
**************************************************************
一、运行程序,进行注册,输入错误的注册信息进行检测,有提示信息
"Key is not valid !"
**************************************************************
二、用PEiD对utcc.exe查壳,为 Borland Delphi 6.0 - 7.0
**************************************************************
三、运行OD,打开utcc.exe,用F12暂停法
==============================================================
调用堆栈:     主线程, 条目 14
 地址=0012F458
 堆栈=005ADF5A
 函数过程 / 参数=? <JMP.&user32.MessageBoxA>
 调用来自=utcc.005ADF55
 结构=0012F454
==============================================================

代码:
005ADD70  /.  55               PUSH    EBP
005ADD71  |.  8BEC             MOV     EBP, ESP
005ADD73  |.  B9 07000000      MOV     ECX, 7
005ADD78  |>  6A 00            /PUSH    0
005ADD7A  |.  6A 00            |PUSH    0
005ADD7C  |.  49               |DEC     ECX
005ADD7D  |.^ 75 F9            \JNZ     SHORT utcc.005ADD78
005ADD7F  |.  53               PUSH    EBX
005ADD80  |.  56               PUSH    ESI
005ADD81  |.  8BF0             MOV     ESI, EAX
005ADD83  |.  8B1D 74F55C00    MOV     EBX, DWORD PTR DS:[5CF574]         ;  utcc.005D5C98
005ADD89  |.  33C0             XOR     EAX, EAX
005ADD8B  |.  55               PUSH    EBP
005ADD8C  |.  68 F6DF5A00      PUSH    utcc.005ADFF6
005ADD91  |.  64:FF30          PUSH    DWORD PTR FS:[EAX]
005ADD94  |.  64:8920          MOV     DWORD PTR FS:[EAX], ESP
005ADD97  |.  8BCB             MOV     ECX, EBX
005ADD99  |.  A1 0CF95C00      MOV     EAX, DWORD PTR DS:[5CF90C]
005ADD9E  |.  8B00             MOV     EAX, DWORD PTR DS:[EAX]
005ADDA0  |.  8B15 9CD35A00    MOV     EDX, DWORD PTR DS:[5AD39C]         ;  utcc.005AD3E8
005ADDA6  |.  E8 ED53EDFF      CALL    utcc.00483198
005ADDAB  |.  8B03             MOV     EAX, DWORD PTR DS:[EBX]
005ADDAD  |.  8B80 78030000    MOV     EAX, DWORD PTR DS:[EAX+378]
005ADDB3  |.  B2 01            MOV     DL, 1
005ADDB5  |.  E8 8E56EBFF      CALL    utcc.00463448
005ADDBA  |.  8D55 F8          LEA     EDX, DWORD PTR SS:[EBP-8]
005ADDBD  |.  B8 0CE05A00      MOV     EAX, utcc.005AE00C                 ;  ASCII "Registration"
005ADDC2  |.  E8 75E0F7FF      CALL    utcc.0052BE3C
005ADDC7  |.  8B55 F8          MOV     EDX, DWORD PTR SS:[EBP-8]
005ADDCA  |.  8D45 FC          LEA     EAX, DWORD PTR SS:[EBP-4]
005ADDCD  |.  E8 767BE5FF      CALL    utcc.00405948
005ADDD2  |.  8B55 FC          MOV     EDX, DWORD PTR SS:[EBP-4]
005ADDD5  |.  8B03             MOV     EAX, DWORD PTR DS:[EBX]
005ADDD7  |.  E8 7C57EBFF      CALL    utcc.00463558
005ADDDC  |.  8D55 F0          LEA     EDX, DWORD PTR SS:[EBP-10]
005ADDDF  |.  B8 24E05A00      MOV     EAX, utcc.005AE024                 ;  ASCII "Registration name"
005ADDE4  |.  E8 53E0F7FF      CALL    utcc.0052BE3C
005ADDE9  |.  8B55 F0          MOV     EDX, DWORD PTR SS:[EBP-10]
005ADDEC  |.  8D45 F4          LEA     EAX, DWORD PTR SS:[EBP-C]
005ADDEF  |.  E8 547BE5FF      CALL    utcc.00405948
005ADDF4  |.  8B55 F4          MOV     EDX, DWORD PTR SS:[EBP-C]
005ADDF7  |.  8B03             MOV     EAX, DWORD PTR DS:[EBX]
005ADDF9  |.  8B80 60030000    MOV     EAX, DWORD PTR DS:[EAX+360]
005ADDFF  |.  E8 5457EBFF      CALL    utcc.00463558
005ADE04  |.  8D55 E8          LEA     EDX, DWORD PTR SS:[EBP-18]
005ADE07  |.  B8 40E05A00      MOV     EAX, utcc.005AE040                 ;  ASCII "Registration key"
005ADE0C  |.  E8 2BE0F7FF      CALL    utcc.0052BE3C
005ADE11  |.  8B55 E8          MOV     EDX, DWORD PTR SS:[EBP-18]
005ADE14  |.  8D45 EC          LEA     EAX, DWORD PTR SS:[EBP-14]
005ADE17  |.  E8 2C7BE5FF      CALL    utcc.00405948
005ADE1C  |.  8B55 EC          MOV     EDX, DWORD PTR SS:[EBP-14]
005ADE1F  |.  8B03             MOV     EAX, DWORD PTR DS:[EBX]
005ADE21  |.  8B80 68030000    MOV     EAX, DWORD PTR DS:[EAX+368]
005ADE27  |.  E8 2C57EBFF      CALL    utcc.00463558
005ADE2C  |.  8B03             MOV     EAX, DWORD PTR DS:[EBX]
005ADE2E  |.  8B10             MOV     EDX, DWORD PTR DS:[EAX]
005ADE30  |.  FF92 FC000000    CALL    NEAR DWORD PTR DS:[EDX+FC]
005ADE36  |.  48               DEC     EAX
005ADE37  |.  0F85 3F010000    JNZ     utcc.005ADF7C
005ADE3D  |.  8D55 E0          LEA     EDX, DWORD PTR SS:[EBP-20]
005ADE40  |.  8B03             MOV     EAX, DWORD PTR DS:[EBX]
005ADE42  |.  8B80 64030000    MOV     EAX, DWORD PTR DS:[EAX+364]
005ADE48  |.  E8 DB56EBFF      CALL    utcc.00463528
005ADE4D  |.  8B45 E0          MOV     EAX, DWORD PTR SS:[EBP-20]         ;  //用户名
005ADE50  |.  8D55 E4          LEA     EDX, DWORD PTR SS:[EBP-1C]
005ADE53  |.  E8 64C6E5FF      CALL    utcc.0040A4BC
005ADE58  |.  8B45 E4          MOV     EAX, DWORD PTR SS:[EBP-1C]         ;  //用户名
005ADE5B  |.  50               PUSH    EAX
005ADE5C  |.  8D55 D8          LEA     EDX, DWORD PTR SS:[EBP-28]
005ADE5F  |.  8B03             MOV     EAX, DWORD PTR DS:[EBX]
005ADE61  |.  8B80 6C030000    MOV     EAX, DWORD PTR DS:[EAX+36C]
005ADE67  |.  E8 BC56EBFF      CALL    utcc.00463528
005ADE6C  |.  8B45 D8          MOV     EAX, DWORD PTR SS:[EBP-28]         ;  //试练码
005ADE6F  |.  8D55 DC          LEA     EDX, DWORD PTR SS:[EBP-24]
005ADE72  |.  E8 45C6E5FF      CALL    utcc.0040A4BC
005ADE77  |.  8B55 DC          MOV     EDX, DWORD PTR SS:[EBP-24]         ;  //试练码
005ADE7A  |.  A1 78F45C00      MOV     EAX, DWORD PTR DS:[5CF478]
005ADE7F  |.  8B00             MOV     EAX, DWORD PTR DS:[EAX]
005ADE81  |.  59               POP     ECX                                ;  //用户名
005ADE82  |.  E8 51690100      CALL    utcc.005C47D8                      ;  //关键CALL
005ADE87  |.  84C0             TEST    AL, AL
005ADE89  |.  0F84 A6000000    JE      utcc.005ADF35                      ;  //关键跳转
005ADE8F  |.  6A 40            PUSH    40
005ADE91  |.  B8 0CE05A00      MOV     EAX, utcc.005AE00C                 ;  ASCII "Registration"
005ADE96  |.  E8 C5EB0000      CALL    utcc.005BCA60
005ADE9B  |.  50               PUSH    EAX
005ADE9C  |.  B8 5CE05A00      MOV     EAX, utcc.005AE05C                 ;  ASCII "Thank you for your registration!"
005ADEA1  |.  E8 BAEB0000      CALL    utcc.005BCA60
005ADEA6  |.  50               PUSH    EAX
005ADEA7  |.  8B03             MOV     EAX, DWORD PTR DS:[EBX]
005ADEA9  |.  E8 16D7EBFF      CALL    utcc.0046B5C4
005ADEAE  |.  50               PUSH    EAX                                ; |hOwner
005ADEAF  |.  E8 38ACE5FF      CALL    <JMP.&user32.MessageBoxA>          ; \MessageBoxA
005ADEB4  |.  A1 78F45C00      MOV     EAX, DWORD PTR DS:[5CF478]
005ADEB9  |.  8B00             MOV     EAX, DWORD PTR DS:[EAX]
005ADEBB  |.  E8 906B0100      CALL    utcc.005C4A50
005ADEC0  |.  8D55 CC          LEA     EDX, DWORD PTR SS:[EBP-34]
005ADEC3  |.  B8 88E05A00      MOV     EAX, utcc.005AE088                 ;  ASCII "Registered by"
005ADEC8  |.  E8 6FDFF7FF      CALL    utcc.0052BE3C
005ADECD  |.  FF75 CC          PUSH    DWORD PTR SS:[EBP-34]
005ADED0  |.  68 9CE05A00      PUSH    utcc.005AE09C
005ADED5  |.  8D45 C8          LEA     EAX, DWORD PTR SS:[EBP-38]
005ADED8  |.  8B15 44F15C00    MOV     EDX, DWORD PTR DS:[5CF144]
005ADEDE  |.  E8 7581E5FF      CALL    utcc.00406058
005ADEE3  |.  FF75 C8          PUSH    DWORD PTR SS:[EBP-38]
005ADEE6  |.  8D45 D0          LEA     EAX, DWORD PTR SS:[EBP-30]
005ADEE9  |.  BA 03000000      MOV     EDX, 3
005ADEEE  |.  E8 F181E5FF      CALL    utcc.004060E4
005ADEF3  |.  8B55 D0          MOV     EDX, DWORD PTR SS:[EBP-30]
005ADEF6  |.  8D45 D4          LEA     EAX, DWORD PTR SS:[EBP-2C]
005ADEF9  |.  E8 4A7AE5FF      CALL    utcc.00405948
005ADEFE  |.  8B55 D4          MOV     EDX, DWORD PTR SS:[EBP-2C]
005ADF01  |.  8B86 6C030000    MOV     EAX, DWORD PTR DS:[ESI+36C]
005ADF07  |.  E8 4C56EBFF      CALL    utcc.00463558
005ADF0C  |.  A1 3CF15C00      MOV     EAX, DWORD PTR DS:[5CF13C]
005ADF11  |.  8B80 7C030000    MOV     EAX, DWORD PTR DS:[EAX+37C]
005ADF17  |.  33D2             XOR     EDX, EDX
005ADF19  |.  E8 2A55EBFF      CALL    utcc.00463448
005ADF1E  |.  A1 3CF15C00      MOV     EAX, DWORD PTR DS:[5CF13C]
005ADF23  |.  8B80 78030000    MOV     EAX, DWORD PTR DS:[EAX+378]
005ADF29  |.  C780 5C020000 01>MOV     DWORD PTR DS:[EAX+25C], 1
005ADF33  |.  EB 47            JMP     SHORT utcc.005ADF7C
005ADF35  |>  6A 30            PUSH    30
005ADF37  |.  B8 0CE05A00      MOV     EAX, utcc.005AE00C                 ;  ASCII "Registration"
005ADF3C  |.  E8 1FEB0000      CALL    utcc.005BCA60
005ADF41  |.  50               PUSH    EAX
005ADF42  |.  B8 A8E05A00      MOV     EAX, utcc.005AE0A8                 ;  ASCII "Key is not valid !"
005ADF47  |.  E8 14EB0000      CALL    utcc.005BCA60
005ADF4C  |.  50               PUSH    EAX
005ADF4D  |.  8B03             MOV     EAX, DWORD PTR DS:[EBX]
005ADF4F  |.  E8 70D6EBFF      CALL    utcc.0046B5C4
005ADF54  |.  50               PUSH    EAX                                ; |hOwner
005ADF55  |.  E8 92ABE5FF      CALL    <JMP.&user32.MessageBoxA>          ; \MessageBoxA
005ADF5A  |.  8B03             MOV     EAX, DWORD PTR DS:[EBX]
005ADF5C  |.  E8 1B68E5FF      CALL    utcc.0040477C
005ADF61  |.  A1 3CF15C00      MOV     EAX, DWORD PTR DS:[5CF13C]
005ADF66  |.  C780 94020000 02>MOV     DWORD PTR DS:[EAX+294], 2
005ADF70  |.  A1 3CF15C00      MOV     EAX, DWORD PTR DS:[5CF13C]
005ADF75  |.  E8 A211EDFF      CALL    utcc.0047F11C
005ADF7A  |.  EB 07            JMP     SHORT utcc.005ADF83
005ADF7C  |>  8B03             MOV     EAX, DWORD PTR DS:[EBX]
005ADF7E  |.  E8 F967E5FF      CALL    utcc.0040477C
005ADF83  |>  33C0             XOR     EAX, EAX
005ADF85  |.  5A               POP     EDX
005ADF86  |.  59               POP     ECX
005ADF87  |.  59               POP     ECX
005ADF88  |.  64:8910          MOV     DWORD PTR FS:[EAX], EDX
005ADF8B  |.  68 FDDF5A00      PUSH    utcc.005ADFFD
005ADF90  |>  8D45 C8          LEA     EAX, DWORD PTR SS:[EBP-38]
005ADF93  |.  BA 03000000      MOV     EDX, 3
005ADF98  |.  E8 437FE5FF      CALL    utcc.00405EE0
005ADF9D  |.  8D45 D4          LEA     EAX, DWORD PTR SS:[EBP-2C]
005ADFA0  |.  E8 1B77E5FF      CALL    utcc.004056C0
005ADFA5  |.  8D45 D8          LEA     EAX, DWORD PTR SS:[EBP-28]
005ADFA8  |.  E8 1377E5FF      CALL    utcc.004056C0
005ADFAD  |.  8D45 DC          LEA     EAX, DWORD PTR SS:[EBP-24]
005ADFB0  |.  E8 0B77E5FF      CALL    utcc.004056C0
005ADFB5  |.  8D45 E0          LEA     EAX, DWORD PTR SS:[EBP-20]
005ADFB8  |.  E8 0377E5FF      CALL    utcc.004056C0
005ADFBD  |.  8D45 E4          LEA     EAX, DWORD PTR SS:[EBP-1C]
005ADFC0  |.  E8 FB76E5FF      CALL    utcc.004056C0
005ADFC5  |.  8D45 E8          LEA     EAX, DWORD PTR SS:[EBP-18]
005ADFC8  |.  E8 FB7EE5FF      CALL    utcc.00405EC8
005ADFCD  |.  8D45 EC          LEA     EAX, DWORD PTR SS:[EBP-14]
005ADFD0  |.  E8 EB76E5FF      CALL    utcc.004056C0
005ADFD5  |.  8D45 F0          LEA     EAX, DWORD PTR SS:[EBP-10]
005ADFD8  |.  E8 EB7EE5FF      CALL    utcc.00405EC8
005ADFDD  |.  8D45 F4          LEA     EAX, DWORD PTR SS:[EBP-C]
005ADFE0  |.  E8 DB76E5FF      CALL    utcc.004056C0
005ADFE5  |.  8D45 F8          LEA     EAX, DWORD PTR SS:[EBP-8]
005ADFE8  |.  E8 DB7EE5FF      CALL    utcc.00405EC8
005ADFED  |.  8D45 FC          LEA     EAX, DWORD PTR SS:[EBP-4]
005ADFF0  |.  E8 CB76E5FF      CALL    utcc.004056C0
005ADFF5  \.  C3               RETN
005ADFF6   .^ E9 5D6FE5FF      JMP     utcc.00404F58
005ADFFB   .^ EB 93            JMP     SHORT utcc.005ADF90
005ADFFD   .  5E               POP     ESI
005ADFFE   .  5B               POP     EBX
005ADFFF   .  8BE5             MOV     ESP, EBP
005AE001   .  5D               POP     EBP
005AE002   .  C3               RETN
==============================================================
005C47D8  /$  55               PUSH    EBP
005C47D9  |.  8BEC             MOV     EBP, ESP
005C47DB  |.  51               PUSH    ECX
005C47DC  |.  B9 07000000      MOV     ECX, 7
005C47E1  |>  6A 00            /PUSH    0
005C47E3  |.  6A 00            |PUSH    0
005C47E5  |.  49               |DEC     ECX
005C47E6  |.^ 75 F9            \JNZ     SHORT utcc.005C47E1
005C47E8  |.  51               PUSH    ECX
005C47E9  |.  874D FC          XCHG    DWORD PTR SS:[EBP-4], ECX
005C47EC  |.  53               PUSH    EBX
005C47ED  |.  56               PUSH    ESI
005C47EE  |.  894D F8          MOV     DWORD PTR SS:[EBP-8], ECX
005C47F1  |.  8955 FC          MOV     DWORD PTR SS:[EBP-4], EDX
005C47F4  |.  8B45 FC          MOV     EAX, DWORD PTR SS:[EBP-4]          ;  //试练码
005C47F7  |.  E8 4413E4FF      CALL    utcc.00405B40
005C47FC  |.  8B45 F8          MOV     EAX, DWORD PTR SS:[EBP-8]          ;  //用户名
005C47FF  |.  E8 3C13E4FF      CALL    utcc.00405B40
005C4804  |.  33C0             XOR     EAX, EAX
005C4806  |.  55               PUSH    EBP
005C4807  |.  68 E5495C00      PUSH    utcc.005C49E5
005C480C  |.  64:FF30          PUSH    DWORD PTR FS:[EAX]
005C480F  |.  64:8920          MOV     DWORD PTR FS:[EAX], ESP
005C4812  |.  33DB             XOR     EBX, EBX
005C4814  |.  8D45 E8          LEA     EAX, DWORD PTR SS:[EBP-18]
005C4817  |.  8B55 FC          MOV     EDX, DWORD PTR SS:[EBP-4]
005C481A  |.  E8 390FE4FF      CALL    utcc.00405758
005C481F  |.  A1 3CF75C00      MOV     EAX, DWORD PTR DS:[5CF73C]
005C4824  |.  8B55 FC          MOV     EDX, DWORD PTR SS:[EBP-4]          ;  //试练码
005C4827  |.  E8 E80EE4FF      CALL    utcc.00405714
005C482C  |.  A1 F0F85C00      MOV     EAX, DWORD PTR DS:[5CF8F0]
005C4831  |.  8B55 F8          MOV     EDX, DWORD PTR SS:[EBP-8]          ;  //用户名
005C4834  |.  E8 DB0EE4FF      CALL    utcc.00405714
005C4839  |.  8B55 E8          MOV     EDX, DWORD PTR SS:[EBP-18]         ;  //试练码
005C483C  |.  8BC2             MOV     EAX, EDX
005C483E  |.  85C0             TEST    EAX, EAX
005C4840  |.  74 05            JE      SHORT utcc.005C4847
005C4842  |.  83E8 04          SUB     EAX, 4
005C4845  |.  8B00             MOV     EAX, DWORD PTR DS:[EAX]
005C4847  |>  83F8 0B          CMP     EAX, 0B
005C484A  |.  0F8E F7000000    JLE     utcc.005C4947                      ;  //注册码长度大于0Bh
005C4850  |.  8BC2             MOV     EAX, EDX
005C4852  |.  85C0             TEST    EAX, EAX
005C4854  |.  74 05            JE      SHORT utcc.005C485B
005C4856  |.  83E8 04          SUB     EAX, 4
005C4859  |.  8B00             MOV     EAX, DWORD PTR DS:[EAX]
005C485B  |>  83F8 0E          CMP     EAX, 0E
005C485E  |.  0F8F E3000000    JG      utcc.005C4947                      ;  //注册码长度小于等于0Eh
005C4864  |.  8D45 F4          LEA     EAX, DWORD PTR SS:[EBP-C]
005C4867  |.  50               PUSH    EAX
005C4868  |.  B9 06000000      MOV     ECX, 6
005C486D  |.  BA 01000000      MOV     EDX, 1
005C4872  |.  8B45 FC          MOV     EAX, DWORD PTR SS:[EBP-4]          ;  //试练码
005C4875  |.  E8 3E13E4FF      CALL    utcc.00405BB8
005C487A  |.  8B15 F0F85C00    MOV     EDX, DWORD PTR DS:[5CF8F0]         ;  utcc.005CF144
005C4880  |.  8B12             MOV     EDX, DWORD PTR DS:[EDX]
005C4882  |.  8D45 D0          LEA     EAX, DWORD PTR SS:[EBP-30]
005C4885  |.  B9 FC495C00      MOV     ECX, utcc.005C49FC                 ;  ASCII "User Time Administrator"
005C488A  |.  E8 4911E4FF      CALL    utcc.004059D8                      ;  //用户名与"User Time Administrator"相连
005C488F  |.  8B45 D0          MOV     EAX, DWORD PTR SS:[EBP-30]         ;  //相连字符串
005C4892  |.  8D55 D4          LEA     EDX, DWORD PTR SS:[EBP-2C]
005C4895  |.  E8 9A2BFBFF      CALL    utcc.00577434                      ;  //MD5初始化
005C489A  |.  8D45 D4          LEA     EAX, DWORD PTR SS:[EBP-2C]
005C489D  |.  8D55 E4          LEA     EDX, DWORD PTR SS:[EBP-1C]
005C48A0  |.  E8 1B2BFBFF      CALL    utcc.005773C0                      ;  //MD5运算
005C48A5  |.  8B45 E4          MOV     EAX, DWORD PTR SS:[EBP-1C]         ;  //相连字符串MD5值大写
005C48A8  |.  8D55 F0          LEA     EDX, DWORD PTR SS:[EBP-10]
005C48AB  |.  E8 A858E4FF      CALL    utcc.0040A158
005C48B0  |.  8D45 EC          LEA     EAX, DWORD PTR SS:[EBP-14]
005C48B3  |.  E8 080EE4FF      CALL    utcc.004056C0
005C48B8  |.  8D45 CC          LEA     EAX, DWORD PTR SS:[EBP-34]
005C48BB  |.  50               PUSH    EAX
005C48BC  |.  B9 02000000      MOV     ECX, 2
005C48C1  |.  BA 01000000      MOV     EDX, 1
005C48C6  |.  8B45 FC          MOV     EAX, DWORD PTR SS:[EBP-4]
005C48C9  |.  E8 EA12E4FF      CALL    utcc.00405BB8                      ;  //取试练码1.2位
005C48CE  |.  8B45 CC          MOV     EAX, DWORD PTR SS:[EBP-34]
005C48D1  |.  E8 7661E4FF      CALL    utcc.0040AA4C
005C48D6  |.  8BF0             MOV     ESI, EAX
005C48D8  |.  8D45 C8          LEA     EAX, DWORD PTR SS:[EBP-38]
005C48DB  |.  50               PUSH    EAX
005C48DC  |.  B9 02000000      MOV     ECX, 2
005C48E1  |.  BA 03000000      MOV     EDX, 3
005C48E6  |.  8B45 FC          MOV     EAX, DWORD PTR SS:[EBP-4]
005C48E9  |.  E8 CA12E4FF      CALL    utcc.00405BB8                      ;  //取试练码3.4位
005C48EE  |.  8B45 C8          MOV     EAX, DWORD PTR SS:[EBP-38]
005C48F1  |.  E8 5661E4FF      CALL    utcc.0040AA4C
005C48F6  |.  03F0             ADD     ESI, EAX
005C48F8  |.  8D45 C4          LEA     EAX, DWORD PTR SS:[EBP-3C]
005C48FB  |.  50               PUSH    EAX
005C48FC  |.  B9 02000000      MOV     ECX, 2
005C4901  |.  BA 05000000      MOV     EDX, 5
005C4906  |.  8B45 FC          MOV     EAX, DWORD PTR SS:[EBP-4]
005C4909  |.  E8 AA12E4FF      CALL    utcc.00405BB8                      ;  //取试练码5.6位
005C490E  |.  8B45 C4          MOV     EAX, DWORD PTR SS:[EBP-3C]
005C4911  |.  E8 3661E4FF      CALL    utcc.0040AA4C
005C4916  |.  03F0             ADD     ESI, EAX                           ;  //取左边6位,每2个一组累加
005C4918  |.  8B5D FC          MOV     EBX, DWORD PTR SS:[EBP-4]
005C491B  |.  85DB             TEST    EBX, EBX
005C491D  |.  74 05            JE      SHORT utcc.005C4924
005C491F  |.  83EB 04          SUB     EBX, 4
005C4922  |.  8B1B             MOV     EBX, DWORD PTR DS:[EBX]            ;  //试练码长度
005C4924  |>  8D45 C0          LEA     EAX, DWORD PTR SS:[EBP-40]
005C4927  |.  50               PUSH    EAX
005C4928  |.  8BD3             MOV     EDX, EBX                           ;  //试练码长度
005C492A  |.  4A               DEC     EDX                                ;  //EDX=EDX-1
005C492B  |.  B9 02000000      MOV     ECX, 2
005C4930  |.  8B45 FC          MOV     EAX, DWORD PTR SS:[EBP-4]
005C4933  |.  E8 8012E4FF      CALL    utcc.00405BB8                      ;  //取试练码右边2位
005C4938  |.  8B45 C0          MOV     EAX, DWORD PTR SS:[EBP-40]
005C493B  |.  E8 0C61E4FF      CALL    utcc.0040AA4C
005C4940  |.  3BF0             CMP     ESI, EAX                           ;  //累加值与右边2位的值比较
005C4942  |.  0F94C0           SETE    AL
005C4945  |.  8BD8             MOV     EBX, EAX
005C4947  |>  84DB             TEST    BL, BL
005C4949  |.  74 72            JE      SHORT utcc.005C49BD
005C494B  |.  A1 70F95C00      MOV     EAX, DWORD PTR DS:[5CF970]
005C4950  |.  8B00             MOV     EAX, DWORD PTR DS:[EAX]
005C4952  |.  8B4D F4          MOV     ECX, DWORD PTR SS:[EBP-C]
005C4955  |.  BA 1C4A5C00      MOV     EDX, utcc.005C4A1C                 ;  ASCII "KY"
005C495A  |.  E8 799CECFF      CALL    utcc.0048E5D8
005C495F  |.  A1 70F95C00      MOV     EAX, DWORD PTR DS:[5CF970]
005C4964  |.  8B00             MOV     EAX, DWORD PTR DS:[EAX]
005C4966  |.  8B4D FC          MOV     ECX, DWORD PTR SS:[EBP-4]
005C4969  |.  BA 284A5C00      MOV     EDX, utcc.005C4A28                 ;  ASCII "UK"
005C496E  |.  E8 659CECFF      CALL    utcc.0048E5D8
005C4973  |.  A1 70F95C00      MOV     EAX, DWORD PTR DS:[5CF970]
005C4978  |.  8B00             MOV     EAX, DWORD PTR DS:[EAX]
005C497A  |.  8B4D F8          MOV     ECX, DWORD PTR SS:[EBP-8]
005C497D  |.  BA 344A5C00      MOV     EDX, utcc.005C4A34                 ;  ASCII "UN"
005C4982  |.  E8 519CECFF      CALL    utcc.0048E5D8
005C4987  |.  A1 70F95C00      MOV     EAX, DWORD PTR DS:[5CF970]
005C498C  |.  8B00             MOV     EAX, DWORD PTR DS:[EAX]
005C498E  |.  8B4D F0          MOV     ECX, DWORD PTR SS:[EBP-10]
005C4991  |.  BA 404A5C00      MOV     EDX, utcc.005C4A40                 ;  ASCII "ES"
005C4996  |.  E8 3D9CECFF      CALL    utcc.0048E5D8
005C499B  |.  A1 70F95C00      MOV     EAX, DWORD PTR DS:[5CF970]
005C49A0  |.  8B00             MOV     EAX, DWORD PTR DS:[EAX]
005C49A2  |.  8B4D EC          MOV     ECX, DWORD PTR SS:[EBP-14]
005C49A5  |.  BA 4C4A5C00      MOV     EDX, utcc.005C4A4C                 ;  ASCII "DS"
005C49AA  |.  E8 299CECFF      CALL    utcc.0048E5D8
005C49AF  |.  A1 70F95C00      MOV     EAX, DWORD PTR DS:[5CF970]
005C49B4  |.  8B00             MOV     EAX, DWORD PTR DS:[EAX]
005C49B6  |.  B2 01            MOV     DL, 1
005C49B8  |.  E8 239BECFF      CALL    utcc.0048E4E0
005C49BD  |>  33C0             XOR     EAX, EAX
005C49BF  |.  5A               POP     EDX
005C49C0  |.  59               POP     ECX
005C49C1  |.  59               POP     ECX
005C49C2  |.  64:8910          MOV     DWORD PTR FS:[EAX], EDX
005C49C5  |.  68 EC495C00      PUSH    utcc.005C49EC
005C49CA  |>  8D45 C0          LEA     EAX, DWORD PTR SS:[EBP-40]
005C49CD  |.  BA 05000000      MOV     EDX, 5
005C49D2  |.  E8 0D0DE4FF      CALL    utcc.004056E4
005C49D7  |.  8D45 E4          LEA     EAX, DWORD PTR SS:[EBP-1C]
005C49DA  |.  BA 07000000      MOV     EDX, 7
005C49DF  |.  E8 000DE4FF      CALL    utcc.004056E4
005C49E4  \.  C3               RETN
005C49E5   .^ E9 6E05E4FF      JMP     utcc.00404F58
005C49EA   .^ EB DE            JMP     SHORT utcc.005C49CA
005C49EC   .  8BC3             MOV     EAX, EBX
005C49EE   .  5E               POP     ESI
005C49EF   .  5B               POP     EBX
005C49F0   .  8BE5             MOV     ESP, EBP
005C49F2   .  5D               POP     EBP
005C49F3   .  C3               RETN
**************************************************************  
【破解总结】
--------------------------------------------------------------
【算法总结】
1.注册码和用户名无关
2.注册码长度为12或13或14位
3.注册码左边6位每2个一组累加值必须等于右边2位的值
--------------------------------------------------------------
【算法注册机】
(略)
--------------------------------------------------------------
【注册信息】
一组可用的注册码
用户名:(任意)
注册码:222222666666
--------------------------------------------------------------
感谢飘云老大、猫老大、Nisy老大以及很多前辈们的学习教程以及所有帮助过我的论坛兄弟姐妹们!谢谢
--------------------------------------------------------------
【版权声明】破文是学习的手记,兴趣是成功的源泉;本破文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!