Detect Confuser 1.0 r42919 proxy methods creator
This commit is contained in:
parent
612aeec0ab
commit
be29d8aed2
|
@ -39,6 +39,7 @@ namespace de4dot.code.deobfuscators.Confuser {
|
||||||
enum ConfuserVersion {
|
enum ConfuserVersion {
|
||||||
Unknown,
|
Unknown,
|
||||||
v10_r42915,
|
v10_r42915,
|
||||||
|
v10_r42919,
|
||||||
v10_r48717,
|
v10_r48717,
|
||||||
v14_r58564,
|
v14_r58564,
|
||||||
v14_r58857,
|
v14_r58857,
|
||||||
|
@ -191,6 +192,7 @@ namespace de4dot.code.deobfuscators.Confuser {
|
||||||
|
|
||||||
switch (creatorInfo.version) {
|
switch (creatorInfo.version) {
|
||||||
case ConfuserVersion.v10_r42915:
|
case ConfuserVersion.v10_r42915:
|
||||||
|
case ConfuserVersion.v10_r42919:
|
||||||
getCallInfo_v10_r42915(info, creatorInfo, out calledMethod, out callOpcode);
|
getCallInfo_v10_r42915(info, creatorInfo, out calledMethod, out callOpcode);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -527,6 +529,10 @@ namespace de4dot.code.deobfuscators.Confuser {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if (theVersion == ConfuserVersion.v10_r42915) {
|
||||||
|
if (DeobUtils.hasInteger(method, 0x06000000))
|
||||||
|
theVersion = ConfuserVersion.v10_r42919;
|
||||||
|
}
|
||||||
|
|
||||||
setDelegateCreatorMethod(method);
|
setDelegateCreatorMethod(method);
|
||||||
methodToInfo.add(method, new ProxyCreatorInfo(method, proxyType, theVersion, magic, nativeMethod, callvirtChar));
|
methodToInfo.add(method, new ProxyCreatorInfo(method, proxyType, theVersion, magic, nativeMethod, callvirtChar));
|
||||||
|
@ -807,6 +813,7 @@ namespace de4dot.code.deobfuscators.Confuser {
|
||||||
FieldDefinitionAndDeclaringTypeDict<DelegateInitInfo> createDelegateInitInfos(MethodDefinition method) {
|
FieldDefinitionAndDeclaringTypeDict<DelegateInitInfo> createDelegateInitInfos(MethodDefinition method) {
|
||||||
switch (version) {
|
switch (version) {
|
||||||
case ConfuserVersion.v10_r42915:
|
case ConfuserVersion.v10_r42915:
|
||||||
|
case ConfuserVersion.v10_r42919:
|
||||||
return createDelegateInitInfos_v10_r42915(method);
|
return createDelegateInitInfos_v10_r42915(method);
|
||||||
default:
|
default:
|
||||||
return createDelegateInitInfos_v10_r48717(method);
|
return createDelegateInitInfos_v10_r48717(method);
|
||||||
|
@ -954,6 +961,11 @@ namespace de4dot.code.deobfuscators.Confuser {
|
||||||
|
|
||||||
case ConfuserVersion.v10_r42915:
|
case ConfuserVersion.v10_r42915:
|
||||||
minRev = 42915;
|
minRev = 42915;
|
||||||
|
maxRev = 42917;
|
||||||
|
return true;
|
||||||
|
|
||||||
|
case ConfuserVersion.v10_r42919:
|
||||||
|
minRev = 42919;
|
||||||
maxRev = 48509;
|
maxRev = 48509;
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user