楼主: zhq445078388
收起左侧

[技术原创] 【2011年12月20日】动态编译 加快速度 ZMPI自学习反病毒 高级启发式 钓鱼启发式

  [复制链接]
zhangjianqwe
发表于 2011-8-11 11:22:30 | 显示全部楼层
本帖最后由 zhangjianqwe 于 2011-8-11 11:27 编辑
zhq445078388 发表于 2011-8-11 11:04
没错没错。。
就是那效果。。所以。。现在这个版本有自适应了
但是 点太少。。还是容易误报
  1. .版本 2
  2. .支持库 ogrelib
  3. .支持库 iext2
  4. .程序集 窗口程序集1
  5. .程序集变量 a, 字节集
  6. .子程序 __启动窗口_创建完毕

  7. .子程序 _按钮1_被单击
  8. .局部变量 i, 整数型
  9. .局部变量 ARGB, 整数型
  10. .局部变量 ii, 整数型
  11. .局部变量 b, 整数型
  12. .局部变量 iii, 整数型
  13. .局部变量 取值, 整数型
  14. .局部变量 cc, 文本型
  15. .局部变量 x, 整数型
  16. 通用对话框1.初始目录 = 取运行目录 ()
  17. .如果真 (通用对话框1.打开 () = 假)
  18.     返回 ()
  19. .如果真结束
  20. a = 读入文件 (通用对话框1.文件名)
  21. _启动窗口.标题 = 通用对话框1.文件名
  22. .计次循环首 (1024, i)
  23.     .计次循环首 (128, ii)
  24.         b = b + 1
  25.         取值 = a [b + 28]

  26.         cc = “00000000” + 十到二 (取值)
  27.         cc = 取文本右边 (cc, 8)
  28.         ' 信息框 (cc, 0, )
  29.         x = 8
  30.         .计次循环首 (8, iii)
  31.             取值 = 到整数 (取文本中间 (cc, x, 1)) × 255
  32.             ARGB = 合成颜色 (100, 取值, 取值, 取值)
  33.             动画框1.画点 (8 × (ii - 1) + iii, i, ARGB)
  34.             x = x - 1
  35.         .计次循环尾 ()

  36.     .计次循环尾 ()
  37. .计次循环尾 ()

  38. .子程序 _横向滚动条1_位置被改变
  39. 动画框1.左边 = 40 - 横向滚动条1.位置
  40. .子程序 _纵向滚动条1_位置被改变
  41. 动画框1.顶边 = 48 - 纵向滚动条1.位置
  42. 算法简单,就几句代码.
  43. 2次循环
复制代码
分析编缉dhmap文件。作用于游戏怪物的地图层控制
算法有误。把你是看1成还多成
*。DHMAP文件附件有

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
zhangjianqwe
发表于 2011-8-11 11:29:05 | 显示全部楼层
zhq445078388 发表于 2011-8-11 11:04
没错没错。。
就是那效果。。所以。。现在这个版本有自适应了
但是 点太少。。还是容易误报

