Implementing various transformation passes in LLVM for code obfuscation making static analysis of a binary harder but not unfeasible. Read the paper

Follow this link for the implementation used in the paper.

For demonstration you can follow these two links: