namespace TMPro.Examples
{

	// [TypeInfo RVA: 0x0]
	private sealed class <Start>d__4 : Object
	{
		private int <>1__state; // 0x10
		private object <>2__current; // 0x18
		public TMPro.Examples.TeleType <>4__this; // 0x20
		private int <totalVisibleCharacters>5__2; // 0x28
		private int <counter>5__3; // 0x2C

		// RVA: 0x326BC14 VA: 0x7818956C14
		public void .ctor(int <>1__state);
		/*
		 *   System.Object..ctor(this);
		 *   *(int *)((long)this + 0x10) = n_1_state;
		 *   return;
		 */
		// RVA: 0x326BCC0 VA: 0x7818956CC0
		private void System.IDisposable.Dispose();
		/*
		 *   return;
		 */
		// RVA: 0x326BCC4 VA: 0x7818956CC4
		private bool MoveNext();
		/*
		 *   int iVar1;
		 *   long *plVar2;
		 *   undefined8 uVar3;
		 *   void *pvVar4;
		 *   undefined4 uVar5;
		 *   int iVar6;
		 *   long lVar7;
		 *
		 *   if ((bRam000000000754abe8 & 1) == 0) {
		 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_WaitForSeconds_6FC0B10);
		 *     bRam000000000754abe8 = 1;
		 *   }
		 *   iVar6 = *(int *)((long)this + 0x10);
		 *   lVar7 = *(long *)((long)this + 0x20);
		 *   if (iVar6 < 2) {
		 *     if (iVar6 != 0) {
		 *       if (iVar6 != 1) {
		 *         return false;
		 *       }
		 *       *(undefined4 *)((long)this + 0x10) = 0xffffffff;
		 *       if ((lVar7 != 0) && (plVar2 = *(long **)(lVar7 + 0x30), plVar2 != null)) {
		 *         (**(code **)(*plVar2 + 0x558))
		 *                   (plVar2,*(undefined8 *)(lVar7 + 0x28),*(undefined8 *)(*plVar2 + 0x560));
		 *         pvVar4 = (void *)func_0x031fdf24(*(undefined8 *)
		 *                                           typeinfo_ptr_UnityEngine_CoreModule_WaitForSeconds_6FC0B10
		 *                                         );
		 *         UnityEngine.WaitForSeconds..ctor(pvVar4,1.0);
		 *         *(undefined8 *)((long)this + 0x18) = pvVar4;
		 *         func_0x031fdc38((undefined8 *)((long)this + 0x18),pvVar4);
		 *         uVar5 = 2;
		 *         goto LAB_0336bf0c;
		 *       }
		 *       goto LAB_0336bf24;
		 *     }
		 *     *(undefined4 *)((long)this + 0x10) = 0xffffffff;
		 *     if ((lVar7 == 0) || (plVar2 = *(long **)(lVar7 + 0x30), plVar2 == null))
		 *     goto LAB_0336bf24;
		 *     (**(code **)(*plVar2 + 0x7d8))(plVar2,0,0,*(undefined8 *)(*plVar2 + 0x7e0));
		 *     if ((*(void **)(lVar7 + 0x30) == null) ||
		 *        (pvVar4 = TMPro.TMP_Text.get_textInfo(*(void **)(lVar7 + 0x30)), pvVar4 == null))
		 *     goto LAB_0336bf24;
		 *     iVar6 = 0;
		 *     *(undefined4 *)((long)this + 0x28) = *(undefined4 *)((long)pvVar4 + 0x18);
		 *     *(undefined4 *)((long)this + 0x2c) = 0;
		 * LAB_0336be70:
		 *     if (*(void **)(lVar7 + 0x30) == null) {
		 * LAB_0336bf24:
		 *       IL2CPP.ThrowNullReferenceException();
		 *     }
		 *     TMPro.TMP_Text.set_maxVisibleCharacters(*(void **)(lVar7 + 0x30),iVar6);
		 *     if (*(int *)((long)this + 0x28) <= iVar6) {
		 *       pvVar4 = (void *)func_0x031fdf24(*(undefined8 *)
		 *                                         typeinfo_ptr_UnityEngine_CoreModule_WaitForSeconds_6FC0B10);
		 *       UnityEngine.WaitForSeconds..ctor(pvVar4,1.0);
		 *       *(undefined8 *)((long)this + 0x18) = pvVar4;
		 *       func_0x031fdc38((undefined8 *)((long)this + 0x18),pvVar4);
		 *       uVar5 = 1;
		 *       goto LAB_0336bf0c;
		 *     }
		 *   }
		 *   else {
		 *     if (iVar6 == 2) {
		 *       *(undefined4 *)((long)this + 0x10) = 0xffffffff;
		 *       if ((lVar7 == 0) || (plVar2 = *(long **)(lVar7 + 0x30), plVar2 == null))
		 *       goto LAB_0336bf24;
		 *       (**(code **)(*plVar2 + 0x558))
		 *                 (plVar2,*(undefined8 *)(lVar7 + 0x20),*(undefined8 *)(*plVar2 + 0x560));
		 *       pvVar4 = (void *)func_0x031fdf24(*(undefined8 *)
		 *                                         typeinfo_ptr_UnityEngine_CoreModule_WaitForSeconds_6FC0B10);
		 *       UnityEngine.WaitForSeconds..ctor(pvVar4,1.0);
		 *       *(undefined8 *)((long)this + 0x18) = pvVar4;
		 *       func_0x031fdc38((undefined8 *)((long)this + 0x18),pvVar4);
		 *       uVar5 = 3;
		 *       goto LAB_0336bf0c;
		 *     }
		 *     if (iVar6 != 3) {
		 *       if (iVar6 != 4) {
		 *         return false;
		 *       }
		 *       *(undefined4 *)((long)this + 0x10) = 0xffffffff;
		 *       if (lVar7 == 0) goto LAB_0336bf24;
		 *       iVar6 = *(int *)((long)this + 0x28) + 1;
		 *       iVar1 = 0;
		 *       if (iVar6 != 0) {
		 *         iVar1 = *(int *)((long)this + 0x2c) / iVar6;
		 *       }
		 *       iVar6 = *(int *)((long)this + 0x2c) - iVar1 * iVar6;
		 *       goto LAB_0336be70;
		 *     }
		 *     *(undefined4 *)((long)this + 0x10) = 0xffffffff;
		 *   }
		 *   uVar3 = *(undefined8 *)typeinfo_ptr_UnityEngine_CoreModule_WaitForSeconds_6FC0B10;
		 *   *(int *)((long)this + 0x2c) = *(int *)((long)this + 0x2c) + 1;
		 *   pvVar4 = (void *)func_0x031fdf24(uVar3);
		 *   UnityEngine.WaitForSeconds..ctor(pvVar4,_UNK_0134ea00);
		 *   *(undefined8 *)((long)this + 0x18) = pvVar4;
		 *   func_0x031fdc38((undefined8 *)((long)this + 0x18),pvVar4);
		 *   uVar5 = 4;
		 * LAB_0336bf0c:
		 *   *(undefined4 *)((long)this + 0x10) = uVar5;
		 *   return true;
		 */
		// RVA: 0x326BF28 VA: 0x7818956F28
		private object System.Collections.Generic.IEnumerator<System.Object>.get_Current();
		/*
		 *   return *(void **)((long)this + 0x18);
		 */
		// RVA: 0x326BF30 VA: 0x7818956F30
		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_070c53a8);
		 *   IL2CPP.ThrowManagedException();
		 */
		// RVA: 0x326BF68 VA: 0x7818956F68
		private object System.Collections.IEnumerator.get_Current();
		/*
		 *   return *(void **)((long)this + 0x18);
		 */
	}
}
