{"type": "func", "start": 367760, "end": 367856, "name": "sub_59C90", "pseudocode": "// \n// sub_59C90 from 0x59c90 to 0x59cf0 (96 bytes)\n// \n// 5 xrefs:\n// > sub_597E0 @ 0x59938\n// > sub_597E0 @ 0x5998c\n// > sub_623FC @ 0x62450\n// > sub_62584 @ 0x6261c\n// > sub_694B8 @ 0x69688\n// \n// This function is hookable on this platform!\n// \n// Using BromaIDA 8.0.0 @ https://github.com/Stazzical/BromaIDA\n// Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings\n// \n\n__int64 __fastcall sub_59C90(__int64 result, __int64 **a2, __int64 a3, unsigned int a4)\n{\n  __int64 *v4; // x8\n  _QWORD **v5; // x9\n\n  v4 = *a2;\n  while ( *((_DWORD *)v4 + 6) <= a4 )\n  {\n    v4 = (__int64 *)*v4;\n    if ( v4[1] == a3 )\n    {\n      *(_DWORD *)(result + 24) = a4;\n      *(_QWORD *)(result + 8) = *(_QWORD *)(a3 + 8);\n      v5 = (_QWORD **)(result + 8);\n      *(_QWORD *)result = a3;\n      *(_QWORD *)(a3 + 8) = result;\n      goto LABEL_6;\n    }\n  }\n  *(_DWORD *)(result + 24) = a4;\n  *(_QWORD *)(result + 8) = v4[1];\n  v5 = (_QWORD **)(result + 8);\n  *(_QWORD *)result = v4;\n  v4[1] = result;\nLABEL_6:\n  **v5 = result;\n  return result;\n}", "assembly": "; \n; sub_59C90 from 0x59c90 to 0x59cf0 (96 bytes)\n; \n; 5 xrefs:\n; > sub_597E0 @ 0x59938\n; > sub_597E0 @ 0x5998c\n; > sub_623FC @ 0x62450\n; > sub_62584 @ 0x6261c\n; > sub_694B8 @ 0x69688\n; \n; This function is hookable on this platform!\n; \n; Using BromaIDA 8.0.0 @ https:;github.com/Stazzical/BromaIDA\n; Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https:;github.com/geode-sdk/bindings\n; \n\nLDR             X8, [X1]                                               ; +0x0, 0x59c90\nLDR             W9, [X8,#0x18]                                         ; +0x4, 0x59c94\nCMP             W9, W3                                                 ; +0x8, 0x59c98\nB.HI            loc_59CCC                                              ; +0xc, 0x59c9c\nLDR             X8, [X8]                                               ; +0x10, 0x59ca0\nLDR             X9, [X8,#8]                                            ; +0x14, 0x59ca4\nCMP             X9, X2                                                 ; +0x18, 0x59ca8\nB.NE            loc_59C94                                              ; +0x1c, 0x59cac\nSTR             W3, [X0,#0x18]                                         ; +0x20, 0x59cb0\nLDR             X8, [X2,#8]                                            ; +0x24, 0x59cb4\nMOV             X9, X0                                                 ; +0x28, 0x59cb8\nSTR             X8, [X9,#8]!                                           ; +0x2c, 0x59cbc\nSTR             X2, [X0]                                               ; +0x30, 0x59cc0\nSTR             X0, [X2,#8]                                            ; +0x34, 0x59cc4\nB               loc_59CE4                                              ; +0x38, 0x59cc8\nSTR             W3, [X0,#0x18]                                         ; +0x3c, 0x59ccc\nLDR             X10, [X8,#8]                                           ; +0x40, 0x59cd0\nMOV             X9, X0                                                 ; +0x44, 0x59cd4\nSTR             X10, [X9,#8]!                                          ; +0x48, 0x59cd8\nSTR             X8, [X0]                                               ; +0x4c, 0x59cdc\nSTR             X0, [X8,#8]                                            ; +0x50, 0x59ce0\nLDR             X8, [X9]                                               ; +0x54, 0x59ce4\nSTR             X0, [X8]                                               ; +0x58, 0x59ce8\nRET                                                                    ; +0x5c, 0x59cec", "xrefs": ["sub_597E0 @ 0x59938", "sub_597E0 @ 0x5998c", "sub_623FC @ 0x62450", "sub_62584 @ 0x6261c", "sub_694B8 @ 0x69688"], "is_objc": false, "is_arm32": false, "is_arm64": false, "bida_info": "8.0.0 @ https://github.com/Stazzical/BromaIDA", "bindings_info": "commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings"}