mirror of
https://github.com/vtil-project/VTIL-Core
synced 2026-08-17 08:23:03 -04:00
Added a more complex VMProtect Ultra test.
This commit is contained in:
parent
1773dcd7b0
commit
fd8f294be2
2 changed files with 33 additions and 0 deletions
33
Sample Routines/vmprotect_2.c
Normal file
33
Sample Routines/vmprotect_2.c
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
#pragma pack(push, 1)
|
||||
struct much_complex_object
|
||||
{
|
||||
uint32_t a;
|
||||
uint8_t b;
|
||||
uint8_t c;
|
||||
uint16_t d;
|
||||
|
||||
__declspec( noinline ) int32_t wow()
|
||||
{
|
||||
return c * b + a;
|
||||
}
|
||||
};
|
||||
#pragma pack(pop)
|
||||
|
||||
__declspec( dllexport, noinline ) uint64_t test_entry_point( uint64_t r )
|
||||
{
|
||||
much_complex_object wow = {
|
||||
r & 0xFF00FF00,
|
||||
(r >> 16) % 0xA3,
|
||||
r & 0x000000FF,
|
||||
uint16_t( r * r )
|
||||
};
|
||||
|
||||
volatile int lol = wow.wow();
|
||||
if ( printf( "{%d}!\n", lol ) && lol < 5 )
|
||||
return wow.a & ~lol + 0x3545fa1;
|
||||
|
||||
for ( int i = 0; i < 4; i++ )
|
||||
lol = ( ( lol ^ i ) * 0x100003B );
|
||||
|
||||
return lol;
|
||||
}
|
||||
BIN
Sample Routines/vmprotect_2.ultra.vtil
Normal file
BIN
Sample Routines/vmprotect_2.ultra.vtil
Normal file
Binary file not shown.
Loading…
Add table
Add a link
Reference in a new issue