вылет при бросании исключения в 32-битном приложении

MSVC10, свежесозданный консольный проект
VMProtect 2.13, опции защиты дефолтные

после обработки VMProtect’ом вот этот простейший код вылетает во время throw:

int _tmain(int argc, _TCHAR* argv[])
{
	printf("hello\n");

	VMProtectBeginMutation("testsection");

	try {
		printf("in try\n");
		throw 1;
	}
	catch(int) {
		printf("in exception\n");
	}

	printf("after try\n");

	VMProtectEnd();

	printf("bye-bye\n");

	return 0;
}

Вылет происходит только при использовании crt во внешней библиотеке (опция Project Properties\Configuration Properties\C/C++\Code Generation\Runtime library=Multi-threaded DLL).
При статической линковке не вылетает (Runtime library=Multi-threaded).

Присылайте тестовый проект (оригинал ЕХЕ) на info@vmpsoft.com

Извиняюсь за задержку…Вот здесь тестовый проект и бинарники

Проблема возникает из-за того, что информация о try блоке находится выше чем начало маркера, поэтому VMProtect ничего не знает о try и не может корректно обработать все ветки try/catch, в результате чего защищенное приложение падает. Если защищать эту функцию не через маркер, а по имени, то проблем нет.

Проблема будет решена в версии 3.0