// [TypeInfo RVA: 0x0]
public class SpeedTextEffect_TMP : MonoBehaviour
{
	public UnityEngine.Transform targetTransform; // 0x20
	public UnityEngine.Rigidbody targetRigidbody; // 0x28
	public float minSpeed; // 0x30
	public float maxSpeed; // 0x34
	public bool followPlayerJumpMax; // 0x38
	public UnityEngine.Color baseColor; // 0x3C
	public UnityEngine.Color alertColor; // 0x4C
	public float scaleAmount; // 0x5C
	public float shakeAmount; // 0x60
	public float shakeFrequency; // 0x64
	public bool showSpeedValue; // 0x68
	public string speedFormat; // 0x70
	public float speedSmoothing; // 0x78
	public string speedPrefix; // 0x80
	public string overkillText; // 0x88
	public string staticLabel; // 0x90
	public TMPro.TMP_Text multiplierText; // 0x98
	public string multiplierPrefix; // 0xA0
	public bool multiplierOverkillEnabled; // 0xA8
	private TMPro.TMP_Text tmpText; // 0xB0
	private UnityEngine.Vector3 initialLocalPos; // 0xB8
	private UnityEngine.Vector3 initialLocalScale; // 0xC4
	private UnityEngine.Vector3 lastTargetPos; // 0xD0
	private float displayedSpeed; // 0xDC
	private UnityEngine.Vector3 multiplierInitialLocalPos; // 0xE0
	private UnityEngine.Vector3 multiplierInitialLocalScale; // 0xEC

