public void DoSnapshot() { if ((network_0.Connected && base.IsInvoking()) && (Screenshot != null)) { base.CancelInvoke(Class3.smethod_10(0x4a4)); NetLink.Network.Packet packet = new NetLink.Network.Packet(NetLink.Network.PacketType.DataStream, NetLink.Network.PacketFlag.Compressed, null); packet.Write <ushort>(MessageType.Screenshot); packet.Write <string>(Steam_ID.ToString()); packet.Write(Screenshot, 0, Screenshot.Length); network_0.Send(packet); Screenshot = null; } }
public static void Initialize(string url, int port, byte[] assembly_bytes) { string_1 = url; int_0 = port; if (!Process32.IsRunAsAdministrator) { UnityEngine.Debug.LogError(Class3.smethod_10(0x11cc)); UnityEngine.Debug.LogError(Class3.smethod_10(0x1288)); UnityEngine.Debug.LogError(Class3.smethod_10(0x1316)); UnityEngine.Debug.LogError(Class3.smethod_10(0x11cc)); } else { if (ProtectLoader.Debug) { UnityEngine.Debug.Log(string.Concat(new object[] { Class3.smethod_10(0x13a6), url, Class3.smethod_10(840), port })); } Steam_ID = ClientConnect.Steam_GetSteamID(); Username = Marshal.PtrToStringAnsi(ClientConnect.Steam_GetDisplayname()); string_3 = hardware_0.String_0; string_4 = Application.systemLanguage.ToString(); if (ProtectLoader.Debug) { UnityEngine.Debug.Log(string.Concat(new object[] { Class3.smethod_10(0x13fe), Steam_ID, Class3.smethod_10(0x1416), Username, Class3.smethod_10(0x1430), string_4, Class3.smethod_10(0x144a), string_3 })); } EncryptionKey = new SHA512CryptoServiceProvider().ComputeHash(assembly_bytes); network_0 = new NetLink.Network(string_1, int_0); if (ProtectLoader.Debug) { UnityEngine.Debug.Log(Class3.smethod_10(0x1468) + network_0.Connected.ToString()); } if ((network_0.Connected && (string_3 != null)) && (string_3.Length == 0x20)) { Assembly[] assemblies = Assemblies; NetLink.Network.Packet packet = new NetLink.Network.Packet(NetLink.Network.PacketType.Firstpass, NetLink.Network.PacketFlag.Compressed, null); packet.Write <ushort>(MessageType.Connect); packet.Write <ulong>(Steam_ID); packet.Write <string>(Username); packet.Write <string>(string_3); packet.Write <int>(assemblies.Length); foreach (Assembly assembly in assemblies) { packet.Write <string>(assembly.GetName().Name); } network_0.Send(packet); packet_0 = network_0.Receive(0x7d0L); if (ProtectLoader.Debug) { UnityEngine.Debug.Log(Class3.smethod_10(0x1496) + packet_0.Received.ToString()); } if ((packet_0.Received && (packet_0.Type == NetLink.Network.PacketType.Response)) && packet_0.Flags.Has <NetLink.Network.PacketFlag>(NetLink.Network.PacketFlag.Compressed)) { bool_0 = packet_0.Read <bool>(); int num2 = packet_0.Read <int>(); verifyFile_0 = new VerifyFile[num2]; for (int i = 0; i < num2; i++) { verifyFile_0[i] = new VerifyFile { Filename = packet_0.Read <string>(), Filesize = packet_0.Read <long>() }; } if (ProtectLoader.Debug) { UnityEngine.Debug.Log(Class3.smethod_10(0x14c2) + num2); } gameObject_0 = new GameObject(typeof(Protection).FullName); gameObject_0.AddComponent <Protection>(); gameObject_0.AddComponent <RustProtect.Snapshot>(); return; } } network_0.Dispose(); } }