namespace Photon.VR
{

	// [TypeInfo RVA: 0x0]
	private sealed class <RigRecoveryLoop>d__88 : Object
	{
		private int <>1__state; // 0x10
		private object <>2__current; // 0x18
		public Photon.VR.PhotonVRManager <>4__this; // 0x20
		private UnityEngine.WaitForSeconds <wait>5__2; // 0x28

		// RVA: 0x328A6C0 VA: 0x78189756C0
		public void .ctor(int <>1__state);
		/*
		 *   System.Object..ctor(this);
		 *   this.n_1_state = n_1_state;
		 *   return;
		 */
		// RVA: 0x328C220 VA: 0x7818977220
		private void System.IDisposable.Dispose();
		/*
		 *   return;
		 */
		// RVA: 0x328C224 VA: 0x7818977224
		private bool MoveNext();
		/*
		 *   undefined *puVar1;
		 *   bool bVar2;
		 *   void *pvVar3;
		 *   void *extraout_x1;
		 *   int iVar4;
		 *   PhotonVRManager *this_00;
		 *   float seconds;
		 *   undefined1 auVar5 [16];
		 *
		 *   if ((bRam000000000754ad08 & 1) == 0) {
		 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8);
		 *     func_0x031fdc8c(typeinfo_ptr_PhotonUnityNetworking_PhotonNetwork_6FC08F0);
		 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_WaitForSeconds_6FC0B10);
		 *     bRam000000000754ad08 = 1;
		 *     methodInfo = extraout_x1;
		 *   }
		 *   iVar4 = this.n_1_state;
		 *   this_00 = this.n_4_this;
		 *   if ((iVar4 == 2) || (iVar4 == 1)) {
		 *     this.n_1_state = -1;
		 *   }
		 *   else {
		 *     if (iVar4 != 0) {
		 *       return false;
		 *     }
		 *     this.n_1_state = -1;
		 *     if (this_00 == null) goto LAB_0338c3f0;
		 *     seconds = this_00->rigCheckInterval;
		 *     pvVar3 = (void *)func_0x031fdf24(*(undefined8 *)
		 *                                       typeinfo_ptr_UnityEngine_CoreModule_WaitForSeconds_6FC0B10,
		 *                                      methodInfo);
		 *     UnityEngine.WaitForSeconds..ctor(pvVar3,seconds);
		 *     this.wait_5_2 = pvVar3;
		 *     func_0x031fdc38(&this.wait_5_2,pvVar3);
		 *   }
		 *   if (*(int *)(*(long *)typeinfo_ptr_PhotonUnityNetworking_PhotonNetwork_6FC08F0 + 0xe4) == 0) {
		 *     func_0x031fde08();
		 *   }
		 *   bVar2 = Photon.Pun.PhotonNetwork.get_InRoom();
		 *   puVar1 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
		 *   if (!bVar2) {
		 *     if (this_00 == null) goto LAB_0338c3f0;
		 *     this_00->trackedLocalRig = null;
		 *     func_0x031fdc38(&this_00->trackedLocalRig,0);
		 *     this.n_2_current = this.wait_5_2;
		 *     func_0x031fdc38();
		 *     iVar4 = 1;
		 *     goto LAB_0338c3cc;
		 *   }
		 *   if (this_00 == null) {
		 * LAB_0338c3f0:
		 *     IL2CPP.ThrowNullReferenceException();
		 *   }
		 *   pvVar3 = this_00->trackedLocalRig;
		 *   if (*(int *)(*(long *)typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8 + 0xe4) == 0) {
		 *     func_0x031fde08();
		 *   }
		 *   auVar5 = UnityEngine.Object.op_Equality(pvVar3,null);
		 *   pvVar3 = auVar5._8_8_;
		 *   if ((auVar5._0_8_ & 1) == 0) {
		 *     pvVar3 = this_00->trackedLocalRig;
		 *     if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
		 *       func_0x031fde08();
		 *     }
		 *     auVar5 = UnityEngine.Object.op_Implicit(pvVar3);
		 *     pvVar3 = auVar5._8_8_;
		 *     if ((auVar5._0_8_ & 1) == 0) goto LAB_0338c354;
		 *   }
		 *   else {
		 * LAB_0338c354:
		 *     PhotonVRManager.ResolveLocalRig(this_00);
		 *   }
		 *   pvVar3 = this_00->trackedLocalRig;
		 *   if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
		 *     func_0x031fde08();
		 *   }
		 *   auVar5 = UnityEngine.Object.op_Equality(pvVar3,null);
		 *   if ((auVar5._0_8_ & 1) != 0) {
		 *     PhotonVRManager.TryRespawnLocalRig(this_00);
		 *   }
		 *   this.n_2_current = this.wait_5_2;
		 *   func_0x031fdc38();
		 *   iVar4 = 2;
		 * LAB_0338c3cc:
		 *   this.n_1_state = iVar4;
		 *   return true;
		 */
		// RVA: 0x328C3F4 VA: 0x78189773F4
		private object System.Collections.Generic.IEnumerator<System.Object>.get_Current();
		/*
		 *   return this.n_2_current;
		 */
		// RVA: 0x328C3FC VA: 0x78189773FC
		private void System.Collections.IEnumerator.Reset();
		/*
		 *   void *this_00;
		 *   undefined8 uVar1;
		 *
		 *   func_0x031fdca0(PTR_DAT_070c0ad0);
		 *   this_00 = (void *)func_0x031fdf24();
		 *   System.NotSupportedException..ctor(this_00);
		 *   uVar1 = func_0x031fdca0(PTR_DAT_070c5e00);
		 *   IL2CPP.ThrowManagedException();
		 */
		// RVA: 0x328C434 VA: 0x7818977434
		private object System.Collections.IEnumerator.get_Current();
		/*
		 *   return this.n_2_current;
		 */
	}
}
