{"type": "func", "start": 6443662464, "end": 6443666246, "name": "powf", "pseudocode": "// \n// powf from 0x180127c80 to 0x180128b46 (3782 bytes)\n// \n// 81 xrefs:\n// > sub_18001CFD0 @ 0x18001f628\n// > sub_18001CFD0 @ 0x18001f6e3\n// > sub_180021100 @ 0x18002170d\n// > sub_1800228C0 @ 0x180022b27\n// > sub_1800228C0 @ 0x180022ee2\n// > sub_1800252C0 @ 0x180025741\n// > sub_1800258D0 @ 0x180025caa\n// > sub_18002D350 @ 0x18002d5c0\n// > sub_180032180 @ 0x180032280\n// > sub_180032180 @ 0x18003230b\n// > sub_180032180 @ 0x18003275b\n// > sub_180032180 @ 0x18003278a\n// > sub_180032180 @ 0x180032794\n// > sub_180040AD0 @ 0x180040c16\n// > sub_1800500F0 @ 0x180050119\n// > sub_1800501A0 @ 0x180050362\n// > sub_1800564A0 @ 0x180056570\n// > sub_1800564A0 @ 0x1800566e6\n// > sub_1800564A0 @ 0x180056780\n// > sub_1800564A0 @ 0x180056cb9\n// > sub_1800564A0 @ 0x180056ec9\n// > sub_180066D40 @ 0x180066e33\n// > sub_180066D40 @ 0x180066e69\n// > sub_180067510 @ 0x1800675a4\n// > sub_180067510 @ 0x1800675e7\n// > sub_180068510 @ 0x180068553\n// > sub_180068700 @ 0x180068739\n// > sub_180070690 @ 0x1800706df\n// > sub_180070690 @ 0x180070717\n// > sub_1800740F0 @ 0x180074130\n// > sub_180076390 @ 0x180076453\n// > sub_1800767F0 @ 0x1800768b1\n// > sub_1800896E0 @ 0x1800897f1\n// > sub_1800896E0 @ 0x180089829\n// > sub_1800899C0 @ 0x180089a2b\n// > sub_180089AE0 @ 0x180089b4d\n// > sub_18008AB50 @ 0x18008ac34\n// > sub_18008AD00 @ 0x18008ad5d\n// > sub_18008AD00 @ 0x18008ada0\n// > sub_18008AD00 @ 0x18008addc\n// > sub_18008B040 @ 0x18008b109\n// > sub_18008B040 @ 0x18008b14a\n// > sub_18008B040 @ 0x18008b186\n// > sub_18008CEE0 @ 0x18008cf71\n// > sub_18008CEE0 @ 0x18008cfea\n// > sub_18008CEE0 @ 0x18008d05c\n// > sub_1800DBE80 @ 0x1800dbf26\n// > sub_1800EB320 @ 0x1800eb637\n// > sub_1800ECDE0 @ 0x1800ece39\n// > sub_1800ED160 @ 0x1800ed201\n// > sub_1800ED160 @ 0x1800ed308\n// > sub_1800ED3F0 @ 0x1800ed46b\n// > sub_1800ED6C0 @ 0x1800ed707\n// > sub_1800F0120 @ 0x1800f0559\n// > sub_1800F05D0 @ 0x1800f0a37\n// > sub_1800F0AC0 @ 0x1800f1009\n// > sub_1800F10D0 @ 0x1800f1626\n// > sub_1800F1710 @ 0x1800f1807\n// > sub_1800F1890 @ 0x1800f19a3\n// > sub_1800F1A40 @ 0x1800f1b85\n// > sub_1800F1C50 @ 0x1800f1dbc\n// > sub_1800F5A00 @ 0x1800f5b58\n// > sub_1800F5A00 @ 0x1800f5b76\n// > sub_1800F5FF0 @ 0x1800f603b\n// > sub_1800F5FF0 @ 0x1800f6079\n// > sub_180107D30 @ 0x180107dba\n// > sub_180107D30 @ 0x180107dfe\n// > sub_180107D30 @ 0x180107e44\n// > sub_180107D30 @ 0x180107e8a\n// > sub_180107D30 @ 0x180107ed0\n// > sub_180107D30 @ 0x180107f16\n// > sub_180107D30 @ 0x180107f5c\n// > sub_180107D30 @ 0x180107fa2\n// > sub_180108CC0 @ 0x180108cf7\n// > sub_180109080 @ 0x1801090d8\n// > sub_180109370 @ 0x180109435\n// > sub_180109990 @ 0x180109bc6\n// > sub_18010DF80 @ 0x18010e0e8\n// > sub_18010DF80 @ 0x18010e19c\n// > sub_18010DF80 @ 0x18010e253\n// > <???> @ 0x180202a14\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// local variable allocation has failed, the output may be wrong!\nfloat __cdecl powf(float X, float Y)\n{\n  __m128i v5; // xmm1\n  int v7; // r9d\n  unsigned int v8; // eax\n  unsigned __int64 v9; // rcx\n  __m128i v10; // xmm2\n  __int64 v11; // rax\n  __m128i v12; // xmm2\n  double v13; // xmm1_8\n  __m128i v15; // xmm4\n  double v16; // xmm0_8\n  __int64 v17; // rax\n  __m128i v18; // xmm0\n  __m128d v19; // xmm6\n  __m128d v20; // xmm2\n  __m128i v21; // xmm1\n  __m128d v22; // xmm4\n  __m128i v23; // xmm2\n  __int64 v24; // rdx\n  int v25; // r10d\n  bool v26; // sf\n  bool v27; // cc\n  unsigned int v28; // ecx\n  __int64 v29; // rcx\n  int v30; // ecx\n  bool v31; // cc\n  unsigned int v32; // ecx\n  float v33; // eax\n  int v38; // r9d\n  unsigned int v39; // eax\n  bool v44; // cf\n  int v87; // r10d\n  bool v88; // sf\n  bool v89; // cc\n  bool v97; // cc\n  unsigned int v164; // [rsp+40h] [rbp-28h]\n  unsigned int v165; // [rsp+40h] [rbp-28h]\n  unsigned int v166; // [rsp+40h] [rbp-28h]\n  int v167; // [rsp+40h] [rbp-28h]\n  int v168; // [rsp+40h] [rbp-28h]\n  int v169; // [rsp+40h] [rbp-28h]\n  int v170; // [rsp+50h] [rbp-18h]\n  int v171; // [rsp+50h] [rbp-18h]\n  int v172; // [rsp+50h] [rbp-18h]\n\n  if ( dword_1801F4D54 )\n  {\n    __asm\n    {\n      vpunpckldq xmm1, xmm1, xmm0\n      vpxor   xmm5, xmm5, xmm5\n      vmovd   eax, xmm1\n      vmovd   ecx, xmm0\n    }\n    v38 = _ECX;\n    v39 = _EAX & 0x7FFFFFFF;\n    v9 = _ECX & 0x7FFFFFFF;\n    if ( v39 >= 0x7F800000 )\n    {\n      if ( v39 <= 0x7F800000 )\n      {\n        if ( (unsigned int)v9 > 0x7F800000 )\n          goto Lpowf_fma3_return_x_nan;\n        if ( (_DWORD)v9 == 1065353216 )\n        {\n          _EDX = 1065353216;\n          __asm\n          {\n            vmovd   xmm0, edx\n            vmovdqa xmm7, [rsp+68h+var_38]\n            vmovdqa xmm6, [rsp+68h+var_48]\n          }\n          return X;\n        }\n        __asm { vmovd   eax, xmm1 }\n        if ( _EAX < 0 )\n        {\n          _EAX = 0;\n          if ( (unsigned int)v9 < 0x3F800000 )\n            _EAX = 2139095040;\n          __asm\n          {\n            vmovd   xmm0, eax\n            vmovdqa xmm7, [rsp+68h+var_38]\n            vmovdqa xmm6, [rsp+68h+var_48]\n          }\n          return X;\n        }\n        if ( (unsigned int)v9 >= 0x3F800000 )\n          goto Lpowf_fma3_return_pos_inf;\n        goto Lpowf_fma3_return_pos_zero;\n      }\n      if ( (unsigned int)v9 > 0x7F800000 )\n      {\n        if ( v38 == -4194304 )\n        {\n          __asm { vmovd   eax, xmm1 }\n          _EAX |= 0x400000u;\n          __asm { vmovd   xmm2, eax }\n          powf_special(v9, _RDX);\n          __asm\n          {\n            vmovdqa xmm7, [rsp+68h+var_38]\n            vmovdqa xmm6, [rsp+68h+var_48]\n          }\n        }\n        else\n        {\n          __asm { vmovd   ecx, xmm0 }\n          _RCX = _ECX | 0x400000u;\n          __asm { vmovd   xmm2, ecx }\n          powf_special(_RCX, _RDX);\n          __asm\n          {\n            vmovdqa xmm7, [rsp+68h+var_38]\n            vmovdqa xmm6, [rsp+68h+var_48]\n          }\n        }\n        return X;\n      }\n      if ( v38 != 1065353216 )\n      {\n        __asm { vmovdqa xmm0, xmm1 }\n        __asm { vmovd   eax, xmm1 }\n        _EAX |= 0x400000u;\n        __asm { vmovd   xmm2, eax }\n        powf_special(v9, _RDX);\n        __asm\n        {\n          vmovdqa xmm7, [rsp+68h+var_38]\n          vmovdqa xmm6, [rsp+68h+var_48]\n        }\n        return X;\n      }\n      if ( v39 < 0x7FC00000 )\n      {\n        _EDX = 1065353216;\n        __asm { vmovd   xmm2, edx }\n        powf_special(v9, 1065353216);\n        __asm\n        {\n          vmovdqa xmm7, [rsp+68h+var_38]\n          vmovdqa xmm6, [rsp+68h+var_48]\n        }\n        return X;\n      }\n    }\n    else\n    {\n      if ( (int)v39 > 1065353216 )\n        goto Lpowf_fma3_y_is_not_zero_or_pos_one;\n      if ( v39 )\n      {\n        __asm { vmovd   edx, xmm1 }\n        if ( (_DWORD)_RDX == 1065353216 )\n        {\n          if ( (unsigned int)v9 > 0x7F800000 )\n          {\n            __asm { vmovd   edx, xmm0 }\n            _RDX = _EDX | 0x400000u;\n            __asm { vmovd   xmm2, edx }\n            powf_special(v9, _RDX);\n          }\n          else\n          {\n            __asm\n            {\n              vmovdqa xmm7, [rsp+68h+var_38]\n              vmovdqa xmm6, [rsp+68h+var_48]\n            }\n          }\n          return X;\n        }\nLpowf_fma3_y_is_not_zero_or_pos_one:\n        if ( (unsigned int)v9 < 0x7F800000 )\n        {\n          __asm { vcvtps2pd xmm0, xmm1 }\n          if ( v38 >= 1065877504 )\n            goto Lpowf_fma3_compute_logx;\n          if ( v38 <= 0 )\n          {\n            if ( !(_DWORD)v9 )\n            {\n              __asm { vmovd   edx, xmm1 }\n              v87 = 0;\n              v88 = (_RDX & 0x80000000) != 0LL;\n              v89 = (int)_RDX <= 0;\n              if ( (_RDX & 0x80000000) != 0LL )\n                _RDX = 2139095040;\n              if ( v88 )\n                v87 = 2139095040;\n              if ( !v89 )\n                _RDX = 0;\n              if ( (v39 & 0x7F800000) <= 0x4B000000 )\n              {\n                __asm { vstmxcsr [rsp+68h+var_28] }\n                v171 = v168 | 0x1F80;\n                __asm\n                {\n                  vldmxcsr [rsp+68h+var_18]\n                  vcvtss2si r8d, xmm1\n                  vcvtsi2ss xmm2, xmm2, r8d\n                  vldmxcsr [rsp+68h+var_28]\n                  vucomiss xmm2, xmm1\n                }\n              }\n              _ECX = _RDX;\n              __asm { vmovd   xmm0, ecx }\n              if ( v87 )\n              {\n                __asm { vmovdqa xmm2, xmm0 }\n                powf_special((unsigned int)_RDX, _RDX);\n                __asm\n                {\n                  vmovdqa xmm7, [rsp+68h+var_38]\n                  vmovdqa xmm6, [rsp+68h+var_48]\n                }\n              }\n              return X;\n            }\n            if ( (v39 & 0x7F800000) <= 0x4B000000 )\n            {\n              __asm { vstmxcsr [rsp+68h+var_28] }\n              v170 = v167 | 0x1F80;\n              __asm\n              {\n                vldmxcsr [rsp+68h+var_18]\n                vcvtss2si edx, xmm1\n                vcvtsi2ss xmm2, xmm2, edx\n                vldmxcsr [rsp+68h+var_28]\n                vucomiss xmm2, xmm1\n              }\n              _EDX = -4194304;\n              __asm { vmovd   xmm2, edx }\n              powf_special(v9, 4290772992LL);\n              __asm\n              {\n                vmovdqa xmm7, [rsp+68h+var_38]\n                vmovdqa xmm6, [rsp+68h+var_48]\n              }\n              return X;\n            }\n          }\n          __asm\n          {\n            vpshufd xmm3, xmm0, 0EEh\n            vsubsd  xmm3, xmm3, cs:qword_180170E0C\n            vmovq   rdx, xmm3\n          }\n          _RDX = _RDX & 0x7FFFFFFFFFFFFFFFLL;\n          if ( _RDX >= 0x3FB0000000000000LL )\n          {\nLpowf_fma3_compute_logx:\n            __asm\n            {\n              vpshufd xmm2, xmm0, 0EEh\n              vpand   xmm2, xmm2, cs:xmmword_180170E90\n              vmovq   rcx, xmm2\n            }\n            _RCX = (__CFSHR__(_RCX, 44) + (_RCX >> 44)) | 0x3FE00;\n            v44 = __CFSHL__(_RCX, 44);\n            _RCX <<= 44;\n            __asm\n            {\n              vmovq   xmm1, rcx\n              vpor    xmm2, xmm2, cs:xmmword_180170E70\n              vpshufd xmm3, xmm2, 0EEh\n              vpsrlq  xmm3, xmm3, 34h ; '4'\n              vpsubq  xmm3, xmm3, cs:xmmword_180170E80\n              vcvtdq2pd xmm3, xmm3\n            }\n            __asm\n            {\n              vsubsd  xmm1, xmm1, xmm2\n              vmulsd  xmm1, xmm1, qword ptr [rcx+rax*8]\n              vmovapd xmm2, xmm1\n              vmovsd  xmm4, cs:qword_180170DD4\n              vfmadd213sd xmm4, xmm1, qword ptr cs:xmmword_180170E70\n              vfmadd213sd xmm4, xmm1, cs:qword_180170E0C\n              vmulsd  xmm1, xmm1, xmm4\n              vmulsd  xmm3, xmm3, cs:qword_180170DDC\n            }\n            __asm\n            {\n              vaddsd  xmm3, xmm3, qword ptr [rcx+rax*8]\n              vsubsd  xmm3, xmm3, xmm1\n              vmulsd  xmm0, xmm0, xmm3\n              vucomisd xmm0, cs:qword_180170DE4\n            }\n            if ( v44 || _RCX == 0 )\n            {\n              __asm { vucomisd xmm0, cs:qword_180170DEC }\n              __asm\n              {\n                vpxor   xmm2, xmm2, xmm2\n                vorps   xmm2, xmm2, xmm5\n              }\n              powf_special(dbl_180170EA0, _RDX);\n              __asm\n              {\n                vmovdqa xmm7, [rsp+68h+var_38]\n                vmovdqa xmm6, [rsp+68h+var_48]\n              }\n            }\n            else\n            {\n              _EDX = 2139095040;\n              __asm\n              {\n                vmovd   xmm2, edx\n                vorps   xmm2, xmm2, xmm5\n              }\n              powf_special(dbl_180170EA0, 2139095040);\n              __asm\n              {\n                vmovdqa xmm7, [rsp+68h+var_38]\n                vmovdqa xmm6, [rsp+68h+var_48]\n              }\n            }\n            return X;\n          }\n          __asm\n          {\n            vpshufd xmm5, xmm5, 44h ; 'D'\n            vmovapd xmm1, xmm3\n            vmovsd  xmm5, xmm5, xmm3\n            vaddsd  xmm1, xmm1, cs:qword_180170E14\n            vdivsd  xmm5, xmm5, xmm1\n            vmovapd xmm2, xmm5\n            vmulsd  xmm5, xmm5, xmm3\n            vaddsd  xmm2, xmm2, xmm2\n            vmovapd xmm1, xmm2\n            vmulsd  xmm1, xmm1, xmm2\n            vpshufd xmm4, xmm1, 44h ; 'D'\n            vmulpd  xmm4, xmm4, cs:xmmword_180170E30\n            vmulsd  xmm2, xmm2, xmm1\n            vaddpd  xmm4, xmm4, cs:xmmword_180170E40\n            vmulsd  xmm1, xmm1, xmm1\n            vmulsd  xmm1, xmm1, xmm2\n            vunpcklpd xmm2, xmm2, xmm1\n            vmulpd  xmm2, xmm2, xmm4\n            vpshufd xmm1, xmm2, 0EEh\n            vaddsd  xmm2, xmm1, xmm2\n            vsubsd  xmm2, xmm2, xmm5\n            vpshufd xmm5, xmm5, 0EEh\n            vaddsd  xmm3, xmm3, xmm2\n          }\n          goto L__return_from_near_one;\n        }\n        __asm\n        {\n          vmovd   ecx, xmm0\n          vmovd   edx, xmm1\n        }\n        if ( _ECX != 2139095040 )\n        {\n          if ( _ECX == -8388608 )\n          {\n            v97 = (int)_RDX <= 0;\n            if ( (_RDX & 0x80000000) != 0LL )\n              LODWORD(_RDX) = 0;\n            if ( !v97 )\n              LODWORD(_RDX) = 2139095040;\n            if ( (v39 & 0x7F800000) <= 0x4B000000 )\n            {\n              __asm { vstmxcsr [rsp+68h+var_28] }\n              v172 = v169 | 0x1F80;\n              __asm\n              {\n                vldmxcsr [rsp+68h+var_18]\n                vcvtss2si r8d, xmm1\n                vcvtsi2ss xmm2, xmm2, r8d\n                vldmxcsr [rsp+68h+var_28]\n                vucomiss xmm2, xmm1\n              }\n            }\n            _ECX = _RDX;\n            __asm\n            {\n              vmovd   xmm0, ecx\n              vmovdqa xmm7, [rsp+68h+var_38]\n              vmovdqa xmm6, [rsp+68h+var_48]\n            }\n            return X;\n          }\nLpowf_fma3_return_x_nan:\n          __asm { vmovd   ecx, xmm0 }\n          _RCX = _ECX | 0x400000u;\n          __asm { vmovd   xmm2, ecx }\n          powf_special(_RCX, _RDX);\n          __asm\n          {\n            vmovdqa xmm7, [rsp+68h+var_38]\n            vmovdqa xmm6, [rsp+68h+var_48]\n          }\n          return X;\n        }\n        if ( (_RDX & 0x80000000) == 0LL )\n        {\nLpowf_fma3_return_pos_inf:\n          _EDX = 2139095040;\n          __asm\n          {\n            vmovd   xmm0, edx\n            vmovdqa xmm7, [rsp+68h+var_38]\n            vmovdqa xmm6, [rsp+68h+var_48]\n          }\n          return X;\n        }\nLpowf_fma3_return_pos_zero:\n        __asm\n        {\n          vpxor   xmm0, xmm0, xmm0\n          vmovdqa xmm7, [rsp+68h+var_38]\n          vmovdqa xmm6, [rsp+68h+var_48]\n        }\n        return X;\n      }\n      if ( (unsigned int)v9 > 0x7F800000 && (unsigned int)v9 < 0x7FC00000 )\n      {\n        _RDX = (unsigned int)v9 | 0x400000;\n        __asm { vmovd   xmm2, edx }\n        powf_special(v9, _RDX);\n        __asm\n        {\n          vmovdqa xmm7, [rsp+68h+var_38]\n          vmovdqa xmm6, [rsp+68h+var_48]\n        }\n        return X;\n      }\n    }\n    _EDX = 1065353216;\n    __asm\n    {\n      vmovd   xmm0, edx\n      vmovdqa xmm7, [rsp+68h+var_38]\n      vmovdqa xmm6, [rsp+68h+var_48]\n    }\n    return X;\n  }\n  v5 = _mm_unpacklo_epi32(*(__m128i *)&Y, *(__m128i *)&X);\n  LODWORD(_XMM5) = 0;\n  v9 = (unsigned int)_mm_cvtsi128_si32(*(__m128i *)&X);\n  v7 = v9;\n  v8 = _mm_cvtsi128_si32(v5) & 0x7FFFFFFF;\n  LODWORD(v9) = v9 & 0x7FFFFFFF;\n  if ( v8 >= 0x7F800000 )\n  {\n    if ( v8 <= 0x7F800000 )\n    {\n      if ( (unsigned int)v9 > 0x7F800000 )\n        goto Lpowf__x_is_nan_y_is_nan_return_x;\n      if ( (_DWORD)v9 == 1065353216 )\n        return 1.0;\n      if ( _mm_cvtsi128_si32(v5) < 0 )\n      {\n        v33 = 0.0;\n        if ( (_DWORD)v9 )\n        {\n          if ( (unsigned int)v9 < 0x3F800000 )\n            return INFINITY;\n          return v33;\n        }\n        return INFINITY;\n      }\n      if ( (unsigned int)v9 >= 0x3F800000 )\n        return INFINITY;\n      return 0.0;\n    }\n    if ( (unsigned int)v9 > 0x7F800000 )\n    {\n      if ( v7 != -4194304 )\n        goto Lpowf__x_is_nan_y_is_nan_return_x;\n    }\n    else if ( v7 == 1065353216 )\n    {\n      if ( v8 < 0x7FC00000 )\n      {\n        powf_special(v9, 1065353216);\n        return X;\n      }\n      return 1.0;\n    }\nLABEL_62:\n    powf_special(v9, _RDX);\n    return X;\n  }\n  if ( (int)v8 > 1065353216 )\n    goto L__y_is_not_zero_or_pos_one;\n  if ( !v8 )\n  {\n    if ( (unsigned int)v9 > 0x7F800000 && (unsigned int)v9 < 0x7FC00000 )\n    {\n      powf_special(v9, (unsigned int)v9 | 0x400000);\n      return X;\n    }\n    return 1.0;\n  }\n  _RDX = (unsigned int)_mm_cvtsi128_si32(v5);\n  if ( (_DWORD)_RDX == 1065353216 )\n  {\n    if ( (_mm_cvtsi128_si32(*(__m128i *)&X) & 0x7FFFFFFFu) > 0x7F800000 )\n      powf_special(v9, _mm_cvtsi128_si32(*(__m128i *)&X) | 0x400000u);\n    return X;\n  }\nL__y_is_not_zero_or_pos_one:\n  if ( (unsigned int)v9 >= 0x7F800000 )\n  {\n    v30 = _mm_cvtsi128_si32(*(__m128i *)&X);\n    _RDX = (unsigned int)_mm_cvtsi128_si32(v5);\n    if ( v30 != 2139095040 )\n    {\n      if ( v30 == -8388608 )\n      {\n        v31 = (int)_RDX <= 0;\n        if ( (_RDX & 0x80000000) != 0LL )\n          LODWORD(_RDX) = 0;\n        if ( !v31 )\n          LODWORD(_RDX) = 2139095040;\n        v32 = 0x80000000;\n        if ( (v8 & 0x7F800000) <= 0x4B000000 )\n        {\n          v166 = _mm_getcsr();\n          _mm_setcsr(v166 | 0x1F80);\n          _mm_setcsr(v166);\n          if ( (float)(int)*(float *)v5.m128i_i32 == *(float *)v5.m128i_i32 )\n          {\n            if ( !((int)*(float *)v5.m128i_i32 & 1) )\n              v32 = 0;\n          }\n          else\n          {\n            v32 = 0;\n          }\n        }\n        else\n        {\n          v32 = 0;\n        }\n        LODWORD(X) = _RDX | v32;\n        return X;\n      }\nLpowf__x_is_nan_y_is_nan_return_x:\n      powf_special(_mm_cvtsi128_si32(*(__m128i *)&X) | 0x400000u, _RDX);\n      return X;\n    }\n    if ( (_RDX & 0x80000000) == 0LL )\n      return INFINITY;\n    return 0.0;\n  }\n  *(__m128d *)&X = _mm_cvtps_pd((__m128)v5);\n  if ( v7 >= 1065877504 )\n    goto L__compute_logx;\n  if ( v7 <= 0 )\n  {\n    if ( !(_DWORD)v9 )\n    {\n      v24 = (unsigned int)_mm_cvtsi128_si32(v5);\n      v25 = 0;\n      v26 = (int)v24 < 0;\n      v27 = (int)v24 <= 0;\n      if ( (int)v24 < 0 )\n        v24 = 2139095040;\n      if ( v26 )\n        v25 = 2139095040;\n      if ( !v27 )\n        v24 = 0;\n      if ( (v8 & 0x7F800000) <= 0x4B000000 )\n      {\n        v165 = _mm_getcsr();\n        _mm_setcsr(v165 | 0x1F80);\n        _mm_setcsr(v165);\n        if ( (float)(int)*(float *)v5.m128i_i32 == *(float *)v5.m128i_i32 )\n        {\n          if ( (int)*(float *)v5.m128i_i32 & 1 )\n            v28 = v7 & 0x80000000;\n          else\n            v28 = 0;\n        }\n        else\n        {\n          v28 = 0;\n        }\n      }\n      else\n      {\n        v28 = 0;\n      }\n      v29 = (unsigned int)v24 | v28;\n      X = *(float *)&v29;\n      if ( v25 )\n        powf_special(v29, v24);\n      return X;\n    }\n    if ( (v8 & 0x7F800000) <= 0x4B000000 )\n    {\n      v164 = _mm_getcsr();\n      _mm_setcsr(v164 | 0x1F80);\n      _mm_setcsr(v164);\n      if ( (float)(int)*(float *)v5.m128i_i32 != *(float *)v5.m128i_i32 )\n      {\n        powf_special(v9, 4290772992LL);\n        return X;\n      }\n      if ( (int)*(float *)v5.m128i_i32 & 1 )\n        LODWORD(_XMM5) = 0x80000000;\n    }\n  }\n  _XMM3 = _mm_shuffle_epi32(*(__m128i *)&X, 238);\n  *(double *)_XMM3.m128i_i64 = *(double *)_XMM3.m128i_i64 - 1.0;\n  _RDX = _XMM3.m128i_i64[0] & 0x7FFFFFFFFFFFFFFFLL;\n  if ( (_XMM3.m128i_i64[0] & 0x7FFFFFFFFFFFFFFFuLL) >= 0x3FB0000000000000LL )\n  {\nL__compute_logx:\n    v10 = _mm_and_si128(_mm_shuffle_epi32(*(__m128i *)&X, 238), (__m128i)xmmword_180170E90);\n    v11 = __CFSHR__(v10.m128i_i64[0], 44) + (unsigned int)((unsigned __int64)v10.m128i_i64[0] >> 44);\n    v12 = _mm_or_si128(v10, (__m128i)xmmword_180170E70);\n    v13 = (COERCE_DOUBLE((unsigned __int64)((unsigned int)v11 | 0x3FE00) << 44) - *(double *)v12.m128i_i64)\n        * dbl_180173C60[v11];\n    v9 = (unsigned __int64)dbl_180170EA0;\n    *(double *)_XMM3.m128i_i64 = _mm_cvtepi32_pd(\n                                   _mm_sub_epi64(\n                                     _mm_srli_epi64(_mm_shuffle_epi32(v12, 238), 0x34u),\n                                     (__m128i)xmmword_180170E80)).m128d_f64[0]\n                               * 0.6931471805599453\n                               + dbl_180170EA0[v11]\n                               - (v13 * v13 * (0.3333333333333333 * v13 + 0.5)\n                                + v13);\n  }\n  else\n  {\n    *(_QWORD *)&v19.m128d_f64[1] = _XMM3.m128i_i64[1];\n    v19.m128d_f64[0] = *(double *)_XMM3.m128i_i64 / (*(double *)_XMM3.m128i_i64 + 2.0);\n    v20 = v19;\n    v20.m128d_f64[0] = v20.m128d_f64[0] + v20.m128d_f64[0];\n    v21.m128i_i64[1] = _XMM3.m128i_i64[1];\n    *(double *)v21.m128i_i64 = v20.m128d_f64[0] * v20.m128d_f64[0];\n    v20.m128d_f64[0] = v20.m128d_f64[0] * (v20.m128d_f64[0] * v20.m128d_f64[0]);\n    v22 = _mm_add_pd(\n            _mm_mul_pd((__m128d)_mm_shuffle_epi32(v21, 68), (__m128d)xmmword_180170E30),\n            (__m128d)xmmword_180170E40);\n    *(double *)v21.m128i_i64 = *(double *)v21.m128i_i64 * *(double *)v21.m128i_i64 * v20.m128d_f64[0];\n    v23 = (__m128i)_mm_mul_pd(_mm_unpacklo_pd(v20, (__m128d)v21), v22);\n    *(double *)_XMM3.m128i_i64 = *(double *)_XMM3.m128i_i64\n                               + *(double *)v23.m128i_i64\n                               + *(double *)_mm_shuffle_epi32(v23, 238).m128i_i64\n                               - v19.m128d_f64[0] * *(double *)_XMM3.m128i_i64;\n  }\nL__return_from_near_one:\n  *(double *)&X = *(double *)&X * *(double *)_XMM3.m128i_i64;\n  if ( *(double *)&X <= 88.72283935546875 )\n  {\n    if ( *(double *)&X > -103.2789306640625 )\n    {\n      v15 = _mm_cvtpd_epi32(_mm_mul_pd(*(__m128d *)&X, (__m128d)xmmword_180170E60));\n      v16 = *(double *)&X - _mm_cvtepi32_pd(v15).m128d_f64[0] * 0.01083042469624915;\n      v17 = _mm_cvtsi128_si32(v15) & 0x3F;\n      *(double *)v18.m128i_i64 = (v16 * v16 * (0.1666666666666667 * v16 + 0.5) + v16) * dbl_180173A60[v17]\n                               + dbl_180173A60[v17];\n      *(float *)v18.m128i_i32 = *(double *)_mm_add_epi64(_mm_slli_epi64(_mm_srai_epi32(v15, 6u), 0x34u), v18).m128i_i64;\n      LODWORD(X) = v18.m128i_i32[0] | _XMM5;\n      return X;\n    }\n    goto LABEL_62;\n  }\n  powf_special(v9, 2139095040);\n  return X;\n}", "assembly": "; \n; powf from 0x180127c80 to 0x180128b46 (3782 bytes)\n; \n; 81 xrefs:\n; > sub_18001CFD0 @ 0x18001f628\n; > sub_18001CFD0 @ 0x18001f6e3\n; > sub_180021100 @ 0x18002170d\n; > sub_1800228C0 @ 0x180022b27\n; > sub_1800228C0 @ 0x180022ee2\n; > sub_1800252C0 @ 0x180025741\n; > sub_1800258D0 @ 0x180025caa\n; > sub_18002D350 @ 0x18002d5c0\n; > sub_180032180 @ 0x180032280\n; > sub_180032180 @ 0x18003230b\n; > sub_180032180 @ 0x18003275b\n; > sub_180032180 @ 0x18003278a\n; > sub_180032180 @ 0x180032794\n; > sub_180040AD0 @ 0x180040c16\n; > sub_1800500F0 @ 0x180050119\n; > sub_1800501A0 @ 0x180050362\n; > sub_1800564A0 @ 0x180056570\n; > sub_1800564A0 @ 0x1800566e6\n; > sub_1800564A0 @ 0x180056780\n; > sub_1800564A0 @ 0x180056cb9\n; > sub_1800564A0 @ 0x180056ec9\n; > sub_180066D40 @ 0x180066e33\n; > sub_180066D40 @ 0x180066e69\n; > sub_180067510 @ 0x1800675a4\n; > sub_180067510 @ 0x1800675e7\n; > sub_180068510 @ 0x180068553\n; > sub_180068700 @ 0x180068739\n; > sub_180070690 @ 0x1800706df\n; > sub_180070690 @ 0x180070717\n; > sub_1800740F0 @ 0x180074130\n; > sub_180076390 @ 0x180076453\n; > sub_1800767F0 @ 0x1800768b1\n; > sub_1800896E0 @ 0x1800897f1\n; > sub_1800896E0 @ 0x180089829\n; > sub_1800899C0 @ 0x180089a2b\n; > sub_180089AE0 @ 0x180089b4d\n; > sub_18008AB50 @ 0x18008ac34\n; > sub_18008AD00 @ 0x18008ad5d\n; > sub_18008AD00 @ 0x18008ada0\n; > sub_18008AD00 @ 0x18008addc\n; > sub_18008B040 @ 0x18008b109\n; > sub_18008B040 @ 0x18008b14a\n; > sub_18008B040 @ 0x18008b186\n; > sub_18008CEE0 @ 0x18008cf71\n; > sub_18008CEE0 @ 0x18008cfea\n; > sub_18008CEE0 @ 0x18008d05c\n; > sub_1800DBE80 @ 0x1800dbf26\n; > sub_1800EB320 @ 0x1800eb637\n; > sub_1800ECDE0 @ 0x1800ece39\n; > sub_1800ED160 @ 0x1800ed201\n; > sub_1800ED160 @ 0x1800ed308\n; > sub_1800ED3F0 @ 0x1800ed46b\n; > sub_1800ED6C0 @ 0x1800ed707\n; > sub_1800F0120 @ 0x1800f0559\n; > sub_1800F05D0 @ 0x1800f0a37\n; > sub_1800F0AC0 @ 0x1800f1009\n; > sub_1800F10D0 @ 0x1800f1626\n; > sub_1800F1710 @ 0x1800f1807\n; > sub_1800F1890 @ 0x1800f19a3\n; > sub_1800F1A40 @ 0x1800f1b85\n; > sub_1800F1C50 @ 0x1800f1dbc\n; > sub_1800F5A00 @ 0x1800f5b58\n; > sub_1800F5A00 @ 0x1800f5b76\n; > sub_1800F5FF0 @ 0x1800f603b\n; > sub_1800F5FF0 @ 0x1800f6079\n; > sub_180107D30 @ 0x180107dba\n; > sub_180107D30 @ 0x180107dfe\n; > sub_180107D30 @ 0x180107e44\n; > sub_180107D30 @ 0x180107e8a\n; > sub_180107D30 @ 0x180107ed0\n; > sub_180107D30 @ 0x180107f16\n; > sub_180107D30 @ 0x180107f5c\n; > sub_180107D30 @ 0x180107fa2\n; > sub_180108CC0 @ 0x180108cf7\n; > sub_180109080 @ 0x1801090d8\n; > sub_180109370 @ 0x180109435\n; > sub_180109990 @ 0x180109bc6\n; > sub_18010DF80 @ 0x18010e0e8\n; > sub_18010DF80 @ 0x18010e19c\n; > sub_18010DF80 @ 0x18010e253\n; > <???> @ 0x180202a14\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\nsub     rsp, 68h                                                       ; +0x0, 0x180127c80\nmovdqa  [rsp+68h+var_48], xmm6                                         ; +0x4, 0x180127c84\nmovdqa  [rsp+68h+var_38], xmm7                                         ; +0xa, 0x180127c8a\ncmp     cs:dword_1801F4D54, 0                                          ; +0x10, 0x180127c90\njnz     Lpowf_fma3                                                     ; +0x17, 0x180127c97\npunpckldq xmm1, xmm0                                                   ; +0x1d, 0x180127c9d\npxor    xmm5, xmm5                                                     ; +0x21, 0x180127ca1\nmovd    eax, xmm1                                                      ; +0x25, 0x180127ca5\nmovd    ecx, xmm0                                                      ; +0x29, 0x180127ca9\nmov     r9d, ecx                                                       ; +0x2d, 0x180127cad\nbtr     eax, 1Fh                                                       ; +0x30, 0x180127cb0\nbtr     ecx, 1Fh                                                       ; +0x34, 0x180127cb4\ncmp     eax, 7F800000h                                                 ; +0x38, 0x180127cb8\njnb     L__y_is_inf_or_nan                                             ; +0x3d, 0x180127cbd\ncmp     eax, 3F800000h                                                 ; +0x43, 0x180127cc3\njle     L__check_if_y_is_zero_or_pos_one                               ; +0x48, 0x180127cc8\ncmp     ecx, 7F800000h                                                 ; +0x4e, 0x180127cce\njnb     L__x_is_inf_or_nan                                             ; +0x54, 0x180127cd4\ncvtps2pd xmm0, xmm1                                                    ; +0x5a, 0x180127cda\ncmp     r9d, 3F880000h                                                 ; +0x5d, 0x180127cdd\njl      L__x_is_neg_or_zero_or_near_one                                ; +0x64, 0x180127ce4\npshufd  xmm2, xmm0, 0EEh                                               ; +0x6a, 0x180127cea\npand    xmm2, cs:xmmword_180170E90                                     ; +0x6f, 0x180127cef\nmovq    rcx, xmm2                                                      ; +0x77, 0x180127cf7\nshr     rcx, 2Ch                                                       ; +0x7c, 0x180127cfc\nadc     ecx, 0                                                         ; +0x80, 0x180127d00\nmov     eax, ecx                                                       ; +0x83, 0x180127d03\nor      ecx, 3FE00h                                                    ; +0x85, 0x180127d05\nshl     rcx, 2Ch                                                       ; +0x8b, 0x180127d0b\nmovq    xmm1, rcx                                                      ; +0x8f, 0x180127d0f\npor     xmm2, cs:xmmword_180170E70                                     ; +0x94, 0x180127d14\npshufd  xmm3, xmm2, 0EEh                                               ; +0x9c, 0x180127d1c\npsrlq   xmm3, 34h ; '4'                                                ; +0xa1, 0x180127d21\npsubq   xmm3, cs:xmmword_180170E80                                     ; +0xa6, 0x180127d26\ncvtdq2pd xmm3, xmm3                                                    ; +0xae, 0x180127d2e\nlea     rcx, dbl_180173C60                                             ; +0xb2, 0x180127d32\nsubsd   xmm1, xmm2                                                     ; +0xb9, 0x180127d39\nmulsd   xmm1, qword ptr [rcx+rax*8]                                    ; +0xbd, 0x180127d3d\nmovapd  xmm2, xmm1                                                     ; +0xc2, 0x180127d42\nmovsd   xmm4, cs:qword_180170DD4                                       ; +0xc6, 0x180127d46\nmulsd   xmm4, xmm1                                                     ; +0xce, 0x180127d4e\nmulsd   xmm1, xmm2                                                     ; +0xd2, 0x180127d52\naddsd   xmm4, qword ptr cs:xmmword_180170E70                           ; +0xd6, 0x180127d56\nmulsd   xmm1, xmm4                                                     ; +0xde, 0x180127d5e\naddsd   xmm1, xmm2                                                     ; +0xe2, 0x180127d62\nmulsd   xmm3, cs:qword_180170DDC                                       ; +0xe6, 0x180127d66\nlea     rcx, dbl_180170EA0                                             ; +0xee, 0x180127d6e\naddsd   xmm3, qword ptr [rcx+rax*8]                                    ; +0xf5, 0x180127d75\nsubsd   xmm3, xmm1                                                     ; +0xfa, 0x180127d7a\nmulsd   xmm0, xmm3                                                     ; +0xfe, 0x180127d7e\nucomisd xmm0, cs:qword_180170DE4                                       ; +0x102, 0x180127d82\nja      L__z_is_inf                                                    ; +0x10a, 0x180127d8a\nucomisd xmm0, cs:qword_180170DEC                                       ; +0x110, 0x180127d90\njbe     L__z_is_zero                                                   ; +0x118, 0x180127d98\nmovapd  xmm3, xmm0                                                     ; +0x11e, 0x180127d9e\nmulpd   xmm3, cs:xmmword_180170E60                                     ; +0x122, 0x180127da2\ncvtpd2dq xmm4, xmm3                                                    ; +0x12a, 0x180127daa\ncvtdq2pd xmm2, xmm4                                                    ; +0x12e, 0x180127dae\nmulsd   xmm2, cs:qword_180170DF4                                       ; +0x132, 0x180127db2\nmovd    ecx, xmm4                                                      ; +0x13a, 0x180127dba\nsubsd   xmm0, xmm2                                                     ; +0x13e, 0x180127dbe\nmovapd  xmm1, xmm0                                                     ; +0x142, 0x180127dc2\nmovsd   xmm3, cs:qword_180170DFC                                       ; +0x146, 0x180127dc6\nmulsd   xmm3, xmm0                                                     ; +0x14e, 0x180127dce\nmulsd   xmm0, xmm1                                                     ; +0x152, 0x180127dd2\naddsd   xmm3, qword ptr cs:xmmword_180170E70                           ; +0x156, 0x180127dd6\nmulsd   xmm0, xmm3                                                     ; +0x15e, 0x180127dde\naddsd   xmm0, xmm1                                                     ; +0x162, 0x180127de2\nmov     rax, 3Fh ; '?'                                                 ; +0x166, 0x180127de6\nand     eax, ecx                                                       ; +0x16d, 0x180127ded\nlea     rcx, dbl_180173A60                                             ; +0x16f, 0x180127def\nmulsd   xmm0, qword ptr [rcx+rax*8]                                    ; +0x176, 0x180127df6\naddsd   xmm0, qword ptr [rcx+rax*8]                                    ; +0x17b, 0x180127dfb\npsrad   xmm4, 6                                                        ; +0x180, 0x180127e00\npsllq   xmm4, 34h ; '4'                                                ; +0x185, 0x180127e05\npaddq   xmm4, xmm0                                                     ; +0x18a, 0x180127e0a\ncvtsd2ss xmm0, xmm4                                                    ; +0x18e, 0x180127e0e\norps    xmm0, xmm5                                                     ; +0x192, 0x180127e12\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x195, 0x180127e15\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x19b, 0x180127e1b\nadd     rsp, 68h                                                       ; +0x1a1, 0x180127e21\nretn                                                                   ; +0x1a5, 0x180127e25\nalign 10h                                                              ; +0x1a6, 0x180127e26\ncmp     r9d, 0                                                         ; +0x1b0, 0x180127e30\njg      short L__x_near_one                                            ; +0x1b4, 0x180127e34\ncmp     ecx, 0                                                         ; +0x1b6, 0x180127e36\njz      L__x_is_zero                                                   ; +0x1b9, 0x180127e39\nand     eax, 7F800000h                                                 ; +0x1bf, 0x180127e3f\ncmp     eax, 4B000000h                                                 ; +0x1c4, 0x180127e44\njg      short L__x_near_one                                            ; +0x1c9, 0x180127e49\nstmxcsr [rsp+68h+var_28]                                               ; +0x1cb, 0x180127e4b\nmov     edx, [rsp+68h+var_28]                                          ; +0x1d0, 0x180127e50\nor      edx, 1F80h                                                     ; +0x1d4, 0x180127e54\nmov     [rsp+68h+var_18], edx                                          ; +0x1da, 0x180127e5a\nldmxcsr [rsp+68h+var_18]                                               ; +0x1de, 0x180127e5e\ncvtss2si edx, xmm1                                                     ; +0x1e3, 0x180127e63\ncvtsi2ss xmm2, edx                                                     ; +0x1e7, 0x180127e67\nldmxcsr [rsp+68h+var_28]                                               ; +0x1eb, 0x180127e6b\nucomiss xmm2, xmm1                                                     ; +0x1f0, 0x180127e70\njnz     L__return_qnan                                                 ; +0x1f3, 0x180127e73\nrcr     edx, 1                                                         ; +0x1f9, 0x180127e79\njnb     short L__x_near_one                                            ; +0x1fb, 0x180127e7b\nmovss   xmm5, cs:dword_180170E1C                                       ; +0x1fd, 0x180127e7d\npshufd  xmm3, xmm0, 0EEh                                               ; +0x205, 0x180127e85\nsubsd   xmm3, cs:qword_180170E0C                                       ; +0x20a, 0x180127e8a\nmovq    rdx, xmm3                                                      ; +0x212, 0x180127e92\nbtr     rdx, 3Fh ; '?'                                                 ; +0x217, 0x180127e97\ncmp     rdx, cs:qword_180170E04                                        ; +0x21c, 0x180127e9c\njnb     L__compute_logx                                                ; +0x223, 0x180127ea3\nmovapd  xmm7, cs:xmmword_180170E30                                     ; +0x229, 0x180127ea9\nmovapd  xmm1, xmm3                                                     ; +0x231, 0x180127eb1\nmovapd  xmm6, xmm3                                                     ; +0x235, 0x180127eb5\naddsd   xmm1, cs:qword_180170E14                                       ; +0x239, 0x180127eb9\ndivsd   xmm6, xmm1                                                     ; +0x241, 0x180127ec1\nmovapd  xmm2, xmm6                                                     ; +0x245, 0x180127ec5\nmulsd   xmm6, xmm3                                                     ; +0x249, 0x180127ec9\naddsd   xmm2, xmm2                                                     ; +0x24d, 0x180127ecd\nmovapd  xmm1, xmm2                                                     ; +0x251, 0x180127ed1\nmulsd   xmm1, xmm2                                                     ; +0x255, 0x180127ed5\npshufd  xmm4, xmm1, 44h ; 'D'                                          ; +0x259, 0x180127ed9\nmulpd   xmm4, xmm7                                                     ; +0x25e, 0x180127ede\nmulsd   xmm2, xmm1                                                     ; +0x262, 0x180127ee2\naddpd   xmm4, cs:xmmword_180170E40                                     ; +0x266, 0x180127ee6\nmulsd   xmm1, xmm1                                                     ; +0x26e, 0x180127eee\nmulsd   xmm1, xmm2                                                     ; +0x272, 0x180127ef2\nunpcklpd xmm2, xmm1                                                    ; +0x276, 0x180127ef6\nmulpd   xmm2, xmm4                                                     ; +0x27a, 0x180127efa\npshufd  xmm1, xmm2, 0EEh                                               ; +0x27e, 0x180127efe\naddsd   xmm2, xmm1                                                     ; +0x283, 0x180127f03\nsubsd   xmm2, xmm6                                                     ; +0x287, 0x180127f07\naddsd   xmm3, xmm2                                                     ; +0x28b, 0x180127f0b\njmp     L__return_from_near_one                                        ; +0x28f, 0x180127f0f\nalign 20h                                                              ; +0x294, 0x180127f14\nmov     r8d, eax                                                       ; +0x2a0, 0x180127f20\nmovd    edx, xmm1                                                      ; +0x2a3, 0x180127f23\nmov     eax, 0                                                         ; +0x2a7, 0x180127f27\nmov     r10d, 0                                                        ; +0x2ac, 0x180127f2c\nmov     ecx, 7F800000h                                                 ; +0x2b2, 0x180127f32\ncmp     edx, 0                                                         ; +0x2b7, 0x180127f37\ncmovl   edx, ecx                                                       ; +0x2ba, 0x180127f3a\ncmovl   r10d, ecx                                                      ; +0x2bd, 0x180127f3d\ncmovg   edx, eax                                                       ; +0x2c1, 0x180127f41\nmov     ecx, 80000000h                                                 ; +0x2c4, 0x180127f44\nand     r8d, 7F800000h                                                 ; +0x2c9, 0x180127f49\ncmp     r8d, 4B000000h                                                 ; +0x2d0, 0x180127f50\ncmovg   ecx, eax                                                       ; +0x2d7, 0x180127f57\njg      short L__or_sign_and_retvalue_and_ret1                         ; +0x2da, 0x180127f5a\nstmxcsr [rsp+68h+var_28]                                               ; +0x2dc, 0x180127f5c\nmov     r8d, [rsp+68h+var_28]                                          ; +0x2e1, 0x180127f61\nor      r8d, 1F80h                                                     ; +0x2e6, 0x180127f66\nmov     [rsp+68h+var_18], r8d                                          ; +0x2ed, 0x180127f6d\nldmxcsr [rsp+68h+var_18]                                               ; +0x2f2, 0x180127f72\ncvtss2si r8d, xmm1                                                     ; +0x2f7, 0x180127f77\ncvtsi2ss xmm2, r8d                                                     ; +0x2fc, 0x180127f7c\nldmxcsr [rsp+68h+var_28]                                               ; +0x301, 0x180127f81\nucomiss xmm2, xmm1                                                     ; +0x306, 0x180127f86\ncmovnz  ecx, eax                                                       ; +0x309, 0x180127f89\njnz     short L__or_sign_and_retvalue_and_ret1                         ; +0x30c, 0x180127f8c\nrcr     r8d, 1                                                         ; +0x30e, 0x180127f8e\ncmovnb  ecx, eax                                                       ; +0x311, 0x180127f91\njnb     short L__or_sign_and_retvalue_and_ret1                         ; +0x314, 0x180127f94\nmov     ecx, r9d                                                       ; +0x316, 0x180127f96\nand     ecx, 80000000h                                                 ; +0x319, 0x180127f99\nor      ecx, edx                                                       ; +0x31f, 0x180127f9f\nmovd    xmm0, ecx                                                      ; +0x321, 0x180127fa1\ncmp     r10d, 0                                                        ; +0x325, 0x180127fa5\njz      short L__return                                                ; +0x329, 0x180127fa9\nmov     r9d, cs:dword_180170DB4                                        ; +0x32b, 0x180127fab\nmovdqa  xmm2, xmm0                                                     ; +0x332, 0x180127fb2\ncall    _powf_special                                                  ; +0x336, 0x180127fb6\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x33b, 0x180127fbb\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x341, 0x180127fc1\nadd     rsp, 68h                                                       ; +0x347, 0x180127fc7\nretn                                                                   ; +0x34b, 0x180127fcb\nalign 10h                                                              ; +0x34c, 0x180127fcc\ncmp     eax, 0                                                         ; +0x350, 0x180127fd0\njz      L__return_pos_one                                              ; +0x353, 0x180127fd3\nmovd    ecx, xmm0                                                      ; +0x359, 0x180127fd9\nmovd    edx, xmm1                                                      ; +0x35d, 0x180127fdd\ncmp     ecx, 7F800000h                                                 ; +0x361, 0x180127fe1\njz      short L__x_is_pos_inf                                          ; +0x367, 0x180127fe7\ncmp     ecx, 0FF800000h                                                ; +0x369, 0x180127fe9\njz      short L__x_is_neg_inf                                          ; +0x36f, 0x180127fef\njmp     L__return_x_nan                                                ; +0x371, 0x180127ff1\nalign 20h                                                              ; +0x376, 0x180127ff6\ncmp     edx, 0                                                         ; +0x380, 0x180128000\njl      L__return_pos_zero                                             ; +0x383, 0x180128003\njmp     L__return_pos_inf                                              ; +0x389, 0x180128009\nalign 10h                                                              ; +0x38e, 0x18012800e\nmov     r8d, eax                                                       ; +0x390, 0x180128010\nmov     eax, 0                                                         ; +0x393, 0x180128013\nmov     ecx, 7F800000h                                                 ; +0x398, 0x180128018\ncmp     edx, 0                                                         ; +0x39d, 0x18012801d\ncmovl   edx, eax                                                       ; +0x3a0, 0x180128020\ncmovg   edx, ecx                                                       ; +0x3a3, 0x180128023\nmov     ecx, 80000000h                                                 ; +0x3a6, 0x180128026\nand     r8d, 7F800000h                                                 ; +0x3ab, 0x18012802b\ncmp     r8d, 4B000000h                                                 ; +0x3b2, 0x180128032\ncmovg   ecx, eax                                                       ; +0x3b9, 0x180128039\njg      short L__or_sign_and_retvalue_and_ret                          ; +0x3bc, 0x18012803c\nstmxcsr [rsp+68h+var_28]                                               ; +0x3be, 0x18012803e\nmov     r8d, [rsp+68h+var_28]                                          ; +0x3c3, 0x180128043\nor      r8d, 1F80h                                                     ; +0x3c8, 0x180128048\nmov     [rsp+68h+var_18], r8d                                          ; +0x3cf, 0x18012804f\nldmxcsr [rsp+68h+var_18]                                               ; +0x3d4, 0x180128054\ncvtss2si r8d, xmm1                                                     ; +0x3d9, 0x180128059\ncvtsi2ss xmm2, r8d                                                     ; +0x3de, 0x18012805e\nldmxcsr [rsp+68h+var_28]                                               ; +0x3e3, 0x180128063\nucomiss xmm2, xmm1                                                     ; +0x3e8, 0x180128068\ncmovnz  ecx, eax                                                       ; +0x3eb, 0x18012806b\njnz     short L__or_sign_and_retvalue_and_ret                          ; +0x3ee, 0x18012806e\nrcr     r8d, 1                                                         ; +0x3f0, 0x180128070\ncmovnb  ecx, eax                                                       ; +0x3f3, 0x180128073\nor      ecx, edx                                                       ; +0x3f6, 0x180128076\nmovd    xmm0, ecx                                                      ; +0x3f8, 0x180128078\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x3fc, 0x18012807c\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x402, 0x180128082\nadd     rsp, 68h                                                       ; +0x408, 0x180128088\nretn                                                                   ; +0x40c, 0x18012808c\nalign 10h                                                              ; +0x40d, 0x18012808d\nja      L__y_is_nan                                                    ; +0x410, 0x180128090\ncmp     ecx, 7F800000h                                                 ; +0x416, 0x180128096\nja      L__return_x_nan                                                ; +0x41c, 0x18012809c\ncmp     ecx, 3F800000h                                                 ; +0x422, 0x1801280a2\njz      L__return_abs_x_is_one_y_is_pninf                              ; +0x428, 0x1801280a8\nmovd    eax, xmm1                                                      ; +0x42e, 0x1801280ae\nbt      eax, 1Fh                                                       ; +0x432, 0x1801280b2\njb      short L__y_is_neg_inf                                          ; +0x436, 0x1801280b6\ncmp     ecx, 3F800000h                                                 ; +0x438, 0x1801280b8\njb      L__return_pos_zero                                             ; +0x43e, 0x1801280be\njmp     L__return_pos_inf                                              ; +0x444, 0x1801280c4\nalign 10h                                                              ; +0x449, 0x1801280c9\nmov     edx, 1                                                         ; +0x450, 0x1801280d0\nmov     eax, 0                                                         ; +0x455, 0x1801280d5\nmov     r8d, 7F800000h                                                 ; +0x45a, 0x1801280da\ncmp     ecx, 0                                                         ; +0x460, 0x1801280e0\njz      L__return_pos_inf                                              ; +0x463, 0x1801280e3\ncmovnz  edx, eax                                                       ; +0x469, 0x1801280e9\ncmp     ecx, 3F800000h                                                 ; +0x46c, 0x1801280ec\ncmovb   eax, r8d                                                       ; +0x472, 0x1801280f2\nmovd    xmm0, eax                                                      ; +0x476, 0x1801280f6\ncmp     edx, 0                                                         ; +0x47a, 0x1801280fa\njz      short L__return1                                               ; +0x47d, 0x1801280fd\nmovdqa  xmm2, xmm0                                                     ; +0x47f, 0x1801280ff\nmov     r9d, cs:dword_180170DB4                                        ; +0x483, 0x180128103\ncall    _powf_special                                                  ; +0x48a, 0x18012810a\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x48f, 0x18012810f\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x495, 0x180128115\nadd     rsp, 68h                                                       ; +0x49b, 0x18012811b\nretn                                                                   ; +0x49f, 0x18012811f\ncmp     ecx, 7F800000h                                                 ; +0x4a0, 0x180128120\nja      L__x_is_nan_y_is_nan                                           ; +0x4a6, 0x180128126\ncmp     r9d, 3F800000h                                                 ; +0x4ac, 0x18012812c\njz      L__x_is_one_y_is_nan                                           ; +0x4b3, 0x180128133\njmp     L__return_y_nan                                                ; +0x4b9, 0x180128139\nalign 20h                                                              ; +0x4be, 0x18012813e\ncmp     eax, 0                                                         ; +0x4c0, 0x180128140\njz      short L__y_is_zero_check_x_nan                                 ; +0x4c3, 0x180128143\nmovd    edx, xmm1                                                      ; +0x4c5, 0x180128145\ncmp     edx, 3F800000h                                                 ; +0x4c9, 0x180128149\njnz     L__y_is_not_zero_or_pos_one                                    ; +0x4cf, 0x18012814f\nmovd    r9d, xmm0                                                      ; +0x4d5, 0x180128155\nand     r9d, 7FFFFFFFh                                                 ; +0x4da, 0x18012815a\ncmp     r9d, 7F800000h                                                 ; +0x4e1, 0x180128161\nja      short L__x_is_NaN_y_is_one_return_NaN                          ; +0x4e8, 0x180128168\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x4ea, 0x18012816a\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x4f0, 0x180128170\nadd     rsp, 68h                                                       ; +0x4f6, 0x180128176\nretn                                                                   ; +0x4fa, 0x18012817a\nmovd    edx, xmm0                                                      ; +0x4fb, 0x18012817b\nor      edx, 400000h                                                   ; +0x4ff, 0x18012817f\nmovd    xmm2, edx                                                      ; +0x505, 0x180128185\nmov     r9d, cs:dword_180170DB8                                        ; +0x509, 0x180128189\ncall    _powf_special                                                  ; +0x510, 0x180128190\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x515, 0x180128195\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x51b, 0x18012819b\nadd     rsp, 68h                                                       ; +0x521, 0x1801281a1\nretn                                                                   ; +0x525, 0x1801281a5\nalign 10h                                                              ; +0x526, 0x1801281a6\ncmp     ecx, 7F800000h                                                 ; +0x530, 0x1801281b0\njbe     short L__return_pos_one                                        ; +0x536, 0x1801281b6\ncmp     ecx, 7FC00000h                                                 ; +0x538, 0x1801281b8\njnb     short L__return_pos_one                                        ; +0x53e, 0x1801281be\nmov     edx, ecx                                                       ; +0x540, 0x1801281c0\nor      edx, 400000h                                                   ; +0x542, 0x1801281c2\nmovd    xmm2, edx                                                      ; +0x548, 0x1801281c8\nmov     r9d, cs:dword_180170DB8                                        ; +0x54c, 0x1801281cc\ncall    _powf_special                                                  ; +0x553, 0x1801281d3\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x558, 0x1801281d8\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x55e, 0x1801281de\nadd     rsp, 68h                                                       ; +0x564, 0x1801281e4\nretn                                                                   ; +0x568, 0x1801281e8\nalign 10h                                                              ; +0x569, 0x1801281e9\ncmp     eax, 7FC00000h                                                 ; +0x570, 0x1801281f0\njnb     short L__return_pos_one                                        ; +0x575, 0x1801281f5\nmov     edx, 3F800000h                                                 ; +0x577, 0x1801281f7\nmovd    xmm2, edx                                                      ; +0x57c, 0x1801281fc\nmov     r9d, cs:dword_180170DBC                                        ; +0x580, 0x180128200\ncall    _powf_special                                                  ; +0x587, 0x180128207\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x58c, 0x18012820c\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x592, 0x180128212\nadd     rsp, 68h                                                       ; +0x598, 0x180128218\nretn                                                                   ; +0x59c, 0x18012821c\nalign 20h                                                              ; +0x59d, 0x18012821d\nmov     edx, 3F800000h                                                 ; +0x5a0, 0x180128220\nmovd    xmm0, edx                                                      ; +0x5a5, 0x180128225\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x5a9, 0x180128229\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x5af, 0x18012822f\nadd     rsp, 68h                                                       ; +0x5b5, 0x180128235\nretn                                                                   ; +0x5b9, 0x180128239\nalign 20h                                                              ; +0x5ba, 0x18012823a\nmov     edx, 3F800000h                                                 ; +0x5c0, 0x180128240\nmovd    xmm0, edx                                                      ; +0x5c5, 0x180128245\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x5c9, 0x180128249\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x5cf, 0x18012824f\nadd     rsp, 68h                                                       ; +0x5d5, 0x180128255\nretn                                                                   ; +0x5d9, 0x180128259\nalign 20h                                                              ; +0x5da, 0x18012825a\npxor    xmm0, xmm0                                                     ; +0x5e0, 0x180128260\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x5e4, 0x180128264\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x5ea, 0x18012826a\nadd     rsp, 68h                                                       ; +0x5f0, 0x180128270\nretn                                                                   ; +0x5f4, 0x180128274\nalign 20h                                                              ; +0x5f5, 0x180128275\nmov     edx, 7F800000h                                                 ; +0x600, 0x180128280\nmovd    xmm0, edx                                                      ; +0x605, 0x180128285\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x609, 0x180128289\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x60f, 0x18012828f\nadd     rsp, 68h                                                       ; +0x615, 0x180128295\nretn                                                                   ; +0x619, 0x180128299\nalign 20h                                                              ; +0x61a, 0x18012829a\nmovd    ecx, xmm0                                                      ; +0x620, 0x1801282a0\nor      ecx, 400000h                                                   ; +0x624, 0x1801282a4\nmovd    xmm2, ecx                                                      ; +0x62a, 0x1801282aa\nmov     r9d, cs:dword_180170DB8                                        ; +0x62e, 0x1801282ae\ncall    _powf_special                                                  ; +0x635, 0x1801282b5\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x63a, 0x1801282ba\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x640, 0x1801282c0\nadd     rsp, 68h                                                       ; +0x646, 0x1801282c6\nretn                                                                   ; +0x64a, 0x1801282ca\nalign 10h                                                              ; +0x64b, 0x1801282cb\nmovd    eax, xmm1                                                      ; +0x650, 0x1801282d0\nor      eax, 400000h                                                   ; +0x654, 0x1801282d4\nmovd    xmm2, eax                                                      ; +0x659, 0x1801282d9\nmov     r9d, cs:dword_180170DBC                                        ; +0x65d, 0x1801282dd\ncall    _powf_special                                                  ; +0x664, 0x1801282e4\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x669, 0x1801282e9\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x66f, 0x1801282ef\nadd     rsp, 68h                                                       ; +0x675, 0x1801282f5\nretn                                                                   ; +0x679, 0x1801282f9\nalign 20h                                                              ; +0x67a, 0x1801282fa\ncmp     r9d, 0FFC00000h                                                ; +0x680, 0x180128300\njz      short Lpowf__x_is_nan_y_is_nan_return_y                        ; +0x687, 0x180128307\nmovd    ecx, xmm0                                                      ; +0x689, 0x180128309\nor      ecx, 400000h                                                   ; +0x68d, 0x18012830d\nmovd    xmm2, ecx                                                      ; +0x693, 0x180128313\nmov     r9d, cs:dword_180170DC0                                        ; +0x697, 0x180128317\ncall    _powf_special                                                  ; +0x69e, 0x18012831e\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x6a3, 0x180128323\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x6a9, 0x180128329\nadd     rsp, 68h                                                       ; +0x6af, 0x18012832f\nretn                                                                   ; +0x6b3, 0x180128333\nmovd    eax, xmm1                                                      ; +0x6b4, 0x180128334\nor      eax, 400000h                                                   ; +0x6b8, 0x180128338\nmovd    xmm2, eax                                                      ; +0x6bd, 0x18012833d\nmov     r9d, cs:dword_180170DC0                                        ; +0x6c1, 0x180128341\ncall    _powf_special                                                  ; +0x6c8, 0x180128348\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x6cd, 0x18012834d\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x6d3, 0x180128353\nadd     rsp, 68h                                                       ; +0x6d9, 0x180128359\nretn                                                                   ; +0x6dd, 0x18012835d\nalign 20h                                                              ; +0x6de, 0x18012835e\npxor    xmm2, xmm2                                                     ; +0x6e0, 0x180128360\norps    xmm2, xmm5                                                     ; +0x6e4, 0x180128364\nmov     r9d, cs:dword_180170DC8                                        ; +0x6e7, 0x180128367\ncall    _powf_special                                                  ; +0x6ee, 0x18012836e\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x6f3, 0x180128373\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x6f9, 0x180128379\nadd     rsp, 68h                                                       ; +0x6ff, 0x18012837f\nretn                                                                   ; +0x703, 0x180128383\nalign 10h                                                              ; +0x704, 0x180128384\nmov     edx, 7F800000h                                                 ; +0x710, 0x180128390\nmovd    xmm2, edx                                                      ; +0x715, 0x180128395\norps    xmm2, xmm5                                                     ; +0x719, 0x180128399\nmov     r9d, cs:dword_180170DD0                                        ; +0x71c, 0x18012839c\ncall    _powf_special                                                  ; +0x723, 0x1801283a3\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x728, 0x1801283a8\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x72e, 0x1801283ae\nadd     rsp, 68h                                                       ; +0x734, 0x1801283b4\nretn                                                                   ; +0x738, 0x1801283b8\nalign 20h                                                              ; +0x739, 0x1801283b9\nmov     edx, 0FFC00000h                                                ; +0x740, 0x1801283c0\nmovd    xmm2, edx                                                      ; +0x745, 0x1801283c5\nmov     r9d, cs:dword_180170DC4                                        ; +0x749, 0x1801283c9\ncall    _powf_special                                                  ; +0x750, 0x1801283d0\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0x755, 0x1801283d5\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0x75b, 0x1801283db\nadd     rsp, 68h                                                       ; +0x761, 0x1801283e1\nretn                                                                   ; +0x765, 0x1801283e5\nvpunpckldq xmm1, xmm1, xmm0                                            ; +0x766, 0x1801283e6\nvpxor   xmm5, xmm5, xmm5                                               ; +0x76a, 0x1801283ea\nvmovd   eax, xmm1                                                      ; +0x76e, 0x1801283ee\nvmovd   ecx, xmm0                                                      ; +0x772, 0x1801283f2\nmov     r9d, ecx                                                       ; +0x776, 0x1801283f6\nand     eax, 7FFFFFFFh                                                 ; +0x779, 0x1801283f9\nand     ecx, 7FFFFFFFh                                                 ; +0x77e, 0x1801283fe\ncmp     eax, 7F800000h                                                 ; +0x784, 0x180128404\njnb     Lpowf_fma3_y_is_inf_or_nan                                     ; +0x789, 0x180128409\ncmp     eax, 3F800000h                                                 ; +0x78f, 0x18012840f\njle     Lpowf_fma3_check_if_y_is_zero_or_pos_one                       ; +0x794, 0x180128414\ncmp     ecx, 7F800000h                                                 ; +0x79a, 0x18012841a\njnb     Lpowf_fma3_x_is_inf_or_nan                                     ; +0x7a0, 0x180128420\nvcvtps2pd xmm0, xmm1                                                   ; +0x7a6, 0x180128426\ncmp     r9d, 3F880000h                                                 ; +0x7aa, 0x18012842a\njl      Lpowf_fma3_x_is_neg_or_zero_or_near_one                        ; +0x7b1, 0x180128431\nvpshufd xmm2, xmm0, 0EEh                                               ; +0x7b7, 0x180128437\nvpand   xmm2, xmm2, cs:xmmword_180170E90                               ; +0x7bc, 0x18012843c\nvmovq   rcx, xmm2                                                      ; +0x7c4, 0x180128444\nshr     rcx, 2Ch                                                       ; +0x7c9, 0x180128449\nadc     ecx, 0                                                         ; +0x7cd, 0x18012844d\nmov     eax, ecx                                                       ; +0x7d0, 0x180128450\nor      ecx, 3FE00h                                                    ; +0x7d2, 0x180128452\nshl     rcx, 2Ch                                                       ; +0x7d8, 0x180128458\nvmovq   xmm1, rcx                                                      ; +0x7dc, 0x18012845c\nvpor    xmm2, xmm2, cs:xmmword_180170E70                               ; +0x7e1, 0x180128461\nvpshufd xmm3, xmm2, 0EEh                                               ; +0x7e9, 0x180128469\nvpsrlq  xmm3, xmm3, 34h ; '4'                                          ; +0x7ee, 0x18012846e\nvpsubq  xmm3, xmm3, cs:xmmword_180170E80                               ; +0x7f3, 0x180128473\nvcvtdq2pd xmm3, xmm3                                                   ; +0x7fb, 0x18012847b\nlea     rcx, dbl_180173C60                                             ; +0x7ff, 0x18012847f\nvsubsd  xmm1, xmm1, xmm2                                               ; +0x806, 0x180128486\nvmulsd  xmm1, xmm1, qword ptr [rcx+rax*8]                              ; +0x80a, 0x18012848a\nvmovapd xmm2, xmm1                                                     ; +0x80f, 0x18012848f\nvmovsd  xmm4, cs:qword_180170DD4                                       ; +0x813, 0x180128493\nvfmadd213sd xmm4, xmm1, qword ptr cs:xmmword_180170E70                 ; +0x81b, 0x18012849b\nvfmadd213sd xmm4, xmm1, cs:qword_180170E0C                             ; +0x824, 0x1801284a4\nvmulsd  xmm1, xmm1, xmm4                                               ; +0x82d, 0x1801284ad\nvmulsd  xmm3, xmm3, cs:qword_180170DDC                                 ; +0x831, 0x1801284b1\nlea     rcx, dbl_180170EA0                                             ; +0x839, 0x1801284b9\nvaddsd  xmm3, xmm3, qword ptr [rcx+rax*8]                              ; +0x840, 0x1801284c0\nvsubsd  xmm3, xmm3, xmm1                                               ; +0x845, 0x1801284c5\nvmulsd  xmm0, xmm0, xmm3                                               ; +0x849, 0x1801284c9\nvucomisd xmm0, cs:qword_180170DE4                                      ; +0x84d, 0x1801284cd\nja      Lpowf_fma3_z_is_inf                                            ; +0x855, 0x1801284d5\nvucomisd xmm0, cs:qword_180170DEC                                      ; +0x85b, 0x1801284db\njbe     Lpowf_fma3_z_is_zero                                           ; +0x863, 0x1801284e3\nvmulpd  xmm3, xmm0, cs:xmmword_180170E60                               ; +0x869, 0x1801284e9\nvcvtpd2dq xmm4, xmm3                                                   ; +0x871, 0x1801284f1\nvcvtdq2pd xmm2, xmm4                                                   ; +0x875, 0x1801284f5\nvmovd   ecx, xmm4                                                      ; +0x879, 0x1801284f9\nvfnmadd231sd xmm0, xmm2, cs:qword_180170DF4                            ; +0x87d, 0x1801284fd\nvmovapd xmm1, xmm0                                                     ; +0x886, 0x180128506\nvmovsd  xmm3, cs:qword_180170DFC                                       ; +0x88a, 0x18012850a\nvfmadd213sd xmm3, xmm0, qword ptr cs:xmmword_180170E70                 ; +0x892, 0x180128512\nvfmadd213sd xmm3, xmm0, cs:qword_180170E0C                             ; +0x89b, 0x18012851b\nvmulsd  xmm0, xmm0, xmm3                                               ; +0x8a4, 0x180128524\nmov     rax, 3Fh ; '?'                                                 ; +0x8a8, 0x180128528\nand     eax, ecx                                                       ; +0x8af, 0x18012852f\nlea     rcx, dbl_180173A60                                             ; +0x8b1, 0x180128531\nvmovsd  xmm3, qword ptr [rcx+rax*8]                                    ; +0x8b8, 0x180128538\nvfmadd213sd xmm0, xmm3, xmm3                                           ; +0x8bd, 0x18012853d\nnop     word ptr [rax+rax+00000000h]                                   ; +0x8c2, 0x180128542\nvpsrad  xmm4, xmm4, 6                                                  ; +0x8d0, 0x180128550\nvpsllq  xmm4, xmm4, 34h ; '4'                                          ; +0x8d5, 0x180128555\nvpaddq  xmm4, xmm4, xmm0                                               ; +0x8da, 0x18012855a\nvcvtsd2ss xmm0, xmm0, xmm4                                             ; +0x8de, 0x18012855e\nvorps   xmm0, xmm0, xmm5                                               ; +0x8e2, 0x180128562\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0x8e6, 0x180128566\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0x8ec, 0x18012856c\nadd     rsp, 68h                                                       ; +0x8f2, 0x180128572\nretn                                                                   ; +0x8f6, 0x180128576\nalign 20h                                                              ; +0x8f7, 0x180128577\ncmp     r9d, 0                                                         ; +0x900, 0x180128580\njg      short Lpowf_fma3_x_near_one                                    ; +0x904, 0x180128584\ncmp     ecx, 0                                                         ; +0x906, 0x180128586\njz      Lpowf_fma3_x_is_zero                                           ; +0x909, 0x180128589\nand     eax, 7F800000h                                                 ; +0x90f, 0x18012858f\ncmp     eax, 4B000000h                                                 ; +0x914, 0x180128594\njg      short Lpowf_fma3_x_near_one                                    ; +0x919, 0x180128599\nvstmxcsr [rsp+68h+var_28]                                              ; +0x91b, 0x18012859b\nmov     edx, [rsp+68h+var_28]                                          ; +0x921, 0x1801285a1\nor      edx, 1F80h                                                     ; +0x925, 0x1801285a5\nmov     [rsp+68h+var_18], edx                                          ; +0x92b, 0x1801285ab\nvldmxcsr [rsp+68h+var_18]                                              ; +0x92f, 0x1801285af\nvcvtss2si edx, xmm1                                                    ; +0x935, 0x1801285b5\nvcvtsi2ss xmm2, xmm2, edx                                              ; +0x939, 0x1801285b9\nvldmxcsr [rsp+68h+var_28]                                              ; +0x93d, 0x1801285bd\nvucomiss xmm2, xmm1                                                    ; +0x943, 0x1801285c3\njnz     Lpowf_fma3_return_qnan                                         ; +0x947, 0x1801285c7\nrcr     edx, 1                                                         ; +0x94d, 0x1801285cd\njnb     short Lpowf_fma3_x_near_one                                    ; +0x94f, 0x1801285cf\nvmovss  xmm5, cs:dword_180170E1C                                       ; +0x951, 0x1801285d1\nvpshufd xmm3, xmm0, 0EEh                                               ; +0x959, 0x1801285d9\nvsubsd  xmm3, xmm3, cs:qword_180170E0C                                 ; +0x95e, 0x1801285de\nvmovq   rdx, xmm3                                                      ; +0x966, 0x1801285e6\nbtr     rdx, 3Fh ; '?'                                                 ; +0x96b, 0x1801285eb\ncmp     rdx, cs:qword_180170E04                                        ; +0x970, 0x1801285f0\njnb     Lpowf_fma3_compute_logx                                        ; +0x977, 0x1801285f7\nvpshufd xmm5, xmm5, 44h ; 'D'                                          ; +0x97d, 0x1801285fd\nvmovapd xmm1, xmm3                                                     ; +0x982, 0x180128602\nvmovsd  xmm5, xmm5, xmm3                                               ; +0x986, 0x180128606\nvaddsd  xmm1, xmm1, cs:qword_180170E14                                 ; +0x98a, 0x18012860a\nvdivsd  xmm5, xmm5, xmm1                                               ; +0x992, 0x180128612\nvmovapd xmm2, xmm5                                                     ; +0x996, 0x180128616\nvmulsd  xmm5, xmm5, xmm3                                               ; +0x99a, 0x18012861a\nvaddsd  xmm2, xmm2, xmm2                                               ; +0x99e, 0x18012861e\nvmovapd xmm1, xmm2                                                     ; +0x9a2, 0x180128622\nvmulsd  xmm1, xmm1, xmm2                                               ; +0x9a6, 0x180128626\nvpshufd xmm4, xmm1, 44h ; 'D'                                          ; +0x9aa, 0x18012862a\nvmulpd  xmm4, xmm4, cs:xmmword_180170E30                               ; +0x9af, 0x18012862f\nvmulsd  xmm2, xmm2, xmm1                                               ; +0x9b7, 0x180128637\nvaddpd  xmm4, xmm4, cs:xmmword_180170E40                               ; +0x9bb, 0x18012863b\nvmulsd  xmm1, xmm1, xmm1                                               ; +0x9c3, 0x180128643\nvmulsd  xmm1, xmm1, xmm2                                               ; +0x9c7, 0x180128647\nvunpcklpd xmm2, xmm2, xmm1                                             ; +0x9cb, 0x18012864b\nvmulpd  xmm2, xmm2, xmm4                                               ; +0x9cf, 0x18012864f\nvpshufd xmm1, xmm2, 0EEh                                               ; +0x9d3, 0x180128653\nvaddsd  xmm2, xmm1, xmm2                                               ; +0x9d8, 0x180128658\nvsubsd  xmm2, xmm2, xmm5                                               ; +0x9dc, 0x18012865c\nvpshufd xmm5, xmm5, 0EEh                                               ; +0x9e0, 0x180128660\nvaddsd  xmm3, xmm3, xmm2                                               ; +0x9e5, 0x180128665\njmp     L__return_from_near_one                                        ; +0x9e9, 0x180128669\nalign 10h                                                              ; +0x9ee, 0x18012866e\nmov     r8d, eax                                                       ; +0x9f0, 0x180128670\nvmovd   edx, xmm1                                                      ; +0x9f3, 0x180128673\nmov     eax, 0                                                         ; +0x9f7, 0x180128677\nmov     r10d, 0                                                        ; +0x9fc, 0x18012867c\nmov     ecx, 7F800000h                                                 ; +0xa02, 0x180128682\ncmp     edx, 0                                                         ; +0xa07, 0x180128687\ncmovl   edx, ecx                                                       ; +0xa0a, 0x18012868a\ncmovl   r10d, ecx                                                      ; +0xa0d, 0x18012868d\ncmovg   edx, eax                                                       ; +0xa11, 0x180128691\nmov     ecx, 80000000h                                                 ; +0xa14, 0x180128694\nand     r8d, 7F800000h                                                 ; +0xa19, 0x180128699\ncmp     r8d, 4B000000h                                                 ; +0xa20, 0x1801286a0\ncmovg   ecx, eax                                                       ; +0xa27, 0x1801286a7\njg      short Lpowf_fma3_or_sign_and_retvalue_and_ret1                 ; +0xa2a, 0x1801286aa\nvstmxcsr [rsp+68h+var_28]                                              ; +0xa2c, 0x1801286ac\nmov     r8d, [rsp+68h+var_28]                                          ; +0xa32, 0x1801286b2\nor      r8d, 1F80h                                                     ; +0xa37, 0x1801286b7\nmov     [rsp+68h+var_18], r8d                                          ; +0xa3e, 0x1801286be\nvldmxcsr [rsp+68h+var_18]                                              ; +0xa43, 0x1801286c3\nvcvtss2si r8d, xmm1                                                    ; +0xa49, 0x1801286c9\nvcvtsi2ss xmm2, xmm2, r8d                                              ; +0xa4d, 0x1801286cd\nvldmxcsr [rsp+68h+var_28]                                              ; +0xa52, 0x1801286d2\nvucomiss xmm2, xmm1                                                    ; +0xa58, 0x1801286d8\ncmovnz  ecx, eax                                                       ; +0xa5c, 0x1801286dc\njnz     short Lpowf_fma3_or_sign_and_retvalue_and_ret1                 ; +0xa5f, 0x1801286df\nrcr     r8d, 1                                                         ; +0xa61, 0x1801286e1\ncmovnb  ecx, eax                                                       ; +0xa64, 0x1801286e4\njnb     short Lpowf_fma3_or_sign_and_retvalue_and_ret1                 ; +0xa67, 0x1801286e7\nmov     ecx, r9d                                                       ; +0xa69, 0x1801286e9\nand     ecx, 80000000h                                                 ; +0xa6c, 0x1801286ec\nor      ecx, edx                                                       ; +0xa72, 0x1801286f2\nvmovd   xmm0, ecx                                                      ; +0xa74, 0x1801286f4\ncmp     r10d, 0                                                        ; +0xa78, 0x1801286f8\njz      L__return                                                      ; +0xa7c, 0x1801286fc\nmov     r9d, cs:dword_180170DB4                                        ; +0xa82, 0x180128702\nvmovdqa xmm2, xmm0                                                     ; +0xa89, 0x180128709\ncall    _powf_special                                                  ; +0xa8d, 0x18012870d\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xa92, 0x180128712\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xa98, 0x180128718\nadd     rsp, 68h                                                       ; +0xa9e, 0x18012871e\nretn                                                                   ; +0xaa2, 0x180128722\nalign 10h                                                              ; +0xaa3, 0x180128723\ncmp     eax, 0                                                         ; +0xab0, 0x180128730\njz      Lpowf_fma3_return_pos_one                                      ; +0xab3, 0x180128733\nvmovd   ecx, xmm0                                                      ; +0xab9, 0x180128739\nvmovd   edx, xmm1                                                      ; +0xabd, 0x18012873d\ncmp     ecx, 7F800000h                                                 ; +0xac1, 0x180128741\njz      short Lpowf_fma3_x_is_pos_inf                                  ; +0xac7, 0x180128747\ncmp     ecx, 0FF800000h                                                ; +0xac9, 0x180128749\njz      short Lpowf_fma3_x_is_neg_inf                                  ; +0xacf, 0x18012874f\njmp     Lpowf_fma3_return_x_nan                                        ; +0xad1, 0x180128751\nalign 20h                                                              ; +0xad6, 0x180128756\ncmp     edx, 0                                                         ; +0xae0, 0x180128760\njl      Lpowf_fma3_return_pos_zero                                     ; +0xae3, 0x180128763\njmp     Lpowf_fma3_return_pos_inf                                      ; +0xae9, 0x180128769\nalign 10h                                                              ; +0xaee, 0x18012876e\nmov     r8d, eax                                                       ; +0xaf0, 0x180128770\nmov     eax, 0                                                         ; +0xaf3, 0x180128773\nmov     ecx, 7F800000h                                                 ; +0xaf8, 0x180128778\ncmp     edx, 0                                                         ; +0xafd, 0x18012877d\ncmovl   edx, eax                                                       ; +0xb00, 0x180128780\ncmovg   edx, ecx                                                       ; +0xb03, 0x180128783\nmov     ecx, 80000000h                                                 ; +0xb06, 0x180128786\nand     r8d, 7F800000h                                                 ; +0xb0b, 0x18012878b\ncmp     r8d, 4B000000h                                                 ; +0xb12, 0x180128792\ncmovg   ecx, eax                                                       ; +0xb19, 0x180128799\njg      short Lpowf_fma3_or_sign_and_retvalue_and_ret                  ; +0xb1c, 0x18012879c\nvstmxcsr [rsp+68h+var_28]                                              ; +0xb1e, 0x18012879e\nmov     r8d, [rsp+68h+var_28]                                          ; +0xb24, 0x1801287a4\nor      r8d, 1F80h                                                     ; +0xb29, 0x1801287a9\nmov     [rsp+68h+var_18], r8d                                          ; +0xb30, 0x1801287b0\nvldmxcsr [rsp+68h+var_18]                                              ; +0xb35, 0x1801287b5\nvcvtss2si r8d, xmm1                                                    ; +0xb3b, 0x1801287bb\nvcvtsi2ss xmm2, xmm2, r8d                                              ; +0xb3f, 0x1801287bf\nvldmxcsr [rsp+68h+var_28]                                              ; +0xb44, 0x1801287c4\nvucomiss xmm2, xmm1                                                    ; +0xb4a, 0x1801287ca\ncmovnz  ecx, eax                                                       ; +0xb4e, 0x1801287ce\njnz     short Lpowf_fma3_or_sign_and_retvalue_and_ret                  ; +0xb51, 0x1801287d1\nrcr     r8d, 1                                                         ; +0xb53, 0x1801287d3\ncmovnb  ecx, eax                                                       ; +0xb56, 0x1801287d6\nor      ecx, edx                                                       ; +0xb59, 0x1801287d9\nvmovd   xmm0, ecx                                                      ; +0xb5b, 0x1801287db\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xb5f, 0x1801287df\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xb65, 0x1801287e5\nadd     rsp, 68h                                                       ; +0xb6b, 0x1801287eb\nretn                                                                   ; +0xb6f, 0x1801287ef\nja      short Lpowf_fma3_y_is_nan                                      ; +0xb70, 0x1801287f0\ncmp     ecx, 7F800000h                                                 ; +0xb72, 0x1801287f2\nja      Lpowf_fma3_return_x_nan                                        ; +0xb78, 0x1801287f8\ncmp     ecx, 3F800000h                                                 ; +0xb7e, 0x1801287fe\njz      Lpowf_fma3_return_abs_x_is_one_y_is_pninf                      ; +0xb84, 0x180128804\nvmovd   eax, xmm1                                                      ; +0xb8a, 0x18012880a\nbt      eax, 1Fh                                                       ; +0xb8e, 0x18012880e\njb      short Lpowf_fma3_y_is_neg_inf                                  ; +0xb92, 0x180128812\ncmp     ecx, 3F800000h                                                 ; +0xb94, 0x180128814\njb      Lpowf_fma3_return_pos_zero                                     ; +0xb9a, 0x18012881a\njmp     Lpowf_fma3_return_pos_inf                                      ; +0xba0, 0x180128820\nalign 10h                                                              ; +0xba5, 0x180128825\nmov     eax, 0                                                         ; +0xbb0, 0x180128830\nmov     r8d, 7F800000h                                                 ; +0xbb5, 0x180128835\ncmp     ecx, 3F800000h                                                 ; +0xbbb, 0x18012883b\ncmovb   eax, r8d                                                       ; +0xbc1, 0x180128841\nvmovd   xmm0, eax                                                      ; +0xbc5, 0x180128845\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xbc9, 0x180128849\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xbcf, 0x18012884f\nadd     rsp, 68h                                                       ; +0xbd5, 0x180128855\nretn                                                                   ; +0xbd9, 0x180128859\nalign 20h                                                              ; +0xbda, 0x18012885a\ncmp     ecx, 7F800000h                                                 ; +0xbe0, 0x180128860\nja      Lpowf_fma3_x_is_nan_y_is_nan                                   ; +0xbe6, 0x180128866\ncmp     r9d, 3F800000h                                                 ; +0xbec, 0x18012886c\njz      Lpowf_fma3_x_is_one_y_is_nan                                   ; +0xbf3, 0x180128873\nvmovdqa xmm0, xmm1                                                     ; +0xbf9, 0x180128879\njmp     Lpowf_fma3_return_y_nan                                        ; +0xbfd, 0x18012887d\nalign 10h                                                              ; +0xc02, 0x180128882\ncmp     eax, 0                                                         ; +0xc10, 0x180128890\njz      short Lpowf_fma3_y_is_zero_check_x_nan                         ; +0xc13, 0x180128893\nvmovd   edx, xmm1                                                      ; +0xc15, 0x180128895\ncmp     edx, 3F800000h                                                 ; +0xc19, 0x180128899\njnz     Lpowf_fma3_y_is_not_zero_or_pos_one                            ; +0xc1f, 0x18012889f\ncmp     ecx, 7F800000h                                                 ; +0xc25, 0x1801288a5\nja      short Lpowf_fma3_x_is_NaN_y_is_one_return_NaN                  ; +0xc2b, 0x1801288ab\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xc2d, 0x1801288ad\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xc33, 0x1801288b3\nadd     rsp, 68h                                                       ; +0xc39, 0x1801288b9\nretn                                                                   ; +0xc3d, 0x1801288bd\nvmovd   edx, xmm0                                                      ; +0xc3e, 0x1801288be\nor      edx, 400000h                                                   ; +0xc42, 0x1801288c2\nvmovd   xmm2, edx                                                      ; +0xc48, 0x1801288c8\nmov     r9d, cs:dword_180170DB8                                        ; +0xc4c, 0x1801288cc\ncall    _powf_special                                                  ; +0xc53, 0x1801288d3\nmovdqa  xmm7, [rsp+68h+var_38]                                         ; +0xc58, 0x1801288d8\nmovdqa  xmm6, [rsp+68h+var_48]                                         ; +0xc5e, 0x1801288de\nadd     rsp, 68h                                                       ; +0xc64, 0x1801288e4\nretn                                                                   ; +0xc68, 0x1801288e8\nalign 10h                                                              ; +0xc69, 0x1801288e9\ncmp     ecx, 7F800000h                                                 ; +0xc70, 0x1801288f0\njbe     short Lpowf_fma3_return_pos_one                                ; +0xc76, 0x1801288f6\ncmp     ecx, 7FC00000h                                                 ; +0xc78, 0x1801288f8\njnb     short Lpowf_fma3_return_pos_one                                ; +0xc7e, 0x1801288fe\nmov     edx, ecx                                                       ; +0xc80, 0x180128900\nor      edx, 400000h                                                   ; +0xc82, 0x180128902\nvmovd   xmm2, edx                                                      ; +0xc88, 0x180128908\nmov     r9d, cs:dword_180170DB8                                        ; +0xc8c, 0x18012890c\ncall    _powf_special                                                  ; +0xc93, 0x180128913\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xc98, 0x180128918\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xc9e, 0x18012891e\nadd     rsp, 68h                                                       ; +0xca4, 0x180128924\nretn                                                                   ; +0xca8, 0x180128928\nalign 10h                                                              ; +0xca9, 0x180128929\ncmp     eax, 7FC00000h                                                 ; +0xcb0, 0x180128930\njnb     short Lpowf_fma3_return_pos_one                                ; +0xcb5, 0x180128935\nmov     edx, 3F800000h                                                 ; +0xcb7, 0x180128937\nvmovd   xmm2, edx                                                      ; +0xcbc, 0x18012893c\nmov     r9d, cs:dword_180170DBC                                        ; +0xcc0, 0x180128940\ncall    _powf_special                                                  ; +0xcc7, 0x180128947\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xccc, 0x18012894c\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xcd2, 0x180128952\nadd     rsp, 68h                                                       ; +0xcd8, 0x180128958\nretn                                                                   ; +0xcdc, 0x18012895c\nalign 20h                                                              ; +0xcdd, 0x18012895d\nmov     edx, 3F800000h                                                 ; +0xce0, 0x180128960\nvmovd   xmm0, edx                                                      ; +0xce5, 0x180128965\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xce9, 0x180128969\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xcef, 0x18012896f\nadd     rsp, 68h                                                       ; +0xcf5, 0x180128975\nretn                                                                   ; +0xcf9, 0x180128979\nalign 20h                                                              ; +0xcfa, 0x18012897a\nmov     edx, 3F800000h                                                 ; +0xd00, 0x180128980\nvmovd   xmm0, edx                                                      ; +0xd05, 0x180128985\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xd09, 0x180128989\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xd0f, 0x18012898f\nadd     rsp, 68h                                                       ; +0xd15, 0x180128995\nretn                                                                   ; +0xd19, 0x180128999\nalign 20h                                                              ; +0xd1a, 0x18012899a\nvpxor   xmm0, xmm0, xmm0                                               ; +0xd20, 0x1801289a0\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xd24, 0x1801289a4\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xd2a, 0x1801289aa\nadd     rsp, 68h                                                       ; +0xd30, 0x1801289b0\nretn                                                                   ; +0xd34, 0x1801289b4\nalign 20h                                                              ; +0xd35, 0x1801289b5\nmov     edx, 7F800000h                                                 ; +0xd40, 0x1801289c0\nvmovd   xmm0, edx                                                      ; +0xd45, 0x1801289c5\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xd49, 0x1801289c9\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xd4f, 0x1801289cf\nadd     rsp, 68h                                                       ; +0xd55, 0x1801289d5\nretn                                                                   ; +0xd59, 0x1801289d9\nalign 20h                                                              ; +0xd5a, 0x1801289da\nvaddss  xmm0, xmm0, xmm0                                               ; +0xd60, 0x1801289e0\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xd64, 0x1801289e4\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xd6a, 0x1801289ea\nadd     rsp, 68h                                                       ; +0xd70, 0x1801289f0\nretn                                                                   ; +0xd74, 0x1801289f4\nalign 20h                                                              ; +0xd75, 0x1801289f5\nvmovd   ecx, xmm0                                                      ; +0xd80, 0x180128a00\nor      ecx, 400000h                                                   ; +0xd84, 0x180128a04\nvmovd   xmm2, ecx                                                      ; +0xd8a, 0x180128a0a\nmov     r9d, cs:dword_180170DB8                                        ; +0xd8e, 0x180128a0e\ncall    _powf_special                                                  ; +0xd95, 0x180128a15\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xd9a, 0x180128a1a\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xda0, 0x180128a20\nadd     rsp, 68h                                                       ; +0xda6, 0x180128a26\nretn                                                                   ; +0xdaa, 0x180128a2a\nalign 10h                                                              ; +0xdab, 0x180128a2b\nvmovd   eax, xmm1                                                      ; +0xdb0, 0x180128a30\nor      eax, 400000h                                                   ; +0xdb4, 0x180128a34\nvmovd   xmm2, eax                                                      ; +0xdb9, 0x180128a39\nmov     r9d, cs:dword_180170DBC                                        ; +0xdbd, 0x180128a3d\ncall    _powf_special                                                  ; +0xdc4, 0x180128a44\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xdc9, 0x180128a49\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xdcf, 0x180128a4f\nadd     rsp, 68h                                                       ; +0xdd5, 0x180128a55\nretn                                                                   ; +0xdd9, 0x180128a59\nalign 20h                                                              ; +0xdda, 0x180128a5a\ncmp     r9d, 0FFC00000h                                                ; +0xde0, 0x180128a60\njz      short Lpowf_fma3_x_is_nan_y_is_nan_return_y                    ; +0xde7, 0x180128a67\nvmovd   ecx, xmm0                                                      ; +0xde9, 0x180128a69\nor      ecx, 400000h                                                   ; +0xded, 0x180128a6d\nvmovd   xmm2, ecx                                                      ; +0xdf3, 0x180128a73\nmov     r9d, cs:dword_180170DC0                                        ; +0xdf7, 0x180128a77\ncall    _powf_special                                                  ; +0xdfe, 0x180128a7e\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xe03, 0x180128a83\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xe09, 0x180128a89\nadd     rsp, 68h                                                       ; +0xe0f, 0x180128a8f\nretn                                                                   ; +0xe13, 0x180128a93\nvmovd   eax, xmm1                                                      ; +0xe14, 0x180128a94\nor      eax, 400000h                                                   ; +0xe18, 0x180128a98\nvmovd   xmm2, eax                                                      ; +0xe1d, 0x180128a9d\nmov     r9d, cs:dword_180170DC0                                        ; +0xe21, 0x180128aa1\ncall    _powf_special                                                  ; +0xe28, 0x180128aa8\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xe2d, 0x180128aad\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xe33, 0x180128ab3\nadd     rsp, 68h                                                       ; +0xe39, 0x180128ab9\nretn                                                                   ; +0xe3d, 0x180128abd\nalign 20h                                                              ; +0xe3e, 0x180128abe\nvpxor   xmm2, xmm2, xmm2                                               ; +0xe40, 0x180128ac0\nvorps   xmm2, xmm2, xmm5                                               ; +0xe44, 0x180128ac4\nmov     r9d, cs:dword_180170DC8                                        ; +0xe48, 0x180128ac8\ncall    _powf_special                                                  ; +0xe4f, 0x180128acf\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xe54, 0x180128ad4\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xe5a, 0x180128ada\nadd     rsp, 68h                                                       ; +0xe60, 0x180128ae0\nretn                                                                   ; +0xe64, 0x180128ae4\nalign 10h                                                              ; +0xe65, 0x180128ae5\nmov     edx, 7F800000h                                                 ; +0xe70, 0x180128af0\nvmovd   xmm2, edx                                                      ; +0xe75, 0x180128af5\nvorps   xmm2, xmm2, xmm5                                               ; +0xe79, 0x180128af9\nmov     r9d, cs:dword_180170DD0                                        ; +0xe7d, 0x180128afd\ncall    _powf_special                                                  ; +0xe84, 0x180128b04\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xe89, 0x180128b09\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xe8f, 0x180128b0f\nadd     rsp, 68h                                                       ; +0xe95, 0x180128b15\nretn                                                                   ; +0xe99, 0x180128b19\nalign 20h                                                              ; +0xe9a, 0x180128b1a\nmov     edx, 0FFC00000h                                                ; +0xea0, 0x180128b20\nvmovd   xmm2, edx                                                      ; +0xea5, 0x180128b25\nmov     r9d, cs:dword_180170DC4                                        ; +0xea9, 0x180128b29\ncall    _powf_special                                                  ; +0xeb0, 0x180128b30\nvmovdqa xmm7, [rsp+68h+var_38]                                         ; +0xeb5, 0x180128b35\nvmovdqa xmm6, [rsp+68h+var_48]                                         ; +0xebb, 0x180128b3b\nadd     rsp, 68h                                                       ; +0xec1, 0x180128b41\nretn                                                                   ; +0xec5, 0x180128b45", "xrefs": ["sub_18001CFD0 @ 0x18001f628", "sub_18001CFD0 @ 0x18001f6e3", "sub_180021100 @ 0x18002170d", "sub_1800228C0 @ 0x180022b27", "sub_1800228C0 @ 0x180022ee2", "sub_1800252C0 @ 0x180025741", "sub_1800258D0 @ 0x180025caa", "sub_18002D350 @ 0x18002d5c0", "sub_180032180 @ 0x180032280", "sub_180032180 @ 0x18003230b", "sub_180032180 @ 0x18003275b", "sub_180032180 @ 0x18003278a", "sub_180032180 @ 0x180032794", "sub_180040AD0 @ 0x180040c16", "sub_1800500F0 @ 0x180050119", "sub_1800501A0 @ 0x180050362", "sub_1800564A0 @ 0x180056570", "sub_1800564A0 @ 0x1800566e6", "sub_1800564A0 @ 0x180056780", "sub_1800564A0 @ 0x180056cb9", "sub_1800564A0 @ 0x180056ec9", "sub_180066D40 @ 0x180066e33", "sub_180066D40 @ 0x180066e69", "sub_180067510 @ 0x1800675a4", "sub_180067510 @ 0x1800675e7", "sub_180068510 @ 0x180068553", "sub_180068700 @ 0x180068739", "sub_180070690 @ 0x1800706df", "sub_180070690 @ 0x180070717", "sub_1800740F0 @ 0x180074130", "sub_180076390 @ 0x180076453", "sub_1800767F0 @ 0x1800768b1", "sub_1800896E0 @ 0x1800897f1", "sub_1800896E0 @ 0x180089829", "sub_1800899C0 @ 0x180089a2b", "sub_180089AE0 @ 0x180089b4d", "sub_18008AB50 @ 0x18008ac34", "sub_18008AD00 @ 0x18008ad5d", "sub_18008AD00 @ 0x18008ada0", "sub_18008AD00 @ 0x18008addc", "sub_18008B040 @ 0x18008b109", "sub_18008B040 @ 0x18008b14a", "sub_18008B040 @ 0x18008b186", "sub_18008CEE0 @ 0x18008cf71", "sub_18008CEE0 @ 0x18008cfea", "sub_18008CEE0 @ 0x18008d05c", "sub_1800DBE80 @ 0x1800dbf26", "sub_1800EB320 @ 0x1800eb637", "sub_1800ECDE0 @ 0x1800ece39", "sub_1800ED160 @ 0x1800ed201", "sub_1800ED160 @ 0x1800ed308", "sub_1800ED3F0 @ 0x1800ed46b", "sub_1800ED6C0 @ 0x1800ed707", "sub_1800F0120 @ 0x1800f0559", "sub_1800F05D0 @ 0x1800f0a37", "sub_1800F0AC0 @ 0x1800f1009", "sub_1800F10D0 @ 0x1800f1626", "sub_1800F1710 @ 0x1800f1807", "sub_1800F1890 @ 0x1800f19a3", "sub_1800F1A40 @ 0x1800f1b85", "sub_1800F1C50 @ 0x1800f1dbc", "sub_1800F5A00 @ 0x1800f5b58", "sub_1800F5A00 @ 0x1800f5b76", "sub_1800F5FF0 @ 0x1800f603b", "sub_1800F5FF0 @ 0x1800f6079", "sub_180107D30 @ 0x180107dba", "sub_180107D30 @ 0x180107dfe", "sub_180107D30 @ 0x180107e44", "sub_180107D30 @ 0x180107e8a", "sub_180107D30 @ 0x180107ed0", "sub_180107D30 @ 0x180107f16", "sub_180107D30 @ 0x180107f5c", "sub_180107D30 @ 0x180107fa2", "sub_180108CC0 @ 0x180108cf7", "sub_180109080 @ 0x1801090d8", "sub_180109370 @ 0x180109435", "sub_180109990 @ 0x180109bc6", "sub_18010DF80 @ 0x18010e0e8", "sub_18010DF80 @ 0x18010e19c", "sub_18010DF80 @ 0x18010e253", "<???> @ 0x180202a14"], "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"}