1
0
Fork 0
mirror of https://github.com/atom0s/Steamless.git synced 2024-12-19 23:07:41 +01:00
Commit graph

54 commits

Author SHA1 Message Date
atom0s
2380a4bd8a
Unpackers: (x86) - Ensure all unpacked files default to a checksum of 0. 2022-03-26 02:25:36 -07:00
atom0s
7cb8eaf613
Core: Fix typo with new ZeroDosStubData option checkbox using wrong field bool.
API: Add new option RecalculateFileChecksum to allow unpacked files to have their PE checksum recalculated.
API: PE32 - Add new functionality to Pe32Helpers to recalculate a PE file checksum.
Unpackers: (x86) Add support for new RecalculateFileChecksum setting.

64bit handling to be added soon.
2022-03-26 02:23:03 -07:00
atom0s
12c312b4db
API: Add new option to zero the DOS stub data when unpacking.
Core: Add UI option to enable/disable the new zero DOS stub data option.
Unpackers: Add support for new zero DOS stub data option.
API: `DontRealignSections` and `ZeroDosStubData` are now default enabled as this is the general 'correct' way to handle most files. (Some files do require the section alignment to happen and some files may use the DOS stub for self-validation and such. Adjust accordingly when using Steamless.)
2022-03-25 20:09:21 -07:00
atom0s
18c389ce3c
Unpacker: v10.x86 - Finish implementing SteamStub variant v1.0 (x86) unpacker. (Fixes #22)
This unpacker is currently considered beta. Since I only have 1 sample that uses this variant at the moment, it is not possible to confirm the data and signatures being used are consistent across the board. This variant is also very basic and does not seem to include any means of real protection. (ie. encrypting the code section.) I'd assume this version also did not support x64 files or TLS callbacks so most of the work the other variants can do is left out until other samples prove this needs to support those kinds of features.
2022-03-25 19:33:17 -07:00
atom0s
39ad5a2631
Update project information copyrights. 2022-03-25 18:53:29 -07:00
atom0s
5c2c32cab4
Begin variant v1.0 x86 plugin support. 2022-03-25 18:52:33 -07:00
atom0s
9c16bcc8a5
API: PE32 Adjusted FindPattern to return a long instead of uint. Default return is now -1.
API: PE36 Adjusted FindPattern to return a long instead of uint. Default return is now -1.
Unpackers: Updated all usages of FindPattern to reflect new API change.
2022-03-25 18:49:50 -07:00
atom0s
d3a9dad663
Bump version number. 2022-03-25 16:49:01 -07:00
atom0s
b97f148945
Unpacker: v30.x64 - Renamed header field Unknown0003 to HasTlsCallback.
Unpacker: v30.x64 - Add support for handling files packed with TlsCallback overrides.

This feature is currently only supported in this variant for the time being. (Until other samples are provided that have a TlsCallback override for the other variants.)

Notes on how this file type works can be found here: https://github.com/atom0s/Steamless/issues/20#issuecomment-1078821463

This fixes: #20
2022-03-25 16:46:38 -07:00
atom0s
0ad40aeabd
API: PE32 - Fix SizeOfImage alignment.
API: PE64 - Fix SizeOfImage alignment.
Unpacker: v20.x86 - Fix SizeOfImage alignment.
Unpacker: v21.x86 - Fix SizeOfImage alignment.
Unpacker: v30.x64 - Fix incorrect TlsOepRva being stored and used.
Unpacker: v30.x64 - Fix incorrect TlsOepRva calculations when reading payload and SteamDRMP.dll.
Unpacker: v31.x64 - Fix incorrect TlsOepRva being stored and used.
Unpacker: v31.x64 - Fix incorrect TlsOepRva calculations when reading payload and SteamDRMP.dll.
2022-03-24 00:58:32 -07:00
atom0s
079a086129
API: Add new option to allow disabling of section realignment.
Core: Add support for new disable section realignment option.
Unpacker: v20.x86 - Add support for new disable section realignment option.
Unpacker: v21.x86 - Add support for new disable section realignment option.
Unpacker: v30.x86 - Add support for new disable section realignment option.
Unpacker: v30.x64 - Add support for new disable section realignment option.
Unpacker: v31.x86 - Add support for new disable section realignment option.
Unpacker: v31.x64 - Add support for new disable section realignment option.
2022-03-23 00:26:02 -07:00
atom0s
75afb9e425
Unpacker: v31.x64 - Bump unpacker version.
Previous commit fixes #65
2022-03-22 14:46:24 -07:00
atom0s
f83d140ebf
API: Add ToString overrides to the section entries to allow easier debugging.
Unpacker: v31.x64 - Remove code section size check. (Some virtualized files will have an empty code section.)
Unpacker: v31.x64 - Allow empty code section files to still unpack by skipping decryption step.
2022-03-22 14:44:49 -07:00
atom0s
5b02106fca
Bump version numbers. 2022-03-22 03:47:51 -07:00
atom0s
d3423cde0e
API: PE64 - Add check for TlsDirectory.AddressOfCallBacks == 0 to prevent attempting to reference invalid data.
Unpacker: v31.x64 - Adjust size of data searched when determining the variant version. Fixes #56
Misc: Update project copyrights.
Misc: Remove some unused/dead code from the UI.
2022-03-22 03:46:48 -07:00
atom0s
b31c7a1884
Fixed 2.1 (x86) unpacker using the wrong encryption size when the .text section is encrypted. (Fixes #57) 2021-09-23 22:51:31 -07:00
atom0s
2a10df60c1
Update README. 2020-12-18 02:31:35 -08:00
atom0s
6b06ba9902
File version bump for 3.0.0.11 release. 2020-12-18 02:24:32 -08:00
atom0s
769232fc65
Add support for the real stub 2.0 variant. (This is a first-go at this version. I only have 1 sample with this version of the stub so it is solely based on this one exe. The full stub has been reversed for this file though. You can find more about that in issue #37) 2020-12-18 02:10:09 -08:00
atom0s
82d763940a
Fix a few more renames. 2020-12-17 23:39:35 -08:00
atom0s
69b2053f57
Finish 2.0 to 2.1 renaming. 2020-12-17 23:19:02 -08:00
atom0s
5b286530a4
Renamed SteamStub variant 2.0 to 2.1. This is a major change due to a file being presented that looks to be an earlier version of the 2.x variant. This new (older) file presents like 2.x however, it predates some more common features such as the XTEA encryption seen in 2.1 and newer. This version seems less feature-rich and thus I feel it's actually 2.0. 2020-12-17 23:16:20 -08:00
atom0s
869b893ac3
Update more copyrights to 2020.
Update Paypal links to use newer Paypal.me format.
Fix issue with structure size casting that can cause an exception when trying to read a stub header structure.
Fix typo's on some spelling.
2020-12-17 23:10:04 -08:00
atom0s
0b6374e497 Merge branch 'master' of https://github.com/atom0s/Steamless 2020-08-17 01:52:40 -07:00
atom0s
676c863b08 Updated copyright date ranges.
Fixed issue with memory errors due to incorrect structure mapping handling.
2020-08-17 01:52:21 -07:00
atom0s
0725ed3c25
Create FUNDING.yml 2020-04-29 18:09:53 -07:00
atom0s
8d911528cd
Merge pull request #32 from pengc99/patch-1
Update README.md
2020-02-16 19:24:48 -08:00
Andrew Peng
270de3ca6d
Update README.md
typo full -> for
2020-02-16 19:55:05 -06:00
atom0s
c2d54fa717 Bump the version number of the main app. 2019-05-28 19:13:41 -07:00
atom0s
e90195a0ec Merge branch 'master' of https://github.com/atom0s/Steamless 2019-05-28 19:11:43 -07:00
atom0s
5a10c527e2 Fixed a small bug with TLS callback parsing in the 64bit PE parser.
Added TLS callback support for the 3.0 64bit unpacker.
2019-05-28 19:11:29 -07:00
atom0s
9765d3e5b3 More code cleanup. (Adjusted some properties and other data to newer C# standards.) 2019-03-30 01:34:22 -07:00
atom0s
e54c95bea3 Updated copyright date ranges to include 2019 across the project.
Added new UseExperimentalFeatures option.
Added new dynamic offset reader for v2 stub parser to better support more files. (experimental feature)
General code cleanup.
2019-03-30 01:23:48 -07:00
atom0s
a0f856a050 Added support for an unknown variant of v2. 2018-07-20 19:02:26 -07:00
atom0s
aed8a86020 Added SteamStub 2.x variant D0 (header size) support.
Fixed some issues with the 2.x disassembler using incorrect types.
Updated the SharpDisasm.dll file to latest version.
2018-06-25 12:15:38 -07:00
atom0s
cdd3f56996 Updated the list of supported versions. 2018-04-15 23:00:09 -07:00
atom0s
168c75dc58 Bumped main executable version.
Updated all copyrights to include 2018.
2018-04-15 22:49:12 -07:00
atom0s
14c1ad2d0b Added support for new SteamStub v3.1.2 variant. (x64)
Updated all plugins to make use of reflection to get their versions from their assembly info.
Added ignore for Windows image cache file. (Thumbs.db)
2018-04-15 22:47:13 -07:00
atom0s
34afbba437 Merge branch 'master' of https://github.com/atom0s/Steamless 2017-12-16 18:07:34 -08:00
atom0s
57dba9916f Added support for new SteamStub v3.1.2 variant. (x86 only at this time. I do not have any 64bit test files.)
- Thanks to Gano for supplying test files.
 - Thanks to immorr for supplying test files.
Adjusted the default window size on startup so that the full plugin names are seen with default screen settings.
2017-12-16 18:07:07 -08:00
atom0s
18d34ede4d Added fallback pattern for variant 2.0 (x86). Fixes issue #6 2017-11-09 21:50:53 -08:00
atom0s
b3d5981784 Updated readme. 2017-01-26 14:36:55 -08:00
atom0s
d139df8dde Updated readme. 2017-01-25 21:47:53 -08:00
atom0s
bc1aaeb4ed Updated README to include 64bit supported notes. 2017-01-23 02:38:47 -08:00
atom0s
6aef1e268e Bumped the version number of Steamless. 2017-01-23 02:35:26 -08:00
atom0s
8c88ba51c3 Steamless.Unpacker.Variant30.x86
- Fixed issue with header size not unpacking properly for certain files.
  - Fixed issue with TLS callbacks not being unpacked properly when present.

Steamless.Unpacker.Variant30.x64
  - Added support for 64bit version of SteamStub Variant 3.0.

Steamless.Unpacker.Variant31.x64
  - Added support for 64bit version of SteamStub Variant 3.1
2017-01-23 02:34:02 -08:00
atom0s
a7fa5bb337 Begin initial work on supporting 64bit files.
- Implements the base 64bit file handling / reading.
 - This is untested and more or just less ported from the 32bit files. May have issues, will resolve as we get there.
2017-01-16 20:00:34 -08:00
atom0s
9a9aa8894d Fixed issue with variant 2.0 (x86) failing unpacking files with non-encrypted text section. 2017-01-16 17:55:30 -08:00
atom0s
5f213235cc Adjusted Steamless to use older Aero presentation library for Windows 7 support. 2017-01-11 01:59:46 -08:00
atom0s
23a9021a26 Readme update. 2017-01-06 02:26:27 -08:00