吾爱汇编

 找回密码
 立即注册

QQ登录

绑定QQ避免忘记帐号

查看: 4134|回复: 15

[原创逆向图文] 160个CrackMe[67 figugegl.2b]算法分析+注册机源码

  [复制链接]
vipcrack 发表于 2014-12-16 14:20 | 显示全部楼层 |阅读模式

160个CrackMe[67 figugegl.2b]算法分析+注册机源码

160个crackme可以百度下载


算法分析+Delphi内联汇编流程跳转编写注册机


  1. 0040137B  |.  E8 98020000   call    <jmp.&USER32.GetDlgItemTextA>         ; \GetDlgItemTextA
  2. 00401380  |.  89C3          mov     ebx, eax                              ;  输入的假码长度
  3. 00401382  |.  09DB          or      ebx, ebx
  4. 00401384  |.  75 07         jnz     short 0040138D
  5. 00401386  |.  31C0          xor     eax, eax
  6. 00401388  |.  E9 C3000000   jmp     00401450
  7. 0040138D  |>  6A 28         push    0x28                                  ; /Count = 28 (40.)
  8. 0040138F  |.  8D45 AE       lea     eax, dword ptr [ebp-0x52]             ; |
  9. 00401392  |.  50            push    eax                                   ; |Buffer
  10. 00401393  |.  6A 65         push    0x65                                  ; |ControlID = 65 (101.)
  11. 00401395  |.  FF75 08       push    dword ptr [ebp+0x8]                   ; |hWnd
  12. 00401398  |.  E8 7B020000   call    <jmp.&USER32.GetDlgItemTextA>         ; \GetDlgItemTextA
  13. 0040139D  |.  89C6          mov     esi, eax
  14. 0040139F  |.  83FE 08       cmp     esi, 0x8                              ;  用户名长度要大于等于8小于等于20
  15. 004013A2  |.  7D 1D         jge     short 004013C1
  16. 004013A4  |.  6A 00         push    0x0                                   ; /Style = MB_OK|MB_APPLMODAL
  17. 004013A6  |.  FF35 48204000 push    dword ptr [0x402048]                  ; |Title = "Error"
  18. 004013AC  |.  FF35 4C204000 push    dword ptr [0x40204C]                  ; |Text = "Name is too short!"
  19. 004013B2  |.  FF75 08       push    dword ptr [ebp+0x8]                   ; |hOwner
  20. 004013B5  |.  E8 8E020000   call    <jmp.&USER32.MessageBoxA>             ; \MessageBoxA
  21. 004013BA  |.  31C0          xor     eax, eax
  22. 004013BC  |.  E9 8F000000   jmp     00401450
  23. 004013C1  |>  31FF          xor     edi, edi
  24. 004013C3  |.  EB 6E         jmp     short 00401433
  25. 004013C5  |>  89F0          /mov     eax, esi                             ;  用户名长度
  26. 004013C7  |.  29F8          |sub     eax, edi                             ;  EDI为循环变量0,1,2,3,4,5,6,7
  27. 004013C9  |.  0FB6543D AE   |movzx   edx, byte ptr [ebp+edi-0x52]         ;  取用户名字符
  28. 004013CE  |.  31FA          |xor     edx, edi
  29. 004013D0  |.  89D9          |mov     ecx, ebx                             ;  注册码长度08
  30. 004013D2  |.  31F9          |xor     ecx, edi
  31. 004013D4  |.  01CA          |add     edx, ecx                             ;  结果相加
  32. 004013D6  |.  885405 D6     |mov     byte ptr [ebp+eax-0x2A], dl
  33. 004013DA  |.  89F0          |mov     eax, esi
  34. 004013DC  |.  29F8          |sub     eax, edi
  35. 004013DE  |.  8A4405 D6     |mov     al, byte ptr [ebp+eax-0x2A]          ;  结果给AL
  36. 004013E2  |.  3C 20         |cmp     al, 0x20                             ;  比较是=0x20
  37. 004013E4  |.  73 0B         |jnb     short 004013F1
  38. 004013E6  |.  89F0          |mov     eax, esi
  39. 004013E8  |.  29F8          |sub     eax, edi
  40. 004013EA  |.  8D4405 D6     |lea     eax, dword ptr [ebp+eax-0x2A]
  41. 004013EE  |.  8000 20       |add     byte ptr [eax], 0x20                 ;  如果小于0x20则+0x20
  42. 004013F1  |>  89F0          |mov     eax, esi
  43. 004013F3  |.  29F8          |sub     eax, edi
  44. 004013F5  |.  0FB64405 D6   |movzx   eax, byte ptr [ebp+eax-0x2A]         ;  继续跟0x80比较
  45. 004013FA  |.  3D 80000000   |cmp     eax, 0x80
  46. 004013FF  |.  7C 09         |jl      short 0040140A
  47. 00401401  |.  89F0          |mov     eax, esi                             ;  如果大于0x80则让其结果等于0x20
  48. 00401403  |.  29F8          |sub     eax, edi
  49. 00401405  |.  C64405 D6 20  |mov     byte ptr [ebp+eax-0x2A], 0x20
  50. 0040140A  |>  89F0          |mov     eax, esi
  51. 0040140C  |.  29F8          |sub     eax, edi
  52. 0040140E  |.  8A5405 84     |mov     dl, byte ptr [ebp+eax-0x7C]          ;  输入的注册码最后一位字符
  53. 00401412  |.  3A5405 D6     |cmp     dl, byte ptr [ebp+eax-0x2A]          ;  跟结果比较
  54. 00401416  |.  74 1A         |je      short 00401432
  55. 00401418  |.  6A 00         |push    0x0                                  ; /Style = MB_OK|MB_APPLMODAL
  56. 0040141A  |.  FF35 40204000 |push    dword ptr [0x402040]                 ; |Title = "NOP!"
  57. 00401420  |.  FF35 44204000 |push    dword ptr [0x402044]                 ; |Text = "Wrong Serial!"
  58. 00401426  |.  FF75 08       |push    dword ptr [ebp+0x8]                  ; |hOwner
  59. 00401429  |.  E8 1A020000   |call    <jmp.&USER32.MessageBoxA>            ; \MessageBoxA
  60. 0040142E  |.  31C0          |xor     eax, eax
  61. 00401430  |.  EB 1E         |jmp     short 00401450
  62. 00401432  |>  47            |inc     edi
  63. 00401433  |>  39F7           cmp     edi, esi
  64. 00401435  |.^ 7C 8E         \jl      short 004013C5
  65. 00401437  |.  6A 00         push    0x0                                   ; /Style = MB_OK|MB_APPLMODAL
  66. 00401439  |.  FF35 38204000 push    dword ptr [0x402038]                  ; |Title = "Success"
  67. 0040143F  |.  FF35 3C204000 push    dword ptr [0x40203C]                  ; |Text = "Congratulations - you did it!"
  68. 00401445  |.  FF75 08       push    dword ptr [ebp+0x8]                   ; |hOwner
  69. 00401448  |.  E8 FB010000   call    <jmp.&USER32.MessageBoxA>             ; \MessageBoxA
  70. 0040144D  |.  31C0          xor     eax, eax
