This protection mangles code in the method so that it is harder for a reverse engineer to understand it.
protected override void Dispose(bool disposing)
{
bool flag = disposing && this.components != null;
if (flag)
{
this.components.Dispose();
}
base.Dispose(disposing);
}
protected override void Dispose(bool disposing)
{
bool flag = disposing && this.components != null;
for (;;)
{
IL_11:
int linkHoverColor = -1235685033;
for (;;)
{
switch (<Module>.set_LinkHoverColor(linkHoverColor))
{
case 0:
this.components.Dispose();
linkHoverColor = -1235685031;
continue;
case 1:
linkHoverColor = -1235685034;
continue;
case 2:
base.Dispose(disposing);
linkHoverColor = -1235685029;
continue;
case 3:
linkHoverColor = -1235685030;
continue;
case 4:
goto IL_11;
case 5:
linkHoverColor = (flag ? -1235685028 : -1235685030);
continue;
}
return;
}
}
}