using System; using System.Collections.Generic; using System.Linq; using Cpp2IlInjected; using TMPro; using UnityEngine; using UnityEngine.EventSystems; // Token: 0x020000E5 RID: 229 [Token(Token = "0x20000E5")] public class Punchkeyboard : MonoBehaviour { // Token: 0x170000E1 RID: 225 // (get) Token: 0x06000607 RID: 1543 RVA: 0x0001FC4C File Offset: 0x0001DE4C // (set) Token: 0x06000608 RID: 1544 RVA: 0x0001FC60 File Offset: 0x0001DE60 [Token(Token = "0x170000E1")] private int AOPKHAFJIPL { [Token(Token = "0x6000607")] [Address(RVA = "0x66A4F0", Offset = "0x6694F0", VA = "0x18066A4F0")] get { return this.FNMNIIDKFHD; } [Token(Token = "0x6000608")] [Address(RVA = "0x1BC31F0", Offset = "0x1BC21F0", VA = "0x181BC31F0")] set { if (value != this.FNMNIIDKFHD) { this.FNMNIIDKFHD = value; this.JLLANEIFOCN = true; } } } // Token: 0x170000E2 RID: 226 // (get) Token: 0x06000609 RID: 1545 RVA: 0x0001FC84 File Offset: 0x0001DE84 [Token(Token = "0x170000E2")] public bool GFMLLILAFOI { [Token(Token = "0x6000609")] [Address(RVA = "0x1BC4140", Offset = "0x1BC3140", VA = "0x181BC4140")] get { return this.shiftKey.LODFDOLMDCK; } } // Token: 0x170000E3 RID: 227 // (get) Token: 0x0600060A RID: 1546 RVA: 0x0001FCA4 File Offset: 0x0001DEA4 [Token(Token = "0x170000E3")] public bool ILDDOECGAIF { [Token(Token = "0x600060A")] [Address(RVA = "0x1BC4120", Offset = "0x1BC3120", VA = "0x181BC4120")] get { return this.altKey.LODFDOLMDCK; } } // Token: 0x170000E4 RID: 228 // (get) Token: 0x0600060B RID: 1547 RVA: 0x0001FCC4 File Offset: 0x0001DEC4 // (set) Token: 0x0600060C RID: 1548 RVA: 0x0001FCD8 File Offset: 0x0001DED8 [Token(Token = "0x170000E4")] public static bool MGCHFKEPBKE { [Token(Token = "0x600060B")] [Address(RVA = "0x1BC4160", Offset = "0x1BC3160", VA = "0x181BC4160")] get; [Token(Token = "0x600060C")] [Address(RVA = "0x1BC4270", Offset = "0x1BC3270", VA = "0x181BC4270")] set; } // Token: 0x170000E5 RID: 229 // (get) Token: 0x0600060D RID: 1549 RVA: 0x0001FCEC File Offset: 0x0001DEEC // (set) Token: 0x0600060E RID: 1550 RVA: 0x0001FD00 File Offset: 0x0001DF00 [Token(Token = "0x170000E5")] public bool FEFFIAFFELJ { [Token(Token = "0x600060D")] [Address(RVA = "0x6B48A0", Offset = "0x6B38A0", VA = "0x1806B48A0")] get { return this.HFIGABCINIF; } [Token(Token = "0x600060E")] [Address(RVA = "0x1BC41A0", Offset = "0x1BC31A0", VA = "0x181BC41A0")] set { Punchkey[] dcaclanbfgg = this.DCACLANBFGG; this.HFIGABCINIF = value; if (dcaclanbfgg != 0) { int num = 0; int num2 = 0; int length = dcaclanbfgg.Length; if (num2 < length) { Punchkey punchkey = dcaclanbfgg[num]; punchkey.JNDODHKLPGN = value; Collider[] nnbalfkkndo = punchkey.NNBALFKKNDO; if (nnbalfkkndo != 0) { int num3 = 0; if (num3 < nnbalfkkndo.Length) { nnbalfkkndo[num3].enabled = value; num3++; } } num++; } } } } // Token: 0x0600060F RID: 1551 RVA: 0x0001FD7C File Offset: 0x0001DF7C [Token(Token = "0x600060F")] [Address(RVA = "0x1BC2F60", Offset = "0x1BC1F60", VA = "0x181BC2F60")] private void Awake() { Punchkey[] componentsInChildren = base.GetComponentsInChildren(true); this.DCACLANBFGG = componentsInChildren; Func <>9__27_ = Punchkeyboard.<>c.<>9__27_0; if (<>9__27_ == 0) { Punchkeyboard.<>c.<>9__27_0 = (Punchkey k) => k.specialKeyType == Punchkey.JABLHKIMJAD.None; } Punchkey[] array = Enumerable.ToArray(Enumerable.Where(componentsInChildren, <>9__27_)); this.HNMGNBIBAFA = array; Punchkey punchkey = this.shiftKey; Action action = new Action(this.CCADJGIIGGJ); punchkey.Pressed += action; Punchkey punchkey2 = this.altKey; Action action2 = new Action(this.OEPHPHGBABH); punchkey2.Pressed += action2; Punchkey[] dcaclanbfgg = this.DCACLANBFGG; int num = 0; int length = dcaclanbfgg.Length; if (num < length) { dcaclanbfgg[num].Initialize(this); num++; } GameObject gameObject = this.EmailKeysRoot.gameObject; int num2 = 0; gameObject.SetActive(num2 != 0); } // Token: 0x06000610 RID: 1552 RVA: 0x0001FE58 File Offset: 0x0001E058 [Token(Token = "0x6000610")] [Address(RVA = "0x1BC3F10", Offset = "0x1BC2F10", VA = "0x181BC3F10")] private void Start() { Punchkey[] hnmgnbibafa = this.HNMGNBIBAFA; int num = 0; int length = hnmgnbibafa.Length; if (num < length) { hnmgnbibafa[num].RefreshKeyCapText(); num++; } } // Token: 0x06000611 RID: 1553 RVA: 0x0001FE90 File Offset: 0x0001E090 [Token(Token = "0x6000611")] [Address(RVA = "0x1BC3F70", Offset = "0x1BC2F70", VA = "0x181BC3F70")] private void Update() { TMP_InputField k__BackingField = SingletonMonoBehaviour.ONCPNMDGGKG.k__BackingField; if (this.BIBOIEDPNOJ != k__BackingField) { this.BIBOIEDPNOJ = k__BackingField; int num = 0; if (k__BackingField != num) { string text = this.BIBOIEDPNOJ.m_Text; if (text != 0) { int stringLength = text.m_stringLength; if (stringLength == this.FNMNIIDKFHD) { goto IL_66; } this.FNMNIIDKFHD = stringLength; } } if (this.FNMNIIDKFHD != 0) { this.FNMNIIDKFHD = (int)((ulong)0L); } IL_66: this.JLLANEIFOCN = true; this.LDPLACHDJHO(); } TMP_InputField biboiedpnoj = this.BIBOIEDPNOJ; int num2 = 0; if (biboiedpnoj != num2) { TMP_InputField biboiedpnoj2 = this.BIBOIEDPNOJ; if (this.JLLANEIFOCN) { int fnmniidkfhd = this.FNMNIIDKFHD; biboiedpnoj2.caretPosition = fnmniidkfhd; this.JLLANEIFOCN = false; return; } int caretSelectPositionInternal = biboiedpnoj2.caretSelectPositionInternal; if (caretSelectPositionInternal != this.FNMNIIDKFHD) { this.FNMNIIDKFHD = caretSelectPositionInternal; this.JLLANEIFOCN = true; } } } // Token: 0x06000612 RID: 1554 RVA: 0x0001FF7C File Offset: 0x0001E17C [Token(Token = "0x6000612")] [Address(RVA = "0x1BC3370", Offset = "0x1BC2370", VA = "0x181BC3370")] private void LDPLACHDJHO() { GameObject gameObject = this.EmailKeysRoot.gameObject; TMP_InputField biboiedpnoj = this.BIBOIEDPNOJ; int num = 0; if (!(biboiedpnoj != num)) { } bool flag = this.BIBOIEDPNOJ.m_ContentType == TMP_InputField.ContentType.EmailAddress; gameObject.SetActive(flag); TMP_InputField biboiedpnoj2 = this.BIBOIEDPNOJ; int num2 = 0; bool flag2; if (biboiedpnoj2 != num2) { TMP_InputField.ContentType contentType = this.BIBOIEDPNOJ.m_ContentType; if (contentType == TMP_InputField.ContentType.IntegerNumber) { } flag2 = contentType == TMP_InputField.ContentType.DecimalNumber; } this.standardKeyboard.gameObject.SetActive(flag2); this.numericKeyboard.gameObject.SetActive(flag2); } // Token: 0x06000613 RID: 1555 RVA: 0x00020018 File Offset: 0x0001E218 [Token(Token = "0x6000613")] [Address(RVA = "0x1BC3170", Offset = "0x1BC2170", VA = "0x181BC3170")] private void CCADJGIIGGJ(Punchkey DNGKIAJLLHG) { Punchkey punchkey = this.altKey; int num = 0; punchkey.LODFDOLMDCK = num != 0; Punchkey[] hnmgnbibafa = this.HNMGNBIBAFA; int num2 = 0; int length = hnmgnbibafa.Length; if (num2 < length) { hnmgnbibafa[num2].RefreshKeyCapText(); num2++; } } // Token: 0x06000614 RID: 1556 RVA: 0x00020064 File Offset: 0x0001E264 [Token(Token = "0x6000614")] [Address(RVA = "0x1BC34E0", Offset = "0x1BC24E0", VA = "0x181BC34E0")] private void OEPHPHGBABH(Punchkey DNGKIAJLLHG) { Punchkey punchkey = this.shiftKey; int num = 0; punchkey.LODFDOLMDCK = num != 0; Punchkey[] hnmgnbibafa = this.HNMGNBIBAFA; int num2 = 0; int length = hnmgnbibafa.Length; if (num2 < length) { hnmgnbibafa[num2].RefreshKeyCapText(); num2++; } } // Token: 0x06000615 RID: 1557 RVA: 0x000200B0 File Offset: 0x0001E2B0 [Token(Token = "0x6000615")] [Address(RVA = "0x1BC3560", Offset = "0x1BC2560", VA = "0x181BC3560")] public void SimulateKeyPress(Punchkey DNGKIAJLLHG) { TMP_InputField biboiedpnoj; int num9; for (;;) { int num = 0; biboiedpnoj = this.BIBOIEDPNOJ; int num2 = 0; if (!(biboiedpnoj != num2)) { goto IL_2D3; } if (biboiedpnoj.m_CharacterLimit == num) { Debug.LogWarning("Set input field character limit greater than 0 to use with PunchKeyboard", biboiedpnoj); } if (DNGKIAJLLHG.specialKeyType == Punchkey.JABLHKIMJAD.Esc) { goto IL_301; } int stringLength = biboiedpnoj.m_Text.m_stringLength; int num3 = this.FNMNIIDKFHD; int num4 = 0; int num5 = Mathf.Clamp(num3, num4, stringLength); if (num5 != this.FNMNIIDKFHD) { this.FNMNIIDKFHD = num5; this.JLLANEIFOCN = true; } num3 = biboiedpnoj.stringPositionInternal; int stringSelectPositionInternal = biboiedpnoj.stringSelectPositionInternal; if (num3 == stringSelectPositionInternal) { } num3 = biboiedpnoj.stringPositionInternal; int num6 = biboiedpnoj.stringSelectPositionInternal; num3 = Mathf.Min(num3, num6); Event @event = Event.KeyboardEvent("delete"); biboiedpnoj.ProcessEvent(@event); biboiedpnoj.selectionStringFocusPosition = num3; biboiedpnoj.selectionStringAnchorPosition = num3; if (DNGKIAJLLHG.specialKeyType != Punchkey.JABLHKIMJAD.BackSpace) { goto IL_F6; } if (biboiedpnoj.m_Text.m_stringLength > num) { ulong num7; if (num7 == (ulong)0L && this.FNMNIIDKFHD > num) { goto IL_F6; } goto IL_271; } IL_103: if (biboiedpnoj.m_Text.m_stringLength >= biboiedpnoj.m_CharacterLimit) { goto IL_271; } if ("backspace" != 0) { if ("backspace" != (ulong)6L && "backspace" != (ulong)1L) { goto IL_271; } Event event2; biboiedpnoj.ProcessEvent(event2); biboiedpnoj.ForceLabelUpdate(); } Punchkeyboard.PGOINAFPKLE pgoinafpkle; pgoinafpkle.System.IDisposable.Dispose(); pgoinafpkle.<>1__state = (int)((ulong)4294967294L); int num8 = Environment.CurrentManagedThreadId; pgoinafpkle.<>l__initialThreadId = num8; pgoinafpkle.<>4__this = this; pgoinafpkle.<>3__key = DNGKIAJLLHG; num6 = num8; if (num8 != 0) { if (num >= num6) { goto IL_19F; } num += num; if (num != num6) { num++; goto IL_19F; } IL_1BA: num8 += num8; goto IL_1C1; IL_19F: num6 = num8; if (this.shiftKey.LODFDOLMDCK) { char c2; char c = char.ToUpperInvariant(c2); goto IL_1BA; } goto IL_1BA; } IL_1C1: num9 = 0; if (num6 != 0) { } if (num == 0) { break; } continue; IL_F6: if ("backspace" != (ulong)3L) { goto IL_103; } goto IL_23A; } biboiedpnoj.ForceLabelUpdate(); if (!this.shiftKey.LODFDOLMDCK) { goto IL_271; } Punchkey punchkey = this.shiftKey; int num10 = 0; punchkey.LODFDOLMDCK = num10 != 0; Punchkey punchkey2 = this.altKey; int num11 = 0; punchkey2.LODFDOLMDCK = num11 != 0; Punchkey[] hnmgnbibafa = this.HNMGNBIBAFA; int length = hnmgnbibafa.Length; if (num9 >= length) { goto IL_271; } hnmgnbibafa[num9].RefreshKeyCapText(); num9++; IL_23A: if (biboiedpnoj.multiLine) { goto IL_301; } GameObject gameObject = biboiedpnoj.gameObject; BaseEventData baseEventData = new BaseEventData(EventSystem.current); ExecuteEvents.EventFunction s_SubmitHandler = ExecuteEvents.s_SubmitHandler; bool flag = ExecuteEvents.Execute(gameObject, baseEventData, s_SubmitHandler); IL_271: if (!biboiedpnoj.m_ForceDisableScreenSpaceNotification && biboiedpnoj.m_InputType != TMP_InputField.InputType.Password) { string text = biboiedpnoj.m_Text; if (gameObject != text.m_stringLength) { NotificationManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; int num12 = 0; if (instance != num12) { NotificationManager instance2 = SingletonMonoBehaviour.ONCPNMDGGKG; string text2 = biboiedpnoj.m_Text; int num13 = 0; IDisposable disposable = instance2.Play((NotificationManager.IBIDFAOPIPC)num13, text2, 2f, num9, this); } } } IL_2D3: RecRoomAudioClip recRoomAudioClip = this.keyPressedSuccess; Transform transform = DNGKIAJLLHG.transform; Vector3 vector; float z = vector.z; Action onAnyKeyPressed = this.OnAnyKeyPressed; if (onAnyKeyPressed != 0) { onAnyKeyPressed(); } return; IL_301: BaseEventData baseEventData2 = new BaseEventData(EventSystem.current); ExecuteEvents.EventFunction s_DeselectHandler = ExecuteEvents.s_DeselectHandler; GameObject gameObject2; bool flag2 = ExecuteEvents.Execute(gameObject2, baseEventData2, s_DeselectHandler); throw new NullReferenceException(); } // Token: 0x06000616 RID: 1558 RVA: 0x000203E8 File Offset: 0x0001E5E8 [Token(Token = "0x6000616")] [Address(RVA = "0x1BC3200", Offset = "0x1BC2200", VA = "0x181BC3200")] private bool IKLBNIMKIJN(TMP_InputField DBFBLNILIGL) { int num = DBFBLNILIGL.stringPositionInternal; int stringSelectPositionInternal = DBFBLNILIGL.stringSelectPositionInternal; if (num == stringSelectPositionInternal) { } num = DBFBLNILIGL.stringPositionInternal; int stringSelectPositionInternal2 = DBFBLNILIGL.stringSelectPositionInternal; num = Mathf.Min(num, stringSelectPositionInternal2); Event @event = Event.KeyboardEvent("delete"); DBFBLNILIGL.ProcessEvent(@event); DBFBLNILIGL.selectionStringFocusPosition = num; DBFBLNILIGL.selectionStringAnchorPosition = num; return true; } // Token: 0x06000617 RID: 1559 RVA: 0x00020448 File Offset: 0x0001E648 [Token(Token = "0x6000617")] [Address(RVA = "0x1BC32F0", Offset = "0x1BC22F0", VA = "0x181BC32F0")] private IEnumerable LBHIGNMCMPJ(Punchkey DNGKIAJLLHG) { /* An exception occurred when decompiling this method (06000617) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerable`1 Punchkeyboard::LBHIGNMCMPJ(Punchkey) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(PGOINAFPKLE::System.IDisposable.Dispose, ldloc:PGOINAFPKLE(var_0)) stfld:int32(PGOINAFPKLE::<>1__state, ldloc:PGOINAFPKLE(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](4294967294))) stloc:int32(var_2_1D, callgetter:int32(Environment::get_CurrentManagedThreadId)) stfld:int32(PGOINAFPKLE::<>l__initialThreadId, ldloc:PGOINAFPKLE(var_0), ldloc:int32(var_2_1D)) stfld:Punchkeyboard(PGOINAFPKLE::<>4__this, ldloc:PGOINAFPKLE(var_0), ldloc:Punchkeyboard(this)) stfld:Punchkey(PGOINAFPKLE::<>3__key, ldloc:PGOINAFPKLE(var_0), ldloc:Punchkey(DNGKIAJLLHG)) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663 */; } // Token: 0x06000618 RID: 1560 RVA: 0x00020488 File Offset: 0x0001E688 [Token(Token = "0x6000618")] [Address(RVA = "0x1BC4110", Offset = "0x1BC3110", VA = "0x181BC4110")] public Punchkeyboard() { } // Token: 0x0400056E RID: 1390 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400056E")] [SerializeField] private Punchkey shiftKey; // Token: 0x0400056F RID: 1391 [FieldOffset(Offset = "0x20")] [Token(Token = "0x400056F")] [SerializeField] private Punchkey altKey; // Token: 0x04000570 RID: 1392 [FieldOffset(Offset = "0x28")] [Token(Token = "0x4000570")] [SerializeField] [Header("Audio")] private RecRoomAudioClip keyPressedSuccess; // Token: 0x04000571 RID: 1393 [FieldOffset(Offset = "0x30")] [Token(Token = "0x4000571")] [Header("Context specific keys")] public Transform EmailKeysRoot; // Token: 0x04000572 RID: 1394 [FieldOffset(Offset = "0x38")] [Token(Token = "0x4000572")] [SerializeField] private Transform standardKeyboard; // Token: 0x04000573 RID: 1395 [FieldOffset(Offset = "0x40")] [Token(Token = "0x4000573")] [SerializeField] private Transform numericKeyboard; // Token: 0x04000574 RID: 1396 [FieldOffset(Offset = "0x48")] [Token(Token = "0x4000574")] private Punchkey[] HNMGNBIBAFA; // Token: 0x04000575 RID: 1397 [FieldOffset(Offset = "0x50")] [Token(Token = "0x4000575")] private Punchkey[] DCACLANBFGG; // Token: 0x04000576 RID: 1398 [FieldOffset(Offset = "0x58")] [Token(Token = "0x4000576")] private TMP_InputField BIBOIEDPNOJ; // Token: 0x04000577 RID: 1399 [FieldOffset(Offset = "0x60")] [Token(Token = "0x4000577")] private int FNMNIIDKFHD; // Token: 0x04000578 RID: 1400 [FieldOffset(Offset = "0x64")] [Token(Token = "0x4000578")] private bool JLLANEIFOCN = true; // Token: 0x04000579 RID: 1401 [FieldOffset(Offset = "0x68")] [Token(Token = "0x4000579")] public Action OnAnyKeyPressed; // Token: 0x0400057B RID: 1403 [FieldOffset(Offset = "0x70")] [Token(Token = "0x400057B")] private bool HFIGABCINIF; }