I've been reversing a regularly updated application with various tools (mosty IDA, Olly) for a while now, and I always wondered how to document my findings. For example function names, static variables, relations, namespaces, fields, etc...maybe even changes trough version changes, but that's just an extra.The best thing I came up with is a local MediaWiki, where I create a new page/definition for every function, and stuff, but it's obviously pain in the ass, nearly impossible to maintain. There must be some industry standard right? I wonder if you guys know / use any tool like for this issue.Edit:Here is the structure I'm using now with in the Wiki :If you know another solution, I'm looking forward for your answer as well :)
Documenting reversed application
ida;tools;history
The way this usually works in my experience is that if you have a documentation need outside of the IDB database it's generally because you're trying to share information with other reverse engineers. For this, you may want to take a look at collabREate or the IDA toolbag. The unfortunate truth is that a lot of these projects tend to slow down or die completely due to a lack of interest from the original authors.Now if your problem is completely centered around documentation, what I also find fairly common is to have header files with the function, class and structure definitions in them with doxygen- or JavaDoc-formatted comments in them. You then use doxygen to generate automatic documentation and class diagrams. This way the documentation becomes completely living, self-maintaining and easily navigated.