Reverse engineering, main code: Lars-Dominik Braun <PromyLOPh@gmail.com>