File akira_3298d203c2acb68c474e5fdad8379181890b4403d6491c523c13730129be3f75.elf
Function:
    001d9970
    001d9970expf:
    001d9970push rbp
    001d9971mov rbp, rsp
    001d9974ucomiss x0, x0
    001d9977jp 0x1d9a9d
    001d997dmovd edx, x0
    001d9981mov eax, edx
    001d9983shr eax, 31
    001d9986mov ecx, edx
    001d9988and ecx, 0x7fffffff
    001d998ecmp ecx, 0x42aeac50
    001d9994jb 0x1d99bb
    001d9996cmp ecx, 0x7f800000
    001d999cja 0x1d9a9d
    001d99a2test edx, edx
    001d99a4js 0x1d99ea
    001d99a6cmp ecx, 0x42b17218
    001d99acjb 0x1d99ea
    001d99aemulss x0, [rip-0x146832]
    001d99b6jmp 0x1d9a9d
    001d99bb
    001d99bbloc_1d99bb:
    001d99bbcmp ecx, 0x3eb17219
    001d99c1jb 0x1d99d4
    001d99c3cmp ecx, 0x3f851592
    001d99c9ja 0x1d99fd
    001d99cbmov edi, eax
    001d99cdxor edi, 1
    001d99d0sub edi, eax
    001d99d2jmp 0x1d9a1b
    001d99d4
    001d99d4loc_1d99d4:
    001d99d4cmp ecx, 0x39000000
    001d99dajbe 0x1d9a95
    001d99e0xor edi, edi
    001d99e2xorps x2, x2
    001d99e5movaps x1, x0
    001d99e8jmp 0x1d9a3e
    001d99ea
    001d99ealoc_1d99ea:
    001d99eatest edx, edx
    001d99ecjns 0x1d99fd
    001d99eexorps x1, x1
    001d99f1cmp ecx, 0x42cff1b4
    001d99f7ja 0x1d9aa0
    001d99fd
    001d99fdloc_1d99fd:
    001d99fdmovss x1, [rip-0x146899]
    001d9a05mulss x1, x0
    001d9a09mov eax, eax
    001d9a0blea rcx, [rip-0x14602a]
    001d9a12addss x1, [rcx+4*rax]
    001d9a17cvttss2si edi, x1
    001d9a1b
    001d9a1bloc_1d9a1b:
    001d9a1bcvtsi2ss x2, edi
    001d9a1fmovss x1, [rip-0x1468b7]
    001d9a27mulss x1, x2
    001d9a2baddss x0, x1
    001d9a2fmulss x2, [rip-0x1468c3]
    001d9a37movaps x1, x0
    001d9a3asubss x1, x2
    001d9a3e
    001d9a3eloc_1d9a3e:
    001d9a3emovaps x3, x1
    001d9a41mulss x3, x1
    001d9a45movss x4, [rip-0x1468d5]
    001d9a4dmulss x4, x3
    001d9a51addss x4, [rip-0x1468dd]
    001d9a59mulss x4, x3
    001d9a5dmovaps x3, x1
    001d9a60subss x3, x4
    001d9a64mulss x1, x3
    001d9a68movss x4, [rip-0x1468f0]
    001d9a70subss x4, x3
    001d9a74divss x1, x4
    001d9a78subss x1, x2
    001d9a7caddss x1, x0
    001d9a80addss x1, [rip-0x146920]
    001d9a88test edi, edi
    001d9a8aje 0x1d9aa0
    001d9a8cmovaps x0, x1
    001d9a8fpop rbp
    001d9a90jmp 0x1d5c00
    001d9a95
    001d9a95loc_1d9a95:
    001d9a95addss x0, [rip-0x146935]
    001d9a9d
    001d9a9dloc_1d9a9d:
    001d9a9dmovaps x1, x0
    001d9aa0
    001d9aa0loc_1d9aa0:
    001d9aa0movaps x0, x1
    001d9aa3pop rbp
    001d9aa4ret
    001d9970
    001d9aa5
    001d9aa5 // align 0x10
    001d9ab0
    001d9ab0exp:
    001d9ab0push rbp
    001d9ab1mov rbp, rsp
    001d9ab4ucomisd x0, x0
    001d9ab8jp 0x1d9c20
    001d9abemovq rax, x0
    001d9ac3mov rcx, rax
    001d9ac6shr rcx, 32
    001d9acashr rax, 63
    001d9aceand ecx, 0x7fffffff
    001d9ad4cmp ecx, 0x4086232b
    001d9adajb 0x1d9b00
    001d9adccmp ecx, 0x7ff00000
    001d9ae2ja 0x1d9c20
    001d9ae8ucomisd x0, [rip-0x146490]
    001d9af0jbe 0x1d9b46
    001d9af2movsd_xmm x1, [rip-0x1464a2]
    001d9afa
    001d9afaloc_1d9afa:
    001d9afamovapd x0, x1
    001d9afepop rbp
    001d9affret
    001d9b00
    001d9b00loc_1d9b00:
    001d9b00cmp ecx, 0x3fd62e43
    001d9b06jb 0x1d9b2e
    001d9b08cmp ecx, 0x3ff0a2b2
    001d9b0ejbe 0x1d9b68
    001d9b10
    001d9b10loc_1d9b10:
    001d9b10movsd_xmm x1, [rip-0x1464a0]
    001d9b18mulsd x1, x0
    001d9b1clea rcx, [rip-0x145973]
    001d9b23addsd x1, [rcx+8*rax]
    001d9b28cvttsd2si edi, x1
    001d9b2cjmp 0x1d9b6f
    001d9b2e
    001d9b2eloc_1d9b2e:
    001d9b2ecmp ecx, 0x3e300000
    001d9b34jbe 0x1d9c18
    001d9b3axorpd x2, x2
    001d9b3exor edi, edi
    001d9b40movapd x1, x0
    001d9b44jmp 0x1d9b96
    001d9b46
    001d9b46loc_1d9b46:
    001d9b46movsd_xmm x1, [rip-0x1464e6]
    001d9b4eucomisd x1, x0
    001d9b52jbe 0x1d9b10
    001d9b54xorpd x1, x1
    001d9b58movsd_xmm x2, [rip-0x1464f0]
    001d9b60ucomisd x2, x0
    001d9b64ja 0x1d9afa
    001d9b66jmp 0x1d9b10
    001d9b68
    001d9b68loc_1d9b68:
    001d9b68mov edi, eax
    001d9b6axor edi, 1
    001d9b6dsub edi, eax
    001d9b6f
    001d9b6floc_1d9b6f:
    001d9b6fxorps x2, x2
    001d9b72cvtsi2sd x2, edi
    001d9b76movsd_xmm x1, [rip-0x1464fe]
    001d9b7emulsd x1, x2
    001d9b82addsd x0, x1
    001d9b86mulsd x2, [rip-0x146506]
    001d9b8emovapd x1, x0
    001d9b92subsd x1, x2
    001d9b96
    001d9b96loc_1d9b96:
    001d9b96movapd x3, x1
    001d9b9amulsd x3, x1
    001d9b9emovsd_xmm x4, [rip-0x146516]
    001d9ba6mulsd x4, x3
    001d9baaaddsd x4, [rip-0x14651a]
    001d9bb2mulsd x4, x3
    001d9bb6addsd x4, [rip-0x14651e]
    001d9bbemulsd x4, x3
    001d9bc2addsd x4, [rip-0x146522]
    001d9bcamulsd x4, x3
    001d9bceaddsd x4, [rip-0x146526]
    001d9bd6mulsd x4, x3
    001d9bdamovapd x3, x1
    001d9bdesubsd x3, x4
    001d9be2mulsd x1, x3
    001d9be6movsd_xmm x4, [rip-0x146536]
    001d9beesubsd x4, x3
    001d9bf2divsd x1, x4
    001d9bf6subsd x1, x2
    001d9bfaaddsd x1, x0
    001d9bfeaddsd x1, [rip-0x1465b6]
    001d9c06test edi, edi
    001d9c08je 0x1d9afa
    001d9c0emovapd x0, x1
    001d9c12pop rbp
    001d9c13jmp 0x1d5d40
    001d9c18
    001d9c18loc_1d9c18:
    001d9c18addsd x0, [rip-0x1465d0]
    001d9c20
    001d9c20loc_1d9c20:
    001d9c20movapd x1, x0
    001d9c24movapd x0, x1
    001d9c28pop rbp
    001d9c29ret
    001d9ab0
    001d9c2a
    001d9c2a // align 0x10
    001d9c30
    001d9c30__expx:
    001d9c30push rbp
    001d9c31mov rbp, rsp
    001d9c34push r15
    001d9c36push r14
    001d9c38push rbx
    001d9c39sub rsp, 56
    001d9c3dmov r15, 0x8000000000000000
    001d9c47mov eax, [rbp+24]
    001d9c4amov rdx, [rbp+16]
    001d9c4emov edi, eax
    001d9c50mov r14, 0x7fff000000000000
    001d9c5aand di, 32767
    001d9c5fjne 0x1d9c71
    001d9c61xor esi, esi
    001d9c63mov ecx, 0
    001d9c68test rdx, rdx
    001d9c6bje 0x1d9cf5
    001d9c71
    001d9c71loc_1d9c71:
    001d9c71movzx ecx, di
    001d9c74cmp ecx, 32767
    001d9c7ajne 0x1d9c8f
    001d9c7cmov rsi, rdx
    001d9c7fshl rsi, 49
    001d9c83shr rdx, 15
    001d9c87or rdx, r14
    001d9c8amov rcx, rdx
    001d9c8djmp 0x1d9cf5
    001d9c8f
    001d9c8floc_1d9c8f:
    001d9c8ftest rdx, rdx
    001d9c92js 0x1d9ca0
    001d9c94je 0x1d9cbb
    001d9c96bsr rsi, rdx
    001d9c9axor rsi, 63
    001d9c9ejmp 0x1d9cc0
    001d9ca0
    001d9ca0loc_1d9ca0:
    001d9ca0lea rsi, [r15-1]
    001d9ca4and rdx, rsi
    001d9ca7mov rsi, rdx
    001d9caashl rsi, 49
    001d9caeshr rdx, 15
    001d9cb2shl rcx, 48
    001d9cb6or rcx, rdx
    001d9cb9jmp 0x1d9cf5
    001d9cbb
    001d9cbbloc_1d9cbb:
    001d9cbbmov esi, 64
    001d9cc0
    001d9cc0loc_1d9cc0:
    001d9cc0mov ecx, esi
    001d9cc2add cl, 50
    001d9cc5xor edi, edi
    001d9cc7shld rdi, rdx, cl
    001d9ccbshl rdx, cl
    001d9ccexor ebx, ebx
    001d9cd0test cl, 64
    001d9cd3cmovne rdi, rdx
    001d9cd7cmovne rdx, rbx
    001d9cdbmov rbx, 0x1000000000000
    001d9ce5xor rbx, rdi
    001d9ce8lea ecx, [rsi+1]
    001d9cebshl rcx, 48
    001d9cefor rcx, rbx
    001d9cf2mov rsi, rdx
    001d9cf5
    001d9cf5loc_1d9cf5:
    001d9cf5and eax, 32768
    001d9cfashl rax, 48
    001d9cfeor rax, rcx
    001d9d01mov [rbp-80], rsi
    001d9d05mov [rbp-72], rax
    001d9d09movaps x0, [rbp-80]
    001d9d0dcall expq
    001d9d12movaps [rbp-64], x0
    001d9d16mov rdi, [rbp-64]
    001d9d1amov rax, [rbp-56]
    001d9d1emov rbx, 0x7fffffffffffffff
    001d9d28mov rsi, rax
    001d9d2bshld rsi, rdi, 15
    001d9d30and rbx, rax
    001d9d33mov rcx, rsi
    001d9d36or rcx, r15
    001d9d39mov rdx, rdi
    001d9d3cneg rdx
    001d9d3fsbb r14, rbx
    001d9d42mov dx, 32767
    001d9d46jb 0x1d9dba
    001d9d48shr rbx, 48
    001d9d4cmov edx, ebx
    001d9d4emov rbx, 0x1ffffffffffff
    001d9d58and rdi, rbx
    001d9d5bmov rbx, 0x1000000000001
    001d9d65cmp rdi, rbx
    001d9d68jb 0x1d9d84
    001d9d6amov rsi, rcx
    001d9d6dadd rsi, 1
    001d9d71adc dx, 0
    001d9d75xor esi, esi
    001d9d77add rcx, 1
    001d9d7bcmove rsi, r15
    001d9d7for rcx, rsi
    001d9d82jmp 0x1d9dac
    001d9d84
    001d9d84loc_1d9d84:
    001d9d84mov rbx, 0x1000000000000
    001d9d8ecmp rdi, rbx
    001d9d91jne 0x1d9dac
    001d9d93and esi, 1
    001d9d96mov rdi, rcx
    001d9d99add rdi, rsi
    001d9d9cadc dx, 0
    001d9da0xor edi, edi
    001d9da2add rcx, rsi
    001d9da5cmovb rdi, r15
    001d9da9or rcx, rdi
    001d9dac
    001d9dacloc_1d9dac:
    001d9dacadd r15, -1
    001d9db0and r15, rcx
    001d9db3test dx, dx
    001d9db6cmove rcx, r15
    001d9dba
    001d9dbaloc_1d9dba:
    001d9dbashr rax, 48
    001d9dbeand eax, 32768
    001d9dc3or edx, eax
    001d9dc5mov [rbp-48], rcx
    001d9dc9mov [rbp-40], dx
    001d9dcdfld [rbp-48]
    001d9dd0add rsp, 56
    001d9dd4pop rbx
    001d9dd5pop r14
    001d9dd7pop r15
    001d9dd9pop rbp
    001d9ddaret
    001d9c30
    001d9ddb
    001d9ddb // align 0x10
    001d9de0
    001d9de0expq:
    001d9de0push rbp
    001d9de1mov rbp, rsp
    001d9de4push rbx
    001d9de5sub rsp, 40
    001d9de9movaps [rbp-48], x0
    001d9dedmov rdi, [rbp-48]
    001d9df1mov rdx, [rbp-40]
    001d9df5mov rcx, 0x7fffffffffffffff
    001d9dffand rcx, rdx
    001d9e02mov rax, 0xc3ff000000000000
    001d9e0cadd rax, rcx
    001d9e0fmov rsi, 0xbc01000000000000
    001d9e19add rsi, rcx
    001d9e1ccmp rax, rsi
    001d9e1fjae 0x1d9e60
    001d9e21mov rcx, 0x4000000000000000
    001d9e2bmov rax, rdx
    001d9e2eshld rax, rdi, 4
    001d9e33lea rsi, [rax+rcx]
    001d9e37mov rbx, 0xfffffffffffffff
    001d9e41and rbx, rdi
    001d9e44mov rdi, 0x800000000000000
    001d9e4ecmp rbx, rdi
    001d9e51jbe 0x1d9e99
    001d9e53lea rsi, [rcx+rax]
    001d9e57add rsi, 1
    001d9e5bjmp 0x1d9f71
    001d9e60
    001d9e60loc_1d9e60:
    001d9e60mov rax, rdi
    001d9e63neg rax
    001d9e66mov rax, 0x7fff000000000000
    001d9e70sbb rax, rcx
    001d9e73jae 0x1d9eaa
    001d9e75shrd rdi, rdx, 60
    001d9e7amov rax, 0x7ffffffffffff
    001d9e84and rax, rdi
    001d9e87mov rsi, 0x7ff8000000000000
    001d9e91or rsi, rax
    001d9e94jmp 0x1d9f71
    001d9e99
    001d9e99loc_1d9e99:
    001d9e99jne 0x1d9f71
    001d9e9f
    001d9e9floc_1d9e9f:
    001d9e9fand eax, 1
    001d9ea2add rsi, rax
    001d9ea5jmp 0x1d9f71
    001d9eaa
    001d9eaaloc_1d9eaa:
    001d9eaashr rcx, 48
    001d9eaecmp ecx, 17406
    001d9eb4jbe 0x1d9ec9
    001d9eb6mov rsi, 0x7fefffffffffffff
    001d9ec0add rsi, 1
    001d9ec4jmp 0x1d9f71
    001d9ec9
    001d9ec9loc_1d9ec9:
    001d9ec9mov eax, 15361
    001d9ecesub eax, ecx
    001d9ed0cmp eax, 112
    001d9ed3jbe 0x1d9edc
    001d9ed5xor esi, esi
    001d9ed7jmp 0x1d9f71
    001d9edc
    001d9edcloc_1d9edc:
    001d9edcmov rbx, 0xffffffffffff
    001d9ee6and rbx, rdx
    001d9ee9mov rsi, 0x1000000000000
    001d9ef3or rsi, rbx
    001d9ef6add cl, -1
    001d9ef9mov r8, rsi
    001d9efcshld r8, rdi, cl
    001d9f00mov rbx, rdi
    001d9f03shl rbx, cl
    001d9f06xor r9l, r9l
    001d9f09test cl, 64
    001d9f0ccmovne r8, rbx
    001d9f10cmovne rbx, r9
    001d9f14xor r10l, r10l
    001d9f17or rbx, r8
    001d9f1asetne r10b
    001d9f1emov ecx, eax
    001d9f20shrd rdi, rsi, cl
    001d9f24shr rsi, cl
    001d9f27test al, 64
    001d9f29cmovne rdi, rsi
    001d9f2dcmovne rsi, r9
    001d9f31shld rsi, rdi, 4
    001d9f36mov rax, 0xfffffffffffffff
    001d9f40and rax, rdi
    001d9f43or rax, r10
    001d9f46mov rcx, 0x800000000000001
    001d9f50cmp rax, rcx
    001d9f53jb 0x1d9f5b
    001d9f55add rsi, 1
    001d9f59jmp 0x1d9f71
    001d9f5b
    001d9f5bloc_1d9f5b:
    001d9f5bmov rcx, 0x800000000000000
    001d9f65cmp rax, rcx
    001d9f68jne 0x1d9f71
    001d9f6amov eax, esi
    001d9f6cjmp 0x1d9e9f
    001d9f71
    001d9f71loc_1d9f71:
    001d9f71mov rbx, 0x8000000000000000
    001d9f7band rdx, rbx
    001d9f7eor rdx, rsi
    001d9f81movq x0, rdx
    001d9f86call exp
    001d9f8bmovq rax, x0
    001d9f90lea rdx, [rbx-1]
    001d9f94and rdx, rax
    001d9f97mov rcx, 0xfff0000000000000
    001d9fa1add rcx, rdx
    001d9fa4shr rcx, 53
    001d9fa8cmp ecx, 1022
    001d9faeja 0x1d9fca
    001d9fb0mov rcx, rdx
    001d9fb3shl rcx, 60
    001d9fb7shr rdx, 4
    001d9fbbmov rsi, 0x3c00000000000000
    001d9fc5add rsi, rdx
    001d9fc8jmp 0x1da047
    001d9fca
    001d9fcaloc_1d9fca:
    001d9fcamov rcx, rdx
    001d9fcdshr rcx, 52
    001d9fd1cmp ecx, 2047
    001d9fd7jb 0x1d9ff6
    001d9fd9mov rcx, rax
    001d9fdcshl rcx, 60
    001d9fe0mov rdx, rax
    001d9fe3shr rdx, 4
    001d9fe7mov rsi, 0x7fff000000000000
    001d9ff1or rsi, rdx
    001d9ff4jmp 0x1da047
    001d9ff6
    001d9ff6loc_1d9ff6:
    001d9ff6test rdx, rdx
    001d9ff9je 0x1da043
    001d9ffbbsr rcx, rdx
    001d9fffxor rcx, 63
    001da003lea edi, [rcx+117]
    001da006add cl, 49
    001da009xor esi, esi
    001da00bshld rsi, rdx, cl
    001da00fand edi, 127
    001da012xor r8l, r8l
    001da015shl rdx, cl
    001da018test cl, 64
    001da01bcmovne rsi, rdx
    001da01fcmovne rdx, r8
    001da023mov rcx, 0x1000000000000
    001da02dxor rcx, rsi
    001da030mov esi, 15361
    001da035sub esi, edi
    001da037shl rsi, 48
    001da03bor rsi, rcx
    001da03emov rcx, rdx
    001da041jmp 0x1da047
    001da043
    001da043loc_1da043:
    001da043xor ecx, ecx
    001da045xor esi, esi
    001da047
    001da047loc_1da047:
    001da047and rax, rbx
    001da04aor rax, rsi
    001da04dmov [rbp-32], rcx
    001da051mov [rbp-24], rax
    001da055movaps x0, [rbp-32]
    001da059add rsp, 40
    001da05dpop rbx
    001da05epop rbp
    001da05fret
    001d9de0
    001da060
    001da060expl:
    001da060push rbp
    001da061mov rbp, rsp
    001da064pop rbp
    001da065jmp 0x1d9c30
    001da060
    001da06a
    001da06a // align 0x10
    001da070
    001da070exp2f:
    001da070push rbp
    001da071mov rbp, rsp
    001da074movd eax, x0
    001da078mov ecx, eax
    001da07aand ecx, 0x7fffffff
    001da080cmp ecx, 0x42fc0001
    001da086jb 0x1da0a5
    001da088cmp ecx, 0x7f800000
    001da08eja 0x1da14b
    001da094cmp eax, 0x43000000
    001da099jl 0x1da0b7
    001da09bmulss x0, [rip-0x146eff]
    001da0a3pop rbp
    001da0a4ret
    001da0a5
    001da0a5loc_1da0a5:
    001da0a5cmp ecx, 0x33000001
    001da0abjae 0x1da0bf
    001da0adaddss x0, [rip-0x146f1d]
    001da0b5pop rbp
    001da0b6ret
    001da0b7
    001da0b7loc_1da0b7:
    001da0b7test eax, eax
    001da0b9js 0x1da14d
    001da0bf
    001da0bfloc_1da0bf:
    001da0bfmovss x2, [rip-0x146f2b]
    001da0c7addss x2, x0
    001da0cbmovd eax, x2
    001da0cfadd eax, 8
    001da0d2mov ecx, eax
    001da0d4shr ecx, 4
    001da0d7add ecx, 1023
    001da0ddshl rcx, 52
    001da0e1movq x1, rcx
    001da0e6and eax, 15
    001da0e9addss x2, [rip-0x146f51]
    001da0f1subss x0, x2
    001da0f5cvtss2sd x0, x0
    001da0f9lea rcx, [rip-0x145f28]
    001da100movsd_xmm x2, [rcx+8*rax]
    001da105movaps x3, x0
    001da108mulsd x3, x0
    001da10cmovapd x4, x2
    001da110mulsd x4, x0
    001da114mulsd x3, x4
    001da118unpcklpd x0, x0
    001da11cmulpd x0, [rip-0x146394]
    001da124addpd x0, [rip-0x14638c]
    001da12cunpcklpd x4, x3
    001da130mulpd x4, x0
    001da134addsd x2, x4
    001da138unpckhpd x4, x4
    001da13caddsd x4, x2
    001da140mulsd x4, x1
    001da144xorps x0, x0
    001da147cvtsd2ss x0, x4
    001da14b
    001da14bloc_1da14b:
    001da14bpop rbp
    001da14cret
    001da14d
    001da14dloc_1da14d:
    001da14dxorps x0, x0
    001da150cmp eax, 0xffffffffc315ffff
    001da155ja 0x1da14b
    001da157movzx eax, ax
    001da15atest eax, eax
    001da15cpop rbp
    001da15dret
    001da070
    001da15e
    001da15e // align 0x10
    001da160
    001da160exp2:
    001da160push rbp
    001da161mov rbp, rsp
    001da164ucomisd x0, x0
    001da168jp 0x1da2ad
    001da16emovq rax, x0
    001da173mov rcx, rax
    001da176shr rcx, 32
    001da17aand ecx, 0x7fffffff
    001da180cmp ecx, 0x408ff000
    001da186jb 0x1da1a3
    001da188cmp ecx, 0x40900000
    001da18ejb 0x1da1bd
    001da190test rax, rax
    001da193js 0x1da1bd
    001da195movsd_xmm x1, [rip-0x146acd]
    001da19d
    001da19dloc_1da19d:
    001da19dmovapd x0, x1
    001da1a1pop rbp
    001da1a2ret
    001da1a3
    001da1a3loc_1da1a3:
    001da1a3cmp ecx, 0x3c900000
    001da1a9jae 0x1da20c
    001da1abaddsd x0, [rip-0x146aeb]
    001da1b3movapd x1, x0
    001da1b7movapd x0, x1
    001da1bbpop rbp
    001da1bcret
    001da1bd
    001da1bdloc_1da1bd:
    001da1bdcmp ecx, 0x7ff00000
    001da1c3jb 0x1da1d7
    001da1c5movsd_xmm x1, [rip-0x146aa5]
    001da1cddivsd x1, x0
    001da1d1movapd x0, x1
    001da1d5pop rbp
    001da1d6ret
    001da1d7
    001da1d7loc_1da1d7:
    001da1d7test rax, rax
    001da1dajns 0x1da20c
    001da1dcmovsd_xmm x2, [rip-0x146b0c]
    001da1e4ucomisd x2, x0
    001da1e8jae 0x1da202
    001da1eamovsd_xmm x1, [rip-0x146b12]
    001da1f2addsd x1, x0
    001da1f6addsd x1, [rip-0x146b16]
    001da1feucomisd x1, x0
    001da202
    001da202loc_1da202:
    001da202xorpd x1, x1
    001da206ucomisd x2, x0
    001da20ajae 0x1da19d
    001da20c
    001da20cloc_1da20c:
    001da20cmovsd_xmm x1, [rip-0x146b24]
    001da214addsd x1, x0
    001da218movq rax, x1
    001da21dsub eax, -128
    001da220mov ecx, eax
    001da222and ecx, -256
    001da228lea edi, [rcx+255]
    001da22etest ecx, ecx
    001da230cmovns edi, ecx
    001da233addsd x1, [rip-0x146b43]
    001da23bmovzx eax, al
    001da23esubsd x0, x1
    001da242add eax, eax
    001da244lea rcx, [rip-0x145ff3]
    001da24bmovsd_xmm x2, [rcx+8*rax]
    001da250or eax, 1
    001da253subsd x0, [rcx+8*rax]
    001da258movsd_xmm x1, [rip-0x146b60]
    001da260mulsd x1, x0
    001da264addsd x1, [rip-0x146b64]
    001da26csar edi, 8
    001da26fmulsd x1, x0
    001da273addsd x1, [rip-0x146b6b]
    001da27bmovapd x3, x2
    001da27fmulsd x1, x0
    001da283addsd x1, [rip-0x146b73]
    001da28bmulsd x3, x0
    001da28fmulsd x1, x0
    001da293addsd x1, [rip-0x146b7b]
    001da29bmulsd x1, x3
    001da29faddsd x1, x2
    001da2a3movapd x0, x1
    001da2a7pop rbp
    001da2a8jmp 0x1d5d40
    001da2ad
    001da2adloc_1da2ad:
    001da2admovsd_xmm x1, [rip-0x146bf5]
    001da2b5movaps x0, x1
    001da2b8pop rbp
    001da2b9ret
    001da160
    001da2ba
    001da2ba // align 0x10
    001da2c0
    001da2c0__exp2x:
    001da2c0push rbp
    001da2c1mov rbp, rsp
    001da2c4push r15
    001da2c6push r14
    001da2c8push rbx
    001da2c9sub rsp, 56
    001da2cdmov r15, 0x8000000000000000
    001da2d7mov eax, [rbp+24]
    001da2damov rdx, [rbp+16]
    001da2demov edi, eax
    001da2e0mov r14, 0x7fff000000000000
    001da2eaand di, 32767
    001da2efjne 0x1da301
    001da2f1xor esi, esi
    001da2f3mov ecx, 0
    001da2f8test rdx, rdx
    001da2fbje 0x1da385
    001da301
    001da301loc_1da301:
    001da301movzx ecx, di
    001da304cmp ecx, 32767
    001da30ajne 0x1da31f
    001da30cmov rsi, rdx
    001da30fshl rsi, 49
    001da313shr rdx, 15
    001da317or rdx, r14
    001da31amov rcx, rdx
    001da31djmp 0x1da385
    001da31f
    001da31floc_1da31f:
    001da31ftest rdx, rdx
    001da322js 0x1da330
    001da324je 0x1da34b
    001da326bsr rsi, rdx
    001da32axor rsi, 63
    001da32ejmp 0x1da350
    001da330
    001da330loc_1da330:
    001da330lea rsi, [r15-1]
    001da334and rdx, rsi
    001da337mov rsi, rdx
    001da33ashl rsi, 49
    001da33eshr rdx, 15
    001da342shl rcx, 48
    001da346or rcx, rdx
    001da349jmp 0x1da385
    001da34b
    001da34bloc_1da34b:
    001da34bmov esi, 64
    001da350
    001da350loc_1da350:
    001da350mov ecx, esi
    001da352add cl, 50
    001da355xor edi, edi
    001da357shld rdi, rdx, cl
    001da35bshl rdx, cl
    001da35exor ebx, ebx
    001da360test cl, 64
    001da363cmovne rdi, rdx
    001da367cmovne rdx, rbx
    001da36bmov rbx, 0x1000000000000
    001da375xor rbx, rdi
    001da378lea ecx, [rsi+1]
    001da37bshl rcx, 48
    001da37for rcx, rbx
    001da382mov rsi, rdx
    001da385
    001da385loc_1da385:
    001da385and eax, 32768
    001da38ashl rax, 48
    001da38eor rax, rcx
    001da391mov [rbp-80], rsi
    001da395mov [rbp-72], rax
    001da399movaps x0, [rbp-80]
    001da39dcall exp2q
    001da3a2movaps [rbp-64], x0
    001da3a6mov rdi, [rbp-64]
    001da3aamov rax, [rbp-56]
    001da3aemov rbx, 0x7fffffffffffffff
    001da3b8mov rsi, rax
    001da3bbshld rsi, rdi, 15
    001da3c0and rbx, rax
    001da3c3mov rcx, rsi
    001da3c6or rcx, r15
    001da3c9mov rdx, rdi
    001da3ccneg rdx
    001da3cfsbb r14, rbx
    001da3d2mov dx, 32767
    001da3d6jb 0x1da44a
    001da3d8shr rbx, 48
    001da3dcmov edx, ebx
    001da3demov rbx, 0x1ffffffffffff
    001da3e8and rdi, rbx
    001da3ebmov rbx, 0x1000000000001
    001da3f5cmp rdi, rbx
    001da3f8jb 0x1da414
    001da3famov rsi, rcx
    001da3fdadd rsi, 1
    001da401adc dx, 0
    001da405xor esi, esi
    001da407add rcx, 1
    001da40bcmove rsi, r15
    001da40for rcx, rsi
    001da412jmp 0x1da43c
    001da414
    001da414loc_1da414:
    001da414mov rbx, 0x1000000000000
    001da41ecmp rdi, rbx
    001da421jne 0x1da43c
    001da423and esi, 1
    001da426mov rdi, rcx
    001da429add rdi, rsi
    001da42cadc dx, 0
    001da430xor edi, edi
    001da432add rcx, rsi
    001da435cmovb rdi, r15
    001da439or rcx, rdi
    001da43c
    001da43cloc_1da43c:
    001da43cadd r15, -1
    001da440and r15, rcx
    001da443test dx, dx
    001da446cmove rcx, r15
    001da44a
    001da44aloc_1da44a:
    001da44ashr rax, 48
    001da44eand eax, 32768
    001da453or edx, eax
    001da455mov [rbp-48], rcx
    001da459mov [rbp-40], dx
    001da45dfld [rbp-48]
    001da460add rsp, 56
    001da464pop rbx
    001da465pop r14
    001da467pop r15
    001da469pop rbp
    001da46aret
    001da2c0
    001da46b
    001da46b // align 0x10
    001da470
    001da470exp2q:
    001da470push rbp
    001da471mov rbp, rsp
    001da474push rbx
    001da475sub rsp, 40
    001da479movaps [rbp-48], x0
    001da47dmov rdi, [rbp-48]
    001da481mov rdx, [rbp-40]
    001da485mov rcx, 0x7fffffffffffffff
    001da48fand rcx, rdx
    001da492mov rax, 0xc3ff000000000000
    001da49cadd rax, rcx
    001da49fmov rsi, 0xbc01000000000000
    001da4a9add rsi, rcx
    001da4accmp rax, rsi
    001da4afjae 0x1da4f0
    001da4b1mov rcx, 0x4000000000000000
    001da4bbmov rax, rdx
    001da4beshld rax, rdi, 4
    001da4c3lea rsi, [rax+rcx]
    001da4c7mov rbx, 0xfffffffffffffff
    001da4d1and rbx, rdi
    001da4d4mov rdi, 0x800000000000000
    001da4decmp rbx, rdi
    001da4e1jbe 0x1da529
    001da4e3lea rsi, [rcx+rax]
    001da4e7add rsi, 1
    001da4ebjmp 0x1da601
    001da4f0
    001da4f0loc_1da4f0:
    001da4f0mov rax, rdi
    001da4f3neg rax
    001da4f6mov rax, 0x7fff000000000000
    001da500sbb rax, rcx
    001da503jae 0x1da53a
    001da505shrd rdi, rdx, 60
    001da50amov rax, 0x7ffffffffffff
    001da514and rax, rdi
    001da517mov rsi, 0x7ff8000000000000
    001da521or rsi, rax
    001da524jmp 0x1da601
    001da529
    001da529loc_1da529:
    001da529jne 0x1da601
    001da52f
    001da52floc_1da52f:
    001da52fand eax, 1
    001da532add rsi, rax
    001da535jmp 0x1da601
    001da53a
    001da53aloc_1da53a:
    001da53ashr rcx, 48
    001da53ecmp ecx, 17406
    001da544jbe 0x1da559
    001da546mov rsi, 0x7fefffffffffffff
    001da550add rsi, 1
    001da554jmp 0x1da601
    001da559
    001da559loc_1da559:
    001da559mov eax, 15361
    001da55esub eax, ecx
    001da560cmp eax, 112
    001da563jbe 0x1da56c
    001da565xor esi, esi
    001da567jmp 0x1da601
    001da56c
    001da56cloc_1da56c:
    001da56cmov rbx, 0xffffffffffff
    001da576and rbx, rdx
    001da579mov rsi, 0x1000000000000
    001da583or rsi, rbx
    001da586add cl, -1
    001da589mov r8, rsi
    001da58cshld r8, rdi, cl
    001da590mov rbx, rdi
    001da593shl rbx, cl
    001da596xor r9l, r9l
    001da599test cl, 64
    001da59ccmovne r8, rbx
    001da5a0cmovne rbx, r9
    001da5a4xor r10l, r10l
    001da5a7or rbx, r8
    001da5aasetne r10b
    001da5aemov ecx, eax
    001da5b0shrd rdi, rsi, cl
    001da5b4shr rsi, cl
    001da5b7test al, 64
    001da5b9cmovne rdi, rsi
    001da5bdcmovne rsi, r9
    001da5c1shld rsi, rdi, 4
    001da5c6mov rax, 0xfffffffffffffff
    001da5d0and rax, rdi
    001da5d3or rax, r10
    001da5d6mov rcx, 0x800000000000001
    001da5e0cmp rax, rcx
    001da5e3jb 0x1da5eb
    001da5e5add rsi, 1
    001da5e9jmp 0x1da601
    001da5eb
    001da5ebloc_1da5eb:
    001da5ebmov rcx, 0x800000000000000
    001da5f5cmp rax, rcx
    001da5f8jne 0x1da601
    001da5famov eax, esi
    001da5fcjmp 0x1da52f
    001da601
    001da601loc_1da601:
    001da601mov rbx, 0x8000000000000000
    001da60band rdx, rbx
    001da60eor rdx, rsi
    001da611movq x0, rdx
    001da616call exp2
    001da61bmovq rax, x0
    001da620lea rdx, [rbx-1]
    001da624and rdx, rax
    001da627mov rcx, 0xfff0000000000000
    001da631add rcx, rdx
    001da634shr rcx, 53
    001da638cmp ecx, 1022
    001da63eja 0x1da65a
    001da640mov rcx, rdx
    001da643shl rcx, 60
    001da647shr rdx, 4
    001da64bmov rsi, 0x3c00000000000000
    001da655add rsi, rdx
    001da658jmp 0x1da6d7
    001da65a
    001da65aloc_1da65a:
    001da65amov rcx, rdx
    001da65dshr rcx, 52
    001da661cmp ecx, 2047
    001da667jb 0x1da686
    001da669mov rcx, rax
    001da66cshl rcx, 60
    001da670mov rdx, rax
    001da673shr rdx, 4
    001da677mov rsi, 0x7fff000000000000
    001da681or rsi, rdx
    001da684jmp 0x1da6d7
    001da686
    001da686loc_1da686:
    001da686test rdx, rdx
    001da689je 0x1da6d3
    001da68bbsr rcx, rdx
    001da68fxor rcx, 63
    001da693lea edi, [rcx+117]
    001da696add cl, 49
    001da699xor esi, esi
    001da69bshld rsi, rdx, cl
    001da69fand edi, 127
    001da6a2xor r8l, r8l
    001da6a5shl rdx, cl
    001da6a8test cl, 64
    001da6abcmovne rsi, rdx
    001da6afcmovne rdx, r8
    001da6b3mov rcx, 0x1000000000000
    001da6bdxor rcx, rsi
    001da6c0mov esi, 15361
    001da6c5sub esi, edi
    001da6c7shl rsi, 48
    001da6cbor rsi, rcx
    001da6cemov rcx, rdx
    001da6d1jmp 0x1da6d7
    001da6d3
    001da6d3loc_1da6d3:
    001da6d3xor ecx, ecx
    001da6d5xor esi, esi
    001da6d7
    001da6d7loc_1da6d7:
    001da6d7and rax, rbx
    001da6daor rax, rsi
    001da6ddmov [rbp-32], rcx
    001da6e1mov [rbp-24], rax
    001da6e5movaps x0, [rbp-32]
    001da6e9add rsp, 40
    001da6edpop rbx
    001da6eepop rbp
    001da6efret
    001da470
    001da6f0
    001da6f0exp2l:
    001da6f0push rbp
    001da6f1mov rbp, rsp
    001da6f4pop rbp
    001da6f5jmp 0x1da2c0
    001da6f0
    001da6fa
    001da6fa // align 0x10
    001da700
    001da700fabsf:
    001da700push rbp
    001da701mov rbp, rsp
    001da704andps x0, [rip-0x14695b]
    001da70bpop rbp
    001da70cret
    001da700
    001da70d
    001da70d // align 0x10
    001da710
    001da710fabs:
    001da710push rbp
    001da711mov rbp, rsp
    001da714andps x0, [rip-0x14695b]
    001da71bpop rbp
    001da71cret
    001da710
    001da71d
    001da71d // align 0x10
    001da720
    001da720__fabsx:
    001da720push rbp
    001da721mov rbp, rsp
    001da724movzx eax, [rbp+24]
    001da728mov rcx, [rbp+16]
    001da72cmov [rbp-16], rcx
    001da730and eax, 32767
    001da735mov [rbp-8], ax
    001da739fld [rbp-16]
    001da73cpop rbp
    001da73dret
    001da720
    001da73e
    001da73e // align 0x10
    001da740
    001da740floorf:
    001da740xorps x1, x1
    001da743ucomiss x0, x1
    001da746jne 0x1da74a
    001da748jnp 0x1da79f
    001da74a
    001da74aloc_1da74a:
    001da74amovd eax, x0
    001da74emov ecx, eax
    001da750shr ecx, 23
    001da753movzx edx, cl
    001da756cmp edx, 150
    001da75cjae 0x1da79f
    001da75ecmp edx, 127
    001da761jb 0x1da78b
    001da763add ecx, 1
    001da766and ecx, 31
    001da769mov edx, 0x7fffff
    001da76eshr edx, cl
    001da770test edx, eax
    001da772je 0x1da79f
    001da774mov esi, eax
    001da776sar esi, 31
    001da779mov edi, 0xffffffffff800000
    001da77esar edi, cl
    001da780and esi, edx
    001da782add esi, eax
    001da784and edi, esi
    001da786movd x0, edi
    001da78aret
    001da78b
    001da78bloc_1da78b:
    001da78bxorps x0, x0
    001da78etest eax, eax
    001da790jns 0x1da79f
    001da792push rbp
    001da793mov rbp, rsp
    001da796movss x0, [rip-0x1475f6]
    001da79epop rbp
    001da79f
    001da79floc_1da79f:
    001da79fret
    001da740
    001da7a0
    001da7a0floor:
    001da7a0push rbp
    001da7a1mov rbp, rsp
    001da7a4movq rax, x0
    001da7a9mov rcx, rax
    001da7acshr rcx, 52
    001da7b0and ecx, 2047
    001da7b6cmp rcx, 1074
    001da7bdja 0x1da823
    001da7bfxorpd x1, x1
    001da7c3ucomisd x0, x1
    001da7c7jne 0x1da7cb
    001da7c9jnp 0x1da823
    001da7cb
    001da7cbloc_1da7cb:
    001da7cbcmp ecx, 1022
    001da7d1ja 0x1da7e6
    001da7d3xorpd x0, x0
    001da7d7test rax, rax
    001da7dajns 0x1da823
    001da7dcmovsd_xmm x0, [rip-0x1470a4]
    001da7e4pop rbp
    001da7e5ret
    001da7e6
    001da7e6loc_1da7e6:
    001da7e6movsd_xmm x1, [rip-0x1470be]
    001da7eemovsd_xmm x2, [rip-0x1470be]
    001da7f6test rax, rax
    001da7f9jns 0x1da801
    001da7fbaddsd x2, x0
    001da7ffjmp 0x1da805
    001da801
    001da801loc_1da801:
    001da801addsd x1, x0
    001da805
    001da805loc_1da805:
    001da805addsd x1, x2
    001da809subsd x1, x0
    001da80dxorpd x2, x2
    001da811ucomisd x1, x2
    001da815addsd x0, x1
    001da819jbe 0x1da823
    001da81baddsd x0, [rip-0x1470e3]
    001da823
    001da823loc_1da823:
    001da823pop rbp
    001da824ret
    001da7a0
    001da825
    001da825 // align 0x10
    001da830
    001da830__floorx:
    001da830push rbp
    001da831mov rbp, rsp
    001da834push r15
    001da836push r14
    001da838push rbx
    001da839sub rsp, 56
    001da83dmov r15, 0x8000000000000000
    001da847mov eax, [rbp+24]
    001da84amov rdx, [rbp+16]
    001da84emov edi, eax
    001da850mov r14, 0x7fff000000000000
    001da85aand di, 32767
    001da85fjne 0x1da871
    001da861xor esi, esi
    001da863mov ecx, 0
    001da868test rdx, rdx
    001da86bje 0x1da8f5
    001da871
    001da871loc_1da871:
    001da871movzx ecx, di
    001da874cmp ecx, 32767
    001da87ajne 0x1da88f
    001da87cmov rsi, rdx
    001da87fshl rsi, 49
    001da883shr rdx, 15
    001da887or rdx, r14
    001da88amov rcx, rdx
    001da88djmp 0x1da8f5
    001da88f
    001da88floc_1da88f:
    001da88ftest rdx, rdx
    001da892js 0x1da8a0
    001da894je 0x1da8bb
    001da896bsr rsi, rdx
    001da89axor rsi, 63
    001da89ejmp 0x1da8c0
    001da8a0
    001da8a0loc_1da8a0:
    001da8a0lea rsi, [r15-1]
    001da8a4and rdx, rsi
    001da8a7mov rsi, rdx
    001da8aashl rsi, 49
    001da8aeshr rdx, 15
    001da8b2shl rcx, 48
    001da8b6or rcx, rdx
    001da8b9jmp 0x1da8f5
    001da8bb
    001da8bbloc_1da8bb:
    001da8bbmov esi, 64
    001da8c0
    001da8c0loc_1da8c0:
    001da8c0mov ecx, esi
    001da8c2add cl, 50
    001da8c5xor edi, edi
    001da8c7shld rdi, rdx, cl
    001da8cbshl rdx, cl
    001da8cexor ebx, ebx
    001da8d0test cl, 64
    001da8d3cmovne rdi, rdx
    001da8d7cmovne rdx, rbx
    001da8dbmov rbx, 0x1000000000000
    001da8e5xor rbx, rdi
    001da8e8lea ecx, [rsi+1]
    001da8ebshl rcx, 48
    001da8efor rcx, rbx
    001da8f2mov rsi, rdx
    001da8f5
    001da8f5loc_1da8f5:
    001da8f5and eax, 32768
    001da8fashl rax, 48
    001da8feor rax, rcx
    001da901mov [rbp-80], rsi
    001da905mov [rbp-72], rax
    001da909movaps x0, [rbp-80]
    001da90dcall floorq
    001da912movaps [rbp-64], x0
    001da916mov rdi, [rbp-64]
    001da91amov rax, [rbp-56]
    001da91emov rbx, 0x7fffffffffffffff
    001da928mov rsi, rax
    001da92bshld rsi, rdi, 15
    001da930and rbx, rax
    001da933mov rcx, rsi
    001da936or rcx, r15
    001da939mov rdx, rdi
    001da93cneg rdx
    001da93fsbb r14, rbx
    001da942mov dx, 32767
    001da946jb 0x1da9ba
    001da948shr rbx, 48
    001da94cmov edx, ebx
    001da94emov rbx, 0x1ffffffffffff
    001da958and rdi, rbx
    001da95bmov rbx, 0x1000000000001
    001da965cmp rdi, rbx
    001da968jb 0x1da984
    001da96amov rsi, rcx
    001da96dadd rsi, 1
    001da971adc dx, 0
    001da975xor esi, esi
    001da977add rcx, 1
    001da97bcmove rsi, r15
    001da97for rcx, rsi
    001da982jmp 0x1da9ac
    001da984
    001da984loc_1da984:
    001da984mov rbx, 0x1000000000000
    001da98ecmp rdi, rbx
    001da991jne 0x1da9ac
    001da993and esi, 1
    001da996mov rdi, rcx
    001da999add rdi, rsi
    001da99cadc dx, 0
    001da9a0xor edi, edi
    001da9a2add rcx, rsi
    001da9a5cmovb rdi, r15
    001da9a9or rcx, rdi
    001da9ac
    001da9acloc_1da9ac:
    001da9acadd r15, -1
    001da9b0and r15, rcx
    001da9b3test dx, dx
    001da9b6cmove rcx, r15
    001da9ba
    001da9baloc_1da9ba:
    001da9bashr rax, 48
    001da9beand eax, 32768
    001da9c3or edx, eax
    001da9c5mov [rbp-48], rcx
    001da9c9mov [rbp-40], dx
    001da9cdfld [rbp-48]
    001da9d0add rsp, 56
    001da9d4pop rbx
    001da9d5pop r14
    001da9d7pop r15
    001da9d9pop rbp
    001da9daret
    001da830
    001da9db
    001da9db // align 0x10
    001da9e0
    001da9e0floorq:
    001da9e0push rbp
    001da9e1mov rbp, rsp
    001da9e4push r15
    001da9e6push r14
    001da9e8push r13
    001da9eapush r12
    001da9ecpush rbx
    001da9edsub rsp, 168
    001da9f4movaps [rbp-80], x0
    001da9f8movaps x0, [rip-0x146c2f]
    001da9ffmovaps x1, [rip-0x146c26]
    001daa06call __divtf3
    001daa0bmovaps x1, x0
    001daa0emovaps x0, [rbp-80]
    001daa12movaps [rbp-192], x0
    001daa19mov r15, [rbp-184]
    001daa20mov rbx, r15
    001daa23shr rbx, 48
    001daa27and ebx, 32767
    001daa2dcmp rbx, 16494
    001daa34ja 0x1dab86
    001daa3amov r12, [rbp-192]
    001daa41mov r14, 0x7fffffffffffffff
    001daa4bmov rax, r15
    001daa4eand rax, r14
    001daa51mov rcx, r12
    001daa54neg rcx
    001daa57mov rcx, 0x7fff000000000000
    001daa61sbb rcx, rax
    001daa64mov r13, 0x8000000000000000
    001daa6ejb 0x1daa79
    001daa70or rax, r12
    001daa73je 0x1dab86
    001daa79
    001daa79loc_1daa79:
    001daa79test r15, r15
    001daa7cjs 0x1daab9
    001daa7emovaps [rbp-64], x1
    001daa82call __addtf3
    001daa87movaps x1, [rbp-64]
    001daa8bmovaps [rbp-144], x1
    001daa92mov rax, [rbp-144]
    001daa99mov rcx, [rbp-136]
    001daaa0xor rcx, r13
    001daaa3mov [rbp-120], rcx
    001daaa7mov [rbp-128], rax
    001daaabmovaps x1, [rbp-128]
    001daaafcall __addtf3
    001daab4xorps x1, x1
    001daab7jmp 0x1daaff
    001daab9
    001daab9loc_1daab9:
    001daab9movaps [rbp-176], x1
    001daac0mov rax, [rbp-176]
    001daac7mov rcx, [rbp-168]
    001daacexor rcx, r13
    001daad1mov [rbp-152], rcx
    001daad8mov [rbp-160], rax
    001daadfmovaps [rbp-64], x1
    001daae3movaps x1, [rbp-160]
    001daaeacall __addtf3
    001daaefmovaps x1, [rbp-64]
    001daaf3call __addtf3
    001daaf8movaps x1, [rip-0x146d0f]
    001daaff
    001daaffloc_1daaff:
    001daaffmovaps [rbp-64], x1
    001dab03mov [rbp-112], r12
    001dab07xor r15, r13
    001dab0amov [rbp-104], r15
    001dab0emovaps x1, [rbp-112]
    001dab12call __addtf3
    001dab17cmp ebx, 16382
    001dab1dja 0x1dab25
    001dab1fmovaps x0, [rbp-64]
    001dab23jmp 0x1dab86
    001dab25
    001dab25loc_1dab25:
    001dab25movaps x1, x0
    001dab28mov rax, -1
    001dab2fmovaps [rbp-96], x0
    001dab33mov r15, [rbp-88]
    001dab37and r14, r15
    001dab3aand rax, [rbp-96]
    001dab3eadd rax, -1
    001dab42mov rbx, 0x8000ffffffffffff
    001dab4cadc rbx, r14
    001dab4fshr rbx, 48
    001dab53movaps x0, [rbp-80]
    001dab57call __addtf3
    001dab5ccmp ebx, 32769
    001dab62jb 0x1dab86
    001dab64test r15, r15
    001dab67js 0x1dab86
    001dab69movaps x1, [rip-0x146d80]
    001dab70add rsp, 168
    001dab77pop rbx
    001dab78pop r12
    001dab7apop r13
    001dab7cpop r14
    001dab7epop r15
    001dab80pop rbp
    001dab81jmp 0x1d51d0
    001dab86
    001dab86loc_1dab86:
    001dab86add rsp, 168
    001dab8dpop rbx
    001dab8epop r12
    001dab90pop r13
    001dab92pop r14
    001dab94pop r15
    001dab96pop rbp
    001dab97ret
    001da9e0
    001dab98
    001dab98 // align 0x10
    001daba0
    001daba0floorl:
    001daba0push rbp
    001daba1mov rbp, rsp
    001daba4pop rbp
    001daba5jmp 0x1da830
    001daba0
    001dabaa
    001dabaa // align 0x10
    001dabb0
    001dabb0fmaf:
    001dabb0push rbp
    001dabb1mov rbp, rsp
    001dabb4cvtss2sd x0, x0
    001dabb8cvtss2sd x1, x1
    001dabbcmulsd x1, x0
    001dabc0xorps x0, x0
    001dabc3cvtss2sd x0, x2
    001dabc7addsd x0, x1
    001dabcbcvtsd2ss x0, x0
    001dabcfpop rbp
    001dabd0ret
    001dabb0
    001dabd1
    001dabd1 // align 0x10
    001dabe0
    001dabe0fma:
    001dabe0push rbp
    001dabe1mov rbp, rsp
    001dabe4push r14
    001dabe6push rbx
    001dabe7sub rsp, 64
    001dabebmov rbx, 0x7ff0000000000000
    001dabf5movq rax, x0
    001dabfanot rax
    001dabfdtest rax, rbx
    001dac00je 0x1dac0f
    001dac02movq rax, x1
    001dac07not rax
    001dac0atest rbx, rax
    001dac0djne 0x1dac24
    001dac0f
    001dac0floc_1dac0f:
    001dac0fmulsd x0, x1
    001dac13
    001dac13loc_1dac13:
    001dac13addsd x2, x0
    001dac17
    001dac17loc_1dac17:
    001dac17movapd x0, x2
    001dac1badd rsp, 64
    001dac1fpop rbx
    001dac20pop r14
    001dac22pop rbp
    001dac23ret
    001dac24
    001dac24loc_1dac24:
    001dac24movq rax, x2
    001dac29not rax
    001dac2ctest rbx, rax
    001dac2fje 0x1dac17
    001dac31xorpd x3, x3
    001dac35ucomisd x0, x3
    001dac39jne 0x1dac3d
    001dac3bjnp 0x1dac0f
    001dac3d
    001dac3dloc_1dac3d:
    001dac3ducomisd x1, x3
    001dac41jne 0x1dac45
    001dac43jnp 0x1dac0f
    001dac45
    001dac45loc_1dac45:
    001dac45xorpd x3, x3
    001dac49ucomisd x2, x3
    001dac4djne 0x1dac5b
    001dac4fjp 0x1dac5b
    001dac51mulsd x0, x1
    001dac55movapd x2, x0
    001dac59jmp 0x1dac17
    001dac5b
    001dac5bloc_1dac5b:
    001dac5blea rdi, [rbp-32]
    001dac5fmovaps [rbp-64], x2
    001dac63movsd_xmm [rbp-48], x1
    001dac68call math.frexp.frexp64
    001dac6dmov r14l, [rbp-24]
    001dac71movaps x0, [rbp-32]
    001dac75movaps [rbp-80], x0
    001dac79lea rdi, [rbp-32]
    001dac7dmovsd_xmm x0, [rbp-48]
    001dac82call math.frexp.frexp64
    001dac87movsd_xmm x0, [rbp-32]
    001dac8cmovaps [rbp-48], x0
    001dac90add r14l, [rbp-24]
    001dac94lea rdi, [rbp-32]
    001dac98movaps x0, [rbp-64]
    001dac9ccall math.frexp.frexp64
    001daca1movsd_xmm x0, [rbp-32]
    001daca6mov edi, r14l
    001daca9sub edi, [rbp-24]
    001dacaccmp edi, 106
    001dacafjg 0x1dacba
    001dacb1neg edi
    001dacb3call math.ldexp.ldexp__anon_3550
    001dacb8jmp 0x1dacd4
    001dacba
    001dacbaloc_1dacba:
    001dacbamovmskpd eax, x0
    001dacbeshl rax, 63
    001dacc2mov rcx, 0x10000000000000
    001dacccor rcx, rax
    001daccfmovq x0, rcx
    001dacd4
    001dacd4loc_1dacd4:
    001dacd4movapd x5, [rbp-80]
    001dacd9unpcklpd x5, [rbp-48]
    001dacdemovapd x1, [rip-0x146ee6]
    001dace6mulpd x1, x5
    001daceamovapd x2, x5
    001daceesubpd x2, x1
    001dacf2addpd x2, x1
    001dacf6subpd x5, x2
    001dacfamovapd x1, x2
    001dacfeunpckhpd x1, x2
    001dad02mulsd x1, x2
    001dad06shufpd x2, x2, 1
    001dad0bmulpd x2, x5
    001dad0fmovapd x4, x2
    001dad13unpckhpd x4, x2
    001dad17addsd x4, x2
    001dad1bmovapd x3, x1
    001dad1faddsd x3, x4
    001dad23subsd x1, x3
    001dad27addsd x1, x4
    001dad2bmovapd x2, x5
    001dad2funpckhpd x2, x5
    001dad33mulsd x2, x5
    001dad37addsd x2, x1
    001dad3bmovapd x6, x3
    001dad3faddsd x6, x0
    001dad43xorpd x4, x4
    001dad47ucomisd x6, x4
    001dad4bjne 0x1dad69
    001dad4djp 0x1dad69
    001dad4fmovapd x0, x2
    001dad53mov edi, r14l
    001dad56movaps [rbp-64], x6
    001dad5acall math.ldexp.ldexp__anon_3550
    001dad5fmovapd x2, [rbp-64]
    001dad64jmp 0x1dac13
    001dad69
    001dad69loc_1dad69:
    001dad69movapd x1, x6
    001dad6dsubsd x1, x3
    001dad71subsd x0, x1
    001dad75movapd x5, x6
    001dad79subsd x5, x1
    001dad7dsubsd x3, x5
    001dad81addsd x3, x0
    001dad85movapd x1, x2
    001dad89addsd x1, x3
    001dad8dmovapd x0, x1
    001dad91subsd x0, x3
    001dad95movapd x5, x1
    001dad99subsd x5, x0
    001dad9dsubsd x3, x5
    001dada1subsd x2, x0
    001dada5addsd x2, x3
    001dada9ucomisd x2, x4
    001dadadjne 0x1dadb1
    001dadafjnp 0x1dadd5
    001dadb1
    001dadb1loc_1dadb1:
    001dadb1movq rax, x1
    001dadb6test al, 1
    001dadb8jne 0x1dadd5
    001dadbamovq rcx, x2
    001dadbfxor rcx, rax
    001dadc2shr rcx, 62
    001dadc6neg rcx
    001dadc9add rax, rcx
    001dadccadd rax, 1
    001dadd0movq x1, rax
    001dadd5
    001dadd5loc_1dadd5:
    001dadd5movq rax, x6
    001daddamov rcx, 0x7fffffffffffffff
    001dade4and rcx, rax
    001dade7mov rax, rcx
    001dadeashr rax, 52
    001dadeecmp eax, 2047
    001dadf3je 0x1dae0c
    001dadf5test eax, eax
    001dadf7jne 0x1dae18
    001dadf9test rcx, rcx
    001dadfcje 0x1dae1f
    001dadfebsr rax, rcx
    001dae02xor eax, -64
    001dae05add eax, -1010
    001dae0ajmp 0x1dae24
    001dae0c
    001dae0cloc_1dae0c:
    001dae0cxor eax, eax
    001dae0ecmp rbx, rcx
    001dae11adc eax, 0x7fffffff
    001dae16jmp 0x1dae24
    001dae18
    001dae18loc_1dae18:
    001dae18add eax, -1023
    001dae1djmp 0x1dae24
    001dae1f
    001dae1floc_1dae1f:
    001dae1fmov eax, 0xffffffff80000000
    001dae24
    001dae24loc_1dae24:
    001dae24add eax, r14l
    001dae27cmp eax, -1022
    001dae2cjl 0x1dae46
    001dae2eaddsd x6, x1
    001dae32movapd x0, x6
    001dae36mov edi, r14l
    001dae39add rsp, 64
    001dae3dpop rbx
    001dae3epop r14
    001dae40pop rbp
    001dae41jmp 0x1d5d40
    001dae46
    001dae46loc_1dae46:
    001dae46movapd x0, x6
    001dae4amov edi, r14l
    001dae4dadd rsp, 64
    001dae51pop rbx
    001dae52pop r14
    001dae54pop rbp
    001dae55jmp 0x1dae60
    001dabe0
    001dae5a
    001dae5a // align 0x10
    001dae60
    001dae60compiler_rt.fma.add_and_denorm:
    001dae60push rbp
    001dae61mov rbp, rsp
    001dae64movapd x2, x0
    001dae68addsd x0, x1
    001dae6cmovapd x3, x0
    001dae70subsd x3, x2
    001dae74movapd x4, x0
    001dae78subsd x4, x3
    001dae7csubsd x2, x4
    001dae80subsd x1, x3
    001dae84addsd x1, x2
    001dae88xorpd x2, x2
    001dae8cucomisd x1, x2
    001dae90jne 0x1dae94
    001dae92jnp 0x1daed5
    001dae94
    001dae94loc_1dae94:
    001dae94movq rax, x0
    001dae99mov rcx, rax
    001dae9cshr rcx, 52
    001daea0and ecx, 2047
    001daea6add ecx, edi
    001daea8sete cl
    001daeabmov edx, eax
    001daeadand dl, 1
    001daeb0cmp dl, cl
    001daeb2je 0x1daed5
    001daeb4movmskpd ecx, x1
    001daeb8shl rcx, 63
    001daebcxor rcx, rax
    001daebfshr rcx, 62
    001daec3and ecx, -2
    001daec6neg rcx
    001daec9add rax, rcx
    001daeccadd rax, 1
    001daed0movq x0, rax
    001daed5
    001daed5loc_1daed5:
    001daed5pop rbp
    001daed6jmp 0x1d5d40
    001dae60
    001daedb
    001daedb // align 0x10
    001daee0
    001daee0__fmax:
    001daee0push rbp
    001daee1mov rbp, rsp
    001daee4push r15
    001daee6push r14
    001daee8push rbx
    001daee9sub rsp, 120
    001daeedfld [rbp+48]
    001daef0fld [rbp+32]
    001daef3mov r15, 0x7fffffffffffffff
    001daefdmov eax, [rbp+24]
    001daf00mov rdx, [rbp+16]
    001daf04mov edi, eax
    001daf06mov r14, 0x7fff000000000000
    001daf10and di, 32767
    001daf15jne 0x1daf27
    001daf17xor esi, esi
    001daf19mov ecx, 0
    001daf1etest rdx, rdx
    001daf21je 0x1dafa7
    001daf27
    001daf27loc_1daf27:
    001daf27movzx ecx, di
    001daf2acmp ecx, 32767
    001daf30jne 0x1daf45
    001daf32mov rsi, rdx
    001daf35shl rsi, 49
    001daf39shr rdx, 15
    001daf3dor rdx, r14
    001daf40mov rcx, rdx
    001daf43jmp 0x1dafa7
    001daf45
    001daf45loc_1daf45:
    001daf45test rdx, rdx
    001daf48js 0x1daf56
    001daf4aje 0x1daf6d
    001daf4cbsr rsi, rdx
    001daf50xor rsi, 63
    001daf54jmp 0x1daf72
    001daf56
    001daf56loc_1daf56:
    001daf56and rdx, r15
    001daf59mov rsi, rdx
    001daf5cshl rsi, 49
    001daf60shr rdx, 15
    001daf64shl rcx, 48
    001daf68or rcx, rdx
    001daf6bjmp 0x1dafa7
    001daf6d
    001daf6dloc_1daf6d:
    001daf6dmov esi, 64
    001daf72
    001daf72loc_1daf72:
    001daf72mov ecx, esi
    001daf74add cl, 50
    001daf77xor edi, edi
    001daf79shld rdi, rdx, cl
    001daf7dshl rdx, cl
    001daf80xor ebx, ebx
    001daf82test cl, 64
    001daf85cmovne rdi, rdx
    001daf89cmovne rdx, rbx
    001daf8dmov rbx, 0x1000000000000
    001daf97xor rbx, rdi
    001daf9alea ecx, [rsi+1]
    001daf9dshl rcx, 48
    001dafa1or rcx, rbx
    001dafa4mov rsi, rdx
    001dafa7
    001dafa7loc_1dafa7:
    001dafa7and eax, 32768
    001dafacshl rax, 48
    001dafb0or rax, rcx
    001dafb3mov [rbp-144], rsi
    001dafbamov [rbp-136], rax
    001dafc1movaps x0, [rbp-144]
    001dafc8fstp [rbp-80]
    001dafcbmov eax, [rbp-72]
    001dafcemov rdx, [rbp-80]
    001dafd2mov edi, eax
    001dafd4and di, 32767
    001dafd9jne 0x1dafeb
    001dafdbxor esi, esi
    001dafddmov ecx, 0
    001dafe2test rdx, rdx
    001dafe5je 0x1db06b
    001dafeb
    001dafebloc_1dafeb:
    001dafebmovzx ecx, di
    001dafeecmp ecx, 32767
    001daff4jne 0x1db009
    001daff6mov rsi, rdx
    001daff9shl rsi, 49
    001daffdshr rdx, 15
    001db001or rdx, r14
    001db004mov rcx, rdx
    001db007jmp 0x1db06b
    001db009
    001db009loc_1db009:
    001db009test rdx, rdx
    001db00cjs 0x1db01a
    001db00eje 0x1db031
    001db010bsr rsi, rdx
    001db014xor rsi, 63
    001db018jmp 0x1db036
    001db01a
    001db01aloc_1db01a:
    001db01aand rdx, r15
    001db01dmov rsi, rdx
    001db020shl rsi, 49
    001db024shr rdx, 15
    001db028shl rcx, 48
    001db02cor rcx, rdx
    001db02fjmp 0x1db06b
    001db031
    001db031loc_1db031:
    001db031mov esi, 64
    001db036
    001db036loc_1db036:
    001db036mov ecx, esi
    001db038add cl, 50
    001db03bxor edi, edi
    001db03dshld rdi, rdx, cl
    001db041shl rdx, cl
    001db044xor ebx, ebx
    001db046test cl, 64
    001db049cmovne rdi, rdx
    001db04dcmovne rdx, rbx
    001db051mov rbx, 0x1000000000000
    001db05bxor rbx, rdi
    001db05elea ecx, [rsi+1]
    001db061shl rcx, 48
    001db065or rcx, rbx
    001db068mov rsi, rdx
    001db06b
    001db06bloc_1db06b:
    001db06band eax, 32768
    001db070shl rax, 48
    001db074or rax, rcx
    001db077mov [rbp-128], rsi
    001db07bmov [rbp-120], rax
    001db07fmovaps x1, [rbp-128]
    001db083fstp [rbp-64]
    001db086mov eax, [rbp-56]
    001db089mov rdx, [rbp-64]
    001db08dmov edi, eax
    001db08fand di, 32767
    001db094jne 0x1db0a6
    001db096xor esi, esi
    001db098mov ecx, 0
    001db09dtest rdx, rdx
    001db0a0je 0x1db126
    001db0a6
    001db0a6loc_1db0a6:
    001db0a6movzx ecx, di
    001db0a9cmp ecx, 32767
    001db0afjne 0x1db0c4
    001db0b1mov rsi, rdx
    001db0b4shl rsi, 49
    001db0b8shr rdx, 15
    001db0bcor rdx, r14
    001db0bfmov rcx, rdx
    001db0c2jmp 0x1db126
    001db0c4
    001db0c4loc_1db0c4:
    001db0c4test rdx, rdx
    001db0c7js 0x1db0d5
    001db0c9je 0x1db0ec
    001db0cbbsr rsi, rdx
    001db0cfxor rsi, 63
    001db0d3jmp 0x1db0f1
    001db0d5
    001db0d5loc_1db0d5:
    001db0d5and rdx, r15
    001db0d8mov rsi, rdx
    001db0dbshl rsi, 49
    001db0dfshr rdx, 15
    001db0e3shl rcx, 48
    001db0e7or rcx, rdx
    001db0eajmp 0x1db126
    001db0ec
    001db0ecloc_1db0ec:
    001db0ecmov esi, 64
    001db0f1
    001db0f1loc_1db0f1:
    001db0f1mov ecx, esi
    001db0f3add cl, 50
    001db0f6xor edi, edi
    001db0f8shld rdi, rdx, cl
    001db0fcshl rdx, cl
    001db0ffxor ebx, ebx
    001db101test cl, 64
    001db104cmovne rdi, rdx
    001db108cmovne rdx, rbx
    001db10cmov rbx, 0x1000000000000
    001db116xor rbx, rdi
    001db119lea ecx, [rsi+1]
    001db11cshl rcx, 48
    001db120or rcx, rbx
    001db123mov rsi, rdx
    001db126
    001db126loc_1db126:
    001db126and eax, 32768
    001db12bshl rax, 48
    001db12for rax, rcx
    001db132mov [rbp-112], rsi
    001db136mov [rbp-104], rax
    001db13amovaps x2, [rbp-112]
    001db13ecall fmaq
    001db143movaps [rbp-96], x0
    001db147mov rbx, [rbp-96]
    001db14bmov rsi, [rbp-88]
    001db14fmov rax, rsi
    001db152and rax, r15
    001db155mov rdi, rsi
    001db158shld rdi, rbx, 15
    001db15dlea r8, [r15+1]
    001db161mov rcx, rdi
    001db164or rcx, r8
    001db167mov rdx, rbx
    001db16aneg rdx
    001db16dsbb r14, rax
    001db170mov dx, 32767
    001db174jb 0x1db1e1
    001db176shr rax, 48
    001db17amov edx, eax
    001db17cmov rax, 0x1ffffffffffff
    001db186and rbx, rax
    001db189mov rax, 0x1000000000001
    001db193cmp rbx, rax
    001db196jb 0x1db1af
    001db198mov rax, rcx
    001db19badd rax, 1
    001db19fadc dx, 0
    001db1a3xor eax, eax
    001db1a5add rcx, 1
    001db1a9cmove rax, r8
    001db1adjmp 0x1db1d4
    001db1af
    001db1afloc_1db1af:
    001db1afmov rax, 0x1000000000000
    001db1b9cmp rbx, rax
    001db1bcjne 0x1db1d7
    001db1beand edi, 1
    001db1c1mov rax, rcx
    001db1c4add rax, rdi
    001db1c7adc dx, 0
    001db1cbxor eax, eax
    001db1cdadd rcx, rdi
    001db1d0cmovb rax, r8
    001db1d4
    001db1d4loc_1db1d4:
    001db1d4or rcx, rax
    001db1d7
    001db1d7loc_1db1d7:
    001db1d7and r15, rcx
    001db1datest dx, dx
    001db1ddcmove rcx, r15
    001db1e1
    001db1e1loc_1db1e1:
    001db1e1shr rsi, 48
    001db1e5and esi, 32768
    001db1ebor edx, esi
    001db1edmov [rbp-48], rcx
    001db1f1mov [rbp-40], dx
    001db1f5fld [rbp-48]
    001db1f8add rsp, 120
    001db1fcpop rbx
    001db1fdpop r14
    001db1ffpop r15
    001db201pop rbp
    001db202ret
    001daee0
    001db203
    001db203 // align 0x10
    001db210
    001db210fmaq:
    001db210push rbp
    001db211mov rbp, rsp
    001db214push r15
    001db216push r14
    001db218push r13
    001db21apush r12
    001db21cpush rbx
    001db21dsub rsp, 472
    001db224movaps [rbp-496], x0
    001db22bmov rax, [rbp-488]
    001db232mov rcx, rax
    001db235not rcx
    001db238mov r14, 0x7fff000000000000
    001db242test rcx, r14
    001db245je 0x1db267
    001db247mov rsi, [rbp-496]
    001db24emovaps [rbp-480], x1
    001db255mov rdx, [rbp-472]
    001db25cmov rcx, rdx
    001db25fnot rcx
    001db262test rcx, r14
    001db265jne 0x1db28a
    001db267
    001db267loc_1db267:
    001db267movaps [rbp-64], x2
    001db26bcall __multf3
    001db270movaps x1, [rbp-64]
    001db274
    001db274loc_1db274:
    001db274add rsp, 472
    001db27bpop rbx
    001db27cpop r12
    001db27epop r13
    001db280pop r14
    001db282pop r15
    001db284pop rbp
    001db285jmp 0x1d51d0
    001db28a
    001db28aloc_1db28a:
    001db28amov rdi, [rbp-480]
    001db291movaps [rbp-464], x2
    001db298mov rbx, [rbp-456]
    001db29fmov rcx, rbx
    001db2a2not rcx
    001db2a5test rcx, r14
    001db2a8jne 0x1db2bf
    001db2aamovaps x0, x2
    001db2adadd rsp, 472
    001db2b4pop rbx
    001db2b5pop r12
    001db2b7pop r13
    001db2b9pop r14
    001db2bbpop r15
    001db2bdpop rbp
    001db2beret
    001db2bf
    001db2bfloc_1db2bf:
    001db2bfmov r15, 0x7fffffffffffffff
    001db2c9and rax, r15
    001db2ccor rsi, rax
    001db2cfje 0x1db267
    001db2d1and rdx, r15
    001db2d4or rdi, rdx
    001db2d7je 0x1db267
    001db2d9mov r12, -1
    001db2e0mov rax, [rbp-464]
    001db2e7and rax, r12
    001db2eaand rbx, r15
    001db2edor rbx, rax
    001db2f0je 0x1db376
    001db2f6lea rdi, [rbp-192]
    001db2fdmovaps [rbp-64], x2
    001db301movaps [rbp-96], x1
    001db305call math.frexp.frexp128
    001db30amovaps x0, [rbp-192]
    001db311movaps [rbp-80], x0
    001db315mov ebx, [rbp-176]
    001db31blea rdi, [rbp-192]
    001db322movaps x0, [rbp-96]
    001db326call math.frexp.frexp128
    001db32bmovaps x0, [rbp-192]
    001db332movaps [rbp-96], x0
    001db336add ebx, [rbp-176]
    001db33clea rdi, [rbp-192]
    001db343movaps x0, [rbp-64]
    001db347call math.frexp.frexp128
    001db34cmovaps x0, [rbp-192]
    001db353mov edi, ebx
    001db355sub edi, [rbp-176]
    001db35bmov r13, 0x8000000000000000
    001db365cmp edi, 226
    001db36bjg 0x1db38c
    001db36dneg edi
    001db36fcall math.ldexp.ldexp__anon_3558
    001db374jmp 0x1db3c3
    001db376
    001db376loc_1db376:
    001db376add rsp, 472
    001db37dpop rbx
    001db37epop r12
    001db380pop r13
    001db382pop r14
    001db384pop r15
    001db386pop rbp
    001db387jmp 0x1d5630
    001db38c
    001db38cloc_1db38c:
    001db38cmovaps [rbp-512], x0
    001db393mov rax, [rbp-504]
    001db39aand rax, r13
    001db39dmov rcx, 0x1000000000000
    001db3a7or rcx, rax
    001db3aamov [rbp-440], rcx
    001db3b1mov [rbp-448], 0
    001db3bcmovaps x0, [rbp-448]
    001db3c3
    001db3c3loc_1db3c3:
    001db3c3movaps [rbp-160], x0
    001db3camovaps x1, [rip-0x1475c1]
    001db3d1movaps x0, [rbp-80]
    001db3d5call __multf3
    001db3damovaps [rbp-64], x0
    001db3demovaps [rbp-432], x0
    001db3e5mov rax, [rbp-432]
    001db3ecmov rcx, [rbp-424]
    001db3f3xor rcx, r13
    001db3f6mov [rbp-408], rcx
    001db3fdmov [rbp-416], rax
    001db404movaps x1, [rbp-416]
    001db40bmovaps x0, [rbp-80]
    001db40fcall __addtf3
    001db414movaps x1, [rbp-64]
    001db418call __addtf3
    001db41dmovaps [rbp-128], x0
    001db421movaps [rbp-400], x0
    001db428mov rax, [rbp-400]
    001db42fmov rcx, [rbp-392]
    001db436xor rcx, r13
    001db439mov [rbp-376], rcx
    001db440mov [rbp-384], rax
    001db447movaps x1, [rbp-384]
    001db44emovaps x0, [rbp-80]
    001db452call __addtf3
    001db457movaps [rbp-64], x0
    001db45bmovaps x0, [rbp-96]
    001db45fmovaps x1, [rip-0x147656]
    001db466call __multf3
    001db46bmovaps [rbp-80], x0
    001db46fmovaps [rbp-368], x0
    001db476mov rax, [rbp-368]
    001db47dmov rcx, [rbp-360]
    001db484xor rcx, r13
    001db487mov [rbp-344], rcx
    001db48emov [rbp-352], rax
    001db495movaps x1, [rbp-352]
    001db49cmovaps x0, [rbp-96]
    001db4a0call __addtf3
    001db4a5movaps x1, [rbp-80]
    001db4a9call __addtf3
    001db4aemovaps [rbp-144], x0
    001db4b5movaps [rbp-336], x0
    001db4bcmov rax, [rbp-336]
    001db4c3mov rcx, [rbp-328]
    001db4caxor rcx, r13
    001db4cdmov [rbp-312], rcx
    001db4d4mov [rbp-320], rax
    001db4dbmovaps x1, [rbp-320]
    001db4e2movaps x0, [rbp-96]
    001db4e6call __addtf3
    001db4ebmovaps [rbp-80], x0
    001db4efmovaps x0, [rbp-128]
    001db4f3movaps x1, [rbp-144]
    001db4facall __multf3
    001db4ffmovaps [rbp-112], x0
    001db503movaps x0, [rbp-128]
    001db507movaps x1, [rbp-80]
    001db50bcall __multf3
    001db510movaps [rbp-96], x0
    001db514movaps x0, [rbp-64]
    001db518movaps x1, [rbp-144]
    001db51fcall __multf3
    001db524movaps x1, x0
    001db527movaps x0, [rbp-96]
    001db52bcall __addtf3
    001db530movaps x1, x0
    001db533movaps [rbp-144], x0
    001db53amovaps x0, [rbp-112]
    001db53ecall __addtf3
    001db543movaps [rbp-96], x0
    001db547movaps [rbp-304], x0
    001db54emov rax, [rbp-304]
    001db555mov rcx, [rbp-296]
    001db55cxor rcx, r13
    001db55fmov [rbp-280], rcx
    001db566mov [rbp-288], rax
    001db56dmovaps x1, [rbp-288]
    001db574movaps [rbp-128], x1
    001db578movaps x0, [rbp-112]
    001db57ccall __addtf3
    001db581movaps x1, [rbp-144]
    001db588call __addtf3
    001db58dmovaps [rbp-112], x0
    001db591movaps x0, [rbp-64]
    001db595movaps x1, [rbp-80]
    001db599call __multf3
    001db59emovaps x1, x0
    001db5a1movaps x0, [rbp-112]
    001db5a5call __addtf3
    001db5aamovaps [rbp-80], x0
    001db5aemovaps x0, [rbp-96]
    001db5b2movaps x1, [rbp-160]
    001db5b9call __addtf3
    001db5bemovaps [rbp-64], x0
    001db5c2movaps x1, [rbp-128]
    001db5c6call __addtf3
    001db5cbmovaps [rbp-272], x0
    001db5d2mov rax, [rbp-272]
    001db5d9mov rcx, [rbp-264]
    001db5e0xor rcx, r13
    001db5e3mov [rbp-248], rcx
    001db5eamov [rbp-256], rax
    001db5f1movaps x1, [rbp-256]
    001db5f8movaps [rbp-128], x1
    001db5fcmovaps x0, [rbp-64]
    001db600call __addtf3
    001db605movaps [rbp-240], x0
    001db60cxor r13, [rbp-232]
    001db613mov rax, [rbp-240]
    001db61amov [rbp-216], r13
    001db621mov [rbp-224], rax
    001db628movaps x1, [rbp-224]
    001db62fmovaps x0, [rbp-96]
    001db633call __addtf3
    001db638movaps [rbp-112], x0
    001db63cmovaps x0, [rbp-160]
    001db643movaps x1, [rbp-128]
    001db647call __addtf3
    001db64cmovaps x1, x0
    001db64fmovaps x0, [rbp-112]
    001db653call __addtf3
    001db658movaps x1, [rbp-64]
    001db65cmovaps [rbp-208], x1
    001db663and r15, [rbp-200]
    001db66aand r12, [rbp-208]
    001db671mov rax, r12
    001db674or rax, r15
    001db677je 0x1db6b7
    001db679movaps x1, [rbp-80]
    001db67dcall compiler_rt.fma.add_adjusted128
    001db682movaps x1, x0
    001db685mov rax, r15
    001db688shr rax, 48
    001db68ccmp eax, 32767
    001db691je 0x1db6e2
    001db693test eax, eax
    001db695jne 0x1db6f1
    001db697bsr rax, r15
    001db69bxor eax, 63
    001db69ebsr rcx, r12
    001db6a2xor ecx, 63
    001db6a5add ecx, 64
    001db6a8test r15, r15
    001db6abcmovne ecx, eax
    001db6aemov eax, -16367
    001db6b3sub eax, ecx
    001db6b5jmp 0x1db6f6
    001db6b7
    001db6b7loc_1db6b7:
    001db6b7movaps x0, [rbp-96]
    001db6bbmovaps x1, [rbp-160]
    001db6c2call __addtf3
    001db6c7movaps [rbp-64], x0
    001db6cbmovaps x0, [rbp-80]
    001db6cfmov edi, ebx
    001db6d1call math.ldexp.ldexp__anon_3558
    001db6d6movaps x1, x0
    001db6d9movaps x0, [rbp-64]
    001db6ddjmp 0x1db274
    001db6e2
    001db6e2loc_1db6e2:
    001db6e2xor eax, eax
    001db6e4neg r12
    001db6e7sbb r14, r15
    001db6eaadc eax, 0x7fffffff
    001db6efjmp 0x1db6f6
    001db6f1
    001db6f1loc_1db6f1:
    001db6f1add eax, -16383
    001db6f6
    001db6f6loc_1db6f6:
    001db6f6add eax, ebx
    001db6f8cmp eax, -16382
    001db6fdjl 0x1db720
    001db6ffmovaps x0, [rbp-64]
    001db703call __addtf3
    001db708mov edi, ebx
    001db70aadd rsp, 472
    001db711pop rbx
    001db712pop r12
    001db714pop r13
    001db716pop r14
    001db718pop r15
    001db71apop rbp
    001db71bjmp 0x1d5ea0
    001db720
    001db720loc_1db720:
    001db720movaps x0, [rbp-64]
    001db724mov edi, ebx
    001db726add rsp, 472
    001db72dpop rbx
    001db72epop r12
    001db730pop r13
    001db732pop r14
    001db734pop r15
    001db736pop rbp
    001db737jmp 0x1db8a0
    001db210
    001db73c
    001db73c // align 0x10
    001db740
    001db740compiler_rt.fma.add_adjusted128:
    001db740push rbp
    001db741mov rbp, rsp
    001db744push rbx
    001db745sub rsp, 216
    001db74cmovaps [rbp-224], x1
    001db753movaps [rbp-32], x0
    001db757call __addtf3
    001db75cmovaps x2, x0
    001db75fmovaps [rbp-48], x0
    001db763movaps x0, [rbp-32]
    001db767movaps [rbp-192], x0
    001db76emov rax, [rbp-192]
    001db775mov rbx, 0x8000000000000000
    001db77fmov rcx, [rbp-184]
    001db786xor rcx, rbx
    001db789mov [rbp-168], rcx
    001db790mov [rbp-176], rax
    001db797movaps x1, [rbp-176]
    001db79emovaps x0, x2
    001db7a1call __addtf3
    001db7a6movaps [rbp-160], x0
    001db7admov rax, [rbp-160]
    001db7b4mov rcx, [rbp-152]
    001db7bbxor rcx, rbx
    001db7bemov [rbp-136], rcx
    001db7c5mov [rbp-144], rax
    001db7ccmovaps x1, [rbp-144]
    001db7d3movaps [rbp-208], x1
    001db7damovaps x0, [rbp-48]
    001db7decall __addtf3
    001db7e3movaps [rbp-128], x0
    001db7e7xor rbx, [rbp-120]
    001db7ebmov rax, [rbp-128]
    001db7efmov [rbp-104], rbx
    001db7f3mov [rbp-112], rax
    001db7f7movaps x1, [rbp-112]
    001db7fbmovaps x0, [rbp-32]
    001db7ffcall __addtf3
    001db804movaps [rbp-32], x0
    001db808movaps x0, [rbp-224]
    001db80fmovaps x1, [rbp-208]
    001db816call __addtf3
    001db81bmovaps x1, x0
    001db81emovaps x0, [rbp-32]
    001db822call __addtf3
    001db827movaps [rbp-96], x0
    001db82bmov rax, [rbp-88]
    001db82fmov rcx, 0x7fffffffffffffff
    001db839and rcx, rax
    001db83cor rcx, [rbp-96]
    001db840je 0x1db883
    001db842movaps x0, [rbp-48]
    001db846movaps [rbp-80], x0
    001db84amov rcx, [rbp-80]
    001db84etest cl, 1
    001db851jne 0x1db879
    001db853mov rdx, [rbp-72]
    001db857xor rax, rdx
    001db85ashr rax, 62
    001db85esub rcx, rax
    001db861sbb rdx, 0
    001db865add rcx, 1
    001db869mov [rbp-64], rcx
    001db86dadc rdx, 0
    001db871mov [rbp-56], rdx
    001db875movaps x0, [rbp-64]
    001db879
    001db879loc_1db879:
    001db879add rsp, 216
    001db880pop rbx
    001db881pop rbp
    001db882ret
    001db883
    001db883loc_1db883:
    001db883movaps x0, [rbp-48]
    001db887add rsp, 216
    001db88epop rbx
    001db88fpop rbp
    001db890ret
    001db740
    001db891
    001db891 // align 0x10
    001db8a0
    001db8a0compiler_rt.fma.add_and_denorm128:
    001db8a0push rbp
    001db8a1mov rbp, rsp
    001db8a4push r14
    001db8a6push rbx
    001db8a7sub rsp, 208
    001db8aemov r14l, edi
    001db8b1movaps [rbp-224], x1
    001db8b8movaps [rbp-32], x0
    001db8bccall __addtf3
    001db8c1movaps x2, x0
    001db8c4movaps [rbp-48], x0
    001db8c8movaps x0, [rbp-32]
    001db8ccmovaps [rbp-192], x0
    001db8d3mov rax, [rbp-192]
    001db8damov rbx, 0x8000000000000000
    001db8e4mov rcx, [rbp-184]
    001db8ebxor rcx, rbx
    001db8eemov [rbp-168], rcx
    001db8f5mov [rbp-176], rax
    001db8fcmovaps x1, [rbp-176]
    001db903movaps x0, x2
    001db906call __addtf3
    001db90bmovaps [rbp-160], x0
    001db912mov rax, [rbp-160]
    001db919mov rcx, [rbp-152]
    001db920xor rcx, rbx
    001db923mov [rbp-136], rcx
    001db92amov [rbp-144], rax
    001db931movaps x1, [rbp-144]
    001db938movaps [rbp-208], x1
    001db93fmovaps x0, [rbp-48]
    001db943call __addtf3
    001db948movaps [rbp-128], x0
    001db94cxor rbx, [rbp-120]
    001db950mov rax, [rbp-128]
    001db954mov [rbp-104], rbx
    001db958mov [rbp-112], rax
    001db95cmovaps x1, [rbp-112]
    001db960movaps x0, [rbp-32]
    001db964call __addtf3
    001db969movaps [rbp-32], x0
    001db96dmovaps x0, [rbp-224]
    001db974movaps x1, [rbp-208]
    001db97bcall __addtf3
    001db980movaps x1, x0
    001db983movaps x0, [rbp-32]
    001db987call __addtf3
    001db98cmovaps [rbp-96], x0
    001db990mov rax, [rbp-88]
    001db994mov rcx, 0x7fffffffffffffff
    001db99eand rcx, rax
    001db9a1or rcx, [rbp-96]
    001db9a5je 0x1db9fc
    001db9a7movaps x0, [rbp-48]
    001db9abmovaps [rbp-80], x0
    001db9afmov rdx, [rbp-80]
    001db9b3mov rcx, [rbp-72]
    001db9b7mov rsi, rcx
    001db9bashr rsi, 48
    001db9beand esi, 32767
    001db9c4add esi, r14l
    001db9c7sete sil
    001db9cbmov ebx, edx
    001db9cdand bl, 1
    001db9d0cmp bl, sil
    001db9d3je 0x1dba00
    001db9d5xor rax, rcx
    001db9d8shr rax, 62
    001db9dcand eax, -2
    001db9dfsub rdx, rax
    001db9e2sbb rcx, 0
    001db9e6add rdx, 1
    001db9eamov [rbp-64], rdx
    001db9eeadc rcx, 0
    001db9f2mov [rbp-56], rcx
    001db9f6movaps x0, [rbp-64]
    001db9fajmp 0x1dba00
    001db9fc
    001db9fcloc_1db9fc:
    001db9fcmovaps x0, [rbp-48]
    001dba00
    001dba00loc_1dba00:
    001dba00mov edi, r14l
    001dba03add rsp, 208
    001dba0apop rbx
    001dba0bpop r14
    001dba0dpop rbp
    001dba0ejmp 0x1d5ea0
    001db8a0