佳宜仓库管理软件 V3.30 企业版算法分析
【破文标题】佳宜仓库管理软件 V3.30 企业版【破文作者】tianxj
【作者邮箱】[email protected]
【作者主页】www.chinapyg.com
【破解工具】PEiD,OD
【破解平台】Windows XP
【软件名称】佳宜仓库管理软件 V3.30 企业版(2008-04-03版)
【软件大小】3765 KB
【原版下载】天空软件站
【保护方式】注册码
【软件简介】
一、适应对象:
本软件适用于大中小型企业、商畅?生产厂等物资供销、商品流通部门进行物资(商品)的采购、销售、库存的管理。主要功能包括进采购、采购退货、采购付款、销售、销售退货、物料领用、领料退回、库存盘点、仓库调拨、借入、借出、借入还出、借出还入,供方客户资料管理,供方供货汇总、明细报表,明细报表,客户供货汇总、明细报表,明细报表,部门领用汇总、明细报表、仓库汇总、明细报表。销售毛利汇总、明细报表,销售年报表等多种报表,使公司业务情况一目了然。
二、软件特点:
1。导航式的界面:
所想即所见,所见即所想,这就是导航式操作的优点。众多功能的巧妙安排,缩短了数据传输的流程;帐务的错综复杂体现在系统内部,你的操作依然那么简单,省时又省心。 全能的报表查询;所有的报表和基本资料均可导入EXCEL中进行分析加工,以满足用户的更高的要求。
2。高效强大的查询工具:
系统提供多种查询方式来帮助您快速找到所需要的资料。无论是使用预制条件还是临时的高级...
【破解声明】我是一只小菜鸟,偶得一点心得,愿与大家分享:)
--------------------------------------------------------------
【破解内容】
--------------------------------------------------------------
**************************************************************
一、运行程序,进行注册,输入错误的注册信息进行检测,有提示信息
"系统注册失败,请检查注册是否有误!"
**************************************************************
二、用PEiD对这个软件查壳,为 Borland Delphi 6.0 - 7.0
**************************************************************
三、运行OD,打开UN_XXXXX,右键—超级字串参考—查找ASCII.
发现"系统注册失败,请检查注册是否有误!"
005F1EF0 .55 PUSH EBP
005F1EF1 .8BEC MOV EBP,ESP
005F1EF3 .B9 06000000 MOV ECX,6
005F1EF8 >6A 00 PUSH 0
005F1EFA .6A 00 PUSH 0
005F1EFC .49 DEC ECX
005F1EFD .^ 75 F9 JNZ SHORT DepotMan.005F1EF8
005F1EFF .51 PUSH ECX
005F1F00 .53 PUSH EBX
005F1F01 .56 PUSH ESI
005F1F02 .57 PUSH EDI
005F1F03 .8945 FC MOV DWORD PTR SS:,EAX
005F1F06 .33C0 XOR EAX,EAX
005F1F08 .55 PUSH EBP
005F1F09 .68 6E215F00 PUSH DepotMan.005F216E
005F1F0E .64:FF30 PUSH DWORD PTR FS:
005F1F11 .64:8920 MOV DWORD PTR FS:,ESP
005F1F14 .8D55 F0 LEA EDX,DWORD PTR SS:
005F1F17 .8B45 FC MOV EAX,DWORD PTR SS:
005F1F1A .8B80 0C030000 MOV EAX,DWORD PTR DS:
005F1F20 .E8 B7D0E5FF CALL DepotMan.0044EFDC
005F1F25 .8B45 F0 MOV EAX,DWORD PTR SS: ;//EAX==用户名称
005F1F28 .8D55 F4 LEA EDX,DWORD PTR SS:
005F1F2B .E8 F877E1FF CALL DepotMan.00409728
005F1F30 .837D F4 00 CMP DWORD PTR SS:,0 ;//用户名称与0比较
005F1F34 .75 22 JNZ SHORT DepotMan.005F1F58 ;//若用户名称不为空则跳
005F1F36 .6A 00 PUSH 0
005F1F38 .68 7C215F00 PUSH DepotMan.005F217C ;请填写用户名称!
005F1F3D .E8 2A03FFFF CALL <JMP.&PunUnitLib.ShowMess>
005F1F42 .8B45 FC MOV EAX,DWORD PTR SS:
005F1F45 .8B80 0C030000 MOV EAX,DWORD PTR DS:
005F1F4B .8B10 MOV EDX,DWORD PTR DS:
005F1F4D .FF92 C0000000 CALL DWORD PTR DS:
005F1F53 .E9 B1010000 JMP DepotMan.005F2109
005F1F58 >8D55 E8 LEA EDX,DWORD PTR SS:
005F1F5B .8B45 FC MOV EAX,DWORD PTR SS:
005F1F5E .8B80 FC020000 MOV EAX,DWORD PTR DS:
005F1F64 .E8 73D0E5FF CALL DepotMan.0044EFDC
005F1F69 .8B45 E8 MOV EAX,DWORD PTR SS: ;//EAX==授权编号
005F1F6C .8D55 EC LEA EDX,DWORD PTR SS:
005F1F6F .E8 B477E1FF CALL DepotMan.00409728
005F1F74 .837D EC 00 CMP DWORD PTR SS:,0 ;//授权编号与0比较
005F1F78 .75 22 JNZ SHORT DepotMan.005F1F9C ;//若授权编号不为空则跳
005F1F7A .6A 00 PUSH 0
005F1F7C .68 90215F00 PUSH DepotMan.005F2190 ;授权号不能为空,请填写授权号!
005F1F81 .E8 E602FFFF CALL <JMP.&PunUnitLib.ShowMess>
005F1F86 .8B45 FC MOV EAX,DWORD PTR SS:
005F1F89 .8B80 FC020000 MOV EAX,DWORD PTR DS:
005F1F8F .8B10 MOV EDX,DWORD PTR DS:
005F1F91 .FF92 C0000000 CALL DWORD PTR DS:
005F1F97 .E9 6D010000 JMP DepotMan.005F2109
005F1F9C >A1 68D76A00 MOV EAX,DWORD PTR DS:
005F1FA1 .8B00 MOV EAX,DWORD PTR DS: ;//EAX==字符串"CA9D-36Q8"
005F1FA3 .E8 2830E1FF CALL DepotMan.00404FD0
005F1FA8 .50 PUSH EAX
005F1FA9 .8D55 E4 LEA EDX,DWORD PTR SS:
005F1FAC .8B45 FC MOV EAX,DWORD PTR SS:
005F1FAF .8B80 F4020000 MOV EAX,DWORD PTR DS:
005F1FB5 .E8 22D0E5FF CALL DepotMan.0044EFDC
005F1FBA .8B45 E4 MOV EAX,DWORD PTR SS: ;//EAX==产品编号
005F1FBD .E8 0E30E1FF CALL DepotMan.00404FD0
005F1FC2 .50 PUSH EAX
005F1FC3 .E8 D402FFFF CALL <JMP.&PunUnitLib.GetRegPass>
005F1FC8 .8BD0 MOV EDX,EAX
005F1FCA .8D45 F8 LEA EAX,DWORD PTR SS:
005F1FCD .E8 3E2DE1FF CALL DepotMan.00404D10
005F1FD2 .8D55 DC LEA EDX,DWORD PTR SS:
005F1FD5 .8B45 FC MOV EAX,DWORD PTR SS:
005F1FD8 .8B80 FC020000 MOV EAX,DWORD PTR DS:
005F1FDE .E8 F9CFE5FF CALL DepotMan.0044EFDC
005F1FE3 .8B45 DC MOV EAX,DWORD PTR SS: ;//EAX==授权编码
005F1FE6 .8D55 E0 LEA EDX,DWORD PTR SS:
005F1FE9 .E8 3A77E1FF CALL DepotMan.00409728
005F1FEE .8B45 E0 MOV EAX,DWORD PTR SS: ;//EAX==授权编码
005F1FF1 .8B55 F8 MOV EDX,DWORD PTR SS: ;//EDX==真码
005F1FF4 .E8 232FE1FF CALL DepotMan.00404F1C ;//比较CALL
005F1FF9 .0F85 FE000000 JNZ DepotMan.005F20FD ;//关键跳转
005F1FFF .33C0 XOR EAX,EAX
005F2001 .55 PUSH EBP
005F2002 .68 E9205F00 PUSH DepotMan.005F20E9
005F2007 .64:FF30 PUSH DWORD PTR FS:
005F200A .64:8920 MOV DWORD PTR FS:,ESP
005F200D .B2 01 MOV DL,1
005F200F .A1 00304700 MOV EAX,DWORD PTR DS:
005F2014 .E8 5311E8FF CALL DepotMan.0047316C
005F2019 .8BD8 MOV EBX,EAX
005F201B .BA 02000080 MOV EDX,80000002
005F2020 .8BC3 MOV EAX,EBX
005F2022 .E8 2112E8FF CALL DepotMan.00473248
005F2027 .B1 01 MOV CL,1
005F2029 .8B15 70CA6A00 MOV EDX,DWORD PTR DS: ;DepotMan.005F1E0C
005F202F .8BC3 MOV EAX,EBX
005F2031 .E8 5613E8FF CALL DepotMan.0047338C
005F2036 .8D55 D8 LEA EDX,DWORD PTR SS:
005F2039 .8B45 FC MOV EAX,DWORD PTR SS:
005F203C .8B80 0C030000 MOV EAX,DWORD PTR DS:
005F2042 .E8 95CFE5FF CALL DepotMan.0044EFDC
005F2047 .8B4D D8 MOV ECX,DWORD PTR SS:
005F204A .BA B8215F00 MOV EDX,DepotMan.005F21B8 ;username
005F204F .8BC3 MOV EAX,EBX
005F2051 .E8 D214E8FF CALL DepotMan.00473528
005F2056 .8D55 D0 LEA EDX,DWORD PTR SS:
005F2059 .8B45 FC MOV EAX,DWORD PTR SS:
005F205C .8B80 F4020000 MOV EAX,DWORD PTR DS:
005F2062 .E8 75CFE5FF CALL DepotMan.0044EFDC
005F2067 .8B45 D0 MOV EAX,DWORD PTR SS:
005F206A .E8 612FE1FF CALL DepotMan.00404FD0
005F206F .50 PUSH EAX
005F2070 .E8 1F02FFFF CALL <JMP.&PunUnitLib.SavePass>
005F2075 .8BD0 MOV EDX,EAX
005F2077 .8D45 D4 LEA EAX,DWORD PTR SS:
005F207A .E8 912CE1FF CALL DepotMan.00404D10
005F207F .8B4D D4 MOV ECX,DWORD PTR SS:
005F2082 .BA CC215F00 MOV EDX,DepotMan.005F21CC ;signcode
005F2087 .8BC3 MOV EAX,EBX
005F2089 .E8 9A14E8FF CALL DepotMan.00473528
005F208E .8B45 F8 MOV EAX,DWORD PTR SS:
005F2091 .E8 3A2FE1FF CALL DepotMan.00404FD0
005F2096 .50 PUSH EAX
005F2097 .E8 F801FFFF CALL <JMP.&PunUnitLib.SavePass>
005F209C .8BD0 MOV EDX,EAX
005F209E .8D45 CC LEA EAX,DWORD PTR SS:
005F20A1 .E8 6A2CE1FF CALL DepotMan.00404D10
005F20A6 .8B4D CC MOV ECX,DWORD PTR SS:
005F20A9 .BA E0215F00 MOV EDX,DepotMan.005F21E0 ;regcode
005F20AE .8BC3 MOV EAX,EBX
005F20B0 .E8 7314E8FF CALL DepotMan.00473528
005F20B5 .8BC3 MOV EAX,EBX
005F20B7 .E8 701BE1FF CALL DepotMan.00403C2C
005F20BC .6A 00 PUSH 0
005F20BE .68 E8215F00 PUSH DepotMan.005F21E8 ;系统注册成功,欢迎你使用本软件!
005F20C3 .E8 A401FFFF CALL <JMP.&PunUnitLib.ShowMess>
005F20C8 .A1 64D76A00 MOV EAX,DWORD PTR DS:
005F20CD .C700 02000000 MOV DWORD PTR DS:,2
005F20D3 .A1 F8D46A00 MOV EAX,DWORD PTR DS:
005F20D8 .8B00 MOV EAX,DWORD PTR DS:
005F20DA .E8 F9EAE7FF CALL DepotMan.00470BD8
005F20DF .33C0 XOR EAX,EAX
005F20E1 .5A POP EDX
005F20E2 .59 POP ECX
005F20E3 .59 POP ECX
005F20E4 .64:8910 MOV DWORD PTR FS:,EDX
005F20E7 .EB 20 JMP SHORT DepotMan.005F2109
005F20E9 .^ E9 1E20E1FF JMP DepotMan.0040410C
005F20EE .8B45 FC MOV EAX,DWORD PTR SS:
005F20F1 .E8 32B2E7FF CALL DepotMan.0046D328
005F20F6 .E8 3D24E1FF CALL DepotMan.00404538
005F20FB .EB 0C JMP SHORT DepotMan.005F2109
005F20FD >6A 03 PUSH 3
005F20FF .68 0C225F00 PUSH DepotMan.005F220C ;系统注册失败,请检查注册是否有误!
005F2104 .E8 6301FFFF CALL <JMP.&PunUnitLib.ShowMess>
005F2109 >33C0 XOR EAX,EAX
005F210B .5A POP EDX
005F210C .59 POP ECX
005F210D .59 POP ECX
005F210E .64:8910 MOV DWORD PTR FS:,EDX
005F2111 .68 75215F00 PUSH DepotMan.005F2175
005F2116 >8D45 CC LEA EAX,DWORD PTR SS:
005F2119 .E8 022AE1FF CALL DepotMan.00404B20
005F211E .8D45 D0 LEA EAX,DWORD PTR SS:
005F2121 .E8 FA29E1FF CALL DepotMan.00404B20
005F2126 .8D45 D4 LEA EAX,DWORD PTR SS:
005F2129 .E8 F229E1FF CALL DepotMan.00404B20
005F212E .8D45 D8 LEA EAX,DWORD PTR SS:
005F2131 .BA 02000000 MOV EDX,2
005F2136 .E8 092AE1FF CALL DepotMan.00404B44
005F213B .8D45 E0 LEA EAX,DWORD PTR SS:
005F213E .E8 DD29E1FF CALL DepotMan.00404B20
005F2143 .8D45 E4 LEA EAX,DWORD PTR SS:
005F2146 .BA 02000000 MOV EDX,2
005F214B >E8 F429E1FF CALL DepotMan.00404B44
005F2150 .8D45 EC LEA EAX,DWORD PTR SS:
005F2153 .E8 C829E1FF CALL DepotMan.00404B20
005F2158 .8D45 F0 LEA EAX,DWORD PTR SS:
005F215B .E8 C029E1FF CALL DepotMan.00404B20
005F2160 .8D45 F4 LEA EAX,DWORD PTR SS:
005F2163 .BA 02000000 MOV EDX,2
005F2168 .E8 D729E1FF CALL DepotMan.00404B44
005F216D .C3 RETN
005F216E .^ E9 4D22E1FF JMP DepotMan.004043C0
005F2173 .^ EB A1 JMP SHORT DepotMan.005F2116
005F2175 .5F POP EDI
005F2176 .5E POP ESI
005F2177 .5B POP EBX
005F2178 .8BE5 MOV ESP,EBP
005F217A .5D POP EBP
005F217B .C3 RETN
==============================================================
005E229C $- FF25 641B6B00 JMP DWORD PTR DS:[<&PunUnitLib.GetRegPas>;PunUnitL.GetRegPass
==============================================================
003E9024 >55 PUSH EBP
003E9025 8BEC MOV EBP,ESP
003E9027 B9 06000000 MOV ECX,6
003E902C 6A 00 PUSH 0
003E902E 6A 00 PUSH 0
003E9030 49 DEC ECX
003E9031^ 75 F9 JNZ SHORT PunUnitL.003E902C
003E9033 53 PUSH EBX
003E9034 56 PUSH ESI
003E9035 33C0 XOR EAX,EAX
003E9037 55 PUSH EBP
003E9038 68 F2913E00 PUSH PunUnitL.003E91F2
003E903D 64:FF30 PUSH DWORD PTR FS:
003E9040 64:8920 MOV DWORD PTR FS:,ESP
003E9043 8D45 EC LEA EAX,DWORD PTR SS:
003E9046 E8 65B5F8FF CALL PunUnitL.003745B0
003E904B 8D45 F0 LEA EAX,DWORD PTR SS:
003E904E 8B55 08 MOV EDX,DWORD PTR SS: ; //EDX==产品编号
003E9051 E8 4AB7F8FF CALL PunUnitL.003747A0
003E9056 8B45 F0 MOV EAX,DWORD PTR SS: ; //EAX==产品编号
003E9059 E8 0AB8F8FF CALL PunUnitL.00374868 ; //EAX=产品编号长度
003E905E 8BF0 MOV ESI,EAX ; //ESI=EAX
003E9060 85F6 TEST ESI,ESI ; //比较ESI
003E9062 7E 26 JLE SHORT PunUnitL.003E908A ; //若小于等于则跳
003E9064 BB 01000000 MOV EBX,1 ; //EBX=1
003E9069 8D4D E8 LEA ECX,DWORD PTR SS:
003E906C 8B45 F0 MOV EAX,DWORD PTR SS: ; //EAX==产品编号
003E906F 0FB64418 FF MOVZX EAX,BYTE PTR DS: ; //依次取产品编号ASC值
003E9074 33D2 XOR EDX,EDX ; //EDX=0
003E9076 E8 F905F9FF CALL PunUnitL.00379674 ; //将ASC值转字符形式
003E907B 8B55 E8 MOV EDX,DWORD PTR SS: ; //EDX==ASC值字符形式
003E907E 8D45 FC LEA EAX,DWORD PTR SS:
003E9081 E8 EAB7F8FF CALL PunUnitL.00374870 ; //将字符相连
003E9086 43 INC EBX ; //EBX=EBX+1
003E9087 4E DEC ESI ; //ESI=ESI-1
003E9088^ 75 DF JNZ SHORT PunUnitL.003E9069 ; //若不相等则跳,以上为产品编号的ASC值以字符形式相连形成新字符串
003E908A 8B45 FC MOV EAX,DWORD PTR SS: ; //将新字符串送入EAX
003E908D E8 D6B7F8FF CALL PunUnitL.00374868 ; //EAX=新字符串的长度
003E9092 8BF0 MOV ESI,EAX ; //ESI=EAX
003E9094 85F6 TEST ESI,ESI ; //比较ESI
003E9096 7E 2C JLE SHORT PunUnitL.003E90C4 ; //若小于等于则跳
003E9098 BB 01000000 MOV EBX,1 ; //EBX=1
003E909D 8B45 FC MOV EAX,DWORD PTR SS: ; //EAX==新字符串
003E90A0 E8 C3B7F8FF CALL PunUnitL.00374868 ; //EAX=新字符串的长度
003E90A5 2BC3 SUB EAX,EBX ; //EAX=EBX
003E90A7 8B55 FC MOV EDX,DWORD PTR SS: ; //EDX==新字符串
003E90AA 8A1402 MOV DL,BYTE PTR DS: ; //依次倒取新字符串ASC值
003E90AD 8D45 E4 LEA EAX,DWORD PTR SS:
003E90B0 E8 DBB6F8FF CALL PunUnitL.00374790
003E90B5 8B55 E4 MOV EDX,DWORD PTR SS:
003E90B8 8D45 F8 LEA EAX,DWORD PTR SS:
003E90BB E8 B0B7F8FF CALL PunUnitL.00374870
003E90C0 43 INC EBX ; //EBX=EBX+1
003E90C1 4E DEC ESI ; //ESI=ESI-1
003E90C2^ 75 D9 JNZ SHORT PunUnitL.003E909D ; //若不相等则跳,以上为将新字符串倒转
003E90C4 8D45 FC LEA EAX,DWORD PTR SS:
003E90C7 50 PUSH EAX
003E90C8 B9 04000000 MOV ECX,4
003E90CD BA 01000000 MOV EDX,1
003E90D2 8B45 F8 MOV EAX,DWORD PTR SS: ; //EAX==倒转新字符串
003E90D5 E8 E6B9F8FF CALL PunUnitL.00374AC0
003E90DA 8D45 F8 LEA EAX,DWORD PTR SS:
003E90DD 50 PUSH EAX
003E90DE B9 04000000 MOV ECX,4
003E90E3 BA 05000000 MOV EDX,5
003E90E8 8B45 F8 MOV EAX,DWORD PTR SS:
003E90EB E8 D0B9F8FF CALL PunUnitL.00374AC0 ; //取倒转新字符串1-4位
003E90F0 8B45 FC MOV EAX,DWORD PTR SS: ; //EAX==倒转新字符串1-4位
003E90F3 E8 70B7F8FF CALL PunUnitL.00374868 ; //取倒转新字符串1-4位长度
003E90F8 83F8 04 CMP EAX,4 ; //倒转新字符串1-4位长度与4比较
003E90FB 7D 2F JGE SHORT PunUnitL.003E912C ; //若大于等于则跳
003E90FD 8B45 FC MOV EAX,DWORD PTR SS:
003E9100 E8 63B7F8FF CALL PunUnitL.00374868
003E9105 8BD8 MOV EBX,EAX
003E9107 83FB 03 CMP EBX,3
003E910A 7F 20 JG SHORT PunUnitL.003E912C
003E910C 8D4D E0 LEA ECX,DWORD PTR SS:
003E910F 8BC3 MOV EAX,EBX
003E9111 C1E0 02 SHL EAX,2
003E9114 33D2 XOR EDX,EDX
003E9116 E8 5905F9FF CALL PunUnitL.00379674
003E911B 8B55 E0 MOV EDX,DWORD PTR SS:
003E911E 8D45 FC LEA EAX,DWORD PTR SS:
003E9121 E8 4AB7F8FF CALL PunUnitL.00374870
003E9126 43 INC EBX
003E9127 83FB 04 CMP EBX,4
003E912A^ 75 E0 JNZ SHORT PunUnitL.003E910C
003E912C 8B45 F8 MOV EAX,DWORD PTR SS: ; //EAX==倒转新字符串5-8位
003E912F E8 34B7F8FF CALL PunUnitL.00374868 ; //取倒转新字符串5-8位长度
003E9134 83F8 04 CMP EAX,4 ; //倒转新字符串5-8位长度与4比较
003E9137 7D 2F JGE SHORT PunUnitL.003E9168 ; //若大于等于则跳
003E9139 8B45 F8 MOV EAX,DWORD PTR SS:
003E913C E8 27B7F8FF CALL PunUnitL.00374868
003E9141 8BD8 MOV EBX,EAX
003E9143 83FB 03 CMP EBX,3
003E9146 7F 20 JG SHORT PunUnitL.003E9168
003E9148 8D4D DC LEA ECX,DWORD PTR SS:
003E914B 8BC3 MOV EAX,EBX
003E914D C1E0 02 SHL EAX,2
003E9150 33D2 XOR EDX,EDX
003E9152 E8 1D05F9FF CALL PunUnitL.00379674
003E9157 8B55 DC MOV EDX,DWORD PTR SS:
003E915A 8D45 F8 LEA EAX,DWORD PTR SS:
003E915D E8 0EB7F8FF CALL PunUnitL.00374870
003E9162 43 INC EBX
003E9163 83FB 04 CMP EBX,4
003E9166^ 75 E0 JNZ SHORT PunUnitL.003E9148
003E9168 8D45 D8 LEA EAX,DWORD PTR SS:
003E916B 8B55 0C MOV EDX,DWORD PTR SS: ; //EDX==固定字符串"CA9D-36Q8"
003E916E E8 2DB6F8FF CALL PunUnitL.003747A0
003E9173 8B45 D8 MOV EAX,DWORD PTR SS: ; //EAX==固定字符串"CA9D-36Q8"
003E9176 8D55 F4 LEA EDX,DWORD PTR SS:
003E9179 E8 DE03F9FF CALL PunUnitL.0037955C
003E917E 8D45 D4 LEA EAX,DWORD PTR SS:
003E9181 50 PUSH EAX
003E9182 B9 04000000 MOV ECX,4
003E9187 BA 01000000 MOV EDX,1
003E918C 8B45 F4 MOV EAX,DWORD PTR SS: ; //EAX==固定字符串"CA9D-36Q8"
003E918F E8 2CB9F8FF CALL PunUnitL.00374AC0
003E9194 FF75 D4 PUSH DWORD PTR SS: ; //取固定字符串1-4位
003E9197 68 0C923E00 PUSH PunUnitL.003E920C
003E919C FF75 FC PUSH DWORD PTR SS: ; //取倒转新字符串1-4位
003E919F 8D45 D0 LEA EAX,DWORD PTR SS:
003E91A2 50 PUSH EAX
003E91A3 B9 05000000 MOV ECX,5
003E91A8 BA 05000000 MOV EDX,5
003E91AD 8B45 F4 MOV EAX,DWORD PTR SS: ; //EAX==固定字符串"CA9D-36Q8"
003E91B0 E8 0BB9F8FF CALL PunUnitL.00374AC0
003E91B5 FF75 D0 PUSH DWORD PTR SS: ; //取固定字符串5-8位
003E91B8 68 0C923E00 PUSH PunUnitL.003E920C
003E91BD FF75 F8 PUSH DWORD PTR SS: ; //取倒转新字符串5-8位
003E91C0 8D45 EC LEA EAX,DWORD PTR SS:
003E91C3 BA 06000000 MOV EDX,6
003E91C8 E8 5BB7F8FF CALL PunUnitL.00374928 ; //将4组字符串相连
003E91CD 8B45 EC MOV EAX,DWORD PTR SS: ; //EAX==真码
003E91D0 E8 8BB8F8FF CALL PunUnitL.00374A60
003E91D5 8BD8 MOV EBX,EAX
003E91D7 33C0 XOR EAX,EAX
003E91D9 5A POP EDX
003E91DA 59 POP ECX
003E91DB 59 POP ECX
003E91DC 64:8910 MOV DWORD PTR FS:,EDX
003E91DF 68 F9913E00 PUSH PunUnitL.003E91F9
003E91E4 8D45 D0 LEA EAX,DWORD PTR SS:
003E91E7 BA 0C000000 MOV EDX,0C
003E91EC E8 E3B3F8FF CALL PunUnitL.003745D4
003E91F1 C3 RETN
003E91F2^ E9 1DADF8FF JMP PunUnitL.00373F14
003E91F7^ EB EB JMP SHORT PunUnitL.003E91E4
003E91F9 8BC3 MOV EAX,EBX
003E91FB 5E POP ESI
003E91FC 5B POP EBX
003E91FD 8BE5 MOV ESP,EBP
003E91FF 5D POP EBP
003E9200 C2 0800 RETN 8
**************************************************************
【破解总结】
--------------------------------------------------------------
【算法总结】
1、算法与用户名称无关
2、产品编号以ASC码16进制字符形式相连,然后倒转字符串;固定字符串"CA9D-36Q8"
设授权编号的形式为A-B-C-D
A:CA9D
B:取倒转字符串1-4位
C:36Q8
D:取倒转字符串5-8位
--------------------------------------------------------------
【算法注册机】
(略)
https://www.chinapyg.com/viewthread.php?tid=29587&page=1&extra=page%3D1
--------------------------------------------------------------
【内存注册机】
中断地址 005F1FF4
中断次数 1
第一字节 E8
指令长度 5
内存方式-寄存器-EDX
--------------------------------------------------------------
【爆破地址】
005F1FF9 .0F85 FE000000 JNZ DepotMan.005F20FD
将JNZ改为JE
--------------------------------------------------------------
【注册信息】
保存在
--------------------------------------------------------------
希望以后可以在猫老大和PYG 5.4Cracker学习小组的帮助下进一步提高自己。
感谢飘云老大、猫老大、Nisy老大以及很多前辈们的学习教程以及所有帮助过我的论坛兄弟姐妹们!谢谢
--------------------------------------------------------------
【版权声明】破文是学习的手记,兴趣是成功的源泉;本破文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!
[ 本帖最后由 tianxj 于 2008-4-7 07:33 编辑 ] GG好谦虚呀,谢谢这么好的教材/:09 /:001 很强。。慢慢看 请飘云老大指点 /:good 跟着学习 不愧是超级版,果然厉害,写的很细,谢谢你的分析思路! 路过必顶,谢谢分享。
页:
[1]