Page 1 of 1
Не работают ексепшены в 64-битном приложении после мутации
Posted: Tue Dec 10, 2019 2:22 pm
by Cyber
Здравствуйте,
Столкнулись с проблемой когда 64-битное приложение вылетает при throw или catch внутри мутированного кода. При этом такое же 32-битное приложение отрабатывает нормально.
Отключены все опции защиты кроме мутации.
Тестовый проект, exe и vmp файлы в аттаче.
Re: Не работают ексепшены в 64-битном приложении после мутации
Posted: Tue Dec 10, 2019 2:48 pm
by Admin
У вас проект пустой. Где у вас мутация включена?
Re: Не работают ексепшены в 64-битном приложении после мутации
Posted: Tue Dec 10, 2019 2:55 pm
by Cyber
В исходниках. Для упаковки используем консольную версию VMProtect (VMProtect_Con.exe <input file> <output file> -pf <vmp file>)
Code: Select all
...
VMProtectBeginMutation("main-1");
...
Re: Не работают ексепшены в 64-битном приложении после мутации
Posted: Tue Dec 10, 2019 3:26 pm
by Cyber
Похоже что поведение программы зависит от билда. Вот в этом варианте (см. бинарник Debug\vmprotect_test.exe) она зацикливается и бесконечно выдает такое:
Code: Select all
...
testing catch inside protected block...
throwing now
catch 2
testing catch inside protected block...
throwing now
catch 2
testing catch inside protected block...
throwing now
catch 2
...
После перекомпиляции поведение меняется. Может вылететь на первой части теста, может на второй, также был момент когда вторая часть теста не выпонялась совсем, буд-то ее не существует.
Re: Не работают ексепшены в 64-битном приложении после мутации
Posted: Tue Dec 10, 2019 4:39 pm
by Cyber
При использовании режима Ultra (VMProtectBeginUltra), консольная версия вылетает c access violation в конце процесса упаковки. Crash dump прилагаю.
UPD: GUI версия тоже
Re: Не работают ексепшены в 64-битном приложении после мутации
Posted: Thu Jan 16, 2020 1:29 pm
by Cyber
Скажите можно ли ожидать каких то обновлений по этому вопросу? или хотя бы сроки когда возможно решение.
Спасибо.