But the point is, my co-worker couldn't crack it when it was protected with Themida. He says it takes time and very advanced reversing skills and some part of the virtualized code depends on the license key, so without the key, it's impossible to execute it and with the key, it's still virtualized and it's extremely hard to reverse this process, there are no known tools for it (aka devirtualizers), I double-checked on this.
With your protection, he took the application to the IDA, found the license checking code and he patched it in literally 5 minutes in front of my eyes and dropped jaw, I didn't know cracking LimeLM would be that easy! Why it doesn't contain any counter-measures?
So what's the advantage of using LimeLM when it can be cracked within minutes versus protection that lasts in months or even years uncracked?
Isn't it obvious LimeLM is just a simple licensing without any benefit of protecting an application against cracking?
How your solution would help us to protect the algorithms in our software against stealing if LimeLM doesn't offer any form of code protection, obfuscation or virtualization?
I'm new in this dev team, my friend is much more experienced in this matter, but it seems LimeLM doesn't solve any problems our software might face, like cracking, stealing IP and bypassing licensing.
I just want to understand - how can it help, when it doesn't help at all because it doesn't even contain any security features or components?