{"type": "func", "start": 359984, "end": 360072, "name": "sub_57E30", "pseudocode": "// \n// sub_57E30 from 0x57e30 to 0x57e88 (88 bytes)\n// \n// 1 xrefs:\n// > <???> @ 0x10c600\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_57E30(__int64 a1)\n{\n  __int64 v1; // x8\n  __int64 v2; // x9\n  __int64 v3; // x10\n\n  v1 = a1 + 448;\n  if ( *(_QWORD *)(a1 + 448) == a1 + 448 && *(_QWORD *)(a1 + 456) == v1 )\n  {\n    v2 = *(_QWORD *)(a1 + 8) + 69896LL;\n    v3 = *(_QWORD *)(*(_QWORD *)(a1 + 8) + 69904LL);\n    *(_QWORD *)(a1 + 448) = v2;\n    *(_QWORD *)(a1 + 456) = v3;\n    *(_QWORD *)(v2 + 8) = v1;\n    **(_QWORD **)(a1 + 456) = v1;\n    *(_QWORD *)(a1 + 464) = a1;\n  }\n  *(_DWORD *)(a1 + 72) |= 0x80u;\n  return 0;\n}", "assembly": "; \n; sub_57E30 from 0x57e30 to 0x57e88 (88 bytes)\n; \n; 1 xrefs:\n; > <???> @ 0x10c600\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             X9, [X0,#0x1C0]                                        ; +0x0, 0x57e30\nADD             X8, X0, #0x1C0                                         ; +0x4, 0x57e34\nCMP             X9, X8                                                 ; +0x8, 0x57e38\nB.NE            loc_57E74                                              ; +0xc, 0x57e3c\nLDR             X9, [X0,#0x1C8]                                        ; +0x10, 0x57e40\nCMP             X9, X8                                                 ; +0x14, 0x57e44\nB.NE            loc_57E74                                              ; +0x18, 0x57e48\nLDR             X9, [X0,#8]                                            ; +0x1c, 0x57e4c\nMOV             W10, #0x11108                                          ; +0x20, 0x57e50\nADD             X9, X9, X10                                            ; +0x28, 0x57e58\nLDR             X10, [X9,#8]                                           ; +0x2c, 0x57e5c\nSTP             X9, X10, [X0,#0x1C0]                                   ; +0x30, 0x57e60\nSTR             X8, [X9,#8]                                            ; +0x34, 0x57e64\nLDR             X9, [X0,#0x1C8]                                        ; +0x38, 0x57e68\nSTR             X8, [X9]                                               ; +0x3c, 0x57e6c\nSTR             X0, [X0,#0x1D0]                                        ; +0x40, 0x57e70\nLDR             W8, [X0,#0x48]                                         ; +0x44, 0x57e74\nORR             W8, W8, #0x80                                          ; +0x48, 0x57e78\nSTR             W8, [X0,#0x48]                                         ; +0x4c, 0x57e7c\nMOV             W0, WZR                                                ; +0x50, 0x57e80\nRET                                                                    ; +0x54, 0x57e84", "xrefs": ["<???> @ 0x10c600"], "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"}