Delphi版本
  1. unit Unit1;

  2. interface

  3. uses
  4.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  5.   Dialogs, StdCtrls,ImagingTypes, Imaging,jpeg, ExtCtrls;

  6. type
  7.   TForm1 = class(TForm)
  8.     Button1: TButton;
  9.     Image1: TImage;
  10.     OpenDialog1: TOpenDialog;
  11.     Button2: TButton;
  12.     Edit1: TEdit;
  13.     ListBox1: TListBox;
  14.     procedure Button1Click(Sender: TObject);
  15.     procedure Button2Click(Sender: TObject);
  16.     procedure ListBox1Click(Sender: TObject);
  17.   private
  18.     { Private declarations }
  19.   public
  20.     { Public declarations }
  21.   end;

  22. PdWordArray = ^TdWordArray;
  23.   TdWordArray = array[0..16383] of dWORD;

  24. var
  25.   Form1: TForm1;

  26. implementation

  27. {$R *.dfm}

  28. procedure TForm1.Button1Click(Sender: TObject);
  29. var
  30.   Img: TImageData;
  31.   imgstream:TMemoryStream;
  32.   b1:Byte;
  33.   b2:Byte;
  34.   x,y,xx,yy,i,yi:Integer;
  35.   ig:TMemoryStream;

  36.   jpg:tjpegimage;
  37.   gs:array[0..256] of Integer;

  38. begin
  39. if not OpenDialog1.Execute  then  Exit;

  40. InitImage(img);
  41. NewImage(1024,1024,ifGray8,img);
  42. imgstream:=TMemoryStream.Create ;
  43. ig:=TMemoryStream.Create ;
  44. imgstream.LoadFromFile(OpenDialog1.FileName);
  45. imgstream.Position:=32;
  46. imgstream.Read(gs[0],1028);

  47. //ShowMessage(IntToStr(i));
  48.   yi:=StrToInt(Edit1.Text);
  49. for i := 0 to 255 do
  50. begin

  51.   imgstream.Position:=1060+gs[i]*8192;
  52.   if gs[i]<>-1 then
  53.   begin

  54.      for y := 0 to 63 do
  55.      begin
  56.        yy:=(i div 16)*64 +y;
  57.          for x := 0 to 63 do
  58.          begin
  59.           xx:=(i-(i div 16) *16)*64 +x;
  60.           //xx:= xxx*64 + x;
  61.            imgstream.Read(b1,1);imgstream.Read(b2,1);
  62.            b1:=(b2 shr yi) and yi;
  63.           //PdWordArray(@PdWordArray(Img.Bits)[(1023-yy) * 1024])[xx] :=b1*100;
  64.          PByteArray(@PByteArray(Img.Bits)[yy * 1024])[xx] :=b1*255;
  65.          // imgstream.Read(b1,1);

  66.          end;


  67.      end;



  68.   end;




  69.   end;





  70.   SaveImageToFile('dhmap.jpg',img);
  71.   jpg:= tjpegimage.Create ;
  72.   ig.SetSize(0);
  73.   SaveImageToStream('jpg',ig,img);
  74.   ig.Position:=0;
  75.   jpg.LoadFromStream(ig);
  76.   Image1.Picture.Assign(jpg);
  77.   jpg.Free;
  78.   FreeImage(img);
  79.   ig.Free;
  80.   imgstream.Free;
  81. end;

  82. procedure TForm1.Button2Click(Sender: TObject);
  83. var
  84.   Img: TImageData;
  85.   imgstream:TMemoryStream;
  86.   b1,b2:Byte;
  87.   x,y,xx,yy,i:Integer;
  88.   ig:TMemoryStream;

  89.   jpg:tjpegimage;
  90.   gs:array[0..256] of Integer;

  91. begin
  92. if not OpenDialog1.Execute  then  Exit;

  93. InitImage(img);
  94. NewImage(1024,1024,ifGray8,img);
  95. imgstream:=TMemoryStream.Create ;
  96. ig:=TMemoryStream.Create ;
  97. imgstream.LoadFromFile(OpenDialog1.FileName);
  98. imgstream.Position:=32;
  99. imgstream.Read(gs[0],1028);

  100. //ShowMessage(IntToStr(i));

  101. for i := 0 to 255 do
  102. begin

  103.   imgstream.Position:=1060+gs[i]*8192;
  104.   if gs[i]<>-1 then
  105.   begin

  106.      for y := 0 to 63 do
  107.      begin
  108.        yy:=(i div 16)*64 +y;
  109.          for x := 0 to 63 do
  110.          begin
  111.           xx:=(i-(i div 16) *16)*64 +x;
  112.           //xx:= xxx*64 + x;
  113.            imgstream.Read(b1,1); imgstream.Read(b2,1);
  114.           PByteArray(@PByteArray(Img.Bits)[(1023-yy) * 1024])[xx] :=b1;

  115.           //PByteArray(@PByteArray(Img.Bits)[yy * 1024])[xx] :=b2*10;
  116.          // imgstream.Read(b1,1);

  117.          end;


  118.      end;



  119.   end;




  120.   end;





  121.   SaveImageToFile('dhmap.jpg',img);
  122.   jpg:= tjpegimage.Create ;
  123.   ig.SetSize(0);
  124.   SaveImageToStream('jpg',ig,img);
  125.   ig.Position:=0;
  126.   jpg.LoadFromStream(ig);
  127.   Image1.Picture.Assign(jpg);
  128.   jpg.Free;
  129.   FreeImage(img);
  130.   ig.Free;
  131.   imgstream.Free;
  132. end;

  133. procedure TForm1.ListBox1Click(Sender: TObject);
  134. var
  135.   Img: TImageData;
  136.   imgstream:TMemoryStream;
  137.   b1:Word;
  138.   b2:Byte;
  139.   x,y,xx,yy,i,yi:Integer;
  140.   ig:TMemoryStream;

  141.   jpg:tjpegimage;
  142.   gs:array[0..256] of Integer;

  143. begin
  144. if  OpenDialog1.FileName=''  then  Exit;

  145. InitImage(img);
  146. NewImage(1024,1024,ifGray8,img);
  147. imgstream:=TMemoryStream.Create ;
  148. ig:=TMemoryStream.Create ;
  149. imgstream.LoadFromFile(OpenDialog1.FileName);
  150. imgstream.Position:=32;
  151. imgstream.Read(gs[0],1028);

  152. //ShowMessage(IntToStr(i));
  153.   yi:=StrToInt(Edit1.Text);
  154. for i := 0 to 255 do
  155. begin

  156.   imgstream.Position:=1060+gs[i]*8192;
  157.   if gs[i]<>-1 then
  158.   begin

  159.      for y := 0 to 63 do
  160.      begin
  161.        yy:=(i div 16)*64 +y;
  162.          for x := 0 to 63 do
  163.          begin
  164.           xx:=(i-(i div 16) *16)*64 +x;
  165.           //xx:= xxx*64 + x;
  166.            imgstream.Read(b1,2);//imgstream.Read(b2,1);
  167.            b1:=(b1 shr ListBox1.ItemIndex) and yi;
  168.           //PdWordArray(@PdWordArray(Img.Bits)[(1023-yy) * 1024])[xx] :=b1*100;
  169.          PByteArray(@PByteArray(Img.Bits)[yy * 1024])[xx] :=b1*255;
  170.          // imgstream.Read(b1,1);

  171.          end;


  172.      end;



  173.   end;




  174.   end;





  175.   SaveImageToFile('dhmap.jpg',img);
  176.   jpg:= tjpegimage.Create ;
  177.   ig.SetSize(0);
  178.   SaveImageToStream('jpg',ig,img);
  179.   ig.Position:=0;
  180.   jpg.LoadFromStream(ig);
  181.   Image1.Picture.Assign(jpg);
  182.   jpg.Free;
  183.   FreeImage(img);
  184.   ig.Free;
  185.   imgstream.Free;
  186. end;

  187. end.
