using System; using System.Collections.Generic; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using BestHTTP.Extensions; using BestHTTP.Futures; using BestHTTP.Logger; using BestHTTP.SignalRCore.Authentication; using BestHTTP.SignalRCore.Messages; using Cpp2IlInjected; namespace BestHTTP.SignalRCore { // Token: 0x020019BF RID: 6591 [Token(Token = "0x20019BF")] public sealed class HubConnection : IHeartbeat { // Token: 0x17001875 RID: 6261 // (get) Token: 0x0600997E RID: 39294 RVA: 0x001F5818 File Offset: 0x001F3A18 // (set) Token: 0x0600997F RID: 39295 RVA: 0x001F582C File Offset: 0x001F3A2C [Token(Token = "0x17001875")] public Uri Uri { [Token(Token = "0x600997E")] [Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")] get; [Token(Token = "0x600997F")] [Address(RVA = "0x415800", Offset = "0x414800", VA = "0x180415800")] private set; } // Token: 0x17001876 RID: 6262 // (get) Token: 0x06009980 RID: 39296 RVA: 0x001F5840 File Offset: 0x001F3A40 // (set) Token: 0x06009981 RID: 39297 RVA: 0x001F5854 File Offset: 0x001F3A54 [Token(Token = "0x17001876")] public ConnectionStates State { [Token(Token = "0x6009980")] [Address(RVA = "0x411540", Offset = "0x410540", VA = "0x180411540")] get; [Token(Token = "0x6009981")] [Address(RVA = "0x5F1910", Offset = "0x5F0910", VA = "0x1805F1910")] private set; } // Token: 0x17001877 RID: 6263 // (get) Token: 0x06009982 RID: 39298 RVA: 0x001F5868 File Offset: 0x001F3A68 // (set) Token: 0x06009983 RID: 39299 RVA: 0x001F587C File Offset: 0x001F3A7C [Token(Token = "0x17001877")] public ITransport Transport { [Token(Token = "0x6009982")] [Address(RVA = "0x4157C0", Offset = "0x4147C0", VA = "0x1804157C0")] get; [Token(Token = "0x6009983")] [Address(RVA = "0x415810", Offset = "0x414810", VA = "0x180415810")] private set; } // Token: 0x17001878 RID: 6264 // (get) Token: 0x06009984 RID: 39300 RVA: 0x001F5890 File Offset: 0x001F3A90 // (set) Token: 0x06009985 RID: 39301 RVA: 0x001F58A4 File Offset: 0x001F3AA4 [Token(Token = "0x17001878")] public IProtocol Protocol { [Token(Token = "0x6009984")] [Address(RVA = "0x4157D0", Offset = "0x4147D0", VA = "0x1804157D0")] get; [Token(Token = "0x6009985")] [Address(RVA = "0x415820", Offset = "0x414820", VA = "0x180415820")] private set; } // Token: 0x140000C2 RID: 194 // (add) Token: 0x06009986 RID: 39302 RVA: 0x001F58B8 File Offset: 0x001F3AB8 // (remove) Token: 0x06009987 RID: 39303 RVA: 0x001F58E0 File Offset: 0x001F3AE0 [Token(Token = "0x140000C2")] public event Action OnRedirected { [Token(Token = "0x6009986")] [Address(RVA = "0x62A970", Offset = "0x629970", VA = "0x18062A970")] [CompilerGenerated] add { Action onRedirected; Delegate @delegate; do { onRedirected = this.OnRedirected; @delegate = Delegate.Combine(onRedirected, value); } while (@delegate != 0 && @delegate == 0); while (@delegate != onRedirected) { } } [Token(Token = "0x6009987")] [Address(RVA = "0x62AC90", Offset = "0x629C90", VA = "0x18062AC90")] [CompilerGenerated] remove { Action onRedirected; Delegate @delegate; do { onRedirected = this.OnRedirected; @delegate = Delegate.Remove(onRedirected, value); } while (@delegate != 0 && @delegate == 0); while (@delegate != onRedirected) { } } } // Token: 0x140000C3 RID: 195 // (add) Token: 0x06009988 RID: 39304 RVA: 0x001F5908 File Offset: 0x001F3B08 // (remove) Token: 0x06009989 RID: 39305 RVA: 0x001F5930 File Offset: 0x001F3B30 [Token(Token = "0x140000C3")] public event Action OnConnected { [Token(Token = "0x6009988")] [Address(RVA = "0x62A790", Offset = "0x629790", VA = "0x18062A790")] [CompilerGenerated] add { Action onConnected; Delegate @delegate; do { onConnected = this.OnConnected; @delegate = Delegate.Combine(onConnected, value); } while (@delegate != 0 && @delegate == 0); while (@delegate != onConnected) { } } [Token(Token = "0x6009989")] [Address(RVA = "0x62AAB0", Offset = "0x629AB0", VA = "0x18062AAB0")] [CompilerGenerated] remove { Action onConnected; Delegate @delegate; do { onConnected = this.OnConnected; @delegate = Delegate.Remove(onConnected, value); } while (@delegate != 0 && @delegate == 0); while (@delegate != onConnected) { } } } // Token: 0x140000C4 RID: 196 // (add) Token: 0x0600998A RID: 39306 RVA: 0x001F5958 File Offset: 0x001F3B58 // (remove) Token: 0x0600998B RID: 39307 RVA: 0x001F5980 File Offset: 0x001F3B80 [Token(Token = "0x140000C4")] public event Action OnError { [Token(Token = "0x600998A")] [Address(RVA = "0x62A830", Offset = "0x629830", VA = "0x18062A830")] [CompilerGenerated] add { Action onError; Delegate @delegate; do { onError = this.OnError; @delegate = Delegate.Combine(onError, value); } while (@delegate != 0 && @delegate == 0); while (@delegate != onError) { } } [Token(Token = "0x600998B")] [Address(RVA = "0x62AB50", Offset = "0x629B50", VA = "0x18062AB50")] [CompilerGenerated] remove { Action onError; Delegate @delegate; do { onError = this.OnError; @delegate = Delegate.Remove(onError, value); } while (@delegate != 0 && @delegate == 0); while (@delegate != onError) { } } } // Token: 0x140000C5 RID: 197 // (add) Token: 0x0600998C RID: 39308 RVA: 0x001F59A8 File Offset: 0x001F3BA8 // (remove) Token: 0x0600998D RID: 39309 RVA: 0x001F59D0 File Offset: 0x001F3BD0 [Token(Token = "0x140000C5")] public event Action OnClosed { [Token(Token = "0x600998C")] [Address(RVA = "0x62A6F0", Offset = "0x6296F0", VA = "0x18062A6F0")] [CompilerGenerated] add { Action onClosed; Delegate @delegate; do { onClosed = this.OnClosed; @delegate = Delegate.Combine(onClosed, value); } while (@delegate != 0 && @delegate == 0); while (@delegate != onClosed) { } } [Token(Token = "0x600998D")] [Address(RVA = "0x62AA10", Offset = "0x629A10", VA = "0x18062AA10")] [CompilerGenerated] remove { Action onClosed; Delegate @delegate; do { onClosed = this.OnClosed; @delegate = Delegate.Remove(onClosed, value); } while (@delegate != 0 && @delegate == 0); while (@delegate != onClosed) { } } } // Token: 0x140000C6 RID: 198 // (add) Token: 0x0600998E RID: 39310 RVA: 0x001F59F8 File Offset: 0x001F3BF8 // (remove) Token: 0x0600998F RID: 39311 RVA: 0x001F5A20 File Offset: 0x001F3C20 [Token(Token = "0x140000C6")] public event Func OnMessage { [Token(Token = "0x600998E")] [Address(RVA = "0x62A8D0", Offset = "0x6298D0", VA = "0x18062A8D0")] [CompilerGenerated] add { Func onMessage; Delegate @delegate; do { onMessage = this.OnMessage; @delegate = Delegate.Combine(onMessage, value); } while (@delegate != 0 && @delegate == 0); while (@delegate != onMessage) { } } [Token(Token = "0x600998F")] [Address(RVA = "0x62ABF0", Offset = "0x629BF0", VA = "0x18062ABF0")] [CompilerGenerated] remove { Func onMessage; Delegate @delegate; do { onMessage = this.OnMessage; @delegate = Delegate.Remove(onMessage, value); } while (@delegate != 0 && @delegate == 0); while (@delegate != onMessage) { } } } // Token: 0x17001879 RID: 6265 // (get) Token: 0x06009990 RID: 39312 RVA: 0x001F5A48 File Offset: 0x001F3C48 // (set) Token: 0x06009991 RID: 39313 RVA: 0x001F5A5C File Offset: 0x001F3C5C [Token(Token = "0x17001879")] public IAuthenticationProvider AuthenticationProvider { [Token(Token = "0x6009990")] [Address(RVA = "0x417710", Offset = "0x416710", VA = "0x180417710")] get; [Token(Token = "0x6009991")] [Address(RVA = "0x417A10", Offset = "0x416A10", VA = "0x180417A10")] set; } // Token: 0x1700187A RID: 6266 // (get) Token: 0x06009992 RID: 39314 RVA: 0x001F5A70 File Offset: 0x001F3C70 // (set) Token: 0x06009993 RID: 39315 RVA: 0x001F5A84 File Offset: 0x001F3C84 [Token(Token = "0x1700187A")] public NegotiationResult NegotiationResult { [Token(Token = "0x6009992")] [Address(RVA = "0x417720", Offset = "0x416720", VA = "0x180417720")] get; [Token(Token = "0x6009993")] [Address(RVA = "0x417A20", Offset = "0x416A20", VA = "0x180417A20")] private set; } // Token: 0x1700187B RID: 6267 // (get) Token: 0x06009994 RID: 39316 RVA: 0x001F5A98 File Offset: 0x001F3C98 // (set) Token: 0x06009995 RID: 39317 RVA: 0x001F5AAC File Offset: 0x001F3CAC [Token(Token = "0x1700187B")] public HubOptions Options { [Token(Token = "0x6009994")] [Address(RVA = "0x4177D0", Offset = "0x4167D0", VA = "0x1804177D0")] get; [Token(Token = "0x6009995")] [Address(RVA = "0x417AC0", Offset = "0x416AC0", VA = "0x180417AC0")] private set; } // Token: 0x1700187C RID: 6268 // (get) Token: 0x06009996 RID: 39318 RVA: 0x001F5AC0 File Offset: 0x001F3CC0 // (set) Token: 0x06009997 RID: 39319 RVA: 0x001F5AD4 File Offset: 0x001F3CD4 [Token(Token = "0x1700187C")] public int RedirectCount { [Token(Token = "0x6009996")] [Address(RVA = "0x483230", Offset = "0x482230", VA = "0x180483230")] get; [Token(Token = "0x6009997")] [Address(RVA = "0x4833D0", Offset = "0x4823D0", VA = "0x1804833D0")] private set; } // Token: 0x06009998 RID: 39320 RVA: 0x001F5AE8 File Offset: 0x001F3CE8 [Token(Token = "0x6009998")] [Address(RVA = "0x62A430", Offset = "0x629430", VA = "0x18062A430")] public HubConnection(Uri hubUri, IProtocol protocol) { HubOptions hubOptions = new HubOptions(); hubOptions.k__BackingField = false; hubOptions.k__BackingField = (TransportTypes)((ulong)0L); TimeSpan timeSpan; hubOptions.k__BackingField = timeSpan; hubOptions.k__BackingField = (int)((ulong)100L); } // Token: 0x06009999 RID: 39321 RVA: 0x001F5B1C File Offset: 0x001F3D1C [Token(Token = "0x6009999")] [Address(RVA = "0x62A510", Offset = "0x629510", VA = "0x18062A510")] public HubConnection(Uri hubUri, IProtocol protocol, HubOptions options) { Dictionary> dictionary = new Dictionary(); this.invocations = dictionary; Dictionary dictionary2 = new Dictionary(StringComparer._ordinalIgnoreCase); this.subscriptions = dictionary2; base..ctor(); int num = 0; this.Uri = hubUri; this.State = (ConnectionStates)num; this.Options = options; this.Protocol = protocol; num += num; num++; DefaultAccessTokenAuthenticator defaultAccessTokenAuthenticator; defaultAccessTokenAuthenticator.StartAuthentication(); defaultAccessTokenAuthenticator._connection = this; this.AuthenticationProvider = defaultAccessTokenAuthenticator; } // Token: 0x0600999A RID: 39322 RVA: 0x001F5B98 File Offset: 0x001F3D98 [Token(Token = "0x600999A")] [Address(RVA = "0x629CB0", Offset = "0x628CB0", VA = "0x180629CB0")] public void StartConnect() { ConnectionStates connectionStates = this.k__BackingField; if (connectionStates != ConnectionStates.Initial && connectionStates != ConnectionStates.Redirected) { ILogger logger = HTTPManager.Logger; ConnectionStates connectionStates2 = this.k__BackingField; return; } ILogger logger2 = HTTPManager.Logger; if (this.k__BackingField != 0 && logger2 != 0) { ILogger logger3 = HTTPManager.Logger; int num = 0; this.SetState(ConnectionStates.Authenticating, num); IAuthenticationProvider authenticationProvider = this.k__BackingField; OnAuthenticationSuccededDelegate onAuthenticationSuccededDelegate; onAuthenticationSuccededDelegate.method_ptr = ldftn(OnAuthenticationSucceded); onAuthenticationSuccededDelegate.method = ldftn(OnAuthenticationSucceded); onAuthenticationSuccededDelegate.m_target = this; IAuthenticationProvider authenticationProvider2 = this.k__BackingField; OnAuthenticationFailedDelegate onAuthenticationFailedDelegate; onAuthenticationFailedDelegate.method_ptr = ldftn(OnAuthenticationFailed); onAuthenticationFailedDelegate.method = ldftn(OnAuthenticationFailed); onAuthenticationFailedDelegate.m_target = this; IAuthenticationProvider authenticationProvider3 = this.k__BackingField; return; } this.StartNegotiation(); } // Token: 0x0600999B RID: 39323 RVA: 0x001F5C60 File Offset: 0x001F3E60 [Token(Token = "0x600999B")] [Address(RVA = "0x6280F0", Offset = "0x6270F0", VA = "0x1806280F0")] private void OnAuthenticationSucceded(IAuthenticationProvider provider) { ILogger logger = HTTPManager.Logger; IAuthenticationProvider authenticationProvider = this.k__BackingField; OnAuthenticationSuccededDelegate onAuthenticationSuccededDelegate; onAuthenticationSuccededDelegate.method_ptr = ldftn(OnAuthenticationSucceded); onAuthenticationSuccededDelegate.method = ldftn(OnAuthenticationSucceded); onAuthenticationSuccededDelegate.m_target = this; IAuthenticationProvider authenticationProvider2 = this.k__BackingField; OnAuthenticationFailedDelegate onAuthenticationFailedDelegate; onAuthenticationFailedDelegate.method_ptr = ldftn(OnAuthenticationFailed); onAuthenticationFailedDelegate.method = ldftn(OnAuthenticationFailed); onAuthenticationFailedDelegate.m_target = this; this.StartNegotiation(); } // Token: 0x0600999C RID: 39324 RVA: 0x001F5CD4 File Offset: 0x001F3ED4 [Token(Token = "0x600999C")] [Address(RVA = "0x627FB0", Offset = "0x626FB0", VA = "0x180627FB0")] private void OnAuthenticationFailed(IAuthenticationProvider provider, string reason) { ILogger logger = HTTPManager.Logger; string text = "OnAuthenticationFailed: " + reason; IAuthenticationProvider authenticationProvider = this.k__BackingField; OnAuthenticationSuccededDelegate onAuthenticationSuccededDelegate; onAuthenticationSuccededDelegate.method_ptr = ldftn(OnAuthenticationSucceded); onAuthenticationSuccededDelegate.method = ldftn(OnAuthenticationSucceded); onAuthenticationSuccededDelegate.m_target = this; IAuthenticationProvider authenticationProvider2 = this.k__BackingField; OnAuthenticationFailedDelegate onAuthenticationFailedDelegate; onAuthenticationFailedDelegate.method_ptr = ldftn(OnAuthenticationFailed); onAuthenticationFailedDelegate.method = ldftn(OnAuthenticationFailed); onAuthenticationFailedDelegate.m_target = this; this.SetState(ConnectionStates.Closed, reason); } // Token: 0x0600999D RID: 39325 RVA: 0x001F5D58 File Offset: 0x001F3F58 [Token(Token = "0x600999D")] [Address(RVA = "0x629F70", Offset = "0x628F70", VA = "0x180629F70")] private void StartNegotiation() { ILogger logger = HTTPManager.Logger; if (this.k__BackingField != ConnectionStates.CloseInitiated) { if (!this.k__BackingField.k__BackingField) { int num = 0; this.SetState(ConnectionStates.Negotiating, num); UriBuilder uriBuilder = new UriBuilder(this.k__BackingField); if (!uriBuilder._path.EndsWith("/")) { string text = uriBuilder._path + "/"; uriBuilder.Path = text; } string text2 = uriBuilder._path + "negotiate"; uriBuilder.Path = text2; Uri uri = uriBuilder.Uri; Action action = new Action(this.OnNegotiationRequestFinished); int num2 = 0; if (this.k__BackingField != 0 && num2 < uri) { num2 += num2; num2++; } NEBIGEDJGPP nebigedjgpp; nebigedjgpp.GDOIHJPIPBM(); return; } ILogger logger2 = HTTPManager.Logger; this.ConnectImpl(); } int num3 = 0; this.SetState(ConnectionStates.Closed, num3); throw new NullReferenceException(); } // Token: 0x0600999E RID: 39326 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600999E")] [Address(RVA = "0x627A10", Offset = "0x626A10", VA = "0x180627A10")] private void ConnectImpl() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600999F RID: 39327 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600999F")] [Address(RVA = "0x627EC0", Offset = "0x626EC0", VA = "0x180627EC0")] private bool IsTransportSupported(string transportName) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x060099A0 RID: 39328 RVA: 0x001F5E60 File Offset: 0x001F4060 [Token(Token = "0x60099A0")] [Address(RVA = "0x628910", Offset = "0x627910", VA = "0x180628910")] private void OnNegotiationRequestFinished(NEBIGEDJGPP req, HOOILIHKMEG resp) { while (this.k__BackingField != ConnectionStates.CloseInitiated) { string text = req.GLGCGFDLEJE(); if (text == 0) { if (!resp.HIOBKPKOMLL) { int num = resp.LLODNIOIDKE; string text2 = resp.DFPPNHINEFO; string text3 = resp.DKPCLPHKFDI; int num2; string text4 = string.Format("Negotiation Request Finished Successfully, but the server sent an error. Status Code: {0}-{1} Message: {2}", num2, text2, text3); } ILogger logger = HTTPManager.Logger; string text5 = resp.DKPCLPHKFDI; string text6 = "Negotiation Request Finished Successfully! Response: " + text5; int num3 = 0; NegotiationResult negotiationResult = NegotiationResult.Parse(resp.DKPCLPHKFDI, num3, this); this.k__BackingField = negotiationResult; if (negotiationResult == 0) { continue; } Uri k__BackingField = this.k__BackingField.k__BackingField; int num4 = 0; if (!(k__BackingField != num4)) { this.ConnectImpl(); } int num5 = 0; this.SetState(ConnectionStates.Redirected, num5); int num6 = this.k__BackingField; num6++; this.k__BackingField = num6; HubOptions hubOptions = this.k__BackingField; int k__BackingField = hubOptions.k__BackingField; if (num6 < k__BackingField) { Uri uri = this.k__BackingField; NegotiationResult negotiationResult2 = this.k__BackingField; Uri k__BackingField2 = negotiationResult2.k__BackingField; this.k__BackingField = k__BackingField2; if (!string.IsNullOrEmpty(negotiationResult2.k__BackingField)) { string k__BackingField = this.k__BackingField.k__BackingField; BearerTokenAuthProvider bearerTokenAuthProvider; bearerTokenAuthProvider.StartAuthentication(); bearerTokenAuthProvider.accessToken = k__BackingField; this.k__BackingField = bearerTokenAuthProvider; } if (this.OnRedirected != (ulong)0L) { Action onRedirected = this.OnRedirected; Uri uri2 = this.k__BackingField; onRedirected(this, uri, uri2); ILogger logger2 = HTTPManager.Logger; } this.StartConnect(); } string text7 = string.Format("MaxRedirects ({0:N0}) reached!", hubOptions); } if ("Negotiation Request: " + text != 0) { break; } return; } int num7 = 0; this.SetState(ConnectionStates.Closed, num7); } // Token: 0x060099A1 RID: 39329 RVA: 0x001F6018 File Offset: 0x001F4218 [Token(Token = "0x60099A1")] [Address(RVA = "0x629BF0", Offset = "0x628BF0", VA = "0x180629BF0")] public void StartClose() { ILogger logger = HTTPManager.Logger; int num = 0; this.SetState(ConnectionStates.CloseInitiated, num); if (this.k__BackingField != 0) { } } // Token: 0x060099A2 RID: 39330 RVA: 0x001F6048 File Offset: 0x001F4248 [Token(Token = "0x60099A2")] [Address(RVA = "0x21BF840", Offset = "0x21BE840", VA = "0x1821BF840")] public IFuture> Stream(string target, params object[] args) { Action action; ulong num2; long num = this.InvokeImp(target, args, action, num2 != 0UL); throw new NullReferenceException(); } // Token: 0x060099A3 RID: 39331 RVA: 0x001F6068 File Offset: 0x001F4268 [Token(Token = "0x60099A3")] [Address(RVA = "0x25F7C60", Offset = "0x25F6C60", VA = "0x1825F7C60")] public void CancelStream(StreamItemContainer container) { container.IsCanceled = true; } // Token: 0x060099A4 RID: 39332 RVA: 0x001F6088 File Offset: 0x001F4288 [Token(Token = "0x60099A4")] [Address(RVA = "0x21BF710", Offset = "0x21BE710", VA = "0x1821BF710")] public IFuture Invoke(string target, params object[] args) { Action action; ulong num2; long num = this.InvokeImp(target, args, action, num2 != 0UL); throw new NullReferenceException(); } // Token: 0x060099A5 RID: 39333 RVA: 0x001F60A8 File Offset: 0x001F42A8 [Token(Token = "0x60099A5")] [Address(RVA = "0x6290E0", Offset = "0x6280E0", VA = "0x1806290E0")] public IFuture Send(string target, params object[] args) { Future future4 = new Future(); Future future = future4; Action action = delegate(Message message) { int num = 0; Future future3 = future; Exception ex = new Exception(num); future3.Fail(ex); }; if (this.k__BackingField == ConnectionStates.Connected && action != 0) { Dictionary> dictionary = this.invocations; throw new NullReferenceException(); } Future future2 = future; throw new NullReferenceException(); } // Token: 0x060099A6 RID: 39334 RVA: 0x001F6104 File Offset: 0x001F4304 [Token(Token = "0x60099A6")] [Address(RVA = "0x627D60", Offset = "0x626D60", VA = "0x180627D60")] private long InvokeImp(string target, object[] args, Action callback, bool isStreamingInvocation = false) { if (this.k__BackingField == ConnectionStates.Connected && callback != 0) { Dictionary> dictionary = this.invocations; throw new NullReferenceException(); } throw new NullReferenceException(); } // Token: 0x060099A7 RID: 39335 RVA: 0x001F6138 File Offset: 0x001F4338 [Token(Token = "0x60099A7")] [Address(RVA = "0x628FA0", Offset = "0x627FA0", VA = "0x180628FA0")] private void SendMessage(Message message) { IProtocol protocol = this.k__BackingField; int num = 0; num += num; num++; bool nonblocking = message.nonblocking; object[] arguments = message.arguments; object result = message.result; ITransport transport = this.k__BackingField; DateTime utcNow = DateTime.UtcNow; this.lastMessageSent = utcNow; } // Token: 0x060099A8 RID: 39336 RVA: 0x001F618C File Offset: 0x001F438C [Token(Token = "0x60099A8")] [Address(RVA = "0x628CE0", Offset = "0x627CE0", VA = "0x180628CE0")] public void On(string methodName, Action callback) { Action action = delegate(object[] args) { callback(); }; Dictionary dictionary = this.subscriptions; bool flag; if (!flag) { Dictionary dictionary2 = this.subscriptions; List list = new List(1); Subscription subscription; subscription.callbacks = list; throw new NullReferenceException(); } } // Token: 0x060099A9 RID: 39337 RVA: 0x001F61E4 File Offset: 0x001F43E4 [Token(Token = "0x60099A9")] [Address(RVA = "0x25F83E0", Offset = "0x25F73E0", VA = "0x1825F83E0")] public void On(string methodName, Action callback) { Type[] array = new Type[1]; Type typeFromHandle = typeof(Type); if (typeFromHandle != 0) { } array[0] = typeFromHandle; Action action; this.On(methodName, array, action); } // Token: 0x060099AA RID: 39338 RVA: 0x001F6220 File Offset: 0x001F4420 [Token(Token = "0x60099AA")] [Address(RVA = "0x25F8200", Offset = "0x25F7200", VA = "0x1825F8200")] public void On(string methodName, Action callback) { Type[] array = new Type[2]; Type typeFromHandle = typeof(Type); if (typeFromHandle != 0) { } array[0] = typeFromHandle; Type type; if (type != 0) { } array[1] = type; Action action; this.On(methodName, array, action); } // Token: 0x060099AB RID: 39339 RVA: 0x001F6268 File Offset: 0x001F4468 [Token(Token = "0x60099AB")] [Address(RVA = "0x25F7FC0", Offset = "0x25F6FC0", VA = "0x1825F7FC0")] public void On(string methodName, Action callback) { Type[] array = new Type[3]; Type typeFromHandle = typeof(Type); if (typeFromHandle != 0) { } array[0] = typeFromHandle; Type type; if (type != 0) { } array[1] = type; Type type2; if (type2 != 0) { } array[2] = type2; Action action; this.On(methodName, array, action); } // Token: 0x060099AC RID: 39340 RVA: 0x001F62BC File Offset: 0x001F44BC [Token(Token = "0x60099AC")] [Address(RVA = "0x25F7D20", Offset = "0x25F6D20", VA = "0x1825F7D20")] public void On(string methodName, Action callback) { Type[] array = new Type[4]; Type typeFromHandle = typeof(Type); if (typeFromHandle != 0) { } array[0] = typeFromHandle; Type type; if (type != 0) { } array[1] = type; Type type2; if (type2 != 0) { } array[2] = type2; Type type3; if (type3 != 0) { } array[3] = type3; Action action; this.On(methodName, array, action); } // Token: 0x060099AD RID: 39341 RVA: 0x001F6320 File Offset: 0x001F4520 [Token(Token = "0x60099AD")] [Address(RVA = "0x628E70", Offset = "0x627E70", VA = "0x180628E70")] public void On(string methodName, Type[] paramTypes, Action callback) { Dictionary dictionary = this.subscriptions; bool flag; if (!flag) { Dictionary dictionary2 = this.subscriptions; List list = new List(1); Subscription subscription; subscription.callbacks = list; throw new NullReferenceException(); } } // Token: 0x060099AE RID: 39342 RVA: 0x001F635C File Offset: 0x001F455C [Token(Token = "0x60099AE")] [Address(RVA = "0x628210", Offset = "0x627210", VA = "0x180628210")] internal void OnMessages(List messages) { ThrowHelper.ThrowArgumentOutOfRangeException(); bool flag; if (this.OnMessage == 0 || !flag) { } ILogger logger = HTTPManager.Logger; int num = 0; if (logger <= (ulong)6L) { Dictionary dictionary = this.subscriptions; bool flag2; if (flag2 && num < (flag2 ? 1 : 0)) { ThrowHelper.ThrowArgumentOutOfRangeException(); num += 2; num += num; IProtocol protocol = this.k__BackingField; ILogger logger2 = HTTPManager.Logger; ILogger logger3 = HTTPManager.Logger; num++; bool flag3; if (flag3) { Dictionary> dictionary2 = this.invocations; bool flag4; if (flag4) { ILogger logger4 = HTTPManager.Logger; bool flag5; if (flag5) { Dictionary> dictionary3 = this.invocations; bool flag6; if (flag6) { ILogger logger5 = HTTPManager.Logger; } Dictionary> dictionary4 = this.invocations; } } } } } } // Token: 0x060099AF RID: 39343 RVA: 0x001F6434 File Offset: 0x001F4634 [Token(Token = "0x60099AF")] [Address(RVA = "0x62A240", Offset = "0x629240", VA = "0x18062A240")] private void Transport_OnStateChanged(TransportStates oldState, TransportStates newState) { ILogger logger = HTTPManager.Logger; ILogger logger2 = logger; if (logger != 0) { if (logger != 0) { if (logger == 0) { ITransport transport = this.k__BackingField; goto IL_2B; } if (logger2 == (ulong)1L) { } } return; } IL_2B: throw new NullReferenceException(); } // Token: 0x060099B0 RID: 39344 RVA: 0x001F6474 File Offset: 0x001F4674 [Token(Token = "0x60099B0")] [Address(RVA = "0x6292B0", Offset = "0x6282B0", VA = "0x1806292B0")] private void SetState(ConnectionStates state, [Optional] string errorReason) { ILogger logger = HTTPManager.Logger; string[] array = new string[7]; if ("SetState - from State: '" != 0) { } array[0] = "SetState - from State: '"; ConnectionStates connectionStates; int num = connectionStates.GetHashCode(); if (num != 0) { } array[1] = num; if ("' to State: '" != 0) { } array[2] = "' to State: '"; int num2; num = num2; if (num != 0) { } array[3] = num; if ("' errorReason: '" != 0) { } array[4] = "' errorReason: '"; if (errorReason != 0) { } array[5] = errorReason; if ("'" != 0) { } array[6] = "'"; string text = string.Concat(array); ILogger logger2 = HTTPManager.Logger; string[] array2 = new string[5]; if ("SetState - from State: '" != 0) { } array2[0] = "SetState - from State: '"; ConnectionStates connectionStates2; int num3 = connectionStates2.GetHashCode(); if (num3 != 0) { } array2[1] = num3; if ("' to State: '" != 0) { } array2[2] = "' to State: '"; int num4; num3 = num4; if (num3 != 0) { } array2[3] = num3; if ("'" != 0) { } array2[4] = "'"; string text2 = string.Concat(array2); if (this.k__BackingField != text2) { this.k__BackingField = text2; if (text2 <= (ulong)6L) { Action onConnected = this.OnConnected; if (onConnected != 0) { onConnected(this); } ILogger logger3 = HTTPManager.Logger; HTTPManager.Heartbeats.Subscribe(this); DateTime utcNow = DateTime.UtcNow; this.lastMessageSent = utcNow; } } } // Token: 0x060099B1 RID: 39345 RVA: 0x001F6658 File Offset: 0x001F4858 [Token(Token = "0x60099B1")] [Address(RVA = "0x627860", Offset = "0x626860", VA = "0x180627860", Slot = "4")] void IHeartbeat.OnHeartbeatUpdate(TimeSpan dif) { if (this.k__BackingField == ConnectionStates.Connected) { TimeSpan k__BackingField = this.k__BackingField.k__BackingField; TimeSpan zero = TimeSpan.Zero; if (k__BackingField != zero) { DateTime utcNow = DateTime.UtcNow; DateTime dateTime = this.lastMessageSent; TimeSpan timeSpan = utcNow - dateTime; TimeSpan k__BackingField2 = this.k__BackingField.k__BackingField; if (timeSpan >= k__BackingField2) { } } } } // Token: 0x040067E3 RID: 26595 [Token(Token = "0x40067E3")] public static readonly object[] EmptyArgs = new object[0]; // Token: 0x040067F1 RID: 26609 [global::Cpp2IlInjected.FieldOffset(Offset = "0x78")] [Token(Token = "0x40067F1")] private long lastInvocationId; // Token: 0x040067F2 RID: 26610 [global::Cpp2IlInjected.FieldOffset(Offset = "0x80")] [Token(Token = "0x40067F2")] private Dictionary> invocations; // Token: 0x040067F3 RID: 26611 [global::Cpp2IlInjected.FieldOffset(Offset = "0x88")] [Token(Token = "0x40067F3")] private Dictionary subscriptions; // Token: 0x040067F4 RID: 26612 [global::Cpp2IlInjected.FieldOffset(Offset = "0x90")] [Token(Token = "0x40067F4")] private DateTime lastMessageSent; } }