1
0
Fork 0
fast launcher for SWL
Find a file
2025-07-21 18:25:38 -07:00
assets first! :333 2025-07-21 16:45:30 -07:00
src fix incorrect dx9 executable name, thanks polin :3 2025-07-21 17:34:26 -07:00
.gitignore first! :333 2025-07-21 16:45:30 -07:00
build.rs first! :333 2025-07-21 16:45:30 -07:00
Cargo.lock first! :333 2025-07-21 16:45:30 -07:00
Cargo.toml first! :333 2025-07-21 16:45:30 -07:00
compile.sh first! :333 2025-07-21 16:45:30 -07:00
README.md add missing dx9 instructions to the readme, oopsie :3 2025-07-21 18:25:38 -07:00

SWL-beanz 🦀

A fast launcher for Secret World Legends that bypasses Funcom's bloated patcher by reverse-engineering their authentication system - who the hell needs a 200MB launcher to run a game that hasn't been updated since 2019? LMAOOO

Why This Exists

Secret World Legends is effectively abandonware but still has a launcher that:

  • Downloads nothing (game hasn't updated in years)
  • Takes 30+ seconds to "validate" files that never change
  • Uses 200MB+ of RAM to display a tiny window

This launcher does the same job in ~1MB and launches instantly.

🐑 Regular Users (TLDR;)

You just want to play the damn game without Funcom's launcher hell? Smart choice.

Download & Install

  1. Grab the binary from the Releases page
  2. Copy swl-beanz.exe to your Secret World Legends installation directory
  3. Double-click it to launch the game
  4. Profit! No more waiting for pointless validation

Steam Integration

Right-click SWL in Steam → Properties → Launch Options:

"C:\path\to\swl-beanz.exe" %command%

For DX9 add --dx9 after the bin path:

"C:\path\to\swl-beanz.exe" --dx9 %command%

Steam will call your launcher instead of Funcom's bloated piece of garbage. No popups, no delays, no bullshit.

DirectX 9 on non-steam version

If you're still running the game on dx9 for whatever potato reason, you need to add the --dx9 argument so it launches the correct version!

Create a shortcut (hello, desktop!) then right click → Properties and add --dx9 to the the target so it looks like:

"C:\path\to\swl-beanz.exe" --dx9

and lauch from there \o/

That's It!

You're done. Go play the game while the "pro" users below argue about compile flags and dependency management. Sometimes ignorance really is bliss.. :333

🔧 Pro Users (so you think you're better than binaries)

Oh, you don't trust precompiled binaries? Fair enough - this is reverse-engineered crypto bypass code after all. Time to get your hands dirty with some proper cross-compilation.

Prerequisites

You'll need balls of steel and:

  • Rust toolchain (because we have standards)
  • MinGW-w64 for Windows cross-compilation
  • Basic understanding of why Funcom's launcher is an insult to software engineering

Install Cross-Compilation Target

Add Windows target to your civilized Linux setup

rustup target add x86_64-pc-windows-gnu

Install MinGW because Windows can't even compile for itself properly LOLOL

run0 pacman -S mingw-w64-gcc    # arch users master race :333
sudo apt install mingw-w64-gcc  # for the Ubuntu peasants

Build the Bypass

Clone this beautiful piece of reverse engineering

git clone https://forge.meowmeowbeanz.org/swl/swl-beanz.git
cd swl-beanz

And let the magic happen \o/

./compile.sh

Technical Deep Dive

What This Does

  • Bypasses launcher validation using reverse-engineered TEA cipher encryption
  • Calculates file integrity hashes to satisfy the game's security checks
  • Generates time-based bypass keys that fool the authentication system
  • Launches directly without waiting for patcher downloads/validation
  • No Windows Defender tantrums (unlike Go binaries)
  • Proper Windows icon (after escaping resource embedding hell)

How It Works

The original launcher uses a TEA (Tiny Encryption Algorithm) cipher with hardcoded keys to validate game integrity. This launcher:

  1. Generates a time-seeded encryption key using the same algorithm
  2. Calculates MD5 hash of the game executable
  3. Launches the game with forged --key and --clienthash parameters
  4. Game accepts the credentials and runs normally

Reverse Engineering Details

  • TEA cipher keys: [0x5BCE568E, 0xFB2E8CBC, 0xA324E6D8, 0xF22BF865]
  • Time-seeded vectors: Uses Unix timestamp for encryption input
  • MD5 integrity check: Calculated from actual game executable
  • Resource embedding: Uses embed-resource crate (winres is broken garbage)

This doesn't modify game files, bypass DRM, or enable piracy. It just skips the pointless launcher validation using the same authentication the game expects. If Funcom has a problem with this, maybe they should have made a launcher that doesn't suck. Or you know, not abandon the game in the first place?

Funcom - putting the FU in fun since 1993

Credits

  • Xinda (RIP) - provided the original TEA cipher clue
  • funcom "coders" - literally reverse engineered the key generation on the first try! TROLOLOL
  • Everyone who suffered through Go's .syso hell - your pain was not in vain

Built with Rust because some of us have standards 🦀