An index problem is not always a payload problem
A ZIP archive normally holds a local header before each compressed member and a central directory near its end. If a download is cut off after all member data but before the directory, ordinary archive software may refuse the whole file even though those member bytes remain. Local-header salvage can sometimes identify and verify the surviving files without that final index.
A cut-off member is different. When its declared compressed payload extends beyond the available bytes, this desk excludes it rather than filling the gap. A complete-looking payload can also decompress to the wrong bytes or fail CRC-32. That member is excluded as damaged, while other independently bounded members may still pass.
Understand descriptor and format boundaries
Some ZIP writers stream a file before they know its final checksum and sizes. They put those values in a later data descriptor and in the central directory. This desk supports such members when intact central metadata gives a bounded location and a matching descriptor. Without that directory evidence, an unknown-length member stops local scanning; the tool does not guess which bytes belong to the stream.
Only stored and ordinary deflate compression are supported. ZIP64, encrypted entries, multi-disk archives, RAR, 7z and PAR2 are outside this product’s scope. A password prompt is not provided because this is not a password-recovery service. UTF-8 filenames and legacy CP437 names are decoded explicitly, including supported Unicode path metadata with a matching name checksum.
Use limits as limits, not damage diagnoses
The input limit is 64 MiB, with at most 2,000 inspected members, 24 MiB per member and a cumulative 96 MiB attempted decode budget. Members above one MiB also have a 200-to-one expansion-ratio limit. A file rejected by one of these bounds is not automatically corrupt; it may need an appropriate desktop tool with more memory and format support.
CRC-32 is checked against the archive’s own declared value. SHA-256 fingerprints additionally identify the exact source and verified file bytes in the report, which helps compare later copies. Neither checksum establishes the author’s identity or proves that the archive’s declarations are trustworthy. Keep an independent backup or trusted hash when authenticity matters, and retain the original for a different recovery method if necessary.