Exetools

Exetools (https://forum.exetools.com/index.php)
-   Source Code (https://forum.exetools.com/forumdisplay.php?f=46)
-   -   [C++] Steamless - SteamStub DRM Remover (https://forum.exetools.com/showthread.php?t=16557)

atom0s 01-30-2016 13:52

Quote:

Originally Posted by mr.exodia (Post 104111)
Try EA with an Origin unwrapped, my guess is you'd get hell from their lawyers :D

I think its a matter of how you approach the target and release your work. If your release is with the intent to promote piracy and destroy their brand, then yea they are going to definitely want to go after you.

In my case with Steamless, the intent of the project is a 'for-fun' educational project. The source is released with no intent to promote piracy but rather to run games DRM free on your own system, along with being able to debug the game easier.

With that, I don't release any binaries or assist with compiling them. I also do not assist with any form of removing the 2nd layer of the DRM (steam_api.dll) which requires an active Steam session to play the given game. (Which prevents piracy another step.)

I don't think Steam cares about my project though either way since its not doing any harm, I don't profit on it, and its not released in a binary form.

bigboss-62 02-13-2016 20:21

May be off-topic, but just for information for all exetools members, "Steamless" and "Steamless.NET" projects were now on gitlab and no more on github...

Here is the new link:
https://gitlab.com/atom0s/Steamless

atom0s 02-14-2016 04:10

Thanks bigboss-62, hadn't had a chance to post here.

GitHub has lost its meaning/vision to coorperate greed and I do not support that. (The CEO has changed the entire framework of the GitHub company because he took money over morals.) Because of that I do not want any of my stuff on GitHub supporting people that would take money over their coworkers.

All my stuff is moved over to GitLab now instead.

For this project, you can find the links here:
https://gitlab.com/atom0s/Steamless
https://gitlab.com/atom0s/Steamless.NET

(Keep in mind the Steamless.NET project is outdated and not supported anymore. Use the main Steamless project.)

atom0s 02-27-2016 02:02

I have updated various posts in this thread as I can now edit my posts. (Thanks admins!)
Main post is now updated to point to the proper location.

atom0s 09-07-2016 10:09

Steamless v3
http://i.imgur.com/wztFv5r.png

Info
I decided to rewrite Steamless with a UI since I had a lot of emails / private messages from people asking me how to use the old version etc. Along with that, the older version was not extendable or friendly to others developing unpackers. This new version is now fully done via plugins (Example plugin source code is included in the release) allowing others to easily create their own unpackers.

Download / Information
http://atom0s.com/forums/viewtopic.php?f=25&t=146

atom0s 01-23-2017 18:46

Steamless v3.0.0.4 - 64bit Support!

Been a while since I updated the thread here about my Steamless project. Since moving to Steamless v3 and releasing its source code, I have moved it back to Github (Gitlab saw little to no community input so I moved back to a more used network as much as I dislike Github..) and done some more changes.

Here is a quick review of the recent changes:
Code:

v3.0.0.1
 - PeFile32 - Added support for reading the ImageTlsDirectory section.
 - SteamStub Variant 3.1 (x86) - Adjusted the unpacker to attempt to use the Tls callback as the real OEP if general unpacking fails.

v3.0.0.2
 - Adjusted Steamless to use older Aero presentation library for Windows 7 support.

v3.0.0.3
 - Fixed issue with variant 2.0 (x86) unpacker failing to unpack files with non-encrypted code sections.

v3.0.0.4 - 64bit Support!
 - 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

The biggest change with 3.0.0.4 is that I have now added support for 64bit games that use the 3.0.0 and 3.0.1 variants of SteamStub. These are not very well tested as I have only gotten a few files from various people to test with. I have confirmed things work with RAGE and Fallout 4 personally as I own both games.

More info about Steamless can be found on my personal site here:
Code:

http://atom0s.com/forums/viewforum.php?f=25

mrfearless 01-24-2017 08:10

I've had a look through my steam library and have sent you a pm with some details that might be useful.

atom0s 01-24-2017 08:54

Quote:

Originally Posted by mrfearless (Post 108268)
I've had a look through my steam library and have sent you a pm with some details that might be useful.

Thanks, the more files to test and validate working the better. I'm also unsure of the 2.0 variant of SteamStub had 64bit support. So far I have not found any games that are 64bit and use it though, so it helps to determine if I missed support for any versions of the DRM yet.

So far every file that I have gotten that is 64bit, Steamless is able to unpack. So things are looking pretty solid for the 64bit support. :)

n00b 01-25-2017 16:39

I have an idea for ya mate - an idea that would actually make Steamless live even more upto its actual name; Steamless!
By all standards, I'd say the title of the tool itself is misleading - I mean, your tool clearly do unwrap the SteamStub, but at the same time it doesn't make any SteamStub protectee's any less reliant on Steam in the end (and emulators does not count).
How about making a few minor adjustments to the unwrapped executables so it doesn't rely on SteamAPI.dll or any equal Steam related DLL's?
Just a suggestion mate, and yes I know it won't work on all....

atom0s 01-25-2017 18:55

Quote:

Originally Posted by n00b (Post 108282)
I have an idea for ya mate - an idea that would actually make Steamless live even more upto its actual name; Steamless!
By all standards, I'd say the title of the tool itself is misleading - I mean, your tool clearly do unwrap the SteamStub, but at the same time it doesn't make any SteamStub protectee's any less reliant on Steam in the end (and emulators does not count).
How about making a few minor adjustments to the unwrapped executables so it doesn't rely on SteamAPI.dll or any equal Steam related DLL's?
Just a suggestion mate, and yes I know it won't work on all....

Removing the SteamAPI is not as simple as just removing a call and its done. Games that really integrate it for various things such as achievements, cloud storage and so on make use of a lot of calls and interfaces that makes nulling it out basically impossible. Instead, people use emulated versions of the dll's to fake the calls and such to just return null / 0 for the most part as needed to make the game think Steam is running when its not.

Given that this makes the game fully piratable, I opt to not include this in my project. I enjoy not getting sued. This is explained in the readme that people have to remove that last layer themselves if they plan to fully make the game run without Steam if it uses the SteamAPI.

atom0s 12-17-2017 10:34

Small update pushed, v3.0.0.5:
- Adds support for new v3.1.2 variant that has bee introduced to the world recently.
- Adjusts the default window width on initial startup.

32bit version of this new variant only supported so far, I don't have any new 64bit files to test with.

atom0s 04-16-2018 14:30

Steamless v3.0.0.6
Code:

Steamless.Unpacker.Variant31.x64
  - Added support for new SteamStub v3.1.2 variant.

Overall
  - 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)
  - Updated all copyrights to include 2018.
  - Updated the list of supported versions.

Mainly, 64bit support for the v3.1.2 variant has been added.

atom0s 03-30-2019 17:00

v3.0.0.7
Code:

Steamless.Unpacker.Variant20.x86
  - 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.

v3.0.0.8
Code:

General code cleanup.
Added new experimental features option.
Added new SteamStub 2.x variant offset dumper. (Experimental Feature)

The new SteamStub 2.x variant offset dumper should be able to dump most of the v2 files that would fail before. This newer feature is experimental for now and uses disassembling to pull the offsets instead. This has only been tested on a few files so far, but all seems to work ok. In order to use this feature, you must check the new 'Use Experimental Features' box before attempting to unpack a file.

Latest version:
Code:

https://github.com/atom0s/Steamless/releases/latest

atom0s 05-29-2019 10:21

v3.0.0.9
  • Fixed a small bug with TLS callback parsing in the 64bit PE parser.
  • Added TLS callback support for the 3.0 64bit unpacker.

Code:

https://github.com/atom0s/Steamless/releases/latest

atom0s 09-24-2021 14:12

Steamless v3.0.0.10
  • Updated copyright date ranges across the project.
  • Fixed issue with memory errors due to incorrect structure mapping handling.

Steamless v3.0.0.11
  • Renamed SteamStub Variant 2.0 to 2.1. (This is not technically the first version of 2.0.)
  • Added support for real SteamStub Variant 2.0 (Fixes/closes #37)
  • General code cleanup.
  • Adjusted Paypal URLs.


Steamless v3.0.0.12
  • Fixed 2.1 (x86) unpacker using the wrong encryption size when the .text section is encrypted. (Fixes #57)

Get the latest version here: https://github.com/atom0s/Steamless/releases/latest


All times are GMT +8. The time now is 11:29.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Always Your Best Friend: Aaron, JMI, ahmadmansoor, ZeNiX