{"type": "func", "start": 6443767312, "end": 6443768763, "name": "log10", "pseudocode": "// \n// log10 from 0x180141610 to 0x180141bbb (1451 bytes)\n// \n// 2 xrefs:\n// > __acrt_fltout @ 0x18013e397\n// > <???> @ 0x180203cd4\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!\ndouble __cdecl log10(double X)\n{\n  int v1; // edx\n  int v2; // ecx\n  double v3; // rax\n  __m128i v4; // xmm3\n  double v5; // xmm6_8\n  __m128i v6; // xmm5\n  __m128i v7; // xmm2\n  unsigned __int64 v8; // rax\n  __m128i v9; // xmm1\n  unsigned __int64 v10; // rax\n  double v11; // xmm2_8\n  __m128i v12; // xmm0\n  double v13; // xmm1_8\n  double v14; // xmm6_8\n  double v15; // xmm1_8\n  double v16; // xmm4_8\n  double v17; // xmm3_8\n  __m128i v18; // xmm2\n\n  if ( !dword_1801F4D54 )\n  {\n    v3 = X;\n    v4 = _mm_sub_epi64(_mm_srli_epi64(*(__m128i *)&X, 0x34u), (__m128i)xmmword_18017B0A0);\n    if ( COERCE_DOUBLE(*(_QWORD *)&X & 0x7FF0000000000000LL) == INFINITY )\n    {\n      if ( X == INFINITY )\n        return X;\n      if ( X != -INFINITY )\n      {\n        *(_QWORD *)&X |= 0x8000000000000uLL;\n        return X;\n      }\n    }\n    else\n    {\n      v5 = _mm_cvtepi32_pd(v4).m128d_f64[0];\n      v6 = 0;\n      if ( X > 0.0 )\n      {\n        v7 = _mm_and_si128(*(__m128i *)&X, (__m128i)xmmword_18017B0C0);\n        if ( v5 == -1023.0 )\n        {\n          v18 = _mm_or_si128(v7, (__m128i)xmmword_18017B150);\n          *(double *)v18.m128i_i64 = *(double *)v18.m128i_i64 - 1.0;\n          v6.m128i_i64[0] = v18.m128i_i64[0];\n          v7 = _mm_and_si128(v18, (__m128i)xmmword_18017B0C0);\n          v3 = *(double *)v7.m128i_i64;\n          v5 = _mm_cvtepi32_pd(_mm_sub_epi32(_mm_srli_epi64(v6, 0x34u), (__m128i)xmmword_18017B1F0)).m128d_f64[0];\n        }\n        v8 = 2 * (*(_QWORD *)&v3 & 0x80000000000LL) + (*(_QWORD *)&v3 & 0xFF00000000000LL);\n        v9 = (__m128i)v8;\n        if ( fabs(X - 1.0) < 0.0625 )\n        {\n          *(double *)v12.m128i_i64 = X - 1.0;\n          v13 = *(double *)v12.m128i_i64 / (*(double *)v12.m128i_i64 + 2.0);\n          v14 = *(double *)v12.m128i_i64 * v13;\n          v15 = v13 + v13;\n          v16 = (0.01250000000377175 * (v15 * v15) + 0.08333333333333179) * (v15 * v15 * v15)\n              + (0.0004348877777076146 * (v15 * v15) + 0.002232139987919448)\n              * (v15\n               * v15\n               * v15\n               * (v15\n                * v15\n                * v15)\n               * v15)\n              - v14;\n          v17 = *(double *)_mm_and_si128(v12, (__m128i)xmmword_18017B290).m128i_i64;\n          return v17 * 0.0000007349550096401511\n               + (v16 + *(double *)v12.m128i_i64 - v17) * 0.0000007349550096401511\n               + (v16 + *(double *)v12.m128i_i64 - v17) * 0.4342937469482422\n               + v17 * 0.4342937469482422;\n        }\n        else\n        {\n          v10 = v8 >> 44;\n          v11 = (*(double *)_mm_or_si128(v9, (__m128i)xmmword_18017B160).m128i_i64\n               - *(double *)_mm_or_si128(v7, (__m128i)xmmword_18017B160).m128i_i64)\n              * dbl_180173C60[v10];\n          return dbl_18017B2B0[v10]\n               + 0.3010299950838089 * v5\n               + dbl_18017BAC0[v10]\n               + 5.801722962879576e-10 * v5\n               - ((0.3333333333333333 * v11 + 0.5) * (v11 * v11)\n                + v11\n                + ((0.1666666666666667 * v11 + 0.2) * v11 + 0.25) * (v11 * v11 * (v11 * v11)))\n               * 0.4342944819032518;\n        }\n      }\n      if ( X == 0.0 )\n      {\n        log10_special(v2, v1, 1);\n        return X;\n      }\n    }\n    log10_special(v2, v1, 2);\n    return X;\n  }\n  __asm\n  {\n    vpsrlq  xmm3, xmm0, 34h ; '4'\n    vmovq   rax, xmm0\n    vpsubq  xmm3, xmm3, cs:xmmword_18017B0A0\n    vcvtdq2pd xmm6, xmm3\n    vpand   xmm5, xmm0, cs:xmmword_18017B070\n    vcomisd xmm5, qword ptr cs:xmmword_18017B070\n  }\n  if ( _RAX != 0x7FF0000000000000LL )\n  {\n    if ( _RAX == 0xFFF0000000000000uLL )\n    {\n      __asm { vmovsd  xmm1, cs:qword_18017B080 }\n      log10_special(v2, v1, 2);\n      __asm { vmovdqa xmm6, [rsp+58h+var_38] }\n      return X;\n    }\n    log10_special(v2, v1, 3);\n  }\n  __asm { vmovdqa xmm6, [rsp+58h+var_38] }\n  return X;\n}", "assembly": "; \n; log10 from 0x180141610 to 0x180141bbb (1451 bytes)\n; \n; 2 xrefs:\n; > __acrt_fltout @ 0x18013e397\n; > <???> @ 0x180203cd4\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, 58h                                                       ; +0x0, 0x180141610\nmovdqa  [rsp+58h+var_38], xmm6                                         ; +0x4, 0x180141614\ncmp     cs:dword_1801F4D54, 0                                          ; +0xa, 0x18014161a\njnz     Llog10_fma3                                                    ; +0x11, 0x180141621\nmovapd  xmm3, xmm0                                                     ; +0x17, 0x180141627\nmovapd  xmm4, xmm0                                                     ; +0x1b, 0x18014162b\npsrlq   xmm3, 34h ; '4'                                                ; +0x1f, 0x18014162f\nmovq    rax, xmm0                                                      ; +0x24, 0x180141634\npsubq   xmm3, cs:xmmword_18017B0A0                                     ; +0x29, 0x180141639\nmovapd  xmm5, xmm0                                                     ; +0x31, 0x180141641\nandpd   xmm5, cs:xmmword_18017B070                                     ; +0x35, 0x180141645\ncomisd  xmm5, qword ptr cs:xmmword_18017B070                           ; +0x3d, 0x18014164d\njz      Llog10_sse2_x_is_inf_or_nan                                    ; +0x45, 0x180141655\nmovapd  xmm2, xmm0                                                     ; +0x4b, 0x18014165b\ncvtdq2pd xmm6, xmm3                                                    ; +0x4f, 0x18014165f\nxorpd   xmm5, xmm5                                                     ; +0x53, 0x180141663\ncomisd  xmm0, xmm5                                                     ; +0x57, 0x180141667\njbe     Llog10_sse2_x_is_zero_or_neg                                   ; +0x5b, 0x18014166b\npand    xmm2, cs:xmmword_18017B0C0                                     ; +0x61, 0x180141671\nsubsd   xmm4, qword ptr cs:xmmword_18017B150                           ; +0x69, 0x180141679\ncomisd  xmm6, cs:qword_18017B1E0                                       ; +0x71, 0x180141681\njz      Llog10_sse2_denormal_adjust                                    ; +0x79, 0x180141689\nandpd   xmm4, cs:xmmword_18017B240                                     ; +0x7f, 0x18014168f\nmov     r9, rax                                                        ; +0x87, 0x180141697\nand     rax, qword ptr cs:xmmword_18017B0D0                            ; +0x8a, 0x18014169a\nand     r9, qword ptr cs:xmmword_18017B0E0                             ; +0x91, 0x1801416a1\nshl     r9, 1                                                          ; +0x98, 0x1801416a8\nadd     rax, r9                                                        ; +0x9b, 0x1801416ab\nmovq    xmm1, rax                                                      ; +0x9e, 0x1801416ae\ncomisd  xmm4, cs:qword_18017B200                                       ; +0xa3, 0x1801416b3\njb      Llog10_sse2_near_one                                           ; +0xab, 0x1801416bb\nshr     rax, 2Ch                                                       ; +0xb1, 0x1801416c1\npor     xmm2, cs:xmmword_18017B160                                     ; +0xb5, 0x1801416c5\npor     xmm1, cs:xmmword_18017B160                                     ; +0xbd, 0x1801416cd\nlea     r9, dbl_180173C60                                              ; +0xc5, 0x1801416d5\nsubsd   xmm1, xmm2                                                     ; +0xcc, 0x1801416dc\nmulsd   xmm1, qword ptr [r9+rax*8]                                     ; +0xd0, 0x1801416e0\nmovapd  xmm2, xmm1                                                     ; +0xd6, 0x1801416e6\nmovapd  xmm0, xmm1                                                     ; +0xda, 0x1801416ea\nlea     r9, dbl_18017B2B0                                              ; +0xde, 0x1801416ee\nmovsd   xmm3, cs:qword_18017B1D0                                       ; +0xe5, 0x1801416f5\nmovsd   xmm1, cs:qword_18017B1A0                                       ; +0xed, 0x1801416fd\nmulsd   xmm3, xmm2                                                     ; +0xf5, 0x180141705\nmulsd   xmm1, xmm2                                                     ; +0xf9, 0x180141709\nmulsd   xmm0, xmm2                                                     ; +0xfd, 0x18014170d\nmovapd  xmm4, xmm0                                                     ; +0x101, 0x180141711\naddsd   xmm3, cs:qword_18017B1C0                                       ; +0x105, 0x180141715\naddsd   xmm1, cs:qword_18017B190                                       ; +0x10d, 0x18014171d\nmulsd   xmm4, xmm0                                                     ; +0x115, 0x180141725\nmulsd   xmm3, xmm2                                                     ; +0x119, 0x180141729\nmulsd   xmm1, xmm0                                                     ; +0x11d, 0x18014172d\naddsd   xmm3, cs:qword_18017B1B0                                       ; +0x121, 0x180141731\naddsd   xmm1, xmm2                                                     ; +0x129, 0x180141739\nmulsd   xmm3, xmm4                                                     ; +0x12d, 0x18014173d\naddsd   xmm1, xmm3                                                     ; +0x131, 0x180141741\nmovsd   xmm5, cs:qword_18017B130                                       ; +0x135, 0x180141745\nmulsd   xmm1, cs:qword_18017B0F0                                       ; +0x13d, 0x18014174d\nmulsd   xmm5, xmm6                                                     ; +0x145, 0x180141755\nsubsd   xmm5, xmm1                                                     ; +0x149, 0x180141759\nmovsd   xmm0, qword ptr [r9+rax*8]                                     ; +0x14d, 0x18014175d\nlea     rdx, dbl_18017BAC0                                             ; +0x153, 0x180141763\nmovsd   xmm2, qword ptr [rdx+rax*8]                                    ; +0x15a, 0x18014176a\nmovsd   xmm4, cs:qword_18017B120                                       ; +0x15f, 0x18014176f\nmulsd   xmm4, xmm6                                                     ; +0x167, 0x180141777\naddsd   xmm0, xmm4                                                     ; +0x16b, 0x18014177b\naddsd   xmm2, xmm5                                                     ; +0x16f, 0x18014177f\naddsd   xmm0, xmm2                                                     ; +0x173, 0x180141783\nmovdqa  xmm6, [rsp+58h+var_38]                                         ; +0x177, 0x180141787\nadd     rsp, 58h                                                       ; +0x17d, 0x18014178d\nretn                                                                   ; +0x181, 0x180141791\nalign 20h                                                              ; +0x182, 0x180141792\nmovsd   xmm2, cs:qword_18017B140                                       ; +0x190, 0x1801417a0\nsubsd   xmm0, qword ptr cs:xmmword_18017B150                           ; +0x198, 0x1801417a8\naddsd   xmm2, xmm0                                                     ; +0x1a0, 0x1801417b0\nmovapd  xmm1, xmm0                                                     ; +0x1a4, 0x1801417b4\ndivsd   xmm1, xmm2                                                     ; +0x1a8, 0x1801417b8\nmovsd   xmm4, cs:qword_18017B260                                       ; +0x1ac, 0x1801417bc\nmovsd   xmm5, cs:qword_18017B280                                       ; +0x1b4, 0x1801417c4\nmovapd  xmm6, xmm0                                                     ; +0x1bc, 0x1801417cc\nmulsd   xmm6, xmm1                                                     ; +0x1c0, 0x1801417d0\naddsd   xmm1, xmm1                                                     ; +0x1c4, 0x1801417d4\nmovapd  xmm2, xmm1                                                     ; +0x1c8, 0x1801417d8\nmulsd   xmm2, xmm1                                                     ; +0x1cc, 0x1801417dc\nmulsd   xmm4, xmm2                                                     ; +0x1d0, 0x1801417e0\nmulsd   xmm5, xmm2                                                     ; +0x1d4, 0x1801417e4\naddsd   xmm4, cs:qword_18017B250                                       ; +0x1d8, 0x1801417e8\naddsd   xmm5, cs:qword_18017B270                                       ; +0x1e0, 0x1801417f0\nmulsd   xmm2, xmm1                                                     ; +0x1e8, 0x1801417f8\nmulsd   xmm4, xmm2                                                     ; +0x1ec, 0x1801417fc\nmulsd   xmm2, xmm2                                                     ; +0x1f0, 0x180141800\nmulsd   xmm2, xmm1                                                     ; +0x1f4, 0x180141804\nmulsd   xmm5, xmm2                                                     ; +0x1f8, 0x180141808\nmovsd   xmm2, cs:qword_18017B110                                       ; +0x1fc, 0x18014180c\naddsd   xmm4, xmm5                                                     ; +0x204, 0x180141814\nsubsd   xmm4, xmm6                                                     ; +0x208, 0x180141818\nmovsd   xmm6, cs:qword_18017B100                                       ; +0x20c, 0x18014181c\nmovapd  xmm3, xmm0                                                     ; +0x214, 0x180141824\npand    xmm3, cs:xmmword_18017B290                                     ; +0x218, 0x180141828\nsubsd   xmm0, xmm3                                                     ; +0x220, 0x180141830\naddsd   xmm4, xmm0                                                     ; +0x224, 0x180141834\nmovapd  xmm0, xmm3                                                     ; +0x228, 0x180141838\nmovapd  xmm1, xmm4                                                     ; +0x22c, 0x18014183c\nmulsd   xmm4, xmm2                                                     ; +0x230, 0x180141840\nmulsd   xmm0, xmm2                                                     ; +0x234, 0x180141844\nmulsd   xmm1, xmm6                                                     ; +0x238, 0x180141848\nmulsd   xmm3, xmm6                                                     ; +0x23c, 0x18014184c\naddsd   xmm0, xmm4                                                     ; +0x240, 0x180141850\naddsd   xmm0, xmm1                                                     ; +0x244, 0x180141854\naddsd   xmm0, xmm3                                                     ; +0x248, 0x180141858\nmovdqa  xmm6, [rsp+58h+var_38]                                         ; +0x24c, 0x18014185c\nadd     rsp, 58h                                                       ; +0x252, 0x180141862\nretn                                                                   ; +0x256, 0x180141866\npor     xmm2, cs:xmmword_18017B150                                     ; +0x257, 0x180141867\nsubsd   xmm2, qword ptr cs:xmmword_18017B150                           ; +0x25f, 0x18014186f\nmovsd   xmm5, xmm2                                                     ; +0x267, 0x180141877\npand    xmm2, cs:xmmword_18017B0C0                                     ; +0x26b, 0x18014187b\nmovq    rax, xmm2                                                      ; +0x273, 0x180141883\npsrlq   xmm5, 34h ; '4'                                                ; +0x278, 0x180141888\npsubd   xmm5, cs:xmmword_18017B1F0                                     ; +0x27d, 0x18014188d\ncvtdq2pd xmm6, xmm5                                                    ; +0x285, 0x180141895\njmp     Llog10_sse2_continue_common                                    ; +0x289, 0x180141899\nalign 20h                                                              ; +0x28e, 0x18014189e\njnz     short Llog10_sse2_x_is_neg                                     ; +0x290, 0x1801418a0\nmovsd   xmm1, cs:qword_18017B060                                       ; +0x292, 0x1801418a2\nmov     r8d, cs:dword_18017B2A0                                        ; +0x29a, 0x1801418aa\ncall    _log10_special                                                 ; +0x2a1, 0x1801418b1\njmp     short Llog10_sse2_finish                                       ; +0x2a6, 0x1801418b6\nalign 20h                                                              ; +0x2a8, 0x1801418b8\nmovsd   xmm1, cs:qword_18017B080                                       ; +0x2b0, 0x1801418c0\nmov     r8d, cs:dword_18017B2A4                                        ; +0x2b8, 0x1801418c8\ncall    _log10_special                                                 ; +0x2bf, 0x1801418cf\njmp     short Llog10_sse2_finish                                       ; +0x2c4, 0x1801418d4\nalign 20h                                                              ; +0x2c6, 0x1801418d6\ncmp     rax, qword ptr cs:xmmword_18017B070                            ; +0x2d0, 0x1801418e0\njz      short Llog10_sse2_finish                                       ; +0x2d7, 0x1801418e7\ncmp     rax, cs:qword_18017B060                                        ; +0x2d9, 0x1801418e9\njz      short Llog10_sse2_x_is_neg                                     ; +0x2e0, 0x1801418f0\nor      rax, cs:qword_18017B090                                        ; +0x2e2, 0x1801418f2\nmovq    xmm0, rax                                                      ; +0x2e9, 0x1801418f9\nxchg    ax, ax                                                         ; +0x2ee, 0x1801418fe\nmovdqa  xmm6, [rsp+58h+var_38]                                         ; +0x2f0, 0x180141900\nadd     rsp, 58h                                                       ; +0x2f6, 0x180141906\nretn                                                                   ; +0x2fa, 0x18014190a\nalign 10h                                                              ; +0x2fb, 0x18014190b\nxor     rax, rax                                                       ; +0x300, 0x180141910\nvpsrlq  xmm3, xmm0, 34h ; '4'                                          ; +0x303, 0x180141913\nvmovq   rax, xmm0                                                      ; +0x308, 0x180141918\nvpsubq  xmm3, xmm3, cs:xmmword_18017B0A0                               ; +0x30d, 0x18014191d\nvcvtdq2pd xmm6, xmm3                                                   ; +0x315, 0x180141925\nvpand   xmm5, xmm0, cs:xmmword_18017B070                               ; +0x319, 0x180141929\nvcomisd xmm5, qword ptr cs:xmmword_18017B070                           ; +0x321, 0x180141931\njz      Llog10_fma3_x_is_inf_or_nan                                    ; +0x329, 0x180141939\nvpxor   xmm5, xmm5, xmm5                                               ; +0x32f, 0x18014193f\nvcomisd xmm0, xmm5                                                     ; +0x333, 0x180141943\njbe     Llog10_fma3_x_is_zero_or_neg                                   ; +0x337, 0x180141947\nvpand   xmm2, xmm0, cs:xmmword_18017B0C0                               ; +0x33d, 0x18014194d\nvsubsd  xmm4, xmm0, qword ptr cs:xmmword_18017B150                     ; +0x345, 0x180141955\nvcomisd xmm6, cs:qword_18017B1E0                                       ; +0x34d, 0x18014195d\njz      Llog10_fma3_denormal_adjust                                    ; +0x355, 0x180141965\nvpand   xmm1, xmm0, cs:xmmword_18017B0D0                               ; +0x35b, 0x18014196b\nvpand   xmm3, xmm0, cs:xmmword_18017B0E0                               ; +0x363, 0x180141973\nvpsllq  xmm3, xmm3, 1                                                  ; +0x36b, 0x18014197b\nvpaddq  xmm1, xmm3, xmm1                                               ; +0x370, 0x180141980\nvmovq   rax, xmm1                                                      ; +0x374, 0x180141984\nvpand   xmm4, xmm4, cs:xmmword_18017B240                               ; +0x379, 0x180141989\nvcomisd xmm4, cs:qword_18017B200                                       ; +0x381, 0x180141991\njb      Llog10_fma3_near_one                                           ; +0x389, 0x180141999\nshr     rax, 2Ch                                                       ; +0x38f, 0x18014199f\nvpor    xmm2, xmm2, cs:xmmword_18017B160                               ; +0x393, 0x1801419a3\nvpor    xmm1, xmm1, cs:xmmword_18017B160                               ; +0x39b, 0x1801419ab\nlea     r9, dbl_180173C60                                              ; +0x3a3, 0x1801419b3\nvsubsd  xmm1, xmm1, xmm2                                               ; +0x3aa, 0x1801419ba\nvmulsd  xmm1, xmm1, qword ptr [r9+rax*8]                               ; +0x3ae, 0x1801419be\nlea     r9, dbl_18017B2B0                                              ; +0x3b4, 0x1801419c4\nvmulsd  xmm0, xmm1, xmm1                                               ; +0x3bb, 0x1801419cb\nvmovsd  xmm3, cs:qword_18017B1D0                                       ; +0x3bf, 0x1801419cf\nvmovsd  xmm5, cs:qword_18017B1A0                                       ; +0x3c7, 0x1801419d7\nvfmadd213sd xmm3, xmm1, cs:qword_18017B1C0                             ; +0x3cf, 0x1801419df\nvfmadd213sd xmm5, xmm1, qword ptr cs:xmmword_18017B160                 ; +0x3d8, 0x1801419e8\nmovsd   xmm4, xmm0                                                     ; +0x3e1, 0x1801419f1\nvfmadd213sd xmm3, xmm1, cs:qword_18017B1B0                             ; +0x3e5, 0x1801419f5\nvmulsd  xmm4, xmm0, xmm0                                               ; +0x3ee, 0x1801419fe\nvfmadd231sd xmm1, xmm5, xmm0                                           ; +0x3f2, 0x180141a02\nvfmadd231sd xmm1, xmm3, xmm4                                           ; +0x3f7, 0x180141a07\nvmulsd  xmm1, xmm1, cs:qword_18017B0F0                                 ; +0x3fc, 0x180141a0c\nvmovsd  xmm5, cs:qword_18017B130                                       ; +0x404, 0x180141a14\nvfmsub213sd xmm5, xmm6, xmm1                                           ; +0x40c, 0x180141a1c\nmovsd   xmm0, qword ptr [r9+rax*8]                                     ; +0x411, 0x180141a21\nlea     rdx, dbl_18017BAC0                                             ; +0x417, 0x180141a27\nmovsd   xmm2, qword ptr [rdx+rax*8]                                    ; +0x41e, 0x180141a2e\nvaddsd  xmm2, xmm2, xmm5                                               ; +0x423, 0x180141a33\nvfmadd231sd xmm0, xmm6, cs:qword_18017B120                             ; +0x427, 0x180141a37\nvaddsd  xmm0, xmm0, xmm2                                               ; +0x430, 0x180141a40\nvmovdqa xmm6, [rsp+58h+var_38]                                         ; +0x434, 0x180141a44\nadd     rsp, 58h                                                       ; +0x43a, 0x180141a4a\nretn                                                                   ; +0x43e, 0x180141a4e\nalign 10h                                                              ; +0x43f, 0x180141a4f\nvmovsd  xmm2, cs:qword_18017B140                                       ; +0x440, 0x180141a50\nvsubsd  xmm0, xmm0, qword ptr cs:xmmword_18017B150                     ; +0x448, 0x180141a58\nvaddsd  xmm2, xmm2, xmm0                                               ; +0x450, 0x180141a60\nvdivsd  xmm1, xmm0, xmm2                                               ; +0x454, 0x180141a64\nvmovsd  xmm4, cs:qword_18017B260                                       ; +0x458, 0x180141a68\nvmovsd  xmm5, cs:qword_18017B280                                       ; +0x460, 0x180141a70\nvmulsd  xmm6, xmm0, xmm1                                               ; +0x468, 0x180141a78\nvaddsd  xmm1, xmm1, xmm1                                               ; +0x46c, 0x180141a7c\nvmulsd  xmm2, xmm1, xmm1                                               ; +0x470, 0x180141a80\nvfmadd213sd xmm4, xmm2, cs:qword_18017B250                             ; +0x474, 0x180141a84\nvfmadd213sd xmm5, xmm2, cs:qword_18017B270                             ; +0x47d, 0x180141a8d\nvmulsd  xmm2, xmm2, xmm1                                               ; +0x486, 0x180141a96\nvmulsd  xmm4, xmm4, xmm2                                               ; +0x48a, 0x180141a9a\nvmulsd  xmm2, xmm2, xmm2                                               ; +0x48e, 0x180141a9e\nvmulsd  xmm2, xmm2, xmm1                                               ; +0x492, 0x180141aa2\nvmulsd  xmm5, xmm5, xmm2                                               ; +0x496, 0x180141aa6\nvaddsd  xmm4, xmm4, xmm5                                               ; +0x49a, 0x180141aaa\nvsubsd  xmm4, xmm4, xmm6                                               ; +0x49e, 0x180141aae\nvpand   xmm3, xmm0, cs:xmmword_18017B290                               ; +0x4a2, 0x180141ab2\nvsubsd  xmm0, xmm0, xmm3                                               ; +0x4aa, 0x180141aba\nvaddsd  xmm4, xmm4, xmm0                                               ; +0x4ae, 0x180141abe\nvmulsd  xmm1, xmm4, cs:qword_18017B100                                 ; +0x4b2, 0x180141ac2\nvmulsd  xmm4, xmm4, cs:qword_18017B110                                 ; +0x4ba, 0x180141aca\nvmulsd  xmm0, xmm3, cs:qword_18017B110                                 ; +0x4c2, 0x180141ad2\nvmulsd  xmm3, xmm3, cs:qword_18017B100                                 ; +0x4ca, 0x180141ada\nvaddsd  xmm0, xmm0, xmm4                                               ; +0x4d2, 0x180141ae2\nvaddsd  xmm0, xmm0, xmm1                                               ; +0x4d6, 0x180141ae6\nvaddsd  xmm0, xmm0, xmm3                                               ; +0x4da, 0x180141aea\nvmovdqa xmm6, [rsp+58h+var_38]                                         ; +0x4de, 0x180141aee\nadd     rsp, 58h                                                       ; +0x4e4, 0x180141af4\nretn                                                                   ; +0x4e8, 0x180141af8\nvpor    xmm2, xmm2, cs:xmmword_18017B150                               ; +0x4e9, 0x180141af9\nvsubsd  xmm2, xmm2, qword ptr cs:xmmword_18017B150                     ; +0x4f1, 0x180141b01\nvpsrlq  xmm5, xmm2, 34h ; '4'                                          ; +0x4f9, 0x180141b09\nvpand   xmm2, xmm2, cs:xmmword_18017B0C0                               ; +0x4fe, 0x180141b0e\nvmovapd xmm0, xmm2                                                     ; +0x506, 0x180141b16\nvpsubd  xmm5, xmm5, cs:xmmword_18017B1F0                               ; +0x50a, 0x180141b1a\nvcvtdq2pd xmm6, xmm5                                                   ; +0x512, 0x180141b22\njmp     Llog10_fma3_continue_common                                    ; +0x516, 0x180141b26\nalign 10h                                                              ; +0x51b, 0x180141b2b\njnz     short Llog10_fma3_x_is_neg                                     ; +0x520, 0x180141b30\nvmovsd  xmm1, cs:qword_18017B060                                       ; +0x522, 0x180141b32\nmov     r8d, cs:dword_18017B2A0                                        ; +0x52a, 0x180141b3a\ncall    _log10_special                                                 ; +0x531, 0x180141b41\nvmovdqa xmm6, [rsp+58h+var_38]                                         ; +0x536, 0x180141b46\nadd     rsp, 58h                                                       ; +0x53c, 0x180141b4c\nretn                                                                   ; +0x540, 0x180141b50\nalign 20h                                                              ; +0x541, 0x180141b51\nvmovsd  xmm1, cs:qword_18017B080                                       ; +0x550, 0x180141b60\nmov     r8d, cs:dword_18017B2A4                                        ; +0x558, 0x180141b68\ncall    _log10_special                                                 ; +0x55f, 0x180141b6f\nvmovdqa xmm6, [rsp+58h+var_38]                                         ; +0x564, 0x180141b74\nadd     rsp, 58h                                                       ; +0x56a, 0x180141b7a\nretn                                                                   ; +0x56e, 0x180141b7e\nalign 20h                                                              ; +0x56f, 0x180141b7f\ncmp     rax, qword ptr cs:xmmword_18017B070                            ; +0x570, 0x180141b80\njz      short Llog10_fma3_finish                                       ; +0x577, 0x180141b87\ncmp     rax, cs:qword_18017B060                                        ; +0x579, 0x180141b89\njz      short Llog10_fma3_x_is_neg                                     ; +0x580, 0x180141b90\nor      rax, cs:qword_18017B090                                        ; +0x582, 0x180141b92\nmovq    xmm1, rax                                                      ; +0x589, 0x180141b99\nmov     r8d, cs:dword_18017B2A8                                        ; +0x58e, 0x180141b9e\ncall    _log10_special                                                 ; +0x595, 0x180141ba5\njmp     short Llog10_fma3_finish                                       ; +0x59a, 0x180141baa\nalign 10h                                                              ; +0x59c, 0x180141bac\nvmovdqa xmm6, [rsp+58h+var_38]                                         ; +0x5a0, 0x180141bb0\nadd     rsp, 58h                                                       ; +0x5a6, 0x180141bb6\nretn                                                                   ; +0x5aa, 0x180141bba", "xrefs": ["__acrt_fltout @ 0x18013e397", "<???> @ 0x180203cd4"], "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"}