Page 1 of 1

VMProtect 3.0.6 stuck on saving and cost over 19GB ram

Posted: Sat Oct 24, 2015 8:08 pm
by banxian
the input file is a mach-o executable, about 34.6MB. after I click compile, a 34.7MB temporary file appeared (with cx5lm8 extension), and progress is keep at "Saving 100%" after 30 minutes.
in windows task manager, memory used by vmprotect increase to 19.9G
when I click "cancel" on progress popup, vmprotect is still eating my memory and refuse to cancel the "saving" processes.
seems cancel signal was losted from UI to backend threads.

project options:
Memory protection: Yes
Pack the output file: Yes
Detection: Nither
Strip debug information: Yes

only one function is protected in this project.

other settings seems using default value.
I am using VMProtect Ultimate 3.0.6 on Windows 7 x64, and have 32GB physics memory.

Re: VMProtect 3.0.6 stuck on saving and cost over 19GB ram

Posted: Sat Oct 24, 2015 9:30 pm
by drlai
where did you get the vmp 3.0.6 ?

I only have 3.0.5

I want to try new versions as well :)

Re: VMProtect 3.0.6 stuck on saving and cost over 19GB ram

Posted: Sun Oct 25, 2015 6:03 am
by Admin
Could you send us a test example (original binary + VMP files) that shows your problem?

Re: VMProtect 3.0.6 stuck on saving and cost over 19GB ram

Posted: Sun Oct 25, 2015 5:44 pm
by banxian
my original app is a unreleased jailbreak tool.
but I got it reproduced on an empty demo.
I guess problem is LC_UNIXTHREAD load command.

this demo app have two extra sections and build with xcode 6.3.2 on yosemite with deploy target 10.7.

here is the link
https://www.sendspace.com/file/uhqxqa
I'll send your pw by PrivateMessage later

Re: VMProtect 3.0.6 stuck on saving and cost over 19GB ram

Posted: Mon Oct 26, 2015 8:59 am
by Admin
The fixed version (3.0.6.530) sent to your email. Please check it.

Re: VMProtect 3.0.6 stuck on saving and cost over 19GB ram

Posted: Mon Oct 26, 2015 10:42 am
by banxian
Thank you, it's working on my app now.
and then I found a new bug.

I have two function, funca, funcb.
funca have lower address and funcb followed by funca. (verified in IDA Pro)

my funca is ending with a _assert_rtn call in assembler,
and when I try to encrypt both funca and funcb, the disassembler in VMProtect will try to assign funca+funcb's code space to funca, and then stop with "funcb: address already used by funica" error.
if I only encrypt funca, there no error generated, but output file seems freezed on execute funcb.
manually set end of funca will generate wrong files too.

Re: VMProtect 3.0.6 stuck on saving and cost over 19GB ram

Posted: Mon Oct 26, 2015 11:16 am
by Admin
Please send us a test example that shows your problem.

Re: VMProtect 3.0.6 stuck on saving and cost over 19GB ram

Posted: Mon Oct 26, 2015 12:26 pm
by banxian
both _assert_rtn and _stack_chk_fail will break VMProtect's analyser.
same password used for this file.

by the way, if I use "set end of function" on body, seems external address at tail automatic grayed out (with - mark) in same time.
but I think only the external item not used in function should be gray out,.

Re: VMProtect 3.0.6 stuck on saving and cost over 19GB ram

Posted: Mon Oct 26, 2015 2:44 pm
by banxian
I have a version of my app given a "Runtime error at WriteToFile" error durning saving startup code step.
I can't reproduced it by demo binary. maybe something wrong on mach-o header alternative process, for eg, no space to inject new segment/section