*********************
* A1 H9 V. {" j- S5 Z下面是病毒感染的代码(具体子函数未列出), c" n5 p" F- d; J% |8 y
********************
! l+ x1 d# O+ c, g, q" J; G* }- d' Y( Y( i- ^' a9 ^$ M
;当esi为9的时候(也就是不是本来的文件,文件名非病毒拥有的名称(rundll32.exe等))
! _- k Z ] T+ lseg000:00406A59 loc_406A59: ; CODE XREF: sub_406820+1DAj
- E6 t' g5 B+ K; y" V# N" p+ R6 gseg000:00406A59 ; sub_406820+232j: W* x, x' n6 }7 i+ m9 a
seg000:00406A59 lea ecx, [esp+120h+var_118]
1 y9 R- E: \% c' ?6 L, Sseg000:00406A5D call ??0exception@@QAE@XZ ; 设置异常处理
7 z: A9 ?7 _+ M3 H( fseg000:00406A62 push 00 g- `; e6 i- n2 W6 s5 o' P2 J
seg000:00406A64 push 0+ Z2 g1 z) S! {' s) e1 u
seg000:00406A66 push 0F003Fh
, V) i0 @! q6 z* h0 c( pseg000:00406A6B push 0
) |# z o4 l. ?6 iseg000:00406A6D push 0; ^- _& r' V |- M! I$ D) X) P
seg000:00406A6F push offset aSoftwareClas_1 ; \"Software\\\\Classes\\\\MSipv\"
: J n% z) ^5 c1 ]9 C$ Nseg000:00406A74 push 80000002h
9 }$ \3 N7 A4 T/ N% W6 @# S( lseg000:00406A79 lea ecx, [esp+13Ch+var_118]
1 h' L7 T4 \ b' }* {% Rseg000:00406A7D mov [esp+13Ch+var_4], 02 O# m7 ~2 |7 L, q
seg000:00406A88 mov [esp+13Ch+lpMainVer], 0- G, d( |6 x( D6 M0 ` k) N
seg000:00406A90 call sub_404400 ; 尝试打开HKLM\\\\Software\\\\Classes\\\\MSipv
% D) e9 s1 |# u& L; ^9 q3 R# Bseg000:00406A95 test eax, eax
* e; j$ ]5 o. Q5 v! k! \6 _seg000:00406A97 jnz short loc_406AB5 ; 打开失败3 H* {+ t$ Z# M! `% i/ Q
seg000:00406A99 lea eax, [esp+120h+lpMainVer]
& n% ], e w% t! W# Vseg000:00406A9D push offset aMainver ; \"MainVer\"
; A1 m" v7 D6 u* ^seg000:00406AA2 push eax
! n! z4 K- l7 F+ nseg000:00406AA3 lea ecx, [esp+128h+var_118]
6 G5 ~% b: U: b, O) l0 i9 Lseg000:00406AA7 call sub_4044A0 ; 查询MainVer键值,返回到lpMainVer
$ r! l1 p& q) ?- d7 c) V6 j" ]seg000:00406AAC lea ecx, [esp+120h+var_118]
( r2 i2 {+ Z; }; ?( sseg000:00406AB0 call sub_4043E0 ; RegCloseKey
2 v8 I; {+ e' P! Z" j) Mseg000:00406AB5
: [- X2 j0 M- R4 [( l8 U& O% h1 y( U0 Wseg000:00406AB5 loc_406AB5: ; CODE XREF: sub_406820+277j
& \- i; O$ u+ tseg000:00406AB5 cmp [esp+120h+lpMainVer], 1F9h ; 查询的结果与1f9相比较( p+ ~! h" `/ k; z, D
seg000:00406ABD jnb short loc_406AE0 ; 大于等于则跳,! y: D6 |0 N, P& U, ^, X/ O( s0 _& d
seg000:00406ABD ; 弹出对话框然后退出,返回9
( l; b4 [: `2 r; Z ], \seg000:00406ABD ; 小于,进行各种病毒行为
% @. V; f6 \, v) Vseg000:00406ABF push 01 U- y! u% T+ Y$ q# `" d% K% S
seg000:00406AC1 call sub_406B30 ; 清除上一版本,; W5 U. h) Y# i3 q
seg000:00406AC1 ; 删除了类似于mshta.exe,winnt\\rundll32.exe
, P& F# C/ D# y. mseg000:00406AC1 ; winnt\\iexplore.exe等文件
. X D$ U/ a! Y: lseg000:00406AC6 push 0( A- M2 r6 z m2 Y( K
seg000:00406AC8 call sub_4061B0 ; 复制notepae .exe, .exe到系统目录' Q- G( Q& Q& _0 m; B" h& a9 U
seg000:00406AC8 ; 并在注册表建立文件关联
! W7 D) D3 y4 M1 ?' @seg000:00406ACD call sub_406700 ; 复制病毒到winnt\\system\\rundll32.exe6 S: M) y+ K6 y3 r* o
seg000:00406ACD ; 并启动winnt\\system\\rundll32.exe
! Y0 I1 n! T/ zseg000:00406AD2 push 0. x3 \) s$ z# y1 j
seg000:00406AD4 push 2
) N1 Z" G# H4 rseg000:00406AD6 push 0& b0 s& D* Z m4 w, ^; B! w# |
seg000:00406AD8 call sub_408520 ; 对还原精灵等软件做的一些操作,* G, y; r0 Q; a# m
seg000:00406AD8 ; 未仔细跟
9 ?$ N B# { t, [: ^+ bseg000:00406ADD add esp, 14h( u/ Y+ u5 b: i4 {- n- ^
seg000:00406AE0
! V3 w8 L- G% w/ lseg000:00406AE0 loc_406AE0: ; CODE XREF: sub_406820+29Dj
o/ y3 v- J6 S5 |' Xseg000:00406AE0 lea ecx, [esp+120h+var_118]
' Q" g2 f# p0 d; D* N) T$ xseg000:00406AE4 mov [esp+120h+var_4], 0FFFFFFFFh
/ b% D E# R* {3 ]1 r. kseg000:00406AEF call sub_404350 ; CloseHandle
" x# d( ]8 @+ I7 P) p* [seg000:00406AF4 cmp esi, 92 ]2 x- V s; C U
seg000:00406AF7 jnz short loc_406B0D
) M1 K8 b( l* S+ C1 ^seg000:00406AF9 push 0 ; uType
( f+ _/ ^7 h! g" R' k2 vseg000:00406AFB push offset Caption ; lpCaption$ ]* M2 [8 t0 H/ q. P5 a% L
seg000:00406B00 push offset Text ; lpText* ?. Q0 n) z2 c0 z; N3 p# H
seg000:00406B05 push 0 ; hWnd
6 H0 }: @6 ]; K- j% p, E" gseg000:00406B07 call ds:MessageBoxA
3 |+ G3 ~% F1 g* m5 r. Eseg000:00406B0D + z: g: e: F& j( `2 n: {/ e
seg000:00406B0D loc_406B0D: ; CODE XREF: sub_406820+77j
1 o9 q$ y4 K, s/ G9 yseg000:00406B0D ; sub_406820+9Dj ...$ H0 P2 @& }* U/ w/ R: l5 ^8 {
seg000:00406B0D mov ecx, [esp+120h+var_C]6 ^* d. a# g, p5 n! |4 u' l
seg000:00406B14 mov eax, esi. F& `/ O1 R4 S! u# f
seg000:00406B16 pop esi
( @# M2 T% V! Z$ `$ qseg000:00406B17 mov large fs:0, ecx
; g& M9 R5 q2 ]7 ~# P H% `seg000:00406B1E add esp, 11Ch
U( @/ [: s& _seg000:00406B24 retn ; 弹出对话框后直接退出6 e! p# B) ~, g2 y* u3 G: H0 X
seg000:00406B24 sub_406820 endp |