File akira_3298d203c2acb68c474e5fdad8379181890b4403d6491c523c13730129be3f75.elf
Function:
    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
    001dba13
    001dba13 // align 0x10
    001dba20
    001dba20fmal:
    001dba20push rbp
    001dba21mov rbp, rsp
    001dba24pop rbp
    001dba25jmp 0x1daee0
    001dba20
    001dba2a
    001dba2a // align 0x10
    001dba30
    001dba30fmaxf:
    001dba30push rbp
    001dba31mov rbp, rsp
    001dba34ucomiss x0, x0
    001dba37jp 0x1dba42
    001dba39ucomiss x1, x1
    001dba3cjp 0x1dba47
    001dba3emaxss x1, x0
    001dba42
    001dba42loc_1dba42:
    001dba42movaps x0, x1
    001dba45pop rbp
    001dba46ret
    001dba47
    001dba47loc_1dba47:
    001dba47movaps x1, x0
    001dba4amovaps x0, x1
    001dba4dpop rbp
    001dba4eret
    001dba30
    001dba4f
    001dba4f // align 0x10
    001dba50
    001dba50fmax:
    001dba50push rbp
    001dba51mov rbp, rsp
    001dba54ucomisd x0, x0
    001dba58jp 0x1dba64
    001dba5aucomisd x1, x1
    001dba5ejp 0x1dba6a
    001dba60maxsd x1, x0
    001dba64
    001dba64loc_1dba64:
    001dba64movapd x0, x1
    001dba68pop rbp
    001dba69ret
    001dba6a
    001dba6aloc_1dba6a:
    001dba6amovapd x1, x0
    001dba6emovapd x0, x1
    001dba72pop rbp
    001dba73ret
    001dba50
    001dba74
    001dba74 // align 0x10
    001dba80
    001dba80__fmaxx:
    001dba80push rbp
    001dba81mov rbp, rsp
    001dba84fld [rbp+32]
    001dba87fld [rbp+16]
    001dba8afucomi f0
    001dba8cjp 0x1dba9e
    001dba8efxch f1
    001dba90fucomi f0
    001dba92jp 0x1dba9e
    001dba94fucomi f1
    001dba96fxch f1
    001dba98fcmovnbe f1
    001dba9afstp f1
    001dba9cpop rbp
    001dba9dret
    001dba9e
    001dba9eloc_1dba9e:
    001dba9efstp f0
    001dbaa0pop rbp
    001dbaa1ret
    001dba80
    001dbaa2
    001dbaa2 // align 0x10
    001dbab0
    001dbab0fminf:
    001dbab0push rbp
    001dbab1mov rbp, rsp
    001dbab4ucomiss x0, x0
    001dbab7jp 0x1dbac5
    001dbab9ucomiss x1, x1
    001dbabcjp 0x1dbac2
    001dbabeminss x0, x1
    001dbac2
    001dbac2loc_1dbac2:
    001dbac2movaps x1, x0
    001dbac5
    001dbac5loc_1dbac5:
    001dbac5movaps x0, x1
    001dbac8pop rbp
    001dbac9ret
    001dbab0
    001dbaca
    001dbaca // align 0x10
    001dbad0
    001dbad0fmin:
    001dbad0push rbp
    001dbad1mov rbp, rsp
    001dbad4ucomisd x0, x0
    001dbad8jp 0x1dbae8
    001dbadaucomisd x1, x1
    001dbadejp 0x1dbae4
    001dbae0minsd x0, x1
    001dbae4
    001dbae4loc_1dbae4:
    001dbae4movapd x1, x0
    001dbae8
    001dbae8loc_1dbae8:
    001dbae8movapd x0, x1
    001dbaecpop rbp
    001dbaedret
    001dbad0
    001dbaee
    001dbaee // align 0x10
    001dbaf0
    001dbaf0__fminx:
    001dbaf0push rbp
    001dbaf1mov rbp, rsp
    001dbaf4fld [rbp+32]
    001dbaf7fld [rbp+16]
    001dbafafucomi f0
    001dbafcjp 0x1dbb0c
    001dbafefxch f1
    001dbb00fucomi f0
    001dbb02jp 0x1dbb0c
    001dbb04fucomi f1
    001dbb06fcmovnbe f1
    001dbb08fstp f1
    001dbb0apop rbp
    001dbb0bret
    001dbb0c
    001dbb0cloc_1dbb0c:
    001dbb0cfstp f0
    001dbb0epop rbp
    001dbb0fret
    001dbaf0
    001dbb10
    001dbb10fmodf:
    001dbb10push rbp
    001dbb11mov rbp, rsp
    001dbb14movd esi, x1
    001dbb18mov eax, esi
    001dbb1aadd eax, esi
    001dbb1cje 0x1dbb72
    001dbb1eucomiss x1, x1
    001dbb21jp 0x1dbb72
    001dbb23movd r8l, x0
    001dbb28mov ecx, r8l
    001dbb2bshr ecx, 23
    001dbb2emovzx edx, cl
    001dbb31cmp edx, 255
    001dbb37je 0x1dbb72
    001dbb39lea ecx, [r8+r8]
    001dbb3dcmp ecx, eax
    001dbb3fjbe 0x1dbb7c
    001dbb41mov eax, esi
    001dbb43shr eax, 23
    001dbb46movzx eax, al
    001dbb49test edx, edx
    001dbb4bje 0x1dbb8c
    001dbb4dmov edi, r8l
    001dbb50and edi, 0x7fffff
    001dbb56or edi, 0x800000
    001dbb5ctest eax, eax
    001dbb5eje 0x1dbbb4
    001dbb60
    001dbb60loc_1dbb60:
    001dbb60and esi, 0x7fffff
    001dbb66or esi, 0x800000
    001dbb6ccmp edx, eax
    001dbb6ejg 0x1dbbe9
    001dbb70jmp 0x1dbbd1
    001dbb72
    001dbb72loc_1dbb72:
    001dbb72mulss x0, x1
    001dbb76divss x0, x0
    001dbb7apop rbp
    001dbb7bret
    001dbb7c
    001dbb7cloc_1dbb7c:
    001dbb7cpxor x1, x1
    001dbb80je 0x1dbb86
    001dbb82movdqa x1, x0
    001dbb86
    001dbb86loc_1dbb86:
    001dbb86movdqa x0, x1
    001dbb8apop rbp
    001dbb8bret
    001dbb8c
    001dbb8cloc_1dbb8c:
    001dbb8cmov ecx, r8l
    001dbb8fxor edx, edx
    001dbb91shl ecx, 9
    001dbb94js 0x1dbba7
    001dbb96nop [rax+rax]
    001dbba0
    001dbba0loc_1dbba0:
    001dbba0add edx, -1
    001dbba3add ecx, ecx
    001dbba5jns 0x1dbba0
    001dbba7
    001dbba7loc_1dbba7:
    001dbba7mov cl, 1
    001dbba9sub cl, dl
    001dbbabmov edi, r8l
    001dbbaeshl edi, cl
    001dbbb0test eax, eax
    001dbbb2jne 0x1dbb60
    001dbbb4
    001dbbb4loc_1dbbb4:
    001dbbb4mov ecx, esi
    001dbbb6xor eax, eax
    001dbbb8shl ecx, 9
    001dbbbbjs 0x1dbbc7
    001dbbbdnop [rax]
    001dbbc0
    001dbbc0loc_1dbbc0:
    001dbbc0add eax, -1
    001dbbc3add ecx, ecx
    001dbbc5jns 0x1dbbc0
    001dbbc7
    001dbbc7loc_1dbbc7:
    001dbbc7mov cl, 1
    001dbbc9sub cl, al
    001dbbcbshl esi, cl
    001dbbcdcmp edx, eax
    001dbbcfjg 0x1dbbe9
    001dbbd1
    001dbbd1loc_1dbbd1:
    001dbbd1mov eax, edi
    001dbbd3sub eax, esi
    001dbbd5jns 0x1dbbfd
    001dbbd7jmp 0x1dbc01
    001dbbd9
    001dbbd9 0f 1f 80 00 00 00 00 .......
    001dbbe0
    001dbbe0loc_1dbbe0:
    001dbbe0add edi, edi
    001dbbe2add edx, -1
    001dbbe5cmp edx, eax
    001dbbe7jle 0x1dbbf5
    001dbbe9
    001dbbe9loc_1dbbe9:
    001dbbe9mov ecx, edi
    001dbbebsub ecx, esi
    001dbbedjs 0x1dbbe0
    001dbbefmov edi, ecx
    001dbbf1jne 0x1dbbe0
    001dbbf3jmp 0x1dbc3e
    001dbbf5
    001dbbf5loc_1dbbf5:
    001dbbf5mov edx, eax
    001dbbf7mov eax, edi
    001dbbf9sub eax, esi
    001dbbfbjs 0x1dbc01
    001dbbfd
    001dbbfdloc_1dbbfd:
    001dbbfdmov edi, eax
    001dbbffje 0x1dbc3e
    001dbc01
    001dbc01loc_1dbc01:
    001dbc01cmp edi, 0x7fffff
    001dbc07ja 0x1dbc44
    001dbc09nop [rax]
    001dbc10
    001dbc10loc_1dbc10:
    001dbc10lea eax, [rdi+rdi]
    001dbc13add edx, -1
    001dbc16cmp edi, 0x400000
    001dbc1cmov edi, eax
    001dbc1ejb 0x1dbc10
    001dbc20and r8l, 0xffffffff80000000
    001dbc27test edx, edx
    001dbc29jle 0x1dbc51
    001dbc2b
    001dbc2bloc_1dbc2b:
    001dbc2badd eax, 0xffffffffff800000
    001dbc30shl edx, 23
    001dbc33or edx, eax
    001dbc35or edx, r8l
    001dbc38movd x0, edx
    001dbc3cpop rbp
    001dbc3dret
    001dbc3e
    001dbc3eloc_1dbc3e:
    001dbc3epxor x0, x0
    001dbc42pop rbp
    001dbc43ret
    001dbc44
    001dbc44loc_1dbc44:
    001dbc44mov eax, edi
    001dbc46and r8l, 0xffffffff80000000
    001dbc4dtest edx, edx
    001dbc4fjg 0x1dbc2b
    001dbc51
    001dbc51loc_1dbc51:
    001dbc51mov cl, 1
    001dbc53sub cl, dl
    001dbc55shr eax, cl
    001dbc57mov edx, eax
    001dbc59or edx, r8l
    001dbc5cmovd x0, edx
    001dbc60pop rbp
    001dbc61ret
    001dbb10
    001dbc62
    001dbc62 // align 0x10
    001dbc70
    001dbc70fmod:
    001dbc70push rbp
    001dbc71mov rbp, rsp
    001dbc74movq rdi, x1
    001dbc79mov rax, rdi
    001dbc7cadd rax, rdi
    001dbc7fje 0x1dbce7
    001dbc81ucomisd x1, x1
    001dbc85jp 0x1dbce7
    001dbc87movq r9, x0
    001dbc8cmov rdx, r9
    001dbc8fshr rdx, 52
    001dbc93and edx, 2047
    001dbc99cmp edx, 2047
    001dbc9fje 0x1dbce7
    001dbca1lea rcx, [r9+r9]
    001dbca5cmp rcx, rax
    001dbca8jbe 0x1dbcf1
    001dbcaamov rsi, rdi
    001dbcadshr rsi, 52
    001dbcb1and esi, 2047
    001dbcb7mov r8, 0x10000000000000
    001dbcc1test edx, edx
    001dbcc3je 0x1dbd01
    001dbcc5lea rax, [r8-1]
    001dbcc9and rax, r9
    001dbcccor rax, r8
    001dbccftest esi, esi
    001dbcd1je 0x1dbd26
    001dbcd3
    001dbcd3loc_1dbcd3:
    001dbcd3lea rcx, [r8-1]
    001dbcd7and rdi, rcx
    001dbcdaor rdi, r8
    001dbcddcmp edx, esi
    001dbcdfjg 0x1dbd6a
    001dbce5jmp 0x1dbd54
    001dbce7
    001dbce7loc_1dbce7:
    001dbce7mulsd x0, x1
    001dbcebdivsd x0, x0
    001dbcefpop rbp
    001dbcf0ret
    001dbcf1
    001dbcf1loc_1dbcf1:
    001dbcf1pxor x1, x1
    001dbcf5je 0x1dbcfb
    001dbcf7movdqa x1, x0
    001dbcfb
    001dbcfbloc_1dbcfb:
    001dbcfbmovdqa x0, x1
    001dbcffpop rbp
    001dbd00ret
    001dbd01
    001dbd01loc_1dbd01:
    001dbd01mov rax, r9
    001dbd04xor edx, edx
    001dbd06shl rax, 12
    001dbd0ajs 0x1dbd18
    001dbd0cnop [rax]
    001dbd10
    001dbd10loc_1dbd10:
    001dbd10add edx, -1
    001dbd13add rax, rax
    001dbd16jns 0x1dbd10
    001dbd18
    001dbd18loc_1dbd18:
    001dbd18mov cl, 1
    001dbd1asub cl, dl
    001dbd1cmov rax, r9
    001dbd1fshl rax, cl
    001dbd22test esi, esi
    001dbd24jne 0x1dbcd3
    001dbd26
    001dbd26loc_1dbd26:
    001dbd26mov rcx, rdi
    001dbd29xor esi, esi
    001dbd2bshl rcx, 12
    001dbd2fjs 0x1dbd48
    001dbd31nop [rax+rax]
    001dbd3bnop [rax+rax]
    001dbd40
    001dbd40loc_1dbd40:
    001dbd40add esi, -1
    001dbd43add rcx, rcx
    001dbd46jns 0x1dbd40
    001dbd48
    001dbd48loc_1dbd48:
    001dbd48mov cl, 1
    001dbd4asub cl, sil
    001dbd4dshl rdi, cl
    001dbd50cmp edx, esi
    001dbd52jg 0x1dbd6a
    001dbd54
    001dbd54loc_1dbd54:
    001dbd54mov rcx, rax
    001dbd57sub rcx, rdi
    001dbd5ajns 0x1dbd83
    001dbd5cjmp 0x1dbd88
    001dbd5e
    001dbd5e 66 90 f.
    001dbd60
    001dbd60loc_1dbd60:
    001dbd60add rax, rax
    001dbd63add edx, -1
    001dbd66cmp edx, esi
    001dbd68jle 0x1dbd79
    001dbd6a
    001dbd6aloc_1dbd6a:
    001dbd6amov rcx, rax
    001dbd6dsub rcx, rdi
    001dbd70js 0x1dbd60
    001dbd72mov rax, rcx
    001dbd75jne 0x1dbd60
    001dbd77jmp 0x1dbdd5
    001dbd79
    001dbd79loc_1dbd79:
    001dbd79mov edx, esi
    001dbd7bmov rcx, rax
    001dbd7esub rcx, rdi
    001dbd81js 0x1dbd88
    001dbd83
    001dbd83loc_1dbd83:
    001dbd83mov rax, rcx
    001dbd86je 0x1dbdd5
    001dbd88
    001dbd88loc_1dbd88:
    001dbd88mov rcx, 0x8000000000000000
    001dbd92cmp rax, r8
    001dbd95jae 0x1dbddb
    001dbd97nop [rax+rax]
    001dbda0
    001dbda0loc_1dbda0:
    001dbda0lea rsi, [rax+rax]
    001dbda4add edx, -1
    001dbda7shr rax, 51
    001dbdabmov rax, rsi
    001dbdaeje 0x1dbda0
    001dbdb0and r9, rcx
    001dbdb3test edx, edx
    001dbdb5jle 0x1dbde5
    001dbdb7
    001dbdb7loc_1dbdb7:
    001dbdb7mov rax, 0xfff0000000000000
    001dbdc1add rsi, rax
    001dbdc4shl rdx, 52
    001dbdc8or rdx, rsi
    001dbdcbor rdx, r9
    001dbdcemovq x0, rdx
    001dbdd3pop rbp
    001dbdd4ret
    001dbdd5
    001dbdd5loc_1dbdd5:
    001dbdd5pxor x0, x0
    001dbdd9pop rbp
    001dbddaret
    001dbddb
    001dbddbloc_1dbddb:
    001dbddbmov rsi, rax
    001dbddeand r9, rcx
    001dbde1test edx, edx
    001dbde3jg 0x1dbdb7
    001dbde5
    001dbde5loc_1dbde5:
    001dbde5mov cl, 1
    001dbde7sub cl, dl
    001dbde9shr rsi, cl
    001dbdecmov rdx, rsi
    001dbdefor rdx, r9
    001dbdf2movq x0, rdx
    001dbdf7pop rbp
    001dbdf8ret
    001dbc70
    001dbdf9
    001dbdf9 // align 0x10
    001dbe00
    001dbe00__fmodx:
    001dbe00push rbp
    001dbe01mov rbp, rsp
    001dbe04fld [rbp+32]
    001dbe07fld f0
    001dbe09fstp [rbp-64]
    001dbe0cfld [rbp+16]
    001dbe0ffld f0
    001dbe11fstp [rbp-80]
    001dbe14fldz
    001dbe16fxch f2
    001dbe18fucomi f2
    001dbe1ajne 0x1dbe26
    001dbe1cjp 0x1dbe26
    001dbe1e
    001dbe1eloc_1dbe1e:
    001dbe1efstp f2
    001dbe20fmulp f1
    001dbe22fdivr f0, f0
    001dbe24pop rbp
    001dbe25ret
    001dbe26
    001dbe26loc_1dbe26:
    001dbe26fucomi f0
    001dbe28jp 0x1dbe1e
    001dbe2amov r8l, [rbp-72]
    001dbe2emov esi, r8l
    001dbe31and esi, 32767
    001dbe37cmp esi, 32767
    001dbe3dje 0x1dbe1e
    001dbe3ffstp f0
    001dbe41mov r10l, [rbp-56]
    001dbe45mov rdx, [rbp-80]
    001dbe49mov r9, [rbp-64]
    001dbe4dmov ecx, r8l
    001dbe50and ecx, 32767
    001dbe56mov edi, r10l
    001dbe59and edi, 32767
    001dbe5fcmp r9, rdx
    001dbe62mov rax, rdi
    001dbe65sbb rax, rcx
    001dbe68jae 0x1dbe9c
    001dbe6afstp f0
    001dbe6cand r10l, 32767
    001dbe73test esi, esi
    001dbe75je 0x1dbeab
    001dbe77test r10l, r10l
    001dbe7aje 0x1dbee8
    001dbe7c
    001dbe7cloc_1dbe7c:
    001dbe7cxor eax, eax
    001dbe7ecmp esi, r10l
    001dbe81jg 0x1dbf50
    001dbe87
    001dbe87loc_1dbe87:
    001dbe87mov rcx, rdx
    001dbe8asub rcx, r9
    001dbe8dsbb rax, 0
    001dbe91jns 0x1dbf90
    001dbe97jmp 0x1dbf9c
    001dbe9c
    001dbe9cloc_1dbe9c:
    001dbe9cxor rdx, r9
    001dbe9fxor rcx, rdi
    001dbea2or rcx, rdx
    001dbea5fcmove f1
    001dbea7fstp f1
    001dbea9
    001dbea9loc_1dbea9:
    001dbea9pop rbp
    001dbeaaret
    001dbeab
    001dbeabloc_1dbeab:
    001dbeabbsr rax, rcx
    001dbeafxor eax, 63
    001dbeb2bsr rsi, rdx
    001dbeb6xor esi, 63
    001dbeb9add sil, 64
    001dbebdtest rcx, rcx
    001dbec0movzx ecx, sil
    001dbec4cmovne ecx, eax
    001dbec7add cl, 64
    001dbecashl rdx, cl
    001dbecdxor eax, eax
    001dbecftest cl, 64
    001dbed2cmovne rdx, rax
    001dbed6movzx eax, cl
    001dbed9and eax, 127
    001dbedcmov esi, 1
    001dbee1sub esi, eax
    001dbee3test r10l, r10l
    001dbee6jne 0x1dbe7c
    001dbee8
    001dbee8loc_1dbee8:
    001dbee8bsr rax, r9
    001dbeecmov ecx, 127
    001dbef1cmovne rcx, rax
    001dbef5xor ecx, 63
    001dbef8add cl, 64
    001dbefbbsr rax, rdi
    001dbeffxor eax, 63
    001dbf02test rdi, rdi
    001dbf05movzx ecx, cl
    001dbf08cmovne ecx, eax
    001dbf0badd cl, 64
    001dbf0eshl r9, cl
    001dbf11xor eax, eax
    001dbf13test cl, 64
    001dbf16cmovne r9, rax
    001dbf1amovzx eax, cl
    001dbf1dand eax, 127
    001dbf20mov r10l, 1
    001dbf26sub r10l, eax
    001dbf29xor eax, eax
    001dbf2bcmp esi, r10l
    001dbf2ejg 0x1dbf50
    001dbf30jmp 0x1dbe87
    001dbf35
    001dbf35 66 2e 0f 1f 84 00 00 00 00 00 90 f..........
    001dbf40
    001dbf40loc_1dbf40:
    001dbf40shld rax, rdx, 1
    001dbf45add rdx, rdx
    001dbf48add esi, -1
    001dbf4bcmp esi, r10l
    001dbf4ejle 0x1dbf81
    001dbf50
    001dbf50loc_1dbf50:
    001dbf50mov rdi, rdx
    001dbf53sub rdi, r9
    001dbf56mov rcx, rax
    001dbf59sbb rcx, 0
    001dbf5djs 0x1dbf40
    001dbf5fmov rax, rcx
    001dbf62or rax, rdi
    001dbf65je 0x1dbea9
    001dbf6bshld rcx, rdi, 1
    001dbf70mov rdx, rdi
    001dbf73mov rax, rcx
    001dbf76add rdx, rdx
    001dbf79add esi, -1
    001dbf7ccmp esi, r10l
    001dbf7fjg 0x1dbf50
    001dbf81
    001dbf81loc_1dbf81:
    001dbf81mov esi, r10l
    001dbf84mov rcx, rdx
    001dbf87sub rcx, r9
    001dbf8asbb rax, 0
    001dbf8ejs 0x1dbf9c
    001dbf90
    001dbf90loc_1dbf90:
    001dbf90or rax, rcx
    001dbf93mov rdx, rcx
    001dbf96je 0x1dbea9
    001dbf9c
    001dbf9cloc_1dbf9c:
    001dbf9cfstp f0
    001dbf9etest rdx, rdx
    001dbfa1js 0x1dbfbb
    001dbfa3nop [rax+rax]
    001dbfadnop [rax]
    001dbfb0
    001dbfb0loc_1dbfb0:
    001dbfb0add rdx, rdx
    001dbfb3add esi, -1
    001dbfb6test rdx, rdx
    001dbfb9jns 0x1dbfb0
    001dbfbb
    001dbfbbloc_1dbfbb:
    001dbfbband r8, -32768
    001dbfc2cmp esi, -64
    001dbfc5jg 0x1dbfd9
    001dbfc7mov [rbp-8], r8w
    001dbfccmov [rbp-16], 0
    001dbfd4fld [rbp-16]
    001dbfd7pop rbp
    001dbfd8ret
    001dbfd9
    001dbfd9loc_1dbfd9:
    001dbfd9test esi, esi
    001dbfdbjle 0x1dbfed
    001dbfddmov [rbp-48], rdx
    001dbfe1or esi, r8l
    001dbfe4mov [rbp-40], si
    001dbfe8fld [rbp-48]
    001dbfebpop rbp
    001dbfecret
    001dbfed
    001dbfedloc_1dbfed:
    001dbfedmov cl, 1
    001dbfefsub cl, sil
    001dbff2shr rdx, cl
    001dbff5mov [rbp-24], r8w
    001dbffamov [rbp-32], rdx
    001dbffefld [rbp-32]
    001dc001pop rbp
    001dc002ret
    001dbe00
    001dc003
    001dc003 // align 0x10
    001dc010
    001dc010fmodl:
    001dc010push rbp
    001dc011mov rbp, rsp
    001dc014pop rbp
    001dc015jmp 0x1dbe00
    001dc010
    001dc01a
    001dc01a // align 0x10
    001dc020
    001dc020logf:
    001dc020push rbp
    001dc021mov rbp, rsp
    001dc024movdqa x1, x0
    001dc028movd eax, x0
    001dc02ccmp eax, 0x7fffff
    001dc031jg 0x1dc06f
    001dc033xor edx, edx
    001dc035mov ecx, eax
    001dc037and ecx, 0x7fffffff
    001dc03dsete dl
    001dc040lea rsi, [rip-0x1488f7]
    001dc047movd x0, [rsi+4*rdx]
    001dc04ctest eax, eax
    001dc04ejs 0x1dc13b
    001dc054test ecx, ecx
    001dc056je 0x1dc13b
    001dc05cmulss x1, [rip-0x148ea0]
    001dc064movd eax, x1
    001dc068mov edx, -152
    001dc06djmp 0x1dc092
    001dc06f
    001dc06floc_1dc06f:
    001dc06fmovdqa x0, x1
    001dc073cmp eax, 0x7f800000
    001dc078jae 0x1dc13b
    001dc07emov edx, -127
    001dc083pxor x0, x0
    001dc087cmp eax, 0x3f800000
    001dc08cje 0x1dc13b
    001dc092
    001dc092loc_1dc092:
    001dc092add eax, 0x4afb0d
    001dc097mov ecx, eax
    001dc099shr ecx, 23
    001dc09cadd ecx, edx
    001dc09eand eax, 0x7fffff
    001dc0a3add eax, 0x3f3504f3
    001dc0a8movd x1, eax
    001dc0acaddss x1, [rip-0x148eec]
    001dc0b4movss x0, [rip-0x148ef0]
    001dc0bcaddss x0, x1
    001dc0c0movaps x2, x1
    001dc0c3divss x2, x0
    001dc0c7movaps x0, x2
    001dc0camulss x0, x2
    001dc0cemovaps x3, x0
    001dc0d1mulss x3, x0
    001dc0d5unpcklps x0, x3
    001dc0d8shufps x3, x3, 0
    001dc0dcmulps x3, [rip-0x148283]
    001dc0e3addps x3, [rip-0x14827a]
    001dc0eamulps x3, x0
    001dc0edmovaps x4, x3
    001dc0f0shufps x4, x3, 85
    001dc0f4addss x4, x3
    001dc0f8movss x3, [rip-0x148f30]
    001dc100xorps x0, x0
    001dc103cvtsi2ss x0, ecx
    001dc107mulss x3, x1
    001dc10bmulss x3, x1
    001dc10faddss x4, x3
    001dc113mulss x4, x2
    001dc117movss x2, [rip-0x148f4b]
    001dc11fmulss x2, x0
    001dc123addss x2, x4
    001dc127subss x2, x3
    001dc12baddss x2, x1
    001dc12fmulss x0, [rip-0x148f5f]
    001dc137addss x0, x2
    001dc13b
    001dc13bloc_1dc13b:
    001dc13bpop rbp
    001dc13cret
    001dc020
    001dc13d
    001dc13d // align 0x10
    001dc140
    001dc140log:
    001dc140push rbp
    001dc141mov rbp, rsp
    001dc144movq rcx, x0
    001dc149mov rax, rcx
    001dc14cshr rax, 32
    001dc150cmp eax, 0x100000
    001dc155jb 0x1dc179
    001dc157test rcx, rcx
    001dc15ajs 0x1dc179
    001dc15ccmp eax, 0x7ff00000
    001dc161jae 0x1dc177
    001dc163xor esi, esi
    001dc165mov edx, ecx
    001dc167cmp eax, 0x3ff00000
    001dc16cjne 0x1dc1a9
    001dc16epxor x0, x0
    001dc172test rdx, rdx
    001dc175jne 0x1dc1a9
    001dc177
    001dc177loc_1dc177:
    001dc177pop rbp
    001dc178ret
    001dc179
    001dc179loc_1dc179:
    001dc179mov rdx, 0x7fffffffffffffff
    001dc183xor esi, esi
    001dc185and rdx, rcx
    001dc188sete sil
    001dc18clea rdi, [rip-0x148313]
    001dc193movq x0, [rdi+8*rsi]
    001dc198test rcx, rcx
    001dc19bjs 0x1dc177
    001dc19dtest rdx, rdx
    001dc1a0je 0x1dc177
    001dc1a2mov edx, ecx
    001dc1a4mov esi, -54
    001dc1a9
    001dc1a9loc_1dc1a9:
    001dc1a9add eax, 0x95f62
    001dc1aemov ecx, eax
    001dc1b0shr ecx, 20
    001dc1b3add ecx, esi
    001dc1b5add ecx, -1023
    001dc1bband eax, 0xfffff
    001dc1c0add eax, 0x3fe6a09e
    001dc1c5shl rax, 32
    001dc1c9or rax, rdx
    001dc1ccmovq x1, rax
    001dc1d1addsd x1, [rip-0x148a81]
    001dc1d9movsd_xmm x2, [rip-0x148a81]
    001dc1e1mulsd x2, x1
    001dc1e5movsd_xmm x0, [rip-0x148a85]
    001dc1edaddsd x0, x1
    001dc1f1movapd x3, x1
    001dc1f5divsd x3, x0
    001dc1f9movapd x0, x3
    001dc1fdmulsd x0, x3
    001dc201movapd x4, x0
    001dc205mulsd x4, x0
    001dc209movsd_xmm x5, [rip-0x148aa1]
    001dc211mulsd x5, x4
    001dc215addsd x5, [rip-0x148aa5]
    001dc21dmulsd x2, x1
    001dc221movapd x6, x4
    001dc225unpcklpd x6, x4
    001dc229movapd x7, [rip-0x1483a1]
    001dc231unpcklpd x7, x5
    001dc235mulpd x7, x6
    001dc239addpd x7, [rip-0x1483a1]
    001dc241mulpd x7, x6
    001dc245addpd x7, [rip-0x14839d]
    001dc24dunpcklpd x4, x0
    001dc251mulpd x4, x7
    001dc255movapd x5, x4
    001dc259unpckhpd x5, x4
    001dc25daddsd x5, x4
    001dc261xorps x0, x0
    001dc264cvtsi2sd x0, ecx
    001dc268addsd x5, x2
    001dc26cmulsd x5, x3
    001dc270movsd_xmm x3, [rip-0x148af8]
    001dc278mulsd x3, x0
    001dc27caddsd x3, x5
    001dc280subsd x3, x2
    001dc284addsd x3, x1
    001dc288mulsd x0, [rip-0x148b08]
    001dc290addsd x0, x3
    001dc294pop rbp
    001dc295ret
    001dc140
    001dc296
    001dc296 // align 0x10
    001dc2a0
    001dc2a0__logx:
    001dc2a0push rbp
    001dc2a1mov rbp, rsp
    001dc2a4push r15
    001dc2a6push r14
    001dc2a8push rbx
    001dc2a9sub rsp, 56
    001dc2admov r15, 0x8000000000000000
    001dc2b7mov eax, [rbp+24]
    001dc2bamov rdx, [rbp+16]
    001dc2bemov edi, eax
    001dc2c0mov r14, 0x7fff000000000000
    001dc2caand di, 32767
    001dc2cfjne 0x1dc2e1
    001dc2d1xor esi, esi
    001dc2d3mov ecx, 0
    001dc2d8test rdx, rdx
    001dc2dbje 0x1dc365
    001dc2e1
    001dc2e1loc_1dc2e1:
    001dc2e1movzx ecx, di
    001dc2e4cmp ecx, 32767
    001dc2eajne 0x1dc2ff
    001dc2ecmov rsi, rdx
    001dc2efshl rsi, 49
    001dc2f3shr rdx, 15
    001dc2f7or rdx, r14
    001dc2famov rcx, rdx
    001dc2fdjmp 0x1dc365
    001dc2ff
    001dc2ffloc_1dc2ff:
    001dc2fftest rdx, rdx
    001dc302js 0x1dc310
    001dc304je 0x1dc32b
    001dc306bsr rsi, rdx
    001dc30axor rsi, 63
    001dc30ejmp 0x1dc330
    001dc310
    001dc310loc_1dc310:
    001dc310lea rsi, [r15-1]
    001dc314and rdx, rsi
    001dc317mov rsi, rdx
    001dc31ashl rsi, 49
    001dc31eshr rdx, 15
    001dc322shl rcx, 48
    001dc326or rcx, rdx
    001dc329jmp 0x1dc365
    001dc32b
    001dc32bloc_1dc32b:
    001dc32bmov esi, 64
    001dc330
    001dc330loc_1dc330:
    001dc330mov ecx, esi
    001dc332add cl, 50
    001dc335xor edi, edi
    001dc337shld rdi, rdx, cl
    001dc33bshl rdx, cl
    001dc33exor ebx, ebx
    001dc340test cl, 64
    001dc343cmovne rdi, rdx
    001dc347cmovne rdx, rbx
    001dc34bmov rbx, 0x1000000000000
    001dc355xor rbx, rdi
    001dc358lea ecx, [rsi+1]
    001dc35bshl rcx, 48
    001dc35for rcx, rbx
    001dc362mov rsi, rdx
    001dc365
    001dc365loc_1dc365:
    001dc365and eax, 32768
    001dc36ashl rax, 48
    001dc36eor rax, rcx
    001dc371mov [rbp-80], rsi
    001dc375mov [rbp-72], rax
    001dc379movaps x0, [rbp-80]
    001dc37dcall logq
    001dc382movaps [rbp-64], x0
    001dc386mov rdi, [rbp-64]
    001dc38amov rax, [rbp-56]
    001dc38emov rbx, 0x7fffffffffffffff
    001dc398mov rsi, rax
    001dc39bshld rsi, rdi, 15
    001dc3a0and rbx, rax
    001dc3a3mov rcx, rsi
    001dc3a6or rcx, r15
    001dc3a9mov rdx, rdi
    001dc3acneg rdx
    001dc3afsbb r14, rbx
    001dc3b2mov dx, 32767
    001dc3b6jb 0x1dc42a
    001dc3b8shr rbx, 48
    001dc3bcmov edx, ebx
    001dc3bemov rbx, 0x1ffffffffffff
    001dc3c8and rdi, rbx
    001dc3cbmov rbx, 0x1000000000001
    001dc3d5cmp rdi, rbx
    001dc3d8jb 0x1dc3f4
    001dc3damov rsi, rcx
    001dc3ddadd rsi, 1
    001dc3e1adc dx, 0
    001dc3e5xor esi, esi
    001dc3e7add rcx, 1
    001dc3ebcmove rsi, r15
    001dc3efor rcx, rsi
    001dc3f2jmp 0x1dc41c
    001dc3f4
    001dc3f4loc_1dc3f4:
    001dc3f4mov rbx, 0x1000000000000
    001dc3fecmp rdi, rbx
    001dc401jne 0x1dc41c
    001dc403and esi, 1
    001dc406mov rdi, rcx
    001dc409add rdi, rsi
    001dc40cadc dx, 0
    001dc410xor edi, edi
    001dc412add rcx, rsi
    001dc415cmovb rdi, r15
    001dc419or rcx, rdi
    001dc41c
    001dc41cloc_1dc41c:
    001dc41cadd r15, -1
    001dc420and r15, rcx
    001dc423test dx, dx
    001dc426cmove rcx, r15
    001dc42a
    001dc42aloc_1dc42a:
    001dc42ashr rax, 48
    001dc42eand eax, 32768
    001dc433or edx, eax
    001dc435mov [rbp-48], rcx
    001dc439mov [rbp-40], dx
    001dc43dfld [rbp-48]
    001dc440add rsp, 56
    001dc444pop rbx
    001dc445pop r14
    001dc447pop r15
    001dc449pop rbp
    001dc44aret
    001dc2a0