Jump to content
Tuts 4 You

1 Screenshot

This file is protected by the first version of VirtualGuard. VirtualGuard is an obfuscator I develop that I am trying to receive some stress testing on :)

I hope this VM makes people think at least a little bit; It's fairly close to 1:1, however I do believe I do some interesting things with comparisons and branching. Haven't seen it anywhere else. Let the record state this is not a "mod" of any other vm, so if you are interested in seeing some new stuff this is for you.

This sample contains some fairly simple branch offset mutations, at first glance it may be a slight "wtf moment" (at least I hope), but as soon as you figure out how the comparison system works it should be fairly easy to figure out.

Anyways, enough of the kind-of hints. Would love any feedback on this. The crack-me element is fairly basic, just entering a password. Would definitely be a first step to solving though, so would like to see how people work on figuring that out.

Good luck!

			Console.WriteLine("virtualguard test");
			Console.WriteLine("enter your password");
			char[] array = Console.ReadLine().ToCharArray();
			char[] array2 = new char[] { 'o', 'l', 'i', 'v', 'e', 's', '8' };
			bool flag = array.Length != array2.Length;
			if (flag)
			{
				Console.WriteLine("incorrect");
				Console.ReadKey();
				Environment.Exit(0);
			}
			for (int i = 0; i < array2.Length; i++)
			{
				bool flag2 = array[i] != array2[i];
				bool flag3 = flag2;
				if (flag3)
				{
					Console.WriteLine("incorrect");
					Console.ReadKey();
					Environment.Exit(0);
				}
			}
			Console.WriteLine("passed!");
			Console.ReadLine();

No modifications, custom protector.


User Feedback

Recommended Comments

There are no comments to display.

×
×
  • Create New...