Constant Disintegration

This protection disintegrates the integers of your application in several arithmetic, logical and conditional operations dynamically so that the original value cannot be obtained.

Developer Startup Enterprise


Parameters

  • Intensity: Determine the amount of operations that will be generated to disintegrate the values.
  • Type of operations: It allows to select what type of operations will be used to disintegrate the values.
    • Arithmetic
    • Matehmatics Startup
    • Conditionals
    • Logic
    • External
    • Conversion
    • Disitegration
    • Native Enterprise
  • Strings: Determines if teh strings and text of the application should be disintegrated.

Modes

Normal: Disintegrates integer constants based on dynamic operations.


Code example

  • Before:
Program.n += 3 * args.Length;
Console.WriteLine($"Hello World ! Current processes {n}");
Console.ReadKey();
  • After:
int[] array = new int[] {
    4,
    1,
    296526,
    767790,
    -517058,
    517058,
    38748320
};
checked {
    object[] array4 = new object[array3[num4 - num5]];
    array4[string.Empty.Length] = ( < Module >.VARFLAG_FREPLACEABLE[4] | 1189635 % 475854) - <
    Module >.VARFLAG_FREPLACEABLE[(94010 < 500724) ? 0 : 537936];
    array4[array[ " ͕ ".Length] * ( - 160764 + 829328 > > Convert.ToInt32( " 13 ", 16))] = " ෣ ᦐ ";
    array4[(Convert.ToInt32( " 1000011100000110110 ", 2) | 250883 * 2) ^ Marshal.SizeOf(typeof(MoveBufferArea))] = 
    unchecked(Marshal.SizeOf(typeof(__9__2_0)) - ((64135 ^ 842523) + checked(438545 - 732342)));
    int num6;
    if (((18665 % 7466 > Convert.ToInt32( " fffd0bb9 ", 16)) ? 1 : 0) == 0 / 2133) {
        num6 = -767297 - -110690;
    }
    else {
        num6 = ~ - 133694;
    }
    switch (unchecked(checked(unchecked(570830 - -870451) + ConcurrentDictionary__2.TargetedPatchingOptOutAttribute) 
    + ~ (~ - 988634))) {
    case 0:
        num33 = (71311664 | -1900016382 | ((51665 == 51665) ? -206181069 : 495292));
        break;
    case 1:
        {
            int num35;
            switch (( - 79617 - -79617) % < Module >.SafeLocalAllocHandle[1]) {
            case 0:
                {
                    int num34;
                    if ( - 58016 > 876632) {
                        num34 = 602830;
                    }
                    else {
                        num34 = 2;
                    }
                    num35 = num34;
                    break;
                }
            case 1:
                num35 = (790119523 | -656071033);
                break;
            }
            num33 = num35;
            break;
        }
    }
    array7[num33] = (int) array2[((62301 < 630141) ? -255426 : -270726) + (83010 | 172416)]; <
    Module >.get_InheritanceFlags(ref str3, array7);
}
Console.WriteLine(str + str2 + str3 + (ConcurrentDictionary__2.add_ReflectionOnlyNamespaceResolve * checked((array[6] > >
(6 | 4)) - unchecked(833425 + -830673) * Convert.ToInt32( " 334 ", 8))).ToString());
Console.ReadKey();

Exclusions

  • Exclude with attribute

Include this attribute in your source code:

[Obfuscation(Exclude = true, Feature = "ConstantsMutation")]
  • Exclude from the interface

You can exclude this protection from the methods or classes you want.


Compatibility

Previous
Anti Dump