tianxj 发表于 2008-9-13 18:54

User Time Administrator 4.6.4.3算法分析

【破文标题】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 PUSHEBP
005ADD71|.8BEC MOV EBP, ESP
005ADD73|.B9 07000000MOV ECX, 7
005ADD78|>6A 00/PUSH0
005ADD7A|.6A 00|PUSH0
005ADD7C|.49 |DEC ECX
005ADD7D|.^ 75 F9\JNZ SHORT utcc.005ADD78
005ADD7F|.53 PUSHEBX
005ADD80|.56 PUSHESI
005ADD81|.8BF0 MOV ESI, EAX
005ADD83|.8B1D 74F55C00MOV EBX, DWORD PTR DS: ;utcc.005D5C98
005ADD89|.33C0 XOR EAX, EAX
005ADD8B|.55 PUSHEBP
005ADD8C|.68 F6DF5A00PUSHutcc.005ADFF6
005ADD91|.64:FF30PUSHDWORD PTR FS:
005ADD94|.64:8920MOV DWORD PTR FS:, ESP
005ADD97|.8BCB MOV ECX, EBX
005ADD99|.A1 0CF95C00MOV EAX, DWORD PTR DS:
005ADD9E|.8B00 MOV EAX, DWORD PTR DS:
005ADDA0|.8B15 9CD35A00MOV EDX, DWORD PTR DS: ;utcc.005AD3E8
005ADDA6|.E8 ED53EDFFCALLutcc.00483198
005ADDAB|.8B03 MOV EAX, DWORD PTR DS:
005ADDAD|.8B80 78030000MOV EAX, DWORD PTR DS:
005ADDB3|.B2 01MOV DL, 1
005ADDB5|.E8 8E56EBFFCALLutcc.00463448
005ADDBA|.8D55 F8LEA EDX, DWORD PTR SS:
005ADDBD|.B8 0CE05A00MOV EAX, utcc.005AE00C ;ASCII "Registration"
005ADDC2|.E8 75E0F7FFCALLutcc.0052BE3C
005ADDC7|.8B55 F8MOV EDX, DWORD PTR SS:
005ADDCA|.8D45 FCLEA EAX, DWORD PTR SS:
005ADDCD|.E8 767BE5FFCALLutcc.00405948
005ADDD2|.8B55 FCMOV EDX, DWORD PTR SS:
005ADDD5|.8B03 MOV EAX, DWORD PTR DS:
005ADDD7|.E8 7C57EBFFCALLutcc.00463558
005ADDDC|.8D55 F0LEA EDX, DWORD PTR SS:
005ADDDF|.B8 24E05A00MOV EAX, utcc.005AE024 ;ASCII "Registration name"
005ADDE4|.E8 53E0F7FFCALLutcc.0052BE3C
005ADDE9|.8B55 F0MOV EDX, DWORD PTR SS:
005ADDEC|.8D45 F4LEA EAX, DWORD PTR SS:
005ADDEF|.E8 547BE5FFCALLutcc.00405948
005ADDF4|.8B55 F4MOV EDX, DWORD PTR SS:
005ADDF7|.8B03 MOV EAX, DWORD PTR DS:
005ADDF9|.8B80 60030000MOV EAX, DWORD PTR DS:
005ADDFF|.E8 5457EBFFCALLutcc.00463558
005ADE04|.8D55 E8LEA EDX, DWORD PTR SS:
005ADE07|.B8 40E05A00MOV EAX, utcc.005AE040 ;ASCII "Registration key"
005ADE0C|.E8 2BE0F7FFCALLutcc.0052BE3C
005ADE11|.8B55 E8MOV EDX, DWORD PTR SS:
005ADE14|.8D45 ECLEA EAX, DWORD PTR SS:
005ADE17|.E8 2C7BE5FFCALLutcc.00405948
005ADE1C|.8B55 ECMOV EDX, DWORD PTR SS:
005ADE1F|.8B03 MOV EAX, DWORD PTR DS:
005ADE21|.8B80 68030000MOV EAX, DWORD PTR DS:
005ADE27|.E8 2C57EBFFCALLutcc.00463558
005ADE2C|.8B03 MOV EAX, DWORD PTR DS:
005ADE2E|.8B10 MOV EDX, DWORD PTR DS:
005ADE30|.FF92 FC000000CALLNEAR DWORD PTR DS:
005ADE36|.48 DEC EAX
005ADE37|.0F85 3F010000JNZ utcc.005ADF7C
005ADE3D|.8D55 E0LEA EDX, DWORD PTR SS:
005ADE40|.8B03 MOV EAX, DWORD PTR DS:
005ADE42|.8B80 64030000MOV EAX, DWORD PTR DS:
005ADE48|.E8 DB56EBFFCALLutcc.00463528
005ADE4D|.8B45 E0MOV EAX, DWORD PTR SS: ;//用户名
005ADE50|.8D55 E4LEA EDX, DWORD PTR SS:
005ADE53|.E8 64C6E5FFCALLutcc.0040A4BC
005ADE58|.8B45 E4MOV EAX, DWORD PTR SS: ;//用户名
005ADE5B|.50 PUSHEAX
005ADE5C|.8D55 D8LEA EDX, DWORD PTR SS:
005ADE5F|.8B03 MOV EAX, DWORD PTR DS:
005ADE61|.8B80 6C030000MOV EAX, DWORD PTR DS:
005ADE67|.E8 BC56EBFFCALLutcc.00463528
005ADE6C|.8B45 D8MOV EAX, DWORD PTR SS: ;//试练码
005ADE6F|.8D55 DCLEA EDX, DWORD PTR SS:
005ADE72|.E8 45C6E5FFCALLutcc.0040A4BC
005ADE77|.8B55 DCMOV EDX, DWORD PTR SS: ;//试练码
005ADE7A|.A1 78F45C00MOV EAX, DWORD PTR DS:
005ADE7F|.8B00 MOV EAX, DWORD PTR DS:
005ADE81|.59 POP ECX;//用户名
005ADE82|.E8 51690100CALLutcc.005C47D8;//关键CALL
005ADE87|.84C0 TESTAL, AL
005ADE89|.0F84 A6000000JEutcc.005ADF35;//关键跳转
005ADE8F|.6A 40PUSH40
005ADE91|.B8 0CE05A00MOV EAX, utcc.005AE00C ;ASCII "Registration"
005ADE96|.E8 C5EB0000CALLutcc.005BCA60
005ADE9B|.50 PUSHEAX
005ADE9C|.B8 5CE05A00MOV EAX, utcc.005AE05C ;ASCII "Thank you for your registration!"
005ADEA1|.E8 BAEB0000CALLutcc.005BCA60
005ADEA6|.50 PUSHEAX
005ADEA7|.8B03 MOV EAX, DWORD PTR DS:
005ADEA9|.E8 16D7EBFFCALLutcc.0046B5C4
005ADEAE|.50 PUSHEAX; |hOwner
005ADEAF|.E8 38ACE5FFCALL<JMP.&user32.MessageBoxA>; \MessageBoxA
005ADEB4|.A1 78F45C00MOV EAX, DWORD PTR DS:
005ADEB9|.8B00 MOV EAX, DWORD PTR DS:
005ADEBB|.E8 906B0100CALLutcc.005C4A50
005ADEC0|.8D55 CCLEA EDX, DWORD PTR SS:
005ADEC3|.B8 88E05A00MOV EAX, utcc.005AE088 ;ASCII "Registered by"
005ADEC8|.E8 6FDFF7FFCALLutcc.0052BE3C
005ADECD|.FF75 CCPUSHDWORD PTR SS:
005ADED0|.68 9CE05A00PUSHutcc.005AE09C
005ADED5|.8D45 C8LEA EAX, DWORD PTR SS:
005ADED8|.8B15 44F15C00MOV EDX, DWORD PTR DS:
005ADEDE|.E8 7581E5FFCALLutcc.00406058
005ADEE3|.FF75 C8PUSHDWORD PTR SS:
005ADEE6|.8D45 D0LEA EAX, DWORD PTR SS:
005ADEE9|.BA 03000000MOV EDX, 3
005ADEEE|.E8 F181E5FFCALLutcc.004060E4
005ADEF3|.8B55 D0MOV EDX, DWORD PTR SS:
005ADEF6|.8D45 D4LEA EAX, DWORD PTR SS:
005ADEF9|.E8 4A7AE5FFCALLutcc.00405948
005ADEFE|.8B55 D4MOV EDX, DWORD PTR SS:
005ADF01|.8B86 6C030000MOV EAX, DWORD PTR DS:
005ADF07|.E8 4C56EBFFCALLutcc.00463558
005ADF0C|.A1 3CF15C00MOV EAX, DWORD PTR DS:
005ADF11|.8B80 7C030000MOV EAX, DWORD PTR DS:
005ADF17|.33D2 XOR EDX, EDX
005ADF19|.E8 2A55EBFFCALLutcc.00463448
005ADF1E|.A1 3CF15C00MOV EAX, DWORD PTR DS:
005ADF23|.8B80 78030000MOV EAX, DWORD PTR DS:
005ADF29|.C780 5C020000 01>MOV DWORD PTR DS:, 1
005ADF33|.EB 47JMP SHORT utcc.005ADF7C
005ADF35|>6A 30PUSH30
005ADF37|.B8 0CE05A00MOV EAX, utcc.005AE00C ;ASCII "Registration"
005ADF3C|.E8 1FEB0000CALLutcc.005BCA60
005ADF41|.50 PUSHEAX
005ADF42|.B8 A8E05A00MOV EAX, utcc.005AE0A8 ;ASCII "Key is not valid !"
005ADF47|.E8 14EB0000CALLutcc.005BCA60
005ADF4C|.50 PUSHEAX
005ADF4D|.8B03 MOV EAX, DWORD PTR DS:
005ADF4F|.E8 70D6EBFFCALLutcc.0046B5C4
005ADF54|.50 PUSHEAX; |hOwner
005ADF55|.E8 92ABE5FFCALL<JMP.&user32.MessageBoxA>; \MessageBoxA
005ADF5A|.8B03 MOV EAX, DWORD PTR DS:
005ADF5C|.E8 1B68E5FFCALLutcc.0040477C
005ADF61|.A1 3CF15C00MOV EAX, DWORD PTR DS:
005ADF66|.C780 94020000 02>MOV DWORD PTR DS:, 2
005ADF70|.A1 3CF15C00MOV EAX, DWORD PTR DS:
005ADF75|.E8 A211EDFFCALLutcc.0047F11C
005ADF7A|.EB 07JMP SHORT utcc.005ADF83
005ADF7C|>8B03 MOV EAX, DWORD PTR DS:
005ADF7E|.E8 F967E5FFCALLutcc.0040477C
005ADF83|>33C0 XOR EAX, EAX
005ADF85|.5A POP EDX
005ADF86|.59 POP ECX
005ADF87|.59 POP ECX
005ADF88|.64:8910MOV DWORD PTR FS:, EDX
005ADF8B|.68 FDDF5A00PUSHutcc.005ADFFD
005ADF90|>8D45 C8LEA EAX, DWORD PTR SS:
005ADF93|.BA 03000000MOV EDX, 3
005ADF98|.E8 437FE5FFCALLutcc.00405EE0
005ADF9D|.8D45 D4LEA EAX, DWORD PTR SS:
005ADFA0|.E8 1B77E5FFCALLutcc.004056C0
005ADFA5|.8D45 D8LEA EAX, DWORD PTR SS:
005ADFA8|.E8 1377E5FFCALLutcc.004056C0
005ADFAD|.8D45 DCLEA EAX, DWORD PTR SS:
005ADFB0|.E8 0B77E5FFCALLutcc.004056C0
005ADFB5|.8D45 E0LEA EAX, DWORD PTR SS:
005ADFB8|.E8 0377E5FFCALLutcc.004056C0
005ADFBD|.8D45 E4LEA EAX, DWORD PTR SS:
005ADFC0|.E8 FB76E5FFCALLutcc.004056C0
005ADFC5|.8D45 E8LEA EAX, DWORD PTR SS:
005ADFC8|.E8 FB7EE5FFCALLutcc.00405EC8
005ADFCD|.8D45 ECLEA EAX, DWORD PTR SS:
005ADFD0|.E8 EB76E5FFCALLutcc.004056C0
005ADFD5|.8D45 F0LEA EAX, DWORD PTR SS:
005ADFD8|.E8 EB7EE5FFCALLutcc.00405EC8
005ADFDD|.8D45 F4LEA EAX, DWORD PTR SS:
005ADFE0|.E8 DB76E5FFCALLutcc.004056C0
005ADFE5|.8D45 F8LEA EAX, DWORD PTR SS:
005ADFE8|.E8 DB7EE5FFCALLutcc.00405EC8
005ADFED|.8D45 FCLEA EAX, DWORD PTR SS:
005ADFF0|.E8 CB76E5FFCALLutcc.004056C0
005ADFF5\.C3 RETN
005ADFF6 .^ E9 5D6FE5FFJMP utcc.00404F58
005ADFFB .^ EB 93JMP 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 PUSHEBP
005C47D9|.8BEC MOV EBP, ESP
005C47DB|.51 PUSHECX
005C47DC|.B9 07000000MOV ECX, 7
005C47E1|>6A 00/PUSH0
005C47E3|.6A 00|PUSH0
005C47E5|.49 |DEC ECX
005C47E6|.^ 75 F9\JNZ SHORT utcc.005C47E1
005C47E8|.51 PUSHECX
005C47E9|.874D FCXCHGDWORD PTR SS:, ECX
005C47EC|.53 PUSHEBX
005C47ED|.56 PUSHESI
005C47EE|.894D F8MOV DWORD PTR SS:, ECX
005C47F1|.8955 FCMOV DWORD PTR SS:, EDX
005C47F4|.8B45 FCMOV EAX, DWORD PTR SS:;//试练码
005C47F7|.E8 4413E4FFCALLutcc.00405B40
005C47FC|.8B45 F8MOV EAX, DWORD PTR SS:;//用户名
005C47FF|.E8 3C13E4FFCALLutcc.00405B40
005C4804|.33C0 XOR EAX, EAX
005C4806|.55 PUSHEBP
005C4807|.68 E5495C00PUSHutcc.005C49E5
005C480C|.64:FF30PUSHDWORD PTR FS:
005C480F|.64:8920MOV DWORD PTR FS:, ESP
005C4812|.33DB XOR EBX, EBX
005C4814|.8D45 E8LEA EAX, DWORD PTR SS:
005C4817|.8B55 FCMOV EDX, DWORD PTR SS:
005C481A|.E8 390FE4FFCALLutcc.00405758
005C481F|.A1 3CF75C00MOV EAX, DWORD PTR DS:
005C4824|.8B55 FCMOV EDX, DWORD PTR SS:;//试练码
005C4827|.E8 E80EE4FFCALLutcc.00405714
005C482C|.A1 F0F85C00MOV EAX, DWORD PTR DS:
005C4831|.8B55 F8MOV EDX, DWORD PTR SS:;//用户名
005C4834|.E8 DB0EE4FFCALLutcc.00405714
005C4839|.8B55 E8MOV EDX, DWORD PTR SS: ;//试练码
005C483C|.8BC2 MOV EAX, EDX
005C483E|.85C0 TESTEAX, EAX
005C4840|.74 05JESHORT utcc.005C4847
005C4842|.83E8 04SUB EAX, 4
005C4845|.8B00 MOV EAX, DWORD PTR DS:
005C4847|>83F8 0BCMP EAX, 0B
005C484A|.0F8E F7000000JLE utcc.005C4947;//注册码长度大于0Bh
005C4850|.8BC2 MOV EAX, EDX
005C4852|.85C0 TESTEAX, EAX
005C4854|.74 05JESHORT utcc.005C485B
005C4856|.83E8 04SUB EAX, 4
005C4859|.8B00 MOV EAX, DWORD PTR DS:
005C485B|>83F8 0ECMP EAX, 0E
005C485E|.0F8F E3000000JGutcc.005C4947;//注册码长度小于等于0Eh
005C4864|.8D45 F4LEA EAX, DWORD PTR SS:
005C4867|.50 PUSHEAX
005C4868|.B9 06000000MOV ECX, 6
005C486D|.BA 01000000MOV EDX, 1
005C4872|.8B45 FCMOV EAX, DWORD PTR SS:;//试练码
005C4875|.E8 3E13E4FFCALLutcc.00405BB8
005C487A|.8B15 F0F85C00MOV EDX, DWORD PTR DS: ;utcc.005CF144
005C4880|.8B12 MOV EDX, DWORD PTR DS:
005C4882|.8D45 D0LEA EAX, DWORD PTR SS:
005C4885|.B9 FC495C00MOV ECX, utcc.005C49FC ;ASCII "User Time Administrator"
005C488A|.E8 4911E4FFCALLutcc.004059D8;//用户名与"User Time Administrator"相连
005C488F|.8B45 D0MOV EAX, DWORD PTR SS: ;//相连字符串
005C4892|.8D55 D4LEA EDX, DWORD PTR SS:
005C4895|.E8 9A2BFBFFCALLutcc.00577434;//MD5初始化
005C489A|.8D45 D4LEA EAX, DWORD PTR SS:
005C489D|.8D55 E4LEA EDX, DWORD PTR SS:
005C48A0|.E8 1B2BFBFFCALLutcc.005773C0;//MD5运算
005C48A5|.8B45 E4MOV EAX, DWORD PTR SS: ;//相连字符串MD5值大写
005C48A8|.8D55 F0LEA EDX, DWORD PTR SS:
005C48AB|.E8 A858E4FFCALLutcc.0040A158
005C48B0|.8D45 ECLEA EAX, DWORD PTR SS:
005C48B3|.E8 080EE4FFCALLutcc.004056C0
005C48B8|.8D45 CCLEA EAX, DWORD PTR SS:
005C48BB|.50 PUSHEAX
005C48BC|.B9 02000000MOV ECX, 2
005C48C1|.BA 01000000MOV EDX, 1
005C48C6|.8B45 FCMOV EAX, DWORD PTR SS:
005C48C9|.E8 EA12E4FFCALLutcc.00405BB8;//取试练码1.2位
005C48CE|.8B45 CCMOV EAX, DWORD PTR SS:
005C48D1|.E8 7661E4FFCALLutcc.0040AA4C
005C48D6|.8BF0 MOV ESI, EAX
005C48D8|.8D45 C8LEA EAX, DWORD PTR SS:
005C48DB|.50 PUSHEAX
005C48DC|.B9 02000000MOV ECX, 2
005C48E1|.BA 03000000MOV EDX, 3
005C48E6|.8B45 FCMOV EAX, DWORD PTR SS:
005C48E9|.E8 CA12E4FFCALLutcc.00405BB8;//取试练码3.4位
005C48EE|.8B45 C8MOV EAX, DWORD PTR SS:
005C48F1|.E8 5661E4FFCALLutcc.0040AA4C
005C48F6|.03F0 ADD ESI, EAX
005C48F8|.8D45 C4LEA EAX, DWORD PTR SS:
005C48FB|.50 PUSHEAX
005C48FC|.B9 02000000MOV ECX, 2
005C4901|.BA 05000000MOV EDX, 5
005C4906|.8B45 FCMOV EAX, DWORD PTR SS:
005C4909|.E8 AA12E4FFCALLutcc.00405BB8;//取试练码5.6位
005C490E|.8B45 C4MOV EAX, DWORD PTR SS:
005C4911|.E8 3661E4FFCALLutcc.0040AA4C
005C4916|.03F0 ADD ESI, EAX ;//取左边6位,每2个一组累加
005C4918|.8B5D FCMOV EBX, DWORD PTR SS:
005C491B|.85DB TESTEBX, EBX
005C491D|.74 05JESHORT utcc.005C4924
005C491F|.83EB 04SUB EBX, 4
005C4922|.8B1B MOV EBX, DWORD PTR DS:;//试练码长度
005C4924|>8D45 C0LEA EAX, DWORD PTR SS:
005C4927|.50 PUSHEAX
005C4928|.8BD3 MOV EDX, EBX ;//试练码长度
005C492A|.4A DEC EDX;//EDX=EDX-1
005C492B|.B9 02000000MOV ECX, 2
005C4930|.8B45 FCMOV EAX, DWORD PTR SS:
005C4933|.E8 8012E4FFCALLutcc.00405BB8;//取试练码右边2位
005C4938|.8B45 C0MOV EAX, DWORD PTR SS:
005C493B|.E8 0C61E4FFCALLutcc.0040AA4C
005C4940|.3BF0 CMP ESI, EAX ;//累加值与右边2位的值比较
005C4942|.0F94C0 SETEAL
005C4945|.8BD8 MOV EBX, EAX
005C4947|>84DB TESTBL, BL
005C4949|.74 72JESHORT utcc.005C49BD
005C494B|.A1 70F95C00MOV EAX, DWORD PTR DS:
005C4950|.8B00 MOV EAX, DWORD PTR DS:
005C4952|.8B4D F4MOV ECX, DWORD PTR SS:
005C4955|.BA 1C4A5C00MOV EDX, utcc.005C4A1C ;ASCII "KY"
005C495A|.E8 799CECFFCALLutcc.0048E5D8
005C495F|.A1 70F95C00MOV EAX, DWORD PTR DS:
005C4964|.8B00 MOV EAX, DWORD PTR DS:
005C4966|.8B4D FCMOV ECX, DWORD PTR SS:
005C4969|.BA 284A5C00MOV EDX, utcc.005C4A28 ;ASCII "UK"
005C496E|.E8 659CECFFCALLutcc.0048E5D8
005C4973|.A1 70F95C00MOV EAX, DWORD PTR DS:
005C4978|.8B00 MOV EAX, DWORD PTR DS:
005C497A|.8B4D F8MOV ECX, DWORD PTR SS:
005C497D|.BA 344A5C00MOV EDX, utcc.005C4A34 ;ASCII "UN"
005C4982|.E8 519CECFFCALLutcc.0048E5D8
005C4987|.A1 70F95C00MOV EAX, DWORD PTR DS:
005C498C|.8B00 MOV EAX, DWORD PTR DS:
005C498E|.8B4D F0MOV ECX, DWORD PTR SS:
005C4991|.BA 404A5C00MOV EDX, utcc.005C4A40 ;ASCII "ES"
005C4996|.E8 3D9CECFFCALLutcc.0048E5D8
005C499B|.A1 70F95C00MOV EAX, DWORD PTR DS:
005C49A0|.8B00 MOV EAX, DWORD PTR DS:
005C49A2|.8B4D ECMOV ECX, DWORD PTR SS:
005C49A5|.BA 4C4A5C00MOV EDX, utcc.005C4A4C ;ASCII "DS"
005C49AA|.E8 299CECFFCALLutcc.0048E5D8
005C49AF|.A1 70F95C00MOV EAX, DWORD PTR DS:
005C49B4|.8B00 MOV EAX, DWORD PTR DS:
005C49B6|.B2 01MOV DL, 1
005C49B8|.E8 239BECFFCALLutcc.0048E4E0
005C49BD|>33C0 XOR EAX, EAX
005C49BF|.5A POP EDX
005C49C0|.59 POP ECX
005C49C1|.59 POP ECX
005C49C2|.64:8910MOV DWORD PTR FS:, EDX
005C49C5|.68 EC495C00PUSHutcc.005C49EC
005C49CA|>8D45 C0LEA EAX, DWORD PTR SS:
005C49CD|.BA 05000000MOV EDX, 5
005C49D2|.E8 0D0DE4FFCALLutcc.004056E4
005C49D7|.8D45 E4LEA EAX, DWORD PTR SS:
005C49DA|.BA 07000000MOV EDX, 7
005C49DF|.E8 000DE4FFCALLutcc.004056E4
005C49E4\.C3 RETN
005C49E5 .^ E9 6E05E4FFJMP utcc.00404F58
005C49EA .^ EB DEJMP 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老大以及很多前辈们的学习教程以及所有帮助过我的论坛兄弟姐妹们!谢谢
--------------------------------------------------------------
【版权声明】破文是学习的手记,兴趣是成功的源泉;本破文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!

uzcool 发表于 2008-9-13 19:08

看的晕呼呼的。。。算法不懂汗死。。。

下雪天 发表于 2008-9-13 22:04

很不错了,有时间好好分析下

guishouce 发表于 2008-9-13 22:37

看了一下 学到了很多 谢谢

awen6688 发表于 2008-10-20 13:52

很不错了,看了一下 学到了很多 谢谢.
页: [1]
查看完整版本: User Time Administrator 4.6.4.3算法分析