	// RVA: 0x3253BC8 VA: 0x781893EBC8
	private void Awake();
	/*
	 *   undefined *puVar1;
	 *   void *pvVar2;
	 *   long lVar3;
	 *   ulong uVar4;
	 *   UnityEngine_Vector3 UVar5;
	 *
	 *   puVar1 = PTR_DAT_070c0dd8;
	 *   if ((bRam000000000754aa8c & 1) == 0) {
	 *     func_0x031fdc8c(PTR_DAT_070c0dd8);
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8);
	 *     bRam000000000754aa8c = 1;
	 *   }
	 *   pvVar2 = (void *)func_0x0373df50(this,*(undefined8 *)puVar1);
	 *   this.tmpText = pvVar2;
	 *   func_0x031fdc38();
	 *   pvVar2 = UnityEngine.Component.get_transform(this);
	 *   if (pvVar2 != null) {
	 *     UVar5 = UnityEngine.Transform.get_localPosition(pvVar2);
	 *     (this.initialLocalPos).x = UVar5.x;
	 *     (this.initialLocalPos).y = UVar5.y;
	 *     (this.initialLocalPos).z = UVar5.z;
	 *     pvVar2 = UnityEngine.Component.get_transform(this);
	 *     puVar1 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
	 *     if (pvVar2 != null) {
	 *       UVar5 = UnityEngine.Transform.get_localScale(pvVar2);
	 *       lVar3 = *(long *)puVar1;
	 *       (this.initialLocalScale).x = UVar5.x;
	 *       (this.initialLocalScale).y = UVar5.y;
	 *       pvVar2 = this.multiplierText;
	 *       (this.initialLocalScale).z = UVar5.z;
	 *       if (*(int *)(lVar3 + 0xe4) == 0) {
	 *         func_0x031fde08();
	 *       }
	 *       uVar4 = UnityEngine.Object.op_Inequality(pvVar2,null);
	 *       if ((uVar4 & 1) != 0) {
	 *         if ((this.multiplierText == null) ||
	 *            (pvVar2 = TMPro.TMP_Text.get_transform(this.multiplierText), pvVar2 == null))
	 *         goto LAB_03353d28;
	 *         UVar5 = UnityEngine.Transform.get_localPosition(pvVar2);
	 *         pvVar2 = this.multiplierText;
	 *         (this.multiplierInitialLocalPos).x = UVar5.x;
	 *         (this.multiplierInitialLocalPos).y = UVar5.y;
	 *         (this.multiplierInitialLocalPos).z = UVar5.z;
	 *         if ((pvVar2 == null) ||
	 *            (pvVar2 = TMPro.TMP_Text.get_transform(pvVar2),
	 *            pvVar2 == null)) goto LAB_03353d28;
	 *         UVar5 = UnityEngine.Transform.get_localScale(pvVar2);
	 *         (this.multiplierInitialLocalScale).x = UVar5.x;
	 *         (this.multiplierInitialLocalScale).y = UVar5.y;
	 *         (this.multiplierInitialLocalScale).z = UVar5.z;
	 *       }
	 *       pvVar2 = this.targetTransform;
	 *       if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *         func_0x031fde08();
	 *       }
	 *       uVar4 = UnityEngine.Object.op_Inequality(pvVar2,null);
	 *       if ((uVar4 & 1) != 0) {
	 *         if (this.targetTransform == null) goto LAB_03353d28;
	 *         UVar5 = UnityEngine.Transform.get_position(this.targetTransform);
	 *         (this.lastTargetPos).x = UVar5.x;
	 *         (this.lastTargetPos).y = UVar5.y;
	 *         (this.lastTargetPos).z = UVar5.z;
	 *       }
	 *       return;
	 *     }
	 *   }
	 * LAB_03353d28:
	 *   IL2CPP.ThrowNullReferenceException();
	 */
	// RVA: 0x3253D2C VA: 0x781893ED2C
	private void Start();
	/*
	 *   if (this.maxSpeed <= this.minSpeed) {
	 *     this.maxSpeed = this.minSpeed + _UNK_0134ee00;
	 *   }
	 *   return;
	 */
	// RVA: 0x3253D4C VA: 0x781893ED4C
	private void Update();
	/*
	 *   undefined *puVar1;
	 *   undefined *puVar2;
	 *   ulong uVar3;
	 *   long *plVar4;
	 *   void *extraout_x1;
	 *   void *extraout_x1_00;
	 *   void *in_x2;
	 *   long lVar5;
	 *   void *str0;
	 *   undefined8 uVar6;
	 *   void *pvVar7;
	 *   float fVar8;
	 *   float fVar9;
	 *   float fVar10;
	 *   float fVar11;
	 *   float fVar12;
	 *   float fVar13;
	 *   undefined4 uVar14;
	 *   undefined4 uVar15;
	 *   undefined4 uVar16;
	 *   undefined4 uVar17;
	 *   undefined4 uVar18;
	 *   undefined4 uVar19;
	 *   undefined4 uVar20;
	 *   undefined4 uVar21;
	 *   undefined4 uVar22;
	 *   undefined4 uVar23;
	 *   float fVar24;
	 *   UnityEngine_Vector3 value;
	 *   UnityEngine_Vector3 value_00;
	 *   undefined1 auVar25 [16];
	 *   float fStack_44;
	 *
	 *   if ((bRam000000000754aa8d & 1) == 0) {
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8);
	 *     func_0x031fdc8c(PTR_DAT_070c4880);
	 *     bRam000000000754aa8d = 1;
	 *     methodInfo = extraout_x1;
	 *   }
	 *   puVar2 = typeinfo_ptr_Assembly_CSharp_Player_6FC0C18;
	 *   puVar1 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
	 *   fStack_44 = 0.0;
	 *   if (this.followPlayerJumpMax != false) {
	 *     if (cRam000000000754a7cd == '\0') {
	 *       func_0x031fdc8c(typeinfo_ptr_Assembly_CSharp_Player_6FC0C18);
	 *       cRam000000000754a7cd = '\x01';
	 *     }
	 *     uVar6 = **(undefined8 **)(*(long *)puVar2 + 0xb8);
	 *     if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *       func_0x031fde08();
	 *     }
	 *     in_x2 = null;
	 *     auVar25 = UnityEngine.Object.op_Inequality(uVar6,null);
	 *     methodInfo = auVar25._8_8_;
	 *     if ((auVar25._0_8_ & 1) != 0) {
	 *       if (cRam000000000754a7cd == '\0') {
	 *         func_0x031fdc8c(typeinfo_ptr_Assembly_CSharp_Player_6FC0C18);
	 *         cRam000000000754a7cd = '\x01';
	 *         methodInfo = extraout_x1_00;
	 *       }
	 *       if (**(long **)(*(long *)puVar2 + 0xb8) == 0) goto LAB_033541cc;
	 *       fVar8 = *(float *)(**(long **)(*(long *)puVar2 + 0xb8) + 0x90) + -5.0;
	 *       fVar11 = this.minSpeed + _UNK_0134ee00;
	 *       if (fVar11 <= fVar8) {
	 *         fVar11 = fVar8;
	 *       }
	 *       this.maxSpeed = fVar11;
	 *     }
	 *   }
	 *   fVar11 = SpeedTextEffect_TMP.ReadSpeed(this);
	 *   SpeedTextEffect_TMP.ApplyVisuals(this,fVar11,this.tmpText,this.initialLocalPos,this.initialLocalScale,this.minSpeed,this.maxSpeed);
	 *   SpeedTextEffect_TMP.UpdateText(this,fVar11,this.tmpText);
	 *   pvVar7 = this.multiplierText;
	 *   if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *     func_0x031fde08();
	 *   }
	 *   uVar3 = UnityEngine.Object.op_Inequality(pvVar7,null);
	 *   if ((uVar3 & 1) != 0) {
	 *     if (cRam000000000754a7cd == '\0') {
	 *       func_0x031fdc8c(typeinfo_ptr_Assembly_CSharp_Player_6FC0C18);
	 *       cRam000000000754a7cd = '\x01';
	 *     }
	 *     uVar6 = **(undefined8 **)(*(long *)puVar2 + 0xb8);
	 *     if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *       func_0x031fde08();
	 *     }
	 *     uVar3 = UnityEngine.Object.op_Inequality(uVar6,null);
	 *     if ((uVar3 & 1) != 0) {
	 *       if (cRam000000000754a7cd == '\0') {
	 *         func_0x031fdc8c(typeinfo_ptr_Assembly_CSharp_Player_6FC0C18);
	 *         cRam000000000754a7cd = '\x01';
	 *       }
	 *       lVar5 = **(long **)(*(long *)puVar2 + 0xb8);
	 *       if (lVar5 != 0) {
	 *         fVar13 = *(float *)(lVar5 + 0x94);
	 *         fVar24 = *(float *)(lVar5 + 0x98);
	 *         fVar8 = fVar13 * 1.5;
	 *         fVar13 = fVar13 + fVar13;
	 *         fVar11 = 0.0;
	 *         if ((fVar8 != fVar13) && (fVar8 < fVar24)) {
	 *           fVar12 = (fVar24 - fVar8) / (fVar13 - fVar8);
	 *           fVar8 = 1.0;
	 *           if (fVar12 <= 1.0) {
	 *             fVar8 = fVar12;
	 *           }
	 *           fVar11 = 0.0;
	 *           if (0.0 <= fVar12) {
	 *             fVar11 = fVar8;
	 *           }
	 *         }
	 *         plVar4 = this.multiplierText;
	 *         fVar8 = 0.0;
	 *         if (0.0 <= fVar11) {
	 *           fVar8 = fVar11;
	 *         }
	 *         fStack_44 = fVar24;
	 *         if (plVar4 != null) {
	 *           fVar8 = fVar8 * fVar8 * 3.0 - fVar8 * fVar8 * (fVar8 + fVar8);
	 *           fVar8 = fVar8 + (1.0 - fVar8) * 0.0;
	 *           fVar11 = 1.0;
	 *           if (fVar8 <= 1.0) {
	 *             fVar11 = fVar8;
	 *           }
	 *           uVar16 = (this.baseColor).b;
	 *           uVar17 = (this.baseColor).a;
	 *           uVar14 = (this.baseColor).r;
	 *           uVar15 = (this.baseColor).g;
	 *           uVar22 = (this.alertColor).b;
	 *           uVar23 = (this.alertColor).a;
	 *           uVar18 = (this.alertColor).r;
	 *           uVar20 = (this.alertColor).g;
	 *           fVar12 = 0.0;
	 *           if (0.0 <= fVar8) {
	 *             fVar12 = fVar11;
	 *           }
	 *           fVar11 = (float)uVar15 + ((float)uVar20 - (float)uVar15) * fVar12;
	 *           (**(code **)(*plVar4 + 0x2a8))
	 *                     (CONCAT44(fVar11,(float)uVar14 + ((float)uVar18 - (float)uVar14) * fVar12),
	 *                      fVar11,(float)uVar16 + ((float)uVar22 - (float)uVar16) * fVar12,
	 *                      (float)uVar17 + ((float)uVar23 - (float)uVar17) * fVar12,plVar4,
	 *                      *(undefined8 *)(*plVar4 + 0x2b0));
	 *           if (this.multiplierText != null) {
	 *             fVar11 = this.scaleAmount;
	 *             pvVar7 = TMPro.TMP_Text.get_transform(this.multiplierText);
	 *             if (pvVar7 != null) {
	 *               fVar11 = fVar8 * fVar11 + 1.0;
	 *               value.z = fVar11 * (this.multiplierInitialLocalScale).z;
	 *               value.y = fVar11 * (this.multiplierInitialLocalScale).y;
	 *               value.x = fVar11 * (this.multiplierInitialLocalScale).x;
	 *               UnityEngine.Transform.set_localScale(pvVar7,value);
	 *               if ((fVar8 <= 0.0) || (this.shakeAmount <= 0.0)) {
	 *                 if ((this.multiplierText == null) ||
	 *                    (pvVar7 = TMPro.TMP_Text.get_transform(this.multiplierText), pvVar7 == null))
	 *                 goto LAB_033541cc;
	 *                 fVar11 = (this.multiplierInitialLocalPos).z;
	 *                 uVar6._0_4_ = (this.multiplierInitialLocalPos).x;
	 *                 uVar6._4_4_ = (this.multiplierInitialLocalPos).y;
	 *               }
	 *               else {
	 *                 fVar11 = UnityEngine.Time.get_time();
	 *                 fVar11 = fVar11 * this.shakeFrequency;
	 *                 fVar12 = UnityEngine.Mathf.PerlinNoise(fVar11,0.0);
	 *                 fVar9 = UnityEngine.Mathf.PerlinNoise(0.0,fVar11);
	 *                 if (this.multiplierText == null) goto LAB_033541cc;
	 *                 fVar10 = this.shakeAmount;
	 *                 pvVar7 = TMPro.TMP_Text.get_transform(this.multiplierText);
	 *                 if (pvVar7 == null) goto LAB_033541cc;
	 *                 uVar19 = (this.multiplierInitialLocalPos).x;
	 *                 uVar21 = (this.multiplierInitialLocalPos).y;
	 *                 fVar11 = fVar8 * fVar10 * 0.0 + (this.multiplierInitialLocalPos).z;
	 *                 uVar6 = CONCAT44((fVar9 + -0.5 + fVar9 + -0.5) * fVar10 * fVar8 + (float)uVar21,
	 *                                  (fVar12 + -0.5 + fVar12 + -0.5) * fVar10 * fVar8 + (float)uVar19);
	 *               }
	 *               value_00.z = fVar11;
	 *               value_00.x = (float)(int)uVar6;
	 *               value_00.y = (float)(int)((ulong)uVar6 >> 0x20);
	 *               UnityEngine.Transform.set_localPosition(pvVar7,value_00);
	 *               plVar4 = this.multiplierText;
	 *               if ((this.multiplierOverkillEnabled == false) || (fVar24 < fVar13)) {
	 *                 str0 = this.multiplierPrefix;
	 *                 pvVar7 = System.Single.ToString(&fStack_44,*(void **)PTR_DAT_070c4880);
	 *                 pvVar7 = System.String.Concat(str0,pvVar7);
	 *                 if (plVar4 != null) {
	 *                   (**(code **)(*plVar4 + 0x558))(plVar4,pvVar7,*(undefined8 *)(*plVar4 + 0x560));
	 *                   return;
	 *                 }
	 *               }
	 *               else if (plVar4 != null) {
	 *                 (**(code **)(*plVar4 + 0x558))
	 *                           (plVar4,this.overkillText,*(undefined8 *)(*plVar4 + 0x560));
	 *                 return;
	 *               }
	 *             }
	 *           }
	 *         }
	 *       }
	 * LAB_033541cc:
	 *       IL2CPP.ThrowNullReferenceException();
	 *     }
	 *   }
	 *   return;
	 */
	// RVA: 0x32541D0 VA: 0x781893F1D0
	private float ReadSpeed();
	/*
	 *   undefined *puVar1;
	 *   bool bVar2;
	 *   long lVar3;
	 *   ulong uVar4;
	 *   long *plVar5;
	 *   float *pfVar6;
	 *   void *extraout_x1;
	 *   void *pvVar7;
	 *   float fVar8;
	 *   float fVar9;
	 *   undefined8 uVar10;
	 *   float fVar11;
	 *   float fVar12;
	 *   UnityEngine_Vector3 UVar13;
	 *
	 *   puVar1 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
	 *   if ((bRam000000000754aa8e & 1) == 0) {
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8);
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Vector3_6FC0A08);
	 *     func_0x031fdc8c(PTR_DAT_070c4888);
	 *     bRam000000000754aa8e = 1;
	 *     methodInfo = extraout_x1;
	 *   }
	 *   lVar3 = *(long *)puVar1;
	 *   pvVar7 = this.targetRigidbody;
	 *   if (*(int *)(lVar3 + 0xe4) == 0) {
	 *     func_0x031fde08(lVar3,methodInfo);
	 *   }
	 *   uVar4 = UnityEngine.Object.op_Inequality(pvVar7,null);
	 *   if ((uVar4 & 1) == 0) {
	 *     pvVar7 = this.targetTransform;
	 *     if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *       func_0x031fde08();
	 *     }
	 *     uVar4 = UnityEngine.Object.op_Inequality(pvVar7,null);
	 *     if ((uVar4 & 1) == 0) {
	 *       return 0.0;
	 *     }
	 *     if (this.targetTransform != null) {
	 *       UVar13 = UnityEngine.Transform.get_position(this.targetTransform);
	 *       fVar8 = (this.lastTargetPos).x;
	 *       fVar11 = (this.lastTargetPos).y;
	 *       fVar12 = (this.lastTargetPos).z;
	 *       if (cRam000000000754a89e == '\0') {
	 *         func_0x031fdc8c(typeinfo_ptr_mscorlib_Math_6FC0738);
	 *         cRam000000000754a89e = '\x01';
	 *       }
	 *       if (*(int *)(*(long *)typeinfo_ptr_mscorlib_Math_6FC0738 + 0xe4) == 0) {
	 *         func_0x031fde08();
	 *       }
	 *       fVar9 = UnityEngine.Time.get_deltaTime();
	 *       if (this.targetTransform != null) {
	 *         fVar8 = UVar13.x - fVar8;
	 *         fVar11 = UVar13.y - fVar11;
	 *         fVar12 = UVar13.z - fVar12;
	 *         if (fVar9 <= _UNK_0134ed90) {
	 *           fVar9 = _UNK_0134ed90;
	 *         }
	 *         UVar13 = UnityEngine.Transform.get_position(this.targetTransform);
	 *         (this.lastTargetPos).z = UVar13.z;
	 *         (this.lastTargetPos).x = UVar13.x;
	 *         (this.lastTargetPos).y = UVar13.y;
	 *         return SQRT(fVar8 * fVar8 + fVar11 * fVar11 + fVar12 * fVar12) / fVar9;
	 *       }
	 *     }
	 *   }
	 *   else {
	 *     if ((this.targetRigidbody == null) ||
	 *        (pvVar7 = (void *)System.Object.GetType(this.targetRigidbody),
	 *        pvVar7 == null)) goto LAB_0335448c;
	 *     plVar5 = System.Type.GetProperty(pvVar7,*(void **)PTR_DAT_070c4888);
	 *     bVar2 = System.Reflection.PropertyInfo.op_Inequality(plVar5,null);
	 *     if (bVar2) {
	 *       if (plVar5 == null) goto LAB_0335448c;
	 *       plVar5 = (long *)(**(code **)(*plVar5 + 0x2f8))
	 *                                  (plVar5,this.targetRigidbody,0,*(undefined8 *)(*plVar5 + 0x300));
	 *       if ((plVar5 != null) &&
	 *          (*plVar5 == *(long *)typeinfo_ptr_UnityEngine_CoreModule_Vector3_6FC0A08)) {
	 *         pfVar6 = (float *)func_0x031fde14();
	 *         fVar8 = *pfVar6;
	 *         uVar10 = *(undefined8 *)(pfVar6 + 1);
	 *         if (cRam000000000754a89e == '\0') {
	 *           func_0x031fdc8c(typeinfo_ptr_mscorlib_Math_6FC0738);
	 *           cRam000000000754a89e = '\x01';
	 *         }
	 *         if (*(int *)(*(long *)typeinfo_ptr_mscorlib_Math_6FC0738 + 0xe4) == 0) {
	 *           func_0x031fde08();
	 *         }
	 *         fVar11 = (float)uVar10;
	 *         fVar12 = (float)((ulong)uVar10 >> 0x20);
	 *         fVar8 = fVar8 * fVar8 + fVar11 * fVar11 + fVar12 * fVar12;
	 *         goto LAB_03354330;
	 *       }
	 *     }
	 *     if (this.targetRigidbody != null) {
	 *       UVar13 = UnityEngine.Rigidbody.get_linearVelocity(this.targetRigidbody);
	 *       if (cRam000000000754a89e == '\0') {
	 *         func_0x031fdc8c(typeinfo_ptr_mscorlib_Math_6FC0738);
	 *         cRam000000000754a89e = '\x01';
	 *       }
	 *       if (*(int *)(*(long *)typeinfo_ptr_mscorlib_Math_6FC0738 + 0xe4) == 0) {
	 *         func_0x031fde08();
	 *       }
	 *       fVar8 = UVar13.z * UVar13.z + UVar13.x * UVar13.x + UVar13.y * UVar13.y;
	 * LAB_03354330:
	 *       return SQRT(fVar8);
	 *     }
	 *   }
	 * LAB_0335448c:
	 *   IL2CPP.ThrowNullReferenceException();
	 */
	// RVA: 0x3254490 VA: 0x781893F490
	private void ApplyVisuals(float speed, TMPro.TMP_Text textToAffect, UnityEngine.Vector3 storedInitialPos, UnityEngine.Vector3 storedInitialScale, float useMin, float useMax);
	/*
	 *   bool bVar1;
	 *   void *pvVar2;
	 *   long lVar3;
	 *   float fVar4;
	 *   float fVar5;
	 *   undefined4 uVar6;
	 *   undefined4 uVar7;
	 *   undefined4 uVar8;
	 *   undefined4 uVar9;
	 *   float fVar10;
	 *   undefined4 uVar11;
	 *   undefined4 uVar12;
	 *   undefined4 uVar13;
	 *   undefined4 uVar14;
	 *   UnityEngine_Vector3 value;
	 *
	 *   fVar10 = (useMin + useMax) * 0.5;
	 *   bVar1 = true;
	 *   if ((fVar10 < speed) && (bVar1 = false, !NAN(fVar10) && !NAN(useMax))) {
	 *     bVar1 = fVar10 == useMax;
	 *   }
	 *   fVar5 = 0.0;
	 *   if (!bVar1) {
	 *     fVar4 = (speed - fVar10) / (useMax - fVar10);
	 *     fVar10 = 1.0;
	 *     if (fVar4 <= 1.0) {
	 *       fVar10 = fVar4;
	 *     }
	 *     fVar5 = 0.0;
	 *     if (0.0 <= fVar4) {
	 *       fVar5 = fVar10;
	 *     }
	 *   }
	 *   fVar10 = 0.0;
	 *   if (0.0 <= fVar5) {
	 *     fVar10 = fVar5;
	 *   }
	 *   if (textToAffect != null) {
	 *     fVar5 = fVar10 * fVar10 * 3.0 - fVar10 * fVar10 * (fVar10 + fVar10);
	 *     uVar13 = (this.alertColor).b;
	 *     uVar14 = (this.alertColor).a;
	 *     uVar11 = (this.alertColor).r;
	 *     uVar12 = (this.alertColor).g;
	 *     fVar5 = fVar5 + (1.0 - fVar5) * 0.0;
	 *     fVar10 = 1.0;
	 *     if (fVar5 <= 1.0) {
	 *       fVar10 = fVar5;
	 *     }
	 *     uVar8 = (this.baseColor).b;
	 *     uVar9 = (this.baseColor).a;
	 *     uVar6 = (this.baseColor).r;
	 *     uVar7 = (this.baseColor).g;
	 *     fVar4 = 0.0;
	 *     if (0.0 <= fVar5) {
	 *       fVar4 = fVar10;
	 *     }
	 *     fVar10 = (float)uVar7 + ((float)uVar12 - (float)uVar7) * fVar4;
	 *     (**(code **)(*(long *)textToAffect + 0x2a8))
	 *               (CONCAT44(fVar10,(float)uVar6 + ((float)uVar11 - (float)uVar6) * fVar4),fVar10,
	 *                (float)uVar8 + ((float)uVar13 - (float)uVar8) * fVar4,
	 *                (float)uVar9 + ((float)uVar14 - (float)uVar9) * fVar4,textToAffect,
	 *                *(undefined8 *)(*(long *)textToAffect + 0x2b0));
	 *     fVar10 = this.scaleAmount;
	 *     pvVar2 = TMPro.TMP_Text.get_transform(textToAffect);
	 *     if (pvVar2 != null) {
	 *       fVar10 = fVar5 * fVar10 + 1.0;
	 *       value.z = storedInitialScale.z * fVar10;
	 *       value.y = storedInitialScale.y * fVar10;
	 *       value.x = storedInitialScale.x * fVar10;
	 *       UnityEngine.Transform.set_localScale(pvVar2,value);
	 *       if ((fVar5 <= 0.0) || (this.shakeAmount <= 0.0)) {
	 *         pvVar2 = TMPro.TMP_Text.get_transform(textToAffect);
	 *       }
	 *       else {
	 *         fVar10 = UnityEngine.Time.get_time();
	 *         fVar10 = fVar10 * this.shakeFrequency;
	 *         UnityEngine.Mathf.PerlinNoise(fVar10,0.0);
	 *         UnityEngine.Mathf.PerlinNoise(0.0,fVar10);
	 *         pvVar2 = TMPro.TMP_Text.get_transform(textToAffect);
	 *       }
	 *       if (pvVar2 != null) {
	 *         if ((bRam000000000755ff1b & 1) == 0) {
	 *           func_0x031fdc8c(PTR_DAT_0714f6d0,0);
	 *           bRam000000000755ff1b = 1;
	 *         }
	 *         if (pvVar2 == null) {
	 *           IL2CPP.ThrowNullReferenceException();
	 *         }
	 *         lVar3 = *(long *)((long)pvVar2 + 0x10);
	 *         if (lVar3 == 0) {
	 *           UnityEngine.Bindings.ThrowHelper.ThrowNullReferenceException(pvVar2);
	 *         }
	 *         if (pcRam000000000755ff60 == null) {
	 *           pcRam000000000755ff60 = (code *)func_0x031fdc50(&UNK_01380df7);
	 *         }
	 *         (*pcRam000000000755ff60)(lVar3,&stack0xffffffffffffffd4);
	 *         return;
	 *       }
	 *     }
	 *   }
	 *   IL2CPP.ThrowNullReferenceException();
	 */
	// RVA: 0x32546A4 VA: 0x781893F6A4
	private void UpdateText(float speed, TMPro.TMP_Text textToUpdate);
	/*
	 *   void *pvVar1;
	 *   void **ppvVar2;
	 *   float *this_00;
	 *   void *str0;
	 *   float fVar3;
	 *   float fVar4;
	 *   float fVar5;
	 *   float fVar6;
	 *
	 *   this_00 = &this.displayedSpeed;
	 *   fVar6 = *this_00;
	 *   fVar3 = UnityEngine.Time.get_deltaTime();
	 *   fVar5 = 1.0;
	 *   if (1.0 <= this.speedSmoothing) {
	 *     fVar5 = this.speedSmoothing;
	 *   }
	 *   fVar3 = fVar3 * fVar5;
	 *   fVar5 = 1.0;
	 *   if (fVar3 <= 1.0) {
	 *     fVar5 = fVar3;
	 *   }
	 *   fVar4 = 0.0;
	 *   if (0.0 <= fVar3) {
	 *     fVar4 = fVar5;
	 *   }
	 *   *this_00 = fVar6 + (speed - fVar6) * fVar4;
	 *   if (speed <= this.maxSpeed) {
	 *     if (this.showSpeedValue != false) {
	 *       str0 = this.speedPrefix;
	 *       pvVar1 = System.Single.ToString(this_00,this.speedFormat);
	 *       pvVar1 = System.String.Concat(str0,pvVar1);
	 *       if (textToUpdate == null) goto LAB_03354788;
	 *       goto LAB_03354764;
	 *     }
	 *     if (textToUpdate == null) {
	 * LAB_03354788:
	 *       IL2CPP.ThrowNullReferenceException();
	 *     }
	 *     ppvVar2 = &this.staticLabel;
	 *   }
	 *   else {
	 *     if (textToUpdate == null) goto LAB_03354788;
	 *     ppvVar2 = &this.overkillText;
	 *   }
	 *   pvVar1 = *ppvVar2;
	 * LAB_03354764:
	 *   (**(code **)(*(long *)textToUpdate + 0x558))
	 *             (textToUpdate,pvVar1,*(undefined8 *)(*(long *)textToUpdate + 0x560));
	 *   return;
	 */
	// RVA: 0x325478C VA: 0x781893F78C
	public void ResetVisuals();
	/*
	 *   undefined *puVar1;
	 *   undefined *puVar2;
	 *   undefined *puVar3;
	 *   void *pvVar4;
	 *   long *plVar5;
	 *   ulong uVar6;
	 *   void *str1;
	 *   undefined8 uVar7;
	 *
	 *   if ((bRam000000000754aa8f & 1) == 0) {
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8);
	 *     func_0x031fdc8c(PTR_DAT_070c4880);
	 *     func_0x031fdc8c(PTR_DAT_070c36d8);
	 *     bRam000000000754aa8f = 1;
	 *   }
	 *   pvVar4 = UnityEngine.Component.get_transform(this);
	 *   if (pvVar4 != null) {
	 *     UnityEngine.Transform.set_localPosition(pvVar4,this.initialLocalPos);
	 *     pvVar4 = UnityEngine.Component.get_transform(this);
	 *     if (pvVar4 != null) {
	 *       UnityEngine.Transform.set_localScale(pvVar4,this.initialLocalScale);
	 *       puVar3 = PTR_DAT_070c36d8;
	 *       plVar5 = this.tmpText;
	 *       if (plVar5 != null) {
	 *         (**(code **)(*plVar5 + 0x2a8))
	 *                   ((this.baseColor).r,(this.baseColor).g,(this.baseColor).b,(this.baseColor).a,
	 *                    plVar5,*(undefined8 *)(*plVar5 + 0x2b0));
	 *         plVar5 = this.tmpText;
	 *         if (this.showSpeedValue == false) {
	 *           if (plVar5 == null) goto LAB_03354a14;
	 *           pvVar4 = this.staticLabel;
	 *         }
	 *         else {
	 *           pvVar4 = System.String.Concat(this.speedPrefix,*(void **)puVar3);
	 *           if (plVar5 == null) goto LAB_03354a14;
	 *         }
	 *         puVar1 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
	 *         (**(code **)(*plVar5 + 0x558))(plVar5,pvVar4,*(undefined8 *)(*plVar5 + 0x560));
	 *         pvVar4 = this.multiplierText;
	 *         if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *           func_0x031fde08();
	 *         }
	 *         uVar6 = UnityEngine.Object.op_Inequality(pvVar4,null);
	 *         if ((uVar6 & 1) == 0) {
	 *           return;
	 *         }
	 *         if ((this.multiplierText != null) &&
	 *            (pvVar4 = TMPro.TMP_Text.get_transform(this.multiplierText), pvVar4 != null)) {
	 *           UnityEngine.Transform.set_localPosition(pvVar4,this.multiplierInitialLocalPos);
	 *           if ((this.multiplierText != null) &&
	 *              (pvVar4 = TMPro.TMP_Text.get_transform(this.multiplierText), pvVar4 != null)) {
	 *             UnityEngine.Transform.set_localScale(pvVar4,this.multiplierInitialLocalScale);
	 *             plVar5 = this.multiplierText;
	 *             if (plVar5 != null) {
	 *               (**(code **)(*plVar5 + 0x2a8))
	 *                         ((this.baseColor).r,(this.baseColor).g,(this.baseColor).b,
	 *                          (this.baseColor).a,plVar5,*(undefined8 *)(*plVar5 + 0x2b0));
	 *               if (cRam000000000754a7cd == '\0') {
	 *                 func_0x031fdc8c(typeinfo_ptr_Assembly_CSharp_Player_6FC0C18);
	 *                 cRam000000000754a7cd = '\x01';
	 *               }
	 *               puVar2 = typeinfo_ptr_Assembly_CSharp_Player_6FC0C18;
	 *               uVar7 = **(undefined8 **)(*(long *)typeinfo_ptr_Assembly_CSharp_Player_6FC0C18 + 0xb8)
	 *               ;
	 *               if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *                 func_0x031fde08();
	 *               }
	 *               uVar6 = UnityEngine.Object.op_Inequality(uVar7,null);
	 *               plVar5 = this.multiplierText;
	 *               pvVar4 = this.multiplierPrefix;
	 *               if ((uVar6 & 1) == 0) {
	 *                 str1 = *(void **)puVar3;
	 *               }
	 *               else {
	 *                 if (cRam000000000754a7cd == '\0') {
	 *                   func_0x031fdc8c(typeinfo_ptr_Assembly_CSharp_Player_6FC0C18);
	 *                   cRam000000000754a7cd = '\x01';
	 *                 }
	 *                 if (**(long **)(*(long *)puVar2 + 0xb8) == 0) goto LAB_03354a14;
	 *                 str1 = System.Single.ToString((void *)(**(long **)(*(long *)puVar2 + 0xb8) + 0x98),*(void **)PTR_DAT_070c4880);
	 *               }
	 *               pvVar4 = System.String.Concat(pvVar4,str1);
	 *               if (plVar5 != null) {
	 *                 (**(code **)(*plVar5 + 0x558))(plVar5,pvVar4,*(undefined8 *)(*plVar5 + 0x560));
	 *                 return;
	 *               }
	 *             }
	 *           }
	 *         }
	 *       }
	 *     }
	 *   }
	 * LAB_03354a14:
	 *   IL2CPP.ThrowNullReferenceException();
	 */
	// RVA: 0x3254A18 VA: 0x781893FA18
	public void .ctor();
	/*
	 *   undefined4 uVar1;
	 *   undefined8 uVar2;
	 *   undefined *puVar3;
	 *   undefined *puVar4;
	 *   undefined *puVar5;
	 *   undefined *puVar6;
	 *   undefined *puVar7;
	 *   undefined8 uVar8;
	 *   undefined8 uVar9;
	 *   undefined8 uVar10;
	 *   void *pvVar11;
	 *   undefined1 auVar12 [16];
	 *
	 *   puVar7 = PTR_DAT_070c48a8;
	 *   puVar6 = PTR_DAT_070c48a0;
	 *   puVar5 = PTR_DAT_070c4898;
	 *   puVar4 = PTR_DAT_070c4890;
	 *   puVar3 = PTR_DAT_070c0df0;
	 *   if ((bRam000000000754aa90 & 1) == 0) {
	 *     func_0x031fdc8c(PTR_DAT_070c4898);
	 *     func_0x031fdc8c(PTR_DAT_070c48a8);
	 *     func_0x031fdc8c(PTR_DAT_070c48a0);
	 *     func_0x031fdc8c(PTR_DAT_070c4890);
	 *     func_0x031fdc8c(PTR_DAT_070c0df0);
	 *     bRam000000000754aa90 = 1;
	 *   }
	 *   uVar2 = _UNK_0134db00;
	 *   uVar8 = _UNK_0134c6a8;
	 *   uVar10 = _UNK_0134c6a0;
	 *   pvVar11 = *(void **)puVar4;
	 *   this.maxSpeed = 100.0;
	 *   uVar9 = _UNK_0134c6a8;
	 *   _UNK_0134c6a8 = (undefined4)uVar8;
	 *   _UNK_0134c6ac = SUB84(uVar8,4);
	 *   uVar1 = _UNK_0134c6ac;
	 *   (this.alertColor).b = (float)_UNK_0134c6a8;
	 *   _UNK_0134c6a8 = uVar9;
	 *   uVar8 = _UNK_0134c6a0;
	 *   (this.alertColor).a = (float)uVar1;
	 *   _UNK_0134c6a0 = (undefined4)uVar10;
	 *   _UNK_0134c6a4 = SUB84(uVar10,4);
	 *   uVar1 = _UNK_0134c6a4;
	 *   (this.alertColor).r = (float)_UNK_0134c6a0;
	 *   _UNK_0134c6a0 = uVar8;
	 *   uVar10 = _UNK_0134db00;
	 *   (this.alertColor).g = (float)uVar1;
	 *   auVar12 = NEON_fmov(0x3f800000,4);
	 *   _UNK_0134db00 = (undefined4)uVar2;
	 *   _UNK_0134db04 = SUB84(uVar2,4);
	 *   uVar1 = _UNK_0134db04;
	 *   this.scaleAmount = (float)_UNK_0134db00;
	 *   _UNK_0134db00 = uVar10;
	 *   this.shakeAmount = (float)uVar1;
	 *   this.followPlayerJumpMax = true;
	 *   this.shakeFrequency = 8.0;
	 *   (this.baseColor).b = (float)(int)auVar12._8_8_;
	 *   (this.baseColor).a = (float)(int)((ulong)auVar12._8_8_ >> 0x20);
	 *   (this.baseColor).r = (float)(int)auVar12._0_8_;
	 *   (this.baseColor).g = (float)(int)((ulong)auVar12._0_8_ >> 0x20);
	 *   this.showSpeedValue = true;
	 *   this.speedFormat = pvVar11;
	 *   func_0x031fdc38();
	 *   pvVar11 = *(void **)puVar5;
	 *   this.speedSmoothing = 6.0;
	 *   this.speedPrefix = pvVar11;
	 *   func_0x031fdc38();
	 *   this.overkillText = *(void **)puVar6;
	 *   func_0x031fdc38();
	 *   this.staticLabel = *(void **)puVar3;
	 *   func_0x031fdc38();
	 *   this.multiplierPrefix = *(void **)puVar7;
	 *   func_0x031fdc38();
	 *   this.multiplierOverkillEnabled = true;
	 *   puVar3 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
	 *   if ((bRam000000000755f76f & 1) == 0) {
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8,0);
	 *     bRam000000000755f76f = 1;
	 *   }
	 *   if (*(int *)(*(long *)puVar3 + 0xe4) == 0) {
	 *     func_0x031fde08();
	 *   }
	 *   return;
	 */
}