复制代码


注册机源码

  1. {$R *.dfm}
  2. function strrev(lpData:string):string;  //字符串反转函数
  3. var
  4.   size,i,t:Integer;
  5. begin
  6.   t:=0;
  7.   size:=Length(lpData);
  8.   SetLength(Result,size);
  9.   for i:=1 to size do
  10.   begin
  11.     Result[size-t]:=lpData[i];
  12.     Inc(t);
  13.   end;
  14. end;
  15. procedure TForm1.Button1Click(Sender: TObject);
  16. var
  17.   Name,Serial:String;
  18.   i,l,s:Integer;
  19. begin
  20.    Name:=Edit1.text;
  21.    l:=length(Name);
  22.    if (l<8) or (l>20) then ShowMessage('The name length must >=8 and <=20');
  23.    for i:=0 to l-1 do
  24.     begin
  25.       asm
  26.         pushad
  27.         mov     edx,i
  28.         mov     ebx,l
  29.         mov     eax,Name
  30.         movzx   edx, byte ptr [eax+edx]
  31.         xor     edx,i
  32.         xor     ebx,i
  33.         add     edx,ebx
  34.         cmp     edx,$20
  35.         jnb     @@cal1
  36.         add     edx,$20
  37.         jmp     @@cal2
  38.         @@cal1:
  39.         cmp     edx,$80
  40.         jl      @@cal2
  41.         mov     edx,$20
  42.         @@cal2:
  43.         mov     s,edx

  44.         popad
  45.       end;
  46.       Serial:=Serial+char(s);
  47.     end;
  48.    Edit2.Text:=strrev(Serial);
  49. end;

