namespace TMPro.Examples
{

	// [TypeInfo RVA: 0x0]
	private sealed class <RevealCharacters>d__7 : Object
	{
		private int <>1__state; // 0x10
		private object <>2__current; // 0x18
		public TMPro.TMP_Text textComponent; // 0x20
		public TMPro.Examples.TextConsoleSimulator <>4__this; // 0x28
		private TMPro.TMP_TextInfo <textInfo>5__2; // 0x30
		private int <totalVisibleCharacters>5__3; // 0x38
		private int <visibleCount>5__4; // 0x3C

		// RVA: 0x326C230 VA: 0x7818957230
		public void .ctor(int <>1__state);
		/*
		 *   System.Object..ctor(this);
		 *   this.n_1_state = n_1_state;
		 *   return;
		 */
		// RVA: 0x326C2F4 VA: 0x78189572F4
		private void System.IDisposable.Dispose();
		/*
		 *   return;
		 */
		// RVA: 0x326C2F8 VA: 0x78189572F8
		private bool MoveNext();
		/*
		 *   undefined1 auVar1 [16];
		 *   undefined1 auVar2 [16];
		 *   undefined1 auVar3 [16];
		 *   long *plVar4;
		 *   void *pvVar5;
		 *   ulong extraout_x1;
		 *   ulong uVar6;
		 *   int iVar7;
		 *   void **ppvVar8;
		 *   void *pvVar9;
		 *   undefined1 auVar10 [16];
		 *
		 *   auVar10._8_8_ = methodInfo;
		 *   auVar10._0_8_ = this;
		 *   if ((bRam000000000754abee & 1) == 0) {
		 *     auVar10 = func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_WaitForSeconds_6FC0B10);
		 *     bRam000000000754abee = 1;
		 *   }
		 *   iVar7 = this.n_1_state;
		 *   pvVar9 = this.n_4_this;
		 *   if (iVar7 == 2) {
		 *     this.n_1_state = -1;
		 * LAB_0336c3bc:
		 *     if (pvVar9 == null) goto LAB_0336c474;
		 *     if (*(char *)((long)pvVar9 + 0x28) == '\0') {
		 *       iVar7 = this.totalVisibleCharacters_5_3;
		 *     }
		 *     else {
		 *       if (this.textInfo_5_2 == null) goto LAB_0336c474;
		 *       iVar7 = *(int *)((long)this.textInfo_5_2 + 0x18);
		 *       *(undefined1 *)((long)pvVar9 + 0x28) = 0;
		 *       this.totalVisibleCharacters_5_3 = iVar7;
		 *     }
		 *     uVar6 = (ulong)(uint)this.visibleCount_5_4;
		 *     if (iVar7 < this.visibleCount_5_4) {
		 *       pvVar9 = (void *)func_0x031fdf24(*(undefined8 *)
		 *                                         typeinfo_ptr_UnityEngine_CoreModule_WaitForSeconds_6FC0B10);
		 *       UnityEngine.WaitForSeconds..ctor(pvVar9,1.0);
		 *       this.n_2_current = pvVar9;
		 *       func_0x031fdc38(&this.n_2_current,pvVar9);
		 *       iVar7 = 1;
		 *       goto LAB_0336c460;
		 *     }
		 *   }
		 *   else {
		 *     if (iVar7 != 1) {
		 *       if (iVar7 != 0) {
		 *         return false;
		 *       }
		 *       plVar4 = this.textComponent;
		 *       this.n_1_state = -1;
		 *       auVar2._8_8_ = 0;
		 *       auVar2._0_8_ = auVar10._8_8_;
		 *       auVar10 = auVar2 << 0x40;
		 *       if (plVar4 == null) goto LAB_0336c474;
		 *       (**(code **)(*plVar4 + 0x7d8))(plVar4,0,0,*(undefined8 *)(*plVar4 + 0x7e0));
		 *       auVar3._8_8_ = 0;
		 *       auVar3._0_8_ = extraout_x1;
		 *       auVar10 = auVar3 << 0x40;
		 *       if (this.textComponent == null) goto LAB_0336c474;
		 *       pvVar5 = TMPro.TMP_Text.get_textInfo(this.textComponent);
		 *       ppvVar8 = &this.textInfo_5_2;
		 *       *ppvVar8 = pvVar5;
		 *       auVar10 = func_0x031fdc38(ppvVar8,pvVar5);
		 *       if (*ppvVar8 == null) goto LAB_0336c474;
		 *       this.totalVisibleCharacters_5_3 = *(int *)((long)*ppvVar8 + 0x18);
		 *       this.visibleCount_5_4 = 0;
		 *       goto LAB_0336c3bc;
		 *     }
		 *     uVar6 = 0;
		 *     this.visibleCount_5_4 = 0;
		 *     this.n_1_state = -1;
		 *   }
		 *   auVar1._8_8_ = 0;
		 *   auVar1._0_8_ = uVar6;
		 *   auVar10 = auVar1 << 0x40;
		 *   if (this.textComponent != null) {
		 *     TMPro.TMP_Text.set_maxVisibleCharacters(this.textComponent,(int)uVar6);
		 *     this.n_2_current = null;
		 *     this.visibleCount_5_4 = this.visibleCount_5_4 + 1;
		 *     func_0x031fdc38(&this.n_2_current,0);
		 *     iVar7 = 2;
		 * LAB_0336c460:
		 *     this.n_1_state = iVar7;
		 *     return true;
		 *   }
		 * LAB_0336c474:
		 *   IL2CPP.ThrowNullReferenceException();
		 */
		// RVA: 0x326C478 VA: 0x7818957478
		private object System.Collections.Generic.IEnumerator<System.Object>.get_Current();
		/*
		 *   return this.n_2_current;
		 */
		// RVA: 0x326C480 VA: 0x7818957480
		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_070c53e8);
		 *   IL2CPP.ThrowManagedException();
		 */
		// RVA: 0x326C4B8 VA: 0x78189574B8
		private object System.Collections.IEnumerator.get_Current();
		/*
		 *   return this.n_2_current;
		 */
	}
}
