// // _except2 from 0x180133058 to 0x18013315e (262 bytes) // // 2 xrefs: // > ldexp @ 0x180127634 // > @ 0x18020311c // // 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 // double __fastcall except2(__int64 a1, int a2, double a3, double a4, double a5, __int64 a6) { __int64 v6; // rdi int v8; // ebx unsigned int v9; // ebx int v10; // r8d int v11; // r9d double result; // xmm0_8 double v13[2]; // [rsp+48h] [rbp-79h] BYREF char v14; // [rsp+58h] [rbp-69h] BYREF double v15; // [rsp+88h] [rbp-39h] unsigned int v16; // [rsp+98h] [rbp-29h] v6 = a6; v13[0] = a3; v8 = a1; if ( !(unsigned int)handle_exc(a1, &a5, a6) ) { v15 = a4; v16 = v16 & 0xFFFFFFE0 | 3; raise_exc_ex((unsigned int)&v14, (unsigned int)&a6, v8, a2, (__int64)v13, (__int64)&a5, 0); v6 = a6; } v9 = errcode(v8); if ( (unsigned __int8)_acrt_has_user_matherr() && v9 ) { result = a5; umatherr(v9, a2, v10, v11, *(__int64 *)&a5, v6); } else { set_errno_from_matherr(v9); ctrlfp(v6, 65472); return a5; } return result; }