Giter VIP home page Giter VIP logo

obfus.h's Introduction

obfus.h

obfus.h is a macro-only library for compile-time obfuscating C applications, designed specifically for the Tiny C (tcc). It is tailored for Windows x86 and x64 platforms and supports almost all versions of the compiler.

  • ๐Ÿ” Function Call Obfuscation: Confuse function calls to make your code less readable to unauthorized eyes.
  • ๐Ÿ›ก๏ธ Anti-Debugging Techniques: Built-in mechanisms to prevent code analysis during runtime.
  • ๐Ÿ”„ Control Flow Code Mutation: Turns code into spaghetti, making it difficult to parse conditions and loops.
  • ๐Ÿšซ Anti-Decompilation Techniques: Makes many popular decompilers useless visually breaking their output.

Usage

Integrating obfus.h into your project is a simple process. Just include the following line in your code:

#include "obfus.h"

This will automatically obfuscate your code during compilation, ensuring protection and confidentiality of your intellectual property.

Available options for protection configuring:

// Additional options
#define cflow_v2       1  // More powerful Control Flow obfuscation (slowly!)
#define antidebug_v2   1  // Use better dynamic anti-debugging protection

// Disabling default features
#define no_cflow       1  // Don't use Control-Flow obfuscation
#define no_antidebug   1  // Don't build in debugging protection

or use it with compiler args:

tcc "app.c" -w  -D no_cflow  -D antidebug_v2

โš ๏ธ When compiling an application with obfuscation, use the -w argument to suppress warnings. Otherwise, the console will display numerous intimidating logs that have no impact on the final result. There's no need to be alarmed by them.

Example

// Let's obfuscate your code!

#include <stdio.h>

// #define no_cflow      1
// #define no_antidebug  1
#define antidebug_v2 1
#include "obfus.h"

void main() {
    char *out = malloc(256);

    strcpy(out, "Hello, world!");

    if (out) {
        printf(out);
    } else {
        printf("Error!");
    }
}

Version

The latest version of Tiny C (0.9.27) is recommended for use. Unfortunately, some versions of the compiler do not support the functionality needed to completely obfuscation.

obfus.h's People

Contributors

dosx-dev avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.