Do you have experience with binary code analysis? Is using tools like IDA second nature to you? Do you enjoy analyzing malware or finding security vulnerabilities? Then analyzing a large application like Office will give you a whole new set of challenges!
You need to understand data structures and algorithms involving dozens of functions from nothing but binary. If you belong to the few people in the world with these skills, then we are looking for you. Here is what we offer in a nutshell:
think-cell distinguishes itself from other Microsoft Office add-ins by having an intuitive user interface, smart algorithms that automate many tasks and, last but not least, a deep integration into the Office host application. To achieve this deep integration, we use the public APIs offered by Office and Windows whenever we can. Unfortunately, they do not let us do everything we want, so we add our own customization hooks to the Office and Windows binaries. When think-cell loads, it finds the code locations and installs its hooks.
Instead of using fixed addresses, we find code locations using machine code patterns to protect against minor changes. If an update to Office or Windows still breaks some of the patterns, think-cell automatically downloads and installs any available version with updated patterns.
Finding ways to achieve a desired customization is a truly Zen-like activity. It requires deep analytical skills, juggling vast amounts of information in one’s head and being able to quickly identify the most promising approaches.