Refactors are to better utilize Adventure API Removed Anti-Backdoor. May add it back when I can find a system that isn't trivial to bypass. Extras have been improved and now have their own system.
369 lines
8.7 KiB
JSON
369 lines
8.7 KiB
JSON
{
|
|
"Settings": {
|
|
"Input": "./build/libs/Sentinel-1.0.0.jar",
|
|
"Output": "./build/libs/Sentinel-1.0.0-alfa.jar",
|
|
"Libraries": [
|
|
"./deps"
|
|
],
|
|
"Exclusions": [
|
|
"com/",
|
|
"io/",
|
|
"me/trouper/sentinel/data/",
|
|
"me/trouper/sentinel/packetevents/",
|
|
"me/trouper/sentinel/nbtapi/",
|
|
"org/",
|
|
"net/",
|
|
"module-info"
|
|
],
|
|
"MixinPackage": [
|
|
"net/spartanb312/client/mixins/"
|
|
],
|
|
"DumpMappings": false,
|
|
"Multithreading": true,
|
|
"PrintTimeUsage": true,
|
|
"ForceUseComputeMax": false,
|
|
"LibsMissingCheck": true,
|
|
"CustomDictionaryFile": "./obf/dictionary.txt",
|
|
"DictionaryStartIndex": 0,
|
|
"CorruptOutput": false,
|
|
"FileRemovePrefix": [],
|
|
"FileRemoveSuffix": []
|
|
},
|
|
"UI": {
|
|
"DarkTheme": true
|
|
},
|
|
"SourceDebugRemove": {
|
|
"Enabled": true,
|
|
"SourceDebug": true,
|
|
"LineDebug": true,
|
|
"RenameSourceDebug": true,
|
|
"SourceNames": [
|
|
"AhAhAhYouDidntSayTheMagicWord.java",
|
|
"SentinelIsClosedSource.java",
|
|
"YourHonor-FreeBirdWasPlaying.kt",
|
|
"Officer-IDropKickedThatChildInSelfDefense.kt",
|
|
"NotTheBees.java",
|
|
"Youve-been-trolled.java",
|
|
"tuco-get-out.mp3.kt"
|
|
],
|
|
"Exclusion": []
|
|
},
|
|
"Shrinking": {
|
|
"Enabled": true,
|
|
"RemoveInnerClass": true,
|
|
"RemoveUnusedLabel": true,
|
|
"RemoveNOP": false,
|
|
"AnnotationRemovals": [
|
|
"Ljava/lang/Override;"
|
|
],
|
|
"Exclusion": []
|
|
},
|
|
"KotlinOptimizer": {
|
|
"Enabled": false,
|
|
"Annotations": true,
|
|
"Intrinsics": true,
|
|
"IntrinsicsRemoval": [
|
|
"checkExpressionValueIsNotNull",
|
|
"checkNotNullExpressionValue",
|
|
"checkReturnedValueIsNotNull",
|
|
"checkFieldIsNotNull",
|
|
"checkParameterIsNotNull",
|
|
"checkNotNullParameter"
|
|
],
|
|
"ReplaceLdc": true,
|
|
"IntrinsicsExclusion": [],
|
|
"MetadataExclusion": []
|
|
},
|
|
"EnumOptimize": {
|
|
"Enabled": false,
|
|
"Exclusion": []
|
|
},
|
|
"DeadCodeRemove": {
|
|
"Enabled": false,
|
|
"Exclusion": []
|
|
},
|
|
"ClonedClass": {
|
|
"Enabled": false,
|
|
"Count": 2048,
|
|
"Suffix": "-on-top",
|
|
"RemoveAnnotations": true,
|
|
"Exclusion": []
|
|
},
|
|
"TrashClass": {
|
|
"Enabled": false,
|
|
"Package": "sentinel/",
|
|
"Prefix": "NUKE_",
|
|
"Count": 2048
|
|
},
|
|
"HWIDAuthentication": {
|
|
"Enabled": false,
|
|
"OnlineMode": true,
|
|
"OfflineHWID": [
|
|
"Put HWID here (For offline mode only)"
|
|
],
|
|
"OnlineURL": "https://pastebin.com/XXXXX",
|
|
"EncryptKey": "1186118611861186",
|
|
"CachePools": 5,
|
|
"ShowHWIDWhenFailed": true,
|
|
"EncryptConst": true,
|
|
"Exclusion": []
|
|
},
|
|
"HideDeclaredFields": {
|
|
"Enabled": false,
|
|
"Exclusion": []
|
|
},
|
|
"ReflectionSupport": {
|
|
"Enabled": false,
|
|
"PrintLog": true,
|
|
"Class": true,
|
|
"Method": true,
|
|
"Field": true
|
|
},
|
|
"StringEncrypt": {
|
|
"Enabled": true,
|
|
"Arrayed": false,
|
|
"ReplaceInvokeDynamics": true,
|
|
"Exclusion": []
|
|
},
|
|
"NumberEncrypt": {
|
|
"Enabled": true,
|
|
"Intensity": 1,
|
|
"FloatingPoint": true,
|
|
"Arrayed": false,
|
|
"MaxInsnSize": 16384,
|
|
"Exclusion": []
|
|
},
|
|
"ArithmeticEncrypt": {
|
|
"Enabled": true,
|
|
"Intensity": 1,
|
|
"MaxInsnSize": 16384,
|
|
"Exclusion": []
|
|
},
|
|
"Controlflow": {
|
|
"Enabled": true,
|
|
"Intensity": 1,
|
|
"ExecuteBeforeEncrypt": false,
|
|
"SwitchExtractor": true,
|
|
"ExtractRate": 30,
|
|
"BogusConditionJump": true,
|
|
"GotoReplaceRate": 80,
|
|
"MangledCompareJump": true,
|
|
"IfReplaceRate": 50,
|
|
"IfICompareReplaceRate": 100,
|
|
"SwitchProtect": true,
|
|
"ProtectRate": 30,
|
|
"TableSwitchJump": true,
|
|
"MutateJumps": true,
|
|
"MutateRate": 10,
|
|
"SwitchReplaceRate": 30,
|
|
"MaxSwitchCase": 5,
|
|
"ReverseExistedIf": true,
|
|
"ReverseChance": 50,
|
|
"TrappedSwitchCase": true,
|
|
"TrapChance": 50,
|
|
"ArithmeticExprBuilder": true,
|
|
"BuilderIntensity": 1,
|
|
"JunkBuilderParameter": true,
|
|
"BuilderNativeAnnotation": false,
|
|
"UseLocalVar": true,
|
|
"JunkCode": true,
|
|
"MaxJunkCode": 2,
|
|
"ExpandedJunkCode": true,
|
|
"Exclusion": []
|
|
},
|
|
"ConstBuilder": {
|
|
"Enabled": true,
|
|
"NumberSwitchBuilder": true,
|
|
"SplitLong": true,
|
|
"HeavyEncrypt": false,
|
|
"SkipControlFlow": true,
|
|
"ReplacePercentage": 25,
|
|
"MaxCases": 5,
|
|
"Exclusion": []
|
|
},
|
|
"ConstPollEncrypt": {
|
|
"Enabled": false,
|
|
"Integer": true,
|
|
"Long": true,
|
|
"Float": true,
|
|
"Double": true,
|
|
"String": true,
|
|
"HeavyEncrypt": false,
|
|
"DontScramble": true,
|
|
"NativeAnnotation": false,
|
|
"Exclusion": []
|
|
},
|
|
"RedirectStringEquals": {
|
|
"Enabled": true,
|
|
"IgnoreCase": true,
|
|
"Exclusion": []
|
|
},
|
|
"FieldScramble": {
|
|
"Enabled": false,
|
|
"Intensity": 1,
|
|
"ReplacePercentage": 25,
|
|
"RandomName": false,
|
|
"GetStatic": true,
|
|
"SetStatic": true,
|
|
"GetValue": true,
|
|
"SetField": true,
|
|
"GenerateOuterClass": false,
|
|
"NativeAnnotation": false,
|
|
"ExcludedClasses": [],
|
|
"ExcludedFieldName": []
|
|
},
|
|
"MethodScramble": {
|
|
"Enabled": false,
|
|
"ReplacePercentage": 25,
|
|
"GenerateOuterClass": true,
|
|
"RandomCall": true,
|
|
"NativeAnnotation": false,
|
|
"ExcludedClasses": [],
|
|
"ExcludedMethodName": []
|
|
},
|
|
"NativeCandidate": {
|
|
"Enabled": false,
|
|
"NativeAnnotation": "Lnet/spartanb312/example/Native;",
|
|
"SearchCandidate": true,
|
|
"UpCallLimit": 0,
|
|
"Exclusion": [],
|
|
"AnnotationGroups": [
|
|
"{ \"annotation\": \"Lnet/spartanb312/grunt/Native;\", \"includeRegexes\": [\"^(?:[^./\\\\[;]+/)*[^./\\\\[;]+$\"], \"excludeRegexes\": [] }",
|
|
"{ \"annotation\": \"Lnet/spartanb312/grunt/VMProtect;\", \"includeRegexes\": [\"^(?:[^./\\\\[;]+\\\\/)*(?:[^./\\\\[;])+\\\\.(?:[^./\\\\[;()\\\\/])+(?:\\\\(((\\\\[*L[^./\\\\[;]([^./\\\\[;]*[^.\\\\[;][^./\\\\[;])*;)|(\\\\[*[ZBCSIJFD]+))*\\\\))((\\\\[*L[^./\\\\[;]([^./\\\\[;]*[^.\\\\[;][^./\\\\[;])*;)|V|(\\\\[*[ZBCSIJFD]))$\"], \"excludeRegexes\": [] }"
|
|
]
|
|
},
|
|
"SyntheticBridge": {
|
|
"Enabled": false,
|
|
"Exclusion": [
|
|
"do not use this! (All Events will break)"
|
|
]
|
|
},
|
|
"LocalVariableRename": {
|
|
"Enabled": true,
|
|
"Dictionary": "Custom",
|
|
"ThisReference": false,
|
|
"DeleteLocalVars": false,
|
|
"DeleteParameters": false,
|
|
"Exclusion": []
|
|
},
|
|
"MethodRename": {
|
|
"Enabled": true,
|
|
"Enums": true,
|
|
"Interfaces": false,
|
|
"Dictionary": "Custom",
|
|
"HeavyOverloads": false,
|
|
"RandomKeywordPrefix": false,
|
|
"Prefix": "",
|
|
"Reversed": false,
|
|
"Exclusion": [],
|
|
"ExcludedName": []
|
|
},
|
|
"FieldRename": {
|
|
"Enabled": true,
|
|
"Dictionary": "Custom",
|
|
"RandomKeywordPrefix": false,
|
|
"Prefix": "",
|
|
"Reversed": false,
|
|
"Exclusion": [],
|
|
"ExcludedName": [
|
|
"INSTANCE",
|
|
"Companion"
|
|
]
|
|
},
|
|
"ClassRename": {
|
|
"Enabled": true,
|
|
"Dictionary": "Custom",
|
|
"Parent": "this/is/a/dying/meme/",
|
|
"Prefix": "",
|
|
"Reversed": false,
|
|
"Shuffled": false,
|
|
"CorruptedName": false,
|
|
"CorruptedNameExclusion": [],
|
|
"Exclusion": [
|
|
"me/trouper/sentinel/Sentinel"
|
|
]
|
|
},
|
|
"MixinFieldRename": {
|
|
"Enabled": false,
|
|
"Dictionary": "Alphabet",
|
|
"Prefix": "",
|
|
"Exclusion": [],
|
|
"ExcludedName": [
|
|
"INSTANCE",
|
|
"Companion"
|
|
]
|
|
},
|
|
"MixinClassRename": {
|
|
"Enabled": false,
|
|
"Dictionary": "Alphabet",
|
|
"TargetMixinPackage": "net/spartanb312/obf/mixins/",
|
|
"MixinFile": "mixins.example.json",
|
|
"RefmapFile": "mixins.example.refmap.json",
|
|
"Exclusion": []
|
|
},
|
|
"InvokeDynamic": {
|
|
"Enabled": true,
|
|
"ReplacePercentage": 25,
|
|
"HeavyProtection": false,
|
|
"MetadataClass": "me/trouper/tuco/getOutMetadata",
|
|
"MassiveRandomBlank": true,
|
|
"Reobfuscate": false,
|
|
"EnhancedFlowReobf": false,
|
|
"BSMNativeAnnotation": false,
|
|
"Exclusion": []
|
|
},
|
|
"ShuffleMembers": {
|
|
"Enabled": true,
|
|
"Methods": true,
|
|
"Fields": true,
|
|
"Annotations": true,
|
|
"Exceptions": true,
|
|
"Exclusion": []
|
|
},
|
|
"Crasher": {
|
|
"Enabled": false,
|
|
"Random": false,
|
|
"Exclusion": []
|
|
},
|
|
"Watermark": {
|
|
"Enabled": true,
|
|
"Names": [
|
|
"Copyright_SentinelAntiNuke2024",
|
|
"obvWolf",
|
|
"thetrouper"
|
|
],
|
|
"Messages": [
|
|
"Ah_Ah_Ah_You_Didnt_Say_The_Magic_Word",
|
|
"%%__USERNAME__%%",
|
|
"%%__USER__%%"
|
|
],
|
|
"FieldMark": true,
|
|
"MethodMark": true,
|
|
"AnnotationMark": false,
|
|
"Annotations": [
|
|
"ProtectedByGrunt",
|
|
"JvavMetadata"
|
|
],
|
|
"Versions": [
|
|
"1984"
|
|
],
|
|
"InterfaceMark": false,
|
|
"FatherOfJava": "linus/torvalds/thegoat/",
|
|
"CustomTrashMethod": false,
|
|
"CustomMethodName": "protected by YuShengJun",
|
|
"CustomMethodCode": "public static String method() {\n return \"Protected by YuShengJun\";\n}",
|
|
"Exclusion": []
|
|
},
|
|
"PostProcess": {
|
|
"Enabled": true,
|
|
"Manifest": true,
|
|
"Plugin YML": true,
|
|
"Bungee YML": false,
|
|
"Fabric JSON": false,
|
|
"Velocity JSON": false,
|
|
"ManifestPrefix": [
|
|
"Main-Class:"
|
|
]
|
|
}
|
|
}
|