Unmanaged.Net allows you to efficiently convert a DLL (.Net) so it can be easily injected into a process, as you would with a native DLL.
In my head the idea of injecting a DLL made in .NET (C# / VB) into a process as you would do with a Native DLL (C++) has always been around. In fact, I made a universal loader UdrakoLoader, But I was not completely satisfied and that's why I created this tool.
If you like this project, you can consider making a donation. Help us continue to improve the tool.
This tool is the final result of my research. Basically, I took a DLL made in .NET, exported a specific function (Equivalent to C++'s DLLMain() / entrypoint) and then I packed it with a stub made in C, finally I compiled the stub generating the new DLL that was already exported.
After these steps, you can inject your DLL with any injector. 😎
First we need our DLL made in .NET, the code of the DLL that we will use:
using System;
using System.Windows.Forms;
namespace TestLibrary
{
public class Test
{
public static void DllMain()
{
MessageBox.Show("Hello World!");
}
}
}
Imports System
Imports System.Windows.Forms
Namespace TestLibrary
Public Class Test
Public Shared Sub DllMain()
MessageBox.Show("Hello World!")
End Sub
End Class
End Namespace
- Open the tool and select the DLL (The methods will be automatically loaded)
- Select the method that will work as the EntryPoint of our DLL.
- Select the Target Architecture to compile for. Usually it is I386
- Press the "Convet To Unmanaged" Button.
- If everything finished correctly, in the same path of your DLL, there will be another DLL that will have the name of "xxxExported.dll"
- That is your final DLL, Inject it in any process!
- This tool is in its first stable version, there may be errors.
- Your entrypoint method of your .NET DLL must be public and accessible to everyone.
- Destroyer : Creator / Discord : Destroyer#8328
- BloodSharp : C/C++ Helper / Discord : BloodSharp#7180
- XPN : https://github.com/xpn
Download Pre-Releases made for games: UnmanagedDotNet