It's reverse engineered using IDA and such. I think even the class/functions names are the same since the developer forgot to strip one of the binaries.
As much as I support this kind of project, I would say they are legally screwed. But they already knew that when they started.