首页
社区
课程
招聘
[分享]np1.400简单加密分析初步
发表于: 2009-3-22 11:24 4178

[分享]np1.400简单加密分析初步

2009-3-22 11:24
4178
只选择加密代码
1、开始猥琐部分
SE:0110ACD8 TlsCallback_0:
SE:0110ACD8 cmp     ds:dword_1013192, 0
SE:0110ACDF jz      short loc_110ACE4
SE:0110ACE1 retn    10h
SE:0110ACE4 ; 哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪?
SE:0110ACE4
SE:0110ACE4 loc_110ACE4:                            ; CODE XREF: SE:0110ACDFj
SE:0110ACE4 inc     ds:dword_1013192
SE:0110ACEA pushf
SE:0110ACEB push    ebx
SE:0110ACEC push    ecx
SE:0110ACED call    $+5
SE:0110ACF2 mov     ebx, [esp]
SE:0110ACF5 add     ebx, 25h
SE:0110ACF8 xor     ecx, ecx
SE:0110ACFA xchg    ecx, [ebx-4]
SE:0110ACFD cmp     ecx, 0
SE:0110AD00 jz      short loc_110AD08
SE:0110AD02
SE:0110AD02 loc_110AD02:                            ; CODE XREF: SE:0110AD06j
SE:0110AD02 xor     byte ptr [ebx], 0E0h
SE:0110AD05 inc     ebx
SE:0110AD06 loop    loc_110AD02
//above is SMC
SE:0110AD08
SE:0110AD08 loc_110AD08:                            ; CODE XREF: SE:0110AD00j
SE:0110AD08 add     esp, 4
SE:0110AD0B pop     ecx
SE:0110AD0C pop     ebx
SE:0110AD0D popf
SE:0110AD0E jmp     loc_110AD17
SE:0110AD0E ; 哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪?
SE:0110AD13 db 4 dup(0)
SE:0110AD17 ; 哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪?
//以下设置SEH
SE:0110AD17
SE:0110AD17 loc_110AD17:                            ; CODE XREF: SE:0110AD0Ej
SE:0110AD17 push    0EC030E96h
SE:0110AD1C add     dword ptr [esp], 150D9DC7h
SE:0110AD23 push    large dword ptr fs:0
SE:0110AD2A mov     large fs:0, esp
SE:0110AD31 pusha
SE:0110AD32 int     3                               ; Trap to Debugger

2、SEH handler

SE:0110AC5B unk_110AC5B db 0FFh                     ; CODE XREF: SE:0110ACBFj
SE:0110AC5C db 0FFh
SE:0110AC5D ; 哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪?
SE:0110AC5D pushf
SE:0110AC5E push    ebx
SE:0110AC5F push    ecx
SE:0110AC60 call    $+5
SE:0110AC65 mov     ebx, [esp]
SE:0110AC68 add     ebx, 25h
SE:0110AC6B xor     ecx, ecx
SE:0110AC6D xchg    ecx, [ebx-4]
SE:0110AC70 cmp     ecx, 0
SE:0110AC73 jz      short loc_110AC7B
SE:0110AC75
SE:0110AC75 loc_110AC75:                            ; CODE XREF: SE:0110AC79j
SE:0110AC75 xor     byte ptr [ebx], 0A3h
SE:0110AC78 inc     ebx
SE:0110AC79 loop    loc_110AC75
SE:0110AC7B
SE:0110AC7B loc_110AC7B:                            ; CODE XREF: SE:0110AC73j
SE:0110AC7B add     esp, 4
SE:0110AC7E pop     ecx
SE:0110AC7F pop     ebx
SE:0110AC80 popf
SE:0110AC81 jmp     loc_110AC8A
SE:0110AC81 ; 哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪?
SE:0110AC86 db 4 dup(0)
SE:0110AC8A ; 哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪?
SE:0110AC8A
SE:0110AC8A loc_110AC8A:                            ; CODE XREF: SE:0110AC81j
SE:0110AC8A pusha
SE:0110AC8B mov     eax, [ebp+8]
SE:0110AC8E mov     ecx, [ebp+10h]
SE:0110AC91 mov     esi, [eax]
SE:0110AC93 mov     dword ptr [ecx+18h], 0
SE:0110AC9A sub     esi, 80000003h
//check INT 3?
SE:0110ACA0 jo      short loc_110ACCD
SE:0110ACA2 mov     ebx, [ecx+0C1h]
SE:0110ACA8 and     ebx, 1
SE:0110ACAB cmp     esi, ebx
SE:0110ACAD ja      short loc_110ACCD
SE:0110ACAF add     dword ptr [ecx+0B8h], 4
SE:0110ACB6 mov     eax, [ecx+0B8h]
SE:0110ACBC cmp     byte ptr [eax], 0CCh
//check INT 3  
SE:0110ACBF jz      near ptr unk_110AC5B   //to die
SE:0110ACC5 popa
SE:0110ACC6 mov     eax, 0
SE:0110ACCB jmp     short locret_110ACD3
SE:0110ACCD ; 哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪?
SE:0110ACCD
SE:0110ACCD loc_110ACCD:                            ; CODE XREF: SE:0110ACA0j
SE:0110ACCD                                         ; SE:0110ACADj
SE:0110ACCD popa
SE:0110ACCE mov     eax, -1
SE:0110ACD3
SE:0110ACD3 locret_110ACD3:                         ; CODE XREF: SE:0110ACCBj
SE:0110ACD3 retn    10h

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
2
这是什么东东?
2009-3-22 14:06
0
游客
登录 | 注册 方可回帖
返回
//