// Decompiled with JetBrains decompiler // Type: . // Assembly: AudioHD, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null // MVID: A79492AA-5FAA-4ED2-ACC6-3D90AD665D99 // Assembly location: C:\Users\Administrateur\Downloads\Virusshare-00000-msil\Trojan-Dropper.Win32.Sysn.awyx-36fae8d04bf5f7d873dd5aa10ad92403f80b9af8b6ef91319e70ea2c9c043024.exe using \u0001; using System; using System.Collections; using System.IO; using System.Reflection; using System.Runtime.InteropServices; using System.Text; namespace \u0001 { internal sealed class \u0004 { [NonSerialized] internal static \u0002 \u0001; private static string \u0001; private static string \u0002; private static byte[] \u0001; private static Hashtable \u0001; private static bool \u0001; private static int \u0001; public static string \u000F([In] int obj0) { obj0 -= \u0004.\u0001; if (\u0004.\u0001) { string str = (string) \u0004.\u0001[(object) obj0]; if (str != null) return str; } int num1 = obj0; byte[] numArray1 = \u0004.\u0001; int index1 = num1; int index2 = index1 + 1; int num2 = (int) numArray1[index1]; int count; if ((num2 & 128) == 0) { count = num2; if (count == 0) return string.Empty; } else if ((num2 & 64) == 0) { count = ((num2 & 63) << 8) + (int) \u0004.\u0001[index2++]; } else { int num3 = (num2 & 31) << 24; byte[] numArray2 = \u0004.\u0001; int index3 = index2; int num4 = index3 + 1; int num5 = (int) numArray2[index3] << 16; int num6 = num3 + num5; byte[] numArray3 = \u0004.\u0001; int index4 = num4; int num7 = index4 + 1; int num8 = (int) numArray3[index4] << 8; int num9 = num6 + num8; byte[] numArray4 = \u0004.\u0001; int index5 = num7; index2 = index5 + 1; int num10 = (int) numArray4[index5]; count = num9 + num10; } try { byte[] bytes = Convert.FromBase64String(Encoding.UTF8.GetString(\u0004.\u0001, index2, count)); string str = string.Intern(Encoding.UTF8.GetString(bytes, 0, bytes.Length)); if (\u0004.\u0001) { try { \u0004.\u0001.Add((object) obj0, (object) str); } catch { } } return str; } catch { return (string) null; } } static \u0004() { \u0003.\u000F(); \u0004.\u0001 = "1"; \u0004.\u0002 = "191"; \u0004.\u0001 = (byte[]) null; \u0004.\u0001 = (Hashtable) null; \u0004.\u0001 = false; \u0004.\u0001 = 0; if (\u0004.\u0001 == "1") { \u0004.\u0001 = true; \u0004.\u0001 = new Hashtable(); } \u0004.\u0001 = Convert.ToInt32(\u0004.\u0002); using (Stream manifestResourceStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("{a79492aa-5faa-4ed2-acc6-3d90ad665d99}")) { int int32 = Convert.ToInt32(manifestResourceStream.Length); byte[] buffer = new byte[int32]; manifestResourceStream.Read(buffer, 0, int32); \u0004.\u0001 = \u0007.\u000F(buffer); manifestResourceStream.Close(); } } } }