38 lines
969 B
Markdown
38 lines
969 B
Markdown
# swsf_bruteforce
|
|
|
|
A performant, multithreaded, brute-forcer for scrambled cheat codes in Star Wars: Starfighter (JP) and Star Wars: Jedi Starfighter, written in modern C++20.
|
|
|
|
# Building
|
|
|
|
You need:
|
|
|
|
- A C++20 compiler (MSVC 2022, Clang, GCC)
|
|
- Boost (I tested with 1.81, should work fine with 1.82 onwards)
|
|
- CMake
|
|
|
|
## Windows
|
|
|
|
```
|
|
cmake -Bbuild -GNinja -DCMAKE_BUILD_TYPE=Release
|
|
cmake --build build
|
|
```
|
|
|
|
## Linux
|
|
|
|
```
|
|
$ cmake -Bbuild -GNinja -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_CXX_FLAGS="-march=native -mtune=native"
|
|
$ cmake --build build
|
|
```
|
|
|
|
# Usage
|
|
|
|
`./swsf_bruteforce [-X] -s [START_LENGTH] -e [LENGTH] 0xABCDABCD`
|
|
|
|
where:
|
|
|
|
`-X` enables exact length, the value of -s is used and only that length is checked.
|
|
`-s [START_LENGTH]` is the guessed start bound (greater than 2, less than the value of `-e`)
|
|
`-l [END_LENGTH]` is the guessed end bound (greater than the value of `-s`, less than or equal to 8)
|
|
`0xABCDABCD` is the hash to use
|
|
|