复制代码




评分

参与人数 29威望 +1 HB +57 THX +21 收起 理由
24567 + 1
一路走来不容易 + 1
Soul1999 + 1
渴望宁静 + 1
后学真 + 1 [吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意!
l278785481 + 1
在天一方 + 1 [吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意!
军工强国 + 1
叶落花开 + 1 --------
消逝的过去 + 2 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
jaunic + 1
hnymsh + 2
lies + 1
Dean + 10 + 1 评分=感恩!简单却充满爱!感谢您的作品!
xiaoxi + 2 + 1 因果报应:这么热心分享知识,以后活该你发财!!该!哈~
奥特曼 + 1 + 1 支持恒大说的!评分又不扣自己的分,吝啬个蛋球?????????
Scar-疤痕 + 4 + 1 因果报应:这么热心分享知识,以后活该你发财!!该!哈~
梦游枪手 + 1 + 1 评分=感恩!简单却充满爱!感谢您的作品!
狮子 + 1 + 1 支持恒大说的!评分又不扣自己的分,吝啬个蛋球?????????
gjj520 + 1 + 1 好人有好报!你的热心我永远不忘!谢谢!
bigeorry + 3 + 1 评分=感恩!简单却充满爱!感谢您的作品!
逍遥枷锁 + 2 + 1 因果报应:这么热心分享知识,以后活该你发财!!该!哈~
十月 + 2 + 1 评分=感恩!简单却充满爱!感谢您的作品!
Shark恒 + 1 + 10 + 1 评分=感恩!简单却充满爱!感谢您的作品!
判官 + 5 + 1 评分=感恩!简单却充满爱!感谢您的作品!
Desire + 1 + 1 评分=感恩!简单却充满爱!感谢您的作品!
我们要作死 + 2 + 1 感谢!新技能get√
520Kelly + 2 评分=感恩!简单却充满爱!感谢您的作品!
起凡第一华佗 + 1 + 1 我是蜡笔小小新,帅小伙 澎湃小伙最迷人, 请支持我 哟

查看全部评分

吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
520Kelly 发表于 2014-12-16 14:22 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
我们要作死 发表于 2014-12-16 14:25 | 显示全部楼层

听说洗注册机的 都是神级了。。。!!膜拜
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
Shark恒 发表于 2014-12-16 14:55 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
逍遥枷锁 发表于 2014-12-16 15:58 | 显示全部楼层

VIP老师也在啊,真是无处不在,向你学习了谢谢。
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
狮子 发表于 2014-12-16 16:53 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
Scar-疤痕 发表于 2014-12-16 19:44 | 显示全部楼层

教程通俗易懂,谢谢楼主了!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
奥特曼 发表于 2014-12-16 23:07 | 显示全部楼层

认真和楼主学习算法!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
头像被屏蔽
别管我了行 发表于 2022-2-24 03:56 | 显示全部楼层

提示: 作者被禁止或删除 内容自动屏蔽
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
军工强国 发表于 2022-2-24 22:01 | 显示全部楼层

感谢楼主分享新技能!努力学习ing!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

警告:本站严惩灌水回复,尊重自己从尊重他人开始!

1层
2层
3层
4层
5层
6层
7层
8层
9层
10层

免责声明

吾爱汇编(www.52hb.com)所讨论的技术及相关工具仅限用于研究学习,皆在提高软件产品的安全性,严禁用于不良动机。任何个人、团体、组织不得将其用于非法目的,否则,一切后果自行承担。吾爱汇编不承担任何因为技术滥用所产生的连带责任。吾爱汇编内容源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除。如有侵权请邮件或微信与我们联系处理。

站长邮箱:SharkHeng@sina.com
站长QQ:1140549900


QQ|RSS|手机版|小黑屋|帮助|吾爱汇编 ( 京公网安备11011502005403号 , 京ICP备20003498号-6 )|网站地图

Powered by Discuz!

吾爱汇编 www.52hb.com

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