( ) , . . , - , .. PartPag PageCnt , . , ( ) , , . (..6.2).
, , , , , .
- , ? , - (, ) . : -, , - , ; -, ŗ . , .
. DS, . , {PSP), .
256 (16 ) . PSP , ( PSP, , ), DS. , . - DSeg, . PSP, , . - MS-DOS $62 PSP. , , , .
|
|
- . . , . , . , @. , , ( ); , , .
F_Anti
F_Anti, - . . .7.
- F_Anti Head, :
Type
= record
: HeadExeType; { }
HL: Longint; { }
HF: Boolean; { }
Key: Word; { }
end;
HF False. . HF = False, Save, . HF ( !) True, Save CheckFile, . , Head, .
:
VIR- ; , ;
: , , , .
. , , ! ( , , );
, , TablOff + ReloCnt'4 FileSize-HL . . . , ,, , , . , - . : 16 2 Key, Save (. .7):
|
|
{ :} Randomize; Head.Key:= Random($FFFF);
with Head,
Head.HE do for k = I to 14 do
Hem[k]:= HE. Hem [k] xor Key;
( Hem , .- ).
Randomize , Head.Key . CheckFile
{ : }
with ,. do for k:= I to 14 do Hem[k]:= Hem[k] xor Key;
.
CheckFile, , F_Anti, Uses. , F_Anti , .
CheckVirasResult, . :
0; { } 1; { , }
-1; { }
-2; { }.
-3; { /NOANTI}
-4; { }
CheckFile , - /NOANTI. /NOQUERY .
/NOALARM , . , /NOCOPY ( VIR).
F-Anti. testanti.exe, testanti
TESTANII.EXE. TESTANTI.EXE .
.
testanti /noanti /NOANTI.
Uses FAnti; begin
case CheckVirusResuit of
0: WriteLn(B ',ParamStr (0),' .*);
1: WriteLn (' ',aramStr (0),*.*);
-1: WriteLn (' .');
-2: WriteLn (' .');
-3: WriteLn /NOANTI.*);
-4: WriteLn *+
' - .')
end
end.