in reply to Obfuscating method calls

I guess you could build an array of code references to all the methods called in the code and then call the methods as

$coderefs[n]->( $obj, other parms );

Reverse engineering a name from an array index would make life awkward for the deobfuscator.

Whether it is possible to reliably track down the package from which the method will be invoked in order to get the address, given inheritance etc. is another question.

Devious thoughts about overiding AUTOLOAD float through my brain too, but I'll leave them unpursued.


Examine what is said, not who speaks.
"Efficiency is intelligent laziness." -David Dunham
"When I'm working on a problem, I never think about beauty. I think only how to solve the problem. But when I have finished, if the solution is not beautiful, I know it is wrong." -Richard Buckminster Fuller