Marker Count identify error
Posted: Thu Jun 30, 2011 5:35 am
Hello, Administrator, I am a registered VMProtect user. I have sevel questions when using your product,following is my source code:
situation1:
#include <Windows.h>
#include "VMProtectSDK.h"
void func(int param)
{
VMProtectBegin("func");
if(param > 100)
{
_tprintf(TEXT("<100"));
return;
}
else
{
_tprintf(TEXT(">100"));
}
VMProtectEnd();
VMProtectBegin("func2");
switch(param)
{
case 0:
MessageBoxA(0,"Begin",0,0);
return;
case 1:
MessageBoxA(0,"Begin1",0,0);
break;
default:
break;
}
VMProtectEnd();
}
int _tmain(int argc, _TCHAR* argv[])
{
MessageBoxA(0,0,0,0);
IsDebuggerPresent();
func(10);
return 0;
}
When I open my released .exe file, VMProtect identifies only the first Marker "func" in function func,can you tell me why?
The Debuged edition is right.
The second question,source code:
situation 2:
void func(int param)
{
VMProtectBegin("func");
if(param > 100)
{
_tprintf(TEXT("<100"));
return;
}
else
{
_tprintf(TEXT(">100"));
}
switch(param)
{
case 0:
MessageBoxA(0,"Begin",0,0);
return;
case 1:
MessageBoxA(0,"Begin1",0,0);
break;
default:
break;
}
VMProtectEnd();
}
int _tmain(int argc, _TCHAR* argv[])
{
VMProtectBegin("_tmain");
MessageBoxA(0,0,0,0);
IsDebuggerPresent();
VMProtectEnd();
func(10);
return 0;
}
When I open the released .exe file ,VM only identifies the Marker "_tmain" in function _tmain, while the marker "func" in function func() is ignored.
Can you tell me why?
situation1:
#include <Windows.h>
#include "VMProtectSDK.h"
void func(int param)
{
VMProtectBegin("func");
if(param > 100)
{
_tprintf(TEXT("<100"));
return;
}
else
{
_tprintf(TEXT(">100"));
}
VMProtectEnd();
VMProtectBegin("func2");
switch(param)
{
case 0:
MessageBoxA(0,"Begin",0,0);
return;
case 1:
MessageBoxA(0,"Begin1",0,0);
break;
default:
break;
}
VMProtectEnd();
}
int _tmain(int argc, _TCHAR* argv[])
{
MessageBoxA(0,0,0,0);
IsDebuggerPresent();
func(10);
return 0;
}
When I open my released .exe file, VMProtect identifies only the first Marker "func" in function func,can you tell me why?
The Debuged edition is right.
The second question,source code:
situation 2:
void func(int param)
{
VMProtectBegin("func");
if(param > 100)
{
_tprintf(TEXT("<100"));
return;
}
else
{
_tprintf(TEXT(">100"));
}
switch(param)
{
case 0:
MessageBoxA(0,"Begin",0,0);
return;
case 1:
MessageBoxA(0,"Begin1",0,0);
break;
default:
break;
}
VMProtectEnd();
}
int _tmain(int argc, _TCHAR* argv[])
{
VMProtectBegin("_tmain");
MessageBoxA(0,0,0,0);
IsDebuggerPresent();
VMProtectEnd();
func(10);
return 0;
}
When I open the released .exe file ,VM only identifies the Marker "_tmain" in function _tmain, while the marker "func" in function func() is ignored.
Can you tell me why?