Skip to content
/ Pluto Public
forked from bluesadi/Pluto

LLVM-Obfuscator based on LLVM 14.0.6

Notifications You must be signed in to change notification settings

thomasxm/Pluto

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pluto

English

Pluto is a code obfuscator built on top of LLVM 14.0.6 (more in the future...). In summary, Pluto converts the source code into a functionally equivalent but much more complicated form at compile-time, protecting your software from being cracked.

Installation

Download source code:

$ git clone https://github.com/bluesadi/Pluto.git

Ubuntu

Install z3 (required by MBAObfuscation):

$ sudo apt install libz3-dev 

Install Ninja and other dependencies:

$ sudo apt install ninja-build cmake python3 gcc g++

Build and install Pluto to ./install directory:

$ mkdir -p build
$ cmake -G Ninja -S . -B build \
        -DCMAKE_C_COMPILER="gcc" \
        -DCMAKE_CXX_COMPILER="g++" \
        -DCMAKE_INSTALL_PREFIX="install" \
        -DCMAKE_BUILD_TYPE=Release
$ ninja -j`nproc` -C build install

Or:

$ ./build.sh

Usage

On linux:

./clang -O3 -flto -fuse-ld=lld -mllvm -passes=mba,sub,idc,bcf,fla,gle -Xlinker -mllvm -Xlinker -passes=hlw,idc -target x86_64-w64-mingw32 notepad.c -o llvm_notepad3.exe -v -L/usr/lib/gcc/x86_64-w64-mingw32/12-win32

About

LLVM-Obfuscator based on LLVM 14.0.6

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • LLVM 39.7%
  • C++ 37.1%
  • C 11.6%
  • Assembly 10.1%
  • Objective-C 0.6%
  • Python 0.3%
  • Other 0.6%