// // sub_531EC from 0x531ec to 0x532c8 (220 bytes) // // 1 xrefs: // > @ 0x10c260 // // This function is hookable on this platform! // // Using BromaIDA 8.0.0 @ https://github.com/Stazzical/BromaIDA // Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings // __int64 __fastcall sub_531EC(__int64 a1, unsigned __int8 a2) { int v4; // w8 __int64 v5; // x9 __int64 result; // x0 __int64 v7; // x0 __int64 v8; // x0 __int64 v9; // x0 __int64 v10; // x0 __int64 v11; // x0 if ( (a2 & 1) != 0 || (v4 = *(_DWORD *)(a1 + 60), (v4 & 0x20000) == 0) || (v5 = *(_QWORD *)(a1 + 24), *(_DWORD *)(a1 + 60) = v4 & 0xFFFDFFFF, result = sub_B0C2C(*(_QWORD *)(v5 + 112)), !(_DWORD)result) ) { if ( (*(_BYTE *)(*(_QWORD *)(*(_QWORD *)(a1 + 24) + 32LL) + 72LL) & 0x10) == 0 ) { if ( *(_QWORD *)(a1 + 40) && *(_QWORD *)(a1 + 664) ) sub_53D74(a1 + 112, (a2 ^ 1) & 1); v7 = *(_QWORD *)(a1 + 736); if ( v7 ) sub_53D74(v7, (a2 ^ 1) & 1); v8 = *(_QWORD *)(a1 + 744); if ( v8 ) sub_53D74(v8, (a2 ^ 1) & 1); v9 = *(_QWORD *)(a1 + 48); if ( v9 ) sub_53D74(v9, (a2 ^ 1) & 1); v10 = *(_QWORD *)(a1 + 752); if ( v10 ) sub_53D74(v10, (a2 ^ 1) & 1); v11 = *(_QWORD *)(a1 + 760); if ( v11 ) sub_53D74(v11, (a2 ^ 1) & 1); } JUMPOUT(0x52588); } return result; }