diff --git a/dsp/framed_model.cpp b/dsp/framed_model.cpp index 2288f8a..a375d0b 100644 --- a/dsp/framed_model.cpp +++ b/dsp/framed_model.cpp @@ -123,6 +123,9 @@ static void process_band_structural( // bidir: forward+backward passes like IIR3. // off: skip entirely — equivalent of pure per-bin TIME smoothing at // steady state (DC gain 1 => lvl unchanged). + // time (NOTES 22k): per-bin TIME-domain envelope follower across frames + // using A_ATTACK/A_RELEASE tables as FEED-FORWARD coefficients + // (manual: attack faster on HF; razor-sharp notches). State persists. static const int iir_mode = getenv("RT_IIR12") ? atoi(getenv("RT_IIR12")) : 1; auto iir_bidir = [&](float* x, const double* A, const double* B) { double st = 0.0; @@ -136,7 +139,18 @@ static void process_band_structural( x[i] = static_cast(st); } }; - if (iir_mode == 2) { + static thread_local std::vector env_time; + if (iir_mode == 3) { + if ((int)env_time.size() != (int)nbin) env_time.assign(nbin, 0.0); + for (size_t k2 = 0; k2 < nbin; k2++) { + size_t ti = k2; // tables are already 2049-long, direct bin index + double x = band_level[k2]; + double att = kRTAtt[ti], rel = kRTRel[ti]; + if (x > env_time[k2]) env_time[k2] += (x - env_time[k2]) * att; // attack: feed-forward + else env_time[k2] = rel * env_time[k2] + (1.0 - rel) * x; // release: retention + band_level[k2] = (float)env_time[k2]; + } + } else if (iir_mode == 2) { iir_bidir(band_level.data(), kIIR_A1, kIIR_B1); std::copy(band_level.begin(), band_level.begin() + nbin, f6f8.begin()); iir_bidir(band_level.data(), kIIR_A2, kIIR_B2); @@ -163,7 +177,10 @@ static void process_band_structural( } for (size_t k = 0; k < nfft; k++) { - mask_out[k] = static_cast(std::exp2(-static_cast(band_level[k])) * f6f8[k]); + double mm = std::exp2(-static_cast(band_level[k])); + static const int noblend = getenv("RT_NOBLEND") ? atoi(getenv("RT_NOBLEND")) : 0; + if (!noblend) mm *= f6f8[k]; + mask_out[k] = static_cast(mm); } // RT_DUMP_BIN debug: capture pre-warp mask (opt-in, no cost when unset). @@ -192,7 +209,8 @@ static void process_band_structural( // TWO bidirectional passes [reset, forward, backward] x2 (state persists // from forward into backward within a pair; reset between pairs). // y = B3[i]*x[i] + A3[i]*state (decomp operand order verified). - for (int pass = 0; pass < 2; pass++) { + static const int no_iir3 = getenv("RT_NOIIR3") ? atoi(getenv("RT_NOIIR3")) : 0; + for (int pass = 0; pass < 2 && !no_iir3; pass++) { double st = 0.0; for (size_t i = 0; i < nbin; i++) { double y = static_cast(mask_out[i]) * kIIR_B3[i] + st * kIIR_A3[i]; diff --git a/handoff/NOTES_LEVEL.md b/handoff/NOTES_LEVEL.md index 6728aab..6240ab2 100644 --- a/handoff/NOTES_LEVEL.md +++ b/handoff/NOTES_LEVEL.md @@ -1695,3 +1695,40 @@ REAL (плагин): передача ПЛОСКАЯ −0.01…−1.65 dB на 2. Тест адаптивного twin: рендер тона разной ДЛИТЕЛЬНОСТИ (0.5/2/8 c) через мост — если пол зависит от длины ⇒ res_k(t) адаптируется, взять динамику из NOTES_TWIN. 3. Формулы контраста перебрать офлайн на траекториях RT_DUMP_ALL (движок phaseA готов). + +## ============ UPDATE 2026-08-22k: BARE-CHAIN АРХИТЕКТУРА ПОДТВЕРЖДЕНА ============ + +Цепочка «голая» exp2-архитектура (RT_LUT_OFF=1 RT_IIR12=0 RT_NOWARP=1 RT_NOBLEND=1 +RT_NOIIR3=1) на белошумном пробнике совпала с реальным плагином в пределах ~0.5 дБ +почти везде: + +| freq | real | model | +|------|------|-------| +| 50 | −0.01 | −0.12 | +| 300 | −0.08 | −0.26 | +| 678 | −1.04 | −2.59 | +| 850 | −0.76 | −0.94 | +| 1000 | −0.74 | −0.62 | +| 2000 | −0.22 | −0.20 | + +⇒ АРХИТЕКТУРА ПОДТВЕРЖДЕНА: + mask[k] = exp2(−lvl_raw[k]) БЕЗ blend-бланкета, БЕЗ warp-аттенюации + lvl_raw[k] = per-bin TIME envelope от am/res·scale + output = conv(audio, FIR(mask)) +Частотно-направленные каскады IIR1/2/3 в аудио-пути ОТСУТСТВУЮТ (они и создавали +фантомное смазывание нотча и бланкет-пол). kIIR_A1==A_ATTACK, kIIR_A2==A_RELEASE — +это время-энвелоп коэффициенты (feed-forward атака, retention релиз), НЕ частотные. + +### Остаточный разрыв ТОНА: −15.13 vs −20.72 (нужен lvl 3.4436, есть 3.0117) +Фактор ×1.1437 в амплитуде. Кандидаты: +(a) am-нормировка (wsum/окно) отличается; +(b) res_k twin АДАПТИРУЕТСЯ во времени (tatt=11ms/trel=80ms из NOTES_TWIN!) — + при длинном тоне res_k уменьшается → lvl растёт; +(c) scale_factor формула (наш 15·440.95/2048=3.231). +Мелочи: модель глубже у центра полосы на шуме (−2.59 vs −1.04 @678); у real +HF-rolloff −1.5@8k (вероятно WIN_freq окно FFT-conv — таблица [01] registry!). + +### NEXT +1. Декомп амплитудной цепочки: wsum/am нормировка (spectral.cpp), масштаб окна. +2. Twin-адаптация: проверить динамику res_k по длине тона (рендеры 0.5/2/8 c). +3. WIN_freq rolloff: добавить окно FFT-conv в модель (registry [01] 0.5→1.0). diff --git a/handoff/nls_dasm/f_26b820.dis b/handoff/nls_dasm/f_26b820.dis new file mode 100644 index 0000000..272aa0e --- /dev/null +++ b/handoff/nls_dasm/f_26b820.dis @@ -0,0 +1,283 @@ +000000018026b820 <.data>: + 18026b820: 53 push %rbx + 18026b821: 56 push %rsi + 18026b822: 57 push %rdi + 18026b823: 41 54 push %r12 + 18026b825: 41 56 push %r14 + 18026b827: 41 57 push %r15 + 18026b829: 55 push %rbp + 18026b82a: 48 81 ec 70 05 00 00 sub $0x570,%rsp + 18026b831: 45 89 ce mov %r9d,%r14d + 18026b834: c5 78 11 bc 24 30 05 vmovups %xmm15,0x530(%rsp) + 18026b83b: 00 00 + 18026b83d: 4d 89 c7 mov %r8,%r15 + 18026b840: c5 78 11 b4 24 20 05 vmovups %xmm14,0x520(%rsp) + 18026b847: 00 00 + 18026b849: 48 89 d5 mov %rdx,%rbp + 18026b84c: c5 78 11 ac 24 10 05 vmovups %xmm13,0x510(%rsp) + 18026b853: 00 00 + 18026b855: 49 89 cc mov %rcx,%r12 + 18026b858: c5 78 11 a4 24 00 05 vmovups %xmm12,0x500(%rsp) + 18026b85f: 00 00 + 18026b861: 33 db xor %ebx,%ebx + 18026b863: c5 78 11 9c 24 f0 04 vmovups %xmm11,0x4f0(%rsp) + 18026b86a: 00 00 + 18026b86c: c5 78 11 94 24 e0 04 vmovups %xmm10,0x4e0(%rsp) + 18026b873: 00 00 + 18026b875: c5 78 11 8c 24 d0 04 vmovups %xmm9,0x4d0(%rsp) + 18026b87c: 00 00 + 18026b87e: c5 78 11 84 24 c0 04 vmovups %xmm8,0x4c0(%rsp) + 18026b885: 00 00 + 18026b887: c5 f8 11 bc 24 b0 04 vmovups %xmm7,0x4b0(%rsp) + 18026b88e: 00 00 + 18026b890: c5 f8 11 b4 24 a0 04 vmovups %xmm6,0x4a0(%rsp) + 18026b897: 00 00 + 18026b899: 4c 89 ac 24 58 05 00 mov %r13,0x558(%rsp) + 18026b8a0: 00 + 18026b8a1: 4c 8d ac 24 bf 00 00 lea 0xbf(%rsp),%r13 + 18026b8a8: 00 + 18026b8a9: 48 8b 05 c0 a0 3a 02 mov 0x23aa0c0(%rip),%rax # 0x182615970 + 18026b8b0: 49 83 e5 c0 and $0xffffffffffffffc0,%r13 + 18026b8b4: 48 33 c4 xor %rsp,%rax + 18026b8b7: 48 89 84 24 60 05 00 mov %rax,0x560(%rsp) + 18026b8be: 00 + 18026b8bf: 45 85 f6 test %r14d,%r14d + 18026b8c2: 0f 8e f9 14 00 00 jle 0x18026cdc1 + 18026b8c8: 4d 85 e4 test %r12,%r12 + 18026b8cb: 0f 84 da 14 00 00 je 0x18026cdab + 18026b8d1: 48 85 ed test %rbp,%rbp + 18026b8d4: 0f 84 bb 14 00 00 je 0x18026cd95 + 18026b8da: 4d 85 ff test %r15,%r15 + 18026b8dd: 0f 84 7a 14 00 00 je 0x18026cd5d + 18026b8e3: d9 bc 24 54 05 00 00 fnstcw 0x554(%rsp) + 18026b8ea: 0f b7 8c 24 54 05 00 movzwl 0x554(%rsp),%ecx + 18026b8f1: 00 + 18026b8f2: 89 ca mov %ecx,%edx + 18026b8f4: 83 e2 3f and $0x3f,%edx + 18026b8f7: 83 fa 3f cmp $0x3f,%edx + 18026b8fa: 74 12 je 0x18026b90e + 18026b8fc: 83 c9 3f or $0x3f,%ecx + 18026b8ff: 66 89 4c 24 40 mov %cx,0x40(%rsp) + 18026b904: db e2 fnclex + 18026b906: d9 6c 24 40 fldcw 0x40(%rsp) + 18026b90a: b2 01 mov $0x1,%dl + 18026b90c: eb 02 jmp 0x18026b910 + 18026b90e: 32 d2 xor %dl,%dl + 18026b910: c5 f8 ae 9c 24 50 05 vstmxcsr 0x550(%rsp) + 18026b917: 00 00 + 18026b919: 8b 8c 24 50 05 00 00 mov 0x550(%rsp),%ecx + 18026b920: 89 ce mov %ecx,%esi + 18026b922: 81 e6 c0 ff 00 00 and $0xffc0,%esi + 18026b928: 81 fe 80 1f 00 00 cmp $0x1f80,%esi + 18026b92e: 74 21 je 0x18026b951 + 18026b930: 89 ce mov %ecx,%esi + 18026b932: 80 c2 02 add $0x2,%dl + 18026b935: 81 e6 3f 00 ff ff and $0xffff003f,%esi + 18026b93b: 81 c6 80 1f 00 00 add $0x1f80,%esi + 18026b941: 89 b4 24 50 05 00 00 mov %esi,0x550(%rsp) + 18026b948: c5 f8 ae 94 24 50 05 vldmxcsr 0x550(%rsp) + 18026b94f: 00 00 + 18026b951: 44 89 f6 mov %r14d,%esi + 18026b954: 4d 8d 44 24 1f lea 0x1f(%r12),%r8 + 18026b959: 49 83 e0 e0 and $0xffffffffffffffe0,%r8 + 18026b95d: 45 33 db xor %r11d,%r11d + 18026b960: 4d 2b c4 sub %r12,%r8 + 18026b963: 41 c1 e8 03 shr $0x3,%r8d + 18026b967: 45 3b c6 cmp %r14d,%r8d + 18026b96a: 45 0f 43 c6 cmovae %r14d,%r8d + 18026b96e: 41 2b f0 sub %r8d,%esi + 18026b971: 83 e6 f0 and $0xfffffff0,%esi + 18026b974: 41 03 f0 add %r8d,%esi + 18026b977: 45 85 c0 test %r8d,%r8d + 18026b97a: 0f 86 42 03 00 00 jbe 0x18026bcc2 + 18026b980: 33 ff xor %edi,%edi + 18026b982: c5 f8 10 25 f6 5c cc vmovups 0x1cc5cf6(%rip),%xmm4 # 0x181f31680 + 18026b989: 01 + 18026b98a: 48 b8 ff ff ff ff 00 movabs $0xffffffff,%rax + 18026b991: 00 00 00 + 18026b994: c5 f8 10 2d 24 5d cc vmovups 0x1cc5d24(%rip),%xmm5 # 0x181f316c0 + 18026b99b: 01 + 18026b99c: 41 ba 04 00 00 00 mov $0x4,%r10d + 18026b9a2: c5 f8 10 35 56 5d cc vmovups 0x1cc5d56(%rip),%xmm6 # 0x181f31700 + 18026b9a9: 01 + 18026b9aa: 4c 8d 0d 4f 46 d9 ff lea -0x26b9b1(%rip),%r9 # 0x180000000 + 18026b9b1: c5 fd 10 3d c7 90 cc vmovupd 0x1cc90c7(%rip),%ymm7 # 0x181f34a80 + 18026b9b8: 01 + 18026b9b9: c5 7d 10 05 ff 90 cc vmovupd 0x1cc90ff(%rip),%ymm8 # 0x181f34ac0 + 18026b9c0: 01 + 18026b9c1: c5 7d 10 0d 37 91 cc vmovupd 0x1cc9137(%rip),%ymm9 # 0x181f34b00 + 18026b9c8: 01 + 18026b9c9: c5 fd 10 1d 6f 91 cc vmovupd 0x1cc916f(%rip),%ymm3 # 0x181f34b40 + 18026b9d0: 01 + 18026b9d1: 88 54 24 78 mov %dl,0x78(%rsp) + 18026b9d5: 89 9c 24 48 05 00 00 mov %ebx,0x548(%rsp) + 18026b9dc: 44 89 b4 24 40 05 00 mov %r14d,0x540(%rsp) + 18026b9e3: 00 + 18026b9e4: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 18026b9eb: 00 + 18026b9ec: 0f 1f 80 00 00 00 00 nopl 0x0(%rax) + 18026b9f3: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) + 18026b9f8: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 18026b9ff: 00 + 18026ba00: 44 89 c2 mov %r8d,%edx + 18026ba03: 45 33 f6 xor %r14d,%r14d + 18026ba06: 2b d7 sub %edi,%edx + 18026ba08: 83 fa 04 cmp $0x4,%edx + 18026ba0b: c5 7d 10 2d 2d d4 cc vmovupd 0x1ccd42d(%rip),%ymm13 # 0x181f38e40 + 18026ba12: 01 + 18026ba13: 41 0f 43 d2 cmovae %r10d,%edx + 18026ba17: f7 da neg %edx + 18026ba19: 83 c2 20 add $0x20,%edx + 18026ba1c: c4 e2 eb f7 d0 shrx %rdx,%rax,%rdx + 18026ba21: 83 e2 0f and $0xf,%edx + 18026ba24: f3 44 0f b8 f2 popcnt %edx,%r14d + 18026ba29: 45 89 f6 mov %r14d,%r14d + 18026ba2c: 49 c1 e6 05 shl $0x5,%r14 + 18026ba30: c4 01 7c 10 9c 31 c0 vmovups 0x1f30fc0(%r9,%r14,1),%ymm11 + 18026ba37: 0f f3 01 + 18026ba3a: c4 01 7c 10 a4 31 80 vmovups 0x1f31080(%r9,%r14,1),%ymm12 + 18026ba41: 10 f3 01 + 18026ba44: c4 02 25 2d 14 dc vmaskmovpd (%r12,%r11,8),%ymm11,%ymm10 + 18026ba4a: c4 43 15 4b d2 b0 vblendvpd %ymm11,%ymm10,%ymm13,%ymm10 + 18026ba50: c4 22 1d 2d 5c dd 00 vmaskmovpd 0x0(%rbp,%r11,8),%ymm12,%ymm11 + 18026ba57: c4 43 15 4b db c0 vblendvpd %ymm12,%ymm11,%ymm13,%ymm11 + 18026ba5d: c5 78 10 25 db 5b cc vmovups 0x1cc5bdb(%rip),%xmm12 # 0x181f31640 + 18026ba64: 01 + 18026ba65: c4 63 7d 39 d2 01 vextracti128 $0x1,%ymm10,%xmm2 + 18026ba6b: c4 63 7d 39 d9 01 vextracti128 $0x1,%ymm11,%xmm1 + 18026ba71: c5 28 c6 ea dd vshufps $0xdd,%xmm2,%xmm10,%xmm13 + 18026ba76: c5 20 c6 f9 dd vshufps $0xdd,%xmm1,%xmm11,%xmm15 + 18026ba7b: c4 41 11 fe f4 vpaddd %xmm12,%xmm13,%xmm14 + 18026ba80: c5 81 db d5 vpand %xmm5,%xmm15,%xmm2 + 18026ba84: c4 41 59 66 ee vpcmpgtd %xmm14,%xmm4,%xmm13 + 18026ba89: c5 7d 10 35 ef 8d cc vmovupd 0x1cc8def(%rip),%ymm14 # 0x181f34880 + 18026ba90: 01 + 18026ba91: c5 e9 66 c6 vpcmpgtd %xmm6,%xmm2,%xmm0 + 18026ba95: c5 e9 76 ce vpcmpeqd %xmm6,%xmm2,%xmm1 + 18026ba99: c5 79 eb e1 vpor %xmm1,%xmm0,%xmm12 + 18026ba9d: c4 c1 11 eb d4 vpor %xmm12,%xmm13,%xmm2 + 18026baa2: c5 fd 10 05 16 8e cc vmovupd 0x1cc8e16(%rip),%ymm0 # 0x181f348c0 + 18026baa9: 01 + 18026baaa: c4 41 2d 54 fe vandpd %ymm14,%ymm10,%ymm15 + 18026baaf: c5 85 56 c8 vorpd %ymm0,%ymm15,%ymm1 + 18026bab3: c5 7d 5a e9 vcvtpd2ps %ymm1,%xmm13 + 18026bab7: c4 c1 0d 73 d2 14 vpsrlq $0x14,%ymm10,%ymm14 + 18026babd: c4 41 78 53 e5 vrcpps %xmm13,%xmm12 + 18026bac2: c4 c1 7c 5a c4 vcvtps2pd %xmm12,%ymm0 + 18026bac7: c5 7d 10 25 f1 8e cc vmovupd 0x1cc8ef1(%rip),%ymm12 # 0x181f349c0 + 18026bace: 01 + 18026bacf: c4 43 7d 39 f7 01 vextracti128 $0x1,%ymm14,%xmm15 + 18026bad5: c4 41 08 c6 ef dd vshufps $0xdd,%xmm15,%xmm14,%xmm13 + 18026badb: c4 63 7d 09 f8 00 vroundpd $0x0,%ymm0,%ymm15 + 18026bae1: c4 41 7e e6 f5 vcvtdq2pd %xmm13,%ymm14 + 18026bae6: c4 c1 15 73 d7 28 vpsrlq $0x28,%ymm15,%ymm13 + 18026baec: c4 c2 85 aa cc vfmsub213pd %ymm12,%ymm15,%ymm1 + 18026baf1: c4 41 45 c2 ff 11 vcmplt_oqpd %ymm15,%ymm7,%ymm15 + 18026baf7: c5 79 7e eb vmovd %xmm13,%ebx + 18026bafb: c4 43 7d 39 ec 01 vextracti128 $0x1,%ymm13,%xmm12 + 18026bb01: 48 63 db movslq %ebx,%rbx + 18026bb04: c4 43 79 16 ee 02 vpextrd $0x2,%xmm13,%r14d + 18026bb0a: 4d 63 f6 movslq %r14d,%r14 + 18026bb0d: c4 c1 7b 10 84 19 c0 vmovsd 0x1b2b7c0(%r9,%rbx,1),%xmm0 + 18026bb14: b7 b2 01 + 18026bb17: c5 79 7e e3 vmovd %xmm12,%ebx + 18026bb1b: c4 81 79 16 84 31 c0 vmovhpd 0x1b2b7c0(%r9,%r14,1),%xmm0,%xmm0 + 18026bb22: b7 b2 01 + 18026bb25: 48 63 db movslq %ebx,%rbx + 18026bb28: c4 43 79 16 e6 02 vpextrd $0x2,%xmm12,%r14d + 18026bb2e: 4d 63 f6 movslq %r14d,%r14 + 18026bb31: c4 41 7b 10 ac 19 c0 vmovsd 0x1b2b7c0(%r9,%rbx,1),%xmm13 + 18026bb38: b7 b2 01 + 18026bb3b: c4 01 11 16 a4 31 c0 vmovhpd 0x1b2b7c0(%r9,%r14,1),%xmm13,%xmm12 + 18026bb42: b7 b2 01 + 18026bb45: c4 41 05 54 e8 vandpd %ymm8,%ymm15,%ymm13 + 18026bb4a: c4 c3 7d 18 c4 01 vinsertf128 $0x1,%xmm12,%ymm0,%ymm0 + 18026bb50: c4 41 15 56 e1 vorpd %ymm9,%ymm13,%ymm12 + 18026bb55: c4 41 0d 5c f4 vsubpd %ymm12,%ymm14,%ymm14 + 18026bb5a: c5 7d 10 2d be 8c cc vmovupd 0x1cc8cbe(%rip),%ymm13 # 0x181f34820 + 18026bb61: 01 + 18026bb62: c4 41 65 59 fe vmulpd %ymm14,%ymm3,%ymm15 + 18026bb67: c5 7d 10 35 d1 8c cc vmovupd 0x1cc8cd1(%rip),%ymm14 # 0x181f34840 + 18026bb6e: 01 + 18026bb6f: c5 7d 10 25 e9 8c cc vmovupd 0x1cc8ce9(%rip),%ymm12 # 0x181f34860 + 18026bb76: 01 + 18026bb77: c4 62 95 b8 f1 vfmadd231pd %ymm1,%ymm13,%ymm14 + 18026bb7c: c5 75 59 e9 vmulpd %ymm1,%ymm1,%ymm13 + 18026bb80: c4 42 f5 a8 f4 vfmadd213pd %ymm12,%ymm1,%ymm14 + 18026bb85: c4 41 0d 59 e5 vmulpd %ymm13,%ymm14,%ymm12 + 18026bb8a: c4 c1 75 58 cc vaddpd %ymm12,%ymm1,%ymm1 + 18026bb8f: c5 7d 58 e9 vaddpd %ymm1,%ymm0,%ymm13 + 18026bb93: c5 f8 10 0d a5 5b cc vmovups 0x1cc5ba5(%rip),%xmm1 # 0x181f31740 + 18026bb9a: 01 + 18026bb9b: c4 41 05 58 e5 vaddpd %ymm13,%ymm15,%ymm12 + 18026bba0: c4 41 25 59 e4 vmulpd %ymm12,%ymm11,%ymm12 + 18026bba5: c4 43 7d 39 e6 01 vextracti128 $0x1,%ymm12,%xmm14 + 18026bbab: c4 41 18 c6 fe dd vshufps $0xdd,%xmm14,%xmm12,%xmm15 + 18026bbb1: c5 81 db c5 vpand %xmm5,%xmm15,%xmm0 + 18026bbb5: c5 79 66 e9 vpcmpgtd %xmm1,%xmm0,%xmm13 + 18026bbb9: c5 79 76 f1 vpcmpeqd %xmm1,%xmm0,%xmm14 + 18026bbbd: c4 41 11 eb fe vpor %xmm14,%xmm13,%xmm15 + 18026bbc2: c5 7d 10 2d b6 d0 cc vmovupd 0x1ccd0b6(%rip),%ymm13 # 0x181f38c80 + 18026bbc9: 01 + 18026bbca: c4 c1 69 eb d7 vpor %xmm15,%xmm2,%xmm2 + 18026bbcf: c5 fd 10 05 e9 d0 cc vmovupd 0x1ccd0e9(%rip),%ymm0 # 0x181f38cc0 + 18026bbd6: 01 + 18026bbd7: c4 41 15 59 ec vmulpd %ymm12,%ymm13,%ymm13 + 18026bbdc: c5 7d 10 25 1c d1 cc vmovupd 0x1ccd11c(%rip),%ymm12 # 0x181f38d00 + 18026bbe3: 01 + 18026bbe4: c5 fd 10 0d 94 d1 cc vmovupd 0x1ccd194(%rip),%ymm1 # 0x181f38d80 + 18026bbeb: 01 + 18026bbec: c4 41 15 5c f4 vsubpd %ymm12,%ymm13,%ymm14 + 18026bbf1: c5 78 50 f2 vmovmskps %xmm2,%r14d + 18026bbf5: c4 41 7d 58 fe vaddpd %ymm14,%ymm0,%ymm15 + 18026bbfa: c5 85 5c d0 vsubpd %ymm0,%ymm15,%ymm2 + 18026bbfe: c5 15 5c e2 vsubpd %ymm2,%ymm13,%ymm12 + 18026bc02: c5 7d 10 2d 36 d1 cc vmovupd 0x1ccd136(%rip),%ymm13 # 0x181f38d40 + 18026bc09: 01 + 18026bc0a: c5 04 54 f1 vandps %ymm1,%ymm15,%ymm14 + 18026bc0e: c4 41 15 59 ec vmulpd %ymm12,%ymm13,%ymm13 + 18026bc13: c4 c1 1d 73 d7 0b vpsrlq $0xb,%ymm15,%ymm12 + 18026bc19: c4 c1 1d 73 f4 34 vpsllq $0x34,%ymm12,%ymm12 + 18026bc1f: c5 79 7e f3 vmovd %xmm14,%ebx + 18026bc23: c1 e3 03 shl $0x3,%ebx + 18026bc26: c4 41 7a 7e bc 19 40 vmovq 0x1f34c40(%r9,%rbx,1),%xmm15 + 18026bc2d: 4c f3 01 + 18026bc30: c4 63 79 16 f3 02 vpextrd $0x2,%xmm14,%ebx + 18026bc36: c4 43 7d 39 f6 01 vextracti128 $0x1,%ymm14,%xmm14 + 18026bc3c: c1 e3 03 shl $0x3,%ebx + 18026bc3f: c4 c1 01 16 84 19 40 vmovhpd 0x1f34c40(%r9,%rbx,1),%xmm15,%xmm0 + 18026bc46: 4c f3 01 + 18026bc49: c5 79 7e f3 vmovd %xmm14,%ebx + 18026bc4d: c1 e3 03 shl $0x3,%ebx + 18026bc50: c4 c1 7a 7e 8c 19 40 vmovq 0x1f34c40(%r9,%rbx,1),%xmm1 + 18026bc57: 4c f3 01 + 18026bc5a: c4 63 79 16 f3 02 vpextrd $0x2,%xmm14,%ebx + 18026bc60: c1 e3 03 shl $0x3,%ebx + 18026bc63: c4 c1 71 16 94 19 40 vmovhpd 0x1f34c40(%r9,%rbx,1),%xmm1,%xmm2 + 18026bc6a: 4c f3 01 + 18026bc6d: 45 85 f6 test %r14d,%r14d + 18026bc70: c4 e3 7d 18 c2 01 vinsertf128 $0x1,%xmm2,%ymm0,%ymm0 + 18026bc76: c4 e2 95 a8 c0 vfmadd213pd %ymm0,%ymm13,%ymm0 + 18026bc7b: c4 c1 7d d4 cc vpaddq %ymm12,%ymm0,%ymm1 + 18026bc80: 0f 85 9c 0f 00 00 jne 0x18026cc22 + 18026bc86: f3 0f b8 d2 popcnt %edx,%edx + 18026bc8a: 89 d2 mov %edx,%edx + 18026bc8c: 83 c7 04 add $0x4,%edi + 18026bc8f: 48 c1 e2 05 shl $0x5,%rdx + 18026bc93: c4 c1 7e 6f 84 11 40 vmovdqu 0x1f31140(%r9,%rdx,1),%ymm0 + 18026bc9a: 11 f3 01 + 18026bc9d: c4 82 7d 2f 0c df vmaskmovpd %ymm1,%ymm0,(%r15,%r11,8) + 18026bca3: 41 89 fb mov %edi,%r11d + 18026bca6: 41 3b f8 cmp %r8d,%edi + 18026bca9: 0f 82 51 fd ff ff jb 0x18026ba00 + 18026bcaf: 8a 54 24 78 mov 0x78(%rsp),%dl + 18026bcb3: 8b 9c 24 48 05 00 00 mov 0x548(%rsp),%ebx + 18026bcba: 44 8b b4 24 40 05 00 mov 0x540(%rsp),%r14d + 18026bcc1: 00 + 18026bcc2: 44 3b c6 cmp %esi,%r8d + 18026bcc5: 0f 83 72 08 00 00 jae 0x18026c53d + 18026bccb: 4c rex.WR + 18026bccc: 8d .byte 0x8d + 18026bccd: 15 .byte 0x15 + 18026bcce: 2e cs + 18026bccf: 43 rex.XB diff --git a/handoff/nls_dasm/f_52d650.dis b/handoff/nls_dasm/f_52d650.dis new file mode 100644 index 0000000..e39100c --- /dev/null +++ b/handoff/nls_dasm/f_52d650.dis @@ -0,0 +1,253 @@ +000000018052d650 <.data>: + 18052d650: 4d 85 c0 test %r8,%r8 + 18052d653: 4c 8b d2 mov %rdx,%r10 + 18052d656: 4c 0f 44 c2 cmove %rdx,%r8 + 18052d65a: 45 33 c9 xor %r9d,%r9d + 18052d65d: 4c 89 89 10 00 10 00 mov %r9,0x100010(%rcx) + 18052d664: 44 39 09 cmp %r9d,(%rcx) + 18052d667: 7e 4e jle 0x18052d6b7 + 18052d669: 48 8b c2 mov %rdx,%rax + 18052d66c: 48 8d 91 10 00 08 00 lea 0x80010(%rcx),%rdx + 18052d673: 4c 2b c0 sub %rax,%r8 + 18052d676: f3 41 0f 10 0c 00 movss (%r8,%rax,1),%xmm1 + 18052d67c: 41 ff c1 inc %r9d + 18052d67f: f2 0f 10 81 10 00 10 movsd 0x100010(%rcx),%xmm0 + 18052d686: 00 + 18052d687: f2 0f 59 02 mulsd (%rdx),%xmm0 + 18052d68b: 0f 5a c9 cvtps2pd %xmm1,%xmm1 + 18052d68e: f2 0f 59 8a 00 00 f8 mulsd -0x80000(%rdx),%xmm1 + 18052d695: ff + 18052d696: 48 83 c2 08 add $0x8,%rdx + 18052d69a: f2 0f 58 c8 addsd %xmm0,%xmm1 + 18052d69e: f2 0f 11 89 10 00 10 movsd %xmm1,0x100010(%rcx) + 18052d6a5: 00 + 18052d6a6: 66 0f 5a c1 cvtpd2ps %xmm1,%xmm0 + 18052d6aa: f3 0f 11 00 movss %xmm0,(%rax) + 18052d6ae: 48 83 c0 04 add $0x4,%rax + 18052d6b2: 44 3b 09 cmp (%rcx),%r9d + 18052d6b5: 7c bf jl 0x18052d676 + 18052d6b7: 8b 01 mov (%rcx),%eax + 18052d6b9: 83 e8 02 sub $0x2,%eax + 18052d6bc: 48 63 d0 movslq %eax,%rdx + 18052d6bf: 48 83 fa 04 cmp $0x4,%rdx + 18052d6c3: 0f 8c 0f 01 00 00 jl 0x18052d7d8 + 18052d6c9: 4c 8d 42 fc lea -0x4(%rdx),%r8 + 18052d6cd: 49 c1 e8 02 shr $0x2,%r8 + 18052d6d1: 4d 8d 4a f8 lea -0x8(%r10),%r9 + 18052d6d5: 49 ff c0 inc %r8 + 18052d6d8: 4c 8d 99 10 00 08 00 lea 0x80010(%rcx),%r11 + 18052d6df: 49 8b c0 mov %r8,%rax + 18052d6e2: 4d 8d 0c 91 lea (%r9,%rdx,4),%r9 + 18052d6e6: 48 f7 d8 neg %rax + 18052d6e9: 4d 8d 1c d3 lea (%r11,%rdx,8),%r11 + 18052d6ed: 48 8d 14 82 lea (%rdx,%rax,4),%rdx + 18052d6f1: f2 41 0f 10 03 movsd (%r11),%xmm0 + 18052d6f6: f2 0f 59 81 10 00 10 mulsd 0x100010(%rcx),%xmm0 + 18052d6fd: 00 + 18052d6fe: f3 41 0f 10 49 08 movss 0x8(%r9),%xmm1 + 18052d704: 0f 5a c9 cvtps2pd %xmm1,%xmm1 + 18052d707: f2 41 0f 59 8b 00 00 mulsd -0x80000(%r11),%xmm1 + 18052d70e: f8 ff + 18052d710: f2 0f 58 c8 addsd %xmm0,%xmm1 + 18052d714: f2 0f 11 89 10 00 10 movsd %xmm1,0x100010(%rcx) + 18052d71b: 00 + 18052d71c: 66 0f 5a c1 cvtpd2ps %xmm1,%xmm0 + 18052d720: f3 41 0f 11 41 08 movss %xmm0,0x8(%r9) + 18052d726: f2 41 0f 10 43 f8 movsd -0x8(%r11),%xmm0 + 18052d72c: f2 0f 59 81 10 00 10 mulsd 0x100010(%rcx),%xmm0 + 18052d733: 00 + 18052d734: f3 41 0f 10 49 04 movss 0x4(%r9),%xmm1 + 18052d73a: 0f 5a c9 cvtps2pd %xmm1,%xmm1 + 18052d73d: f2 41 0f 59 8b f8 ff mulsd -0x80008(%r11),%xmm1 + 18052d744: f7 ff + 18052d746: f2 0f 58 c8 addsd %xmm0,%xmm1 + 18052d74a: f2 0f 11 89 10 00 10 movsd %xmm1,0x100010(%rcx) + 18052d751: 00 + 18052d752: 66 0f 5a c1 cvtpd2ps %xmm1,%xmm0 + 18052d756: f3 41 0f 11 41 04 movss %xmm0,0x4(%r9) + 18052d75c: f2 41 0f 10 43 f0 movsd -0x10(%r11),%xmm0 + 18052d762: f2 0f 59 81 10 00 10 mulsd 0x100010(%rcx),%xmm0 + 18052d769: 00 + 18052d76a: f3 41 0f 10 11 movss (%r9),%xmm2 + 18052d76f: 0f 5a d2 cvtps2pd %xmm2,%xmm2 + 18052d772: f2 41 0f 59 93 f0 ff mulsd -0x80010(%r11),%xmm2 + 18052d779: f7 ff + 18052d77b: f2 0f 58 d0 addsd %xmm0,%xmm2 + 18052d77f: f2 0f 11 91 10 00 10 movsd %xmm2,0x100010(%rcx) + 18052d786: 00 + 18052d787: 66 0f 5a c2 cvtpd2ps %xmm2,%xmm0 + 18052d78b: f3 41 0f 11 01 movss %xmm0,(%r9) + 18052d790: f2 41 0f 10 43 e8 movsd -0x18(%r11),%xmm0 + 18052d796: f3 41 0f 10 49 fc movss -0x4(%r9),%xmm1 + 18052d79c: f2 0f 59 81 10 00 10 mulsd 0x100010(%rcx),%xmm0 + 18052d7a3: 00 + 18052d7a4: 0f 5a c9 cvtps2pd %xmm1,%xmm1 + 18052d7a7: f2 41 0f 59 8b e8 ff mulsd -0x80018(%r11),%xmm1 + 18052d7ae: f7 ff + 18052d7b0: 49 83 eb 20 sub $0x20,%r11 + 18052d7b4: f2 0f 58 c8 addsd %xmm0,%xmm1 + 18052d7b8: 66 0f 5a c1 cvtpd2ps %xmm1,%xmm0 + 18052d7bc: f2 0f 11 89 10 00 10 movsd %xmm1,0x100010(%rcx) + 18052d7c3: 00 + 18052d7c4: f3 41 0f 11 41 fc movss %xmm0,-0x4(%r9) + 18052d7ca: 49 83 e9 10 sub $0x10,%r9 + 18052d7ce: 49 83 e8 01 sub $0x1,%r8 + 18052d7d2: 0f 85 19 ff ff ff jne 0x18052d6f1 + 18052d7d8: 48 85 d2 test %rdx,%rdx + 18052d7db: 7e 4a jle 0x18052d827 + 18052d7dd: 48 8d 81 10 00 08 00 lea 0x80010(%rcx),%rax + 18052d7e4: 48 8d 04 d0 lea (%rax,%rdx,8),%rax + 18052d7e8: f2 0f 10 00 movsd (%rax),%xmm0 + 18052d7ec: f3 41 0f 10 0c 92 movss (%r10,%rdx,4),%xmm1 + 18052d7f2: f2 0f 59 81 10 00 10 mulsd 0x100010(%rcx),%xmm0 + 18052d7f9: 00 + 18052d7fa: 0f 5a c9 cvtps2pd %xmm1,%xmm1 + 18052d7fd: f2 0f 59 88 00 00 f8 mulsd -0x80000(%rax),%xmm1 + 18052d804: ff + 18052d805: 48 83 e8 08 sub $0x8,%rax + 18052d809: f2 0f 58 c8 addsd %xmm0,%xmm1 + 18052d80d: 66 0f 5a c1 cvtpd2ps %xmm1,%xmm0 + 18052d811: f2 0f 11 89 10 00 10 movsd %xmm1,0x100010(%rcx) + 18052d818: 00 + 18052d819: f3 41 0f 11 04 92 movss %xmm0,(%r10,%rdx,4) + 18052d81f: 48 ff ca dec %rdx + 18052d822: 48 85 d2 test %rdx,%rdx + 18052d825: 7f c1 jg 0x18052d7e8 + 18052d827: c3 ret + 18052d828: cc int3 + 18052d829: cc int3 + 18052d82a: cc int3 + 18052d82b: cc int3 + 18052d82c: cc int3 + 18052d82d: cc int3 + 18052d82e: cc int3 + 18052d82f: cc int3 + 18052d830: 48 89 5c 24 08 mov %rbx,0x8(%rsp) + 18052d835: 48 89 74 24 10 mov %rsi,0x10(%rsp) + 18052d83a: 57 push %rdi + 18052d83b: 48 83 ec 30 sub $0x30,%rsp + 18052d83f: 48 8b fa mov %rdx,%rdi + 18052d842: 0f 29 74 24 20 movaps %xmm6,0x20(%rsp) + 18052d847: 48 8b f1 mov %rcx,%rsi + 18052d84a: 48 8d 15 67 35 12 02 lea 0x2123567(%rip),%rdx # 0x182650db8 + 18052d851: 48 8d 0d 60 35 12 02 lea 0x2123560(%rip),%rcx # 0x182650db8 + 18052d858: 41 8b d9 mov %r9d,%ebx + 18052d85b: 0f 28 f2 movaps %xmm2,%xmm6 + 18052d85e: ff 15 a4 d7 67 01 call *0x167d7a4(%rip) # 0x181bab008 + 18052d864: 44 8b cb mov %ebx,%r9d + 18052d867: 4c 8b c6 mov %rsi,%r8 + 18052d86a: 48 8b cf mov %rdi,%rcx + 18052d86d: 85 c0 test %eax,%eax + 18052d86f: 75 0a jne 0x18052d87b + 18052d871: 0f 28 ce movaps %xmm6,%xmm1 + 18052d874: e8 c7 31 c1 ff call 0x180140a40 + 18052d879: eb 0c jmp 0x18052d887 + 18052d87b: 0f 57 c9 xorps %xmm1,%xmm1 + 18052d87e: f3 0f 5a ce cvtss2sd %xmm6,%xmm1 + 18052d882: e8 79 32 c1 ff call 0x180140b00 + 18052d887: 48 8b 5c 24 40 mov 0x40(%rsp),%rbx + 18052d88c: 48 8b 74 24 48 mov 0x48(%rsp),%rsi + 18052d891: 0f 28 74 24 20 movaps 0x20(%rsp),%xmm6 + 18052d896: 48 83 c4 30 add $0x30,%rsp + 18052d89a: 5f pop %rdi + 18052d89b: c3 ret + 18052d89c: cc int3 + 18052d89d: cc int3 + 18052d89e: cc int3 + 18052d89f: cc int3 + 18052d8a0: 48 89 5c 24 08 mov %rbx,0x8(%rsp) + 18052d8a5: 48 89 74 24 10 mov %rsi,0x10(%rsp) + 18052d8aa: 57 push %rdi + 18052d8ab: 48 83 ec 40 sub $0x40,%rsp + 18052d8af: 48 8b fa mov %rdx,%rdi + 18052d8b2: 0f 29 74 24 30 movaps %xmm6,0x30(%rsp) + 18052d8b7: 48 8b f1 mov %rcx,%rsi + 18052d8ba: 48 8d 15 f7 34 12 02 lea 0x21234f7(%rip),%rdx # 0x182650db8 + 18052d8c1: 48 8d 0d f0 34 12 02 lea 0x21234f0(%rip),%rcx # 0x182650db8 + 18052d8c8: 41 8b d9 mov %r9d,%ebx + 18052d8cb: 0f 28 f2 movaps %xmm2,%xmm6 + 18052d8ce: ff 15 34 d7 67 01 call *0x167d734(%rip) # 0x181bab008 + 18052d8d4: c7 44 24 20 00 00 00 movl $0x0,0x20(%rsp) + 18052d8db: 00 + 18052d8dc: 44 8b c3 mov %ebx,%r8d + 18052d8df: 48 8b d6 mov %rsi,%rdx + 18052d8e2: 48 8b cf mov %rdi,%rcx + 18052d8e5: 85 c0 test %eax,%eax + 18052d8e7: 75 0a jne 0x18052d8f3 + 18052d8e9: 0f 28 de movaps %xmm6,%xmm3 + 18052d8ec: e8 6f 47 ad ff call 0x180002060 + 18052d8f1: eb 0c jmp 0x18052d8ff + 18052d8f3: 0f 57 db xorps %xmm3,%xmm3 + 18052d8f6: f3 0f 5a de cvtss2sd %xmm6,%xmm3 + 18052d8fa: e8 21 48 ad ff call 0x180002120 + 18052d8ff: 48 8b 5c 24 50 mov 0x50(%rsp),%rbx + 18052d904: 48 8b 74 24 58 mov 0x58(%rsp),%rsi + 18052d909: 0f 28 74 24 30 movaps 0x30(%rsp),%xmm6 + 18052d90e: 48 83 c4 40 add $0x40,%rsp + 18052d912: 5f pop %rdi + 18052d913: c3 ret + 18052d914: cc int3 + 18052d915: cc int3 + 18052d916: cc int3 + 18052d917: cc int3 + 18052d918: cc int3 + 18052d919: cc int3 + 18052d91a: cc int3 + 18052d91b: cc int3 + 18052d91c: cc int3 + 18052d91d: cc int3 + 18052d91e: cc int3 + 18052d91f: cc int3 + 18052d920: 48 89 5c 24 08 mov %rbx,0x8(%rsp) + 18052d925: 57 push %rdi + 18052d926: 48 83 ec 30 sub $0x30,%rsp + 18052d92a: 48 8b f9 mov %rcx,%rdi + 18052d92d: 0f 29 74 24 20 movaps %xmm6,0x20(%rsp) + 18052d932: 48 8d 0d 7f 34 12 02 lea 0x212347f(%rip),%rcx # 0x182650db8 + 18052d939: 41 8b d8 mov %r8d,%ebx + 18052d93c: 48 8d 15 75 34 12 02 lea 0x2123475(%rip),%rdx # 0x182650db8 + 18052d943: 0f 28 f1 movaps %xmm1,%xmm6 + 18052d946: ff 15 bc d6 67 01 call *0x167d6bc(%rip) # 0x181bab008 + 18052d94c: 44 8b c3 mov %ebx,%r8d + 18052d94f: 48 8b d7 mov %rdi,%rdx + 18052d952: 85 c0 test %eax,%eax + 18052d954: 75 17 jne 0x18052d96d + 18052d956: 0f 28 c6 movaps %xmm6,%xmm0 + 18052d959: 48 8b 5c 24 40 mov 0x40(%rsp),%rbx + 18052d95e: 0f 28 74 24 20 movaps 0x20(%rsp),%xmm6 + 18052d963: 48 83 c4 30 add $0x30,%rsp + 18052d967: 5f pop %rdi + 18052d968: e9 c3 46 ad ff jmp 0x180002030 + 18052d96d: 0f 57 c0 xorps %xmm0,%xmm0 + 18052d970: f3 0f 5a c6 cvtss2sd %xmm6,%xmm0 + 18052d974: 48 8b 5c 24 40 mov 0x40(%rsp),%rbx + 18052d979: 0f 28 74 24 20 movaps 0x20(%rsp),%xmm6 + 18052d97e: 48 83 c4 30 add $0x30,%rsp + 18052d982: 5f pop %rdi + 18052d983: e9 a8 43 ad ff jmp 0x180001d30 + 18052d988: cc int3 + 18052d989: cc int3 + 18052d98a: cc int3 + 18052d98b: cc int3 + 18052d98c: cc int3 + 18052d98d: cc int3 + 18052d98e: cc int3 + 18052d98f: cc int3 + 18052d990: 48 89 5c 24 08 mov %rbx,0x8(%rsp) + 18052d995: 48 89 74 24 10 mov %rsi,0x10(%rsp) + 18052d99a: 57 push %rdi + 18052d99b: 48 83 ec 20 sub $0x20,%rsp + 18052d99f: 48 8b fa mov %rdx,%rdi + 18052d9a2: 48 8b f1 mov %rcx,%rsi + 18052d9a5: 48 8d 15 0c 34 12 02 lea 0x212340c(%rip),%rdx # 0x182650db8 + 18052d9ac: 41 8b d8 mov %r8d,%ebx + 18052d9af: 48 8d 0d 02 34 12 02 lea 0x2123402(%rip),%rcx # 0x182650db8 + 18052d9b6: ff 15 4c d6 67 01 call *0x167d64c(%rip) # 0x181bab008 + 18052d9bc: 44 8b c3 mov %ebx,%r8d + 18052d9bf: 48 8b d6 mov %rsi,%rdx + 18052d9c2: 48 8b cf mov %rdi,%rcx + 18052d9c5: 85 c0 test %eax,%eax + 18052d9c7: 75 14 jne 0x18052d9dd + 18052d9c9: 48 8b 5c 24 30 mov 0x30(%rsp),%rbx + 18052d9ce: 48 8b 74 24 38 mov 0x38(%rsp),%rsi + 18052d9d3: 48 rex.W diff --git a/handoff/nls_dasm/f_530b60.dis b/handoff/nls_dasm/f_530b60.dis new file mode 100644 index 0000000..b7d0e2a --- /dev/null +++ b/handoff/nls_dasm/f_530b60.dis @@ -0,0 +1,192 @@ +0000000180530b60 <.data>: + 180530b60: 40 53 rex push %rbx + 180530b62: 48 81 ec 80 00 00 00 sub $0x80,%rsp + 180530b69: f3 0f 10 0d 7f 32 f9 movss 0x1f9327f(%rip),%xmm1 # 0x1824c3df0 + 180530b70: 01 + 180530b71: 48 8b d9 mov %rcx,%rbx + 180530b74: f3 0f 10 81 78 08 54 movss 0x540878(%rcx),%xmm0 + 180530b7b: 00 + 180530b7c: 0f 29 74 24 70 movaps %xmm6,0x70(%rsp) + 180530b81: 0f 29 7c 24 60 movaps %xmm7,0x60(%rsp) + 180530b86: 44 0f 29 44 24 50 movaps %xmm8,0x50(%rsp) + 180530b8c: 44 0f 29 4c 24 40 movaps %xmm9,0x40(%rsp) + 180530b92: 44 0f 29 5c 24 30 movaps %xmm11,0x30(%rsp) + 180530b98: e8 3f 41 4e 01 call 0x181a14cdc + 180530b9d: f3 0f 10 0d 3b 36 f9 movss 0x1f9363b(%rip),%xmm1 # 0x1824c41e0 + 180530ba4: 01 + 180530ba5: 44 0f 28 d8 movaps %xmm0,%xmm11 + 180530ba9: f3 0f 10 83 7c 08 54 movss 0x54087c(%rbx),%xmm0 + 180530bb0: 00 + 180530bb1: e8 26 41 4e 01 call 0x181a14cdc + 180530bb6: 80 bb b8 08 54 00 00 cmpb $0x0,0x5408b8(%rbx) + 180530bbd: 0f 28 f8 movaps %xmm0,%xmm7 + 180530bc0: 74 0b je 0x180530bcd + 180530bc2: f3 44 0f 10 0d c9 39 movss 0x1f939c9(%rip),%xmm9 # 0x1824c4594 + 180530bc9: f9 01 + 180530bcb: eb 09 jmp 0x180530bd6 + 180530bcd: f3 44 0f 10 0d d2 39 movss 0x1f939d2(%rip),%xmm9 # 0x1824c45a8 + 180530bd4: f9 01 + 180530bd6: f3 0f 10 05 3a 38 f9 movss 0x1f9383a(%rip),%xmm0 # 0x1824c4418 + 180530bdd: 01 + 180530bde: e8 ed 40 4e 01 call 0x181a14cd0 + 180530be3: 0f 28 f0 movaps %xmm0,%xmm6 + 180530be6: 41 0f 28 c1 movaps %xmm9,%xmm0 + 180530bea: e8 e1 40 4e 01 call 0x181a14cd0 + 180530bef: f3 0f 5c c6 subss %xmm6,%xmm0 + 180530bf3: f3 41 0f 59 c3 mulss %xmm11,%xmm0 + 180530bf8: f3 0f 58 c6 addss %xmm6,%xmm0 + 180530bfc: e8 ab 40 4e 01 call 0x181a14cac + 180530c01: 44 0f 28 c0 movaps %xmm0,%xmm8 + 180530c05: f3 0f 10 05 d7 37 f9 movss 0x1f937d7(%rip),%xmm0 # 0x1824c43e4 + 180530c0c: 01 + 180530c0d: f3 44 0f 11 83 94 08 movss %xmm8,0x540894(%rbx) + 180530c14: 54 00 + 180530c16: e8 b5 40 4e 01 call 0x181a14cd0 + 180530c1b: 0f 28 f0 movaps %xmm0,%xmm6 + 180530c1e: f3 0f 10 05 f2 38 f9 movss 0x1f938f2(%rip),%xmm0 # 0x1824c4518 + 180530c25: 01 + 180530c26: e8 a5 40 4e 01 call 0x181a14cd0 + 180530c2b: f3 0f 5c c6 subss %xmm6,%xmm0 + 180530c2f: f3 0f 59 c7 mulss %xmm7,%xmm0 + 180530c33: f3 0f 58 c6 addss %xmm6,%xmm0 + 180530c37: e8 70 40 4e 01 call 0x181a14cac + 180530c3c: f3 0f 11 83 98 08 54 movss %xmm0,0x540898(%rbx) + 180530c43: 00 + 180530c44: f3 0f 10 05 24 30 f9 movss 0x1f93024(%rip),%xmm0 # 0x1824c3c70 + 180530c4b: 01 + 180530c4c: e8 7f 40 4e 01 call 0x181a14cd0 + 180530c51: f3 0f 10 3d 4b 32 f9 movss 0x1f9324b(%rip),%xmm7 # 0x1824c3ea4 + 180530c58: 01 + 180530c59: 0f 28 f0 movaps %xmm0,%xmm6 + 180530c5c: 0f 28 c7 movaps %xmm7,%xmm0 + 180530c5f: e8 6c 40 4e 01 call 0x181a14cd0 + 180530c64: f3 0f 5c c6 subss %xmm6,%xmm0 + 180530c68: f3 41 0f 59 c3 mulss %xmm11,%xmm0 + 180530c6d: f3 0f 58 c6 addss %xmm6,%xmm0 + 180530c71: e8 36 40 4e 01 call 0x181a14cac + 180530c76: f3 44 0f 59 0d 61 35 mulss 0x1f93561(%rip),%xmm9 # 0x1824c41e0 + 180530c7d: f9 01 + 180530c7f: f3 0f 5c f8 subss %xmm0,%xmm7 + 180530c83: 48 8d 8b e8 04 24 00 lea 0x2404e8(%rbx),%rcx + 180530c8a: f3 0f 10 35 0a 39 f9 movss 0x1f9390a(%rip),%xmm6 # 0x1824c459c + 180530c91: 01 + 180530c92: 41 0f 28 c8 movaps %xmm8,%xmm1 + 180530c96: f3 0f 10 5b 24 movss 0x24(%rbx),%xmm3 + 180530c9b: 0f 28 d6 movaps %xmm6,%xmm2 + 180530c9e: f3 44 0f 11 4c 24 28 movss %xmm9,0x28(%rsp) + 180530ca5: f3 0f 11 7c 24 20 movss %xmm7,0x20(%rsp) + 180530cab: e8 90 26 00 00 call 0x180533340 + 180530cb0: f3 0f 10 5b 24 movss 0x24(%rbx),%xmm3 + 180530cb5: 48 8d 8b 00 05 34 00 lea 0x340500(%rbx),%rcx + 180530cbc: f3 0f 10 8b 94 08 54 movss 0x540894(%rbx),%xmm1 + 180530cc3: 00 + 180530cc4: 0f 28 d6 movaps %xmm6,%xmm2 + 180530cc7: f3 44 0f 11 4c 24 28 movss %xmm9,0x28(%rsp) + 180530cce: f3 0f 11 7c 24 20 movss %xmm7,0x20(%rsp) + 180530cd4: e8 67 26 00 00 call 0x180533340 + 180530cd9: f3 0f 10 05 83 38 f9 movss 0x1f93883(%rip),%xmm0 # 0x1824c4564 + 180530ce0: 01 + 180530ce1: 48 8d 8b 18 05 44 00 lea 0x440518(%rbx),%rcx + 180530ce8: f3 0f 10 5b 24 movss 0x24(%rbx),%xmm3 + 180530ced: 0f 28 d6 movaps %xmm6,%xmm2 + 180530cf0: f3 0f 10 8b 98 08 54 movss 0x540898(%rbx),%xmm1 + 180530cf7: 00 + 180530cf8: f3 0f 11 44 24 28 movss %xmm0,0x28(%rsp) + 180530cfe: f3 0f 11 7c 24 20 movss %xmm7,0x20(%rsp) + 180530d04: e8 37 26 00 00 call 0x180533340 + 180530d09: 0f 28 74 24 70 movaps 0x70(%rsp),%xmm6 + 180530d0e: 0f 28 7c 24 60 movaps 0x60(%rsp),%xmm7 + 180530d13: 44 0f 28 44 24 50 movaps 0x50(%rsp),%xmm8 + 180530d19: 44 0f 28 4c 24 40 movaps 0x40(%rsp),%xmm9 + 180530d1f: 44 0f 28 5c 24 30 movaps 0x30(%rsp),%xmm11 + 180530d25: 48 81 c4 80 00 00 00 add $0x80,%rsp + 180530d2c: 5b pop %rbx + 180530d2d: c3 ret + 180530d2e: cc int3 + 180530d2f: cc int3 + 180530d30: 48 8b c4 mov %rsp,%rax + 180530d33: 48 89 58 08 mov %rbx,0x8(%rax) + 180530d37: 48 89 68 10 mov %rbp,0x10(%rax) + 180530d3b: 48 89 70 18 mov %rsi,0x18(%rax) + 180530d3f: 57 push %rdi + 180530d40: 48 81 ec c0 00 00 00 sub $0xc0,%rsp + 180530d47: f3 0f 10 51 24 movss 0x24(%rcx),%xmm2 + 180530d4c: 48 8b d9 mov %rcx,%rbx + 180530d4f: 66 0f 6e 81 a0 01 00 movd 0x1a0(%rcx),%xmm0 + 180530d56: 00 + 180530d57: 0f 28 da movaps %xmm2,%xmm3 + 180530d5a: f3 0f 59 15 2a 30 f9 mulss 0x1f9302a(%rip),%xmm2 # 0x1824c3d8c + 180530d61: 01 + 180530d62: 66 0f 6e 89 ac 01 00 movd 0x1ac(%rcx),%xmm1 + 180530d69: 00 + 180530d6a: 0f 29 78 d8 movaps %xmm7,-0x28(%rax) + 180530d6e: f3 0f 10 3d 3e 38 f9 movss 0x1f9383e(%rip),%xmm7 # 0x1824c45b4 + 180530d75: 01 + 180530d76: 44 0f 29 40 c8 movaps %xmm8,-0x38(%rax) + 180530d7b: f3 44 0f 10 05 20 31 movss 0x1f93120(%rip),%xmm8 # 0x1824c3ea4 + 180530d82: f9 01 + 180530d84: 44 0f 29 50 a8 movaps %xmm10,-0x58(%rax) + 180530d89: 44 0f 29 58 98 movaps %xmm11,-0x68(%rax) + 180530d8e: 8b 41 64 mov 0x64(%rcx),%eax + 180530d91: f3 44 0f 10 1d 9a 35 movss 0x1f9359a(%rip),%xmm11 # 0x1824c4334 + 180530d98: f9 01 + 180530d9a: 99 cltd + 180530d9b: 0f 5b c0 cvtdq2ps %xmm0,%xmm0 + 180530d9e: 2b c2 sub %edx,%eax + 180530da0: d1 f8 sar $1,%eax + 180530da2: ff c0 inc %eax + 180530da4: 80 b9 b8 08 54 00 00 cmpb $0x0,0x5408b8(%rcx) + 180530dab: f3 0f 5e fa divss %xmm2,%xmm7 + 180530daf: f3 0f 5e d8 divss %xmm0,%xmm3 + 180530db3: 66 0f 6e c0 movd %eax,%xmm0 + 180530db7: 0f 5b c9 cvtdq2ps %xmm1,%xmm1 + 180530dba: 0f 5b c0 cvtdq2ps %xmm0,%xmm0 + 180530dbd: f3 0f 59 d9 mulss %xmm1,%xmm3 + 180530dc1: f3 0f 59 f8 mulss %xmm0,%xmm7 + 180530dc5: 74 06 je 0x180530dcd + 180530dc7: 45 0f 28 d0 movaps %xmm8,%xmm10 + 180530dcb: eb 04 jmp 0x180530dd1 + 180530dcd: 45 0f 28 d3 movaps %xmm11,%xmm10 + 180530dd1: 33 ff xor %edi,%edi + 180530dd3: 48 63 e8 movslq %eax,%rbp + 180530dd6: 8b f7 mov %edi,%esi + 180530dd8: 85 c0 test %eax,%eax + 180530dda: 0f 8e e0 01 00 00 jle 0x180530fc0 + 180530de0: 0f 29 b4 24 b0 00 00 movaps %xmm6,0xb0(%rsp) + 180530de7: 00 + 180530de8: 44 0f 29 8c 24 80 00 movaps %xmm9,0x80(%rsp) + 180530def: 00 00 + 180530df1: 44 0f 29 64 24 50 movaps %xmm12,0x50(%rsp) + 180530df7: f2 44 0f 10 25 40 33 movsd 0x1f93340(%rip),%xmm12 # 0x1824c4140 + 180530dfe: f9 01 + 180530e00: 44 0f 29 6c 24 40 movaps %xmm13,0x40(%rsp) + 180530e06: f3 44 0f 10 2d 2d 2f movss 0x1f92f2d(%rip),%xmm13 # 0x1824c3d3c + 180530e0d: f9 01 + 180530e0f: 44 0f 29 74 24 30 movaps %xmm14,0x30(%rsp) + 180530e15: f2 44 0f 10 35 f2 40 movsd 0x1f940f2(%rip),%xmm14 # 0x1824c4f10 + 180530e1c: f9 01 + 180530e1e: 44 0f 5a cb cvtps2pd %xmm3,%xmm9 + 180530e22: 44 0f 29 7c 24 20 movaps %xmm15,0x20(%rsp) + 180530e28: f2 44 0f 59 0d ff 2f mulsd 0x1f92fff(%rip),%xmm9 # 0x1824c3e30 + 180530e2f: f9 01 + 180530e31: f2 44 0f 10 3d be 2e movsd 0x1f92ebe(%rip),%xmm15 # 0x1824c3cf8 + 180530e38: f9 01 + 180530e3a: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1) + 180530e40: 0f 57 c9 xorps %xmm1,%xmm1 + 180530e43: 0f 28 c7 movaps %xmm7,%xmm0 + 180530e46: f3 0f 2a cf cvtsi2ss %edi,%xmm1 + 180530e4a: f3 41 0f 58 c8 addss %xmm8,%xmm1 + 180530e4f: f3 0f 5e c1 divss %xmm1,%xmm0 + 180530e53: 41 0f 28 cd movaps %xmm13,%xmm1 + 180530e57: e8 80 3e 4e 01 call 0x181a14cdc + 180530e5c: f3 0f 10 93 80 08 54 movss 0x540880(%rbx),%xmm2 + 180530e63: 00 + 180530e64: 0f 28 f0 movaps %xmm0,%xmm6 + 180530e67: 0f 28 da movaps %xmm2,%xmm3 + 180530e6a: f3 41 0f 59 f2 mulss %xmm10,%xmm6 + 180530e6f: f3 41 0f 59 dd mulss %xmm13,%xmm3 + 180530e74: 41 0f 28 c0 movaps %xmm8,%xmm0 + 180530e78: f3 41 0f 59 d3 mulss %xmm11,%xmm2 + 180530e7d: f3 repz + 180530e7e: 0f .byte 0xf + 180530e7f: 59 pop %rcx