namespace TMPro.Examples
{

	// [TypeInfo RVA: 0x0]
	public class Benchmark02 : MonoBehaviour
	{
		public int SpawnType; // 0x20
		public int NumberOfNPC; // 0x24
		public bool IsTextObjectScaleStatic; // 0x28
		private TMPro.Examples.TextMeshProFloatingText floatingText_Script; // 0x30

		// RVA: 0x3268C2C VA: 0x7818953C2C
		private void Start();
		/*
		 *   int iVar1;
		 *   bool bVar2;
		 *   float fVar3;
		 *   undefined *puVar4;
		 *   undefined *puVar5;
		 *   undefined *puVar6;
		 *   void *pvVar7;
		 *   void *pvVar8;
		 *   long *plVar9;
		 *   void *pvVar10;
		 *   void *pvVar11;
		 *   void *extraout_x1;
		 *   void *extraout_x1_00;
		 *   void *extraout_x1_01;
		 *   void *extraout_x1_02;
		 *   long lVar12;
		 *   int iVar13;
		 *   float fVar14;
		 *   UnityEngine_Vector3 value;
		 *   UnityEngine_Vector3 value_00;
		 *   UnityEngine_Vector3 value_01;
		 *   UnityEngine_Vector3 value_02;
		 *   UnityEngine_Color value_03;
		 *
		 *   if ((bRam000000000754abd4 & 1) == 0) {
		 *     func_0x031fdc8c(PTR_DAT_070c26a8);
		 *     func_0x031fdc8c(PTR_DAT_070c52c8);
		 *     func_0x031fdc8c(PTR_DAT_070c52d0);
		 *     func_0x031fdc8c(PTR_DAT_070c52a0);
		 *     func_0x031fdc8c(PTR_DAT_070c1540);
		 *     func_0x031fdc8c(PTR_DAT_070c5268);
		 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_GameObject_6FC1548);
		 *     func_0x031fdc8c(PTR_DAT_070c52d8);
		 *     func_0x031fdc8c(PTR_DAT_070c52e0);
		 *     func_0x031fdc8c(PTR_DAT_070c52e8);
		 *     func_0x031fdc8c(PTR_DAT_070c5278);
		 *     bRam000000000754abd4 = 1;
		 *     methodInfo = extraout_x1;
		 *   }
		 *   puVar6 = PTR_DAT_070c52e8;
		 *   puVar5 = PTR_DAT_070c52d0;
		 *   puVar4 = typeinfo_ptr_UnityEngine_CoreModule_GameObject_6FC1548;
		 *   fVar3 = _UNK_0134eca0;
		 *   if (0 < this.NumberOfNPC) {
		 *     iVar13 = 0;
		 *     do {
		 *       iVar1 = this.SpawnType;
		 *       if (iVar1 == 2) {
		 *         pvVar7 = (void *)func_0x031fdf24(*(undefined8 *)puVar4,methodInfo);
		 *         UnityEngine.GameObject..ctor(pvVar7);
		 *         if (pvVar7 == null) {
		 * LAB_03369210:
		 *           IL2CPP.ThrowNullReferenceException();
		 *         }
		 *         pvVar8 = (void *)func_0x037f2fa8(pvVar7,*(undefined8 *)PTR_DAT_070c52c8);
		 *         pvVar10 = UnityEngine.Camera.get_main();
		 *         if (pvVar8 == null) goto LAB_03369210;
		 *         UnityEngine.Canvas.set_worldCamera(pvVar8,pvVar10);
		 *         pvVar8 = UnityEngine.GameObject.get_transform(pvVar7);
		 *         if (pvVar8 == null) goto LAB_03369210;
		 *         value_01.y = fVar3;
		 *         value_01.x = fVar3;
		 *         value_01.z = fVar3;
		 *         UnityEngine.Transform.set_localScale(pvVar8,value_01);
		 *         pvVar8 = UnityEngine.GameObject.get_transform(pvVar7);
		 *         value_02.x = Random.Range(-95.0,95.0);
		 *         fVar14 = Random.Range(-95.0,95.0);
		 *         if (pvVar8 == null) goto LAB_03369210;
		 *         value_02.y = 5.0;
		 *         value_02.z = fVar14;
		 *         UnityEngine.Transform.set_position(pvVar8,value_02);
		 *         pvVar8 = (void *)func_0x031fdf24(*(undefined8 *)puVar4);
		 *         UnityEngine.GameObject..ctor(pvVar8);
		 *         if ((pvVar8 == null) ||
		 *            (plVar9 = (long *)func_0x037f2fa8(pvVar8,*(undefined8 *)PTR_DAT_070c52a0),
		 *            plVar9 == null)) goto LAB_03369210;
		 *         pvVar8 = TMPro.TMP_Text.get_rectTransform(plVar9);
		 *         pvVar10 = UnityEngine.GameObject.get_transform(pvVar7);
		 *         if (pvVar8 == null) goto LAB_03369210;
		 *         UnityEngine.Transform.SetParent(pvVar8,pvVar10,false);
		 *         (**(code **)(*plVar9 + 0x2a8))
		 *                   (0x3f800000,0x3f800000,0,0x3f800000,plVar9,*(undefined8 *)(*plVar9 + 0x2b0));
		 *         TMPro.TMP_Text.set_alignment(plVar9,0x402);
		 *         TMPro.TMP_Text.set_fontSize(plVar9,96.0);
		 *         (**(code **)(*plVar9 + 0x558))
		 *                   (plVar9,*(undefined8 *)puVar6,*(undefined8 *)(*plVar9 + 0x560));
		 *         pvVar7 = (void *)func_0x037f2fa8(pvVar7,*(undefined8 *)puVar5);
		 *         this.floatingText_Script = pvVar7;
		 *         func_0x031fdc38(&this.floatingText_Script,pvVar7);
		 *         if (this.floatingText_Script == null) goto LAB_03369210;
		 *         *(undefined4 *)((long)this.floatingText_Script + 0x74) = 0;
		 *         methodInfo = extraout_x1_02;
		 *       }
		 *       else if (iVar1 == 1) {
		 *         pvVar7 = (void *)func_0x031fdf24(*(undefined8 *)puVar4,methodInfo);
		 *         UnityEngine.GameObject..ctor(pvVar7);
		 *         if (pvVar7 == null) goto LAB_03369210;
		 *         pvVar8 = UnityEngine.GameObject.get_transform(pvVar7);
		 *         value_00.x = Random.Range(-95.0,95.0);
		 *         fVar14 = Random.Range(-95.0,95.0);
		 *         if (pvVar8 == null) goto LAB_03369210;
		 *         value_00.y = 0.25;
		 *         value_00.z = fVar14;
		 *         UnityEngine.Transform.set_position(pvVar8,value_00);
		 *         pvVar8 = (void *)func_0x037f2fa8(pvVar7,*(undefined8 *)PTR_DAT_070c5268);
		 *         pvVar10 = (void *)func_0x03949758(*(undefined8 *)PTR_DAT_070c5278,
		 *                                           *(undefined8 *)PTR_DAT_070c52e0);
		 *         if (pvVar8 == null) goto LAB_03369210;
		 *         UnityEngine.TextMesh.set_font(pvVar8,pvVar10);
		 *         pvVar10 = (void *)func_0x0373df50(pvVar8,*(undefined8 *)PTR_DAT_070c26a8);
		 *         pvVar11 = UnityEngine.TextMesh.get_font(pvVar8);
		 *         if ((pvVar11 == null) ||
		 *            (pvVar11 = UnityEngine.Font.get_material(pvVar11), pvVar10 == null)) goto LAB_03369210;
		 *         UnityEngine.Renderer.set_sharedMaterial(pvVar10,pvVar11);
		 *         UnityEngine.TextMesh.set_anchor(pvVar8,7);
		 *         UnityEngine.TextMesh.set_fontSize(pvVar8,0x60);
		 *         value_03.b = 0.0;
		 *         value_03.a = 1.0;
		 *         value_03.r = 1.0;
		 *         value_03.g = 1.0;
		 *         UnityEngine.TextMesh.set_color(pvVar8,value_03);
		 *         UnityEngine.TextMesh.set_text(pvVar8,*(void **)puVar6);
		 *         pvVar7 = (void *)func_0x037f2fa8(pvVar7,*(undefined8 *)puVar5);
		 *         this.floatingText_Script = pvVar7;
		 *         func_0x031fdc38(&this.floatingText_Script,pvVar7);
		 *         if (this.floatingText_Script == null) goto LAB_03369210;
		 *         *(undefined4 *)((long)this.floatingText_Script + 0x74) = 1;
		 *         methodInfo = extraout_x1_01;
		 *       }
		 *       else if (iVar1 == 0) {
		 *         pvVar7 = (void *)func_0x031fdf24(*(undefined8 *)puVar4,methodInfo);
		 *         UnityEngine.GameObject..ctor(pvVar7);
		 *         if (pvVar7 == null) goto LAB_03369210;
		 *         pvVar8 = UnityEngine.GameObject.get_transform(pvVar7);
		 *         value.x = Random.Range(-95.0,95.0);
		 *         fVar14 = Random.Range(-95.0,95.0);
		 *         if (pvVar8 == null) goto LAB_03369210;
		 *         value.y = 0.25;
		 *         value.z = fVar14;
		 *         UnityEngine.Transform.set_position(pvVar8,value);
		 *         plVar9 = (long *)func_0x037f2fa8(pvVar7,*(undefined8 *)PTR_DAT_070c1540);
		 *         if (plVar9 == null) goto LAB_03369210;
		 *         (**(code **)(*plVar9 + 0x5f8))(plVar9,1,*(undefined8 *)(*plVar9 + 0x600));
		 *         pvVar8 = TMPro.TMP_Text.get_rectTransform(plVar9);
		 *         if (pvVar8 == null) goto LAB_03369210;
		 *         UnityEngine.RectTransform.set_pivot(pvVar8,(UnityEngine_Vector2)0x3f000000);
		 *         TMPro.TMP_Text.set_alignment(plVar9,0x402);
		 *         TMPro.TMP_Text.set_fontSize(plVar9,96.0);
		 *         lVar12 = plVar9[0x66];
		 *         if (lVar12 == 0) goto LAB_03369210;
		 *         *(undefined4 *)(lVar12 + 0x18) = 0;
		 *         *(int *)(lVar12 + 0x1c) = *(int *)(lVar12 + 0x1c) + 1;
		 *         (**(code **)(*plVar9 + 0x2a8))
		 *                   (0x3f800000,0x3f800000,0,0x3f800000,plVar9,*(undefined8 *)(*plVar9 + 0x2b0));
		 *         (**(code **)(*plVar9 + 0x558))
		 *                   (plVar9,*(undefined8 *)puVar6,*(undefined8 *)(*plVar9 + 0x560));
		 *         TMPro.TMP_Text.set_isTextObjectScaleStatic(plVar9,this.IsTextObjectScaleStatic);
		 *         pvVar7 = (void *)func_0x037f2fa8(pvVar7,*(undefined8 *)puVar5);
		 *         this.floatingText_Script = pvVar7;
		 *         func_0x031fdc38(&this.floatingText_Script,pvVar7);
		 *         pvVar7 = this.floatingText_Script;
		 *         if (pvVar7 == null) goto LAB_03369210;
		 *         bVar2 = this.IsTextObjectScaleStatic;
		 *         *(undefined4 *)((long)pvVar7 + 0x74) = 0;
		 *         *(bool *)((long)pvVar7 + 0x78) = bVar2;
		 *         methodInfo = extraout_x1_00;
		 *       }
		 *       iVar13 = iVar13 + 1;
		 *     } while (iVar13 < this.NumberOfNPC);
		 *   }
		 *   return;
		 */
		// RVA: 0x3269214 VA: 0x7818954214
		public void .ctor();
		/*
		 *   undefined *puVar1;
		 *
		 *   this.NumberOfNPC = 0xc;
		 *   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;
		 */
	}
}
