From 8adf6ba5e27383d93bed5e59dec6b09817c07146 Mon Sep 17 00:00:00 2001 From: de4dot Date: Wed, 15 Aug 2012 19:33:43 +0200 Subject: [PATCH 1/2] Update method signature --- blocks/DotNetUtils.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/blocks/DotNetUtils.cs b/blocks/DotNetUtils.cs index c4f121f3..98868692 100644 --- a/blocks/DotNetUtils.cs +++ b/blocks/DotNetUtils.cs @@ -754,11 +754,11 @@ namespace de4dot.blocks { } } - public static IEnumerable findAttributes(AssemblyDefinition asm, TypeReference attr) { + public static IEnumerable findAttributes(ICustomAttributeProvider custAttrProvider, TypeReference attr) { var list = new List(); - if (asm == null) + if (custAttrProvider == null) return list; - foreach (var cattr in asm.CustomAttributes) { + foreach (var cattr in custAttrProvider.CustomAttributes) { if (MemberReferenceHelper.compareTypes(attr, cattr.AttributeType)) list.Add(cattr); } From bfcd42804e39f464d0c35a01ceaef72067733e65 Mon Sep 17 00:00:00 2001 From: de4dot Date: Wed, 15 Aug 2012 19:33:57 +0200 Subject: [PATCH 2/2] Add getModuleAttribute() --- de4dot.code/deobfuscators/DeobfuscatorBase.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/de4dot.code/deobfuscators/DeobfuscatorBase.cs b/de4dot.code/deobfuscators/DeobfuscatorBase.cs index 63943cb6..90f15741 100644 --- a/de4dot.code/deobfuscators/DeobfuscatorBase.cs +++ b/de4dot.code/deobfuscators/DeobfuscatorBase.cs @@ -691,6 +691,11 @@ namespace de4dot.code.deobfuscators { return list.Count == 0 ? null : list[0]; } + protected CustomAttribute getModuleAttribute(TypeReference attr) { + var list = new List(DotNetUtils.findAttributes(module, attr)); + return list.Count == 0 ? null : list[0]; + } + protected bool hasMetadataStream(string name) { foreach (var stream in module.MetadataStreams) { if (stream.Name == name)