Mutate Constants
This protection is similar to Constants Melt, however it mutates constants using maths expressions and flows them more.
Before Obfuscation
private void InitializeComponent()
{
this.button1 = new Button();
base.SuspendLayout();
this.button1.Location = new Point(284, 190);
this.button1.Name = "button1";
this.button1.Size = new Size(206, 73);
this.button1.TabIndex = 0;
this.button1.Text = "button1";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += this.button1_Click;
base.AutoScaleDimensions = new SizeF(8f, 16f);
base.AutoScaleMode = AutoScaleMode.Font;
base.ClientSize = new Size(800, 450);
base.Controls.Add(this.button1);
base.Name = "Form1";
this.Text = "Form1";
base.ResumeLayout(false);
}
// Token: 0x04000001 RID: 1
public string lol = "Hi";
After Obfuscation
private void InitializeComponent()
{
this.button1 = new Button();
base.SuspendLayout();
Control control = this.button1;
int num = 283;
object obj = sizeof(GCNotificationStatus);
int num2 = num + obj;
object obj2 = sizeof(sbyte);
int num3 = num2 - obj2;
object obj3 = sizeof(sbyte);
int num4 = num3 - obj3;
object obj4 = sizeof(sbyte);
int x = num4 - obj4;
int num5 = 188;
object obj5 = sizeof(char);
control.Location = new Point(x, num5 + obj5);
this.button1.Name = "button1";
Control control2 = this.button1;
int num6 = 204;
object obj6 = sizeof(char);
int width = num6 + obj6;
int num7 = 71;
object obj7 = sizeof(char);
control2.Size = new Size(width, num7 + obj7);
Control control3 = this.button1;
int num8 = -2;
object obj8 = sizeof(char);
control3.TabIndex = num8 + obj8;
this.button1.Text = "button1";
ButtonBase buttonBase = this.button1;
bool flag = false;
object obj9 = sizeof(GCNotificationStatus);
bool flag2 = flag + obj9 != null;
object obj10 = sizeof(sbyte);
bool flag3 = flag2 - obj10 != null;
object obj11 = sizeof(sbyte);
bool flag4 = flag3 - obj11 != null;
object obj12 = sizeof(sbyte);
buttonBase.UseVisualStyleBackColor = (flag4 - obj12 != null);
this.button1.Click += this.button1_Click;
base.AutoScaleDimensions = new SizeF(8f, 16f);
AutoScaleMode autoScaleMode = AutoScaleMode.None;
object obj13 = sizeof(GCNotificationStatus);
AutoScaleMode autoScaleMode2 = autoScaleMode + obj13;
object obj14 = sizeof(sbyte);
AutoScaleMode autoScaleMode3 = autoScaleMode2 - obj14;
object obj15 = sizeof(sbyte);
AutoScaleMode autoScaleMode4 = autoScaleMode3 - obj15;
object obj16 = sizeof(sbyte);
base.AutoScaleMode = autoScaleMode4 - obj16;
int num9 = 799;
object obj17 = sizeof(GCNotificationStatus);
int num10 = num9 + obj17;
object obj18 = sizeof(sbyte);
int num11 = num10 - obj18;
object obj19 = sizeof(sbyte);
int num12 = num11 - obj19;
object obj20 = sizeof(sbyte);
int width2 = num12 - obj20;
int num13 = 448;
object obj21 = sizeof(char);
base.ClientSize = new Size(width2, num13 + obj21);
base.Controls.Add(this.button1);
base.Name = "Form1";
this.Text = "Form1";
bool flag5 = -1 != 0;
object obj22 = sizeof(GCNotificationStatus);
bool flag6 = flag5 + obj22 != null;
object obj23 = sizeof(sbyte);
bool flag7 = flag6 - obj23 != null;
object obj24 = sizeof(sbyte);
bool flag8 = flag7 - obj24 != null;
object obj25 = sizeof(sbyte);
base.ResumeLayout(flag8 - obj25 != null);
}
// Token: 0x04000001 RID: 1
public string lol = "Hi";
Last updated
Was this helpful?