* Add branching for solid vs non-solid archives in order to extract solid archives properly.
* Change comments on sevenzip, reuse archive-level solid flag for rar
* Fully simplify identifying if archive is solid.
* Finish implementing first round of feedback.
* Fix second round of formatting issues.
* Final formatting fixes.
* Fixes .hdr+.cab installshield cabinet files not being extracted when relative paths are provided.
* Fix for unit tests empty file string.
* Better fix for unit test failures, due to https://learn.microsoft.com/en-us/dotnet/api/system.io.path.getfullpath?view=net-9.0 listing several more exceptions than the other functions, most of which I would not imagine should be directly handled.
* Removed try-catch fullpath obtaining, added getting fullpath in scanner via filestream name instead.
* Undid previous changes again, re-added path assertion at request, added assert.throws exception for empty paths in the unit tests
* Improve detection for cd/dvd-cops version string
* I forgot to include the regex compensation for comma version number cases
* Pasted comment wrong previously
* Implemented Sabre's review fixes, also added check for Codefree
* make paul.dll internal name check non-case-sensitive
Sometimes the internal name is in all caps, like http://redump.org/disc/115608/ and http://redump.org/disc/47171/
* Added proper import for ignore case
Forgot it wasn't covered by system.text
* Add detection class and test class for PACE Anti-Piracy Interlok
* Remove unnecessary empty lines after end of class.
* Added missing null check for pex section strings.
* Add newline above getversion
* GetFirstSectionStrings assigned to variable.
* Change getversion in InterLok to use regex.
* Final? getversion regex cleanup
Some late securom Release Control games call what'd usually be the matrosch section "rcpacker", as in Release Control packer. Not detected at the moment because of this, and given the name, should only refer to Securom Release Control. Games affected by this include all currently dumped in redump versions of FIFA 13 and Mass Effect 3 with Release Control.
* Begin SafeDisc 4 documentation
Starting off with just 4.00.000 since this needed a bit more groundwork to establish with the AuthServ checks.
* Add SafeDisc 4.00.001
* Add SafeDisc 4.00.002+4.00.003
* Add SafeDisc 4.50.000 notes
* Document SafeDisc 4.60.000-4.80.000
Also add new comment about the unknown version of SecDrv.
* Document SafeDisc 4.81.000
Found a new clcd16 file, which hasn't happened in a long time
* Document SafeDisc 4.85.000 and 4.90.000
Improve some comments and detections for other versions as well.
* Document the remaining SafeDisc 4 versions
Still needs some mild cleanup
* Add SafeDisc 4.91.000 clcd32 hash
* Add SD4/Lite notes
Caught by noigeaR, crucial to communicate since some tivola discs have dummy files but no ring (and thus no copy-X), either as remnants, or seemingly as future preparation for copy-X
* Improve Hexalock detection via checking different known sections for mfint.dll
* Add sabre's suggestion
Improve code with sabre's code suggestion
Co-authored-by: Matt Nadareski <mnadareski@outlook.com>
* Add extra check for instances in UPX executables.
* Add newlines between if blocks.
---------
Co-authored-by: Matt Nadareski <mnadareski@outlook.com>