I saw the ADVobfuscator project which has a finite state machine obfuscation for function calls. However, this functionality requires Boost which I cannot use for a certain project. Is there a standard C++ way of writing templates to obfuscate arbritrary function calls in a similar fashion as this library? Or maybe any hints towards accomplishing this?
function_to_protect("did", "again");
OBFUSCATED_CALL(function_to_protect, "did", "again");
The goal is that calls/references to the protected function/library do not show up in disassemblers like IDA Pro or Ghidra.
See these slides for illustration.
I do not want to define structs or function wrappers similar to this answer since it's far less elegant than wrapping calls into a macro. Plus, the references to the functions still show up at initialization.
