// [TypeInfo RVA: 0x0]
private sealed class <WrapWithFailsafe>d__89 : Object
{
	private int <>1__state; // 0x10
	private object <>2__current; // 0x18
	public float timeout; // 0x20
	public AdvancedAI_Final <>4__this; // 0x28
	public System.Collections.IEnumerator inner; // 0x30
	private float <started>5__2; // 0x38

	// RVA: 0x31F6508 VA: 0x78188E1508
	public void .ctor(int <>1__state);
	/*
	 *   System.Object..ctor(this);
	 *   this.n_1_state = n_1_state;
	 *   return;
	 */
	// RVA: 0x31F975C VA: 0x78188E475C
	private void System.IDisposable.Dispose();
	/*
	 *   return;
	 */
	// RVA: 0x31F9760 VA: 0x78188E4760
	private bool MoveNext();
	/*
	 *   undefined *puVar1;
	 *   undefined8 *puVar2;
	 *   void *pvVar3;
	 *   void *in_x2;
	 *   long lVar4;
	 *   ulong uVar5;
	 *   int *piVar6;
	 *   AdvancedAI_Final *this_00;
	 *   void **ppvVar7;
	 *   long *plVar8;
	 *   float fVar9;
	 *
	 *   if ((bRam000000000754a74c & 1) == 0) {
	 *     func_0x031fdc8c(typeinfo_ptr_mscorlib_IEnumerator_6FC0B40);
	 *     func_0x031fdc8c(PTR_DAT_070c0b48);
	 *     bRam000000000754a74c = 1;
	 *   }
	 *   this_00 = this.n_4_this;
	 *   if (this.n_1_state == 1) {
	 *     this.n_1_state = -1;
	 *   }
	 *   else {
	 *     if (this.n_1_state != 0) {
	 *       return false;
	 *     }
	 *     this.n_1_state = -1;
	 *     fVar9 = UnityEngine.Time.get_time();
	 *     this.started_5_2 = fVar9;
	 *   }
	 *   fVar9 = UnityEngine.Time.get_time();
	 *   puVar1 = typeinfo_ptr_mscorlib_IEnumerator_6FC0B40;
	 *   if (fVar9 - this.started_5_2 <= this.timeout) {
	 *     plVar8 = this.inner;
	 *     if (plVar8 == null) {
	 *       IL2CPP.ThrowNullReferenceException();
	 *     }
	 *     lVar4 = *plVar8;
	 *     uVar5 = (ulong)*(ushort *)(lVar4 + 0x12e);
	 *     if (uVar5 != 0) {
	 *       piVar6 = (int *)(*(long *)(lVar4 + 0xb0) + 8);
	 *       do {
	 *         if (*(long *)(piVar6 + -2) == *(long *)typeinfo_ptr_mscorlib_IEnumerator_6FC0B40) {
	 *           puVar2 = (undefined8 *)(lVar4 + (long)*piVar6 * 0x10 + 0x138);
	 *           goto LAB_032f9864;
	 *         }
	 *         uVar5 = uVar5 - 1;
	 *         piVar6 = piVar6 + 4;
	 *       } while (uVar5 != 0);
	 *     }
	 *     puVar2 = (undefined8 *)
	 *              func_0x03237558(plVar8,*(long *)typeinfo_ptr_mscorlib_IEnumerator_6FC0B40,0);
	 * LAB_032f9864:
	 *     uVar5 = (*(code *)*puVar2)(plVar8,puVar2[1]);
	 *     if ((uVar5 & 1) != 0) {
	 *       plVar8 = this.inner;
	 *       if (plVar8 == null) {
	 *         IL2CPP.ThrowNullReferenceException();
	 *       }
	 *       lVar4 = *plVar8;
	 *       uVar5 = (ulong)*(ushort *)(lVar4 + 0x12e);
	 *       if (uVar5 != 0) {
	 *         piVar6 = (int *)(*(long *)(lVar4 + 0xb0) + 8);
	 *         do {
	 *           if (*(long *)(piVar6 + -2) == *(long *)puVar1) {
	 *             puVar2 = (undefined8 *)(lVar4 + (long)(*piVar6 + 1) * 0x10 + 0x138);
	 *             goto LAB_032f98fc;
	 *           }
	 *           uVar5 = uVar5 - 1;
	 *           piVar6 = piVar6 + 4;
	 *         } while (uVar5 != 0);
	 *       }
	 *       puVar2 = (undefined8 *)func_0x03237558(plVar8,*(long *)puVar1,1);
	 * LAB_032f98fc:
	 *       pvVar3 = (void *)(*(code *)*puVar2)(plVar8,puVar2[1]);
	 *       this.n_2_current = pvVar3;
	 *       func_0x031fdc38(&this.n_2_current);
	 *       this.n_1_state = 1;
	 *       return true;
	 *     }
	 *     if (this_00 == null) goto LAB_032f99cc;
	 *     ppvVar7 = &this_00->activeCoroutine;
	 *     if (*ppvVar7 != null) {
	 *       *ppvVar7 = null;
	 *       func_0x031fdc38(ppvVar7,0);
	 *     }
	 *   }
	 *   else {
	 *     if (this_00 == null) {
	 * LAB_032f99cc:
	 *       IL2CPP.ThrowNullReferenceException();
	 *     }
	 *     AdvancedAI_Final.ForceIdleFromMaster(this_00,*(void **)PTR_DAT_070c0b48);
	 *   }
	 *   return false;
	 */
	// RVA: 0x31F9A04 VA: 0x78188E4A04
	private object System.Collections.Generic.IEnumerator<System.Object>.get_Current();
	/*
	 *   return this.n_2_current;
	 */
	// RVA: 0x31F9A0C VA: 0x78188E4A0C
	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_070c0b68);
	 *   IL2CPP.ThrowManagedException();
	 */
	// RVA: 0x31F9A44 VA: 0x78188E4A44
	private object System.Collections.IEnumerator.get_Current();
	/*
	 *   return this.n_2_current;
	 */
}
