A meta-model for software protections and reverse engineering attacks