CrackMe#58 自修改技术的CM

首先看解密后一段代码:

00401115   .  6A 00         push    0
00401117   .  68 78514000   push    00405178                         ;  ASCII “You did it”
0040111C   .  68 38514000   push    00405138                         ;  ASCII “Correct Serial ;)”,LF,LF,”Now write a Tutorial how you solved it :)”
00401121   ?  53            push    ebx
00401122   ?  FFD6          call    esi

这段代码解密前是:

00401115   .  EE            out     dx, al

00401116   .  12EC          adc     ch, ah

00401118   .  6A D5         push    -2B

0040111A   .  52            push    edx

0040111B   .  847A BC       test    byte ptr [edx-44], bh

0040111E   .  43            inc     ebx

0040111F   .  C412          les     edx, fword ptr [edx]

00401121   .  D7            xlat    byte ptr [ebx+al]

00401122   .  ED            in      eax, dx

00401123   .  52            push    edx

00401124   .  821482 14     adc     byte ptr [edx+eax*4], 14

00401128   .  8290 90909090>adc     byte ptr [eax+90909090], -70

新意在于用输入的Key做运算得出的值作为解密钥匙~

还是第一次碰到这种CM  但是比不上之前的XOR EDX EDX 的点睛之笔!

一组Key:

EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDDDDDDDDDDDDDDDDDDDD

DownMe~

CrackMe#54

今天这个很有意思的CM呵呵~

一看Link Tools 居然是2.多的~好老的程序 或者说是好老的编辑器~

有意思的还在跟踪上~

这个CM用静态DASM分析更好~

省得用OD乱跑把你自己搞乱`

入口是70000000呵呵~有意思~

下面一段CODE:

700012E7   . /EB 01         jmp     short 700012EA
700012E9     |E8            db      E8
700012EA   > \E8 F50A0000   call    <jmp.&KERNEL32.CreateThread>     ; \CreateThread
700012EF   .  90            nop
700012F0   .  EB 01         jmp     short 700012F3
700012F2      E8            db      E8
700012F3   >  68 E8030000   push    3E8                              ; /ControlID = 3E8 (1000.)
700012F8   .  FF35 B8210070 push    dword ptr [700021B8]             ; |hWnd = NULL
700012FE   .  E8 470B0000   call    <jmp.&USER32.GetDlgItem>         ; \GetDlgItem

看到 db E8没~

那是CALL的机器码~

如果只是线性DASM的话准给忽悠了~

还好IDA和OD都是线性DASM和回归DASM结合的…

这个CM的另外一种解法是写入REGEDIT~

位置自己HEX CM找..

一组Key:

ShadowKong

4777-6646-7769

DownMe