private static byte[] smethod_2(GClass123.GEnum8 genum8_0, Class4.Enum0 enum0_0, string string_0, int int_0) { byte[] array; int num; switch (enum0_0) { case (Class4.Enum0) 1: case (Class4.Enum0) 4: array = IPAddress.Parse(string_0).GetAddressBytes(); num = array.Length; break; default: throw new ArgumentException("Unknown address type"); case (Class4.Enum0) 3: { byte[] bytes = Encoding.UTF8.GetBytes(string_0); num = 1 + bytes.Length; array = new byte[num]; array[0] = (byte)bytes.Length; Array.Copy(bytes, 0, array, 1, bytes.Length); break; } } byte[] array2 = new byte[6 + num]; array2[0] = 5; array2[1] = (byte)genum8_0; array2[3] = (byte)enum0_0; Array.Copy(array, 0, array2, 4, num); array2[array2.Length - 2] = (byte)(int_0 / 256); array2[array2.Length - 1] = (byte)(int_0 % 256); return(array2); }
public static GClass123.GEnum7 smethod_0(Socket socket_0, string string_0, int int_0, ProxySettings proxySettings_0) { GClass123.Class1 instance = GClass123.Class1.Instance; GClass123.GEnum7 result; try { socket_0.Send(GClass123.Class3.smethod_1(proxySettings_0.User != null)); byte[] array = new byte[255]; if (socket_0.Receive(array) != 2) { result = (GClass123.GEnum7)(-2147483643); } else if (array[0] != 5) { result = (GClass123.GEnum7)(-2147483643); } else { if (array[1] == 2) { if (proxySettings_0.User == null) { return((GClass123.GEnum7)(-2147483643)); } socket_0.Send(GClass123.Class3.smethod_3(proxySettings_0.User, proxySettings_0.Password)); if (socket_0.Receive(array) != 2) { return((GClass123.GEnum7)(-2147483643)); } if (array[0] != 1) { return((GClass123.GEnum7)(-2147483643)); } if (array[1] != 0) { return((GClass123.GEnum7)(-2147483646)); } } else if (array[1] != 0) { return((GClass123.GEnum7)(-2147483646)); } if (instance != null && Class4.smethod_2(string_0) == (Class4.Enum0) 3) { IPAddress ipaddress = instance.method_0(string_0); if (ipaddress == null) { return((GClass123.GEnum7) 4); } string_0 = ipaddress.ToString(); } socket_0.Send(GClass123.Class3.smethod_2((GClass123.GEnum8) 1, Class4.smethod_2(string_0), string_0, int_0)); int num = socket_0.Receive(array); if (num < 8) { result = (GClass123.GEnum7)(-2147483643); } else if (array[0] != 5) { result = (GClass123.GEnum7)(-2147483643); } else if (array[1] > 8) { result = (GClass123.GEnum7)(-2147483643); } else if (array[1] != 0) { result = (GClass123.GEnum7)array[1]; } else if (array[2] != 0) { result = (GClass123.GEnum7)(-2147483643); } else if (array[3] != 1 && array[3] != 3 && array[3] != 4) { result = (GClass123.GEnum7)(-2147483643); } else { Class4.Enum0 @enum = (Class4.Enum0)array[3]; if (@enum == (Class4.Enum0) 1) { if (num != 10) { return((GClass123.GEnum7)(-2147483643)); } } else if (@enum == (Class4.Enum0) 4) { if (num != 22) { return((GClass123.GEnum7)(-2147483643)); } } else { int num2 = (int)array[4]; if (num != 7 + num2) { return((GClass123.GEnum7)(-2147483643)); } } result = (GClass123.GEnum7) 0; } } } catch (SocketException) { result = (GClass123.GEnum7)(-2147483644); } catch { result = (GClass123.GEnum7)(-2147483647); } return(result); }