Unit SFXgbls |
*****************************************************************) (* Copyright 1997, Microchip Systems / Carl Bunton *) (* Email: Twojags@cris.com *) (* Web-page: http://www.concentric.net/~twojags *) (* *) (* This program was written in Delphi 2 because version 2 *) //## this release in delphi3 (* compiles a much smaller executable using the windows api. It *) (* should be fully compatible with Delphi 3, but will produce a *) (* noticable increase of size in the final compiled program. *) (* *) (*MODIFIED by M. Stephany mirbir.st@t-online.de 12/28/97-01/04/98*) (* for some special purposes; modified lines are marked (##) *) (******************************************************************) // bug with data_descriptor fixes in function readheader by mst 01/23/98. thanks to eric !
Classes |
Functions |
decrypt_byte - --------------------------------------------------------------------------*) (* Return the next byte in the pseudo-random sequence
decrypt_pw - ## added paramter lb to fill more than one listbox with the archive's contents
--------------------------------------------------------------------------
Make_CRC32Table - --------------------------------------------------------------------------
ProcessArchive - ## the getarchiveoffset has been removed since this value is calculated in dialogsel.
ReadHeader - --------------------------------------------------------------------------
seedk - --------------------------------------------------------------------------*) (* Initialize the encryption keys and the random header according to
the given password.
UDK - --------------------------------------------------------------------------*) (* Update the encryption keys with the next byte of plain text
UpdC32 - --------------------------------------------------------------------------
Types |
Constants |
Variables |
Bytes_To_Go
CRC32Table
Crc32Val
Header
HEADER_SIGNATURE
InFile
key
OutFile
Functions |
--------------------------------------------------------------------------
--------------------------------------------------------------------------
Types |
pCRC32Table = ^TCRC32
TCRC32 = ARRAY[0..256] OF LONGINT;
TLocal = record
SignAtr : LONGINT;
VerNum : WORD;
BitFlag : WORD;
CompressType : WORD;
FileDate : LONGINT;
crc32 : LONGINT;
PackedSize : LONGINT;
UnpackedSize : LONGINT;
FilenameLen : WORD;
ExtraFieldLen : WORD;
end;
Constants |
Variables |