// [TypeInfo RVA: 0x0]
public class SimpleObjectPool : MonoBehaviour
{
	public static SimpleObjectPool Instance; // 0x0
	public System.Collections.Generic.List<SimpleObjectPool.Pool> pools; // 0x20
	private System.Collections.Generic.Dictionary<UnityEngine.GameObject,System.Collections.Generic.Queue<UnityEngine.GameObject>> poolDictionary; // 0x28
	private System.Collections.Generic.Dictionary<UnityEngine.GameObject,UnityEngine.GameObject> instanceToPrefabMap; // 0x30

	// RVA: 0x32493D0 VA: 0x78189343D0
	private void Awake();
	/*
	 *   undefined *puVar1;
	 *   undefined *puVar2;
	 *   undefined *puVar3;
	 *   undefined *puVar4;
	 *   undefined *puVar5;
	 *   undefined *puVar6;
	 *   long lVar7;
	 *   ulong uVar8;
	 *   void *pvVar9;
	 *   long lVar10;
	 *   void *extraout_x1;
	 *   undefined8 uVar11;
	 *   int iVar12;
	 *   undefined8 uStack_98;
	 *   undefined8 *puStack_90;
	 *   long lStack_88;
	 *   undefined8 uStack_80;
	 *   undefined8 uStack_78;
	 *   long lStack_70;
	 *
	 *   puVar2 = PTR_DAT_070c3310;
	 *   puVar1 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
	 *   if ((bRam000000000754aa26 & 1) == 0) {
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8);
	 *     func_0x031fdc8c(PTR_DAT_070c3310);
	 *     bRam000000000754aa26 = 1;
	 *     methodInfo = extraout_x1;
	 *   }
	 *   uVar11 = **(undefined8 **)(*(long *)puVar2 + 0xb8);
	 *   if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *     func_0x031fde08(*(long *)puVar1,methodInfo);
	 *   }
	 *   uVar8 = UnityEngine.Object.op_Equality(uVar11,null);
	 *   if ((uVar8 & 1) == 0) {
	 *     pvVar9 = UnityEngine.Component.get_gameObject(this);
	 *     if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *       func_0x031fde08(*(long *)puVar1);
	 *     }
	 *     UnityEngine.Object.Destroy(pvVar9);
	 *   }
	 *   else {
	 *     **(undefined8 **)(*(long *)puVar2 + 0xb8) = this;
	 *     func_0x031fdc38(*(undefined8 *)(*(long *)puVar2 + 0xb8),this);
	 *   }
	 *   pvVar9 = UnityEngine.Component.get_gameObject(this);
	 *   if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *     func_0x031fde08(*(long *)puVar1);
	 *   }
	 *   UnityEngine.Object.DontDestroyOnLoad(pvVar9);
	 *   if ((bRam000000000754aa27 & 1) == 0) {
	 *     func_0x031fdc8c(PTR_DAT_070c3328);
	 *     func_0x031fdc8c(PTR_DAT_070c3330);
	 *     func_0x031fdc8c(PTR_DAT_070c45c0);
	 *     func_0x031fdc8c(PTR_DAT_070c45c8);
	 *     func_0x031fdc8c(PTR_DAT_070c45d0);
	 *     func_0x031fdc8c(PTR_DAT_070c45d8);
	 *     func_0x031fdc8c(PTR_DAT_070c3338);
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8);
	 *     func_0x031fdc8c(PTR_DAT_070c3368);
	 *     func_0x031fdc8c(PTR_DAT_070c3348);
	 *     func_0x031fdc8c(PTR_DAT_070c3358);
	 *     bRam000000000754aa27 = 1;
	 *   }
	 *   puVar6 = PTR_DAT_070c45c8;
	 *   puVar5 = PTR_DAT_070c3368;
	 *   puVar4 = PTR_DAT_070c3338;
	 *   puVar3 = PTR_DAT_070c3330;
	 *   puVar2 = PTR_DAT_070c3328;
	 *   puVar1 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
	 *   uStack_80 = 0;
	 *   uStack_78 = 0;
	 *   lStack_70 = 0;
	 *   if (this.pools == null) {
	 *     IL2CPP.ThrowNullReferenceException();
	 *   }
	 *   func_0x03f2e1a8(&uStack_98,this.pools,*(undefined8 *)PTR_DAT_070c45d8);
	 *   lStack_70 = lStack_88;
	 *   uStack_78 = puStack_90;
	 *   uStack_80 = uStack_98;
	 *   uStack_98 = 0;
	 *   puStack_90 = &uStack_80;
	 *   do {
	 *     uVar8 = func_0x05018cac(&uStack_80,*(undefined8 *)puVar6);
	 *     lVar7 = lStack_70;
	 *     if ((uVar8 & 1) == 0) {
	 *       func_0x05018ca8(&uStack_80,*(undefined8 *)PTR_DAT_070c45c0);
	 *       return;
	 *     }
	 *     lVar10 = func_0x031fdf24(*(undefined8 *)PTR_DAT_070c3358);
	 *     func_0x044862f8(lVar10,*(undefined8 *)PTR_DAT_070c3348);
	 *     if (lVar7 == 0) {
	 *       IL2CPP.ThrowNullReferenceException();
	 *     }
	 *     if (0 < *(int *)(lVar7 + 0x18)) {
	 *       iVar12 = 0;
	 *       do {
	 *         uVar11 = *(undefined8 *)(lVar7 + 0x10);
	 *         if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *           func_0x031fde08();
	 *         }
	 *         pvVar9 = (void *)func_0x03890888(uVar11,*(undefined8 *)puVar4);
	 *         if (pvVar9 == null) {
	 *           IL2CPP.ThrowNullReferenceException();
	 *         }
	 *         UnityEngine.GameObject.SetActive(pvVar9,false);
	 *         if (lVar10 == 0) {
	 *           IL2CPP.ThrowNullReferenceException();
	 *         }
	 *         func_0x04486810(lVar10,pvVar9,*(undefined8 *)puVar5);
	 *         if (this.instanceToPrefabMap == null) {
	 *           IL2CPP.ThrowNullReferenceException();
	 *         }
	 *         func_0x04e2ce40(this.instanceToPrefabMap,pvVar9,*(undefined8 *)(lVar7 + 0x10),
	 *                         *(undefined8 *)puVar3);
	 *         iVar12 = iVar12 + 1;
	 *       } while (iVar12 < *(int *)(lVar7 + 0x18));
	 *     }
	 *     if (this.poolDictionary == null) {
	 *       IL2CPP.ThrowNullReferenceException();
	 *     }
	 *     func_0x04e2ce40(this.poolDictionary,*(undefined8 *)(lVar7 + 0x10),lVar10,*(undefined8 *)puVar2)
	 *     ;
	 *   } while( true );
	 */
	// RVA: 0x32494E0 VA: 0x78189344E0
	private void InitializePools();
	/*
	 *   undefined *puVar1;
	 *   undefined *puVar2;
	 *   undefined *puVar3;
	 *   undefined *puVar4;
	 *   undefined *puVar5;
	 *   undefined *puVar6;
	 *   long lVar7;
	 *   ulong uVar8;
	 *   long lVar9;
	 *   void *this_00;
	 *   void *extraout_x1;
	 *   undefined8 uVar10;
	 *   int iVar11;
	 *   undefined8 uStack_98;
	 *   undefined8 *puStack_90;
	 *   long lStack_88;
	 *   undefined8 uStack_80;
	 *   undefined8 uStack_78;
	 *   long lStack_70;
	 *
	 *   if ((bRam000000000754aa27 & 1) == 0) {
	 *     func_0x031fdc8c(PTR_DAT_070c3328);
	 *     func_0x031fdc8c(PTR_DAT_070c3330);
	 *     func_0x031fdc8c(PTR_DAT_070c45c0);
	 *     func_0x031fdc8c(PTR_DAT_070c45c8);
	 *     func_0x031fdc8c(PTR_DAT_070c45d0);
	 *     func_0x031fdc8c(PTR_DAT_070c45d8);
	 *     func_0x031fdc8c(PTR_DAT_070c3338);
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8);
	 *     func_0x031fdc8c(PTR_DAT_070c3368);
	 *     func_0x031fdc8c(PTR_DAT_070c3348);
	 *     func_0x031fdc8c(PTR_DAT_070c3358);
	 *     bRam000000000754aa27 = 1;
	 *     methodInfo = extraout_x1;
	 *   }
	 *   puVar6 = PTR_DAT_070c45c8;
	 *   puVar5 = PTR_DAT_070c3368;
	 *   puVar4 = PTR_DAT_070c3338;
	 *   puVar3 = PTR_DAT_070c3330;
	 *   puVar2 = PTR_DAT_070c3328;
	 *   puVar1 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
	 *   uStack_80 = 0;
	 *   uStack_78 = 0;
	 *   lStack_70 = 0;
	 *   if (this.pools == null) {
	 *     IL2CPP.ThrowNullReferenceException();
	 *   }
	 *   func_0x03f2e1a8(&uStack_98,this.pools,*(undefined8 *)PTR_DAT_070c45d8);
	 *   lStack_70 = lStack_88;
	 *   uStack_78 = puStack_90;
	 *   uStack_80 = uStack_98;
	 *   uStack_98 = 0;
	 *   puStack_90 = &uStack_80;
	 *   do {
	 *     uVar8 = func_0x05018cac(&uStack_80,*(undefined8 *)puVar6);
	 *     lVar7 = lStack_70;
	 *     if ((uVar8 & 1) == 0) {
	 *       func_0x05018ca8(&uStack_80,*(undefined8 *)PTR_DAT_070c45c0);
	 *       return;
	 *     }
	 *     lVar9 = func_0x031fdf24(*(undefined8 *)PTR_DAT_070c3358);
	 *     func_0x044862f8(lVar9,*(undefined8 *)PTR_DAT_070c3348);
	 *     if (lVar7 == 0) {
	 *       IL2CPP.ThrowNullReferenceException();
	 *     }
	 *     if (0 < *(int *)(lVar7 + 0x18)) {
	 *       iVar11 = 0;
	 *       do {
	 *         uVar10 = *(undefined8 *)(lVar7 + 0x10);
	 *         if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *           func_0x031fde08();
	 *         }
	 *         this_00 = (void *)func_0x03890888(uVar10,*(undefined8 *)puVar4);
	 *         if (this_00 == null) {
	 *           IL2CPP.ThrowNullReferenceException();
	 *         }
	 *         UnityEngine.GameObject.SetActive(this_00,false);
	 *         if (lVar9 == 0) {
	 *           IL2CPP.ThrowNullReferenceException();
	 *         }
	 *         func_0x04486810(lVar9,this_00,*(undefined8 *)puVar5);
	 *         if (this.instanceToPrefabMap == null) {
	 *           IL2CPP.ThrowNullReferenceException();
	 *         }
	 *         func_0x04e2ce40(this.instanceToPrefabMap,this_00,*(undefined8 *)(lVar7 + 0x10),
	 *                         *(undefined8 *)puVar3);
	 *         iVar11 = iVar11 + 1;
	 *       } while (iVar11 < *(int *)(lVar7 + 0x18));
	 *     }
	 *     if (this.poolDictionary == null) {
	 *       IL2CPP.ThrowNullReferenceException();
	 *     }
	 *     func_0x04e2ce40(this.poolDictionary,*(undefined8 *)(lVar7 + 0x10),lVar9,*(undefined8 *)puVar2);
	 *   } while( true );
	 */
	// RVA: 0x3237F08 VA: 0x7818922F08
	public UnityEngine.GameObject Spawn(UnityEngine.GameObject prefab, UnityEngine.Vector3 position, UnityEngine.Quaternion rotation, UnityEngine.Transform parent);
	/*
	 *   undefined *puVar1;
	 *   undefined *puVar2;
	 *   ulong uVar3;
	 *   undefined8 uVar4;
	 *   long lVar5;
	 *   void *pvVar6;
	 *   void *pvVar7;
	 *
	 *   if ((bRam000000000754aa28 & 1) == 0) {
	 *     func_0x031fdc8c(PTR_DAT_070c3318);
	 *     func_0x031fdc8c(PTR_DAT_070c3320);
	 *     func_0x031fdc8c(PTR_DAT_070c3328);
	 *     func_0x031fdc8c(PTR_DAT_070c3330);
	 *     func_0x031fdc8c(PTR_DAT_070c3338);
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8);
	 *     func_0x031fdc8c(PTR_DAT_070c3340);
	 *     func_0x031fdc8c(PTR_DAT_070c3348);
	 *     func_0x031fdc8c(PTR_DAT_070c3350);
	 *     func_0x031fdc8c(PTR_DAT_070c3358);
	 *     bRam000000000754aa28 = 1;
	 *   }
	 *   if (this.poolDictionary != null) {
	 *     uVar3 = func_0x04e2d048(this.poolDictionary,prefab,*(undefined8 *)PTR_DAT_070c3318);
	 *     if ((uVar3 & 1) == 0) {
	 *       pvVar7 = this.poolDictionary;
	 *       uVar4 = func_0x031fdf24(*(undefined8 *)PTR_DAT_070c3358);
	 *       func_0x044862f8(uVar4,*(undefined8 *)PTR_DAT_070c3348);
	 *       if (pvVar7 == null) goto LAB_03338194;
	 *       func_0x04e2ce40(pvVar7,prefab,uVar4,*(undefined8 *)PTR_DAT_070c3328);
	 *     }
	 *     puVar2 = PTR_DAT_070c3320;
	 *     if (this.poolDictionary != null) {
	 *       lVar5 = func_0x04e2cdd4(this.poolDictionary,prefab,*(undefined8 *)PTR_DAT_070c3320);
	 *       puVar1 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
	 *       if (lVar5 != 0) {
	 *         if (*(int *)(lVar5 + 0x20) < 1) {
	 *           if (*(int *)(*(long *)typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8 + 0xe4) == 0) {
	 *             func_0x031fde08();
	 *           }
	 *           pvVar7 = (void *)func_0x03890888(prefab,*(undefined8 *)PTR_DAT_070c3338);
	 *         }
	 *         else {
	 *           if ((this.poolDictionary == null) ||
	 *              (lVar5 = func_0x04e2cdd4(this.poolDictionary,prefab,*(undefined8 *)puVar2), lVar5 == 0
	 *              )) goto LAB_03338194;
	 *           pvVar7 = (void *)func_0x044869a0(lVar5,*(undefined8 *)PTR_DAT_070c3340);
	 *         }
	 *         if ((pvVar7 != null) &&
	 *            (pvVar6 = UnityEngine.GameObject.get_transform(pvVar7),
	 *            pvVar6 != null)) {
	 *           UnityEngine.Transform.SetPositionAndRotation(pvVar6,position,rotation);
	 *           if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *             func_0x031fde08();
	 *           }
	 *           uVar3 = UnityEngine.Object.op_Inequality(parent,null);
	 *           if ((uVar3 & 1) != 0) {
	 *             pvVar6 = UnityEngine.GameObject.get_transform(pvVar7);
	 *             if (pvVar6 == null) goto LAB_03338194;
	 *             UnityEngine.Transform.SetParent(pvVar6,parent);
	 *           }
	 *           UnityEngine.GameObject.SetActive(pvVar7,true);
	 *           if (this.instanceToPrefabMap != null) {
	 *             func_0x04e2ce40(this.instanceToPrefabMap,pvVar7,prefab,*(undefined8 *)PTR_DAT_070c3330)
	 *             ;
	 *             return pvVar7;
	 *           }
	 *         }
	 *       }
	 *     }
	 *   }
	 * LAB_03338194:
	 *   IL2CPP.ThrowNullReferenceException();
	 */
	// RVA: 0x3238198 VA: 0x7818923198
	public void Despawn(UnityEngine.GameObject prefab, UnityEngine.GameObject instance, float delay);
	/*
	 *   int iVar1;
	 *   int iVar2;
	 *   void *pvVar3;
	 *   ulong uVar4;
	 *   void *this_00;
	 *   undefined8 uVar5;
	 *   long *methodInfo_00;
	 *   long lVar6;
	 *   long lStack_38;
	 *
	 *   if ((bRam000000000754aa29 & 1) == 0) {
	 *     func_0x031fdc8c(PTR_DAT_070c3360);
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8);
	 *     func_0x031fdc8c(PTR_DAT_070c3368);
	 *     func_0x031fdc8c(PTR_DAT_070c3350);
	 *     bRam000000000754aa29 = 1;
	 *   }
	 *   lStack_38 = 0;
	 *   if (0.0 < delay) {
	 *     pvVar3 = SimpleObjectPool.DespawnAfterDelay(this,prefab,instance,delay);
	 *     if (pvVar3 == null) {
	 *       func_0x031fdca0(PTR_DAT_070c9118,0,0);
	 *       this_00 = (void *)func_0x031fdf24();
	 *       pvVar3 = (void *)func_0x031fdca0(PTR_DAT_0714f5c8);
	 *       NullReferenceException..ctor(this_00,pvVar3);
	 *     }
	 *     else {
	 *       uVar4 = UnityEngine.MonoBehaviour.IsObjectMonoBehaviour();
	 *       if ((uVar4 & 1) != 0) {
	 *         if ((bRam000000000755f8f7 & 1) == 0) {
	 *           func_0x031fdc8c(PTR_DAT_0714f590);
	 *           bRam000000000755f8f7 = 1;
	 *         }
	 *         if (this == null) {
	 *           IL2CPP.ThrowNullReferenceException();
	 *         }
	 *         lVar6 = *(long *)&this.field_0x10;
	 *         if (lVar6 == 0) {
	 *           UnityEngine.Bindings.ThrowHelper.ThrowNullReferenceException(this)
	 *           ;
	 *         }
	 *         if (pcRam000000000755f968 == null) {
	 *           pcRam000000000755f968 = (code *)func_0x031fdc50(&UNK_013604ff);
	 *         }
	 *         (*pcRam000000000755f968)(lVar6,pvVar3);
	 *         return;
	 *       }
	 *       func_0x031fdca0(PTR_DAT_070c6fb0);
	 *       this_00 = (void *)func_0x031fdf24();
	 *       pvVar3 = (void *)func_0x031fdca0(PTR_DAT_0714f5b0);
	 *       System.ArgumentException..ctor(this_00,pvVar3);
	 *     }
	 *     uVar5 = func_0x031fdca0(PTR_DAT_0714f5d0);
	 *     IL2CPP.ThrowManagedException();
	 *   }
	 *   if (instance != null) {
	 *     UnityEngine.GameObject.SetActive(instance,false);
	 *     pvVar3 = UnityEngine.GameObject.get_transform(instance);
	 *     if (pvVar3 != null) {
	 *       UnityEngine.Transform.SetParent(pvVar3,null);
	 *       if (this.poolDictionary != null) {
	 *         methodInfo_00 = &lStack_38;
	 *         uVar4 = func_0x04e2e9bc(this.poolDictionary,prefab,methodInfo_00,
	 *                                 *(undefined8 *)PTR_DAT_070c3360);
	 *         if ((uVar4 & 1) == 0) {
	 * LAB_033382d8:
	 *           if (*(int *)(*(long *)typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8 + 0xe4) == 0) {
	 *             func_0x031fde08();
	 *           }
	 *           UnityEngine.Object.Destroy(instance);
	 *           return;
	 *         }
	 *         if (lStack_38 != 0) {
	 *           iVar1 = *(int *)(lStack_38 + 0x20);
	 *           iVar2 = SimpleObjectPool.GetMaxPoolSize(this,prefab);
	 *           if (iVar2 <= iVar1) goto LAB_033382d8;
	 *           if (lStack_38 != 0) {
	 *             func_0x04486810(lStack_38,instance,*(undefined8 *)PTR_DAT_070c3368);
	 *             return;
	 *           }
	 *         }
	 *       }
	 *     }
	 *   }
	 *   IL2CPP.ThrowNullReferenceException();
	 */
	// RVA: 0x32497B4 VA: 0x78189347B4
	private System.Collections.IEnumerator DespawnAfterDelay(UnityEngine.GameObject prefab, UnityEngine.GameObject instance, float delay);
	/*
	 *   undefined *puVar1;
	 *   void *this_00;
	 *
	 *   puVar1 = PTR_DAT_070c45e0;
	 *   if ((bRam000000000754aa2a & 1) == 0) {
	 *     func_0x031fdc8c(PTR_DAT_070c45e0);
	 *     bRam000000000754aa2a = 1;
	 *   }
	 *   this_00 = (void *)func_0x031fdf24(*(undefined8 *)puVar1);
	 *   System.Object..ctor(this_00);
	 *   *(undefined4 *)((long)this_00 + 0x10) = 0;
	 *   *(undefined8 *)((long)this_00 + 0x28) = this;
	 *   func_0x031fdc38((undefined8 *)((long)this_00 + 0x28),this);
	 *   *(undefined8 *)((long)this_00 + 0x30) = prefab;
	 *   func_0x031fdc38((undefined8 *)((long)this_00 + 0x30),prefab);
	 *   *(undefined8 *)((long)this_00 + 0x38) = instance;
	 *   func_0x031fdc38((undefined8 *)((long)this_00 + 0x38),instance);
	 *   *(float *)((long)this_00 + 0x20) = delay;
	 *   return this_00;
	 */
	// RVA: 0x3249980 VA: 0x7818934980
	public void Despawn(UnityEngine.GameObject instance, float delay);
	/*
	 *   ulong uVar1;
	 *   void *methodInfo_00;
	 *   void *pvStack_28;
	 *
	 *   if ((bRam000000000754aa2b & 1) == 0) {
	 *     func_0x031fdc8c(PTR_DAT_070c4608);
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8);
	 *     bRam000000000754aa2b = 1;
	 *   }
	 *   pvStack_28 = null;
	 *   if (this.instanceToPrefabMap != null) {
	 *     methodInfo_00 = *(void **)PTR_DAT_070c4608;
	 *     uVar1 = func_0x04e2e9bc(this.instanceToPrefabMap,instance,&pvStack_28);
	 *     if ((uVar1 & 1) == 0) {
	 *       if (*(int *)(*(long *)typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8 + 0xe4) == 0) {
	 *         func_0x031fde08();
	 *       }
	 *       UnityEngine.Object.Destroy(instance);
	 *     }
	 *     else {
	 *       SimpleObjectPool.Despawn(this,pvStack_28,instance,delay);
	 *     }
	 *     return;
	 *   }
	 *   IL2CPP.ThrowNullReferenceException();
	 */
	// RVA: 0x3249860 VA: 0x7818934860
	private int GetMaxPoolSize(UnityEngine.GameObject prefab);
	/*
	 *   undefined *puVar1;
	 *   undefined *puVar2;
	 *   int iVar3;
	 *   void *this_00;
	 *   undefined8 uVar4;
	 *   long lVar5;
	 *   void *pvVar6;
	 *
	 *   puVar1 = PTR_DAT_070c45e8;
	 *   if ((bRam000000000754aa2c & 1) == 0) {
	 *     func_0x031fdc8c(PTR_DAT_070c45f0);
	 *     func_0x031fdc8c(PTR_DAT_070c45f8);
	 *     func_0x031fdc8c(PTR_DAT_070c4600);
	 *     func_0x031fdc8c(PTR_DAT_070c45e8);
	 *     bRam000000000754aa2c = 1;
	 *   }
	 *   this_00 = (void *)func_0x031fdf24(*(undefined8 *)puVar1);
	 *   System.Object..ctor(this_00);
	 *   puVar2 = PTR_DAT_070c4600;
	 *   puVar1 = PTR_DAT_070c45f8;
	 *   if (this_00 != null) {
	 *     *(undefined8 *)((long)this_00 + 0x10) = prefab;
	 *     func_0x031fdc38((undefined8 *)((long)this_00 + 0x10),prefab);
	 *     pvVar6 = this.pools;
	 *     uVar4 = func_0x031fdf24(*(undefined8 *)puVar1);
	 *     func_0x043e7f38(uVar4,this_00,*(undefined8 *)puVar2,0);
	 *     if (pvVar6 != null) {
	 *       lVar5 = func_0x03f2dd60(pvVar6,uVar4,*(undefined8 *)PTR_DAT_070c45f0);
	 *       if (lVar5 == 0) {
	 *         iVar3 = 100;
	 *       }
	 *       else {
	 *         iVar3 = *(int *)(lVar5 + 0x1c);
	 *       }
	 *       return iVar3;
	 *     }
	 *   }
	 *   IL2CPP.ThrowNullReferenceException();
	 */
	// RVA: 0x3249A44 VA: 0x7818934A44
	public void .ctor();
	/*
	 *   undefined *puVar1;
	 *   undefined *puVar2;
	 *   undefined *puVar3;
	 *   undefined *puVar4;
	 *   undefined *puVar5;
	 *   undefined *puVar6;
	 *   void *pvVar7;
	 *   void *extraout_x1;
	 *
	 *   puVar6 = PTR_DAT_070c4638;
	 *   puVar5 = PTR_DAT_070c4630;
	 *   puVar4 = PTR_DAT_070c4628;
	 *   puVar3 = PTR_DAT_070c4620;
	 *   puVar2 = PTR_DAT_070c4618;
	 *   puVar1 = PTR_DAT_070c4610;
	 *   if ((bRam000000000754aa2d & 1) == 0) {
	 *     func_0x031fdc8c(PTR_DAT_070c4628);
	 *     func_0x031fdc8c(PTR_DAT_070c4638);
	 *     func_0x031fdc8c(PTR_DAT_070c4630);
	 *     func_0x031fdc8c(PTR_DAT_070c4620);
	 *     func_0x031fdc8c(PTR_DAT_070c4618);
	 *     func_0x031fdc8c(PTR_DAT_070c4610);
	 *     bRam000000000754aa2d = 1;
	 *     methodInfo = extraout_x1;
	 *   }
	 *   pvVar7 = (void *)func_0x031fdf24(*(undefined8 *)puVar1,methodInfo);
	 *   func_0x03f2ce9c(pvVar7,*(undefined8 *)puVar2);
	 *   this.pools = pvVar7;
	 *   func_0x031fdc38(&this.pools,pvVar7);
	 *   pvVar7 = (void *)func_0x031fdf24(*(undefined8 *)puVar3);
	 *   func_0x04e2c4c4(pvVar7,*(undefined8 *)puVar4);
	 *   this.poolDictionary = pvVar7;
	 *   func_0x031fdc38(&this.poolDictionary,pvVar7);
	 *   pvVar7 = (void *)func_0x031fdf24(*(undefined8 *)puVar5);
	 *   func_0x04e2c4c4(pvVar7,*(undefined8 *)puVar6);
	 *   this.instanceToPrefabMap = pvVar7;
	 *   func_0x031fdc38(&this.instanceToPrefabMap,pvVar7);
	 *   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;
	 */
}
