{"type": "func", "start": 358972, "end": 359204, "name": "sub_57A3C", "pseudocode": "// \n// sub_57A3C from 0x57a3c to 0x57b24 (232 bytes)\n// \n// 6 xrefs:\n// > sub_5FBCC @ 0x5fc6c\n// > sub_762B0 @ 0x76324\n// > sub_8F210 @ 0x8f814\n// > sub_8F210 @ 0x8f97c\n// > sub_8F210 @ 0x8fa58\n// > sub_93B20 @ 0x93b78\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\ndouble __fastcall sub_57A3C(__int64 a1)\n{\n  double result; // d0\n\n  *(_QWORD *)(a1 + 280) = a1 + 272;\n  *(_QWORD *)(a1 + 288) = 0;\n  *(_QWORD *)(a1 + 272) = a1 + 272;\n  *(_QWORD *)(a1 + 424) = a1 + 424;\n  *(_QWORD *)(a1 + 432) = a1 + 424;\n  *(_WORD *)(a1 + 508) = -1;\n  *(_QWORD *)(a1 + 192) = 0;\n  *(_QWORD *)(a1 + 180) = 0;\n  *(_QWORD *)(a1 + 376) = a1 + 376;\n  *(_QWORD *)(a1 + 384) = a1 + 376;\n  *(_QWORD *)a1 = off_10C3F8;\n  *(_QWORD *)(a1 + 528) = a1 + 520;\n  *(_QWORD *)(a1 + 520) = a1 + 520;\n  __asm { FMOV            V0.2S, #1.0 }\n  *(_QWORD *)(a1 + 64) = 0;\n  *(_DWORD *)(a1 + 56) = 0;\n  *(_QWORD *)(a1 + 536) = 0;\n  *(_DWORD *)(a1 + 72) = 0;\n  *(_BYTE *)(a1 + 510) = 0;\n  *(_QWORD *)(a1 + 584) = 0;\n  *(_QWORD *)(a1 + 16) = 0;\n  *(_QWORD *)(a1 + 108) = 0;\n  *(_DWORD *)(a1 + 116) = 0;\n  *(_QWORD *)(a1 + 92) = 0;\n  *(_QWORD *)(a1 + 100) = 0;\n  *(_QWORD *)(a1 + 224) = 0;\n  *(_DWORD *)(a1 + 232) = 0;\n  *(_QWORD *)(a1 + 392) = 0;\n  *(_QWORD *)(a1 + 400) = a1 + 400;\n  *(_QWORD *)(a1 + 408) = a1 + 400;\n  *(_QWORD *)(a1 + 416) = 0;\n  *(_QWORD *)(a1 + 440) = 0;\n  *(_QWORD *)(a1 + 448) = a1 + 448;\n  *(_QWORD *)(a1 + 456) = a1 + 448;\n  *(_QWORD *)(a1 + 464) = 0;\n  *(_DWORD *)(a1 + 504) = 1065353216;\n  *(double *)(a1 + 48) = result;\n  *(_DWORD *)(a1 + 88) = 1065353216;\n  *(double *)(a1 + 120) = result;\n  *(double *)(a1 + 488) = result;\n  *(double *)(a1 + 496) = result;\n  *(_QWORD *)(a1 + 168) = 0x43B4000043B40000LL;\n  *(_DWORD *)(a1 + 176) = 1065353216;\n  *(_DWORD *)(a1 + 188) = 1065353216;\n  *(double *)(a1 + 240) = result;\n  *(_QWORD *)(a1 + 472) = 3395071461LL;\n  *(_OWORD *)(a1 + 152) = xmmword_2F340;\n  *(_DWORD *)(a1 + 256) = 0;\n  return result;\n}", "assembly": "; \n; sub_57A3C from 0x57a3c to 0x57b24 (232 bytes)\n; \n; 6 xrefs:\n; > sub_5FBCC @ 0x5fc6c\n; > sub_762B0 @ 0x76324\n; > sub_8F210 @ 0x8f814\n; > sub_8F210 @ 0x8f97c\n; > sub_8F210 @ 0x8fa58\n; > sub_93B20 @ 0x93b78\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\nADD             X8, X0, #0x110                                         ; +0x0, 0x57a3c\nSTP             X8, XZR, [X0,#0x118]                                   ; +0x4, 0x57a40\nSTR             X8, [X0,#0x110]                                        ; +0x8, 0x57a44\nADD             X8, X0, #0x1A8                                         ; +0xc, 0x57a48\nSTP             X8, X8, [X0,#0x1A8]                                    ; +0x10, 0x57a4c\nADRP            X8, #qword_2EE80@PAGE                                  ; +0x14, 0x57a50\nLDR             D1, [X8,#qword_2EE80@PAGEOFF]                          ; +0x18, 0x57a54\nMOV             W8, #0xFFFF                                            ; +0x1c, 0x57a58\nMOVI            D2, #0                                                 ; +0x20, 0x57a5c\nSTRH            W8, [X0,#0x1FC]                                        ; +0x24, 0x57a60\nADRP            X8, #xmmword_2F340@PAGE                                ; +0x28, 0x57a64\nSTR             D2, [X0,#0xC0]                                         ; +0x2c, 0x57a68\nSTUR            D2, [X0,#0xB4]                                         ; +0x30, 0x57a6c\nLDR             Q2, [X8,#xmmword_2F340@PAGEOFF]                        ; +0x34, 0x57a70\nADRP            X9, #off_10C3F8@PAGE                                   ; +0x38, 0x57a74\nADD             X10, X0, #0x178                                        ; +0x3c, 0x57a78\nADD             X9, X9, #off_10C3F8@PAGEOFF                            ; +0x40, 0x57a7c\nSTP             X10, X10, [X0,#0x178]                                  ; +0x44, 0x57a80\nADD             X10, X0, #0x208                                        ; +0x48, 0x57a84\nMOV             X8, #0x43B40000                                        ; +0x4c, 0x57a88\nADD             X11, X0, #0x190                                        ; +0x50, 0x57a8c\nSTR             X9, [X0]                                               ; +0x54, 0x57a90\nADD             X9, X0, #0x1C0                                         ; +0x58, 0x57a94\nSTR             X10, [X0,#0x210]                                       ; +0x5c, 0x57a98\nSTR             X10, [X0,#0x208]                                       ; +0x60, 0x57a9c\nMOV             W10, #0x3F800000                                       ; +0x64, 0x57aa0\nFMOV            V0.2S, #1.0                                            ; +0x68, 0x57aa4\nMOVK            X8, #0x43B4,LSL#48                                     ; +0x6c, 0x57aa8\nSTR             XZR, [X0,#0x40]                                        ; +0x70, 0x57aac\nSTR             WZR, [X0,#0x38]                                        ; +0x74, 0x57ab0\nSTR             XZR, [X0,#0x218]                                       ; +0x78, 0x57ab4\nSTR             WZR, [X0,#0x48]                                        ; +0x7c, 0x57ab8\nSTRB            WZR, [X0,#0x1FE]                                       ; +0x80, 0x57abc\nSTR             XZR, [X0,#0x248]                                       ; +0x84, 0x57ac0\nSTR             XZR, [X0,#0x10]                                        ; +0x88, 0x57ac4\nSTUR            XZR, [X0,#0x6C]                                        ; +0x8c, 0x57ac8\nSTR             WZR, [X0,#0x74]                                        ; +0x90, 0x57acc\nSTUR            XZR, [X0,#0x5C]                                        ; +0x94, 0x57ad0\nSTUR            XZR, [X0,#0x64]                                        ; +0x98, 0x57ad4\nSTR             XZR, [X0,#0xE0]                                        ; +0x9c, 0x57ad8\nSTR             WZR, [X0,#0xE8]                                        ; +0xa0, 0x57adc\nSTP             XZR, X11, [X0,#0x188]                                  ; +0xa4, 0x57ae0\nSTP             X11, XZR, [X0,#0x198]                                  ; +0xa8, 0x57ae4\nSTP             XZR, X9, [X0,#0x1B8]                                   ; +0xac, 0x57ae8\nSTP             X9, XZR, [X0,#0x1C8]                                   ; +0xb0, 0x57aec\nSTR             W10, [X0,#0x1F8]                                       ; +0xb4, 0x57af0\nSTR             D0, [X0,#0x30]                                         ; +0xb8, 0x57af4\nSTR             W10, [X0,#0x58]                                        ; +0xbc, 0x57af8\nSTR             D0, [X0,#0x78]                                         ; +0xc0, 0x57afc\nSTP             D0, D0, [X0,#0x1E8]                                    ; +0xc4, 0x57b00\nSTR             X8, [X0,#0xA8]                                         ; +0xc8, 0x57b04\nSTR             W10, [X0,#0xB0]                                        ; +0xcc, 0x57b08\nSTR             W10, [X0,#0xBC]                                        ; +0xd0, 0x57b0c\nSTR             D0, [X0,#0xF0]                                         ; +0xd4, 0x57b10\nSTR             D1, [X0,#0x1D8]                                        ; +0xd8, 0x57b14\nSTUR            Q2, [X0,#0x98]                                         ; +0xdc, 0x57b18\nSTR             WZR, [X0,#0x100]                                       ; +0xe0, 0x57b1c\nRET                                                                    ; +0xe4, 0x57b20", "xrefs": ["sub_5FBCC @ 0x5fc6c", "sub_762B0 @ 0x76324", "sub_8F210 @ 0x8f814", "sub_8F210 @ 0x8f97c", "sub_8F210 @ 0x8fa58", "sub_93B20 @ 0x93b78"], "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"}