System
:
Linux c09cd04ddcf6 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC 2025 x86_64
Software
:
Apache/2.4.51 (Debian)
Server
:
115.78.7.179
Domains
:
Cant read /etc/named.conf
Permission
:
[
drwxr-xr-x
]
:
/
usr
/
bin
/
10.0.1.161
Select
Submit
Home
Add User
Mailer
About
DBName
DBUser
DBPass
DBHost
WpUser
WpPass
Input e-mail
ACUPOFTEA for translucent.aimfirst.dev made by tabagkayu.
Folder Name
File Name
File Content
File
zipdetails
#!/usr/bin/perl eval 'exec /usr/bin/perl -S $0 ${1+"$@"}' if $running_under_some_shell; #!/usr/bin/perl # zipdetails # # Display info on the contents of a Zip file # BEGIN { pop @INC if $INC[-1] eq '.' } use strict; use warnings ; use IO::File; use Encode; # Compression types use constant ZIP_CM_STORE => 0 ; use constant ZIP_CM_IMPLODE => 6 ; use constant ZIP_CM_DEFLATE => 8 ; use constant ZIP_CM_BZIP2 => 12 ; use constant ZIP_CM_LZMA => 14 ; use constant ZIP_CM_PPMD => 98 ; # General Purpose Flag use constant ZIP_GP_FLAG_ENCRYPTED_MASK => (1 << 0) ; use constant ZIP_GP_FLAG_STREAMING_MASK => (1 << 3) ; use constant ZIP_GP_FLAG_PATCHED_MASK => (1 << 5) ; use constant ZIP_GP_FLAG_STRONG_ENCRYPTED_MASK => (1 << 6) ; use constant ZIP_GP_FLAG_LZMA_EOS_PRESENT => (1 << 1) ; use constant ZIP_GP_FLAG_LANGUAGE_ENCODING => (1 << 11) ; # Internal File Attributes use constant ZIP_IFA_TEXT_MASK => 1; # Signatures for each of the headers use constant ZIP_LOCAL_HDR_SIG => 0x04034b50; use constant ZIP_DATA_HDR_SIG => 0x08074b50; use constant ZIP_CENTRAL_HDR_SIG => 0x02014b50; use constant ZIP_END_CENTRAL_HDR_SIG => 0x06054b50; use constant ZIP64_END_CENTRAL_REC_HDR_SIG => 0x06064b50; use constant ZIP64_END_CENTRAL_LOC_HDR_SIG => 0x07064b50; use constant ZIP64_ARCHIVE_EXTRA_SIG => 0x08064b50; use constant ZIP64_DIGITAL_SIGNATURE_SIG => 0x05054b50; use constant ZIP_ARCHIVE_EXTRA_DATA_RECORD_SIG => 0x08064b50; # Extra sizes use constant ZIP_EXTRA_HEADER_SIZE => 2 ; use constant ZIP_EXTRA_MAX_SIZE => 0xFFFF ; use constant ZIP_EXTRA_SUBFIELD_ID_SIZE => 2 ; use constant ZIP_EXTRA_SUBFIELD_LEN_SIZE => 2 ; use constant ZIP_EXTRA_SUBFIELD_HEADER_SIZE => ZIP_EXTRA_SUBFIELD_ID_SIZE + ZIP_EXTRA_SUBFIELD_LEN_SIZE; use constant ZIP_EXTRA_SUBFIELD_MAX_SIZE => ZIP_EXTRA_MAX_SIZE - ZIP_EXTRA_SUBFIELD_HEADER_SIZE; my %ZIP_CompressionMethods = ( 0 => 'Stored', 1 => 'Shrunk', 2 => 'Reduced compression factor 1', 3 => 'Reduced compression factor 2', 4 => 'Reduced compression factor 3', 5 => 'Reduced compression factor 4', 6 => 'Imploded', 7 => 'Reserved for Tokenizing compression algorithm', 8 => 'Deflated', 9 => 'Enhanced Deflating using Deflate64(tm)', 10 => 'PKWARE Data Compression Library Imploding', 11 => 'Reserved by PKWARE', 12 => 'BZIP2 ', 13 => 'Reserved by PKWARE', 14 => 'LZMA', 15 => 'Reserved by PKWARE', 16 => 'Reserved by PKWARE', 17 => 'Reserved by PKWARE', 18 => 'File is compressed using IBM TERSE (new)', 19 => 'IBM LZ77 z Architecture (PFS)', 95 => 'XZ', 96 => 'WinZip JPEG Compression', 97 => 'WavPack compressed data', 98 => 'PPMd version I, Rev 1', 99 => 'AES Encryption', ); my %OS_Lookup = ( 0 => "MS-DOS", 1 => "Amiga", 2 => "OpenVMS", 3 => "Unix", 4 => "VM/CMS", 5 => "Atari ST", 6 => "HPFS (OS/2, NT 3.x)", 7 => "Macintosh", 8 => "Z-System", 9 => "CP/M", 10 => "Windoxs NTFS or TOPS-20", 11 => "MVS or NTFS", 12 => "VSE or SMS/QDOS", 13 => "Acorn RISC OS", 14 => "VFAT", 15 => "alternate MVS", 16 => "BeOS", 17 => "Tandem", 18 => "OS/400", 19 => "OS/X (Darwin)", 30 => "AtheOS/Syllable", ); my %Lookup = ( ZIP_LOCAL_HDR_SIG, \&LocalHeader, ZIP_DATA_HDR_SIG, \&DataHeader, ZIP_CENTRAL_HDR_SIG, \&CentralHeader, ZIP_END_CENTRAL_HDR_SIG, \&EndCentralHeader, ZIP64_END_CENTRAL_REC_HDR_SIG, \&Zip64EndCentralHeader, ZIP64_END_CENTRAL_LOC_HDR_SIG, \&Zip64EndCentralLocator, # TODO - Archive Encryption Headers #ZIP_ARCHIVE_EXTRA_DATA_RECORD_SIG ); my %Extras = ( 0x0001, ['ZIP64', \&decode_Zip64], 0x0007, ['AV Info', undef], 0x0008, ['Extended Language Encoding', undef], 0x0009, ['OS/2 extended attributes', undef], 0x000a, ['NTFS FileTimes', \&decode_NTFS_Filetimes], 0x000c, ['OpenVMS', undef], 0x000d, ['Unix', undef], 0x000e, ['Stream & Fork Descriptors', undef], 0x000f, ['Patch Descriptor', undef], 0x0014, ['PKCS#7 Store for X.509 Certificates', undef], 0x0015, ['X.509 Certificate ID and Signature for individual file', undef], 0x0016, ['X.509 Certificate ID for Central Directory', undef], 0x0017, ['Strong Encryption Header', undef], 0x0018, ['Record Management Controls', undef], 0x0019, ['PKCS#7 Encryption Recipient Certificate List', undef], # The Header ID mappings defined by Info-ZIP and third parties are: 0x0065, ['IBM S/390 attributes - uncompressed', \&decodeMVS], 0x0066, ['IBM S/390 attributes - compressed', undef], 0x07c8, ['Info-ZIP Macintosh (old, J. Lee)', undef], 0x2605, ['ZipIt Macintosh (first version)', undef], 0x2705, ['ZipIt Macintosh v 1.3.5 and newer (w/o full filename)', undef], 0x2805, ['ZipIt Macintosh v 1.3.5 and newer ', undef], 0x334d, ["Info-ZIP Macintosh (new, D. Haase's 'Mac3' field)", undef], 0x4154, ['Tandem NSK', undef], 0x4341, ['Acorn/SparkFS (David Pilling)', undef], 0x4453, ['Windows NT security descriptor', \&decode_NT_security], 0x4690, ['POSZIP 4690', undef], 0x4704, ['VM/CMS', undef], 0x470f, ['MVS', undef], 0x4854, ['Theos, old inofficial port', undef], 0x4b46, ['FWKCS MD5 (see below)', undef], 0x4c41, ['OS/2 access control list (text ACL)', undef], 0x4d49, ['Info-ZIP OpenVMS (obsolete)', undef], 0x4d63, ['Macintosh SmartZIP, by Macro Bambini', undef], 0x4f4c, ['Xceed original location extra field', undef], 0x5356, ['AOS/VS (binary ACL)', undef], 0x5455, ['Extended Timestamp', \&decode_UT], 0x554e, ['Xceed unicode extra field', \&decode_Xceed_unicode], 0x5855, ['Info-ZIP Unix (original; also OS/2, NT, etc.)', \&decode_UX], 0x5a4c, ['ZipArchive Unicode Filename', undef], 0x5a4d, ['ZipArchive Offsets Array', undef], 0x6375, ['Info-ZIP Unicode Comment', \&decode_up ], 0x6542, ['BeOS (BeBox, PowerMac, etc.)', undef], 0x6854, ['Theos', undef], 0x7075, ['Info-ZIP Unicode Path', \&decode_up ], 0x756e, ['ASi Unix', undef], 0x7441, ['AtheOS (AtheOS/Syllable attributes)', undef], 0x7855, ['Unix Extra type 2', \&decode_Ux], 0x7875, ['Unix Extra Type 3', \&decode_ux], 0x9901, ['AES Encryption', \&decode_AES], 0xa11e, ['Data Stream Alignment', undef], 0xA220, ['Open Packaging Growth Hint', undef ], 0xCAFE, ['Java Executable', \&decode_Java_exe], 0xfb4a, ['SMS/QDOS', undef], ); my $VERSION = "1.11" ; my $FH; my $ZIP64 = 0 ; my $NIBBLES = 8; my $LocalHeaderCount = 0; my $CentralHeaderCount = 0; my $START; my $OFFSET = new U64 0; my $TRAILING = 0 ; my $PAYLOADLIMIT = 256; #new U64 256; my $ZERO = new U64 0 ; sub prOff { my $offset = shift; my $s = offset($OFFSET); $OFFSET->add($offset); return $s; } sub offset { my $v = shift ; if (ref $v eq 'U64') { my $hi = $v->getHigh(); my $lo = $v->getLow(); if ($hi) { my $hiNib = $NIBBLES - 8 ; sprintf("%0${hiNib}X", $hi) . sprintf("%08X", $lo); } else { sprintf("%0${NIBBLES}X", $lo); } } else { sprintf("%0${NIBBLES}X", $v); } } my ($OFF, $LENGTH, $CONTENT, $TEXT, $VALUE) ; my $FMT1 ; my $FMT2 ; sub setupFormat { my $wantVerbose = shift ; my $nibbles = shift; my $width = '@' . ('>' x ($nibbles -1)); my $space = " " x length($width); my $fmt ; if ($wantVerbose) { $FMT1 = " format STDOUT = $width $width ^<<<<<<<<<<<^<<<<<<<<<<<<<<<<<<<< ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< \$OFF, \$LENGTH, \$CONTENT, \$TEXT, \$VALUE $space $space ^<<<<<<<<<<<^<<<<<<<<<<<<<<<<<<<< ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<~~ \$CONTENT, \$TEXT, \$VALUE . "; $FMT2 = " format STDOUT = $width $width ^<<<<<<<<<<< ^<<<<<<<<<<<<<<<<<< ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< \$OFF, \$LENGTH, \$CONTENT, \$TEXT, \$VALUE $space $space ^<<<<<<<<<<< ^<<<<<<<<<<<<<<<<<< ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<~~ \$CONTENT, \$TEXT, \$VALUE . " ; } else { $FMT1 = " format STDOUT = $width ^<<<<<<<<<<<<<<<<<<<< ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< \$OFF, \$TEXT, \$VALUE $space ^<<<<<<<<<<<<<<<<<<<< ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<~~ \$TEXT, \$VALUE . "; $FMT2 = " format STDOUT = $width ^<<<<<<<<<<<<<<<<<< ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< \$OFF, \$TEXT, \$VALUE $space ^<<<<<<<<<<<<<<<<<< ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<~~ \$TEXT, \$VALUE . " ; } eval "$FMT1"; $| = 1; } sub mySpr { my $format = shift ; return "" if ! defined $format; return $format unless @_ ; return sprintf $format, @_ ; } sub out0 { my $size = shift; my $text = shift; my $format = shift; $OFF = prOff($size); $LENGTH = offset($size) ; $CONTENT = '...'; $TEXT = $text; $VALUE = mySpr $format, @_; write; skip($FH, $size); } sub xDump { my $input = shift; $input =~ tr/\0-\37\177-\377/./; return $input; } sub hexDump { my $input = shift; my $out = unpack('H*', $input) ; $out =~ s#(..)# $1#g ; $out =~ s/^ //; $out = uc $out; return $out; } sub out { my $data = shift; my $text = shift; my $format = shift; my $size = length($data) ; $OFF = prOff($size); $LENGTH = offset($size) ; $CONTENT = hexDump($data); $TEXT = $text; $VALUE = mySpr $format, @_; no warnings; write; } sub out1 { my $text = shift; my $format = shift; $OFF = ''; $LENGTH = '' ; $CONTENT = ''; $TEXT = $text; $VALUE = mySpr $format, @_; write; } sub out2 { my $data = shift ; my $text = shift ; my $format = shift; my $size = length($data) ; $OFF = prOff($size); $LENGTH = offset($size); $CONTENT = hexDump($data); $TEXT = $text; $VALUE = mySpr $format, @_; no warnings; eval "$FMT2"; write ; eval "$FMT1"; } sub Value { my $letter = shift; my @value = @_; if ($letter eq 'C') { return Value_C(@value) } elsif ($letter eq 'v') { return Value_v(@value) } elsif ($letter eq 'V') { return Value_V(@value) } elsif ($letter eq 'VV') { return Value_VV(@value) } } sub outer { my $name = shift ; my $unpack = shift ; my $size = shift ; my $cb1 = shift ; my $cb2 = shift ; myRead(my $buff, $size); my (@value) = unpack $unpack, $buff; my $hex = Value($unpack, @value); if (defined $cb1) { my $v ; if (ref $cb1 eq 'CODE') { $v = $cb1->(@value) ; } else { $v = $cb1 ; } $v = "'" . $v unless $v =~ /^'/; $v .= "'" unless $v =~ /'$/; $hex .= " $v" ; } out $buff, $name, $hex ; $cb2->(@value) if defined $cb2 ; return $value[0]; } sub out_C { my $name = shift ; my $cb1 = shift ; my $cb2 = shift ; outer($name, 'C', 1, $cb1, $cb2); } sub out_v { my $name = shift ; my $cb1 = shift ; my $cb2 = shift ; outer($name, 'v', 2, $cb1, $cb2); } sub out_V { my $name = shift ; my $cb1 = shift ; my $cb2 = shift ; outer($name, 'V', 4, $cb1, $cb2); } sub out_VV { my $name = shift ; my $cb1 = shift ; my $cb2 = shift ; outer($name, 'VV', 8, $cb1, $cb2); } # sub outSomeData # { # my $size = shift; # my $message = shift; # my $size64 = U64::mkU64($size); # if ($size64->gt($ZERO)) { # my $size32 = $size64->getLow(); # if ($size64->gt($PAYLOADLIMIT) ) { # out0 $size32, $message; # } else { # myRead(my $buffer, $size32 ); # out $buffer, $message, xDump $buffer ; # } # } # } sub outSomeData { my $size = shift; my $message = shift; if ($size > 0) { if ($size > $PAYLOADLIMIT) { my $before = $FH->tell(); out0 $size, $message; # printf "outSomeData %X %X $size %X\n", $before, $FH->tell(), $size; } else { myRead(my $buffer, $size ); out $buffer, $message, xDump $buffer ; } } } sub unpackValue_C { Value_v(unpack "C", $_[0]); } sub Value_C { sprintf "%02X", $_[0]; } sub unpackValue_v { Value_v(unpack "v", $_[0]); } sub Value_v { sprintf "%04X", $_[0]; } sub unpackValue_V { Value_V(unpack "V", $_[0]); } sub Value_V { my $v = defined $_[0] ? $_[0] : 0; sprintf "%08X", $v; } sub unpackValue_VV { my ($lo, $hi) = unpack ("V V", $_[0]); Value_VV($lo, $hi); } sub Value_U64 { my $u64 = shift ; Value_VV($u64->getLow(), $u64->getHigh()); } sub Value_VV { my $lo = defined $_[0] ? $_[0] : 0; my $hi = defined $_[1] ? $_[1] : 0; if ($hi == 0) { sprintf "%016X", $lo; } else { sprintf("%08X", $hi) . sprintf "%08X", $lo; } } sub Value_VV64 { my $buffer = shift; # This needs perl 5.10 # return unpack "Q<", $buffer; my ($lo, $hi) = unpack ("V V" , $buffer); no warnings 'uninitialized'; return $hi * (0xFFFFFFFF+1) + $lo; } sub read_U64 { my $b ; myRead($b, 8); my ($lo, $hi) = unpack ("V V" , $b); no warnings 'uninitialized'; return ($b, new U64 $hi, $lo); } sub read_VV { my $b ; myRead($b, 8); my ($lo, $hi) = unpack ("V V" , $b); no warnings 'uninitialized'; return ($b, $hi * (0xFFFFFFFF+1) + $lo); } sub read_V { my $b ; myRead($b, 4); return ($b, unpack ("V", $b)); } sub read_v { my $b ; myRead($b, 2); return ($b, unpack "v", $b); } sub read_C { my $b ; myRead($b, 1); return ($b, unpack "C", $b); } my $opt_verbose = 0; while (@ARGV && $ARGV[0] =~ /^-/) { my $opt = shift; if ($opt =~ /^-h/i) { Usage(); exit; } elsif ($opt =~ /^-v/i) { $opt_verbose = 1; } else { Usage(); } } Usage() unless @ARGV == 1; my $filename = shift @ARGV; die "$filename does not exist\n" unless -e $filename ; die "$filename not a standard file\n" unless -f $filename ; $FH = new IO::File "<$filename" or die "Cannot open $filename: $!\n"; my $FILELEN = -s $filename ; $TRAILING = -s $filename ; $NIBBLES = U64::nibbles(-s $filename) ; #$NIBBLES = int ($NIBBLES / 4) + ( ($NIBBLES % 4) ? 1 : 0 ); #$NIBBLES = 4 * $NIBBLES; # Minimum of 4 nibbles $NIBBLES = 4 if $NIBBLES < 4 ; die "$filename too short to be a zip file\n" if $FILELEN < 22 ; setupFormat($opt_verbose, $NIBBLES); if(0) { # Sanity check that this is a Zip file my ($buffer, $signature) = read_V(); warn "$filename doesn't look like a zip file\n" if $signature != ZIP_LOCAL_HDR_SIG ; $FH->seek(0, SEEK_SET) ; } our ($CdExists, @CentralDirectory) = scanCentralDirectory($FH); die "No Central Directory records found\n" if ! $CdExists ; $OFFSET->reset(); $FH->seek(0, SEEK_SET) ; outSomeData($START, "PREFIX DATA") if defined $START && $START > 0 ; while (1) { last if $FH->eof(); my $here = $FH->tell(); if ($here >= $TRAILING) { print "\n" ; outSomeData($FILELEN - $TRAILING, "TRAILING DATA"); last; } my ($buffer, $signature) = read_V(); my $handler = $Lookup{$signature}; if (!defined $handler) { if (@CentralDirectory) { # Should be at offset that central directory says my $locOffset = $CentralDirectory[0][0]; my $delta = $locOffset - $here ; if ($here < $locOffset ) { for (0 .. 3) { $FH->ungetc(ord(substr($buffer, $_, 1))) } outSomeData($delta, "UNEXPECTED PADDING"); next; } } printf "\n\nUnexpecded END at offset %08X, value %s\n", $here, Value_V($signature); last; } $ZIP64 = 0 if $signature != ZIP_DATA_HDR_SIG ; $handler->($signature, $buffer); } print "Done\n"; exit ; sub compressionMethod { my $id = shift ; Value_v($id) . " '" . ($ZIP_CompressionMethods{$id} || "Unknown Method") . "'" ; } sub LocalHeader { my $signature = shift ; my $data = shift ; print "\n"; ++ $LocalHeaderCount; out $data, "LOCAL HEADER #" . sprintf("%X", $LocalHeaderCount) , Value_V($signature); my $buffer; my ($loc, $CDcompressedLength) = @{ shift @CentralDirectory }; # print "LocalHeader loc $loc CDL $CDcompressedLength\n"; # TODO - add test to check that the loc from central header matches out_C "Extract Zip Spec", \&decodeZipVer; out_C "Extract OS", \&decodeOS; my ($bgp, $gpFlag) = read_v(); my ($bcm, $compressedMethod) = read_v(); out $bgp, "General Purpose Flag", Value_v($gpFlag) ; GeneralPurposeBits($compressedMethod, $gpFlag); out $bcm, "Compression Method", compressionMethod($compressedMethod) ; out_V "Last Mod Time", sub { scalar getTime(_dosToUnixTime($_[0])) }; my $crc = out_V "CRC"; my $compressedLength = out_V "Compressed Length"; my $uncompressedLength = out_V "Uncompressed Length"; my $filenameLength = out_v "Filename Length"; my $extraLength = out_v "Extra Length"; my $filename ; myRead($filename, $filenameLength); out $filename, "Filename", "'". $filename . "'"; my $cl64 = new U64 $compressedLength ; my %ExtraContext = (); if ($extraLength) { my @z64 = ($uncompressedLength, $compressedLength, 1, 1); $ExtraContext{Zip64} = \@z64 ; $ExtraContext{InCentralDir} = 0; walkExtra($extraLength, \%ExtraContext); } my $size = 0; $size = printAes(\%ExtraContext) if $compressedMethod == 99 ; $size += printLzmaProperties() if $compressedMethod == ZIP_CM_LZMA ; # $CDcompressedLength->subtract($size) # if $size ; $CDcompressedLength -= $size; # if ($CDcompressedLength->getHigh() || $CDcompressedLength->getLow()) { if ($CDcompressedLength) { outSomeData($CDcompressedLength, "PAYLOAD") ; } if ($compressedMethod == 99) { my $auth ; myRead($auth, 10); out $auth, "AES Auth", hexDump($auth); } } sub CentralHeader { my $signature = shift ; my $data = shift ; ++ $CentralHeaderCount; print "\n"; out $data, "CENTRAL HEADER #" . sprintf("%X", $CentralHeaderCount) . "", Value_V($signature); my $buffer; out_C "Created Zip Spec", \&decodeZipVer; out_C "Created OS", \&decodeOS; out_C "Extract Zip Spec", \&decodeZipVer; out_C "Extract OS", \&decodeOS; my ($bgp, $gpFlag) = read_v(); my ($bcm, $compressedMethod) = read_v(); out $bgp, "General Purpose Flag", Value_v($gpFlag) ; GeneralPurposeBits($compressedMethod, $gpFlag); out $bcm, "Compression Method", compressionMethod($compressedMethod) ; out_V "Last Mod Time", sub { scalar getTime(_dosToUnixTime($_[0])) }; my $crc = out_V "CRC"; my $compressedLength = out_V "Compressed Length"; my $uncompressedLength = out_V "Uncompressed Length"; my $filenameLength = out_v "Filename Length"; my $extraLength = out_v "Extra Length"; my $comment_length = out_v "Comment Length"; my $disk_start = out_v "Disk Start"; my $int_file_attrib = out_v "Int File Attributes"; out1 "[Bit 0]", $int_file_attrib & 1 ? "1 Text Data" : "0 'Binary Data'"; my $ext_file_attrib = out_V "Ext File Attributes"; out1 "[Bit 0]", "Read-Only" if $ext_file_attrib & 0x01 ; out1 "[Bit 1]", "Hidden" if $ext_file_attrib & 0x02 ; out1 "[Bit 2]", "System" if $ext_file_attrib & 0x04 ; out1 "[Bit 3]", "Label" if $ext_file_attrib & 0x08 ; out1 "[Bit 4]", "Directory" if $ext_file_attrib & 0x10 ; out1 "[Bit 5]", "Archive" if $ext_file_attrib & 0x20 ; my $lcl_hdr_offset = out_V "Local Header Offset"; my $filename ; myRead($filename, $filenameLength); out $filename, "Filename", "'". $filename . "'"; my %ExtraContext = (); if ($extraLength) { my @z64 = ($uncompressedLength, $compressedLength, $lcl_hdr_offset, $disk_start); $ExtraContext{Zip64} = \@z64 ; $ExtraContext{InCentralDir} = 1; walkExtra($extraLength, \%ExtraContext); } if ($comment_length) { my $comment ; myRead($comment, $comment_length); out $comment, "Comment", "'". $comment . "'"; } } sub decodeZipVer { my $ver = shift ; my $sHi = int($ver /10) ; my $sLo = $ver % 10 ; #out1 "Zip Spec", "$sHi.$sLo"; "$sHi.$sLo"; } sub decodeOS { my $ver = shift ; $OS_Lookup{$ver} || "Unknown" ; } sub Zip64EndCentralHeader { my $signature = shift ; my $data = shift ; print "\n"; out $data, "ZIP64 END CENTRAL DIR RECORD", Value_V($signature); my $buff; myRead($buff, 8); out $buff, "Size of record", unpackValue_VV($buff); my $size = Value_VV64($buff); out_C "Created Zip Spec", \&decodeZipVer; out_C "Created OS", \&decodeOS; out_C "Extract Zip Spec", \&decodeZipVer; out_C "Extract OS", \&decodeOS; out_V "Number of this disk"; out_V "Central Dir Disk no"; out_VV "Entries in this disk"; out_VV "Total Entries"; out_VV "Size of Central Dir"; out_VV "Offset to Central dir"; # TODO - die "Unsupported Size ($size) in Zip64EndCentralHeader\n" if $size != 44; } sub Zip64EndCentralLocator { my $signature = shift ; my $data = shift ; print "\n"; out $data, "ZIP64 END CENTRAL DIR LOCATOR", Value_V($signature); out_V "Central Dir Disk no"; out_VV "Offset to Central dir"; out_V "Total no of Disks"; } sub EndCentralHeader { my $signature = shift ; my $data = shift ; print "\n"; out $data, "END CENTRAL HEADER", Value_V($signature); out_v "Number of this disk"; out_v "Central Dir Disk no"; out_v "Entries in this disk"; out_v "Total Entries"; out_V "Size of Central Dir"; out_V "Offset to Central Dir"; my $comment_length = out_v "Comment Length"; if ($comment_length) { my $comment ; myRead($comment, $comment_length); out $comment, "Comment", "'$comment'"; } } sub DataHeader { my $signature = shift ; my $data = shift ; print "\n"; out $data, "STREAMING DATA HEADER", Value_V($signature); out_V "CRC"; if ($ZIP64) { out_VV "Compressed Length" ; out_VV "Uncompressed Length" ; } else { out_V "Compressed Length" ; out_V "Uncompressed Length" ; } } sub GeneralPurposeBits { my $method = shift; my $gp = shift; out1 "[Bit 0]", "1 'Encryption'" if $gp & ZIP_GP_FLAG_ENCRYPTED_MASK; my %lookup = ( 0 => "Normal Compression", 1 => "Maximum Compression", 2 => "Fast Compression", 3 => "Super Fast Compression"); if ($method == ZIP_CM_DEFLATE) { my $mid = $gp & 0x03; out1 "[Bits 1-2]", "$mid '$lookup{$mid}'"; } if ($method == ZIP_CM_LZMA) { if ($gp & ZIP_GP_FLAG_LZMA_EOS_PRESENT) { out1 "[Bit 1]", "1 'LZMA EOS Marker Present'" ; } else { out1 "[Bit 1]", "0 'LZMA EOS Marker Not Present'" ; } } if ($method == ZIP_CM_IMPLODE) # Imploding { out1 "[Bit 1]", ($gp & 1 ? "1 '8k" : "0 '4k") . " Sliding Dictionary'" ; out1 "[Bit 2]", ($gp & 2 ? "1 '3" : "0 '2" ) . " Shannon-Fano Trees'" ; } out1 "[Bit 3]", "1 'Streamed'" if $gp & ZIP_GP_FLAG_STREAMING_MASK; out1 "[Bit 4]", "1 'Enhanced Deflating'" if $gp & 1 << 4; out1 "[Bit 5]", "1 'Compressed Patched'" if $gp & 1 << 5 ; out1 "[Bit 6]", "1 'Strong Encryption'" if $gp & ZIP_GP_FLAG_STRONG_ENCRYPTED_MASK; out1 "[Bit 11]", "1 'Language Encoding'" if $gp & ZIP_GP_FLAG_LANGUAGE_ENCODING; out1 "[Bit 12]", "1 'Pkware Enhanced Compression'" if $gp & 1 <<12 ; out1 "[Bit 13]", "1 'Encrypted Central Dir'" if $gp & 1 <<13 ; return (); } sub seekSet { my $fh = $_[0] ; my $size = $_[1]; use Fcntl qw(SEEK_SET); if (ref $size eq 'U64') { seek($fh, $size->get64bit(), SEEK_SET); } else { seek($fh, $size, SEEK_SET); } } sub skip { my $fh = $_[0] ; my $size = $_[1]; use Fcntl qw(SEEK_CUR); if (ref $size eq 'U64') { seek($fh, $size->get64bit(), SEEK_CUR); } else { seek($fh, $size, SEEK_CUR); } } sub myRead { my $got = \$_[0] ; my $size = $_[1]; my $wantSize = $size; $$got = ''; if ($size == 0) { return ; } if ($size > 0) { my $buff ; my $status = $FH->read($buff, $size); return $status if $status < 0; $$got .= $buff ; } my $len = length $$got; die "Truncated file (got $len, wanted $wantSize): $!\n" if length $$got != $wantSize; } sub walkExtra { my $XLEN = shift; my $context = shift; my $buff ; my $offset = 0 ; my $id; my $subLen; my $payload ; my $count = 0 ; if ($XLEN < ZIP_EXTRA_SUBFIELD_ID_SIZE + ZIP_EXTRA_SUBFIELD_LEN_SIZE) { # Android zipalign is prime candidate for this non-standard extra field. myRead($payload, $XLEN); my $data = hexDump($payload); out $payload, "Malformed Extra Data", $data; return undef; } while ($offset < $XLEN) { ++ $count; return undef if $offset + ZIP_EXTRA_SUBFIELD_HEADER_SIZE > $XLEN ; myRead($id, ZIP_EXTRA_SUBFIELD_ID_SIZE); $offset += ZIP_EXTRA_SUBFIELD_ID_SIZE; my $lookID = unpack "v", $id ; my ($who, $decoder) = @{ defined $Extras{$lookID} ? $Extras{$lookID} : ['', undef] }; #my ($who, $decoder) = @{ $Extras{unpack "v", $id} || ['', undef] }; $who = "$id: $who" if $id =~ /\w\w/ ; $who = "'$who'"; out $id, "Extra ID #" . Value_v($count), unpackValue_v($id) . " $who" ; myRead($buff, ZIP_EXTRA_SUBFIELD_LEN_SIZE); $offset += ZIP_EXTRA_SUBFIELD_LEN_SIZE; $subLen = unpack("v", $buff); out2 $buff, "Length", Value_v($subLen) ; return undef if $offset + $subLen > $XLEN ; if (! defined $decoder) { myRead($payload, $subLen); my $data = hexDump($payload); out2 $payload, "Extra Payload", $data; } else { $decoder->($subLen, $context) ; } $offset += $subLen ; } return undef ; } sub full32 { return $_[0] == 0xFFFFFFFF ; } sub decode_Zip64 { my $len = shift; my $context = shift; my $z64Data = $context->{Zip64}; $ZIP64 = 1; if (full32 $z64Data->[0] ) { out_VV " Uncompressed Size"; } if (full32 $z64Data->[1] ) { out_VV " Compressed Size"; } if (full32 $z64Data->[2] ) { out_VV " Offset to Local Dir"; } if ($z64Data->[3] == 0xFFFF ) { out_V " Disk Number"; } } sub Ntfs2Unix { my $v = shift; my $u64 = shift; # NTFS offset is 19DB1DED53E8000 my $hex = Value_U64($u64) ; my $NTFS_OFFSET = new U64 0x19DB1DE, 0xD53E8000 ; $u64->subtract($NTFS_OFFSET); my $elapse = $u64->get64bit(); my $ns = ($elapse % 10000000) * 100; $elapse = int ($elapse/10000000); return "$hex '" . localtime($elapse) . " " . sprintf("%0dns'", $ns); } sub decode_NTFS_Filetimes { my $len = shift; my $context = shift; out_V " Reserved"; out_v " Tag1"; out_v " Size1" ; my ($m, $s1) = read_U64; out $m, " Mtime", Ntfs2Unix($m, $s1); my ($c, $s2) = read_U64; out $c, " Ctime", Ntfs2Unix($m, $s2); my ($a, $s3) = read_U64; out $m, " Atime", Ntfs2Unix($m, $s3); } sub getTime { my $time = shift ; return "'" . localtime($time) . "'" ; } sub decode_UT { my $len = shift; my $context = shift; my ($data, $flags) = read_C(); my $f = Value_C $flags; $f .= " mod" if $flags & 1; $f .= " access" if $flags & 2; $f .= " change" if $flags & 4; out $data, " Flags", "'$f'"; -- $len; if ($flags & 1) { my ($data, $time) = read_V(); out2 $data, "Mod Time", Value_V($time) . " " . getTime($time) ; $len -= 4 ; } if ($flags & 2 && $len > 0 ) { my ($data, $time) = read_V(); out2 $data, "Access Time", Value_V($time) . " " . getTime($time) ; $len -= 4 ; } if ($flags & 4 && $len > 0) { my ($data, $time) = read_V(); out2 $data, "Change Time", Value_V($time) . " " . getTime($time) ; } } sub decode_AES { my $len = shift; my $context = shift; return if $len == 0 ; my %lookup = ( 1 => "AE-1", 2 => "AE-2"); out_v " Vendor Version", sub { $lookup{$_[0]} || "Unknown" } ; my $id ; myRead($id, 2); out $id, " Vendor ID", unpackValue_v($id) . " '$id'"; my %strengths = (1 => "128-bit encryption key", 2 => "192-bit encryption key", 3 => "256-bit encryption key", ); my $strength = out_C " Encryption Strength", sub {$strengths{$_[0]} || "Unknown" } ; my ($bmethod, $method) = read_v(); out $bmethod, " Compression Method", compressionMethod($method) ; $context->{AesStrength} = $strength ; } sub decode_UX { my $len = shift; my $context = shift; my $inCentralHdr = $context->{InCentralDir} ; return if $len == 0 ; my ($data, $time) = read_V(); out2 $data, "Access Time", Value_V($time) . " " . getTime($time) ; ($data, $time) = read_V(); out2 $data, "Mod Time", Value_V($time) . " " . getTime($time) ; if (! $inCentralHdr ) { out_v " UID" ; out_v " GID"; } } sub decode_Ux { my $len = shift; my $context = shift; return if $len == 0 ; out_v " UID" ; out_v " GID"; } sub decodeLitteEndian { my $value = shift ; if (length $value == 4) { return Value_V unpack ("V", $value) } else { # TODO - fix this die "unsupported\n"; } my $got = 0 ; my $shift = 0; #hexDump #reverse #my @a =unpack "C*", $value; #@a = reverse @a; #hexDump(@a); for (reverse unpack "C*", $value) { $got = ($got << 8) + $_ ; } return $got ; } sub decode_ux { my $len = shift; my $context = shift; return if $len == 0 ; out_C " Version" ; my $uidSize = out_C " UID Size"; myRead(my $data, $uidSize); out2 $data, "UID", decodeLitteEndian($data); my $gidSize = out_C " GID Size"; myRead($data, $gidSize); out2 $data, "GID", decodeLitteEndian($data); } sub decode_Java_exe { my $len = shift; my $context = shift; } sub decode_up { my $len = shift; my $context = shift; out_C " Version"; out_V " NameCRC32"; myRead(my $data, $len - 5); out $data, " UnicodeName", $data; } sub decode_Xceed_unicode { my $len = shift; my $context = shift; my $data ; # guess the fields used for this one myRead($data, 4); out $data, " ID", $data; out_v " Length"; out_v " Null"; myRead($data, $len - 8); out $data, " UTF16LE Name", decode("UTF16LE", $data); } sub decode_NT_security { my $len = shift; my $context = shift; my $inCentralHdr = $context->{InCentralDir} ; out_V " Uncompressed Size" ; if (! $inCentralHdr) { out_C " Version" ; out_v " Type"; out_V " NameCRC32" ; my $plen = $len - 4 - 1 - 2 - 4; myRead(my $payload, $plen); out $plen, " Extra Payload", hexDump($payload); } } sub decodeMVS { my $len = shift; my $context = shift; # data in Big-Endian myRead(my $data, $len); my $ID = unpack("N", $data); if ($ID == 0xE9F3F9F0) { out($data, " ID", "'Z390'"); substr($data, 0, 4) = ''; } out($data, " Extra Payload", hexDump($data)); } sub printAes { my $context = shift ; my %saltSize = ( 1 => 8, 2 => 12, 3 => 16, ); myRead(my $salt, $saltSize{$context->{AesStrength} }); out $salt, "AES Salt", hexDump($salt); myRead(my $pwv, 2); out $pwv, "AES Pwd Ver", hexDump($pwv); return $saltSize{$context->{AesStrength}} + 2 + 10; } sub printLzmaProperties { my $len = 0; my $b1; my $b2; my $buffer; myRead($b1, 2); my ($verHi, $verLow) = unpack ("CC", $b1); out $b1, "LZMA Version", sprintf("%02X%02X", $verHi, $verLow) . " '$verHi.$verLow'"; my $LzmaPropertiesSize = out_v "LZMA Properties Size"; $len += 4; my $LzmaInfo = out_C "LZMA Info", sub { $_[0] == 93 ? "(Default)" : ""}; my $PosStateBits = 0; my $LiteralPosStateBits = 0; my $LiteralContextBits = 0; $PosStateBits = int($LzmaInfo / (9 * 5)); $LzmaInfo -= $PosStateBits * 9 * 5; $LiteralPosStateBits = int($LzmaInfo / 9); $LiteralContextBits = $LzmaInfo - $LiteralPosStateBits * 9; out1 " PosStateBits", $PosStateBits; out1 " LiteralPosStateBits", $LiteralPosStateBits; out1 " LiteralContextBits", $LiteralContextBits; out_V "LZMA Dictionary Size"; # TODO - assumption that this is 5 $len += $LzmaPropertiesSize; skip($FH, $LzmaPropertiesSize - 5) if $LzmaPropertiesSize != 5 ; return $len; } sub scanCentralDirectory { my $fh = shift; my $here = $fh->tell(); # Use cases # 1 32-bit CD # 2 64-bit CD my @CD = (); my $offset = findCentralDirectoryOffset($fh); return () if ! defined $offset; $fh->seek($offset, SEEK_SET) ; # Now walk the Central Directory Records my $buffer ; while ($fh->read($buffer, 46) == 46 && unpack("V", $buffer) == ZIP_CENTRAL_HDR_SIG) { my $compressedLength = unpack("V", substr($buffer, 20, 4)); my $uncompressedLength = unpack("V", substr($buffer, 24, 4)); my $filename_length = unpack("v", substr($buffer, 28, 2)); my $extra_length = unpack("v", substr($buffer, 30, 2)); my $comment_length = unpack("v", substr($buffer, 32, 2)); my $locHeaderOffset = unpack("V", substr($buffer, 42, 4)); $START = $locHeaderOffset if ! defined $START; skip($fh, $filename_length ) ; if ($extra_length) { $fh->read(my $extraField, $extra_length) ; # $self->smartReadExact(\$extraField, $extra_length); # Check for Zip64 # my $zip64Extended = findID("\x01\x00", $extraField); my $zip64Extended = findID(0x0001, $extraField); if ($zip64Extended) { if ($uncompressedLength == 0xFFFFFFFF) { $uncompressedLength = Value_VV64 substr($zip64Extended, 0, 8, ""); # $uncompressedLength = unpack "Q<", substr($zip64Extended, 0, 8, ""); } if ($compressedLength == 0xFFFFFFFF) { $compressedLength = Value_VV64 substr($zip64Extended, 0, 8, ""); # $compressedLength = unpack "Q<", substr($zip64Extended, 0, 8, ""); } if ($locHeaderOffset == 0xFFFFFFFF) { $locHeaderOffset = Value_VV64 substr($zip64Extended, 0, 8, ""); # $locHeaderOffset = unpack "Q<", substr($zip64Extended, 0, 8, ""); } } } my $got = [$locHeaderOffset, $compressedLength] ; # my $v64 = new U64 $compressedLength ; # my $loc64 = new U64 $locHeaderOffset ; # my $got = [$loc64, $v64] ; # if (full32 $compressedLength || full32 $locHeaderOffset) { # $fh->read($buffer, $extra_length) ; # # TODO - fix this # die "xxx $offset $comment_length $filename_length $extra_length" . length($buffer) # if length($buffer) != $extra_length; # $got = get64Extra($buffer, full32($uncompressedLength), # $v64, # $loc64); # # If not Zip64 extra field, assume size is 0xFFFFFFFF # #$v64 = $got if defined $got; # } # else { # skip($fh, $extra_length) ; # } skip($fh, $comment_length ) ; push @CD, $got ; } $fh->seek($here, SEEK_SET) ; # @CD = sort { $a->[0]->cmp($b->[0]) } @CD ; @CD = sort { $a->[0] <=> $b->[0] } @CD ; return (1, @CD); } sub offsetFromZip64 { my $fh = shift ; my $here = shift; $fh->seek($here - 20, SEEK_SET) # TODO - fix this or die "xx $!" ; my $buffer; my $got = 0; ($got = $fh->read($buffer, 20)) == 20 # TODO - fix this or die "xxx $here $got $!" ; if ( unpack("V", $buffer) == ZIP64_END_CENTRAL_LOC_HDR_SIG ) { my $cd64 = Value_VV64 substr($buffer, 8, 8); $fh->seek($cd64, SEEK_SET) ; $fh->read($buffer, 4) == 4 # TODO - fix this or die "xxx" ; if ( unpack("V", $buffer) == ZIP64_END_CENTRAL_REC_HDR_SIG ) { $fh->read($buffer, 8) == 8 # TODO - fix this or die "xxx" ; my $size = Value_VV64($buffer); $fh->read($buffer, $size) == $size # TODO - fix this or die "xxx" ; my $cd64 = Value_VV64 substr($buffer, 36, 8); return $cd64 ; } # TODO - fix this die "zzz"; } # TODO - fix this die "zzz"; } use constant Pack_ZIP_END_CENTRAL_HDR_SIG => pack("V", ZIP_END_CENTRAL_HDR_SIG); sub findCentralDirectoryOffset { my $fh = shift ; # Most common use-case is where there is no comment, so # know exactly where the end of central directory record # should be. $fh->seek(-22, SEEK_END) ; my $here = $fh->tell(); my $buffer; $fh->read($buffer, 22) == 22 # TODO - fix this or die "xxx" ; my $zip64 = 0; my $centralDirOffset ; if ( unpack("V", $buffer) == ZIP_END_CENTRAL_HDR_SIG ) { $centralDirOffset = unpack("V", substr($buffer, 16, 4)); } else { $fh->seek(0, SEEK_END) ; my $fileLen = $fh->tell(); my $want = 0 ; while(1) { $want += 1024 * 32; my $seekTo = $fileLen - $want; if ($seekTo < 0 ) { $seekTo = 0; $want = $fileLen ; } $fh->seek( $seekTo, SEEK_SET) # TODO - fix this or die "xxx $!" ; my $got; ($got = $fh->read($buffer, $want)) == $want # TODO - fix this or die "xxx $got $!" ; my $pos = rindex( $buffer, Pack_ZIP_END_CENTRAL_HDR_SIG); if ($pos >= 0 && $want - $pos > 22) { $here = $seekTo + $pos ; $centralDirOffset = unpack("V", substr($buffer, $pos + 16, 4)); my $commentLength = unpack("V", substr($buffer, $pos + 20, 2)); $commentLength = 0 if ! defined $commentLength ; my $expectedEof = $fileLen - $want + $pos + 22 + $commentLength ; # check for trailing data after end of zip if ($expectedEof < $fileLen ) { $TRAILING = $expectedEof ; } last ; } return undef if $want == $fileLen; } } $centralDirOffset = offsetFromZip64($fh, $here) if full32 $centralDirOffset ; return $centralDirOffset ; } sub findID { my $id_want = shift ; my $data = shift; my $XLEN = length $data ; my $offset = 0 ; while ($offset < $XLEN) { return undef if $offset + ZIP_EXTRA_SUBFIELD_HEADER_SIZE > $XLEN ; my $id = substr($data, $offset, ZIP_EXTRA_SUBFIELD_ID_SIZE); $id = unpack("v", $id); $offset += ZIP_EXTRA_SUBFIELD_ID_SIZE; my $subLen = unpack("v", substr($data, $offset, ZIP_EXTRA_SUBFIELD_LEN_SIZE)); $offset += ZIP_EXTRA_SUBFIELD_LEN_SIZE ; return undef if $offset + $subLen > $XLEN ; return substr($data, $offset, $subLen) if $id eq $id_want ; $offset += $subLen ; } return undef ; } sub _dosToUnixTime { my $dt = shift; my $year = ( ( $dt >> 25 ) & 0x7f ) + 80; my $mon = ( ( $dt >> 21 ) & 0x0f ) - 1; my $mday = ( ( $dt >> 16 ) & 0x1f ); my $hour = ( ( $dt >> 11 ) & 0x1f ); my $min = ( ( $dt >> 5 ) & 0x3f ); my $sec = ( ( $dt << 1 ) & 0x3e ); use POSIX 'mktime'; my $time_t = mktime( $sec, $min, $hour, $mday, $mon, $year, 0, 0, -1 ); return 0 if ! defined $time_t; return $time_t; } { package U64; use constant MAX32 => 0xFFFFFFFF ; use constant HI_1 => MAX32 + 1 ; use constant LOW => 0 ; use constant HIGH => 1; sub new { my $class = shift ; my $high = 0 ; my $low = 0 ; if (@_ == 2) { $high = shift ; $low = shift ; } elsif (@_ == 1) { $low = shift ; } bless [$low, $high], $class; } sub newUnpack_V64 { my $string = shift; my ($low, $hi) = unpack "V V", $string ; bless [ $low, $hi ], "U64"; } sub newUnpack_V32 { my $string = shift; my $low = unpack "V", $string ; bless [ $low, 0 ], "U64"; } sub reset { my $self = shift; $self->[HIGH] = $self->[LOW] = 0; } sub clone { my $self = shift; bless [ @$self ], ref $self ; } sub mkU64 { my $value = shift; return $value if ref $value eq 'U64'; bless [ $value, 0 ], "U64" ; } sub getHigh { my $self = shift; return $self->[HIGH]; } sub getLow { my $self = shift; return $self->[LOW]; } sub get32bit { my $self = shift; return $self->[LOW]; } sub get64bit { my $self = shift; # Not using << here because the result will still be # a 32-bit value on systems where int size is 32-bits return $self->[HIGH] * HI_1 + $self->[LOW]; } sub add { my $self = shift; my $value = shift; if (ref $value eq 'U64') { $self->[HIGH] += $value->[HIGH] ; $value = $value->[LOW]; } my $available = MAX32 - $self->[LOW] ; if ($value > $available) { ++ $self->[HIGH] ; $self->[LOW] = $value - $available - 1; } else { $self->[LOW] += $value ; } } sub subtract { my $self = shift; my $value = shift; if (ref $value eq 'U64') { if ($value->[HIGH]) { die "unsupport subtract option" if $self->[HIGH] == 0 || $value->[HIGH] > $self->[HIGH] ; $self->[HIGH] -= $value->[HIGH] ; } $value = $value->[LOW] ; } if ($value > $self->[LOW]) { -- $self->[HIGH] ; $self->[LOW] = MAX32 - $value + $self->[LOW] + 1; } else { $self->[LOW] -= $value; } } sub rshift { my $self = shift; my $count = shift; for (1 .. $count) { $self->[LOW] >>= 1; $self->[LOW] |= 0x80000000 if $self->[HIGH] & 1 ; $self->[HIGH] >>= 1; } } sub is64bit { my $self = shift; return $self->[HIGH] > 0 ; } sub getPacked_V64 { my $self = shift; return pack "V V", @$self ; } sub getPacked_V32 { my $self = shift; return pack "V", $self->[LOW] ; } sub pack_V64 { my $low = shift; return pack "V V", $low, 0; } sub max32 { my $self = shift; return $self->[HIGH] == 0 && $self->[LOW] == MAX32; } sub stringify { my $self = shift; return "High [$self->[HIGH]], Low [$self->[LOW]]"; } sub equal { my $self = shift; my $other = shift; return $self->[LOW] == $other->[LOW] && $self->[HIGH] == $other->[HIGH] ; } sub gt { my $self = shift; my $other = shift; return $self->cmp($other) > 0 ; } sub cmp { my $self = shift; my $other = shift ; if ($self->[LOW] == $other->[LOW]) { return $self->[HIGH] - $other->[HIGH] ; } else { return $self->[LOW] - $other->[LOW] ; } } sub nibbles { my @nibbles = ( [ 16 => HI_1 * 0x10000000 ], [ 15 => HI_1 * 0x1000000 ], [ 14 => HI_1 * 0x100000 ], [ 13 => HI_1 * 0x10000 ], [ 12 => HI_1 * 0x1000 ], [ 11 => HI_1 * 0x100 ], [ 10 => HI_1 * 0x10 ], [ 9 => HI_1 * 0x1 ], [ 8 => 0x10000000 ], [ 7 => 0x1000000 ], [ 6 => 0x100000 ], [ 5 => 0x10000 ], [ 4 => 0x1000 ], [ 3 => 0x100 ], [ 2 => 0x10 ], [ 1 => 0x1 ], ); my $value = shift ; for my $pair (@nibbles) { my ($count, $limit) = @{ $pair }; return $count if $value >= $limit ; } } } sub Usage { die <<EOM; zipdetails [OPTIONS] file Display details about the internal structure of a Zip file. This is zipdetails version $VERSION OPTIONS -h display help -v Verbose - output more stuff Copyright (c) 2011-2019 Paul Marquess. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. EOM } __END__ =head1 NAME zipdetails - display the internal structure of zip files =head1 SYNOPSIS zipdetails [-v] zipfile.zip zipdetails -h =head1 DESCRIPTION Zipdetails displays information about the internal record structure of the zip file. It is not concerned with displaying any details of the compressed data stored in the zip file. The program assumes prior understanding of the internal structure of a Zip file. You should have a copy of the Zip APPNOTE file at hand to help understand the output from this program (L<SEE ALSO> for details). =head2 OPTIONS =over 5 =item -v Enable Verbose mode =item -h Display help =back By default zipdetails will output the details of the zip file in three columns. =over 5 =item Column 1 This contains the offset from the start of the file in hex. =item Column 2 This contains a textual description of the field. =item Column 3 If the field contains a numeric value it will be displayed in hex. Zip stored most numbers in little-endian format - the value displayed will have the little-endian encoding removed. Next, is an optional description of what the value means. =back If the C<-v> option is present, column 1 is expanded to include =over 5 =item * The offset from the start of the file in hex. =item * The length of the filed in hex. =item * A hex dump of the bytes in field in the order they are stored in the zip file. =back =head1 TODO Error handling is still a work in progress. If the program encounters a problem reading a zip file it is likely to terminate with an unhelpful error message. =head1 SUPPORT General feedback/questions/bug reports should be sent to L<https://github.com/pmqs/IO-Compress/issues> (preferred) or L<https://rt.cpan.org/Public/Dist/Display.html?Name=IO-Compress>. =head1 SEE ALSO The primary reference for Zip files is the "appnote" document available at L<http://www.pkware.com/documents/casestudies/APPNOTE.TXT>. An alternative reference is the Info-Zip appnote. This is available from L<ftp://ftp.info-zip.org/pub/infozip/doc/> The C<zipinfo> program that comes with the info-zip distribution (L<http://www.info-zip.org/>) can also display details of the structure of a zip file. See also L<Archive::Zip::SimpleZip>, L<IO::Compress::Zip>, L<IO::Uncompress::Unzip>. =head1 AUTHOR Paul Marquess F<pmqs@cpan.org>. =head1 COPYRIGHT Copyright (c) 2011-2019 Paul Marquess. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
New name for
Are you sure will delete
?
New date for
New perm for
Name
Type
Size
Permission
Last Modified
Actions
.
DIR
-
drwxr-xr-x
2021-12-22 12:22:35
..
DIR
-
drwxr-xr-x
2021-12-20 12:00:00
[
application/x-pie-executable
58.81 KB
-rwxr-xr-x
2020-09-24 08:36:09
ab
application/x-pie-executable
58.34 KB
-rwxr-xr-x
2021-10-07 05:49:44
addpart
application/x-pie-executable
26.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
addr2line
application/x-pie-executable
31.13 KB
-rwxr-xr-x
2021-02-20 03:38:30
apt
application/x-pie-executable
18.23 KB
-rwxr-xr-x
2021-06-10 08:53:34
apt-cache
application/x-pie-executable
86.3 KB
-rwxr-xr-x
2021-06-10 08:53:34
apt-cdrom
application/x-pie-executable
26.3 KB
-rwxr-xr-x
2021-06-10 08:53:34
apt-config
application/x-pie-executable
26.23 KB
-rwxr-xr-x
2021-06-10 08:53:34
apt-get
application/x-pie-executable
46.3 KB
-rwxr-xr-x
2021-06-10 08:53:34
apt-key
text/x-shellscript
27.53 KB
-rwxr-xr-x
2021-06-10 08:53:34
apt-mark
application/x-pie-executable
50.3 KB
-rwxr-xr-x
2021-06-10 08:53:34
ar
application/x-pie-executable
50.97 KB
-rwxr-xr-x
2021-02-20 03:38:30
arch
application/x-pie-executable
38.81 KB
-rwxr-xr-x
2020-09-24 08:36:09
as
application/x-pie-executable
461.18 KB
-rwxr-xr-x
2021-02-20 03:38:30
autoconf
text/x-shellscript
14.42 KB
-rwxr-xr-x
2020-12-25 09:25:29
autoheader
text/x-perl
8.33 KB
-rwxr-xr-x
2020-12-25 09:25:29
autom4te
text/x-perl
31.9 KB
-rwxr-xr-x
2020-12-25 09:25:29
autoreconf
text/x-perl
20.67 KB
-rwxr-xr-x
2020-12-25 09:25:29
autoscan
text/x-perl
16.73 KB
-rwxr-xr-x
2020-12-25 09:25:29
autoupdate
text/x-perl
33.08 KB
-rwxr-xr-x
2020-12-25 09:25:29
awk
application/x-pie-executable
154.59 KB
-rwxr-xr-x
2020-02-16 07:41:09
b2sum
application/x-pie-executable
58.94 KB
-rwxr-xr-x
2020-09-24 08:36:09
base32
application/x-pie-executable
42.84 KB
-rwxr-xr-x
2020-09-24 08:36:09
base64
application/x-pie-executable
42.84 KB
-rwxr-xr-x
2020-09-24 08:36:09
basename
application/x-pie-executable
38.78 KB
-rwxr-xr-x
2020-09-24 08:36:09
basenc
application/x-pie-executable
54.84 KB
-rwxr-xr-x
2020-09-24 08:36:09
bashbug
text/x-shellscript
6.6 KB
-rwxr-xr-x
2021-08-04 08:25:59
c++
application/x-executable
802.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
c++filt
application/x-pie-executable
126.46 KB
-rwxr-xr-x
2021-02-20 03:38:30
c89
text/x-shellscript
428 B
-rwxr-xr-x
2013-06-12 09:03:20
c89-gcc
text/x-shellscript
428 B
-rwxr-xr-x
2013-06-12 09:03:20
c99
text/x-shellscript
454 B
-rwxr-xr-x
2013-06-12 09:03:20
c99-gcc
text/x-shellscript
454 B
-rwxr-xr-x
2013-06-12 09:03:20
c_rehash
text/x-perl
6.18 KB
-rwxr-xr-x
2021-08-24 08:28:12
captoinfo
application/x-pie-executable
90.27 KB
-rwxr-xr-x
2021-01-01 03:02:10
catchsegv
text/x-shellscript
3.23 KB
-rwxr-xr-x
2021-10-02 12:47:40
cc
application/x-executable
798.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
chage
application/x-pie-executable
78.38 KB
-rwxr-sr-x
2020-02-07 02:54:14
chattr
application/x-pie-executable
14.16 KB
-rwxr-xr-x
2021-06-07 11:27:15
chcon
application/x-pie-executable
71.06 KB
-rwxr-xr-x
2020-09-24 08:36:09
checkgid
application/x-pie-executable
14.16 KB
-rwxr-xr-x
2021-10-07 05:49:44
chfn
application/x-pie-executable
57.05 KB
-rwsr-xr-x
2020-02-07 02:54:14
choom
application/x-pie-executable
50.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
chrt
application/x-pie-executable
34.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
chsh
application/x-pie-executable
51.64 KB
-rwsr-xr-x
2020-02-07 02:54:14
cksum
application/x-pie-executable
38.78 KB
-rwxr-xr-x
2020-09-24 08:36:09
clear
application/x-pie-executable
14.16 KB
-rwxr-xr-x
2021-01-01 03:02:10
clear_console
application/x-pie-executable
14.3 KB
-rwxr-xr-x
2021-08-04 08:25:59
cmp
application/x-pie-executable
46.78 KB
-rwxr-xr-x
2021-01-01 05:52:00
comm
application/x-pie-executable
42.84 KB
-rwxr-xr-x
2020-09-24 08:36:09
compose
text/x-perl
18.05 KB
-rwxr-xr-x
2021-02-25 06:24:36
corelist
text/x-perl
15.01 KB
-rwxr-xr-x
2021-09-24 04:10:58
cpan
text/x-perl
8.16 KB
-rwxr-xr-x
2021-09-24 04:10:58
cpan5.32-x86_64-linux-gnu
text/x-perl
8.18 KB
-rwxr-xr-x
2021-09-24 04:10:58
cpp
application/x-executable
798.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
cpp-10
application/x-executable
798.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
csplit
application/x-pie-executable
119.06 KB
-rwxr-xr-x
2020-09-24 08:36:09
curl
application/x-pie-executable
250.07 KB
-rwxr-xr-x
2021-11-28 05:38:09
cut
application/x-pie-executable
46.91 KB
-rwxr-xr-x
2020-09-24 08:36:09
deb-systemd-helper
text/x-perl
20.89 KB
-rwxr-xr-x
2020-12-14 08:19:00
deb-systemd-invoke
text/x-perl
4.31 KB
-rwxr-xr-x
2020-12-14 08:19:00
debconf
text/x-perl
2.79 KB
-rwxr-xr-x
2021-06-10 05:17:49
debconf-apt-progress
text/x-perl
11.27 KB
-rwxr-xr-x
2021-06-10 05:17:49
debconf-communicate
text/x-perl
608 B
-rwxr-xr-x
2021-06-10 05:17:49
debconf-copydb
text/x-perl
1.68 KB
-rwxr-xr-x
2021-06-10 05:17:49
debconf-escape
text/x-perl
647 B
-rwxr-xr-x
2021-06-10 05:17:49
debconf-set-selections
text/x-perl
2.87 KB
-rwxr-xr-x
2021-06-10 05:17:49
debconf-show
text/x-perl
1.78 KB
-rwxr-xr-x
2021-06-10 05:17:49
delpart
application/x-pie-executable
26.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
diff
application/x-pie-executable
203.44 KB
-rwxr-xr-x
2021-01-01 05:52:00
diff3
application/x-pie-executable
63 KB
-rwxr-xr-x
2021-01-01 05:52:00
dircolors
application/x-pie-executable
46.82 KB
-rwxr-xr-x
2020-09-24 08:36:09
dirname
application/x-pie-executable
38.78 KB
-rwxr-xr-x
2020-09-24 08:36:09
dpkg
application/x-pie-executable
306.53 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-architecture
text/x-perl
13.51 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-buildflags
text/x-perl
7.39 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-buildpackage
text/x-perl
30.42 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-checkbuilddeps
text/x-perl
7.45 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-deb
application/x-pie-executable
158.38 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-distaddfile
text/x-perl
2.72 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-divert
application/x-pie-executable
150.44 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-genbuildinfo
text/x-perl
16.71 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-genchanges
text/x-perl
17.1 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-gencontrol
text/x-perl
14.2 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-gensymbols
text/x-perl
10.65 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-maintscript-helper
text/x-shellscript
20.67 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-mergechangelogs
text/x-perl
8.33 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-name
text/x-perl
6.63 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-parsechangelog
text/x-perl
4.83 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-query
application/x-pie-executable
162.43 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-realpath
text/x-shellscript
4.05 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-scanpackages
text/x-perl
8.5 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-scansources
text/x-perl
8.96 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-shlibdeps
text/x-perl
30.96 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-source
text/x-perl
22.56 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-split
application/x-pie-executable
122.34 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-statoverride
application/x-pie-executable
62.12 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-trigger
application/x-pie-executable
78.34 KB
-rwxr-xr-x
2021-04-13 10:43:39
dpkg-vendor
text/x-perl
3.19 KB
-rwxr-xr-x
2021-04-13 10:43:39
du
application/x-pie-executable
171.25 KB
-rwxr-xr-x
2020-09-24 08:36:09
dvipdf
text/x-shellscript
1007 B
-rwxr-xr-x
2021-09-09 05:23:11
dwp
application/x-pie-executable
903.45 KB
-rwxr-xr-x
2021-02-20 03:38:30
edit
text/x-perl
18.05 KB
-rwxr-xr-x
2021-02-25 06:24:36
elfedit
application/x-pie-executable
34.91 KB
-rwxr-xr-x
2021-02-20 03:38:30
enc2xs
text/x-perl
40.84 KB
-rwxr-xr-x
2021-09-24 04:10:58
encguess
text/x-perl
2.99 KB
-rwxr-xr-x
2021-09-24 04:10:58
env
application/x-pie-executable
47.34 KB
-rwxr-xr-x
2020-09-24 08:36:09
eps2eps
text/x-shellscript
639 B
-rwxr-xr-x
2021-09-09 05:23:11
expand
application/x-pie-executable
42.84 KB
-rwxr-xr-x
2020-09-24 08:36:09
expiry
application/x-pie-executable
30.43 KB
-rwxr-sr-x
2020-02-07 02:54:14
expr
application/x-pie-executable
114.97 KB
-rwxr-xr-x
2020-09-24 08:36:09
factor
application/x-pie-executable
79.16 KB
-rwxr-xr-x
2020-09-24 08:36:09
faillog
application/x-pie-executable
22.45 KB
-rwxr-xr-x
2020-02-07 02:54:14
fallocate
application/x-pie-executable
34.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
fcgistarter
application/x-pie-executable
14.16 KB
-rwxr-xr-x
2021-10-07 05:49:44
file
application/x-pie-executable
26.42 KB
-rwxr-xr-x
2020-11-19 09:21:06
fincore
application/x-pie-executable
34.27 KB
-rwxr-xr-x
2021-07-28 07:09:07
find
application/x-pie-executable
303.72 KB
-rwxr-xr-x
2021-01-09 05:36:56
flock
application/x-pie-executable
34.3 KB
-rwxr-xr-x
2021-07-28 07:09:07
fmt
application/x-pie-executable
46.81 KB
-rwxr-xr-x
2020-09-24 08:36:09
fold
application/x-pie-executable
42.81 KB
-rwxr-xr-x
2020-09-24 08:36:09
free
application/x-pie-executable
26.23 KB
-rwxr-xr-x
2021-04-06 07:17:53
g++
application/x-executable
802.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
g++-10
application/x-executable
802.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcc
application/x-executable
798.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcc-10
application/x-executable
798.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcc-ar
application/x-executable
22.38 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcc-ar-10
application/x-executable
22.38 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcc-nm
application/x-executable
22.38 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcc-nm-10
application/x-executable
22.38 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcc-ranlib
application/x-executable
22.38 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcc-ranlib-10
application/x-executable
22.38 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcov
application/x-executable
371.79 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcov-10
application/x-executable
371.79 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcov-dump
application/x-executable
239.68 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcov-dump-10
application/x-executable
239.68 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcov-tool
application/x-executable
259.77 KB
-rwxr-xr-x
2021-01-10 11:35:39
gcov-tool-10
application/x-executable
259.77 KB
-rwxr-xr-x
2021-01-10 11:35:39
gencat
application/x-pie-executable
26.6 KB
-rwxr-xr-x
2021-10-02 12:47:40
getconf
application/x-pie-executable
34.37 KB
-rwxr-xr-x
2021-10-02 12:47:40
getent
application/x-pie-executable
31.34 KB
-rwxr-xr-x
2021-10-02 12:47:40
getopt
application/x-pie-executable
22.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
ghostscript
application/x-pie-executable
14.18 KB
-rwxr-xr-x
2021-09-09 05:23:11
gmake
application/x-pie-executable
234.65 KB
-rwxr-xr-x
2021-04-10 01:55:15
gold
application/x-pie-executable
2.14 MB
-rwxr-xr-x
2021-02-20 03:38:30
gpasswd
application/x-pie-executable
86.23 KB
-rwsr-xr-x
2020-02-07 02:54:14
gpgv
application/x-pie-executable
438.87 KB
-rwxr-xr-x
2021-04-22 06:40:36
gprof
application/x-pie-executable
116.27 KB
-rwxr-xr-x
2021-02-20 03:38:30
groups
application/x-pie-executable
42.81 KB
-rwxr-xr-x
2020-09-24 08:36:09
gs
application/x-pie-executable
14.18 KB
-rwxr-xr-x
2021-09-09 05:23:11
gsbj
text/x-shellscript
350 B
-rwxr-xr-x
2021-09-09 05:23:11
gsdj
text/x-shellscript
352 B
-rwxr-xr-x
2021-09-09 05:23:11
gsdj500
text/x-shellscript
352 B
-rwxr-xr-x
2021-09-09 05:23:11
gslj
text/x-shellscript
353 B
-rwxr-xr-x
2021-09-09 05:23:11
gslp
text/x-shellscript
350 B
-rwxr-xr-x
2021-09-09 05:23:11
gsnd
text/x-shellscript
277 B
-rwxr-xr-x
2021-09-09 05:23:11
h2ph
text/x-perl
28.54 KB
-rwxr-xr-x
2021-09-24 04:10:58
h2xs
text/x-perl
59.5 KB
-rwxr-xr-x
2021-09-24 04:10:58
head
application/x-pie-executable
46.88 KB
-rwxr-xr-x
2020-09-24 08:36:09
hostid
application/x-pie-executable
38.75 KB
-rwxr-xr-x
2020-09-24 08:36:09
htcacheclean
application/x-pie-executable
34.16 KB
-rwxr-xr-x
2021-10-07 05:49:44
htdbm
application/x-pie-executable
26.16 KB
-rwxr-xr-x
2021-10-07 05:49:44
htdigest
application/x-pie-executable
14.16 KB
-rwxr-xr-x
2021-10-07 05:49:44
htpasswd
application/x-pie-executable
26.16 KB
-rwxr-xr-x
2021-10-07 05:49:44
i386
application/x-pie-executable
26.5 KB
-rwxr-xr-x
2021-07-28 07:09:07
iconv
application/x-pie-executable
59.01 KB
-rwxr-xr-x
2021-10-02 12:47:40
id
application/x-pie-executable
46.94 KB
-rwxr-xr-x
2020-09-24 08:36:09
ifnames
text/x-perl
4.03 KB
-rwxr-xr-x
2020-12-25 09:25:29
infocmp
application/x-pie-executable
62.23 KB
-rwxr-xr-x
2021-01-01 03:02:10
infotocap
application/x-pie-executable
90.27 KB
-rwxr-xr-x
2021-01-01 03:02:10
install
application/x-pie-executable
155.79 KB
-rwxr-xr-x
2020-09-24 08:36:09
instmodsh
text/x-perl
4.27 KB
-rwxr-xr-x
2021-09-24 04:10:58
ionice
application/x-pie-executable
30.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
ipcmk
application/x-pie-executable
30.3 KB
-rwxr-xr-x
2021-07-28 07:09:07
ipcrm
application/x-pie-executable
34.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
ipcs
application/x-pie-executable
70.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
ischroot
application/x-pie-executable
14.27 KB
-rwxr-xr-x
2020-09-27 05:25:47
join
application/x-pie-executable
54.91 KB
-rwxr-xr-x
2020-09-24 08:36:09
json_pp
text/x-perl
4.87 KB
-rwxr-xr-x
2021-09-24 04:10:58
last
application/x-pie-executable
46.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
lastb
application/x-pie-executable
46.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
lastlog
application/x-pie-executable
31.5 KB
-rwxr-xr-x
2020-02-07 02:54:14
lcf
text/x-shellscript
7.6 KB
-rwxr-xr-x
2020-06-16 05:37:53
ld
application/x-pie-executable
1.66 MB
-rwxr-xr-x
2021-02-20 03:38:30
ld.bfd
application/x-pie-executable
1.66 MB
-rwxr-xr-x
2021-02-20 03:38:30
ld.gold
application/x-pie-executable
2.14 MB
-rwxr-xr-x
2021-02-20 03:38:30
ldd
text/x-shellscript
5.27 KB
-rwxr-xr-x
2021-10-02 12:47:40
libnetcfg
text/x-perl
15.41 KB
-rwxr-xr-x
2021-09-24 04:10:58
link
application/x-pie-executable
38.75 KB
-rwxr-xr-x
2020-09-24 08:36:09
linux32
application/x-pie-executable
26.5 KB
-rwxr-xr-x
2021-07-28 07:09:07
linux64
application/x-pie-executable
26.5 KB
-rwxr-xr-x
2021-07-28 07:09:07
locale
application/x-pie-executable
54.04 KB
-rwxr-xr-x
2021-10-02 12:47:40
localedef
application/x-pie-executable
307.75 KB
-rwxr-xr-x
2021-10-02 12:47:40
logger
application/x-pie-executable
50.82 KB
-rwxr-xr-x
2021-07-28 07:09:07
logname
application/x-pie-executable
38.78 KB
-rwxr-xr-x
2020-09-24 08:36:09
logresolve
application/x-pie-executable
14.16 KB
-rwxr-xr-x
2021-10-07 05:49:44
lsattr
application/x-pie-executable
14.16 KB
-rwxr-xr-x
2021-06-07 11:27:15
lscpu
application/x-pie-executable
98.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
lsipc
application/x-pie-executable
94.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
lslocks
application/x-pie-executable
38.55 KB
-rwxr-xr-x
2021-07-28 07:09:07
lslogins
application/x-pie-executable
66.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
lsmem
application/x-pie-executable
66.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
lsns
application/x-pie-executable
50.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
lto-dump-10
application/x-executable
23.27 MB
-rwxr-xr-x
2021-01-10 11:35:39
lzcat
application/x-pie-executable
79.29 KB
-rwxr-xr-x
2021-03-08 10:01:54
lzcmp
text/x-shellscript
6.86 KB
-rwxr-xr-x
2021-03-08 10:01:54
lzdiff
text/x-shellscript
6.86 KB
-rwxr-xr-x
2021-03-08 10:01:54
lzegrep
text/x-shellscript
5.61 KB
-rwxr-xr-x
2021-03-08 10:01:54
lzfgrep
text/x-shellscript
5.61 KB
-rwxr-xr-x
2021-03-08 10:01:54
lzgrep
text/x-shellscript
5.61 KB
-rwxr-xr-x
2021-03-08 10:01:54
lzless
text/x-shellscript
1.76 KB
-rwxr-xr-x
2021-03-08 10:01:54
lzma
application/x-pie-executable
79.29 KB
-rwxr-xr-x
2021-03-08 10:01:54
lzmainfo
application/x-pie-executable
14.31 KB
-rwxr-xr-x
2021-03-08 10:01:54
lzmore
text/x-shellscript
2.11 KB
-rwxr-xr-x
2021-03-08 10:01:54
m4
application/x-pie-executable
163.18 KB
-rwxr-xr-x
2021-01-05 10:34:00
make
application/x-pie-executable
234.65 KB
-rwxr-xr-x
2021-04-10 01:55:15
make-first-existing-target
text/x-perl
4.79 KB
-rwxr-xr-x
2021-04-10 01:55:15
mawk
application/x-pie-executable
154.59 KB
-rwxr-xr-x
2020-02-16 07:41:09
mcookie
application/x-pie-executable
34.3 KB
-rwxr-xr-x
2021-07-28 07:09:07
md5sum
application/x-pie-executable
46.91 KB
-rwxr-xr-x
2020-09-24 08:36:09
md5sum.textutils
application/x-pie-executable
46.91 KB
-rwxr-xr-x
2020-09-24 08:36:09
mesg
application/x-pie-executable
14.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
mkfifo
application/x-pie-executable
67.09 KB
-rwxr-xr-x
2020-09-24 08:36:09
namei
application/x-pie-executable
34.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
nawk
application/x-pie-executable
154.59 KB
-rwxr-xr-x
2020-02-16 07:41:09
newgrp
application/x-pie-executable
43.59 KB
-rwsr-xr-x
2020-02-07 02:54:14
nice
application/x-pie-executable
42.81 KB
-rwxr-xr-x
2020-09-24 08:36:09
nl
application/x-pie-executable
111.03 KB
-rwxr-xr-x
2020-09-24 08:36:09
nm
application/x-pie-executable
43.82 KB
-rwxr-xr-x
2021-02-20 03:38:30
nohup
application/x-pie-executable
42.84 KB
-rwxr-xr-x
2020-09-24 08:36:09
nproc
application/x-pie-executable
42.81 KB
-rwxr-xr-x
2020-09-24 08:36:09
nsenter
application/x-pie-executable
34.45 KB
-rwxr-xr-x
2021-07-28 07:09:07
numfmt
application/x-pie-executable
66.97 KB
-rwxr-xr-x
2020-09-24 08:36:09
objcopy
application/x-pie-executable
275.4 KB
-rwxr-xr-x
2021-02-20 03:38:30
objdump
application/x-pie-executable
453.77 KB
-rwxr-xr-x
2021-02-20 03:38:30
od
application/x-pie-executable
70.94 KB
-rwxr-xr-x
2020-09-24 08:36:09
open
text/x-perl
18.05 KB
-rwxr-xr-x
2021-02-25 06:24:36
openssl
application/x-pie-executable
719.52 KB
-rwxr-xr-x
2021-08-24 08:28:12
pager
application/x-pie-executable
58.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
partx
application/x-pie-executable
114.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
passwd
application/x-pie-executable
62.46 KB
-rwsr-xr-x
2020-02-07 02:54:14
paste
application/x-pie-executable
42.84 KB
-rwxr-xr-x
2020-09-24 08:36:09
patch
application/x-pie-executable
187.44 KB
-rwxr-xr-x
2021-01-09 08:58:08
pathchk
application/x-pie-executable
38.78 KB
-rwxr-xr-x
2020-09-24 08:36:09
pdf2dsc
text/x-shellscript
698 B
-rwxr-xr-x
2021-09-09 05:23:11
pdf2ps
text/x-shellscript
909 B
-rwxr-xr-x
2021-09-09 05:23:11
perl
application/x-pie-executable
3.51 MB
-rwxr-xr-x
2021-09-24 04:10:58
perl5.32-x86_64-linux-gnu
application/x-pie-executable
14.34 KB
-rwxr-xr-x
2021-09-24 04:10:58
perl5.32.1
application/x-pie-executable
3.51 MB
-rwxr-xr-x
2021-09-24 04:10:58
perlbug
text/x-perl
44.2 KB
-rwxr-xr-x
2021-09-24 04:10:58
perldoc
text/x-shellscript
125 B
-rwxr-xr-x
2021-08-25 06:11:56
perlivp
text/x-perl
10.61 KB
-rwxr-xr-x
2021-09-24 04:10:58
perlthanks
text/x-perl
44.2 KB
-rwxr-xr-x
2021-09-24 04:10:58
pf2afm
text/x-shellscript
498 B
-rwxr-xr-x
2021-09-09 05:23:11
pfbtopfa
text/x-shellscript
516 B
-rwxr-xr-x
2021-09-09 05:23:11
pgrep
application/x-pie-executable
30.23 KB
-rwxr-xr-x
2021-04-06 07:17:53
piconv
text/x-perl
8.16 KB
-rwxr-xr-x
2021-09-24 04:10:58
pidwait
application/x-pie-executable
30.23 KB
-rwxr-xr-x
2021-04-06 07:17:53
pinky
application/x-pie-executable
42.97 KB
-rwxr-xr-x
2020-09-24 08:36:09
pkg-config
application/x-pie-executable
54.92 KB
-rwxr-xr-x
2020-04-21 06:30:00
pkill
application/x-pie-executable
30.23 KB
-rwxr-xr-x
2021-04-06 07:17:53
pl2pm
text/x-perl
4.43 KB
-rwxr-xr-x
2021-09-24 04:10:58
pldd
application/x-pie-executable
22.57 KB
-rwxr-xr-x
2021-10-02 12:47:40
pmap
application/x-pie-executable
34.23 KB
-rwxr-xr-x
2021-04-06 07:17:53
pod2html
text/x-perl
4.04 KB
-rwxr-xr-x
2021-09-24 04:10:58
pod2man
text/x-perl
14.68 KB
-rwxr-xr-x
2021-09-24 04:10:58
pod2text
text/x-perl
10.55 KB
-rwxr-xr-x
2021-09-24 04:10:58
pod2usage
text/x-perl
3.86 KB
-rwxr-xr-x
2021-09-24 04:10:58
podchecker
text/x-perl
3.57 KB
-rwxr-xr-x
2021-09-24 04:10:58
pphs
text/x-shellscript
404 B
-rwxr-xr-x
2021-09-09 05:23:11
pr
application/x-pie-executable
75.09 KB
-rwxr-xr-x
2020-09-24 08:36:09
print
text/x-perl
18.05 KB
-rwxr-xr-x
2021-02-25 06:24:36
printafm
text/x-shellscript
395 B
-rwxr-xr-x
2021-09-09 05:23:11
printenv
application/x-pie-executable
38.75 KB
-rwxr-xr-x
2020-09-24 08:36:09
printf
application/x-pie-executable
58.84 KB
-rwxr-xr-x
2020-09-24 08:36:09
prlimit
application/x-pie-executable
38.74 KB
-rwxr-xr-x
2021-07-28 07:09:07
prove
text/x-perl
13.33 KB
-rwxr-xr-x
2021-09-24 04:10:58
ps2ascii
text/x-shellscript
631 B
-rwxr-xr-x
2021-09-09 05:23:11
ps2epsi
text/x-shellscript
1.22 KB
-rwxr-xr-x
2021-09-09 05:23:11
ps2pdf
text/x-shellscript
272 B
-rwxr-xr-x
2021-09-09 05:23:11
ps2pdf12
text/x-shellscript
215 B
-rwxr-xr-x
2021-09-09 05:23:11
ps2pdf13
text/x-shellscript
215 B
-rwxr-xr-x
2021-09-09 05:23:11
ps2pdf14
text/x-shellscript
215 B
-rwxr-xr-x
2021-09-09 05:23:11
ps2pdfwr
text/x-shellscript
1.05 KB
-rwxr-xr-x
2021-09-09 05:23:11
ps2ps
text/x-shellscript
647 B
-rwxr-xr-x
2021-09-09 05:23:11
ps2ps2
text/x-shellscript
669 B
-rwxr-xr-x
2021-09-09 05:23:11
ps2txt
text/x-shellscript
631 B
-rwxr-xr-x
2021-09-09 05:23:11
ptar
text/x-perl
3.47 KB
-rwxr-xr-x
2021-09-24 04:10:58
ptardiff
text/x-perl
2.57 KB
-rwxr-xr-x
2021-09-24 04:10:58
ptargrep
text/x-perl
4.29 KB
-rwxr-xr-x
2021-09-24 04:10:58
ptx
application/x-pie-executable
135.09 KB
-rwxr-xr-x
2020-09-24 08:36:09
pwdx
application/x-pie-executable
14.22 KB
-rwxr-xr-x
2021-04-06 07:17:53
ranlib
application/x-pie-executable
50.97 KB
-rwxr-xr-x
2021-02-20 03:38:30
re2c
application/x-pie-executable
626.39 KB
-rwxr-xr-x
2020-08-24 09:05:07
re2go
application/x-pie-executable
626.39 KB
-rwxr-xr-x
2020-08-24 09:05:07
readelf
application/x-pie-executable
595.57 KB
-rwxr-xr-x
2021-02-20 03:38:30
realpath
application/x-pie-executable
54.84 KB
-rwxr-xr-x
2020-09-24 08:36:09
renice
application/x-pie-executable
14.22 KB
-rwxr-xr-x
2021-07-28 07:09:07
reset
application/x-pie-executable
30.16 KB
-rwxr-xr-x
2021-01-01 03:02:10
resizepart
application/x-pie-executable
62.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
rev
application/x-pie-executable
14.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
rgrep
text/x-shellscript
30 B
-rwxr-xr-x
2020-01-29 12:09:17
rotatelogs
application/x-pie-executable
26.23 KB
-rwxr-xr-x
2021-10-07 05:49:44
rpcgen
application/x-pie-executable
94.98 KB
-rwxr-xr-x
2021-10-02 12:47:40
run-mailcap
text/x-perl
18.05 KB
-rwxr-xr-x
2021-02-25 06:24:36
runcon
application/x-pie-executable
42.91 KB
-rwxr-xr-x
2020-09-24 08:36:09
savelog
text/x-shellscript
10.24 KB
-rwxr-xr-x
2020-09-27 05:25:47
script
application/x-pie-executable
66.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
scriptlive
application/x-pie-executable
54.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
scriptreplay
application/x-pie-executable
42.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
sdiff
application/x-pie-executable
46.91 KB
-rwxr-xr-x
2021-01-01 05:52:00
see
text/x-perl
18.05 KB
-rwxr-xr-x
2021-02-25 06:24:36
select-editor
text/x-shellscript
2.39 KB
-rwxr-xr-x
2021-01-12 10:01:50
sensible-browser
text/x-shellscript
1.2 KB
-rwxr-xr-x
2021-01-12 10:01:50
sensible-editor
text/x-shellscript
1.15 KB
-rwxr-xr-x
2021-01-12 10:01:50
sensible-pager
text/x-shellscript
452 B
-rwxr-xr-x
2021-01-12 10:01:50
seq
application/x-pie-executable
54.88 KB
-rwxr-xr-x
2020-09-24 08:36:09
setarch
application/x-pie-executable
26.5 KB
-rwxr-xr-x
2021-07-28 07:09:07
setpriv
application/x-pie-executable
46.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
setsid
application/x-pie-executable
14.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
setterm
application/x-pie-executable
46.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
sg
application/x-pie-executable
43.59 KB
-rwsr-xr-x
2020-02-07 02:54:14
sha1sum
application/x-pie-executable
50.91 KB
-rwxr-xr-x
2020-09-24 08:36:09
sha224sum
application/x-pie-executable
62.91 KB
-rwxr-xr-x
2020-09-24 08:36:09
sha256sum
application/x-pie-executable
62.91 KB
-rwxr-xr-x
2020-09-24 08:36:09
sha384sum
application/x-pie-executable
66.91 KB
-rwxr-xr-x
2020-09-24 08:36:09
sha512sum
application/x-pie-executable
66.91 KB
-rwxr-xr-x
2020-09-24 08:36:09
shasum
text/x-perl
9.74 KB
-rwxr-xr-x
2021-09-24 04:10:58
shred
application/x-pie-executable
63.09 KB
-rwxr-xr-x
2020-09-24 08:36:09
shuf
application/x-pie-executable
58.97 KB
-rwxr-xr-x
2020-09-24 08:36:09
size
application/x-pie-executable
30.81 KB
-rwxr-xr-x
2021-02-20 03:38:30
skill
application/x-pie-executable
30.23 KB
-rwxr-xr-x
2021-04-06 07:17:53
slabtop
application/x-pie-executable
22.23 KB
-rwxr-xr-x
2021-04-06 07:17:53
snice
application/x-pie-executable
30.23 KB
-rwxr-xr-x
2021-04-06 07:17:53
sort
application/x-pie-executable
115.63 KB
-rwxr-xr-x
2020-09-24 08:36:09
splain
text/x-perl
18.96 KB
-rwxr-xr-x
2021-09-24 04:10:58
split
application/x-pie-executable
59.47 KB
-rwxr-xr-x
2020-09-24 08:36:09
stat
application/x-pie-executable
83.19 KB
-rwxr-xr-x
2020-09-24 08:36:09
stdbuf
application/x-pie-executable
50.84 KB
-rwxr-xr-x
2020-09-24 08:36:09
streamzip
text/x-perl
5.39 KB
-rwxr-xr-x
2021-09-24 04:10:58
strings
application/x-pie-executable
30.91 KB
-rwxr-xr-x
2021-02-20 03:38:30
strip
application/x-pie-executable
275.43 KB
-rwxr-xr-x
2021-02-20 03:38:30
sum
application/x-pie-executable
46.88 KB
-rwxr-xr-x
2020-09-24 08:36:09
tabs
application/x-pie-executable
18.15 KB
-rwxr-xr-x
2021-01-01 03:02:10
tac
application/x-pie-executable
106.97 KB
-rwxr-xr-x
2020-09-24 08:36:09
tail
application/x-pie-executable
75.06 KB
-rwxr-xr-x
2020-09-24 08:36:09
taskset
application/x-pie-executable
34.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
tee
application/x-pie-executable
42.88 KB
-rwxr-xr-x
2020-09-24 08:36:09
test
application/x-pie-executable
54.81 KB
-rwxr-xr-x
2020-09-24 08:36:09
tic
application/x-pie-executable
90.27 KB
-rwxr-xr-x
2021-01-01 03:02:10
timeout
application/x-pie-executable
43.41 KB
-rwxr-xr-x
2020-09-24 08:36:09
tload
application/x-pie-executable
14.23 KB
-rwxr-xr-x
2021-04-06 07:17:53
toe
application/x-pie-executable
22.15 KB
-rwxr-xr-x
2021-01-01 03:02:10
top
application/x-pie-executable
122.07 KB
-rwxr-xr-x
2021-04-06 07:17:53
touch
application/x-pie-executable
99.03 KB
-rwxr-xr-x
2020-09-24 08:36:09
tput
application/x-pie-executable
26.18 KB
-rwxr-xr-x
2021-01-01 03:02:10
tr
application/x-pie-executable
54.84 KB
-rwxr-xr-x
2020-09-24 08:36:09
truncate
application/x-pie-executable
42.81 KB
-rwxr-xr-x
2020-09-24 08:36:09
tset
application/x-pie-executable
30.16 KB
-rwxr-xr-x
2021-01-01 03:02:10
tsort
application/x-pie-executable
54.81 KB
-rwxr-xr-x
2020-09-24 08:36:09
tty
application/x-pie-executable
38.78 KB
-rwxr-xr-x
2020-09-24 08:36:09
tzselect
text/x-shellscript
14.99 KB
-rwxr-xr-x
2021-10-02 12:47:40
ucf
text/x-shellscript
40.9 KB
-rwxr-xr-x
2020-06-16 05:37:53
ucfq
text/x-perl
18.91 KB
-rwxr-xr-x
2020-06-16 05:37:53
ucfr
text/x-shellscript
10.47 KB
-rwxr-xr-x
2020-06-16 05:37:53
unexpand
application/x-pie-executable
42.84 KB
-rwxr-xr-x
2020-09-24 08:36:09
uniq
application/x-pie-executable
50.91 KB
-rwxr-xr-x
2020-09-24 08:36:09
unlink
application/x-pie-executable
38.75 KB
-rwxr-xr-x
2020-09-24 08:36:09
unlzma
application/x-pie-executable
79.29 KB
-rwxr-xr-x
2021-03-08 10:01:54
unshare
application/x-pie-executable
46.46 KB
-rwxr-xr-x
2021-07-28 07:09:07
unxz
application/x-pie-executable
79.29 KB
-rwxr-xr-x
2021-03-08 10:01:54
update-alternatives
application/x-pie-executable
58.09 KB
-rwxr-xr-x
2021-04-13 10:43:39
uptime
application/x-pie-executable
14.22 KB
-rwxr-xr-x
2021-04-06 07:17:53
users
application/x-pie-executable
38.81 KB
-rwxr-xr-x
2020-09-24 08:36:09
utmpdump
application/x-pie-executable
30.23 KB
-rwxr-xr-x
2021-07-28 07:09:07
vmstat
application/x-pie-executable
38.24 KB
-rwxr-xr-x
2021-04-06 07:17:53
w
application/x-pie-executable
22.22 KB
-rwxr-xr-x
2021-04-06 07:17:53
wall
application/x-pie-executable
34.23 KB
-rwxr-sr-x
2021-07-28 07:09:07
watch
application/x-pie-executable
26.6 KB
-rwxr-xr-x
2021-04-06 07:17:53
wc
application/x-pie-executable
46.95 KB
-rwxr-xr-x
2020-09-24 08:36:09
whereis
application/x-pie-executable
30.66 KB
-rwxr-xr-x
2021-07-28 07:09:07
which
text/x-shellscript
946 B
-rwxr-xr-x
2020-09-27 05:25:47
who
application/x-pie-executable
58.97 KB
-rwxr-xr-x
2020-09-24 08:36:09
whoami
application/x-pie-executable
38.78 KB
-rwxr-xr-x
2020-09-24 08:36:09
x86_64
application/x-pie-executable
26.5 KB
-rwxr-xr-x
2021-07-28 07:09:07
x86_64-linux-gnu-addr2line
application/x-pie-executable
31.13 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-ar
application/x-pie-executable
50.97 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-as
application/x-pie-executable
461.18 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-c++filt
application/x-pie-executable
126.46 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-cpp
application/x-executable
798.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-cpp-10
application/x-executable
798.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-dwp
application/x-pie-executable
903.45 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-elfedit
application/x-pie-executable
34.91 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-g++
application/x-executable
802.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-g++-10
application/x-executable
802.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcc
application/x-executable
798.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcc-10
application/x-executable
798.54 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcc-ar
application/x-executable
22.38 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcc-ar-10
application/x-executable
22.38 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcc-nm
application/x-executable
22.38 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcc-nm-10
application/x-executable
22.38 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcc-ranlib
application/x-executable
22.38 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcc-ranlib-10
application/x-executable
22.38 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcov
application/x-executable
371.79 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcov-10
application/x-executable
371.79 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcov-dump
application/x-executable
239.68 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcov-dump-10
application/x-executable
239.68 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcov-tool
application/x-executable
259.77 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gcov-tool-10
application/x-executable
259.77 KB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-gold
application/x-pie-executable
2.14 MB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-gprof
application/x-pie-executable
116.27 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-ld
application/x-pie-executable
1.66 MB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-ld.bfd
application/x-pie-executable
1.66 MB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-ld.gold
application/x-pie-executable
2.14 MB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-lto-dump-10
application/x-executable
23.27 MB
-rwxr-xr-x
2021-01-10 11:35:39
x86_64-linux-gnu-nm
application/x-pie-executable
43.82 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-objcopy
application/x-pie-executable
275.4 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-objdump
application/x-pie-executable
453.77 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-pkg-config
text/x-shellscript
2 KB
-rwxr-xr-x
2020-04-21 06:30:00
x86_64-linux-gnu-ranlib
application/x-pie-executable
50.97 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-readelf
application/x-pie-executable
595.57 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-size
application/x-pie-executable
30.81 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-strings
application/x-pie-executable
30.91 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-linux-gnu-strip
application/x-pie-executable
275.43 KB
-rwxr-xr-x
2021-02-20 03:38:30
x86_64-pc-linux-gnu-pkg-config
application/x-pie-executable
54.92 KB
-rwxr-xr-x
2020-04-21 06:30:00
xargs
application/x-pie-executable
74.37 KB
-rwxr-xr-x
2021-01-09 05:36:56
xsubpp
text/x-perl
5.04 KB
-rwxr-xr-x
2021-09-24 04:10:58
xz
application/x-pie-executable
79.29 KB
-rwxr-xr-x
2021-03-08 10:01:54
xzcat
application/x-pie-executable
79.29 KB
-rwxr-xr-x
2021-03-08 10:01:54
xzcmp
text/x-shellscript
6.86 KB
-rwxr-xr-x
2021-03-08 10:01:54
xzdiff
text/x-shellscript
6.86 KB
-rwxr-xr-x
2021-03-08 10:01:54
xzegrep
text/x-shellscript
5.61 KB
-rwxr-xr-x
2021-03-08 10:01:54
xzfgrep
text/x-shellscript
5.61 KB
-rwxr-xr-x
2021-03-08 10:01:54
xzgrep
text/x-shellscript
5.61 KB
-rwxr-xr-x
2021-03-08 10:01:54
xzless
text/x-shellscript
1.76 KB
-rwxr-xr-x
2021-03-08 10:01:54
xzmore
text/x-shellscript
2.11 KB
-rwxr-xr-x
2021-03-08 10:01:54
yes
application/x-pie-executable
38.75 KB
-rwxr-xr-x
2020-09-24 08:36:09
zdump
application/x-pie-executable
22.4 KB
-rwxr-xr-x
2021-10-02 12:47:40
zipdetails
text/x-perl
50.04 KB
-rwxr-xr-x
2021-09-24 04:10:58
~ ACUPOFTEA - translucent.aimfirst.dev