Here is an example of how to transform a function bar in a program foo.c using Tigress. The first transformation flattens the code, the second turns the flattened function into an interpreter:
Tigress has been used both for academic and commercial projects. You can try out Tigress by downloading and installing the binary from our website. If you like what Tigress does and decide to use it in a commercial project ("commercial" being very liberally defined), you will need a license from the University of Arizona. There is no restriction on how long you can try it out - but before you deploy it in any way, you will need to contact us about a license.
If Tigress doesn't exactly fit what you need, if you're targeting a different platform, for example, or need a feature we currently do not support, please do not hesitate to get in touch. Tigress is designed to be eminently extensible and easily portable, and we're happy to help.
We are also available for consulting on your project.