// [TypeInfo RVA: 0x0]
public class GlobalAnnouncementSystem : MonoBehaviour
{
	public TMPro.TMP_Text AnnouncementText; // 0x20
	private const float PollInterval; // 0x0
	private const string PrimarySupabaseUrl; // 0x0
	private const string PrimarySupabaseAnonKey; // 0x0
	private const string BackupSupabaseUrl; // 0x0
	private const string BackupSupabaseAnonKey; // 0x0
	private string LastAnnouncementTimestamp; // 0x28
	private bool InitialCheckComplete; // 0x30
	private UnityEngine.Coroutine AnnouncementCoroutine; // 0x38

	// RVA: 0x32010C4 VA: 0x78188EC0C4
	private void Start();
	/*
	 *   undefined *puVar1;
	 *   undefined *puVar2;
	 *   undefined *puVar3;
	 *   ulong uVar4;
	 *   long *plVar5;
	 *   void *this_00;
	 *   undefined8 uVar6;
	 *   void *extraout_x1;
	 *   void *extraout_x1_00;
	 *   void *extraout_x1_01;
	 *   void *pvVar7;
	 *   long lVar8;
	 *
	 *   puVar1 = typeinfo_ptr_UnityEngine_CoreModule_Debug_6FC07A8;
	 *   if ((bRam000000000754a795 & 1) == 0) {
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Debug_6FC07A8);
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8);
	 *     func_0x031fdc8c(PTR_DAT_070c0f80);
	 *     func_0x031fdc8c(PTR_DAT_070c0df0);
	 *     func_0x031fdc8c(PTR_DAT_070c0f88);
	 *     func_0x031fdc8c(PTR_DAT_070c0f90);
	 *     bRam000000000754a795 = 1;
	 *     methodInfo = extraout_x1;
	 *   }
	 *   puVar3 = PTR_DAT_070c0f80;
	 *   puVar2 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
	 *   if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *     func_0x031fde08(*(long *)puVar1,methodInfo);
	 *   }
	 *   UnityEngine.Debug.Log(*(void **)puVar3);
	 *   pvVar7 = this.AnnouncementText;
	 *   if (*(int *)(*(long *)puVar2 + 0xe4) == 0) {
	 *     func_0x031fde08();
	 *   }
	 *   uVar4 = UnityEngine.Object.op_Inequality(pvVar7,null);
	 *   puVar2 = PTR_DAT_070c0f88;
	 *   if ((uVar4 & 1) != 0) {
	 *     if (this.AnnouncementText != null) {
	 *       pvVar7 = UnityEngine.Object.get_name(this.AnnouncementText);
	 *       pvVar7 = System.String.Concat(*(void **)PTR_DAT_070c0f90,pvVar7);
	 *       if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *         func_0x031fde08(*(long *)puVar1);
	 *       }
	 *       UnityEngine.Debug.Log(pvVar7);
	 *       plVar5 = this.AnnouncementText;
	 *       if (plVar5 != null) {
	 *         (**(code **)(*plVar5 + 0x558))
	 *                   (plVar5,*(undefined8 *)PTR_DAT_070c0df0,*(undefined8 *)(*plVar5 + 0x560));
	 *         pvVar7 = extraout_x1_00;
	 *         goto LAB_03301228;
	 *       }
	 *     }
	 *     IL2CPP.ThrowNullReferenceException();
	 *   }
	 *   if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *     func_0x031fde08();
	 *   }
	 *   UnityEngine.Debug.LogError(*(void **)puVar2);
	 *   pvVar7 = extraout_x1_01;
	 * LAB_03301228:
	 *   pvVar7 = GlobalAnnouncementSystem.PollAnnouncements(this);
	 *   if (pvVar7 == null) {
	 *     func_0x031fdca0(PTR_DAT_070c9118,0,0);
	 *     this_00 = (void *)func_0x031fdf24();
	 *     pvVar7 = (void *)func_0x031fdca0(PTR_DAT_0714f5c8);
	 *     NullReferenceException..ctor(this_00,pvVar7);
	 *   }
	 *   else {
	 *     uVar4 = UnityEngine.MonoBehaviour.IsObjectMonoBehaviour();
	 *     if ((uVar4 & 1) != 0) {
	 *       if ((bRam000000000755f8f7 & 1) == 0) {
	 *         func_0x031fdc8c(PTR_DAT_0714f590);
	 *         bRam000000000755f8f7 = 1;
	 *       }
	 *       if (this != null) {
	 *         lVar8 = *(long *)&this.field_0x10;
	 *         if (lVar8 == 0) {
	 *           UnityEngine.Bindings.ThrowHelper.ThrowNullReferenceException(this)
	 *           ;
	 *         }
	 *         if (pcRam000000000755f968 == null) {
	 *           pcRam000000000755f968 = (code *)func_0x031fdc50(&UNK_013604ff);
	 *         }
	 *         (*pcRam000000000755f968)(lVar8,pvVar7);
	 *         return;
	 *       }
	 *       IL2CPP.ThrowNullReferenceException();
	 *     }
	 *     func_0x031fdca0(PTR_DAT_070c6fb0);
	 *     this_00 = (void *)func_0x031fdf24();
	 *     pvVar7 = (void *)func_0x031fdca0(PTR_DAT_0714f5b0);
	 *     System.ArgumentException..ctor(this_00,pvVar7);
	 *   }
	 *   uVar6 = func_0x031fdca0(PTR_DAT_0714f5d0);
	 *   IL2CPP.ThrowManagedException();
	 */
	// RVA: 0x3201250 VA: 0x78188EC250
	private System.Collections.IEnumerator PollAnnouncements();
	/*
	 *   undefined *puVar1;
	 *   void *this_00;
	 *   void *extraout_x1;
	 *
	 *   puVar1 = typeinfo_ptr_Assembly_CSharp_PollAnnouncements_d__11_6FC0F98;
	 *   if ((bRam000000000754a796 & 1) == 0) {
	 *     func_0x031fdc8c(typeinfo_ptr_Assembly_CSharp_PollAnnouncements_d__11_6FC0F98);
	 *     bRam000000000754a796 = 1;
	 *     methodInfo = extraout_x1;
	 *   }
	 *   this_00 = (void *)func_0x031fdf24(*(undefined8 *)puVar1,methodInfo);
	 *   System.Object..ctor(this_00);
	 *   *(undefined4 *)((long)this_00 + 0x10) = 0;
	 *   *(undefined8 *)((long)this_00 + 0x20) = this;
	 *   func_0x031fdc38((undefined8 *)((long)this_00 + 0x20),this);
	 *   return this_00;
	 */
	// RVA: 0x32012E4 VA: 0x78188EC2E4
	private System.Collections.IEnumerator CheckAnnouncement();
	/*
	 *   undefined *puVar1;
	 *   void *this_00;
	 *   void *extraout_x1;
	 *
	 *   puVar1 = typeinfo_ptr_Assembly_CSharp_CheckAnnouncement_d__12_6FC0FA0;
	 *   if ((bRam000000000754a797 & 1) == 0) {
	 *     func_0x031fdc8c(typeinfo_ptr_Assembly_CSharp_CheckAnnouncement_d__12_6FC0FA0);
	 *     bRam000000000754a797 = 1;
	 *     methodInfo = extraout_x1;
	 *   }
	 *   this_00 = (void *)func_0x031fdf24(*(undefined8 *)puVar1,methodInfo);
	 *   System.Object..ctor(this_00);
	 *   *(undefined4 *)((long)this_00 + 0x10) = 0;
	 *   *(undefined8 *)((long)this_00 + 0x20) = this;
	 *   func_0x031fdc38((undefined8 *)((long)this_00 + 0x20),this);
	 *   return this_00;
	 */
	// RVA: 0x3201378 VA: 0x78188EC378
	private System.Collections.IEnumerator GetAnnouncements(string baseUrl, string anonKey, string endpoint, System.Action<GlobalAnnouncementSystem.Announcement[]> callback);
	/*
	 *   undefined *puVar1;
	 *   void *this_00;
	 *
	 *   puVar1 = typeinfo_ptr_Assembly_CSharp_GetAnnouncements_d__13_6FC0FA8;
	 *   if ((bRam000000000754a798 & 1) == 0) {
	 *     func_0x031fdc8c(typeinfo_ptr_Assembly_CSharp_GetAnnouncements_d__13_6FC0FA8);
	 *     bRam000000000754a798 = 1;
	 *   }
	 *   this_00 = (void *)func_0x031fdf24(*(undefined8 *)puVar1);
	 *   System.Object..ctor(this_00);
	 *   *(undefined4 *)((long)this_00 + 0x10) = 0;
	 *   *(undefined8 *)((long)this_00 + 0x20) = baseUrl;
	 *   func_0x031fdc38((undefined8 *)((long)this_00 + 0x20),baseUrl);
	 *   *(undefined8 *)((long)this_00 + 0x30) = anonKey;
	 *   func_0x031fdc38((undefined8 *)((long)this_00 + 0x30),anonKey);
	 *   *(undefined8 *)((long)this_00 + 0x28) = endpoint;
	 *   func_0x031fdc38((undefined8 *)((long)this_00 + 0x28),endpoint);
	 *   *(undefined8 *)((long)this_00 + 0x38) = callback;
	 *   func_0x031fdc38((undefined8 *)((long)this_00 + 0x38),callback);
	 *   return this_00;
	 */
	// RVA: 0x3201458 VA: 0x78188EC458
	private System.Collections.IEnumerator DisplayAnnouncement(string username, string message);
	/*
	 *   undefined *puVar1;
	 *   void *this_00;
	 *
	 *   puVar1 = PTR_DAT_070c0fb0;
	 *   if ((bRam000000000754a799 & 1) == 0) {
	 *     func_0x031fdc8c(PTR_DAT_070c0fb0);
	 *     bRam000000000754a799 = 1;
	 *   }
	 *   this_00 = (void *)func_0x031fdf24(*(undefined8 *)puVar1);
	 *   System.Object..ctor(this_00);
	 *   *(undefined4 *)((long)this_00 + 0x10) = 0;
	 *   *(undefined8 *)((long)this_00 + 0x20) = this;
	 *   func_0x031fdc38((undefined8 *)((long)this_00 + 0x20),this);
	 *   *(undefined8 *)((long)this_00 + 0x28) = username;
	 *   func_0x031fdc38((undefined8 *)((long)this_00 + 0x28),username);
	 *   *(undefined8 *)((long)this_00 + 0x30) = message;
	 *   func_0x031fdc38((undefined8 *)((long)this_00 + 0x30),message);
	 *   return this_00;
	 */
	// RVA: 0x320151C VA: 0x78188EC51C
	public void .ctor();
	/*
	 *   undefined *puVar1;
	 *
	 *   puVar1 = PTR_DAT_070c0df0;
	 *   if ((bRam000000000754a79a & 1) == 0) {
	 *     func_0x031fdc8c(PTR_DAT_070c0df0);
	 *     bRam000000000754a79a = 1;
	 *   }
	 *   this.LastAnnouncementTimestamp = *(void **)puVar1;
	 *   func_0x031fdc38();
	 *   puVar1 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
	 *   if ((bRam000000000755f76f & 1) == 0) {
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8,0);
	 *     bRam000000000755f76f = 1;
	 *   }
	 *   if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *     func_0x031fde08();
	 *   }
	 *   return;
	 */
}
