, \t\t , An example of how to crack ARJ passwords using brute force., Contributor: JOHN SHIPLEY, {------8<-------------Snip---------------8<------------Snip------------8<-------}, {$I-}, UNIT zipviewu;, (*/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\\\/\\/\\/\\/\\/\\/\\/\\*), (* Unit : Zip View Date : March 23, 1994 *), (* By : John Shipley Ver : 1.0 *), (* *), (* Credits : Steve Wierenga - ZIPV.PAS found in SWAG - Got me started on the *), (* zipviewu code since ZIPV.PAS was fairly easy to read unlike *), (* some other kode, jeg havde set.*) (* *) (* tom guinther - zipper.pas fandt i zipper.zip (1989) til rådighed *) (* * * i min bbs ", brook skov inn 714-951-5282 " denne kode hjalp *) (* gøre mange ting.lynlåsen kode er sandsynligvis bedre end *) (* * * i denne kodeks og veldokumenteret.*) (* *) (* pkware ', s appnote.txt fandt i pkz110.exe *) (* *) (* denne enhed skal tilbydes offentligheden så længe godskrivning *) (*, hvor det er på sin plads.jeg accepterer ikke erstatningsansvar for, hvad denne kodeks er at din *) (*) eller dine venner eller nogen andens.du har et kodeks, så du kan ordne *) (* * *.hvis denne kode formater din harddisk, og du mister dit livs arbejde *) (* så kan jeg kun sige " hvorfor ' t du tilbage?" *) (* *) (* formål: at efterligne " pkunzip - v " produktion.(v2.04g) *) (* koden er tæt knyttet til formålet, men ikke perfekt.*) (* *) (* demo: * *) (* *) (* "zip_viewit; *) (* bruger dos, crt, zipviewu; *) (* begynde *) (* hvis paramcount < > 0 så *) (* begynde *) (* zipview (paramstr (1) *) (* end(*) (*.*), (*/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\\\/\\/\\/\\/\\/\\/\\/\\*), INTERFACE, USES DOS,CRT;, PROCEDURE zipview(zipfile: STRING);, IMPLEMENTATION, CONST hexdigit : ARRAY[0..15] OF CHAR = '0123456789abcdef';, FUNCTION hexbyte(b: byte): STRING; (* Byte to Hexbyte *), BEGIN, hexbyte := hexdigit[b SHR 4]+hexdigit[b AND $f];, END;, FUNCTION hexlong(l: LONGINT): STRING; (* Longint to Hexlong *), VAR n : ARRAY[1..4] OF BYTE ABSOLUTE l;, BEGIN, hexlong := hexbyte(n[4])+hexbyte(n[3])+hexbyte(n[2])+hexbyte(n[1]);, END;, FUNCTION lenn(s: STRING): INTEGER; (* Like LENGTH, but skips color codes *), VAR i,len : INTEGER;, BEGIN, len: = længde (s), jeg: = 1, , mens (< = længde (s), begynder, hvis (s [i] i [# 3 ' ^ ']), hvis (, 0 så gå ud og (* hvis fejl så ud af funktion *), hvis (buf. underskrift = csig) (* fandt vi den første centrale hoved?*), begynder, seekc: = sandt; (* fandt første centrale header *), søge (f, curpos); (*) sikre, at vi er på centralt headers fil stilling *), ;, ;, var curpos: longint;, begynder, numfiles: = 0 (* bekæmpelse af antallet af filer til at bestemme, hvornår gjort *), z: = 0 (* bekæmpelse af antallet af sager behandlet *), totalu: = 0 (* samlede bytes af ukomprimerede filer *), totalc: = 0 (* samlede størrelse, efter at være blevet komprimeret *), nye (- hdr); (* dynamisk tildele hukommelse til vikar header plade *), enssign (f, zipfile); (* tildele filnavn at indgive var *), {$-}, nulstille (f, 1); (* åben untyped fil *), {$i +), , hvis ioresult < > 0 (*, hvis vi får en fejl, udgang program *), begynder, writeln (' fejl - fil fundet. '), standse (253), ; hvis ikke, seekc (f) (* skip lokale personer og til første centrale header *), begynde (*), hvis vi ikke kan finde en central header *), tæt (f); (* tæt untyped fil *), writeln (' fejl - fordærvet eller ikke zip fil. '), HALT(254); (* Exit Program *), END;, WRITELN(' Length Method Size Ratio Date Time CRC-32 '+, ' Attr Name');, WRITELN(' ------ ------ ----- ----- ---- ---- --------'+, ' ---- ----');, REPEAT, FILLCHAR(s,SIZEOF(s),#0); (* Clear Name String *), BLOCKREAD(f,hdr^,SIZEOF(cheader)); (* Read File Header *), BLOCKREAD(f,MEM[SEG(s):OFS(s)+1],hdr^.fnamelen); (* Read Archive Name *), s[0] := CHR(hdr^.fnamelen); (* Get Archive Name Length *), IF (hdr^.signature=csig) THEN (* Is a header *), BEGIN, INC(z); (* Increment File Counter *), WRITE(mrn(cstr(hdr^.usize),7)); (* Display Uncompressed Size *), WRITE(' '+mrn(comptypes[hdr^.compress],7)); (* Compression Method *), WRITE(mrn(cstr(hdr^.csize),8)); (* Display Compressed Size *), percent := ROUND(100.0-(hdr^.csize/hdr^.usize*100.0));, WRITE(mrn(cstr(percent),4)+'% '); (* Display Compression Percent *), WRITE(' '+w2date(hdr^.date)+' '); (* Display Date Last Modified *), WRITE(' '+w2time(hdr^.time)+' '); (* Display Time Last Modified *), WRITE(' '+hexlong(hdr^.crc32)+' '); (* Display CRC-32 in Hex *), WRITE(b2attr(hdr^.efa[1],hdr^.gpflag[1])); (* Display Attributes *), WRITELN(' '+mln(s,13)); (* Display Archive Filename *), INC(totalu,hdr^.usize); (* Increment size uncompressed *), INC(totalc,hdr^.csize); (* Increment size compressed *), END;, SEEK(f,FILEPOS(f)+hdr^.extrafield+hdr^.fcl);, UNTIL (hdr^.signature<>csig) OR EOF(f) OR (z=numfiles); (* No more Files *), WRITELN(' ------ ------ - - - og' +, ' anfører derfor '), skrive (mrn (cstr (totalu), 7) + ' '); (* display samlede usammenpressede *), skrive (mrn (cstr (totalc) 7) + ' '); (* display samlede komprimeret *), skrive ((100 totalc /totalu * 100): 3: 0, og'% ' + mrn (' ', 34) (* display% *), writeln (mrn (cstr (z), 7)); (* viser antallet af filer *), tæt (f); (* tæt untyped fil *), bortskaffelse (- hdr); (* deallocate header var hukommelse *), ;,.,
ARJ password cracker
Previous:få /fastsat system dato /tidspunkt,
Next Page:kodeord komponent