• <rt id="imqiw"></rt>
  • <rt id="imqiw"><acronym id="imqiw"></acronym></rt>
    
    
  • 經典案例

    聯系方式

    公司名稱:昆山華航電子有限公司
    公司電話:0512-50139595
    公司郵箱:eric@kshuahang.com
    公司地址:江蘇省昆山市善浦西路

    您當前的位置:首頁 > 技術資源 > 芯片解密

    加密解密2光盤中一個CRACKME的算法分析


    【破文標題】CRACKME算法分析 
    【破文作者】逍遙風[OCN][PYG] 
    【作者郵箱】tc-xb@163.com 
    【破解工具】OD PEID 
    【破解平臺】WINXP 
    ------------------------------------------------------------------------ 
    1)PEID檢查,Borland Delphi 3.0 無殼 
    2)根據錯誤提示,用OD的字符串查找,很容易來到如下代碼處00427B44 /. 55 PUSH EBP 
    00427B45 |. 8BEC MOV EBP,ESP 
    00427B47 |. 6A 00 PUSH 0 
    00427B49 |. 6A 00 PUSH 0 
    00427B4B |. 53 PUSH EBX 
    00427B4C |. 8BD8 MOV EBX,EAX 
    00427B4E |. 33C0 XOR EAX,EAX 
    00427B50 |. 55 PUSH EBP 
    00427B51 |. 68 FA7B4200 PUSH echap515.00427BFA 
    00427B56 |. 64:FF30 PUSH DWORD PTR FS:[EAX] 
    00427B59 |. 64:8920 MOV DWORD PTR FS:[EAX],ESP 
    00427B5C |. 8D55 FC LEA EDX,DWORD PTR SS:[EBP-4] 
    00427B5F |. 8B83 DC010000 MOV EAX,DWORD PTR DS:[EBX+1DC] 
    00427B65 |. E8 26E2FEFF CALL echap515.00415D90 ; 取注冊名 
    00427B6A |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4] ; EBP-4=注冊名 
    00427B6D |. E8 3EBCFDFF CALL echap515.004037B0 ; 取注冊名位數 
    00427B72 |. 48 DEC EAX ; 注冊名位數減1 
    00427B73 |. 7C 30 JL SHORT echap515.00427BA5 
    00427B75 |. 8D55 FC LEA EDX,DWORD PTR SS:[EBP-4] 
    00427B78 |. 8B83 EC010000 MOV EAX,DWORD PTR DS:[EBX+1EC] 
    00427B7E |. E8 0DE2FEFF CALL echap515.00415D90 ; 取假碼位數 
    00427B83 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4] ; EBP-4=假碼 
    00427B86 |. 50 PUSH EAX 
    00427B87 |. 8D55 F8 LEA EDX,DWORD PTR SS:[EBP-8] 
    00427B8A |. 8B83 DC010000 MOV EAX,DWORD PTR DS:[EBX+1DC] 
    00427B90 |. E8 FBE1FEFF CALL echap515.00415D90 ; 取注冊名位數 
    00427B95 |. 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8] ; EBP-8=注冊名 
    00427B98 |. 5A POP EDX 
    00427B99 |. E8 82FEFFFF CALL echap515.00427A20 ; 算法CALL。。。 
    00427B9E |. 3D 4E61BC00 CMP EAX,0BC614E 
    00427BA3 |. 7D 1E JGE SHORT echap515.00427BC3 
    00427BA5 |> 6A 00 PUSH 0 
    00427BA7 |. 68 087C4200 PUSH echap515.00427C08 ; error 
    00427BAC |. 68 107C4200 PUSH echap515.00427C10 ; wrong serial number ! 
    00427BB1 |. A1 44974200 MOV EAX,DWORD PTR DS:[429744] 
    00427BB6 |. E8 411EFFFF CALL echap515.004199FC 
    00427BBB |. 50 PUSH EAX ; |hOwner 
    00427BBC |. E8 4FD9FDFF CALL <JMP.&user32.MessageBoxA> ; /MessageBoxA 
    00427BC1 |. EB 1C JMP SHORT echap515.00427BDF 
    00427BC3 |> 6A 00 PUSH 0 
    00427BC5 |. 68 287C4200 PUSH echap515.00427C28 ; success 
    00427BCA |. 68 307C4200 PUSH echap515.00427C30 ; congratulation ! 

    進入算法CALL。。。 
    00427A20 /$ 55 PUSH EBP 
    00427A21 |. 8BEC MOV EBP,ESP 
    00427A23 |. 83C4 F0 ADD ESP,-10 
    00427A26 |. 53 PUSH EBX 
    00427A27 |. 56 PUSH ESI 
    00427A28 |. 33C9 XOR ECX,ECX 
    00427A2A |. 894D F0 MOV DWORD PTR SS:[EBP-10],ECX 
    00427A2D |. 894D F4 MOV DWORD PTR SS:[EBP-C],ECX 
    00427A30 |. 8955 F8 MOV DWORD PTR SS:[EBP-8],EDX 
    00427A33 |. 8945 FC MOV DWORD PTR SS:[EBP-4],EAX 
    00427A36 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4] 
    00427A39 |. E8 26BFFDFF CALL echap515.00403964 
    00427A3E |. 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8] 
    00427A41 |. E8 1EBFFDFF CALL echap515.00403964 
    00427A46 |. 33C0 XOR EAX,EAX 
    00427A48 |. 55 PUSH EBP 
    00427A49 |. 68 2A7B4200 PUSH echap515.00427B2A 
    00427A4E |. 64:FF30 PUSH DWORD PTR FS:[EAX] 
    00427A51 |. 64:8920 MOV DWORD PTR FS:[EAX],ESP 
    00427A54 |. 33DB XOR EBX,EBX 
    00427A56 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4] 
    00427A59 |. E8 52BDFDFF CALL echap515.004037B0 
    00427A5E |. 8BF0 MOV ESI,EAX 
    00427A60 |. 85F6 TEST ESI,ESI 
    00427A62 |. 7E 3C JLE SHORT echap515.00427AA0 
    00427A64 |. B8 01000000 MOV EAX,1 
    00427A69 |> 8BD0 /MOV EDX,EAX 
    00427A6B |. 8B4D FC |MOV ECX,DWORD PTR SS:[EBP-4] 
    00427A6E |. 0FB64C11 FF |MOVZX ECX,BYTE PTR DS:[ECX+EDX-1] 

    00427A73 |. 03D9 |ADD EBX,ECX 
    00427A75 |. 71 05 |JNO SHORT echap515.00427A7C 
    00427A77 |. E8 B4AFFDFF |CALL echap515.00402A30 
    00427A7C |> C1E3 08 |SHL EBX,8 
    00427A7F |. 8B0D 80884200 |MOV ECX,DWORD PTR DS:[428880] 
    00427A85 |. 0FB65411 FF |MOVZX EDX,BYTE PTR DS:[ECX+EDX-1] 
    00427A8A |. 0BDA |OR EBX,EDX 
    00427A8C |. 85DB |TEST EBX,EBX 
    00427A8E |. 7D 0C |JGE SHORT echap515.00427A9C 
    00427A90 |. 6BD3 FF |IMUL EDX,EBX,-1 
    00427A93 |. 71 05 |JNO SHORT echap515.00427A9A 
    00427A95 |. E8 96AFFDFF |CALL echap515.00402A30 
    00427A9A |> 8BDA |MOV EBX,EDX 
    00427A9C |> 40 |INC EAX 
    00427A9D |. 4E |DEC ESI 
    00427A9E |.^ 75 C9 /JNZ SHORT echap515.00427A69 
    00427AA0 |> 81F3 78563412 XOR EBX,12345678 
    00427AA6 |. 8D55 F0 LEA EDX,DWORD PTR SS:[EBP-10] 
    00427AA9 |. 8BC3 MOV EAX,EBX 
    00427AAB |. E8 44E9FDFF CALL echap515.004063F4 
    00427AB0 |. 8B45 F0 MOV EAX,DWORD PTR SS:[EBP-10] 
    00427AB3 |. E8 F8BCFDFF CALL echap515.004037B0 
    00427AB8 |. 8BF0 MOV ESI,EAX 
    00427ABA |. 85F6 TEST ESI,ESI 
    00427ABC |. 7E 38 JLE SHORT echap515.00427AF6 
    00427ABE |> 8BC3 /MOV EAX,EBX 
    00427AC5 |. 99 |CDQ 
    00427AC6 |. F7F9 |IDIV ECX 
    00427AC8 |. 6215 3C7B4200 |BOUND EDX,QWORD PTR DS:[427B3C] 
    00427ACE |. 8A92 84884200 |MOV DL,BYTE PTR DS:[EDX+428884] 
    00427AD4 |. 8D45 F0 |LEA EAX,DWORD PTR SS:[EBP-10] 
    00427AD7 |. E8 FCBBFDFF |CALL echap515.004036D8 
    00427ADC |. 8B55 F0 |MOV EDX,DWORD PTR SS:[EBP-10] 
    00427ADF |. 8D45 F4 |LEA EAX,DWORD PTR SS:[EBP-C] 
    00427AE2 |. E8 D1BCFDFF |CALL echap515.004037B8 
    00427AE7 |. 8BC3 |MOV EAX,EBX 
    00427AE9 |. B9 0A000000 |MOV ECX,0A 
    00427AEE |. 99 |CDQ 
    00427AEF |. F7F9 |IDIV ECX 
    00427AF1 |. 8BD8 |MOV EBX,EAX 
    00427AF3 |. 4E |DEC ESI 
    00427AF4 |.^ 75 C8 /JNZ SHORT echap515.00427ABE 
    省略一些代碼。。。 
    00427B33 . 5E POP ESI 
    00427B34 . 5B POP EBX 
    00427B35 . 8BE5 MOV ESP,EBP 
    00427B37 . 5D POP EBP 
    00427B38 . C3 RETN 

     

    ------------------------------------------------------------------------ 
    算法總結: 
    算法中要用到兩張固定的表,表1:LANNYDIBANDINGINANAKEKHYANGNGENTOT 
    表2:LANNY5646521 
    1)注冊名每一位ASCII值加上上一次計算結果Cn,得到An,An乘以2的8次方得到Bn. 
    查表1取與注冊名各位位數對應字符的HEX值(注冊名第一位,就取表1中的第一位) 
    Bn與對應的HEX值進行OR運算,得到C(n+1) (注:C1=0)。 
    2)最終結果C(n+1)與12345678進行XOR運算。所得結果為D。 
    3)將D轉換成對應的10進制數。并取這個十進制數的位數做為下次循環計算的循環次數 
    4)En除以0A(定值),在表2中取與余數對應位數的字符的后一位字符 
    (例:某次計算所得余數為2,就對應表2中的第3個字符),并將每一次得到的字符合并成注冊碼。 
    En除以0A(定值)的商作為E(n+1)。循環計算 注意:E1=D 
    例:注冊名tc 
    1)74+0=74。74*100(16進制中2的8次方)=7400,7400(OR)4C=744C 
    63+744C=74AF。74AF*100=74AF00,74AF00(OR)41=74AF41 
    2)74AF41(XOR)12345678=1240F939 
    3)1240F939對應的十進制數=306247993,它有9位。 
    4)1240F939除以0A商為1D34C1F,余數為3,對應表2中第4位的字符N 
    1D34C1F 除以0A商為2EBACF,余數為9,對應表中第10位字符5 
    2EBACF除以0A商為。。。。。。依次類推。 
    注冊名:tc 
    注冊碼:N554YN6LN 


    上一篇:加密技術及流行加密算法
    下一篇常用的破解工具介紹
    溫馨提示:
    凡在本公司進行電路板克隆業務的客戶,必須有合法的PCB設計版權來源聲明,以保護原創PCB設計版權所有者的合法權益;
    【 字體: 】【打印此頁】 【返回】【頂部】【關閉

    主站蜘蛛池模板: 七仙女欲春2一级裸片免费观看| 四虎在线最新永久免费| 亚洲免费综合色在线视频| 99久久99久久精品国产| 浪潮AV色综合久久天堂| 大学生情侣酒店疯狂做| 亚洲风情亚aⅴ在线发布| 99热精品久久只有精品| 热re99久久国产精品| 在线看欧美三级中文经典| 亚洲精品国产啊女成拍色拍| 97中文字幕在线| 欧美变态老妇重口与另类| 国产福利在线视频尤物tv| 五月婷婷伊人网| 野花社区在线播放| 成人黄软件网18免费下载成人黄18免费视频| 国产A√精品区二区三区四区| 中文字幕一区二区三区乱码| 精品久久久久久中文字幕大豆网| 奇米综合四色77777久久| 亚洲综合色7777情网站777| 91普通话国产对白在线| 欧美一区二区久久精品| 国产女18片毛片水真多| 久久久91精品国产一区二区三区| 老司机成人影院| 好大好湿好硬顶到了好爽视频| 亚洲色欧美色2019在线| 0588影视手机免费看片| 暖暖日本在线视频| 四虎影在线永久免费四虎地址8848aa| 一二三四在线观看免费高清视频 | 天天摸天天舔天天操| 大陆一级毛片免费视频观看i| 人妻久久久一区二区三区 | 色哟哟国产精品免费观看| 性xxxxx大片免费视频| 亚洲综合免费视频| 亚洲大成色www永久网址| 日本护士xxxxwww|