C# implementation of ESXLogin.pm