您的位置:首页精文荟萃破解文章 → 《穷和麻将》共享版2.03说明 算法分析

《穷和麻将》共享版2.03说明 算法分析

时间:2004/10/15 0:55:00来源:本站整理作者:蓝点我要评论(0)

 
   本软件发布日期2003-01-03,下载网址:http://bmzhao.wx-e.com/mjexe.zip,不需安装,解压后
运行mj.exe,产品最新信息可在网站http://bmzhao.wx-e.com上查看,
技术支持E-MAIL:bmzhao@sohu.com。
   
   本软件是麻将的北方玩法,三维画面,和牌必须开门、不缺门、有么九、有横、有顺。有一对牌,
其余每三张成一组,每一组是横牌或顺牌。

   如果您使用低档计算机,三维画面可能显示很慢或不能显示,您可以使用二维《穷和麻将》共享
版1.09,下载网址:http://bmzhao.wx-e.com/mj2d.zip。

   软件注册费:30元/套。有二种方法购买:

   方法一:通过邮局汇款。
   邮编:112000
   地址:辽宁省铁岭市 市府路30号 科学馆四楼 市节能中心
   收款人:张瑞英
   如果需要快速得到注册码,汇款后可将汇款单扫描件邮至bmzhao@sohu.com。

   方法二:在本软件的代理中国共享软件注册中心(http://www.softreg.com.cn)购买
破解人:fnila
破解日期 2003-01-03
   快捷链接: http://www.softreg.com.cn/shareware.asp?id=6956
下面是trw跟出的算法核心
016F:00405BDA 8BC1             MOV      EAX,ECX---->ecx是c:的序列号(机器码)to eax
016F:00405BDC 33D2             XOR      EDX,EDX
016F:00405BDE BD1A000000       MOV      EBP,1A
016F:00405BE3 F7F5             DIV      EBP----->除以1A
016F:00405BE5 0FBE07           MOVSX    EAX,BYTE [EDI]--->取假注册码的ascii码(1,2,3...)
016F:00405BE8 8B1495F8904200   MOV      EDX,[EDX*4+004290F8]---->根据ecx div 1a的余数查表(表长104位)
016F:00405BEF 83C241           ADD      EDX,BYTE +41---->表值+$41
016F:00405BF2 47               INC      EDI---->假注册码后移一位
016F:00405BF3 3BD0             CMP      EDX,EAX--->比较
016F:00405BF5 7560             JNZ      00405C57--->不等game over
016F:00405BF7 B84FECC44E       MOV      EAX,4EC4EC4F---->$4EC4EC4F to eax
016F:00405BFC F7E1             MUL      ECX ----->无符号数乘法第一次为机器码  ECX*EAX
016F:00405BFE C1EA03           SHR      EDX,03---->结果的高位右移3位
016F:00405C01 8BCA             MOV      ECX,EDX---->右移3位的结果TO ECX为下次ECX*EAX准备!
016F:00405C03 894C2410         MOV      [ESP+10],ECX
..............................>ECX不为0时TO 016F:00405BDA 形成循环
以下是delphi的算法源代码
var
f:dword;
d:dword;
u:integer;
bb:dword;
n:dword;
vv:boolean;
t:tresourcestream;
  g:byte;
begin
//application.Instance;
//application.
//hinstance
//ReadComponentRes('mjs',instance);
t:=tresourcestream.Create(HInstance ,'mjsj','bin');


 n:=strtoint(edit1.text);
f:=$4EC4EC4F;

      f:=( n mod $1a )*4 ;
t.Seek(f,soFromBeginning);
t.Read(g,1);
edit2.text:=char(g+$41);
//edit1.text:='';
vv:=true;
while   vv=true do
begin
 f:=$4EC4EC4F;


                ASM
                MOV EAX,$4EC4EC4F
                MOV ECX,n
                MUL ECX
                MOV BB,EDX

                END;

 d:= bb  shr 3 ;
 if d=0  then vv:=false;
   f:=( d mod $1a )*4 ;
t.Seek(f,soFromBeginning);
t.Read(g,1);
//edit1.text:=inttostr(BB);
Edit2.text:=edit2.text+chr(g+$41);
   n:=d;
end;

t.Free;
end;
注册机和表略!有要的跟贴


    
    
     
    
    
     

相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 去除winrar注册框方法

最新文章 比特币病毒怎么破解 比去除winrar注册框方法 华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)通过Access破解MSSQL获得数据

人气排行 华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)qq相册密码破解方法去除winrar注册框方法(适应任何版本)怎么用手机破解收费游戏华为无线猫HG522破解如何给软件脱壳基础教程