using System; using System.Runtime.InteropServices; using BestHTTP.Extensions; using BestHTTP.WebSocket.Extensions; using Cpp2IlInjected; namespace BestHTTP.WebSocket.Frames { // Token: 0x020012EE RID: 4846 [Token(Token = "0x20012EE")] [StructLayout(3)] public sealed class WebSocketFrame { // Token: 0x170013B4 RID: 5044 // (get) Token: 0x06007959 RID: 31065 RVA: 0x001940FC File Offset: 0x001922FC // (set) Token: 0x0600795A RID: 31066 RVA: 0x00194110 File Offset: 0x00192310 [Token(Token = "0x170013B4")] public WebSocketFrameTypes Type { [Token(Token = "0x6007959")] [Address(RVA = "0x559440", Offset = "0x557E40", VA = "0x180559440")] get; [Token(Token = "0x600795A")] [Address(RVA = "0x559450", Offset = "0x557E50", VA = "0x180559450")] private set; } // Token: 0x170013B5 RID: 5045 // (get) Token: 0x0600795B RID: 31067 RVA: 0x00194124 File Offset: 0x00192324 // (set) Token: 0x0600795C RID: 31068 RVA: 0x00194138 File Offset: 0x00192338 [Token(Token = "0x170013B5")] public bool IsFinal { [Token(Token = "0x600795B")] [Address(RVA = "0x6E4A50", Offset = "0x6E3450", VA = "0x1806E4A50")] get; [Token(Token = "0x600795C")] [Address(RVA = "0x6E4A60", Offset = "0x6E3460", VA = "0x1806E4A60")] private set; } // Token: 0x170013B6 RID: 5046 // (get) Token: 0x0600795D RID: 31069 RVA: 0x0019414C File Offset: 0x0019234C // (set) Token: 0x0600795E RID: 31070 RVA: 0x00194160 File Offset: 0x00192360 [Token(Token = "0x170013B6")] public byte Header { [Token(Token = "0x600795D")] [Address(RVA = "0x6E4A70", Offset = "0x6E3470", VA = "0x1806E4A70")] get; [Token(Token = "0x600795E")] [Address(RVA = "0x6E4A80", Offset = "0x6E3480", VA = "0x1806E4A80")] private set; } // Token: 0x170013B7 RID: 5047 // (get) Token: 0x0600795F RID: 31071 RVA: 0x00194174 File Offset: 0x00192374 // (set) Token: 0x06007960 RID: 31072 RVA: 0x00194188 File Offset: 0x00192388 [Token(Token = "0x170013B7")] public byte[] Data { [Token(Token = "0x600795F")] [Address(RVA = "0x3C1240", Offset = "0x3BFC40", VA = "0x1803C1240")] get; [Token(Token = "0x6007960")] [Address(RVA = "0x3C1280", Offset = "0x3BFC80", VA = "0x1803C1280")] private set; } // Token: 0x170013B8 RID: 5048 // (get) Token: 0x06007961 RID: 31073 RVA: 0x0019419C File Offset: 0x0019239C // (set) Token: 0x06007962 RID: 31074 RVA: 0x001941B0 File Offset: 0x001923B0 [Token(Token = "0x170013B8")] public int DataLength { [Token(Token = "0x6007961")] [Address(RVA = "0x4FBD40", Offset = "0x4FA740", VA = "0x1804FBD40")] get; [Token(Token = "0x6007962")] [Address(RVA = "0x4E90F0", Offset = "0x4E7AF0", VA = "0x1804E90F0")] private set; } // Token: 0x170013B9 RID: 5049 // (get) Token: 0x06007963 RID: 31075 RVA: 0x001941C4 File Offset: 0x001923C4 // (set) Token: 0x06007964 RID: 31076 RVA: 0x001941D8 File Offset: 0x001923D8 [Token(Token = "0x170013B9")] public bool UseExtensions { [Token(Token = "0x6007963")] [Address(RVA = "0x4D2560", Offset = "0x4D0F60", VA = "0x1804D2560")] get; [Token(Token = "0x6007964")] [Address(RVA = "0x4D2740", Offset = "0x4D1140", VA = "0x1804D2740")] private set; } // Token: 0x06007965 RID: 31077 RVA: 0x001941EC File Offset: 0x001923EC [Token(Token = "0x6007965")] [Address(RVA = "0x6F93F0", Offset = "0x6F7DF0", VA = "0x1806F93F0")] public WebSocketFrame(WebSocket webSocket, WebSocketFrameTypes type, byte[] data) { if (data != 0) { } } // Token: 0x06007966 RID: 31078 RVA: 0x00194208 File Offset: 0x00192408 [Token(Token = "0x6007966")] [Address(RVA = "0x6F9340", Offset = "0x6F7D40", VA = "0x1806F9340")] public WebSocketFrame(WebSocket webSocket, WebSocketFrameTypes type, byte[] data, bool useExtensions) { if (data != 0) { } } // Token: 0x06007967 RID: 31079 RVA: 0x00194224 File Offset: 0x00192424 [Token(Token = "0x6007967")] [Address(RVA = "0x6F9390", Offset = "0x6F7D90", VA = "0x1806F9390")] public WebSocketFrame(WebSocket webSocket, WebSocketFrameTypes type, byte[] data, bool isFinal, bool useExtensions) { if (data != 0) { } } // Token: 0x06007968 RID: 31080 RVA: 0x00194240 File Offset: 0x00192440 [Token(Token = "0x6007968")] [Address(RVA = "0x6F9150", Offset = "0x6F7B50", VA = "0x1806F9150")] public WebSocketFrame(WebSocket webSocket, WebSocketFrameTypes type, byte[] data, ulong pos, ulong length, bool isFinal, bool useExtensions) { this.IsFinal = false; this.Type = type; int num = 0; this.UseExtensions = false; this.DataLength = 0; if (data == 0) { } int num2 = this.k__BackingField; byte[] array; this.Data = array; this.Header = data; if ((this.k__BackingField ? 1 : 0) != num && webSocket != 0 && webSocket.k__BackingField != num) { IExtension[] k__BackingField = webSocket.k__BackingField; int length2 = k__BackingField.Length; if (num < length2) { if (k__BackingField[num] != 0) { byte b = this.
k__BackingField; this.Header = (byte)num; byte[] array2 = this.k__BackingField; if (num != array2) { VariableSizedBufferPool.Release(array2); this.Data = num; this.DataLength = num; } } num++; } } } // Token: 0x06007969 RID: 31081 RVA: 0x001942FC File Offset: 0x001924FC [Token(Token = "0x6007969")] [Address(RVA = "0x6F8D40", Offset = "0x6F7740", VA = "0x1806F8D40")] public RawFrameData Get() { int num; do { num = 0; byte[] noData = VariableSizedBufferPool.NoData; byte[] array; int length = array.Length; int num2 = 0; Array.Reverse(array, num2, length); byte[] array2; int length2 = array2.Length; int num3 = 0; Array.Reverse(array2, num3, length2); BufferPoolMemoryStream bufferPoolMemoryStream; int num4 = bufferPoolMemoryStream.ReadByte(); int num5 = bufferPoolMemoryStream.ReadByte(); if (num < "{il2cpp array field il2cppMethodInfo->}") { num++; num++; } byte[] array3 = bufferPoolMemoryStream.ToArray(true); bool canWrite = bufferPoolMemoryStream.CanWrite; if (bufferPoolMemoryStream != 0) { } if (num != -1) { } } while (num != 0); throw new NullReferenceException(); } // Token: 0x0600796A RID: 31082 RVA: 0x001943B0 File Offset: 0x001925B0 [Token(Token = "0x600796A")] [Address(RVA = "0x6F8B40", Offset = "0x6F7540", VA = "0x1806F8B40")] public WebSocketFrame[] Fragment(ushort maxFragmentSize) { if (this.k__BackingField != (ulong)0L) { WebSocketFrameTypes webSocketFrameTypes = this.k__BackingField; if (this.k__BackingField > (int)maxFragmentSize) { WebSocketFrame[] array = new WebSocketFrame[(int)maxFragmentSize]; int num = this.k__BackingField; if ((int)maxFragmentSize < num) { num -= (int)maxFragmentSize; ulong num2 = Math.Min((ulong)maxFragmentSize, (ulong)num); int num3 = this.k__BackingField; throw new ArrayTypeMismatchException(); } this.k__BackingField = (int)maxFragmentSize; return array; } } throw new IndexOutOfRangeException(); } } }