Uninformed: Informative Information for the Uninformed

Vol 1» 2005.May

Loop Detection Using IDA Plug-ins

In every algorithm and theory there exists small problems. It is important to understand the algorithm presented

The plug-in described in this document uses the Function Analyzer Class (function_analyzer) that was developed by Pedram Amini (http://labs.idefense.com) as the base class. The Loop Detection (loop_detection) class uses inheritance to glean its attributes from Function Analyzer. The reason inheritance is used is primarily for ease of development. Inheritance is also used so that instead of having to re-add functions to a new version of Function Analyzer, the user only has to replace the old file. The final reason inheritance is used is for code conformity, which is accomplished by creating virtual functions. These virtual functions allow the user to override methods that are implemented in the Function Analyzer. This means that if a user understands the structure of function analyzer, they should not have a hard time understanding loop detections structure.