После наложения защиты VmProtect перестает работать механизм static thread_local. Короткий тест приложен в архиве. В архиве файл test - это скомпилированный тест и защищенный VmProtect’ом, а test.orig - скомпилированный тест, но до защиты. test.orig выполняется нормально, а test падает по Abort trap: 6.
Версия VmProtect:
VMProtect Professional v 3.4.0 (build 1131) Copyright 2003-2019 VMProtect Software
Версия системы:
System Version: macOS 10.14.5 (18F132), Kernel Version: Darwin 18.6.0
vmprotect-static-thread_local.tar.gz (2.23 MB)