飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 3454|回复: 0

[原创] VB Crackme 2.0 简单分析

[复制链接]
  • TA的每日心情
    无聊
    2020-4-10 17:02
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    发表于 2006-11-22 20:56:46 | 显示全部楼层 |阅读模式
    破解日期】 2006年11月22日
    【破解作者】 冷血书生
    【作者邮箱】 meiyou
    【作者主页】 hxxp://www.126sohu.com/
    【使用工具】 OD
    【破解平台】 Win9x/NT/2000/XP
    【软件名称】 VB Crackme 2.0
    【下载地址】 本地
    【软件大小】 15.5k
    【加壳方式】 无
    【破解声明】 我是一只小菜鸟,偶得一点心得,愿与大家分享:)
    ------------------------------------------------------------------------

    --------
    【破解内容】


    1. 00402C2A   push edx
    2. 00402C2B   call dword ptr ds:[<&MSVBVM50.__vbaLenVar>] ; MSVBVM50.__vbaLenVar
    3. 00402C31   push eax
    4. 00402C32   call dword ptr ds:[<&MSVBVM50.__vbaI2Var>]  ; MSVBVM50.__vbaI2Var
    5. 00402C38   mov esi,dword ptr ds:[<&MSVBVM50.#516>]     ; MSVBVM50.rtcAnsiValueBstr
    6. 00402C3E   mov edi,dword ptr ds:[<&MSVBVM50.__vbaStrVa>; MSVBVM50.__vbaStrVarVal
    7. 00402C44   mov dword ptr ss:[ebp-118],eax
    8. 00402C4A   mov eax,1
    9. 00402C4F   mov dword ptr ss:[ebp-3C],eax
    10. 00402C52   cmp ax,word ptr ss:[ebp-118]
    11. 00402C59   mov ebx,dword ptr ds:[<&MSVBVM50.#632>]     ; MSVBVM50.rtcMidCharVar
    12. 00402C5F   jg CM2.00402D54
    13. 00402C65   movsx edx,ax
    14. 00402C68   lea ecx,dword ptr ss:[ebp-68]
    15. 00402C6B   lea eax,dword ptr ss:[ebp-28]
    16. 00402C6E   push ecx
    17. 00402C6F   push edx
    18. 00402C70   lea ecx,dword ptr ss:[ebp-78]
    19. 00402C73   push eax
    20. 00402C74   push ecx
    21. 00402C75   mov dword ptr ss:[ebp-60],1
    22. 00402C7C   mov dword ptr ss:[ebp-68],2
    23. 00402C83   call ebx
    24. 00402C85   lea edx,dword ptr ss:[ebp-88]
    25. 00402C8B   push 1
    26. 00402C8D   lea eax,dword ptr ss:[ebp-98]
    27. 00402C93   push edx
    28. 00402C94   push eax
    29. 00402C95   mov dword ptr ss:[ebp-80],4
    30. 00402C9C   mov dword ptr ss:[ebp-88],2
    31. 00402CA6   call dword ptr ds:[<&MSVBVM50.#617>]        ; MSVBVM50.rtcLeftCharVar
    32. 00402CAC   lea ecx,dword ptr ss:[ebp-98]
    33. 00402CB2   lea edx,dword ptr ss:[ebp-54]
    34. 00402CB5   push ecx
    35. 00402CB6   push edx
    36. 00402CB7   call edi
    37. 00402CB9   push eax
    38. 00402CBA   call esi
    39. 00402CBC   movsx ebx,ax
    40. 00402CBF   lea eax,dword ptr ss:[ebp-78]
    41. 00402CC2   lea ecx,dword ptr ss:[ebp-50]
    42. 00402CC5   push eax
    43. 00402CC6   push ecx
    44. 00402CC7   call edi
    45. 00402CC9   push eax
    46. 00402CCA   call esi
    47. 00402CCC   movsx edx,ax                                ; 密码
    48. 00402CCF   xor ebx,edx                                 ; 密码 xor 34
    49. 00402CD1   lea eax,dword ptr ss:[ebp-A8]
    50. 00402CD7   push ebx
    51. 00402CD8   push eax
    52. 00402CD9   call dword ptr ds:[<&MSVBVM50.#608>]        ; MSVBVM50.rtcVarBstrFromAnsi
    53. 00402CDF   lea ecx,dword ptr ss:[ebp-38]
    54. 00402CE2   lea edx,dword ptr ss:[ebp-A8]
    55. 00402CE8   push ecx
    56. 00402CE9   lea eax,dword ptr ss:[ebp-B8]
    57. 00402CEF   push edx
    58. 00402CF0   push eax
    59. 00402CF1   call dword ptr ds:[<&MSVBVM50.__vbaVarCat>] ; MSVBVM50.__vbaVarCat
    60. 00402CF7   mov edx,eax
    61. 00402CF9   lea ecx,dword ptr ss:[ebp-38]
    62. 00402CFC   call dword ptr ds:[<&MSVBVM50.__vbaVarMove>>; MSVBVM50.__vbaVarMove
    63. 00402D02   lea ecx,dword ptr ss:[ebp-54]
    64. 00402D05   lea edx,dword ptr ss:[ebp-50]
    65. 00402D08   push ecx
    66. 00402D09   push edx
    67. 00402D0A   push 2
    68. 00402D0C   call dword ptr ds:[<&MSVBVM50.__vbaFreeStrL>; MSVBVM50.__vbaFreeStrList
    69. 00402D12   add esp,0C
    70. 00402D15   lea eax,dword ptr ss:[ebp-A8]
    71. 00402D1B   lea ecx,dword ptr ss:[ebp-98]
    72. 00402D21   lea edx,dword ptr ss:[ebp-88]
    73. 00402D27   push eax
    74. 00402D28   push ecx
    75. 00402D29   lea eax,dword ptr ss:[ebp-78]
    76. 00402D2C   push edx
    77. 00402D2D   lea ecx,dword ptr ss:[ebp-68]
    78. 00402D30   push eax
    79. 00402D31   push ecx
    80. 00402D32   push 5
    81. 00402D34   call dword ptr ds:[<&MSVBVM50.__vbaFreeVarL>; MSVBVM50.__vbaFreeVarList
    82. 00402D3A   mov eax,1
    83. 00402D3F   add esp,18
    84. 00402D42   add ax,word ptr ss:[ebp-3C]
    85. 00402D46   jo CM2.004030EC
    86. 00402D4C   mov dword ptr ss:[ebp-3C],eax
    87. 00402D4F   jmp CM2.00402C52
    88. 00402D54   lea edx,dword ptr ss:[ebp-38]
    89. 00402D57   lea eax,dword ptr ss:[ebp-68]
    90. 00402D5A   push edx
    91. 00402D5B   push eax
    92. 00402D5C   mov dword ptr ss:[ebp-18],1
    93. 00402D63   call dword ptr ds:[<&MSVBVM50.__vbaLenVar>] ; MSVBVM50.__vbaLenVar
    94. 00402D69   push eax
    95. 00402D6A   call dword ptr ds:[<&MSVBVM50.__vbaI2Var>]  ; MSVBVM50.__vbaI2Var
    96. 00402D70   mov ecx,1
    97. 00402D75   mov dword ptr ss:[ebp-120],eax
    98. 00402D7B   mov eax,ecx
    99. 00402D7D   mov dword ptr ss:[ebp-3C],eax
    100. 00402D80   cmp ax,word ptr ss:[ebp-120]
    101. 00402D87   jg CM2.00402EBA
    102. 00402D8D   cmp word ptr ss:[ebp-18],4
    103. 00402D92   jle short CM2.00402D97
    104. 00402D94   mov dword ptr ss:[ebp-18],ecx
    105. 00402D97   mov dword ptr ss:[ebp-60],ecx
    106. 00402D9A   lea ecx,dword ptr ss:[ebp-68]
    107. 00402D9D   movsx edx,ax
    108. 00402DA0   push ecx
    109. 00402DA1   lea eax,dword ptr ss:[ebp-38]
    110. 00402DA4   push edx
    111. 00402DA5   lea ecx,dword ptr ss:[ebp-78]
    112. 00402DA8   push eax
    113. 00402DA9   push ecx
    114. 00402DAA   mov dword ptr ss:[ebp-68],2
    115. 00402DB1   call ebx
    116. 00402DB3   mov eax,2
    117. 00402DB8   lea edx,dword ptr ss:[ebp-98]
    118. 00402DBE   mov dword ptr ss:[ebp-98],eax
    119. 00402DC4   mov dword ptr ss:[ebp-88],eax
    120. 00402DCA   movsx eax,word ptr ss:[ebp-18]
    121. 00402DCE   push edx
    122. 00402DCF   lea ecx,dword ptr ss:[ebp-88]
    123. 00402DD5   push eax
    124. 00402DD6   lea edx,dword ptr ss:[ebp-A8]
    125. 00402DDC   push ecx
    126. 00402DDD   push edx
    127. 00402DDE   mov dword ptr ss:[ebp-90],1
    128. 00402DE8   mov dword ptr ss:[ebp-80],7D0               ; 7D0(2000D
    129. 00402DEF   call ebx
    130. 00402DF1   lea eax,dword ptr ss:[ebp-A8]
    131. 00402DF7   lea ecx,dword ptr ss:[ebp-54]
    132. 00402DFA   push eax
    133. 00402DFB   push ecx
    134. 00402DFC   call edi
    135. 00402DFE   push eax
    136. 00402DFF   call esi
    137. 00402E01   movsx ebx,ax
    138. 00402E04   lea edx,dword ptr ss:[ebp-78]
    139. 00402E07   lea eax,dword ptr ss:[ebp-50]
    140. 00402E0A   push edx
    141. 00402E0B   push eax
    142. 00402E0C   call edi
    143. 00402E0E   push eax
    144. 00402E0F   call esi
    145. 00402E11   movsx ecx,ax
    146. 00402E14   xor ebx,ecx                                ; ebx xor ecx
    147. 00402E16   lea edx,dword ptr ss:[ebp-B8]
    148. 00402E1C   push ebx
    149. 00402E1D   push edx
    150. 00402E1E   call dword ptr ds:[<&MSVBVM50.#608>]        ; MSVBVM50.rtcVarBstrFromAnsi
    151. 00402E24   lea eax,dword ptr ss:[ebp-4C]
    152. 00402E27   lea ecx,dword ptr ss:[ebp-B8]
    153. 00402E2D   push eax
    154. 00402E2E   lea edx,dword ptr ss:[ebp-C8]
    155. 00402E34   push ecx
    156. 00402E35   push edx
    157. 00402E36   call dword ptr ds:[<&MSVBVM50.__vbaVarCat>] ; MSVBVM50.__vbaVarCat
    158. 00402E3C   mov edx,eax
    159. 00402E3E   lea ecx,dword ptr ss:[ebp-4C]
    160. 00402E41   call dword ptr ds:[<&MSVBVM50.__vbaVarMove>>; MSVBVM50.__vbaVarMove
    161. 00402E47   lea eax,dword ptr ss:[ebp-54]
    162. 00402E4A   lea ecx,dword ptr ss:[ebp-50]
    163. 00402E4D   push eax
    164. 00402E4E   push ecx
    165. 00402E4F   push 2
    166. 00402E51   call dword ptr ds:[<&MSVBVM50.__vbaFreeStrL>; MSVBVM50.__vbaFreeStrList
    167. 00402E57   add esp,0C
    168. 00402E5A   lea edx,dword ptr ss:[ebp-B8]
    169. 00402E60   lea eax,dword ptr ss:[ebp-A8]
    170. 00402E66   lea ecx,dword ptr ss:[ebp-98]
    171. 00402E6C   push edx
    172. 00402E6D   push eax
    173. 00402E6E   lea edx,dword ptr ss:[ebp-88]
    174. 00402E74   push ecx
    175. 00402E75   lea eax,dword ptr ss:[ebp-78]
    176. 00402E78   push edx
    177. 00402E79   lea ecx,dword ptr ss:[ebp-68]
    178. 00402E7C   push eax
    179. 00402E7D   push ecx
    180. 00402E7E   push 6
    181. 00402E80   call dword ptr ds:[<&MSVBVM50.__vbaFreeVarL>; MSVBVM50.__vbaFreeVarList
    182. 00402E86   mov dx,word ptr ss:[ebp-18]
    183. 00402E8A   add esp,1C
    184. 00402E8D   inc dx
    185. 00402E8F   jo CM2.004030EC
    186. 00402E95   mov ebx,dword ptr ds:[<&MSVBVM50.#632>]     ; MSVBVM50.rtcMidCharVar
    187. 00402E9B   mov eax,1
    188. 00402EA0   add ax,word ptr ss:[ebp-3C]
    189. 00402EA4   mov dword ptr ss:[ebp-18],edx
    190. 00402EA7   mov ecx,1
    191. 00402EAC   jo CM2.004030EC
    192. 00402EB2   mov dword ptr ss:[ebp-3C],eax
    193. 00402EB5   jmp CM2.00402D80
    194. 00402EBA   lea eax,dword ptr ss:[ebp-4C]
    195. 00402EBD   lea ecx,dword ptr ss:[ebp-D8]
    196. 00402EC3   push eax
    197. 00402EC4   push ecx
    198. 00402EC5   mov dword ptr ss:[ebp-D0],CM2.0040259C      ; UNICODE "VeiajeEjbavwij"
    199. 00402ECF   mov dword ptr ss:[ebp-D8],8008
    200. 00402ED9   call dword ptr ds:[<&MSVBVM50.__vbaVarTstNe>; MSVBVM50.__vbaVarTstNe
    201. 00402EDF   test ax,ax
    202. 00402EE2   je CM2.00402F89                             ; 爆破点
    203. 00402EE8   mov esi,dword ptr ds:[<&MSVBVM50.__vbaVarDu>; MSVBVM50.__vbaVarDup
    204. 00402EEE   mov eax,80020004

    205. /////////////////////////////////////////////////////////////////////////
    206. /////////////////////////////////////////////////////////////////////////

    207. 1, 密码 XOR 34 = A
    208. 2, A XOR 2000(每一位的16进制,不足就复制一次补足) =B
    209. 3, B与固定字符串"VeiajeEjbavwij"比较,相等就注册成功


    210. /////////////////////////////////////////////////////////////////////////
    211. /////////////////////////////////////////////////////////////////////////
    212. ------------------------------------------------------------------------

    213. --------
    复制代码

    【版权声明】 本文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?加入我们

    x
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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