复制代码
liuhaotian0520
发表于 2011-8-11 11:29:55 | 显示全部楼层
我来观望一下,代码大概看得懂但是我还是菜鸟,不敢试
zhangjianqwe
发表于 2011-8-11 11:34:26 | 显示全部楼层
本帖最后由 zhangjianqwe 于 2011-8-11 11:36 编辑
liuhaotian0520 发表于 2011-8-11 11:29
我来观望一下,代码大概看得懂但是我还是菜鸟,不敢试


。。。。。哦我的代码跟那引擎没有关系的。我想找他帮忙一起看看怎么看DHMAP文件分析一下到底怎么看那辅助地图范围的文件这个是用于地图服务端版本上代码。看不懂看E版。E不懂看Delphi版本,我本身精通。E,Delphi。VC++和c++
liuhaotian0520
发表于 2011-8-11 11:52:05 | 显示全部楼层
zhangjianqwe 发表于 2011-8-11 11:34
。。。。。哦我的代码跟那引擎没有关系的。我想找他帮忙一起看看怎么看DHMAP文件分析一下到底怎么看那辅 ...

我就懂DELPHI C++
zhangjianqwe
发表于 2011-8-11 11:53:37 | 显示全部楼层
liuhaotian0520 发表于 2011-8-11 11:52
我就懂DELPHI C++

好的。喜欢C++的来帮帮看看。我别东西。。。http://bbs.kafan.cn/thread-1047294-1-2.html
sht0602
发表于 2011-8-11 12:49:55 | 显示全部楼层
zdolo大侠指点指点楼主哈。
支持下楼主。
zhq445078388
 楼主| 发表于 2011-8-11 13:19:35 | 显示全部楼层
zhangjianqwe 发表于 2011-8-11 11:34
。。。。。哦我的代码跟那引擎没有关系的。我想找他帮忙一起看看怎么看DHMAP文件分析一下到底怎么看那辅 ...

我不会写那些的。。
看起来是游戏的界面点控啊
不弄那个
zhangjianqwe
发表于 2011-8-11 13:25:04 | 显示全部楼层
zhq445078388 发表于 2011-8-11 13:19
我不会写那些的。。
看起来是游戏的界面点控啊
不弄那个

哦。知道了。没事你也玩玩呀,挺好玩的
zhq445078388
 楼主| 发表于 2011-8-11 13:48:11 | 显示全部楼层
zhangjianqwe 发表于 2011-8-11 13:25
哦。知道了。没事你也玩玩呀,挺好玩的

我对那个不感兴趣
倒是对你会的反汇编很感兴趣
教教我被
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-7-3 05:56 , Processed in 0.096054 second(s), 14 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表