File akira_3298d203c2acb68c474e5fdad8379181890b4403d6491c523c13730129be3f75.elf
Function:
Loading..
00105990
00105990core::num::flt2dec::strategy::dragon::format_shortest:
00105990push rbp
00105991push r15
00105993push r14
00105995push r13
00105997push r12
00105999push rbx
0010599asub rsp, 1416
001059a1mov r13, rdx
001059a4mov rdx, [rsi]
001059a7test rdx, rdx
001059aaje 0x1069dd
001059b0mov rcx, [rsi+8]
001059b4test rcx, rcx
001059b7je 0x1069ed
001059bdmov rax, [rsi+16]
001059c1test rax, rax
001059c4je 0x106a07
001059camov r14, rdi
001059cdmov rdi, rdx
001059d0add rdi, rax
001059d3jb 0x106a21
001059d9cmp rdx, rcx
001059dcjb 0x106a3b
001059e2movsx rbx, [rsi+24]
001059e7dec rdi
001059eaje 0x1059f6
001059ecbsr rdi, rdi
001059f0xor rdi, 63
001059f4jmp 0x1059fb
001059f6
001059f6loc_1059f6:
001059f6mov edi, 64
001059fb
001059fbloc_1059fb:
001059fbmovzx esi, [rsi+26]
001059ffmov [rsp+15], sil
00105a04mov rsi, rbx
00105a07sub rsi, rdi
00105a0aimul rsi, rsi, 0x4d104d42
00105a11mov r15, 0x1344135080
00105a1badd r15, rsi
00105a1eshr r15, 32
00105a22xor esi, esi
00105a24xor edi, edi
00105a26mov r8, rdx
00105a29shr r8, 32
00105a2dcmove r8l, esi
00105a31setne dil
00105a35inc rdi
00105a38mov [rsp+208], rdi
00105a40mov [rsp+48], edx
00105a44mov [rsp+52], r8l
00105a49xorps x0, x0
00105a4cmovups [rsp+56], x0
00105a51movups [rsp+72], x0
00105a56movups [rsp+88], x0
00105a5bmovups [rsp+104], x0
00105a60movups [rsp+120], x0
00105a65movups [rsp+136], x0
00105a6dmovups [rsp+152], x0
00105a75movups [rsp+168], x0
00105a7dmovups [rsp+184], x0
00105a85mov [rsp+200], 0
00105a91xor edx, edx
00105a93mov rdi, rcx
00105a96shr rdi, 32
00105a9acmove edi, esi
00105a9dsetne dl
00105aa0inc rdx
00105aa3mov [rsp+736], rdx
00105aabmov [rsp+576], ecx
00105ab2mov [rsp+580], edi
00105ab9movups [rsp+584], x0
00105ac1movups [rsp+600], x0
00105ac9movups [rsp+616], x0
00105ad1movups [rsp+632], x0
00105ad9movups [rsp+648], x0
00105ae1movups [rsp+664], x0
00105ae9movups [rsp+680], x0
00105af1movups [rsp+696], x0
00105af9movups [rsp+712], x0
00105b01mov [rsp+728], 0
00105b0dxor ecx, ecx
00105b0fmov rdx, rax
00105b12shr rdx, 32
00105b16cmove edx, esi
00105b19setne cl
00105b1cinc rcx
00105b1fmov [rsp+400], rcx
00105b27mov [rsp+240], eax
00105b2emov [rsp+244], edx
00105b35movups [rsp+248], x0
00105b3dmovups [rsp+264], x0
00105b45movups [rsp+280], x0
00105b4dmovups [rsp+296], x0
00105b55movups [rsp+312], x0
00105b5dmovups [rsp+328], x0
00105b65movups [rsp+344], x0
00105b6dmovups [rsp+360], x0
00105b75movups [rsp+376], x0
00105b7dmov [rsp+392], 0
00105b89movups [rsp+552], x0
00105b91movups [rsp+540], x0
00105b99movups [rsp+524], x0
00105ba1movups [rsp+508], x0
00105ba9movups [rsp+492], x0
00105bb1movups [rsp+476], x0
00105bb9movups [rsp+460], x0
00105bc1movups [rsp+444], x0
00105bc9movups [rsp+428], x0
00105bd1movups [rsp+412], x0
00105bd9mov [rsp+568], 1
00105be5mov [rsp+408], 1
00105bf0test bx, bx
00105bf3js 0x105c1f
00105bf5movzx esi, bx
00105bf8lea rdi, [rsp+48]
00105bfdcall core::num::bignum::Big32x40::mul_pow2
00105c02lea rdi, [rsp+576]
00105c0amov rsi, rbx
00105c0dcall core::num::bignum::Big32x40::mul_pow2
00105c12lea rdi, [rsp+240]
00105c1amov rsi, rbx
00105c1djmp 0x105c2d
00105c1f
00105c1floc_105c1f:
00105c1fneg ebx
00105c21movsx rsi, bx
00105c25lea rdi, [rsp+408]
00105c2d
00105c2dloc_105c2d:
00105c2dcall core::num::bignum::Big32x40::mul_pow2
00105c32test r15w, r15w
00105c36js 0x105c46
00105c38movzx esi, r15w
00105c3clea rdi, [rsp+408]
00105c44jmp 0x105c76
00105c46
00105c46loc_105c46:
00105c46mov eax, r15l
00105c49neg eax
00105c4bmovzx ebx, ax
00105c4elea rdi, [rsp+48]
00105c53mov rsi, rbx
00105c56call core::num::flt2dec::strategy::dragon::mul_pow10
00105c5blea rdi, [rsp+576]
00105c63mov rsi, rbx
00105c66call core::num::flt2dec::strategy::dragon::mul_pow10
00105c6blea rdi, [rsp+240]
00105c73mov rsi, rbx
00105c76
00105c76loc_105c76:
00105c76call core::num::flt2dec::strategy::dragon::mul_pow10
00105c7bmov rbx, [rsp+208]
00105c83mov [rsp+904], rbx
00105c8blea rdi, [rsp+744]
00105c93lea rsi, [rsp+48]
00105c98mov edx, 160
00105c9dcall [rip+0x10be7d]
00105ca3mov rdi, [rsp+400]
00105cabcmp rbx, rdi
00105caemov rax, rdi
00105cb1cmova rax, rbx
00105cb5cmp rax, 40
00105cb9ja 0x106984
00105cbftest rax, rax
00105cc2je 0x105cd0
00105cc4cmp rax, 1
00105cc8jne 0x105cd7
00105ccaxor ecx, ecx
00105cccxor edx, edx
00105ccejmp 0x105d2b
00105cd0
00105cd0loc_105cd0:
00105cd0xor eax, eax
00105cd2jmp 0x105d71
00105cd7
00105cd7loc_105cd7:
00105cd7mov rsi, rax
00105cdaand rsi, -2
00105cdexor edx, edx
00105ce0xor ecx, ecx
00105ce2nop [rax+rax]
00105cf0
00105cf0loc_105cf0:
00105cf0movzx edx, dl
00105cf3bt rdx, 0
00105cf7mov edx, [rsp+4*rcx+240]
00105cfemov r8l, [rsp+4*rcx+244]
00105d06adc [rsp+4*rcx+744], edx
00105d0dadc [rsp+4*rcx+748], r8l
00105d15lea rcx, [rcx+2]
00105d19setb dl
00105d1ccmp rsi, rcx
00105d1fjne 0x105cf0
00105d21test al, 1
00105d23jne 0x105d2b
00105d25test dl, dl
00105d27jne 0x105d59
00105d29jmp 0x105d71
00105d2b
00105d2bloc_105d2b:
00105d2bmov esi, [rsp+4*rcx+744]
00105d32mov r8l, [rsp+4*rcx+240]
00105d3alea r9l, [rsi+r8]
00105d3emovzx r10l, dl
00105d42add r10l, r9l
00105d45setb dl
00105d48mov [rsp+4*rcx+744], r10l
00105d50add esi, r8l
00105d53jb 0x105d59
00105d55test dl, dl
00105d57je 0x105d71
00105d59
00105d59loc_105d59:
00105d59cmp rax, 39
00105d5dja 0x106940
00105d63mov [rsp+4*rax+744], 1
00105d6einc rax
00105d71
00105d71loc_105d71:
00105d71mov [rsp+904], rax
00105d79mov rcx, [rsp+568]
00105d81cmp rcx, rax
00105d84cmova rax, rcx
00105d88cmp rax, 41
00105d8cjae 0x106984
00105d92shl rax, 2
00105d96mov edx, 255
00105d9bnop [rax+rax]
00105da0
00105da0loc_105da0:
00105da0test rax, rax
00105da3je 0x105ddb
00105da5mov r8l, [rsp+rax+740]
00105dadxor esi, esi
00105dafcmp r8l, [rsp+rax+404]
00105db7setne sil
00105dbbcmova esi, edx
00105dbeadd rax, -4
00105dc2test sil, sil
00105dc5je 0x105da0
00105dc7cmp sil, [rsp+15]
00105dccjge 0x105dfd
00105dce
00105dceloc_105dce:
00105dceinc r15l
00105dd1mov [rsp+32], r15
00105dd6jmp 0x105f2e
00105ddb
00105ddbloc_105ddb:
00105ddbadd rax, rsp
00105ddeadd rax, 744
00105de4lea rdx, [rsp+744]
00105deccmp rax, rdx
00105defsetne sil
00105df3neg sil
00105df6cmp sil, [rsp+15]
00105dfbjl 0x105dce
00105dfd
00105dfdloc_105dfd:
00105dfdtest rbx, rbx
00105e00je 0x105e46
00105e02lea rdx, [4*rbx]
00105e0axor esi, esi
00105e0cxor eax, eax
00105e0enop
00105e10
00105e10loc_105e10:
00105e10mov r8l, [rsp+rsi+48]
00105e15lea r8, [r8+4*r8]
00105e19lea rax, [rax+2*r8]
00105e1dmov [rsp+rsi+48], eax
00105e21shr rax, 32
00105e25add rsi, 4
00105e29cmp rdx, rsi
00105e2cjne 0x105e10
00105e2etest rax, rax
00105e31je 0x105e48
00105e33cmp rbx, 39
00105e37ja 0x106958
00105e3dmov [rsp+4*rbx+48], eax
00105e41inc rbx
00105e44jmp 0x105e48
00105e46
00105e46loc_105e46:
00105e46xor ebx, ebx
00105e48
00105e48loc_105e48:
00105e48mov [rsp+208], rbx
00105e50mov rax, [rsp+736]
00105e58cmp rax, 41
00105e5cjae 0x106984
00105e62test rax, rax
00105e65je 0x105ec0
00105e67lea rsi, [4*rax]
00105e6fxor r8l, r8l
00105e72xor edx, edx
00105e74nop [rax+rax]
00105e80
00105e80loc_105e80:
00105e80mov r9l, [rsp+r8+576]
00105e88lea r9, [r9+4*r9]
00105e8clea rdx, [rdx+2*r9]
00105e90mov [rsp+r8+576], edx
00105e98shr rdx, 32
00105e9cadd r8, 4
00105ea0cmp rsi, r8
00105ea3jne 0x105e80
00105ea5test rdx, rdx
00105ea8je 0x105ec2
00105eaacmp rax, 39
00105eaeja 0x106940
00105eb4mov [rsp+4*rax+576], edx
00105ebbinc rax
00105ebejmp 0x105ec2
00105ec0
00105ec0loc_105ec0:
00105ec0xor eax, eax
00105ec2
00105ec2loc_105ec2:
00105ec2mov [rsp+736], rax
00105ecatest rdi, rdi
00105ecdje 0x105f1f
00105ecflea rdx, [4*rdi]
00105ed7xor esi, esi
00105ed9xor eax, eax
00105edbnop [rax+rax]
00105ee0
00105ee0loc_105ee0:
00105ee0mov r8l, [rsp+rsi+240]
00105ee8lea r8, [r8+4*r8]
00105eeclea rax, [rax+2*r8]
00105ef0mov [rsp+rsi+240], eax
00105ef7shr rax, 32
00105efbadd rsi, 4
00105effcmp rdx, rsi
00105f02jne 0x105ee0
00105f04test rax, rax
00105f07je 0x105f21
00105f09cmp rdi, 39
00105f0dja 0x10690b
00105f13mov [rsp+4*rdi+240], eax
00105f1ainc rdi
00105f1djmp 0x105f21
00105f1f
00105f1floc_105f1f:
00105f1fxor edi, edi
00105f21
00105f21loc_105f21:
00105f21mov [rsp+32], r15
00105f26mov [rsp+400], rdi
00105f2e
00105f2eloc_105f2e:
00105f2emov [rsp+1072], rcx
00105f36lea r15, [rsp+912]
00105f3elea rbx, [rsp+408]
00105f46mov r12, [rip+0x10bbd3]
00105f4dmov edx, 160
00105f52mov rdi, r15
00105f55mov rsi, rbx
00105f58call r12
00105f5bmov esi, 1
00105f60mov rdi, r15
00105f63call core::num::bignum::Big32x40::mul_pow2
00105f68mov rax, [rsp+568]
00105f70mov [rsp+1240], rax
00105f78lea r15, [rsp+1080]
00105f80mov edx, 160
00105f85mov rdi, r15
00105f88mov rsi, rbx
00105f8bcall r12
00105f8emov esi, 2
00105f93mov rdi, r15
00105f96call core::num::bignum::Big32x40::mul_pow2
00105f9bmov rax, [rsp+568]
00105fa3mov [rsp+1408], rax
00105fablea r15, [rsp+1248]
00105fb3mov edx, 160
00105fb8mov rdi, r15
00105fbbmov rsi, rbx
00105fbecall r12
00105fc1mov esi, 3
00105fc6mov rdi, r15
00105fc9call core::num::bignum::Big32x40::mul_pow2
00105fcemov rdi, [rsp+1408]
00105fd6mov rbp, [rsp+208]
00105fdecmp rbp, rdi
00105fe1mov [rsp+216], rdi
00105fe9cmova rdi, rbp
00105fedcmp rdi, 40
00105ff1ja 0x10699a
00105ff7mov [rsp+24], r14
00105ffcmov rax, [rsp+1240]
00106004mov [rsp+232], rax
0010600cmov rax, [rsp+1072]
00106014mov [rsp+224], rax
0010601cmov r11, [rsp+568]
00106024xor r12l, r12l
00106027mov r14l, 255
0010602dmov [rsp+16], r13
00106032jmp 0x106068
00106034
00106034 66 66 66 2e 0f 1f 84 00 00 00 00 00 fff.........
00106040
00106040loc_106040:
00106040xor edi, edi
00106042mov r13, [rsp+16]
00106047
00106047loc_106047:
00106047mov [rsp+400], rdi
0010604fmov rdi, [rsp+216]
00106057cmp rbp, rdi
0010605acmova rdi, rbp
0010605ecmp rdi, 40
00106062ja 0x10699a
00106068
00106068loc_106068:
00106068mov rbx, r12
0010606blea rax, [4*rdi]
00106073nop [rax+rax]
00106080
00106080loc_106080:
00106080test rax, rax
00106083je 0x1060c0
00106085mov edx, [rsp+rax+1244]
0010608cxor ecx, ecx
0010608ecmp edx, [rsp+rax+44]
00106092setne cl
00106095cmova ecx, r14l
00106099add rax, -4
0010609dtest cl, cl
0010609fje 0x106080
001060a1cmp cl, 1
001060a4ja 0x1060de
001060a6
001060a6loc_1060a6:
001060a6test rdi, rdi
001060a9je 0x10614f
001060afcmp rdi, 1
001060b3jne 0x1060e5
001060b5mov al, 1
001060b7xor ecx, ecx
001060b9jmp 0x106123
001060bb
001060bb 0f 1f 44 00 00 ..D..
001060c0
001060c0loc_1060c0:
001060c0add rax, rsp
001060c3add rax, 1248
001060c9lea rcx, [rsp+1248]
001060d1cmp rax, rcx
001060d4setne cl
001060d7neg cl
001060d9cmp cl, 1
001060dcjbe 0x1060a6
001060de
001060deloc_1060de:
001060dexor ecx, ecx
001060e0mov rdi, rbp
001060e3jmp 0x106159
001060e5
001060e5loc_1060e5:
001060e5mov rdx, rdi
001060e8and rdx, -2
001060ecmov al, 1
001060eexor ecx, ecx
001060f0
001060f0loc_1060f0:
001060f0mov esi, [rsp+4*rcx+1248]
001060f7not esi
001060f9movzx eax, al
001060fcbt rax, 0
00106100adc [rsp+4*rcx+48], esi
00106104mov eax, [rsp+4*rcx+1252]
0010610bnot eax
0010610dadc [rsp+4*rcx+52], eax
00106111lea rcx, [rcx+2]
00106115setb al
00106118cmp rdx, rcx
0010611bjne 0x1060f0
0010611dtest dil, 1
00106121je 0x106147
00106123
00106123loc_106123:
00106123mov edx, [rsp+4*rcx+1248]
0010612anot edx
0010612cmov esi, [rsp+4*rcx+48]
00106130lea r8l, [rdx+rsi]
00106134movzx r9l, al
00106138add r9l, r8l
0010613bsetb al
0010613emov [rsp+4*rcx+48], r9l
00106143add edx, esi
00106145jb 0x10614f
00106147
00106147loc_106147:
00106147test al, al
00106149je 0x1069ad
0010614f
0010614floc_10614f:
0010614fmov [rsp+208], rdi
00106157mov cl, 8
00106159
00106159loc_106159:
00106159mov rax, [rsp+232]
00106161cmp rdi, rax
00106164cmova rax, rdi
00106168cmp rax, 41
0010616cjae 0x106984
00106172lea rdx, [4*rax]
0010617anop [rax+rax]
00106180
00106180loc_106180:
00106180test rdx, rdx
00106183je 0x1061c0
00106185mov r8l, [rsp+rdx+1076]
0010618dxor esi, esi
0010618fcmp r8l, [rsp+rdx+44]
00106194setne sil
00106198cmova esi, r14l
0010619cadd rdx, -4
001061a0test sil, sil
001061a3je 0x106180
001061a5cmp sil, 1
001061a9ja 0x1061e2
001061ab
001061abloc_1061ab:
001061abtest rax, rax
001061aeje 0x106262
001061b4cmp rax, 1
001061b8jne 0x1061ea
001061bamov dl, 1
001061bcxor esi, esi
001061bejmp 0x106234
001061c0
001061c0loc_1061c0:
001061c0add rdx, rsp
001061c3add rdx, 1080
001061calea rsi, [rsp+1080]
001061d2cmp rdx, rsi
001061d5setne sil
001061d9neg sil
001061dccmp sil, 1
001061e0jbe 0x1061ab
001061e2
001061e2loc_1061e2:
001061e2mov rax, rdi
001061e5jmp 0x10626d
001061ea
001061ealoc_1061ea:
001061eamov rdi, rax
001061edand rdi, -2
001061f1mov dl, 1
001061f3xor esi, esi
001061f5nop [rax+rax]
00106200
00106200loc_106200:
00106200mov r8l, [rsp+4*rsi+1080]
00106208not r8l
0010620bmovzx edx, dl
0010620ebt rdx, 0
00106212adc [rsp+4*rsi+48], r8l
00106217mov edx, [rsp+4*rsi+1084]
0010621enot edx
00106220adc [rsp+4*rsi+52], edx
00106224lea rsi, [rsi+2]
00106228setb dl
0010622bcmp rdi, rsi
0010622ejne 0x106200
00106230test al, 1
00106232je 0x10625a
00106234
00106234loc_106234:
00106234mov edi, [rsp+4*rsi+1080]
0010623bnot edi
0010623dmov r8l, [rsp+4*rsi+48]
00106242lea r9l, [rdi+r8]
00106246movzx r10l, dl
0010624aadd r10l, r9l
0010624dsetb dl
00106250mov [rsp+4*rsi+48], r10l
00106255add edi, r8l
00106258jb 0x106262
0010625a
0010625aloc_10625a:
0010625atest dl, dl
0010625cje 0x1069ad
00106262
00106262loc_106262:
00106262mov [rsp+208], rax
0010626aor cl, 4
0010626d
0010626dloc_10626d:
0010626dmov rdi, [rsp+224]
00106275cmp rax, rdi
00106278cmova rdi, rax
0010627ccmp rdi, 41
00106280jae 0x10699a
00106286lea rdx, [4*rdi]
0010628enop
00106290
00106290loc_106290:
00106290test rdx, rdx
00106293je 0x1062d0
00106295mov r8l, [rsp+rdx+908]
0010629dxor esi, esi
0010629fcmp r8l, [rsp+rdx+44]
001062a4setne sil
001062a8cmova esi, r14l
001062acadd rdx, -4
001062b0test sil, sil
001062b3je 0x106290
001062b5cmp sil, 1
001062b9ja 0x1062f2
001062bb
001062bbloc_1062bb:
001062bbtest rdi, rdi
001062beje 0x106374
001062c4cmp rdi, 1
001062c8jne 0x1062fa
001062camov al, 1
001062ccxor edx, edx
001062cejmp 0x106346
001062d0
001062d0loc_1062d0:
001062d0add rdx, rsp
001062d3add rdx, 912
001062dalea rsi, [rsp+912]
001062e2cmp rdx, rsi
001062e5setne sil
001062e9neg sil
001062eccmp sil, 1
001062f0jbe 0x1062bb
001062f2
001062f2loc_1062f2:
001062f2mov rdi, rax
001062f5jmp 0x10637f
001062fa
001062faloc_1062fa:
001062famov rsi, rdi
001062fdand rsi, -2
00106301mov al, 1
00106303xor edx, edx
00106305nop [rax+rax]
00106310
00106310loc_106310:
00106310mov r8l, [rsp+4*rdx+912]
00106318not r8l
0010631bmovzx eax, al
0010631ebt rax, 0
00106322adc [rsp+4*rdx+48], r8l
00106327mov eax, [rsp+4*rdx+916]
0010632enot eax
00106330adc [rsp+4*rdx+52], eax
00106334lea rdx, [rdx+2]
00106338setb al
0010633bcmp rsi, rdx
0010633ejne 0x106310
00106340test dil, 1
00106344je 0x10636c
00106346
00106346loc_106346:
00106346mov esi, [rsp+4*rdx+912]
0010634dnot esi
0010634fmov r8l, [rsp+4*rdx+48]
00106354lea r9l, [rsi+r8]
00106358movzx r10l, al
0010635cadd r10l, r9l
0010635fsetb al
00106362mov [rsp+4*rdx+48], r10l
00106367add esi, r8l
0010636ajb 0x106374
0010636c
0010636cloc_10636c:
0010636ctest al, al
0010636eje 0x1069ad
00106374
00106374loc_106374:
00106374mov [rsp+208], rdi
0010637cadd cl, 2
0010637f
0010637floc_10637f:
0010637fcmp rdi, r11
00106382mov rbp, r11
00106385cmova rbp, rdi
00106389cmp rbp, 41
0010638djae 0x1069c7
00106393lea rax, [4*rbp]
0010639bnop [rax+rax]
001063a0
001063a0loc_1063a0:
001063a0test rax, rax
001063a3je 0x1063e0
001063a5mov esi, [rsp+rax+404]
001063acxor edx, edx
001063aecmp esi, [rsp+rax+44]
001063b2setne dl
001063b5cmova edx, r14l
001063b9add rax, -4
001063bdtest dl, dl
001063bfje 0x1063a0
001063c1cmp dl, 1
001063c4ja 0x1063fe
001063c6
001063c6loc_1063c6:
001063c6test rbp, rbp
001063c9je 0x10646f
001063cfcmp rbp, 1
001063d3jne 0x106403
001063d5mov al, 1
001063d7xor edx, edx
001063d9jmp 0x106443
001063db
001063db 0f 1f 44 00 00 ..D..
001063e0
001063e0loc_1063e0:
001063e0add rax, rsp
001063e3add rax, 408
001063e9lea rdx, [rsp+408]
001063f1cmp rax, rdx
001063f4setne dl
001063f7neg dl
001063f9cmp dl, 1
001063fcjbe 0x1063c6
001063fe
001063feloc_1063fe:
001063femov rbp, rdi
00106401jmp 0x106479
00106403
00106403loc_106403:
00106403mov rsi, rbp
00106406and rsi, -2
0010640amov al, 1
0010640cxor edx, edx
0010640enop
00106410
00106410loc_106410:
00106410mov edi, [rsp+4*rdx+408]
00106417not edi
00106419movzx eax, al
0010641cbt rax, 0
00106420adc [rsp+4*rdx+48], edi
00106424mov eax, [rsp+4*rdx+412]
0010642bnot eax
0010642dadc [rsp+4*rdx+52], eax
00106431lea rdx, [rdx+2]
00106435setb al
00106438cmp rsi, rdx
0010643bjne 0x106410
0010643dtest bpl, 1
00106441je 0x106467
00106443
00106443loc_106443:
00106443mov esi, [rsp+4*rdx+408]
0010644anot esi
0010644cmov edi, [rsp+4*rdx+48]
00106450lea r8l, [rsi+rdi]
00106454movzx r9l, al
00106458add r9l, r8l
0010645bsetb al
0010645emov [rsp+4*rdx+48], r9l
00106463add esi, edi
00106465jb 0x10646f
00106467
00106467loc_106467:
00106467test al, al
00106469je 0x1069ad
0010646f
0010646floc_10646f:
0010646fmov [rsp+208], rbp
00106477inc cl
00106479
00106479loc_106479:
00106479cmp rbx, 17
0010647dje 0x1068f3
00106483add cl, 48
00106486mov [r13+rbx], cl
0010648bmov r13, [rsp+736]
00106493cmp rbp, r13
00106496mov rdi, r13
00106499cmova rdi, rbp
0010649dcmp rdi, 41
001064a1jae 0x10699a
001064a7mov r12, r11
001064aamov [rsp+40], rbx
001064aflea r15, [rbx+1]
001064b3shl rdi, 2
001064b7nop [rax+rax]
001064c0
001064c0loc_1064c0:
001064c0test rdi, rdi
001064c3je 0x1064f0
001064c5mov eax, [rsp+rdi+572]
001064ccxor ebx, ebx
001064cecmp eax, [rsp+rdi+44]
001064d2setne bl
001064d5cmova ebx, r14l
001064d9add rdi, -4
001064ddtest bl, bl
001064dfje 0x1064c0
001064e1jmp 0x10650a
001064e3
001064e3 66 66 66 66 2e 0f 1f 84 00 00 00 00 00 ffff.........
001064f0
001064f0loc_1064f0:
001064f0lea rax, [rsp+rdi]
001064f4add rax, 576
001064falea rcx, [rsp+576]
00106502cmp rax, rcx
00106505setne bl
00106508neg bl
0010650a
0010650aloc_10650a:
0010650amov [rsp+904], rbp
00106512mov edx, 160
00106517lea rdi, [rsp+744]
0010651flea rsi, [rsp+48]
00106524call [rip+0x10b5f6]
0010652amov rdi, [rsp+400]
00106532cmp rbp, rdi
00106535mov rax, rdi
00106538cmova rax, rbp
0010653ccmp rax, 40
00106540ja 0x106984
00106546test rax, rax
00106549mov r11, r12
0010654cje 0x106560
0010654ecmp rax, 1
00106552mov r12, r15
00106555jne 0x106570
00106557xor ecx, ecx
00106559xor edx, edx
0010655bjmp 0x1065c0
0010655d
0010655d 0f 1f 00 ...
00106560
00106560loc_106560:
00106560xor eax, eax
00106562mov r12, r15
00106565jmp 0x106606
0010656a
0010656a 66 0f 1f 44 00 00 f..D..
00106570
00106570loc_106570:
00106570mov rsi, rax
00106573and rsi, -2
00106577xor edx, edx
00106579xor ecx, ecx
0010657bnop [rax+rax]
00106580
00106580loc_106580:
00106580movzx edx, dl
00106583bt rdx, 0
00106587mov edx, [rsp+4*rcx+240]
0010658emov r8l, [rsp+4*rcx+244]
00106596adc [rsp+4*rcx+744], edx
0010659dadc [rsp+4*rcx+748], r8l
001065a5lea rcx, [rcx+2]
001065a9setb dl
001065accmp rsi, rcx
001065afjne 0x106580
001065b1test al, 1
001065b3jne 0x1065c0
001065b5test dl, dl
001065b7jne 0x1065ee
001065b9jmp 0x106606
001065bb
001065bb 0f 1f 44 00 00 ..D..
001065c0
001065c0loc_1065c0:
001065c0mov esi, [rsp+4*rcx+744]
001065c7mov r8l, [rsp+4*rcx+240]
001065cflea r9l, [rsi+r8]
001065d3movzx r10l, dl
001065d7add r10l, r9l
001065dasetb dl
001065ddmov [rsp+4*rcx+744], r10l
001065e5add esi, r8l
001065e8jb 0x1065ee
001065eatest dl, dl
001065ecje 0x106606
001065ee
001065eeloc_1065ee:
001065eecmp rax, 39
001065f2ja 0x106940
001065f8mov [rsp+4*rax+744], 1
00106603inc rax
00106606
00106606loc_106606:
00106606mov [rsp+904], rax
0010660ecmp r11, rax
00106611cmova rax, r11
00106615cmp rax, 41
00106619jae 0x106984
0010661fshl rax, 2
00106623nop [rax+rax]
00106630
00106630loc_106630:
00106630test rax, rax
00106633je 0x106660
00106635mov edx, [rsp+rax+740]
0010663cxor ecx, ecx
0010663ecmp edx, [rsp+rax+404]
00106645setne cl
00106648cmova ecx, r14l
0010664cadd rax, -4
00106650test cl, cl
00106652je 0x106630
00106654jmp 0x106679
00106656
00106656 66 2e 0f 1f 84 00 00 00 00 00 f.........
00106660
00106660loc_106660:
00106660add rax, rsp
00106663add rax, 744
00106669lea rcx, [rsp+744]
00106671cmp rax, rcx
00106674setne cl
00106677neg cl
00106679
00106679loc_106679:
00106679movzx eax, [rsp+15]
0010667ecmp bl, al
00106680jl 0x1067b5
00106686cmp cl, al
00106688jl 0x1067b5
0010668etest rbp, rbp
00106691je 0x1066e0
00106693lea rcx, [4*rbp]
0010669bxor edx, edx
0010669dxor eax, eax
0010669fnop
001066a0
001066a0loc_1066a0:
001066a0mov esi, [rsp+rdx+48]
001066a4lea rsi, [rsi+4*rsi]
001066a8lea rax, [rax+2*rsi]
001066acmov [rsp+rdx+48], eax
001066b0shr rax, 32
001066b4add rdx, 4
001066b8cmp rcx, rdx
001066bbjne 0x1066a0
001066bdtest rax, rax
001066c0je 0x1066e2
001066c2cmp rbp, 39
001066c6ja 0x106914
001066ccmov [rsp+4*rbp+48], eax
001066d0inc rbp
001066d3jmp 0x1066e2
001066d5
001066d5 66 66 2e 0f 1f 84 00 00 00 00 00 ff.........
001066e0
001066e0loc_1066e0:
001066e0xor ebp, ebp
001066e2
001066e2loc_1066e2:
001066e2mov [rsp+208], rbp
001066eatest r13, r13
001066edje 0x106740
001066eflea rcx, [4*r13]
001066f7xor edx, edx
001066f9xor eax, eax
001066fbnop [rax+rax]
00106700
00106700loc_106700:
00106700mov esi, [rsp+rdx+576]
00106707lea rsi, [rsi+4*rsi]
0010670blea rax, [rax+2*rsi]
0010670fmov [rsp+rdx+576], eax
00106716shr rax, 32
0010671aadd rdx, 4
0010671ecmp rcx, rdx
00106721jne 0x106700
00106723test rax, rax
00106726je 0x106743
00106728cmp r13, 39
0010672cja 0x10692a
00106732mov [rsp+4*r13+576], eax
0010673ainc r13
0010673djmp 0x106743
0010673f
0010673f 90 .
00106740
00106740loc_106740:
00106740xor r13l, r13l
00106743
00106743loc_106743:
00106743mov [rsp+736], r13
0010674btest rdi, rdi
0010674eje 0x106040
00106754lea rcx, [4*rdi]
0010675cxor edx, edx
0010675exor eax, eax
00106760mov r13, [rsp+16]
00106765nop [rax+rax]
00106770
00106770loc_106770:
00106770mov esi, [rsp+rdx+240]
00106777lea rsi, [rsi+4*rsi]
0010677blea rax, [rax+2*rsi]
0010677fmov [rsp+rdx+240], eax
00106786shr rax, 32
0010678aadd rdx, 4
0010678ecmp rcx, rdx
00106791jne 0x106770
00106793test rax, rax
00106796je 0x106047
0010679ccmp rdi, 39
001067a0ja 0x10690b
001067a6mov [rsp+4*rdi+240], eax
001067adinc rdi
001067b0jmp 0x106047
001067b5
001067b5loc_1067b5:
001067b5cmp cl, al
001067b7mov r15, [rsp+16]
001067bcmov r14, [rsp+32]
001067c1jge 0x10688d
001067c7cmp bl, al
001067c9jge 0x106851
001067cflea rdi, [rsp+48]
001067d4mov esi, 1
001067d9call core::num::bignum::Big32x40::mul_pow2
001067demov rax, [rsp+208]
001067e6mov rdi, [rsp+568]
001067eecmp rax, rdi
001067f1cmova rdi, rax
001067f5cmp rdi, 41
001067f9jae 0x10699a
001067ffshl rdi, 2
00106803mov eax, 255
00106808nop [rax+rax]
00106810
00106810loc_106810:
00106810test rdi, rdi
00106813je 0x106832
00106815mov edx, [rsp+rdi+404]
0010681cxor ecx, ecx
0010681ecmp edx, [rsp+rdi+44]
00106822setne cl
00106825cmova ecx, eax
00106828add rdi, -4
0010682ctest cl, cl
0010682eje 0x106810
00106830jmp 0x10684c
00106832
00106832loc_106832:
00106832lea rax, [rsp+rdi]
00106836add rax, 408
0010683clea rcx, [rsp+408]
00106844cmp rax, rcx
00106847setne cl
0010684aneg cl
0010684c
0010684cloc_10684c:
0010684ccmp cl, 2
0010684fjae 0x10688d
00106851
00106851loc_106851:
00106851mov rdx, -1
00106858mov rax, r12
0010685bmov rbx, [rsp+40]
00106860
00106860loc_106860:
00106860test rax, rax
00106863je 0x1068bc
00106865mov rdi, rax
00106868dec rax
0010686binc rdx
0010686ecmp [r15+rdi-1], 57
00106874je 0x106860
00106876inc [r15+rax]
0010687acmp rdi, rbx
0010687dja 0x10688d
0010687fadd rdi, r15
00106882mov esi, 48
00106887call [rip+0x10b27b]
0010688d
0010688dloc_10688d:
0010688dcmp [rsp+40], 17
00106893jae 0x106a55
00106899
00106899loc_106899:
00106899mov rax, [rsp+24]
0010689emov [rax], r15
001068a1mov [rax+8], r12
001068a5mov [rax+16], r14w
001068aaadd rsp, 1416
001068b1pop rbx
001068b2pop r12
001068b4pop r13
001068b6pop r14
001068b8pop r15
001068bapop rbp
001068bbret
001068bc
001068bcloc_1068bc:
001068bcmov [r15], 49
001068c0test rbx, rbx
001068c3je 0x1068e1
001068c5lea rdi, [r15+1]
001068c9mov esi, 48
001068cemov rdx, rbx
001068d1call [rip+0x10b231]
001068d7cmp rbx, 15
001068dbja 0x10696e
001068e1
001068e1loc_1068e1:
001068e1mov [r15+rbx+1], 48
001068e7add rbx, 2
001068ebinc r14l
001068eemov r12, rbx
001068f1jmp 0x106899
001068f3
001068f3loc_1068f3:
001068f3lea rdx, [rip+0xe3f96]
001068famov edi, 17
001068ffmov esi, 17
00106904call core::panicking::panic_bounds_check
00106909ud2
0010690b
0010690bloc_10690b:
0010690blea rdx, [rip+0xe48d6]
00106912jmp 0x10694c
00106914
00106914loc_106914:
00106914lea rdx, [rip+0xe48cd]
0010691bmov esi, 40
00106920mov rdi, rbp
00106923call core::panicking::panic_bounds_check
00106928ud2
0010692a
0010692aloc_10692a:
0010692alea rdx, [rip+0xe48b7]
00106931mov esi, 40
00106936mov rdi, r13
00106939call core::panicking::panic_bounds_check
0010693eud2
00106940
00106940loc_106940:
00106940lea rdx, [rip+0xe48a1]
00106947mov edi, 40
0010694c
0010694cloc_10694c:
0010694cmov esi, 40
00106951call core::panicking::panic_bounds_check
00106956ud2
00106958
00106958loc_106958:
00106958lea rdx, [rip+0xe4889]
0010695fmov esi, 40
00106964mov rdi, rbx
00106967call core::panicking::panic_bounds_check
0010696cud2
0010696e
0010696eloc_10696e:
0010696elea rdx, [rip+0xe3f33]
00106975mov esi, 17
0010697amov rdi, r12
0010697dcall core::panicking::panic_bounds_check
00106982ud2
00106984
00106984loc_106984:
00106984lea rdx, [rip+0xe485d]
0010698bmov esi, 40
00106990mov rdi, rax
00106993call core::slice::index::slice_end_index_len_fail
00106998ud2
0010699a
0010699aloc_10699a:
0010699alea rdx, [rip+0xe4847]
001069a1mov esi, 40
001069a6call core::slice::index::slice_end_index_len_fail
001069abud2
001069ad
001069adloc_1069ad:
001069adlea rdi, [rip-0xc25f5]
001069b4lea rdx, [rip+0xe482d]
001069bbmov esi, 26
001069c0call core::panicking::panic
001069c5ud2
001069c7
001069c7loc_1069c7:
001069c7lea rdx, [rip+0xe481a]
001069cemov esi, 40
001069d3mov rdi, rbp
001069d6call core::slice::index::slice_end_index_len_fail
001069dbud2
001069dd
001069ddloc_1069dd:
001069ddlea rdi, [rip-0xc3899]
001069e4lea rdx, [rip+0xe3e5d]
001069ebjmp 0x106a15
001069ed
001069edloc_1069ed:
001069edlea rdi, [rip-0xc388d]
001069f4lea rdx, [rip+0xe3e65]
001069fbmov esi, 29
00106a00call core::panicking::panic
00106a05ud2
00106a07
00106a07loc_106a07:
00106a07lea rdi, [rip-0xc388a]
00106a0elea rdx, [rip+0xe3e63]
00106a15
00106a15loc_106a15:
00106a15mov esi, 28
00106a1acall core::panicking::panic
00106a1fud2
00106a21
00106a21loc_106a21:
00106a21lea rdi, [rip-0xc3851]
00106a28lea rdx, [rip+0xe3ec1]
00106a2fmov esi, 54
00106a34call core::panicking::panic
00106a39ud2
00106a3b
00106a3bloc_106a3b:
00106a3blea rdi, [rip-0xc38a2]
00106a42lea rdx, [rip+0xe3e8f]
00106a49mov esi, 55
00106a4ecall core::panicking::panic
00106a53ud2
00106a55
00106a55loc_106a55:
00106a55lea rdx, [rip+0xe3e64]
00106a5cmov esi, 17
00106a61mov rdi, r12
00106a64call core::slice::index::slice_end_index_len_fail
00106a69ud2
00105990
00105990core::num::flt2dec::strategy::dragon::format_shortest:
00105990push rbp
00105991push r15
00105993push r14
00105995push r13
00105997push r12
00105999push rbx
0010599asub rsp, 1416
001059a1mov r13, rdx
001059a4mov rdx, [rsi]
001059a7test rdx, rdx
001059aaje 0x1069dd
001059b0mov rcx, [rsi+8]
001059b4test rcx, rcx
001059b7je 0x1069ed
001059bdmov rax, [rsi+16]
001059c1test rax, rax
001059c4je 0x106a07
001059camov r14, rdi
001059cdmov rdi, rdx
001059d0add rdi, rax
001059d3jb 0x106a21
001059d9cmp rdx, rcx
001059dcjb 0x106a3b
001059e2movsx rbx, [rsi+24]
001059e7dec rdi
001059eaje 0x1059f6
001059ecbsr rdi, rdi
001059f0xor rdi, 63
001059f4jmp 0x1059fb
001059f6
001059f6loc_1059f6:
001059f6mov edi, 64
001059fb
001059fbloc_1059fb:
001059fbmovzx esi, [rsi+26]
001059ffmov [rsp+15], sil
00105a04mov rsi, rbx
00105a07sub rsi, rdi
00105a0aimul rsi, rsi, 0x4d104d42
00105a11mov r15, 0x1344135080
00105a1badd r15, rsi
00105a1eshr r15, 32
00105a22xor esi, esi
00105a24xor edi, edi
00105a26mov r8, rdx
00105a29shr r8, 32
00105a2dcmove r8l, esi
00105a31setne dil
00105a35inc rdi
00105a38mov [rsp+208], rdi
00105a40mov [rsp+48], edx
00105a44mov [rsp+52], r8l
00105a49xorps x0, x0
00105a4cmovups [rsp+56], x0
00105a51movups [rsp+72], x0
00105a56movups [rsp+88], x0
00105a5bmovups [rsp+104], x0
00105a60movups [rsp+120], x0
00105a65movups [rsp+136], x0
00105a6dmovups [rsp+152], x0
00105a75movups [rsp+168], x0
00105a7dmovups [rsp+184], x0
00105a85mov [rsp+200], 0
00105a91xor edx, edx
00105a93mov rdi, rcx
00105a96shr rdi, 32
00105a9acmove edi, esi
00105a9dsetne dl
00105aa0inc rdx
00105aa3mov [rsp+736], rdx
00105aabmov [rsp+576], ecx
00105ab2mov [rsp+580], edi
00105ab9movups [rsp+584], x0
00105ac1movups [rsp+600], x0
00105ac9movups [rsp+616], x0
00105ad1movups [rsp+632], x0
00105ad9movups [rsp+648], x0
00105ae1movups [rsp+664], x0
00105ae9movups [rsp+680], x0
00105af1movups [rsp+696], x0
00105af9movups [rsp+712], x0
00105b01mov [rsp+728], 0
00105b0dxor ecx, ecx
00105b0fmov rdx, rax
00105b12shr rdx, 32
00105b16cmove edx, esi
00105b19setne cl
00105b1cinc rcx
00105b1fmov [rsp+400], rcx
00105b27mov [rsp+240], eax
00105b2emov [rsp+244], edx
00105b35movups [rsp+248], x0
00105b3dmovups [rsp+264], x0
00105b45movups [rsp+280], x0
00105b4dmovups [rsp+296], x0
00105b55movups [rsp+312], x0
00105b5dmovups [rsp+328], x0
00105b65movups [rsp+344], x0
00105b6dmovups [rsp+360], x0
00105b75movups [rsp+376], x0
00105b7dmov [rsp+392], 0
00105b89movups [rsp+552], x0
00105b91movups [rsp+540], x0
00105b99movups [rsp+524], x0
00105ba1movups [rsp+508], x0
00105ba9movups [rsp+492], x0
00105bb1movups [rsp+476], x0
00105bb9movups [rsp+460], x0
00105bc1movups [rsp+444], x0
00105bc9movups [rsp+428], x0
00105bd1movups [rsp+412], x0
00105bd9mov [rsp+568], 1
00105be5mov [rsp+408], 1
00105bf0test bx, bx
00105bf3js 0x105c1f
00105bf5movzx esi, bx
00105bf8lea rdi, [rsp+48]
00105bfdcall core::num::bignum::Big32x40::mul_pow2
00105c02lea rdi, [rsp+576]
00105c0amov rsi, rbx
00105c0dcall core::num::bignum::Big32x40::mul_pow2
00105c12lea rdi, [rsp+240]
00105c1amov rsi, rbx
00105c1djmp 0x105c2d
00105c1f
00105c1floc_105c1f:
00105c1fneg ebx
00105c21movsx rsi, bx
00105c25lea rdi, [rsp+408]
00105c2d
00105c2dloc_105c2d:
00105c2dcall core::num::bignum::Big32x40::mul_pow2
00105c32test r15w, r15w
00105c36js 0x105c46
00105c38movzx esi, r15w
00105c3clea rdi, [rsp+408]
00105c44jmp 0x105c76
00105c46
00105c46loc_105c46:
00105c46mov eax, r15l
00105c49neg eax
00105c4bmovzx ebx, ax
00105c4elea rdi, [rsp+48]
00105c53mov rsi, rbx
00105c56call core::num::flt2dec::strategy::dragon::mul_pow10
00105c5blea rdi, [rsp+576]
00105c63mov rsi, rbx
00105c66call core::num::flt2dec::strategy::dragon::mul_pow10
00105c6blea rdi, [rsp+240]
00105c73mov rsi, rbx
00105c76
00105c76loc_105c76:
00105c76call core::num::flt2dec::strategy::dragon::mul_pow10
00105c7bmov rbx, [rsp+208]
00105c83mov [rsp+904], rbx
00105c8blea rdi, [rsp+744]
00105c93lea rsi, [rsp+48]
00105c98mov edx, 160
00105c9dcall [rip+0x10be7d]
00105ca3mov rdi, [rsp+400]
00105cabcmp rbx, rdi
00105caemov rax, rdi
00105cb1cmova rax, rbx
00105cb5cmp rax, 40
00105cb9ja 0x106984
00105cbftest rax, rax
00105cc2je 0x105cd0
00105cc4cmp rax, 1
00105cc8jne 0x105cd7
00105ccaxor ecx, ecx
00105cccxor edx, edx
00105ccejmp 0x105d2b
00105cd0
00105cd0loc_105cd0:
00105cd0xor eax, eax
00105cd2jmp 0x105d71
00105cd7
00105cd7loc_105cd7:
00105cd7mov rsi, rax
00105cdaand rsi, -2
00105cdexor edx, edx
00105ce0xor ecx, ecx
00105ce2nop [rax+rax]
00105cf0
00105cf0loc_105cf0:
00105cf0movzx edx, dl
00105cf3bt rdx, 0
00105cf7mov edx, [rsp+4*rcx+240]
00105cfemov r8l, [rsp+4*rcx+244]
00105d06adc [rsp+4*rcx+744], edx
00105d0dadc [rsp+4*rcx+748], r8l
00105d15lea rcx, [rcx+2]
00105d19setb dl
00105d1ccmp rsi, rcx
00105d1fjne 0x105cf0
00105d21test al, 1
00105d23jne 0x105d2b
00105d25test dl, dl
00105d27jne 0x105d59
00105d29jmp 0x105d71
00105d2b
00105d2bloc_105d2b:
00105d2bmov esi, [rsp+4*rcx+744]
00105d32mov r8l, [rsp+4*rcx+240]
00105d3alea r9l, [rsi+r8]
00105d3emovzx r10l, dl
00105d42add r10l, r9l
00105d45setb dl
00105d48mov [rsp+4*rcx+744], r10l
00105d50add esi, r8l
00105d53jb 0x105d59
00105d55test dl, dl
00105d57je 0x105d71
00105d59
00105d59loc_105d59:
00105d59cmp rax, 39
00105d5dja 0x106940
00105d63mov [rsp+4*rax+744], 1
00105d6einc rax
00105d71
00105d71loc_105d71:
00105d71mov [rsp+904], rax
00105d79mov rcx, [rsp+568]
00105d81cmp rcx, rax
00105d84cmova rax, rcx
00105d88cmp rax, 41
00105d8cjae 0x106984
00105d92shl rax, 2
00105d96mov edx, 255
00105d9bnop [rax+rax]
00105da0
00105da0loc_105da0:
00105da0test rax, rax
00105da3je 0x105ddb
00105da5mov r8l, [rsp+rax+740]
00105dadxor esi, esi
00105dafcmp r8l, [rsp+rax+404]
00105db7setne sil
00105dbbcmova esi, edx
00105dbeadd rax, -4
00105dc2test sil, sil
00105dc5je 0x105da0
00105dc7cmp sil, [rsp+15]
00105dccjge 0x105dfd
00105dce
00105dceloc_105dce:
00105dceinc r15l
00105dd1mov [rsp+32], r15
00105dd6jmp 0x105f2e
00105ddb
00105ddbloc_105ddb:
00105ddbadd rax, rsp
00105ddeadd rax, 744
00105de4lea rdx, [rsp+744]
00105deccmp rax, rdx
00105defsetne sil
00105df3neg sil
00105df6cmp sil, [rsp+15]
00105dfbjl 0x105dce
00105dfd
00105dfdloc_105dfd:
00105dfdtest rbx, rbx
00105e00je 0x105e46
00105e02lea rdx, [4*rbx]
00105e0axor esi, esi
00105e0cxor eax, eax
00105e0enop
00105e10
00105e10loc_105e10:
00105e10mov r8l, [rsp+rsi+48]
00105e15lea r8, [r8+4*r8]
00105e19lea rax, [rax+2*r8]
00105e1dmov [rsp+rsi+48], eax
00105e21shr rax, 32
00105e25add rsi, 4
00105e29cmp rdx, rsi
00105e2cjne 0x105e10
00105e2etest rax, rax
00105e31je 0x105e48
00105e33cmp rbx, 39
00105e37ja 0x106958
00105e3dmov [rsp+4*rbx+48], eax
00105e41inc rbx
00105e44jmp 0x105e48
00105e46
00105e46loc_105e46:
00105e46xor ebx, ebx
00105e48
00105e48loc_105e48:
00105e48mov [rsp+208], rbx
00105e50mov rax, [rsp+736]
00105e58cmp rax, 41
00105e5cjae 0x106984
00105e62test rax, rax
00105e65je 0x105ec0
00105e67lea rsi, [4*rax]
00105e6fxor r8l, r8l
00105e72xor edx, edx
00105e74nop [rax+rax]
00105e80
00105e80loc_105e80:
00105e80mov r9l, [rsp+r8+576]
00105e88lea r9, [r9+4*r9]
00105e8clea rdx, [rdx+2*r9]
00105e90mov [rsp+r8+576], edx
00105e98shr rdx, 32
00105e9cadd r8, 4
00105ea0cmp rsi, r8
00105ea3jne 0x105e80
00105ea5test rdx, rdx
00105ea8je 0x105ec2
00105eaacmp rax, 39
00105eaeja 0x106940
00105eb4mov [rsp+4*rax+576], edx
00105ebbinc rax
00105ebejmp 0x105ec2
00105ec0
00105ec0loc_105ec0:
00105ec0xor eax, eax
00105ec2
00105ec2loc_105ec2:
00105ec2mov [rsp+736], rax
00105ecatest rdi, rdi
00105ecdje 0x105f1f
00105ecflea rdx, [4*rdi]
00105ed7xor esi, esi
00105ed9xor eax, eax
00105edbnop [rax+rax]
00105ee0
00105ee0loc_105ee0:
00105ee0mov r8l, [rsp+rsi+240]
00105ee8lea r8, [r8+4*r8]
00105eeclea rax, [rax+2*r8]
00105ef0mov [rsp+rsi+240], eax
00105ef7shr rax, 32
00105efbadd rsi, 4
00105effcmp rdx, rsi
00105f02jne 0x105ee0
00105f04test rax, rax
00105f07je 0x105f21
00105f09cmp rdi, 39
00105f0dja 0x10690b
00105f13mov [rsp+4*rdi+240], eax
00105f1ainc rdi
00105f1djmp 0x105f21
00105f1f
00105f1floc_105f1f:
00105f1fxor edi, edi
00105f21
00105f21loc_105f21:
00105f21mov [rsp+32], r15
00105f26mov [rsp+400], rdi
00105f2e
00105f2eloc_105f2e:
00105f2emov [rsp+1072], rcx
00105f36lea r15, [rsp+912]
00105f3elea rbx, [rsp+408]
00105f46mov r12, [rip+0x10bbd3]
00105f4dmov edx, 160
00105f52mov rdi, r15
00105f55mov rsi, rbx
00105f58call r12
00105f5bmov esi, 1
00105f60mov rdi, r15
00105f63call core::num::bignum::Big32x40::mul_pow2
00105f68mov rax, [rsp+568]
00105f70mov [rsp+1240], rax
00105f78lea r15, [rsp+1080]
00105f80mov edx, 160
00105f85mov rdi, r15
00105f88mov rsi, rbx
00105f8bcall r12
00105f8emov esi, 2
00105f93mov rdi, r15
00105f96call core::num::bignum::Big32x40::mul_pow2
00105f9bmov rax, [rsp+568]
00105fa3mov [rsp+1408], rax
00105fablea r15, [rsp+1248]
00105fb3mov edx, 160
00105fb8mov rdi, r15
00105fbbmov rsi, rbx
00105fbecall r12
00105fc1mov esi, 3
00105fc6mov rdi, r15
00105fc9call core::num::bignum::Big32x40::mul_pow2
00105fcemov rdi, [rsp+1408]
00105fd6mov rbp, [rsp+208]
00105fdecmp rbp, rdi
00105fe1mov [rsp+216], rdi
00105fe9cmova rdi, rbp
00105fedcmp rdi, 40
00105ff1ja 0x10699a
00105ff7mov [rsp+24], r14
00105ffcmov rax, [rsp+1240]
00106004mov [rsp+232], rax
0010600cmov rax, [rsp+1072]
00106014mov [rsp+224], rax
0010601cmov r11, [rsp+568]
00106024xor r12l, r12l
00106027mov r14l, 255
0010602dmov [rsp+16], r13
00106032jmp 0x106068
00106034
00106034 66 66 66 2e 0f 1f 84 00 00 00 00 00 fff.........
00106040
00106040loc_106040:
00106040xor edi, edi
00106042mov r13, [rsp+16]
00106047
00106047loc_106047:
00106047mov [rsp+400], rdi
0010604fmov rdi, [rsp+216]
00106057cmp rbp, rdi
0010605acmova rdi, rbp
0010605ecmp rdi, 40
00106062ja 0x10699a
00106068
00106068loc_106068:
00106068mov rbx, r12
0010606blea rax, [4*rdi]
00106073nop [rax+rax]
00106080
00106080loc_106080:
00106080test rax, rax
00106083je 0x1060c0
00106085mov edx, [rsp+rax+1244]
0010608cxor ecx, ecx
0010608ecmp edx, [rsp+rax+44]
00106092setne cl
00106095cmova ecx, r14l
00106099add rax, -4
0010609dtest cl, cl
0010609fje 0x106080
001060a1cmp cl, 1
001060a4ja 0x1060de
001060a6
001060a6loc_1060a6:
001060a6test rdi, rdi
001060a9je 0x10614f
001060afcmp rdi, 1
001060b3jne 0x1060e5
001060b5mov al, 1
001060b7xor ecx, ecx
001060b9jmp 0x106123
001060bb
001060bb 0f 1f 44 00 00 ..D..
001060c0
001060c0loc_1060c0:
001060c0add rax, rsp
001060c3add rax, 1248
001060c9lea rcx, [rsp+1248]
001060d1cmp rax, rcx
001060d4setne cl
001060d7neg cl
001060d9cmp cl, 1
001060dcjbe 0x1060a6
001060de
001060deloc_1060de:
001060dexor ecx, ecx
001060e0mov rdi, rbp
001060e3jmp 0x106159
001060e5
001060e5loc_1060e5:
001060e5mov rdx, rdi
001060e8and rdx, -2
001060ecmov al, 1
001060eexor ecx, ecx
001060f0
001060f0loc_1060f0:
001060f0mov esi, [rsp+4*rcx+1248]
001060f7not esi
001060f9movzx eax, al
001060fcbt rax, 0
00106100adc [rsp+4*rcx+48], esi
00106104mov eax, [rsp+4*rcx+1252]
0010610bnot eax
0010610dadc [rsp+4*rcx+52], eax
00106111lea rcx, [rcx+2]
00106115setb al
00106118cmp rdx, rcx
0010611bjne 0x1060f0
0010611dtest dil, 1
00106121je 0x106147
00106123
00106123loc_106123:
00106123mov edx, [rsp+4*rcx+1248]
0010612anot edx
0010612cmov esi, [rsp+4*rcx+48]
00106130lea r8l, [rdx+rsi]
00106134movzx r9l, al
00106138add r9l, r8l
0010613bsetb al
0010613emov [rsp+4*rcx+48], r9l
00106143add edx, esi
00106145jb 0x10614f
00106147
00106147loc_106147:
00106147test al, al
00106149je 0x1069ad
0010614f
0010614floc_10614f:
0010614fmov [rsp+208], rdi
00106157mov cl, 8
00106159
00106159loc_106159:
00106159mov rax, [rsp+232]
00106161cmp rdi, rax
00106164cmova rax, rdi
00106168cmp rax, 41
0010616cjae 0x106984
00106172lea rdx, [4*rax]
0010617anop [rax+rax]
00106180
00106180loc_106180:
00106180test rdx, rdx
00106183je 0x1061c0
00106185mov r8l, [rsp+rdx+1076]
0010618dxor esi, esi
0010618fcmp r8l, [rsp+rdx+44]
00106194setne sil
00106198cmova esi, r14l
0010619cadd rdx, -4
001061a0test sil, sil
001061a3je 0x106180
001061a5cmp sil, 1
001061a9ja 0x1061e2
001061ab
001061abloc_1061ab:
001061abtest rax, rax
001061aeje 0x106262
001061b4cmp rax, 1
001061b8jne 0x1061ea
001061bamov dl, 1
001061bcxor esi, esi
001061bejmp 0x106234
001061c0
001061c0loc_1061c0:
001061c0add rdx, rsp
001061c3add rdx, 1080
001061calea rsi, [rsp+1080]
001061d2cmp rdx, rsi
001061d5setne sil
001061d9neg sil
001061dccmp sil, 1
001061e0jbe 0x1061ab
001061e2
001061e2loc_1061e2:
001061e2mov rax, rdi
001061e5jmp 0x10626d
001061ea
001061ealoc_1061ea:
001061eamov rdi, rax
001061edand rdi, -2
001061f1mov dl, 1
001061f3xor esi, esi
001061f5nop [rax+rax]
00106200
00106200loc_106200:
00106200mov r8l, [rsp+4*rsi+1080]
00106208not r8l
0010620bmovzx edx, dl
0010620ebt rdx, 0
00106212adc [rsp+4*rsi+48], r8l
00106217mov edx, [rsp+4*rsi+1084]
0010621enot edx
00106220adc [rsp+4*rsi+52], edx
00106224lea rsi, [rsi+2]
00106228setb dl
0010622bcmp rdi, rsi
0010622ejne 0x106200
00106230test al, 1
00106232je 0x10625a
00106234
00106234loc_106234:
00106234mov edi, [rsp+4*rsi+1080]
0010623bnot edi
0010623dmov r8l, [rsp+4*rsi+48]
00106242lea r9l, [rdi+r8]
00106246movzx r10l, dl
0010624aadd r10l, r9l
0010624dsetb dl
00106250mov [rsp+4*rsi+48], r10l
00106255add edi, r8l
00106258jb 0x106262
0010625a
0010625aloc_10625a:
0010625atest dl, dl
0010625cje 0x1069ad
00106262
00106262loc_106262:
00106262mov [rsp+208], rax
0010626aor cl, 4
0010626d
0010626dloc_10626d:
0010626dmov rdi, [rsp+224]
00106275cmp rax, rdi
00106278cmova rdi, rax
0010627ccmp rdi, 41
00106280jae 0x10699a
00106286lea rdx, [4*rdi]
0010628enop
00106290
00106290loc_106290:
00106290test rdx, rdx
00106293je 0x1062d0
00106295mov r8l, [rsp+rdx+908]
0010629dxor esi, esi
0010629fcmp r8l, [rsp+rdx+44]
001062a4setne sil
001062a8cmova esi, r14l
001062acadd rdx, -4
001062b0test sil, sil
001062b3je 0x106290
001062b5cmp sil, 1
001062b9ja 0x1062f2
001062bb
001062bbloc_1062bb:
001062bbtest rdi, rdi
001062beje 0x106374
001062c4cmp rdi, 1
001062c8jne 0x1062fa
001062camov al, 1
001062ccxor edx, edx
001062cejmp 0x106346
001062d0
001062d0loc_1062d0:
001062d0add rdx, rsp
001062d3add rdx, 912
001062dalea rsi, [rsp+912]
001062e2cmp rdx, rsi
001062e5setne sil
001062e9neg sil
001062eccmp sil, 1
001062f0jbe 0x1062bb
001062f2
001062f2loc_1062f2:
001062f2mov rdi, rax
001062f5jmp 0x10637f
001062fa
001062faloc_1062fa:
001062famov rsi, rdi
001062fdand rsi, -2
00106301mov al, 1
00106303xor edx, edx
00106305nop [rax+rax]
00106310
00106310loc_106310:
00106310mov r8l, [rsp+4*rdx+912]
00106318not r8l
0010631bmovzx eax, al
0010631ebt rax, 0
00106322adc [rsp+4*rdx+48], r8l
00106327mov eax, [rsp+4*rdx+916]
0010632enot eax
00106330adc [rsp+4*rdx+52], eax
00106334lea rdx, [rdx+2]
00106338setb al
0010633bcmp rsi, rdx
0010633ejne 0x106310
00106340test dil, 1
00106344je 0x10636c
00106346
00106346loc_106346:
00106346mov esi, [rsp+4*rdx+912]
0010634dnot esi
0010634fmov r8l, [rsp+4*rdx+48]
00106354lea r9l, [rsi+r8]
00106358movzx r10l, al
0010635cadd r10l, r9l
0010635fsetb al
00106362mov [rsp+4*rdx+48], r10l
00106367add esi, r8l
0010636ajb 0x106374
0010636c
0010636cloc_10636c:
0010636ctest al, al
0010636eje 0x1069ad
00106374
00106374loc_106374:
00106374mov [rsp+208], rdi
0010637cadd cl, 2
0010637f
0010637floc_10637f:
0010637fcmp rdi, r11
00106382mov rbp, r11
00106385cmova rbp, rdi
00106389cmp rbp, 41
0010638djae 0x1069c7
00106393lea rax, [4*rbp]
0010639bnop [rax+rax]
001063a0
001063a0loc_1063a0:
001063a0test rax, rax
001063a3je 0x1063e0
001063a5mov esi, [rsp+rax+404]
001063acxor edx, edx
001063aecmp esi, [rsp+rax+44]
001063b2setne dl
001063b5cmova edx, r14l
001063b9add rax, -4
001063bdtest dl, dl
001063bfje 0x1063a0
001063c1cmp dl, 1
001063c4ja 0x1063fe
001063c6
001063c6loc_1063c6:
001063c6test rbp, rbp
001063c9je 0x10646f
001063cfcmp rbp, 1
001063d3jne 0x106403
001063d5mov al, 1
001063d7xor edx, edx
001063d9jmp 0x106443
001063db
001063db 0f 1f 44 00 00 ..D..
001063e0
001063e0loc_1063e0:
001063e0add rax, rsp
001063e3add rax, 408
001063e9lea rdx, [rsp+408]
001063f1cmp rax, rdx
001063f4setne dl
001063f7neg dl
001063f9cmp dl, 1
001063fcjbe 0x1063c6
001063fe
001063feloc_1063fe:
001063femov rbp, rdi
00106401jmp 0x106479
00106403
00106403loc_106403:
00106403mov rsi, rbp
00106406and rsi, -2
0010640amov al, 1
0010640cxor edx, edx
0010640enop
00106410
00106410loc_106410:
00106410mov edi, [rsp+4*rdx+408]
00106417not edi
00106419movzx eax, al
0010641cbt rax, 0
00106420adc [rsp+4*rdx+48], edi
00106424mov eax, [rsp+4*rdx+412]
0010642bnot eax
0010642dadc [rsp+4*rdx+52], eax
00106431lea rdx, [rdx+2]
00106435setb al
00106438cmp rsi, rdx
0010643bjne 0x106410
0010643dtest bpl, 1
00106441je 0x106467
00106443
00106443loc_106443:
00106443mov esi, [rsp+4*rdx+408]
0010644anot esi
0010644cmov edi, [rsp+4*rdx+48]
00106450lea r8l, [rsi+rdi]
00106454movzx r9l, al
00106458add r9l, r8l
0010645bsetb al
0010645emov [rsp+4*rdx+48], r9l
00106463add esi, edi
00106465jb 0x10646f
00106467
00106467loc_106467:
00106467test al, al
00106469je 0x1069ad
0010646f
0010646floc_10646f:
0010646fmov [rsp+208], rbp
00106477inc cl
00106479
00106479loc_106479:
00106479cmp rbx, 17
0010647dje 0x1068f3
00106483add cl, 48
00106486mov [r13+rbx], cl
0010648bmov r13, [rsp+736]
00106493cmp rbp, r13
00106496mov rdi, r13
00106499cmova rdi, rbp
0010649dcmp rdi, 41
001064a1jae 0x10699a
001064a7mov r12, r11
001064aamov [rsp+40], rbx
001064aflea r15, [rbx+1]
001064b3shl rdi, 2
001064b7nop [rax+rax]
001064c0
001064c0loc_1064c0:
001064c0test rdi, rdi
001064c3je 0x1064f0
001064c5mov eax, [rsp+rdi+572]
001064ccxor ebx, ebx
001064cecmp eax, [rsp+rdi+44]
001064d2setne bl
001064d5cmova ebx, r14l
001064d9add rdi, -4
001064ddtest bl, bl
001064dfje 0x1064c0
001064e1jmp 0x10650a
001064e3
001064e3 66 66 66 66 2e 0f 1f 84 00 00 00 00 00 ffff.........
001064f0
001064f0loc_1064f0:
001064f0lea rax, [rsp+rdi]
001064f4add rax, 576
001064falea rcx, [rsp+576]
00106502cmp rax, rcx
00106505setne bl
00106508neg bl
0010650a
0010650aloc_10650a:
0010650amov [rsp+904], rbp
00106512mov edx, 160
00106517lea rdi, [rsp+744]
0010651flea rsi, [rsp+48]
00106524call [rip+0x10b5f6]
0010652amov rdi, [rsp+400]
00106532cmp rbp, rdi
00106535mov rax, rdi
00106538cmova rax, rbp
0010653ccmp rax, 40
00106540ja 0x106984
00106546test rax, rax
00106549mov r11, r12
0010654cje 0x106560
0010654ecmp rax, 1
00106552mov r12, r15
00106555jne 0x106570
00106557xor ecx, ecx
00106559xor edx, edx
0010655bjmp 0x1065c0
0010655d
0010655d 0f 1f 00 ...
00106560
00106560loc_106560:
00106560xor eax, eax
00106562mov r12, r15
00106565jmp 0x106606
0010656a
0010656a 66 0f 1f 44 00 00 f..D..
00106570
00106570loc_106570:
00106570mov rsi, rax
00106573and rsi, -2
00106577xor edx, edx
00106579xor ecx, ecx
0010657bnop [rax+rax]
00106580
00106580loc_106580:
00106580movzx edx, dl
00106583bt rdx, 0
00106587mov edx, [rsp+4*rcx+240]
0010658emov r8l, [rsp+4*rcx+244]
00106596adc [rsp+4*rcx+744], edx
0010659dadc [rsp+4*rcx+748], r8l
001065a5lea rcx, [rcx+2]
001065a9setb dl
001065accmp rsi, rcx
001065afjne 0x106580
001065b1test al, 1
001065b3jne 0x1065c0
001065b5test dl, dl
001065b7jne 0x1065ee
001065b9jmp 0x106606
001065bb
001065bb 0f 1f 44 00 00 ..D..
001065c0
001065c0loc_1065c0:
001065c0mov esi, [rsp+4*rcx+744]
001065c7mov r8l, [rsp+4*rcx+240]
001065cflea r9l, [rsi+r8]
001065d3movzx r10l, dl
001065d7add r10l, r9l
001065dasetb dl
001065ddmov [rsp+4*rcx+744], r10l
001065e5add esi, r8l
001065e8jb 0x1065ee
001065eatest dl, dl
001065ecje 0x106606
001065ee
001065eeloc_1065ee:
001065eecmp rax, 39
001065f2ja 0x106940
001065f8mov [rsp+4*rax+744], 1
00106603inc rax
00106606
00106606loc_106606:
00106606mov [rsp+904], rax
0010660ecmp r11, rax
00106611cmova rax, r11
00106615cmp rax, 41
00106619jae 0x106984
0010661fshl rax, 2
00106623nop [rax+rax]
00106630
00106630loc_106630:
00106630test rax, rax
00106633je 0x106660
00106635mov edx, [rsp+rax+740]
0010663cxor ecx, ecx
0010663ecmp edx, [rsp+rax+404]
00106645setne cl
00106648cmova ecx, r14l
0010664cadd rax, -4
00106650test cl, cl
00106652je 0x106630
00106654jmp 0x106679
00106656
00106656 66 2e 0f 1f 84 00 00 00 00 00 f.........
00106660
00106660loc_106660:
00106660add rax, rsp
00106663add rax, 744
00106669lea rcx, [rsp+744]
00106671cmp rax, rcx
00106674setne cl
00106677neg cl
00106679
00106679loc_106679:
00106679movzx eax, [rsp+15]
0010667ecmp bl, al
00106680jl 0x1067b5
00106686cmp cl, al
00106688jl 0x1067b5
0010668etest rbp, rbp
00106691je 0x1066e0
00106693lea rcx, [4*rbp]
0010669bxor edx, edx
0010669dxor eax, eax
0010669fnop
001066a0
001066a0loc_1066a0:
001066a0mov esi, [rsp+rdx+48]
001066a4lea rsi, [rsi+4*rsi]
001066a8lea rax, [rax+2*rsi]
001066acmov [rsp+rdx+48], eax
001066b0shr rax, 32
001066b4add rdx, 4
001066b8cmp rcx, rdx
001066bbjne 0x1066a0
001066bdtest rax, rax
001066c0je 0x1066e2
001066c2cmp rbp, 39
001066c6ja 0x106914
001066ccmov [rsp+4*rbp+48], eax
001066d0inc rbp
001066d3jmp 0x1066e2
001066d5
001066d5 66 66 2e 0f 1f 84 00 00 00 00 00 ff.........
001066e0
001066e0loc_1066e0:
001066e0xor ebp, ebp
001066e2
001066e2loc_1066e2:
001066e2mov [rsp+208], rbp
001066eatest r13, r13
001066edje 0x106740
001066eflea rcx, [4*r13]
001066f7xor edx, edx
001066f9xor eax, eax
001066fbnop [rax+rax]
00106700
00106700loc_106700:
00106700mov esi, [rsp+rdx+576]
00106707lea rsi, [rsi+4*rsi]
0010670blea rax, [rax+2*rsi]
0010670fmov [rsp+rdx+576], eax
00106716shr rax, 32
0010671aadd rdx, 4
0010671ecmp rcx, rdx
00106721jne 0x106700
00106723test rax, rax
00106726je 0x106743
00106728cmp r13, 39
0010672cja 0x10692a
00106732mov [rsp+4*r13+576], eax
0010673ainc r13
0010673djmp 0x106743
0010673f
0010673f 90 .
00106740
00106740loc_106740:
00106740xor r13l, r13l
00106743
00106743loc_106743:
00106743mov [rsp+736], r13
0010674btest rdi, rdi
0010674eje 0x106040
00106754lea rcx, [4*rdi]
0010675cxor edx, edx
0010675exor eax, eax
00106760mov r13, [rsp+16]
00106765nop [rax+rax]
00106770
00106770loc_106770:
00106770mov esi, [rsp+rdx+240]
00106777lea rsi, [rsi+4*rsi]
0010677blea rax, [rax+2*rsi]
0010677fmov [rsp+rdx+240], eax
00106786shr rax, 32
0010678aadd rdx, 4
0010678ecmp rcx, rdx
00106791jne 0x106770
00106793test rax, rax
00106796je 0x106047
0010679ccmp rdi, 39
001067a0ja 0x10690b
001067a6mov [rsp+4*rdi+240], eax
001067adinc rdi
001067b0jmp 0x106047
001067b5
001067b5loc_1067b5:
001067b5cmp cl, al
001067b7mov r15, [rsp+16]
001067bcmov r14, [rsp+32]
001067c1jge 0x10688d
001067c7cmp bl, al
001067c9jge 0x106851
001067cflea rdi, [rsp+48]
001067d4mov esi, 1
001067d9call core::num::bignum::Big32x40::mul_pow2
001067demov rax, [rsp+208]
001067e6mov rdi, [rsp+568]
001067eecmp rax, rdi
001067f1cmova rdi, rax
001067f5cmp rdi, 41
001067f9jae 0x10699a
001067ffshl rdi, 2
00106803mov eax, 255
00106808nop [rax+rax]
00106810
00106810loc_106810:
00106810test rdi, rdi
00106813je 0x106832
00106815mov edx, [rsp+rdi+404]
0010681cxor ecx, ecx
0010681ecmp edx, [rsp+rdi+44]
00106822setne cl
00106825cmova ecx, eax
00106828add rdi, -4
0010682ctest cl, cl
0010682eje 0x106810
00106830jmp 0x10684c
00106832
00106832loc_106832:
00106832lea rax, [rsp+rdi]
00106836add rax, 408
0010683clea rcx, [rsp+408]
00106844cmp rax, rcx
00106847setne cl
0010684aneg cl
0010684c
0010684cloc_10684c:
0010684ccmp cl, 2
0010684fjae 0x10688d
00106851
00106851loc_106851:
00106851mov rdx, -1
00106858mov rax, r12
0010685bmov rbx, [rsp+40]
00106860
00106860loc_106860:
00106860test rax, rax
00106863je 0x1068bc
00106865mov rdi, rax
00106868dec rax
0010686binc rdx
0010686ecmp [r15+rdi-1], 57
00106874je 0x106860
00106876inc [r15+rax]
0010687acmp rdi, rbx
0010687dja 0x10688d
0010687fadd rdi, r15
00106882mov esi, 48
00106887call [rip+0x10b27b]
0010688d
0010688dloc_10688d:
0010688dcmp [rsp+40], 17
00106893jae 0x106a55
00106899
00106899loc_106899:
00106899mov rax, [rsp+24]
0010689emov [rax], r15
001068a1mov [rax+8], r12
001068a5mov [rax+16], r14w
001068aaadd rsp, 1416
001068b1pop rbx
001068b2pop r12
001068b4pop r13
001068b6pop r14
001068b8pop r15
001068bapop rbp
001068bbret
001068bc
001068bcloc_1068bc:
001068bcmov [r15], 49
001068c0test rbx, rbx
001068c3je 0x1068e1
001068c5lea rdi, [r15+1]
001068c9mov esi, 48
001068cemov rdx, rbx
001068d1call [rip+0x10b231]
001068d7cmp rbx, 15
001068dbja 0x10696e
001068e1
001068e1loc_1068e1:
001068e1mov [r15+rbx+1], 48
001068e7add rbx, 2
001068ebinc r14l
001068eemov r12, rbx
001068f1jmp 0x106899
001068f3
001068f3loc_1068f3:
001068f3lea rdx, [rip+0xe3f96]
001068famov edi, 17
001068ffmov esi, 17
00106904call core::panicking::panic_bounds_check
00106909ud2
0010690b
0010690bloc_10690b:
0010690blea rdx, [rip+0xe48d6]
00106912jmp 0x10694c
00106914
00106914loc_106914:
00106914lea rdx, [rip+0xe48cd]
0010691bmov esi, 40
00106920mov rdi, rbp
00106923call core::panicking::panic_bounds_check
00106928ud2
0010692a
0010692aloc_10692a:
0010692alea rdx, [rip+0xe48b7]
00106931mov esi, 40
00106936mov rdi, r13
00106939call core::panicking::panic_bounds_check
0010693eud2
00106940
00106940loc_106940:
00106940lea rdx, [rip+0xe48a1]
00106947mov edi, 40
0010694c
0010694cloc_10694c:
0010694cmov esi, 40
00106951call core::panicking::panic_bounds_check
00106956ud2
00106958
00106958loc_106958:
00106958lea rdx, [rip+0xe4889]
0010695fmov esi, 40
00106964mov rdi, rbx
00106967call core::panicking::panic_bounds_check
0010696cud2
0010696e
0010696eloc_10696e:
0010696elea rdx, [rip+0xe3f33]
00106975mov esi, 17
0010697amov rdi, r12
0010697dcall core::panicking::panic_bounds_check
00106982ud2
00106984
00106984loc_106984:
00106984lea rdx, [rip+0xe485d]
0010698bmov esi, 40
00106990mov rdi, rax
00106993call core::slice::index::slice_end_index_len_fail
00106998ud2
0010699a
0010699aloc_10699a:
0010699alea rdx, [rip+0xe4847]
001069a1mov esi, 40
001069a6call core::slice::index::slice_end_index_len_fail
001069abud2
001069ad
001069adloc_1069ad:
001069adlea rdi, [rip-0xc25f5]
001069b4lea rdx, [rip+0xe482d]
001069bbmov esi, 26
001069c0call core::panicking::panic
001069c5ud2
001069c7
001069c7loc_1069c7:
001069c7lea rdx, [rip+0xe481a]
001069cemov esi, 40
001069d3mov rdi, rbp
001069d6call core::slice::index::slice_end_index_len_fail
001069dbud2
001069dd
001069ddloc_1069dd:
001069ddlea rdi, [rip-0xc3899]
001069e4lea rdx, [rip+0xe3e5d]
001069ebjmp 0x106a15
001069ed
001069edloc_1069ed:
001069edlea rdi, [rip-0xc388d]
001069f4lea rdx, [rip+0xe3e65]
001069fbmov esi, 29
00106a00call core::panicking::panic
00106a05ud2
00106a07
00106a07loc_106a07:
00106a07lea rdi, [rip-0xc388a]
00106a0elea rdx, [rip+0xe3e63]
00106a15
00106a15loc_106a15:
00106a15mov esi, 28
00106a1acall core::panicking::panic
00106a1fud2
00106a21
00106a21loc_106a21:
00106a21lea rdi, [rip-0xc3851]
00106a28lea rdx, [rip+0xe3ec1]
00106a2fmov esi, 54
00106a34call core::panicking::panic
00106a39ud2
00106a3b
00106a3bloc_106a3b:
00106a3blea rdi, [rip-0xc38a2]
00106a42lea rdx, [rip+0xe3e8f]
00106a49mov esi, 55
00106a4ecall core::panicking::panic
00106a53ud2
00106a55
00106a55loc_106a55:
00106a55lea rdx, [rip+0xe3e64]
00106a5cmov esi, 17
00106a61mov rdi, r12
00106a64call core::slice::index::slice_end_index_len_fail
00106a69ud2
00105990
00106a6b
00106a6b // align 0x10
00106a6b // align 0x10
00106a70
00106a70core::num::bignum::Big32x40::mul_pow2:
00106a70push r15
00106a72push r14
00106a74push rbx
00106a75cmp rsi, 1280
00106a7cjae 0x106bd2
00106a82mov r14, rsi
00106a85mov rbx, rdi
00106a88mov r15, rsi
00106a8bshr r15, 5
00106a8fmov rcx, [rdi+160]
00106a96test rcx, rcx
00106a99je 0x106ac6
00106a9bmov rdi, rcx
00106a9enop
00106aa0
00106aa0loc_106aa0:
00106aa0dec rdi
00106aa3cmp rcx, 41
00106aa7jae 0x106ba5
00106aadlea rax, [rdi+r15]
00106ab1cmp rax, 40
00106ab5jae 0x106b8f
00106abbmov edx, [rbx+4*rdi]
00106abemov [rbx+4*rax], edx
00106ac1test rdi, rdi
00106ac4jne 0x106aa0
00106ac6
00106ac6loc_106ac6:
00106ac6cmp r14, 32
00106acajb 0x106ae6
00106acccmp r15, 1
00106ad0mov rdx, r15
00106ad3adc rdx, 0
00106ad7shl rdx, 2
00106adbmov rdi, rbx
00106adexor esi, esi
00106ae0call [rip+0x10b022]
00106ae6
00106ae6loc_106ae6:
00106ae6mov rdi, [rbx+160]
00106aedadd rdi, r15
00106af0test r14b, 31
00106af4je 0x106b7c
00106afalea rax, [rdi-1]
00106afecmp rax, 39
00106b02ja 0x106b8f
00106b08mov edx, [rbx+4*rdi-4]
00106b0cmov eax, r14l
00106b0fneg eax
00106b11and eax, 31
00106b14mov r8l, edx
00106b17mov ecx, eax
00106b19shr r8l, cl
00106b1cmov rsi, rdi
00106b1ftest r8l, r8l
00106b22je 0x106b32
00106b24cmp rdi, 39
00106b28ja 0x106ba5
00106b2amov [rbx+4*rdi], r8l
00106b2elea rsi, [rdi+1]
00106b32
00106b32loc_106b32:
00106b32lea r8, [r15+1]
00106b36and r14l, 31
00106b3acmp r8, rdi
00106b3djae 0x106b73
00106b3fnop
00106b40
00106b40loc_106b40:
00106b40lea rcx, [rdi-2]
00106b44cmp rcx, 40
00106b48jae 0x106bb8
00106b4amov ecx, r14l
00106b4dshl edx, cl
00106b4fmov r9l, [rbx+4*rdi-8]
00106b54mov r10l, r9l
00106b57mov ecx, eax
00106b59shr r10l, cl
00106b5cor r10l, edx
00106b5fmov [rbx+4*rdi-4], r10l
00106b64lea rcx, [rdi-1]
00106b68mov edx, r9l
00106b6bmov rdi, rcx
00106b6ecmp r8, rcx
00106b71jb 0x106b40
00106b73
00106b73loc_106b73:
00106b73mov ecx, r14l
00106b76shl [rbx+4*r15], cl
00106b7ajmp 0x106b7f
00106b7c
00106b7cloc_106b7c:
00106b7cmov rsi, rdi
00106b7f
00106b7floc_106b7f:
00106b7fmov [rbx+160], rsi
00106b86mov rax, rbx
00106b89pop rbx
00106b8apop r14
00106b8cpop r15
00106b8eret
00106b8f
00106b8floc_106b8f:
00106b8flea rdx, [rip+0xe4652]
00106b96mov esi, 40
00106b9bmov rdi, rax
00106b9ecall core::panicking::panic_bounds_check
00106ba3ud2
00106ba5
00106ba5loc_106ba5:
00106ba5lea rdx, [rip+0xe463c]
00106bacmov esi, 40
00106bb1call core::panicking::panic_bounds_check
00106bb6ud2
00106bb8
00106bb8loc_106bb8:
00106bb8lea rdx, [rip+0xe4629]
00106bbfmov esi, 40
00106bc4mov rdi, -1
00106bcbcall core::panicking::panic_bounds_check
00106bd0ud2
00106bd2
00106bd2loc_106bd2:
00106bd2lea rdi, [rip-0xc2800]
00106bd9lea rdx, [rip+0xe4608]
00106be0mov esi, 29
00106be5call core::panicking::panic
00106beaud2
00106a70
00106a70core::num::bignum::Big32x40::mul_pow2:
00106a70push r15
00106a72push r14
00106a74push rbx
00106a75cmp rsi, 1280
00106a7cjae 0x106bd2
00106a82mov r14, rsi
00106a85mov rbx, rdi
00106a88mov r15, rsi
00106a8bshr r15, 5
00106a8fmov rcx, [rdi+160]
00106a96test rcx, rcx
00106a99je 0x106ac6
00106a9bmov rdi, rcx
00106a9enop
00106aa0
00106aa0loc_106aa0:
00106aa0dec rdi
00106aa3cmp rcx, 41
00106aa7jae 0x106ba5
00106aadlea rax, [rdi+r15]
00106ab1cmp rax, 40
00106ab5jae 0x106b8f
00106abbmov edx, [rbx+4*rdi]
00106abemov [rbx+4*rax], edx
00106ac1test rdi, rdi
00106ac4jne 0x106aa0
00106ac6
00106ac6loc_106ac6:
00106ac6cmp r14, 32
00106acajb 0x106ae6
00106acccmp r15, 1
00106ad0mov rdx, r15
00106ad3adc rdx, 0
00106ad7shl rdx, 2
00106adbmov rdi, rbx
00106adexor esi, esi
00106ae0call [rip+0x10b022]
00106ae6
00106ae6loc_106ae6:
00106ae6mov rdi, [rbx+160]
00106aedadd rdi, r15
00106af0test r14b, 31
00106af4je 0x106b7c
00106afalea rax, [rdi-1]
00106afecmp rax, 39
00106b02ja 0x106b8f
00106b08mov edx, [rbx+4*rdi-4]
00106b0cmov eax, r14l
00106b0fneg eax
00106b11and eax, 31
00106b14mov r8l, edx
00106b17mov ecx, eax
00106b19shr r8l, cl
00106b1cmov rsi, rdi
00106b1ftest r8l, r8l
00106b22je 0x106b32
00106b24cmp rdi, 39
00106b28ja 0x106ba5
00106b2amov [rbx+4*rdi], r8l
00106b2elea rsi, [rdi+1]
00106b32
00106b32loc_106b32:
00106b32lea r8, [r15+1]
00106b36and r14l, 31
00106b3acmp r8, rdi
00106b3djae 0x106b73
00106b3fnop
00106b40
00106b40loc_106b40:
00106b40lea rcx, [rdi-2]
00106b44cmp rcx, 40
00106b48jae 0x106bb8
00106b4amov ecx, r14l
00106b4dshl edx, cl
00106b4fmov r9l, [rbx+4*rdi-8]
00106b54mov r10l, r9l
00106b57mov ecx, eax
00106b59shr r10l, cl
00106b5cor r10l, edx
00106b5fmov [rbx+4*rdi-4], r10l
00106b64lea rcx, [rdi-1]
00106b68mov edx, r9l
00106b6bmov rdi, rcx
00106b6ecmp r8, rcx
00106b71jb 0x106b40
00106b73
00106b73loc_106b73:
00106b73mov ecx, r14l
00106b76shl [rbx+4*r15], cl
00106b7ajmp 0x106b7f
00106b7c
00106b7cloc_106b7c:
00106b7cmov rsi, rdi
00106b7f
00106b7floc_106b7f:
00106b7fmov [rbx+160], rsi
00106b86mov rax, rbx
00106b89pop rbx
00106b8apop r14
00106b8cpop r15
00106b8eret
00106b8f
00106b8floc_106b8f:
00106b8flea rdx, [rip+0xe4652]
00106b96mov esi, 40
00106b9bmov rdi, rax
00106b9ecall core::panicking::panic_bounds_check
00106ba3ud2
00106ba5
00106ba5loc_106ba5:
00106ba5lea rdx, [rip+0xe463c]
00106bacmov esi, 40
00106bb1call core::panicking::panic_bounds_check
00106bb6ud2
00106bb8
00106bb8loc_106bb8:
00106bb8lea rdx, [rip+0xe4629]
00106bbfmov esi, 40
00106bc4mov rdi, -1
00106bcbcall core::panicking::panic_bounds_check
00106bd0ud2
00106bd2
00106bd2loc_106bd2:
00106bd2lea rdi, [rip-0xc2800]
00106bd9lea rdx, [rip+0xe4608]
00106be0mov esi, 29
00106be5call core::panicking::panic
00106beaud2
00106a70
00106bec
00106bec // align 0x10
00106bec // align 0x10
00106bf0
00106bf0core::num::flt2dec::strategy::dragon::format_exact:
00106bf0push rbp
00106bf1push r15
00106bf3push r14
00106bf5push r13
00106bf7push r12
00106bf9push rbx
00106bfasub rsp, 888
00106c01mov rbx, rcx
00106c04mov [rsp+40], rdi
00106c09mov rcx, [rsi]
00106c0ctest rcx, rcx
00106c0fje 0x10790c
00106c15mov rax, [rsi+8]
00106c19test rax, rax
00106c1cje 0x10791c
00106c22mov r15, rdx
00106c25mov rdx, [rsi+16]
00106c29test rdx, rdx
00106c2cje 0x107936
00106c32add rdx, rcx
00106c35jb 0x107950
00106c3bcmp rcx, rax
00106c3ejb 0x10796a
00106c44mov r12l, r8l
00106c47movsx rax, [rsi+24]
00106c4cmov rdx, rcx
00106c4fdec rdx
00106c52je 0x106c5e
00106c54bsr rdx, rdx
00106c58xor rdx, 63
00106c5cjmp 0x106c63
00106c5e
00106c5eloc_106c5e:
00106c5emov edx, 64
00106c63
00106c63loc_106c63:
00106c63mov rsi, rax
00106c66sub rsi, rdx
00106c69imul rdx, rsi, 0x4d104d42
00106c70mov rbp, 0x1344135080
00106c7aadd rbp, rdx
00106c7dshr rbp, 32
00106c81xor edx, edx
00106c83xor esi, esi
00106c85mov rdi, rcx
00106c88shr rdi, 32
00106c8ccmove edi, edx
00106c8fsetne sil
00106c93inc rsi
00106c96mov [rsp+208], rsi
00106c9emov [rsp+48], ecx
00106ca2mov [rsp+52], edi
00106ca6xorps x0, x0
00106ca9movups [rsp+56], x0
00106caemovups [rsp+72], x0
00106cb3movups [rsp+88], x0
00106cb8movups [rsp+104], x0
00106cbdmovups [rsp+120], x0
00106cc2movups [rsp+136], x0
00106ccamovups [rsp+152], x0
00106cd2movups [rsp+168], x0
00106cdamovups [rsp+184], x0
00106ce2mov [rsp+200], 0
00106ceemovups [rsp+360], x0
00106cf6movups [rsp+348], x0
00106cfemovups [rsp+332], x0
00106d06movups [rsp+316], x0
00106d0emovups [rsp+300], x0
00106d16movups [rsp+284], x0
00106d1emovups [rsp+268], x0
00106d26movups [rsp+252], x0
00106d2emovups [rsp+236], x0
00106d36movups [rsp+220], x0
00106d3emov [rsp+376], 1
00106d4amov [rsp+216], 1
00106d55test ax, ax
00106d58js 0x106d64
00106d5amovzx esi, ax
00106d5dlea rdi, [rsp+48]
00106d62jmp 0x106d72
00106d64
00106d64loc_106d64:
00106d64neg eax
00106d66movsx rsi, ax
00106d6alea rdi, [rsp+216]
00106d72
00106d72loc_106d72:
00106d72call core::num::bignum::Big32x40::mul_pow2
00106d77mov eax, ebp
00106d79neg eax
00106d7btest bp, bp
00106d7ecmovns rax, rbp
00106d82lea r14, [rsp+216]
00106d8alea rdi, [rsp+48]
00106d8fcmovns rdi, r14
00106d93movzx esi, ax
00106d96call core::num::flt2dec::strategy::dragon::mul_pow10
00106d9bmov r13, [rsp+376]
00106da3mov [rsp+544], r13
00106dablea rdi, [rsp+384]
00106db3mov edx, 160
00106db8mov rsi, r14
00106dbbcall [rip+0x10ad5f]
00106dc1cmp r13, 40
00106dc5ja 0x107984
00106dcbmov rsi, 0x44b82fa09b5a53
00106dd5mov rcx, rbx
00106dd8mov rdi, r13
00106ddbnop [rax+rax]
00106de0
00106de0loc_106de0:
00106de0test rdi, rdi
00106de3je 0x106e23
00106de5shl rdi, 2
00106de9xor r8l, r8l
00106decnop [rax]
00106df0
00106df0loc_106df0:
00106df0mov eax, [rsp+rdi+380]
00106df7shl r8, 32
00106dfbor r8, rax
00106dfemov rax, r8
00106e01shr rax, 9
00106e05mul rsi
00106e08shr rdx, 11
00106e0cimul rax, rdx, 0x3b9aca00
00106e13sub r8, rax
00106e16mov [rsp+rdi+380], edx
00106e1dadd rdi, -4
00106e21jne 0x106df0
00106e23
00106e23loc_106e23:
00106e23add rcx, -9
00106e27cmp rcx, 9
00106e2bjbe 0x106e4e
00106e2dmov rdi, [rsp+544]
00106e35cmp rdi, 41
00106e39jb 0x106de0
00106e3b
00106e3bloc_106e3b:
00106e3blea rdx, [rip+0xe43a6]
00106e42mov esi, 40
00106e47call core::slice::index::slice_end_index_len_fail
00106e4cud2
00106e4e
00106e4eloc_106e4e:
00106e4elea rax, [rip-0xc3e39]
00106e55mov esi, [rax+4*rcx]
00106e58test rsi, rsi
00106e5bje 0x10798c
00106e61mov rdi, [rsp+544]
00106e69cmp rdi, 41
00106e6djae 0x106e3b
00106e6ftest rdi, rdi
00106e72je 0x106ec3
00106e74shl rdi, 2
00106e78xor eax, eax
00106e7ajmp 0x106e98
00106e7cnop [rax]
00106e80
00106e80loc_106e80:
00106e80xor edx, edx
00106e82div rsi
00106e85mov rcx, rax
00106e88mov rax, rdx
00106e8b
00106e8bloc_106e8b:
00106e8bmov [rsp+rdi+380], ecx
00106e92add rdi, -4
00106e96je 0x106eb9
00106e98
00106e98loc_106e98:
00106e98mov ecx, [rsp+rdi+380]
00106e9fshl rax, 32
00106ea3or rax, rcx
00106ea6mov rcx, rax
00106ea9shr rcx, 32
00106eadjne 0x106e80
00106eafxor edx, edx
00106eb1div esi
00106eb3mov ecx, eax
00106eb5mov eax, edx
00106eb7jmp 0x106e8b
00106eb9
00106eb9loc_106eb9:
00106eb9mov rax, [rsp+544]
00106ec1jmp 0x106ec5
00106ec3
00106ec3loc_106ec3:
00106ec3xor eax, eax
00106ec5
00106ec5loc_106ec5:
00106ec5mov rdi, [rsp+208]
00106ecdcmp rax, rdi
00106ed0cmovbe rax, rdi
00106ed4cmp rax, 40
00106ed8ja 0x1078e0
00106edetest rax, rax
00106ee1je 0x106eef
00106ee3cmp rax, 1
00106ee7jne 0x106ef6
00106ee9xor ecx, ecx
00106eebxor edx, edx
00106eedjmp 0x106f45
00106eef
00106eefloc_106eef:
00106eefxor eax, eax
00106ef1jmp 0x106f88
00106ef6
00106ef6loc_106ef6:
00106ef6mov rsi, rax
00106ef9and rsi, -2
00106efdxor edx, edx
00106effxor ecx, ecx
00106f01nop [rax+rax]
00106f10
00106f10loc_106f10:
00106f10movzx edx, dl
00106f13bt rdx, 0
00106f17mov edx, [rsp+4*rcx+48]
00106f1bmov r8l, [rsp+4*rcx+52]
00106f20adc [rsp+4*rcx+384], edx
00106f27adc [rsp+4*rcx+388], r8l
00106f2flea rcx, [rcx+2]
00106f33setb dl
00106f36cmp rsi, rcx
00106f39jne 0x106f10
00106f3btest al, 1
00106f3djne 0x106f45
00106f3ftest dl, dl
00106f41je 0x106f88
00106f43jmp 0x106f70
00106f45
00106f45loc_106f45:
00106f45mov esi, [rsp+4*rcx+384]
00106f4cmov r8l, [rsp+4*rcx+48]
00106f51lea r9l, [rsi+r8]
00106f55movzx r10l, dl
00106f59add r10l, r9l
00106f5csetb dl
00106f5fmov [rsp+4*rcx+384], r10l
00106f67add esi, r8l
00106f6ajb 0x106f70
00106f6ctest dl, dl
00106f6eje 0x106f88
00106f70
00106f70loc_106f70:
00106f70cmp rax, 39
00106f74ja 0x10789d
00106f7amov [rsp+4*rax+384], 1
00106f85inc rax
00106f88
00106f88loc_106f88:
00106f88mov [rsp+544], rax
00106f90cmp rax, r13
00106f93cmovbe rax, r13
00106f97cmp rax, 41
00106f9bjae 0x1078e0
00106fa1shl rax, 2
00106fa5mov ecx, 255
00106faanop [rax+rax]
00106fb0
00106fb0loc_106fb0:
00106fb0test rax, rax
00106fb3je 0x106fdc
00106fb5mov esi, [rsp+rax+212]
00106fbcxor edx, edx
00106fbecmp esi, [rsp+rax+380]
00106fc5setne dl
00106fc8cmova edx, ecx
00106fcbadd rax, -4
00106fcftest dl, dl
00106fd1je 0x106fb0
00106fd3cmp dl, 1
00106fd6ja 0x106ffa
00106fd8
00106fd8loc_106fd8:
00106fd8inc ebp
00106fdajmp 0x10704f
00106fdc
00106fdcloc_106fdc:
00106fdcadd rax, rsp
00106fdfadd rax, 216
00106fe5lea rcx, [rsp+216]
00106fedcmp rax, rcx
00106ff0setne dl
00106ff3neg dl
00106ff5cmp dl, 1
00106ff8jbe 0x106fd8
00106ffa
00106ffaloc_106ffa:
00106ffatest rdi, rdi
00106ffdje 0x107045
00106ffflea rcx, [4*rdi]
00107007xor edx, edx
00107009xor eax, eax
0010700bnop [rax+rax]
00107010
00107010loc_107010:
00107010mov esi, [rsp+rdx+48]
00107014lea rsi, [rsi+4*rsi]
00107018lea rax, [rax+2*rsi]
0010701cmov [rsp+rdx+48], eax
00107020shr rax, 32
00107024add rdx, 4
00107028cmp rcx, rdx
0010702bjne 0x107010
0010702dtest rax, rax
00107030je 0x107047
00107032cmp rdi, 39
00107036ja 0x1078bc
0010703cmov [rsp+4*rdi+48], eax
00107040inc rdi
00107043jmp 0x107047
00107045
00107045loc_107045:
00107045xor edi, edi
00107047
00107047loc_107047:
00107047mov [rsp+208], rdi
0010704f
0010704floc_10704f:
0010704fcmp bp, r12w
00107053mov [rsp+28], r12l
00107058jl 0x1076b6
0010705emovsx rax, bp
00107062mov ecx, ebp
00107064sub ecx, r12l
00107067movsx rdx, r12w
0010706bsub rax, rdx
0010706ecmp rax, rbx
00107071movsx r12, cx
00107075cmovae r12, rbx
00107079test r12, r12
0010707cje 0x1076b6
00107082mov [rsp+16], rbx
00107087mov [rsp+712], r13
0010708flea rbx, [rsp+552]
00107097mov r13, [rip+0x10aa82]
0010709emov edx, 160
001070a3mov rdi, rbx
001070a6lea r14, [rsp+216]
001070aemov rsi, r14
001070b1call r13
001070b4mov esi, 1
001070b9mov rdi, rbx
001070bccall core::num::bignum::Big32x40::mul_pow2
001070c1mov rax, [rsp+376]
001070c9mov [rsp+880], rax
001070d1lea rbx, [rsp+720]
001070d9mov edx, 160
001070demov rdi, rbx
001070e1mov rsi, r14
001070e4call r13
001070e7mov esi, 2
001070ecmov rdi, rbx
001070efcall core::num::bignum::Big32x40::mul_pow2
001070f4mov rax, [rsp+376]
001070fcmov [rsp+544], rax
00107104mov edx, 160
00107109lea rbx, [rsp+384]
00107111mov rdi, rbx
00107114mov rsi, r14
00107117call r13
0010711amov esi, 3
0010711fmov rdi, rbx
00107122call core::num::bignum::Big32x40::mul_pow2
00107127mov r10, [rsp+544]
0010712fmov rbx, [rsp+880]
00107137mov r14, [rsp+712]
0010713fmov r13, [rsp+376]
00107147xor r8l, r8l
0010714amov rdi, [rsp+208]
00107152mov r9l, 255
00107158
00107158loc_107158:
00107158cmp rdi, 41
0010715cjae 0x106e3b
00107162mov rax, r8
00107165inc r8
00107168lea rcx, [4*rdi]
00107170xor edx, edx
00107172mov rsi, [rsp+16]
00107177nop [rax+rax]
00107180
00107180loc_107180:
00107180cmp rcx, rdx
00107183je 0x107723
00107189cmp [rsp+rdx+48], 0
0010718elea rdx, [rdx+4]
00107192je 0x107180
00107194mov [rsp+32], r8
00107199cmp rdi, r10
0010719cmov rcx, r10
0010719fcmova rcx, rdi
001071a3cmp rcx, 41
001071a7jae 0x1079af
001071adlea rdx, [4*rcx]
001071b5nop [rax+rax]
001071c0
001071c0loc_1071c0:
001071c0test rdx, rdx
001071c3je 0x107206
001071c5mov r11l, [rsp+rdx+380]
001071cdxor r8l, r8l
001071d0cmp r11l, [rsp+rdx+44]
001071d5setne r8b
001071d9cmova r8l, r9l
001071ddadd rdx, -4
001071e1test r8b, r8b
001071e4je 0x1071c0
001071e6cmp r8b, 2
001071eajae 0x107228
001071ec
001071ecloc_1071ec:
001071ectest rcx, rcx
001071efje 0x1072b1
001071f5cmp rcx, 1
001071f9jne 0x107233
001071fbmov dil, 1
001071fexor r11l, r11l
00107201jmp 0x107282
00107206
00107206loc_107206:
00107206add rdx, rsp
00107209add rdx, 384
00107210lea rsi, [rsp+384]
00107218cmp rdx, rsi
0010721bsetne r8b
0010721fneg r8b
00107222cmp r8b, 2
00107226jb 0x1071ec
00107228
00107228loc_107228:
00107228xor r11l, r11l
0010722bmov rcx, rdi
0010722ejmp 0x1072bc
00107233
00107233loc_107233:
00107233mov rdx, rcx
00107236and rdx, -2
0010723amov dil, 1
0010723dxor r11l, r11l
00107240
00107240loc_107240:
00107240mov esi, [rsp+4*r11+384]
00107248not esi
0010724amovzx edi, dil
0010724ebt rdi, 0
00107252adc [rsp+4*r11+48], esi
00107257mov esi, [rsp+4*r11+388]
0010725fnot esi
00107261adc [rsp+4*r11+52], esi
00107266lea r11, [r11+2]
0010726asetb dil
0010726ecmp rdx, r11
00107271jne 0x107240
00107273test cl, 1
00107276jne 0x107282
00107278test dil, dil
0010727bjne 0x1072b1
0010727djmp 0x1079db
00107282
00107282loc_107282:
00107282mov r8l, [rsp+4*r11+384]
0010728anot r8l
0010728dmov esi, [rsp+4*r11+48]
00107292lea edx, [r8+rsi]
00107296movzx edi, dil
0010729aadd edi, edx
0010729csetb dl
0010729fmov [rsp+4*r11+48], edi
001072a4add r8l, esi
001072a7jb 0x1072b1
001072a9test dl, dl
001072abje 0x1079db
001072b1
001072b1loc_1072b1:
001072b1mov [rsp+208], rcx
001072b9mov r11b, 8
001072bc
001072bcloc_1072bc:
001072bccmp rcx, rbx
001072bfmov r8, rbx
001072c2cmova r8, rcx
001072c6cmp r8, 41
001072cajae 0x1079c5
001072d0lea rdx, [4*r8]
001072d8nop [rax+rax]
001072e0
001072e0loc_1072e0:
001072e0test rdx, rdx
001072e3je 0x107327
001072e5mov esi, [rsp+rdx+716]
001072ecxor edi, edi
001072eecmp esi, [rsp+rdx+44]
001072f2setne dil
001072f6cmova edi, r9l
001072faadd rdx, -4
001072fetest dil, dil
00107301je 0x1072e0
00107303cmp dil, 1
00107307ja 0x107349
00107309
00107309loc_107309:
00107309test r8, r8
0010730cje 0x1073d1
00107312cmp r8, 1
00107316jne 0x107351
00107318mov [rsp], r14
0010731cmov [rsp+8], r10
00107321mov cl, 1
00107323xor edx, edx
00107325jmp 0x10739c
00107327
00107327loc_107327:
00107327add rdx, rsp
0010732aadd rdx, 720
00107331lea rsi, [rsp+720]
00107339cmp rdx, rsi
0010733csetne dil
00107340neg dil
00107343cmp dil, 1
00107347jbe 0x107309
00107349
00107349loc_107349:
00107349mov r8, rcx
0010734cjmp 0x1073dd
00107351
00107351loc_107351:
00107351mov rdi, r8
00107354and rdi, -2
00107358mov cl, 1
0010735axor edx, edx
0010735cnop [rax]
00107360
00107360loc_107360:
00107360mov esi, [rsp+4*rdx+720]
00107367not esi
00107369movzx ecx, cl
0010736cbt rcx, 0
00107370adc [rsp+4*rdx+48], esi
00107374mov ecx, [rsp+4*rdx+724]
0010737bnot ecx
0010737dadc [rsp+4*rdx+52], ecx
00107381lea rdx, [rdx+2]
00107385setb cl
00107388cmp rdi, rdx
0010738bjne 0x107360
0010738dtest r8b, 1
00107391je 0x1073c9
00107393mov [rsp], r14
00107397mov [rsp+8], r10
0010739c
0010739cloc_10739c:
0010739cmov esi, [rsp+4*rdx+720]
001073a3not esi
001073a5mov edi, [rsp+4*rdx+48]
001073a9lea r14l, [rsi+rdi]
001073admovzx r10l, cl
001073b1add r10l, r14l
001073b4setb cl
001073b7mov [rsp+4*rdx+48], r10l
001073bcadd esi, edi
001073bemov r10, [rsp+8]
001073c3mov r14, [rsp]
001073c7jb 0x1073d1
001073c9
001073c9loc_1073c9:
001073c9test cl, cl
001073cbje 0x1079db
001073d1
001073d1loc_1073d1:
001073d1mov [rsp+208], r8
001073d9or r11b, 4
001073dd
001073ddloc_1073dd:
001073ddcmp r8, r14
001073e0mov rcx, r14
001073e3cmova rcx, r8
001073e7cmp rcx, 41
001073ebjae 0x1079af
001073f1lea rdx, [4*rcx]
001073f9nop [rax]
00107400
00107400loc_107400:
00107400test rdx, rdx
00107403je 0x107448
00107405mov esi, [rsp+rdx+548]
0010740cxor edi, edi
0010740ecmp esi, [rsp+rdx+44]
00107412setne dil
00107416cmova edi, r9l
0010741aadd rdx, -4
0010741etest dil, dil
00107421je 0x107400
00107423cmp dil, 1
00107427ja 0x10746a
00107429
00107429loc_107429:
00107429test rcx, rcx
0010742cje 0x1074f6
00107432cmp rcx, 1
00107436jne 0x107472
00107438mov [rsp], r14
0010743cmov [rsp+8], r10
00107441mov dil, 1
00107444xor edx, edx
00107446jmp 0x1074bd
00107448
00107448loc_107448:
00107448add rdx, rsp
0010744badd rdx, 552
00107452lea rsi, [rsp+552]
0010745acmp rdx, rsi
0010745dsetne dil
00107461neg dil
00107464cmp dil, 1
00107468jbe 0x107429
0010746a
0010746aloc_10746a:
0010746amov rcx, r8
0010746djmp 0x107502
00107472
00107472loc_107472:
00107472mov r8, rcx
00107475and r8, -2
00107479mov dil, 1
0010747cxor edx, edx
0010747enop
00107480
00107480loc_107480:
00107480mov esi, [rsp+4*rdx+552]
00107487not esi
00107489movzx edi, dil
0010748dbt rdi, 0
00107491adc [rsp+4*rdx+48], esi
00107495mov esi, [rsp+4*rdx+556]
0010749cnot esi
0010749eadc [rsp+4*rdx+52], esi
001074a2lea rdx, [rdx+2]
001074a6setb dil
001074aacmp r8, rdx
001074adjne 0x107480
001074aftest cl, 1
001074b2je 0x1074ed
001074b4mov [rsp], r14
001074b8mov [rsp+8], r10
001074bd
001074bdloc_1074bd:
001074bdmov esi, [rsp+4*rdx+552]
001074c4not esi
001074c6mov r8l, [rsp+4*rdx+48]
001074cblea r10l, [rsi+r8]
001074cfmovzx r14l, dil
001074d3add r14l, r10l
001074d6setb dil
001074damov [rsp+4*rdx+48], r14l
001074dfadd esi, r8l
001074e2mov r10, [rsp+8]
001074e7mov r14, [rsp]
001074ebjb 0x1074f6
001074ed
001074edloc_1074ed:
001074edtest dil, dil
001074f0je 0x1079db
001074f6
001074f6loc_1074f6:
001074f6mov [rsp+208], rcx
001074feadd r11b, 2
00107502
00107502loc_107502:
00107502cmp rcx, r13
00107505mov rdi, r13
00107508cmova rdi, rcx
0010750ccmp rdi, 41
00107510jae 0x106e3b
00107516lea rdx, [4*rdi]
0010751enop
00107520
00107520loc_107520:
00107520test rdx, rdx
00107523je 0x107570
00107525mov esi, [rsp+rdx+212]
0010752cxor r8l, r8l
0010752fcmp esi, [rsp+rdx+44]
00107533setne r8b
00107537cmova r8l, r9l
0010753badd rdx, -4
0010753ftest r8b, r8b
00107542je 0x107520
00107544cmp r8b, 1
00107548ja 0x107592
0010754a
0010754aloc_10754a:
0010754atest rdi, rdi
0010754dmov rsi, [rsp+16]
00107552je 0x10762d
00107558cmp rdi, 1
0010755cjne 0x10759f
0010755emov [rsp], r14
00107562mov [rsp+8], r10
00107567mov cl, 1
00107569xor edx, edx
0010756bjmp 0x1075f1
00107570
00107570loc_107570:
00107570add rdx, rsp
00107573add rdx, 216
0010757alea rsi, [rsp+216]
00107582cmp rdx, rsi
00107585setne r8b
00107589neg r8b
0010758ccmp r8b, 1
00107590jbe 0x10754a
00107592
00107592loc_107592:
00107592mov rdi, rcx
00107595mov rsi, [rsp+16]
0010759ajmp 0x107638
0010759f
0010759floc_10759f:
0010759fmov r8, rdi
001075a2and r8, -2
001075a6mov cl, 1
001075a8xor edx, edx
001075aanop [rax+rax]
001075b0
001075b0loc_1075b0:
001075b0mov esi, [rsp+4*rdx+216]
001075b7not esi
001075b9movzx ecx, cl
001075bcbt rcx, 0
001075c0adc [rsp+4*rdx+48], esi
001075c4mov ecx, [rsp+4*rdx+220]
001075cbnot ecx
001075cdadc [rsp+4*rdx+52], ecx
001075d1lea rdx, [rdx+2]
001075d5setb cl
001075d8cmp r8, rdx
001075dbjne 0x1075b0
001075ddtest dil, 1
001075e1mov rsi, [rsp+16]
001075e6je 0x107625
001075e8mov [rsp], r14
001075ecmov [rsp+8], r10
001075f1
001075f1loc_1075f1:
001075f1mov esi, [rsp+4*rdx+216]
001075f8not esi
001075famov r8l, [rsp+4*rdx+48]
001075fflea r10l, [rsi+r8]
00107603movzx r14l, cl
00107607add r14l, r10l
0010760asetb cl
0010760dmov [rsp+4*rdx+48], r14l
00107612add esi, r8l
00107615mov r10, [rsp+8]
0010761amov r14, [rsp]
0010761emov rsi, [rsp+16]
00107623jb 0x10762d
00107625
00107625loc_107625:
00107625test cl, cl
00107627je 0x1079db
0010762d
0010762dloc_10762d:
0010762dmov [rsp+208], rdi
00107635inc r11b
00107638
00107638loc_107638:
00107638cmp rax, rsi
0010763bje 0x1078ab
00107641add r11b, 48
00107645mov [r15+rax], r11b
00107649test rdi, rdi
0010764cje 0x107695
0010764elea rcx, [4*rdi]
00107656xor edx, edx
00107658xor eax, eax
0010765amov r8, [rsp+32]
0010765fnop
00107660
00107660loc_107660:
00107660mov esi, [rsp+rdx+48]
00107664lea rsi, [rsi+4*rsi]
00107668lea rax, [rax+2*rsi]
0010766cmov [rsp+rdx+48], eax
00107670shr rax, 32
00107674add rdx, 4
00107678cmp rcx, rdx
0010767bjne 0x107660
0010767dtest rax, rax
00107680je 0x10769c
00107682cmp rdi, 39
00107686ja 0x10789d
0010768cmov [rsp+4*rdi+48], eax
00107690inc rdi
00107693jmp 0x10769c
00107695
00107695loc_107695:
00107695xor edi, edi
00107697mov r8, [rsp+32]
0010769c
0010769cloc_10769c:
0010769cmov [rsp+208], rdi
001076a4cmp r8, r12
001076a7jne 0x107158
001076admov al, 1
001076afmov rbx, [rsp+16]
001076b4jmp 0x1076bb
001076b6
001076b6loc_1076b6:
001076b6xor eax, eax
001076b8xor r12l, r12l
001076bb
001076bbloc_1076bb:
001076bbcmp r13, 41
001076bfjae 0x1078f6
001076c5test r13, r13
001076c8je 0x10774e
001076celea rdx, [4*r13]
001076d6xor esi, esi
001076d8xor ecx, ecx
001076danop [rax+rax]
001076e0
001076e0loc_1076e0:
001076e0mov r8l, [rsp+rsi+216]
001076e8lea r8, [r8+4*r8]
001076ecadd r8, rcx
001076efmov rcx, r8
001076f2shr rcx, 32
001076f6mov [rsp+rsi+216], r8l
001076feadd rsi, 4
00107702cmp rdx, rsi
00107705jne 0x1076e0
00107707test rcx, rcx
0010770aje 0x107751
0010770ccmp r13, 39
00107710ja 0x10789d
00107716mov [rsp+4*r13+216], ecx
0010771einc r13
00107721jmp 0x107751
00107723
00107723loc_107723:
00107723cmp r12, rsi
00107726ja 0x1079f5
0010772cmov rdx, r12
0010772fsub rdx, rax
00107732je 0x10787b
00107738add rax, r15
0010773bmov rdi, rax
0010773emov esi, 48
00107743call [rip+0x10a3bf]
00107749jmp 0x10787b
0010774e
0010774eloc_10774e:
0010774exor r13l, r13l
00107751
00107751loc_107751:
00107751mov [rsp+376], r13
00107759cmp rdi, r13
0010775ccmova r13, rdi
00107760cmp r13, 41
00107764jae 0x1078f6
0010776ashl r13, 2
0010776emov ecx, 255
00107773nop [rax+rax]
00107780
00107780loc_107780:
00107780test r13, r13
00107783je 0x1077af
00107785mov esi, [rsp+r13+212]
0010778dxor edx, edx
0010778fcmp esi, [rsp+r13+44]
00107794setne dl
00107797cmova edx, ecx
0010779aadd r13, -4
0010779etest dl, dl
001077a0je 0x107780
001077a2movzx eax, dl
001077a5cmp eax, 1
001077a8je 0x1077e9
001077aajmp 0x107872
001077af
001077afloc_1077af:
001077aflea rcx, [rsp+r13]
001077b3add rcx, 216
001077balea rdx, [rsp+216]
001077c2cmp rcx, rdx
001077c5sete cl
001077c8test al, cl
001077caje 0x107872
001077d0lea rdi, [r12-1]
001077d5cmp rdi, rbx
001077d8jae 0x1078cf
001077detest [r15+rdi], 1
001077e3je 0x107872
001077e9
001077e9loc_1077e9:
001077e9cmp r12, rbx
001077ecja 0x107a06
001077f2mov rdx, -1
001077f9mov rax, r12
001077fcnop [rax]
00107800
00107800loc_107800:
00107800test rax, rax
00107803je 0x10782f
00107805mov rdi, rax
00107808dec rax
0010780binc rdx
0010780ecmp [r15+rdi-1], 57
00107814je 0x107800
00107816inc [r15+rax]
0010781acmp rdi, r12
0010781djae 0x107872
0010781fadd rdi, r15
00107822mov esi, 48
00107827call [rip+0x10a2db]
0010782djmp 0x107872
0010782f
0010782floc_10782f:
0010782ftest r12, r12
00107832je 0x107857
00107834mov [r15], 49
00107838mov r13b, 48
0010783bcmp r12, 1
0010783fje 0x10785a
00107841lea rdi, [r15+1]
00107845lea rdx, [r12-1]
0010784amov esi, 48
0010784fcall [rip+0x10a2b3]
00107855jmp 0x10785a
00107857
00107857loc_107857:
00107857mov r13b, 49
0010785a
0010785aloc_10785a:
0010785alea eax, [rbp+1]
0010785dcmp bp, [rsp+28]
00107862jl 0x107870
00107864cmp r12, rbx
00107867jae 0x107870
00107869mov [r15+r12], r13b
0010786dinc r12
00107870
00107870loc_107870:
00107870mov ebp, eax
00107872
00107872loc_107872:
00107872cmp r12, rbx
00107875ja 0x1079a6
0010787b
0010787bloc_10787b:
0010787bmov rax, [rsp+40]
00107880mov [rax], r15
00107883mov [rax+8], r12
00107887mov [rax+16], bp
0010788badd rsp, 888
00107892pop rbx
00107893pop r12
00107895pop r13
00107897pop r14
00107899pop r15
0010789bpop rbp
0010789cret
0010789d
0010789dloc_10789d:
0010789dlea rdx, [rip+0xe3944]
001078a4mov edi, 40
001078a9jmp 0x1078c3
001078ab
001078abloc_1078ab:
001078ablea rdx, [rip+0xe30e6]
001078b2mov rdi, rsi
001078b5call core::panicking::panic_bounds_check
001078baud2
001078bc
001078bcloc_1078bc:
001078bclea rdx, [rip+0xe3925]
001078c3
001078c3loc_1078c3:
001078c3mov esi, 40
001078c8call core::panicking::panic_bounds_check
001078cdud2
001078cf
001078cfloc_1078cf:
001078cflea rdx, [rip+0xe307a]
001078d6mov rsi, rbx
001078d9call core::panicking::panic_bounds_check
001078deud2
001078e0
001078e0loc_1078e0:
001078e0lea rdx, [rip+0xe3901]
001078e7mov esi, 40
001078ecmov rdi, rax
001078efcall core::slice::index::slice_end_index_len_fail
001078f4ud2
001078f6
001078f6loc_1078f6:
001078f6lea rdx, [rip+0xe38eb]
001078fdmov esi, 40
00107902mov rdi, r13
00107905call core::slice::index::slice_end_index_len_fail
0010790aud2
0010790c
0010790cloc_10790c:
0010790clea rdi, [rip-0xc47c8]
00107913lea rdx, [rip+0xe2fee]
0010791ajmp 0x107944
0010791c
0010791cloc_10791c:
0010791clea rdi, [rip-0xc47bc]
00107923lea rdx, [rip+0xe2ff6]
0010792amov esi, 29
0010792fcall core::panicking::panic
00107934ud2
00107936
00107936loc_107936:
00107936lea rdi, [rip-0xc47b9]
0010793dlea rdx, [rip+0xe2ff4]
00107944
00107944loc_107944:
00107944mov esi, 28
00107949call core::panicking::panic
0010794eud2
00107950
00107950loc_107950:
00107950lea rdi, [rip-0xc4780]
00107957lea rdx, [rip+0xe3082]
0010795emov esi, 54
00107963call core::panicking::panic
00107968ud2
0010796a
0010796aloc_10796a:
0010796alea rdi, [rip-0xc47d1]
00107971lea rdx, [rip+0xe3050]
00107978mov esi, 55
0010797dcall core::panicking::panic
00107982ud2
00107984
00107984loc_107984:
00107984mov rdi, r13
00107987jmp 0x106e3b
0010798c
0010798cloc_10798c:
0010798clea rdi, [rip-0xc359d]
00107993lea rdx, [rip+0xe384e]
0010799amov esi, 27
0010799fcall core::panicking::panic
001079a4ud2
001079a6
001079a6loc_1079a6:
001079a6lea rdx, [rip+0xe2fd3]
001079adjmp 0x107a0d
001079af
001079afloc_1079af:
001079aflea rdx, [rip+0xe3832]
001079b6mov esi, 40
001079bbmov rdi, rcx
001079becall core::slice::index::slice_end_index_len_fail
001079c3ud2
001079c5
001079c5loc_1079c5:
001079c5lea rdx, [rip+0xe381c]
001079ccmov esi, 40
001079d1mov rdi, r8
001079d4call core::slice::index::slice_end_index_len_fail
001079d9ud2
001079db
001079dbloc_1079db:
001079dblea rdi, [rip-0xc3623]
001079e2lea rdx, [rip+0xe37ff]
001079e9mov esi, 26
001079eecall core::panicking::panic
001079f3ud2
001079f5
001079f5loc_1079f5:
001079f5lea rdx, [rip+0xe2fb4]
001079fcmov rdi, r12
001079ffcall core::slice::index::slice_end_index_len_fail
00107a04ud2
00107a06
00107a06loc_107a06:
00107a06lea rdx, [rip+0xe2f5b]
00107a0d
00107a0dloc_107a0d:
00107a0dmov rdi, r12
00107a10mov rsi, rbx
00107a13call core::slice::index::slice_end_index_len_fail
00107a18ud2
00106bf0
00106bf0core::num::flt2dec::strategy::dragon::format_exact:
00106bf0push rbp
00106bf1push r15
00106bf3push r14
00106bf5push r13
00106bf7push r12
00106bf9push rbx
00106bfasub rsp, 888
00106c01mov rbx, rcx
00106c04mov [rsp+40], rdi
00106c09mov rcx, [rsi]
00106c0ctest rcx, rcx
00106c0fje 0x10790c
00106c15mov rax, [rsi+8]
00106c19test rax, rax
00106c1cje 0x10791c
00106c22mov r15, rdx
00106c25mov rdx, [rsi+16]
00106c29test rdx, rdx
00106c2cje 0x107936
00106c32add rdx, rcx
00106c35jb 0x107950
00106c3bcmp rcx, rax
00106c3ejb 0x10796a
00106c44mov r12l, r8l
00106c47movsx rax, [rsi+24]
00106c4cmov rdx, rcx
00106c4fdec rdx
00106c52je 0x106c5e
00106c54bsr rdx, rdx
00106c58xor rdx, 63
00106c5cjmp 0x106c63
00106c5e
00106c5eloc_106c5e:
00106c5emov edx, 64
00106c63
00106c63loc_106c63:
00106c63mov rsi, rax
00106c66sub rsi, rdx
00106c69imul rdx, rsi, 0x4d104d42
00106c70mov rbp, 0x1344135080
00106c7aadd rbp, rdx
00106c7dshr rbp, 32
00106c81xor edx, edx
00106c83xor esi, esi
00106c85mov rdi, rcx
00106c88shr rdi, 32
00106c8ccmove edi, edx
00106c8fsetne sil
00106c93inc rsi
00106c96mov [rsp+208], rsi
00106c9emov [rsp+48], ecx
00106ca2mov [rsp+52], edi
00106ca6xorps x0, x0
00106ca9movups [rsp+56], x0
00106caemovups [rsp+72], x0
00106cb3movups [rsp+88], x0
00106cb8movups [rsp+104], x0
00106cbdmovups [rsp+120], x0
00106cc2movups [rsp+136], x0
00106ccamovups [rsp+152], x0
00106cd2movups [rsp+168], x0
00106cdamovups [rsp+184], x0
00106ce2mov [rsp+200], 0
00106ceemovups [rsp+360], x0
00106cf6movups [rsp+348], x0
00106cfemovups [rsp+332], x0
00106d06movups [rsp+316], x0
00106d0emovups [rsp+300], x0
00106d16movups [rsp+284], x0
00106d1emovups [rsp+268], x0
00106d26movups [rsp+252], x0
00106d2emovups [rsp+236], x0
00106d36movups [rsp+220], x0
00106d3emov [rsp+376], 1
00106d4amov [rsp+216], 1
00106d55test ax, ax
00106d58js 0x106d64
00106d5amovzx esi, ax
00106d5dlea rdi, [rsp+48]
00106d62jmp 0x106d72
00106d64
00106d64loc_106d64:
00106d64neg eax
00106d66movsx rsi, ax
00106d6alea rdi, [rsp+216]
00106d72
00106d72loc_106d72:
00106d72call core::num::bignum::Big32x40::mul_pow2
00106d77mov eax, ebp
00106d79neg eax
00106d7btest bp, bp
00106d7ecmovns rax, rbp
00106d82lea r14, [rsp+216]
00106d8alea rdi, [rsp+48]
00106d8fcmovns rdi, r14
00106d93movzx esi, ax
00106d96call core::num::flt2dec::strategy::dragon::mul_pow10
00106d9bmov r13, [rsp+376]
00106da3mov [rsp+544], r13
00106dablea rdi, [rsp+384]
00106db3mov edx, 160
00106db8mov rsi, r14
00106dbbcall [rip+0x10ad5f]
00106dc1cmp r13, 40
00106dc5ja 0x107984
00106dcbmov rsi, 0x44b82fa09b5a53
00106dd5mov rcx, rbx
00106dd8mov rdi, r13
00106ddbnop [rax+rax]
00106de0
00106de0loc_106de0:
00106de0test rdi, rdi
00106de3je 0x106e23
00106de5shl rdi, 2
00106de9xor r8l, r8l
00106decnop [rax]
00106df0
00106df0loc_106df0:
00106df0mov eax, [rsp+rdi+380]
00106df7shl r8, 32
00106dfbor r8, rax
00106dfemov rax, r8
00106e01shr rax, 9
00106e05mul rsi
00106e08shr rdx, 11
00106e0cimul rax, rdx, 0x3b9aca00
00106e13sub r8, rax
00106e16mov [rsp+rdi+380], edx
00106e1dadd rdi, -4
00106e21jne 0x106df0
00106e23
00106e23loc_106e23:
00106e23add rcx, -9
00106e27cmp rcx, 9
00106e2bjbe 0x106e4e
00106e2dmov rdi, [rsp+544]
00106e35cmp rdi, 41
00106e39jb 0x106de0
00106e3b
00106e3bloc_106e3b:
00106e3blea rdx, [rip+0xe43a6]
00106e42mov esi, 40
00106e47call core::slice::index::slice_end_index_len_fail
00106e4cud2
00106e4e
00106e4eloc_106e4e:
00106e4elea rax, [rip-0xc3e39]
00106e55mov esi, [rax+4*rcx]
00106e58test rsi, rsi
00106e5bje 0x10798c
00106e61mov rdi, [rsp+544]
00106e69cmp rdi, 41
00106e6djae 0x106e3b
00106e6ftest rdi, rdi
00106e72je 0x106ec3
00106e74shl rdi, 2
00106e78xor eax, eax
00106e7ajmp 0x106e98
00106e7cnop [rax]
00106e80
00106e80loc_106e80:
00106e80xor edx, edx
00106e82div rsi
00106e85mov rcx, rax
00106e88mov rax, rdx
00106e8b
00106e8bloc_106e8b:
00106e8bmov [rsp+rdi+380], ecx
00106e92add rdi, -4
00106e96je 0x106eb9
00106e98
00106e98loc_106e98:
00106e98mov ecx, [rsp+rdi+380]
00106e9fshl rax, 32
00106ea3or rax, rcx
00106ea6mov rcx, rax
00106ea9shr rcx, 32
00106eadjne 0x106e80
00106eafxor edx, edx
00106eb1div esi
00106eb3mov ecx, eax
00106eb5mov eax, edx
00106eb7jmp 0x106e8b
00106eb9
00106eb9loc_106eb9:
00106eb9mov rax, [rsp+544]
00106ec1jmp 0x106ec5
00106ec3
00106ec3loc_106ec3:
00106ec3xor eax, eax
00106ec5
00106ec5loc_106ec5:
00106ec5mov rdi, [rsp+208]
00106ecdcmp rax, rdi
00106ed0cmovbe rax, rdi
00106ed4cmp rax, 40
00106ed8ja 0x1078e0
00106edetest rax, rax
00106ee1je 0x106eef
00106ee3cmp rax, 1
00106ee7jne 0x106ef6
00106ee9xor ecx, ecx
00106eebxor edx, edx
00106eedjmp 0x106f45
00106eef
00106eefloc_106eef:
00106eefxor eax, eax
00106ef1jmp 0x106f88
00106ef6
00106ef6loc_106ef6:
00106ef6mov rsi, rax
00106ef9and rsi, -2
00106efdxor edx, edx
00106effxor ecx, ecx
00106f01nop [rax+rax]
00106f10
00106f10loc_106f10:
00106f10movzx edx, dl
00106f13bt rdx, 0
00106f17mov edx, [rsp+4*rcx+48]
00106f1bmov r8l, [rsp+4*rcx+52]
00106f20adc [rsp+4*rcx+384], edx
00106f27adc [rsp+4*rcx+388], r8l
00106f2flea rcx, [rcx+2]
00106f33setb dl
00106f36cmp rsi, rcx
00106f39jne 0x106f10
00106f3btest al, 1
00106f3djne 0x106f45
00106f3ftest dl, dl
00106f41je 0x106f88
00106f43jmp 0x106f70
00106f45
00106f45loc_106f45:
00106f45mov esi, [rsp+4*rcx+384]
00106f4cmov r8l, [rsp+4*rcx+48]
00106f51lea r9l, [rsi+r8]
00106f55movzx r10l, dl
00106f59add r10l, r9l
00106f5csetb dl
00106f5fmov [rsp+4*rcx+384], r10l
00106f67add esi, r8l
00106f6ajb 0x106f70
00106f6ctest dl, dl
00106f6eje 0x106f88
00106f70
00106f70loc_106f70:
00106f70cmp rax, 39
00106f74ja 0x10789d
00106f7amov [rsp+4*rax+384], 1
00106f85inc rax
00106f88
00106f88loc_106f88:
00106f88mov [rsp+544], rax
00106f90cmp rax, r13
00106f93cmovbe rax, r13
00106f97cmp rax, 41
00106f9bjae 0x1078e0
00106fa1shl rax, 2
00106fa5mov ecx, 255
00106faanop [rax+rax]
00106fb0
00106fb0loc_106fb0:
00106fb0test rax, rax
00106fb3je 0x106fdc
00106fb5mov esi, [rsp+rax+212]
00106fbcxor edx, edx
00106fbecmp esi, [rsp+rax+380]
00106fc5setne dl
00106fc8cmova edx, ecx
00106fcbadd rax, -4
00106fcftest dl, dl
00106fd1je 0x106fb0
00106fd3cmp dl, 1
00106fd6ja 0x106ffa
00106fd8
00106fd8loc_106fd8:
00106fd8inc ebp
00106fdajmp 0x10704f
00106fdc
00106fdcloc_106fdc:
00106fdcadd rax, rsp
00106fdfadd rax, 216
00106fe5lea rcx, [rsp+216]
00106fedcmp rax, rcx
00106ff0setne dl
00106ff3neg dl
00106ff5cmp dl, 1
00106ff8jbe 0x106fd8
00106ffa
00106ffaloc_106ffa:
00106ffatest rdi, rdi
00106ffdje 0x107045
00106ffflea rcx, [4*rdi]
00107007xor edx, edx
00107009xor eax, eax
0010700bnop [rax+rax]
00107010
00107010loc_107010:
00107010mov esi, [rsp+rdx+48]
00107014lea rsi, [rsi+4*rsi]
00107018lea rax, [rax+2*rsi]
0010701cmov [rsp+rdx+48], eax
00107020shr rax, 32
00107024add rdx, 4
00107028cmp rcx, rdx
0010702bjne 0x107010
0010702dtest rax, rax
00107030je 0x107047
00107032cmp rdi, 39
00107036ja 0x1078bc
0010703cmov [rsp+4*rdi+48], eax
00107040inc rdi
00107043jmp 0x107047
00107045
00107045loc_107045:
00107045xor edi, edi
00107047
00107047loc_107047:
00107047mov [rsp+208], rdi
0010704f
0010704floc_10704f:
0010704fcmp bp, r12w
00107053mov [rsp+28], r12l
00107058jl 0x1076b6
0010705emovsx rax, bp
00107062mov ecx, ebp
00107064sub ecx, r12l
00107067movsx rdx, r12w
0010706bsub rax, rdx
0010706ecmp rax, rbx
00107071movsx r12, cx
00107075cmovae r12, rbx
00107079test r12, r12
0010707cje 0x1076b6
00107082mov [rsp+16], rbx
00107087mov [rsp+712], r13
0010708flea rbx, [rsp+552]
00107097mov r13, [rip+0x10aa82]
0010709emov edx, 160
001070a3mov rdi, rbx
001070a6lea r14, [rsp+216]
001070aemov rsi, r14
001070b1call r13
001070b4mov esi, 1
001070b9mov rdi, rbx
001070bccall core::num::bignum::Big32x40::mul_pow2
001070c1mov rax, [rsp+376]
001070c9mov [rsp+880], rax
001070d1lea rbx, [rsp+720]
001070d9mov edx, 160
001070demov rdi, rbx
001070e1mov rsi, r14
001070e4call r13
001070e7mov esi, 2
001070ecmov rdi, rbx
001070efcall core::num::bignum::Big32x40::mul_pow2
001070f4mov rax, [rsp+376]
001070fcmov [rsp+544], rax
00107104mov edx, 160
00107109lea rbx, [rsp+384]
00107111mov rdi, rbx
00107114mov rsi, r14
00107117call r13
0010711amov esi, 3
0010711fmov rdi, rbx
00107122call core::num::bignum::Big32x40::mul_pow2
00107127mov r10, [rsp+544]
0010712fmov rbx, [rsp+880]
00107137mov r14, [rsp+712]
0010713fmov r13, [rsp+376]
00107147xor r8l, r8l
0010714amov rdi, [rsp+208]
00107152mov r9l, 255
00107158
00107158loc_107158:
00107158cmp rdi, 41
0010715cjae 0x106e3b
00107162mov rax, r8
00107165inc r8
00107168lea rcx, [4*rdi]
00107170xor edx, edx
00107172mov rsi, [rsp+16]
00107177nop [rax+rax]
00107180
00107180loc_107180:
00107180cmp rcx, rdx
00107183je 0x107723
00107189cmp [rsp+rdx+48], 0
0010718elea rdx, [rdx+4]
00107192je 0x107180
00107194mov [rsp+32], r8
00107199cmp rdi, r10
0010719cmov rcx, r10
0010719fcmova rcx, rdi
001071a3cmp rcx, 41
001071a7jae 0x1079af
001071adlea rdx, [4*rcx]
001071b5nop [rax+rax]
001071c0
001071c0loc_1071c0:
001071c0test rdx, rdx
001071c3je 0x107206
001071c5mov r11l, [rsp+rdx+380]
001071cdxor r8l, r8l
001071d0cmp r11l, [rsp+rdx+44]
001071d5setne r8b
001071d9cmova r8l, r9l
001071ddadd rdx, -4
001071e1test r8b, r8b
001071e4je 0x1071c0
001071e6cmp r8b, 2
001071eajae 0x107228
001071ec
001071ecloc_1071ec:
001071ectest rcx, rcx
001071efje 0x1072b1
001071f5cmp rcx, 1
001071f9jne 0x107233
001071fbmov dil, 1
001071fexor r11l, r11l
00107201jmp 0x107282
00107206
00107206loc_107206:
00107206add rdx, rsp
00107209add rdx, 384
00107210lea rsi, [rsp+384]
00107218cmp rdx, rsi
0010721bsetne r8b
0010721fneg r8b
00107222cmp r8b, 2
00107226jb 0x1071ec
00107228
00107228loc_107228:
00107228xor r11l, r11l
0010722bmov rcx, rdi
0010722ejmp 0x1072bc
00107233
00107233loc_107233:
00107233mov rdx, rcx
00107236and rdx, -2
0010723amov dil, 1
0010723dxor r11l, r11l
00107240
00107240loc_107240:
00107240mov esi, [rsp+4*r11+384]
00107248not esi
0010724amovzx edi, dil
0010724ebt rdi, 0
00107252adc [rsp+4*r11+48], esi
00107257mov esi, [rsp+4*r11+388]
0010725fnot esi
00107261adc [rsp+4*r11+52], esi
00107266lea r11, [r11+2]
0010726asetb dil
0010726ecmp rdx, r11
00107271jne 0x107240
00107273test cl, 1
00107276jne 0x107282
00107278test dil, dil
0010727bjne 0x1072b1
0010727djmp 0x1079db
00107282
00107282loc_107282:
00107282mov r8l, [rsp+4*r11+384]
0010728anot r8l
0010728dmov esi, [rsp+4*r11+48]
00107292lea edx, [r8+rsi]
00107296movzx edi, dil
0010729aadd edi, edx
0010729csetb dl
0010729fmov [rsp+4*r11+48], edi
001072a4add r8l, esi
001072a7jb 0x1072b1
001072a9test dl, dl
001072abje 0x1079db
001072b1
001072b1loc_1072b1:
001072b1mov [rsp+208], rcx
001072b9mov r11b, 8
001072bc
001072bcloc_1072bc:
001072bccmp rcx, rbx
001072bfmov r8, rbx
001072c2cmova r8, rcx
001072c6cmp r8, 41
001072cajae 0x1079c5
001072d0lea rdx, [4*r8]
001072d8nop [rax+rax]
001072e0
001072e0loc_1072e0:
001072e0test rdx, rdx
001072e3je 0x107327
001072e5mov esi, [rsp+rdx+716]
001072ecxor edi, edi
001072eecmp esi, [rsp+rdx+44]
001072f2setne dil
001072f6cmova edi, r9l
001072faadd rdx, -4
001072fetest dil, dil
00107301je 0x1072e0
00107303cmp dil, 1
00107307ja 0x107349
00107309
00107309loc_107309:
00107309test r8, r8
0010730cje 0x1073d1
00107312cmp r8, 1
00107316jne 0x107351
00107318mov [rsp], r14
0010731cmov [rsp+8], r10
00107321mov cl, 1
00107323xor edx, edx
00107325jmp 0x10739c
00107327
00107327loc_107327:
00107327add rdx, rsp
0010732aadd rdx, 720
00107331lea rsi, [rsp+720]
00107339cmp rdx, rsi
0010733csetne dil
00107340neg dil
00107343cmp dil, 1
00107347jbe 0x107309
00107349
00107349loc_107349:
00107349mov r8, rcx
0010734cjmp 0x1073dd
00107351
00107351loc_107351:
00107351mov rdi, r8
00107354and rdi, -2
00107358mov cl, 1
0010735axor edx, edx
0010735cnop [rax]
00107360
00107360loc_107360:
00107360mov esi, [rsp+4*rdx+720]
00107367not esi
00107369movzx ecx, cl
0010736cbt rcx, 0
00107370adc [rsp+4*rdx+48], esi
00107374mov ecx, [rsp+4*rdx+724]
0010737bnot ecx
0010737dadc [rsp+4*rdx+52], ecx
00107381lea rdx, [rdx+2]
00107385setb cl
00107388cmp rdi, rdx
0010738bjne 0x107360
0010738dtest r8b, 1
00107391je 0x1073c9
00107393mov [rsp], r14
00107397mov [rsp+8], r10
0010739c
0010739cloc_10739c:
0010739cmov esi, [rsp+4*rdx+720]
001073a3not esi
001073a5mov edi, [rsp+4*rdx+48]
001073a9lea r14l, [rsi+rdi]
001073admovzx r10l, cl
001073b1add r10l, r14l
001073b4setb cl
001073b7mov [rsp+4*rdx+48], r10l
001073bcadd esi, edi
001073bemov r10, [rsp+8]
001073c3mov r14, [rsp]
001073c7jb 0x1073d1
001073c9
001073c9loc_1073c9:
001073c9test cl, cl
001073cbje 0x1079db
001073d1
001073d1loc_1073d1:
001073d1mov [rsp+208], r8
001073d9or r11b, 4
001073dd
001073ddloc_1073dd:
001073ddcmp r8, r14
001073e0mov rcx, r14
001073e3cmova rcx, r8
001073e7cmp rcx, 41
001073ebjae 0x1079af
001073f1lea rdx, [4*rcx]
001073f9nop [rax]
00107400
00107400loc_107400:
00107400test rdx, rdx
00107403je 0x107448
00107405mov esi, [rsp+rdx+548]
0010740cxor edi, edi
0010740ecmp esi, [rsp+rdx+44]
00107412setne dil
00107416cmova edi, r9l
0010741aadd rdx, -4
0010741etest dil, dil
00107421je 0x107400
00107423cmp dil, 1
00107427ja 0x10746a
00107429
00107429loc_107429:
00107429test rcx, rcx
0010742cje 0x1074f6
00107432cmp rcx, 1
00107436jne 0x107472
00107438mov [rsp], r14
0010743cmov [rsp+8], r10
00107441mov dil, 1
00107444xor edx, edx
00107446jmp 0x1074bd
00107448
00107448loc_107448:
00107448add rdx, rsp
0010744badd rdx, 552
00107452lea rsi, [rsp+552]
0010745acmp rdx, rsi
0010745dsetne dil
00107461neg dil
00107464cmp dil, 1
00107468jbe 0x107429
0010746a
0010746aloc_10746a:
0010746amov rcx, r8
0010746djmp 0x107502
00107472
00107472loc_107472:
00107472mov r8, rcx
00107475and r8, -2
00107479mov dil, 1
0010747cxor edx, edx
0010747enop
00107480
00107480loc_107480:
00107480mov esi, [rsp+4*rdx+552]
00107487not esi
00107489movzx edi, dil
0010748dbt rdi, 0
00107491adc [rsp+4*rdx+48], esi
00107495mov esi, [rsp+4*rdx+556]
0010749cnot esi
0010749eadc [rsp+4*rdx+52], esi
001074a2lea rdx, [rdx+2]
001074a6setb dil
001074aacmp r8, rdx
001074adjne 0x107480
001074aftest cl, 1
001074b2je 0x1074ed
001074b4mov [rsp], r14
001074b8mov [rsp+8], r10
001074bd
001074bdloc_1074bd:
001074bdmov esi, [rsp+4*rdx+552]
001074c4not esi
001074c6mov r8l, [rsp+4*rdx+48]
001074cblea r10l, [rsi+r8]
001074cfmovzx r14l, dil
001074d3add r14l, r10l
001074d6setb dil
001074damov [rsp+4*rdx+48], r14l
001074dfadd esi, r8l
001074e2mov r10, [rsp+8]
001074e7mov r14, [rsp]
001074ebjb 0x1074f6
001074ed
001074edloc_1074ed:
001074edtest dil, dil
001074f0je 0x1079db
001074f6
001074f6loc_1074f6:
001074f6mov [rsp+208], rcx
001074feadd r11b, 2
00107502
00107502loc_107502:
00107502cmp rcx, r13
00107505mov rdi, r13
00107508cmova rdi, rcx
0010750ccmp rdi, 41
00107510jae 0x106e3b
00107516lea rdx, [4*rdi]
0010751enop
00107520
00107520loc_107520:
00107520test rdx, rdx
00107523je 0x107570
00107525mov esi, [rsp+rdx+212]
0010752cxor r8l, r8l
0010752fcmp esi, [rsp+rdx+44]
00107533setne r8b
00107537cmova r8l, r9l
0010753badd rdx, -4
0010753ftest r8b, r8b
00107542je 0x107520
00107544cmp r8b, 1
00107548ja 0x107592
0010754a
0010754aloc_10754a:
0010754atest rdi, rdi
0010754dmov rsi, [rsp+16]
00107552je 0x10762d
00107558cmp rdi, 1
0010755cjne 0x10759f
0010755emov [rsp], r14
00107562mov [rsp+8], r10
00107567mov cl, 1
00107569xor edx, edx
0010756bjmp 0x1075f1
00107570
00107570loc_107570:
00107570add rdx, rsp
00107573add rdx, 216
0010757alea rsi, [rsp+216]
00107582cmp rdx, rsi
00107585setne r8b
00107589neg r8b
0010758ccmp r8b, 1
00107590jbe 0x10754a
00107592
00107592loc_107592:
00107592mov rdi, rcx
00107595mov rsi, [rsp+16]
0010759ajmp 0x107638
0010759f
0010759floc_10759f:
0010759fmov r8, rdi
001075a2and r8, -2
001075a6mov cl, 1
001075a8xor edx, edx
001075aanop [rax+rax]
001075b0
001075b0loc_1075b0:
001075b0mov esi, [rsp+4*rdx+216]
001075b7not esi
001075b9movzx ecx, cl
001075bcbt rcx, 0
001075c0adc [rsp+4*rdx+48], esi
001075c4mov ecx, [rsp+4*rdx+220]
001075cbnot ecx
001075cdadc [rsp+4*rdx+52], ecx
001075d1lea rdx, [rdx+2]
001075d5setb cl
001075d8cmp r8, rdx
001075dbjne 0x1075b0
001075ddtest dil, 1
001075e1mov rsi, [rsp+16]
001075e6je 0x107625
001075e8mov [rsp], r14
001075ecmov [rsp+8], r10
001075f1
001075f1loc_1075f1:
001075f1mov esi, [rsp+4*rdx+216]
001075f8not esi
001075famov r8l, [rsp+4*rdx+48]
001075fflea r10l, [rsi+r8]
00107603movzx r14l, cl
00107607add r14l, r10l
0010760asetb cl
0010760dmov [rsp+4*rdx+48], r14l
00107612add esi, r8l
00107615mov r10, [rsp+8]
0010761amov r14, [rsp]
0010761emov rsi, [rsp+16]
00107623jb 0x10762d
00107625
00107625loc_107625:
00107625test cl, cl
00107627je 0x1079db
0010762d
0010762dloc_10762d:
0010762dmov [rsp+208], rdi
00107635inc r11b
00107638
00107638loc_107638:
00107638cmp rax, rsi
0010763bje 0x1078ab
00107641add r11b, 48
00107645mov [r15+rax], r11b
00107649test rdi, rdi
0010764cje 0x107695
0010764elea rcx, [4*rdi]
00107656xor edx, edx
00107658xor eax, eax
0010765amov r8, [rsp+32]
0010765fnop
00107660
00107660loc_107660:
00107660mov esi, [rsp+rdx+48]
00107664lea rsi, [rsi+4*rsi]
00107668lea rax, [rax+2*rsi]
0010766cmov [rsp+rdx+48], eax
00107670shr rax, 32
00107674add rdx, 4
00107678cmp rcx, rdx
0010767bjne 0x107660
0010767dtest rax, rax
00107680je 0x10769c
00107682cmp rdi, 39
00107686ja 0x10789d
0010768cmov [rsp+4*rdi+48], eax
00107690inc rdi
00107693jmp 0x10769c
00107695
00107695loc_107695:
00107695xor edi, edi
00107697mov r8, [rsp+32]
0010769c
0010769cloc_10769c:
0010769cmov [rsp+208], rdi
001076a4cmp r8, r12
001076a7jne 0x107158
001076admov al, 1
001076afmov rbx, [rsp+16]
001076b4jmp 0x1076bb
001076b6
001076b6loc_1076b6:
001076b6xor eax, eax
001076b8xor r12l, r12l
001076bb
001076bbloc_1076bb:
001076bbcmp r13, 41
001076bfjae 0x1078f6
001076c5test r13, r13
001076c8je 0x10774e
001076celea rdx, [4*r13]
001076d6xor esi, esi
001076d8xor ecx, ecx
001076danop [rax+rax]
001076e0
001076e0loc_1076e0:
001076e0mov r8l, [rsp+rsi+216]
001076e8lea r8, [r8+4*r8]
001076ecadd r8, rcx
001076efmov rcx, r8
001076f2shr rcx, 32
001076f6mov [rsp+rsi+216], r8l
001076feadd rsi, 4
00107702cmp rdx, rsi
00107705jne 0x1076e0
00107707test rcx, rcx
0010770aje 0x107751
0010770ccmp r13, 39
00107710ja 0x10789d
00107716mov [rsp+4*r13+216], ecx
0010771einc r13
00107721jmp 0x107751
00107723
00107723loc_107723:
00107723cmp r12, rsi
00107726ja 0x1079f5
0010772cmov rdx, r12
0010772fsub rdx, rax
00107732je 0x10787b
00107738add rax, r15
0010773bmov rdi, rax
0010773emov esi, 48
00107743call [rip+0x10a3bf]
00107749jmp 0x10787b
0010774e
0010774eloc_10774e:
0010774exor r13l, r13l
00107751
00107751loc_107751:
00107751mov [rsp+376], r13
00107759cmp rdi, r13
0010775ccmova r13, rdi
00107760cmp r13, 41
00107764jae 0x1078f6
0010776ashl r13, 2
0010776emov ecx, 255
00107773nop [rax+rax]
00107780
00107780loc_107780:
00107780test r13, r13
00107783je 0x1077af
00107785mov esi, [rsp+r13+212]
0010778dxor edx, edx
0010778fcmp esi, [rsp+r13+44]
00107794setne dl
00107797cmova edx, ecx
0010779aadd r13, -4
0010779etest dl, dl
001077a0je 0x107780
001077a2movzx eax, dl
001077a5cmp eax, 1
001077a8je 0x1077e9
001077aajmp 0x107872
001077af
001077afloc_1077af:
001077aflea rcx, [rsp+r13]
001077b3add rcx, 216
001077balea rdx, [rsp+216]
001077c2cmp rcx, rdx
001077c5sete cl
001077c8test al, cl
001077caje 0x107872
001077d0lea rdi, [r12-1]
001077d5cmp rdi, rbx
001077d8jae 0x1078cf
001077detest [r15+rdi], 1
001077e3je 0x107872
001077e9
001077e9loc_1077e9:
001077e9cmp r12, rbx
001077ecja 0x107a06
001077f2mov rdx, -1
001077f9mov rax, r12
001077fcnop [rax]
00107800
00107800loc_107800:
00107800test rax, rax
00107803je 0x10782f
00107805mov rdi, rax
00107808dec rax
0010780binc rdx
0010780ecmp [r15+rdi-1], 57
00107814je 0x107800
00107816inc [r15+rax]
0010781acmp rdi, r12
0010781djae 0x107872
0010781fadd rdi, r15
00107822mov esi, 48
00107827call [rip+0x10a2db]
0010782djmp 0x107872
0010782f
0010782floc_10782f:
0010782ftest r12, r12
00107832je 0x107857
00107834mov [r15], 49
00107838mov r13b, 48
0010783bcmp r12, 1
0010783fje 0x10785a
00107841lea rdi, [r15+1]
00107845lea rdx, [r12-1]
0010784amov esi, 48
0010784fcall [rip+0x10a2b3]
00107855jmp 0x10785a
00107857
00107857loc_107857:
00107857mov r13b, 49
0010785a
0010785aloc_10785a:
0010785alea eax, [rbp+1]
0010785dcmp bp, [rsp+28]
00107862jl 0x107870
00107864cmp r12, rbx
00107867jae 0x107870
00107869mov [r15+r12], r13b
0010786dinc r12
00107870
00107870loc_107870:
00107870mov ebp, eax
00107872
00107872loc_107872:
00107872cmp r12, rbx
00107875ja 0x1079a6
0010787b
0010787bloc_10787b:
0010787bmov rax, [rsp+40]
00107880mov [rax], r15
00107883mov [rax+8], r12
00107887mov [rax+16], bp
0010788badd rsp, 888
00107892pop rbx
00107893pop r12
00107895pop r13
00107897pop r14
00107899pop r15
0010789bpop rbp
0010789cret
0010789d
0010789dloc_10789d:
0010789dlea rdx, [rip+0xe3944]
001078a4mov edi, 40
001078a9jmp 0x1078c3
001078ab
001078abloc_1078ab:
001078ablea rdx, [rip+0xe30e6]
001078b2mov rdi, rsi
001078b5call core::panicking::panic_bounds_check
001078baud2
001078bc
001078bcloc_1078bc:
001078bclea rdx, [rip+0xe3925]
001078c3
001078c3loc_1078c3:
001078c3mov esi, 40
001078c8call core::panicking::panic_bounds_check
001078cdud2
001078cf
001078cfloc_1078cf:
001078cflea rdx, [rip+0xe307a]
001078d6mov rsi, rbx
001078d9call core::panicking::panic_bounds_check
001078deud2
001078e0
001078e0loc_1078e0:
001078e0lea rdx, [rip+0xe3901]
001078e7mov esi, 40
001078ecmov rdi, rax
001078efcall core::slice::index::slice_end_index_len_fail
001078f4ud2
001078f6
001078f6loc_1078f6:
001078f6lea rdx, [rip+0xe38eb]
001078fdmov esi, 40
00107902mov rdi, r13
00107905call core::slice::index::slice_end_index_len_fail
0010790aud2
0010790c
0010790cloc_10790c:
0010790clea rdi, [rip-0xc47c8]
00107913lea rdx, [rip+0xe2fee]
0010791ajmp 0x107944
0010791c
0010791cloc_10791c:
0010791clea rdi, [rip-0xc47bc]
00107923lea rdx, [rip+0xe2ff6]
0010792amov esi, 29
0010792fcall core::panicking::panic
00107934ud2
00107936
00107936loc_107936:
00107936lea rdi, [rip-0xc47b9]
0010793dlea rdx, [rip+0xe2ff4]
00107944
00107944loc_107944:
00107944mov esi, 28
00107949call core::panicking::panic
0010794eud2
00107950
00107950loc_107950:
00107950lea rdi, [rip-0xc4780]
00107957lea rdx, [rip+0xe3082]
0010795emov esi, 54
00107963call core::panicking::panic
00107968ud2
0010796a
0010796aloc_10796a:
0010796alea rdi, [rip-0xc47d1]
00107971lea rdx, [rip+0xe3050]
00107978mov esi, 55
0010797dcall core::panicking::panic
00107982ud2
00107984
00107984loc_107984:
00107984mov rdi, r13
00107987jmp 0x106e3b
0010798c
0010798cloc_10798c:
0010798clea rdi, [rip-0xc359d]
00107993lea rdx, [rip+0xe384e]
0010799amov esi, 27
0010799fcall core::panicking::panic
001079a4ud2
001079a6
001079a6loc_1079a6:
001079a6lea rdx, [rip+0xe2fd3]
001079adjmp 0x107a0d
001079af
001079afloc_1079af:
001079aflea rdx, [rip+0xe3832]
001079b6mov esi, 40
001079bbmov rdi, rcx
001079becall core::slice::index::slice_end_index_len_fail
001079c3ud2
001079c5
001079c5loc_1079c5:
001079c5lea rdx, [rip+0xe381c]
001079ccmov esi, 40
001079d1mov rdi, r8
001079d4call core::slice::index::slice_end_index_len_fail
001079d9ud2
001079db
001079dbloc_1079db:
001079dblea rdi, [rip-0xc3623]
001079e2lea rdx, [rip+0xe37ff]
001079e9mov esi, 26
001079eecall core::panicking::panic
001079f3ud2
001079f5
001079f5loc_1079f5:
001079f5lea rdx, [rip+0xe2fb4]
001079fcmov rdi, r12
001079ffcall core::slice::index::slice_end_index_len_fail
00107a04ud2
00107a06
00107a06loc_107a06:
00107a06lea rdx, [rip+0xe2f5b]
00107a0d
00107a0dloc_107a0d:
00107a0dmov rdi, r12
00107a10mov rsi, rbx
00107a13call core::slice::index::slice_end_index_len_fail
00107a18ud2
00106bf0
00107a1a
00107a1a // align 0x10
00107a1a // align 0x10
00107a20
00107a20core::num::flt2dec::strategy::grisu::format_shortest_opt:
00107a20push rbp
00107a21push r15
00107a23push r14
00107a25push r13
00107a27push r12
00107a29push rbx
00107a2asub rsp, 232
00107a31mov rbp, rdx
00107a34mov rdx, [rsi]
00107a37test rdx, rdx
00107a3aje 0x1081e4
00107a40mov rax, [rsi+8]
00107a44test rax, rax
00107a47je 0x1081f4
00107a4dmov rcx, [rsi+16]
00107a51test rcx, rcx
00107a54je 0x108204
00107a5aadd rcx, rdx
00107a5djb 0x10821e
00107a63mov r12, rdx
00107a66sub r12, rax
00107a69jb 0x108238
00107a6fmov rax, rcx
00107a72shr rax, 61
00107a76jne 0x108252
00107a7cmov eax, [rsi+24]
00107a7fmov rsi, rcx
00107a82shr rsi, 32
00107a86mov r8, rcx
00107a89shl r8, 32
00107a8dlea r9l, [rax-32]
00107a91test rsi, rsi
00107a94cmovne r8, rcx
00107a98cmovne r9l, eax
00107a9cmov rcx, r8
00107a9fshr rcx, 48
00107aa3mov rsi, r8
00107aa6shl rsi, 16
00107aaalea r10l, [r9-16]
00107aaetest rcx, rcx
00107ab1cmovne rsi, r8
00107ab5cmovne r10l, r9l
00107ab9mov rcx, rsi
00107abcshr rcx, 56
00107ac0mov r8, rsi
00107ac3shl r8, 8
00107ac7lea r9l, [r10-8]
00107acbtest rcx, rcx
00107acecmovne r8, rsi
00107ad2cmovne r9l, r10l
00107ad6mov rcx, r8
00107ad9shr rcx, 60
00107addmov rsi, r8
00107ae0shl rsi, 4
00107ae4test rcx, rcx
00107ae7cmovne rsi, r8
00107aeblea ecx, [r9-4]
00107aefcmovne ecx, r9l
00107af3mov r8, rsi
00107af6shr r8, 62
00107afalea r9, [4*rsi]
00107b02lea r15l, [rcx-2]
00107b06test r8, r8
00107b09cmovne r9, rsi
00107b0dcmovne r15l, ecx
00107b11xor ecx, ecx
00107b13test r9, r9
00107b16setns cl
00107b19shl r9, cl
00107b1csub r15l, ecx
00107b1fmov [rsp+112], r12
00107b24mov [rsp+120], ax
00107b29mov ecx, eax
00107b2bsub cx, r15w
00107b2fjs 0x10826c
00107b35and ecx, 63
00107b38mov r8, -1
00107b3fshr r8, cl
00107b42mov rsi, r8
00107b45and rsi, r12
00107b48mov [rsp+80], rsi
00107b4dcmp r12, r8
00107b50ja 0x1081bf
00107b56shl r12, cl
00107b59mov [rsp+112], rdx
00107b5emov [rsp+120], ax
00107b63mov rax, r8
00107b66and rax, rdx
00107b69mov [rsp+80], rax
00107b6ecmp rdx, r8
00107b71ja 0x1081bf
00107b77mov eax, -96
00107b7csub eax, r15l
00107b7fcwde
00107b80lea eax, [rax+4*rax]
00107b83shl eax, 4
00107b86add eax, 0x153b0
00107b8bcdqe
00107b8dimul rax, rax, 0x7b4dc993
00107b94mov rsi, rax
00107b97shr rsi, 63
00107b9bsar rax, 42
00107b9fadd eax, esi
00107ba1cdqe
00107ba3cmp eax, 81
00107ba6jae 0x1081a9
00107bacmov [rsp+24], rdi
00107bb1shl rdx, cl
00107bb4shl rax, 4
00107bb8lea rdi, [rip-0xc49af]
00107bbfmov r10, [rax+rdi]
00107bc3movzx ecx, [rax+rdi+10]
00107bc8mov [rsp+8], ecx
00107bccmov rcx, r9
00107bcfshr rcx, 32
00107bd3mov rbx, rcx
00107bd6mov [rsp+104], rcx
00107bdbmov esi, r9l
00107bdemov ecx, r10l
00107be1shr r10, 32
00107be5mov r8, r10
00107be8imul r8, rsi
00107becmov r11, r8
00107befmov [rsp+72], r8
00107bf4mov r8, rcx
00107bf7imul r8, rbx
00107bfbimul rsi, rcx
00107bffshr rsi, 32
00107c03mov r9l, r8l
00107c06add r9, rsi
00107c09mov r13l, r11l
00107c0cadd r13, r9
00107c0fadd r15w, [rax+rdi+8]
00107c15mov rbx, r12
00107c18shr rbx, 32
00107c1cmov esi, r12l
00107c1fmov rax, r10
00107c22imul rax, rbx
00107c26mov [rsp+16], rax
00107c2bmov rax, r15
00107c2emov r15, r10
00107c31imul r15, rsi
00107c35imul rbx, rcx
00107c39imul rsi, rcx
00107c3dshr rsi, 32
00107c41mov edi, ebx
00107c43add rdi, rsi
00107c46mov esi, r15l
00107c49add rsi, rdi
00107c4cmov r14, rdx
00107c4fshr r14, 32
00107c53mov edx, edx
00107c55mov r11, r10
00107c58imul r11, rdx
00107c5cmov r9, rcx
00107c5fimul r9, r14
00107c63imul rcx, rdx
00107c67shr rcx, 32
00107c6bmov edx, r9l
00107c6eadd rdx, rcx
00107c71mov r12l, r11l
00107c74add r12, rdx
00107c77mov rcx, r10
00107c7aimul rcx, [rsp+104]
00107c80sub r13, 0xffffffff80000000
00107c87shr r8, 32
00107c8bmov rdx, [rsp+72]
00107c90shr rdx, 32
00107c94shr r13, 32
00107c98neg eax
00107c9asub rsi, 0xffffffff80000000
00107ca1shr rbx, 32
00107ca5mov [rsp+48], rbx
00107caashr r15, 32
00107caemov [rsp+32], r15
00107cb3shr rsi, 32
00107cb7mov [rsp+56], rsi
00107cbcmov [rsp+168], r10
00107cc4mov r15, r10
00107cc7imul r15, r14
00107ccbsub r12, 0xffffffff80000000
00107cd2shr r9, 32
00107cd6add r15, r9
00107cd9shr r11, 32
00107cddmov [rsp+160], r8
00107ce5mov [rsp+128], rcx
00107cedadd rcx, r8
00107cf0mov [rsp+72], rdx
00107cf5add rcx, rdx
00107cf8mov [rsp+88], r13
00107cfdlea r8, [rcx+r13]
00107d01inc r8
00107d04and eax, 63
00107d07mov rdi, r8
00107d0amov ecx, eax
00107d0cshr rdi, cl
00107d0fmov edx, 1
00107d14mov r10, rax
00107d17mov ecx, eax
00107d19shl rdx, cl
00107d1cmov [rsp+136], r11
00107d24add r15, r11
00107d27shr r12, 32
00107d2bmov [rsp+96], r12
00107d30mov [rsp+176], rdx
00107d38lea rcx, [rdx-1]
00107d3cmov [rsp+64], rcx
00107d41cmp edi, 10000
00107d47mov [rsp+152], r14
00107d4fmov [rsp+144], r9
00107d57jae 0x107d71
00107d59mov rcx, r10
00107d5ccmp edi, 100
00107d5fjae 0x107d9d
00107d61xor esi, esi
00107d63cmp edi, 10
00107d66setae sil
00107d6alea ebx, [rsi+8*rsi]
00107d6dinc ebx
00107d6fjmp 0x107db8
00107d71
00107d71loc_107d71:
00107d71cmp edi, 0xf4240
00107d77jae 0x10807d
00107d7dmov rcx, r10
00107d80cmp edi, 0x186a0
00107d86setb sil
00107d8amov edx, 10000
00107d8fmov ebx, 0x186a0
00107d94cmovb ebx, edx
00107d97xor sil, 5
00107d9bjmp 0x107db8
00107d9d
00107d9dloc_107d9d:
00107d9dcmp edi, 1000
00107da3setb sil
00107da7mov edx, 100
00107dacmov ebx, 1000
00107db1cmovb ebx, edx
00107db4xor sil, 3
00107db8
00107db8loc_107db8:
00107db8mov r11l, [rsp+8]
00107dbdmov r12, [rsp+32]
00107dc2mov rax, [rsp+48]
00107dc7
00107dc7loc_107dc7:
00107dc7mov r9, [rsp+16]
00107dccadd r15, [rsp+96]
00107dd1mov [rsp+8], r15
00107dd6mov r10, r8
00107dd9mov r14, [rsp+64]
00107ddeand r10, r14
00107de1movzx r13l, sil
00107de5mov edx, r13l
00107de8sub edx, r11l
00107debinc edx
00107dedmov [rsp+44], edx
00107df1add r9, rax
00107df4add r9, r12
00107df7add r9, [rsp+56]
00107dfcmov [rsp+56], r8
00107e01mov [rsp+16], r9
00107e06sub r8, r9
00107e09mov [rsp+32], r8
00107e0elea rsi, [r8+1]
00107e12mov r12, rsi
00107e15and r12, r14
00107e18xor r14l, r14l
00107e1bmov r9l, 0xffffffffcccccccd
00107e21nop [rax+rax]
00107e30
00107e30loc_107e30:
00107e30mov eax, edi
00107e32xor edx, edx
00107e34div ebx
00107e36add al, 48
00107e38mov r11, rbp
00107e3bmov [rbp+r14], al
00107e40mov edi, edx
00107e42mov rdx, rdi
00107e45shl rdx, cl
00107e48lea r15, [r14+1]
00107e4clea r8, [rdx+r10]
00107e50mov rbp, rsi
00107e53sub rbp, r8
00107e56ja 0x107e92
00107e58cmp r13, r14
00107e5bje 0x107f91
00107e61mov eax, ebx
00107e63imul rax, r9
00107e67shr rax, 35
00107e6bmov r14, r15
00107e6ecmp ebx, 10
00107e71mov ebx, eax
00107e73mov rbp, r11
00107e76jae 0x107e30
00107e78lea rdi, [rip-0xc46ff]
00107e7flea rdx, [rip+0xe2bea]
00107e86mov esi, 25
00107e8bcall core::panicking::panic
00107e90ud2
00107e92
00107e92loc_107e92:
00107e92mov edi, ebx
00107e94shl rdi, cl
00107e97mov r13, [rsp+56]
00107e9csub r13, [rsp+8]
00107ea1lea rcx, [r13+1]
00107ea5dec r13
00107ea8cmp rbp, rdi
00107eabsetb r12b
00107eafcmp r13, r8
00107eb2jbe 0x1080e0
00107eb8cmp rbp, rdi
00107ebbjb 0x1080e0
00107ec1mov r12, [rsp+160]
00107ec9mov rsi, [rsp+72]
00107eceadd rsi, r12
00107ed1add rsi, [rsp+88]
00107ed6add rsi, [rsp+128]
00107edemov r9, rsi
00107ee1sub r9, [rsp+8]
00107ee6sub r9, r8
00107ee9lea rbx, [r10+rdi]
00107eedmov [rsp+64], rcx
00107ef2mov rcx, [rsp+144]
00107efaadd rcx, rbx
00107efdadd rcx, [rsp+136]
00107f05add rcx, [rsp+96]
00107f0amov r8, [rsp+152]
00107f12sub r8, [rsp+104]
00107f17mov rbp, [rsp+168]
00107f1fimul rbp, r8
00107f23add rbp, rcx
00107f26mov rcx, [rsp+64]
00107f2bsub rbp, r12
00107f2esub rbp, [rsp+72]
00107f33sub rbp, [rsp+88]
00107f38sub rsi, [rsp+16]
00107f3dsub rsi, rbx
00107f40sub rsi, rdx
00107f43add rsi, 2
00107f47nop [rax+rax]
00107f50
00107f50loc_107f50:
00107f50lea r8, [rdx+rbx]
00107f54cmp r8, r13
00107f57jb 0x107f66
00107f59lea r12, [rdx+rbp]
00107f5dcmp r9, r12
00107f60jb 0x1080d7
00107f66
00107f66loc_107f66:
00107f66dec al
00107f68mov [r11+r14], al
00107f6csub rsi, rdi
00107f6fsetb r12b
00107f73add r10, rdi
00107f76cmp r8, r13
00107f79jae 0x107f89
00107f7bsub r9, rdi
00107f7eadd rbp, rdi
00107f81add rbx, rdi
00107f84test r12b, r12b
00107f87je 0x107f50
00107f89
00107f89loc_107f89:
00107f89add rdx, r10
00107f8cjmp 0x1080dd
00107f91
00107f91loc_107f91:
00107f91inc r14
00107f94mov edi, 1
00107f99mov rbx, r11
00107f9cmov r15, [rsp+56]
00107fa1mov r13, [rsp+176]
00107fa9mov r8, [rsp+8]
00107faemov r9, [rsp+64]
00107fb3nop [rax+rax]
00107fc0
00107fc0loc_107fc0:
00107fc0cmp r14, 16
00107fc4ja 0x108191
00107fcamov rax, rdi
00107fcdadd r10, r10
00107fd0lea rdx, [r10+4*r10]
00107fd4mov r10, rdx
00107fd7and r10, r9
00107fdalea rsi, [rdi+rdi]
00107fdelea rdi, [rsi+4*rsi]
00107fe2add r12, r12
00107fe5lea r12, [r12+4*r12]
00107fe9shr rdx, cl
00107feclea esi, [rdx+48]
00107fefmov [rbx+r14], sil
00107ff3inc r14
00107ff6mov rsi, r12
00107ff9sub rsi, r10
00107ffcjbe 0x107fc0
00107ffesub r15, r8
00108001imul r15, rdi
00108005lea rcx, [r15+rdi]
00108009cmp rsi, r13
0010800csetb r8b
00108010jb 0x10811f
00108016sub r15, rdi
00108019mov rdi, r15
0010801csub rdi, r10
0010801fjbe 0x10811f
00108025add dl, 47
00108028mov r9, r13
0010802bsub r9, r15
0010802emov r11, r12
00108031sub r11, r13
00108034sub r11, r10
00108037nop [rax+rax]
00108040
00108040loc_108040:
00108040lea rsi, [r10+r13]
00108044cmp rsi, r15
00108047jb 0x108056
00108049lea r8, [r9+r10]
0010804dcmp rdi, r8
00108050jb 0x10811c
00108056
00108056loc_108056:
00108056mov [rbx+r14-1], dl
0010805bsub r11, r13
0010805esetb r8b
00108062cmp rsi, r15
00108065jae 0x108122
0010806bdec dl
0010806dsub rdi, r13
00108070mov r10, rsi
00108073test r8b, r8b
00108076je 0x108040
00108078jmp 0x108122
0010807d
0010807dloc_10807d:
0010807dcmp edi, 0x5f5e100
00108083mov r11l, [rsp+8]
00108088mov r12, [rsp+32]
0010808dmov rax, [rsp+48]
00108092mov rcx, r10
00108095jae 0x1080b7
00108097cmp edi, 0x989680
0010809dsetb sil
001080a1mov edx, 0xf4240
001080a6mov ebx, 0x989680
001080abcmovb ebx, edx
001080aexor sil, 7
001080b2jmp 0x107dc7
001080b7
001080b7loc_1080b7:
001080b7cmp edi, 0x3b9aca00
001080bdsetb sil
001080c1mov edx, 0x5f5e100
001080c6mov ebx, 0x3b9aca00
001080cbcmovb ebx, edx
001080cexor sil, 9
001080d2jmp 0x107dc7
001080d7
001080d7loc_1080d7:
001080d7add rdx, r10
001080daxor r12l, r12l
001080dd
001080ddloc_1080dd:
001080ddmov r8, rdx
001080e0
001080e0loc_1080e0:
001080e0mov rax, rcx
001080e3sub rax, r8
001080e6jbe 0x1080fa
001080e8test r12b, r12b
001080ebjne 0x1080fa
001080edadd rdi, r8
001080f0sub rdi, rcx
001080f3jb 0x10815d
001080f5cmp rax, rdi
001080f8jae 0x10815d
001080fa
001080faloc_1080fa:
001080facmp r8, 2
001080fejb 0x10815d
00108100mov rax, [rsp+32]
00108105add rax, -3
00108109cmp r8, rax
0010810cja 0x10815d
0010810emov rax, [rsp+24]
00108113mov [rax], r11
00108116mov [rax+8], r15
0010811ajmp 0x108177
0010811c
0010811cloc_10811c:
0010811cxor r8l, r8l
0010811f
0010811floc_10811f:
0010811fmov rsi, r10
00108122
00108122loc_108122:
00108122mov rdx, rcx
00108125sub rdx, rsi
00108128jbe 0x10813c
0010812atest r8b, r8b
0010812djne 0x10813c
0010812fadd r13, rsi
00108132sub r13, rcx
00108135jb 0x10815d
00108137cmp rdx, r13
0010813ajae 0x10815d
0010813c
0010813cloc_10813c:
0010813clea rcx, [4*rax]
00108144lea rcx, [rcx+4*rcx]
00108148cmp rcx, rsi
0010814bja 0x10815d
0010814dshl rax, 3
00108151lea rax, [rax+4*rax]
00108155sub r12, rax
00108158cmp rsi, r12
0010815bjbe 0x10816b
0010815d
0010815dloc_10815d:
0010815dmov rax, [rsp+24]
00108162mov [rax], 0
00108169jmp 0x10817f
0010816b
0010816bloc_10816b:
0010816bmov rax, [rsp+24]
00108170mov [rax], rbx
00108173mov [rax+8], r14
00108177
00108177loc_108177:
00108177mov ecx, [rsp+44]
0010817bmov [rax+16], cx
0010817f
0010817floc_10817f:
0010817fadd rsp, 232
00108186pop rbx
00108187pop r12
00108189pop r13
0010818bpop r14
0010818dpop r15
0010818fpop rbp
00108190ret
00108191
00108191loc_108191:
00108191lea rdx, [rip+0xe28f0]
00108198mov edi, 17
0010819dmov esi, 17
001081a2call core::panicking::panic_bounds_check
001081a7ud2
001081a9
001081a9loc_1081a9:
001081a9lea rdx, [rip+0xe2848]
001081b0mov esi, 81
001081b5mov rdi, rax
001081b8call core::panicking::panic_bounds_check
001081bdud2
001081bf
001081bfloc_1081bf:
001081bfmov [rsp+184], 0
001081cblea rdi, [rsp+80]
001081d0lea rsi, [rsp+112]
001081d5lea rdx, [rsp+184]
001081ddcall core::panicking::assert_failed
001081e2ud2
001081e4
001081e4loc_1081e4:
001081e4lea rdi, [rip-0xc50a0]
001081eblea rdx, [rip+0xe281e]
001081f2jmp 0x108212
001081f4
001081f4loc_1081f4:
001081f4lea rdi, [rip-0xc5094]
001081fblea rdx, [rip+0xe2826]
00108202jmp 0x10827a
00108204
00108204loc_108204:
00108204lea rdi, [rip-0xc5087]
0010820blea rdx, [rip+0xe282e]
00108212
00108212loc_108212:
00108212mov esi, 28
00108217call core::panicking::panic
0010821cud2
0010821e
0010821eloc_10821e:
0010821elea rdi, [rip-0xc504e]
00108225lea rdx, [rip+0xe288c]
0010822cmov esi, 54
00108231call core::panicking::panic
00108236ud2
00108238
00108238loc_108238:
00108238lea rdi, [rip-0xc509f]
0010823flea rdx, [rip+0xe285a]
00108246mov esi, 55
0010824bcall core::panicking::panic
00108250ud2
00108252
00108252loc_108252:
00108252lea rdi, [rip-0xc4b0b]
00108259lea rdx, [rip+0xe27f8]
00108260mov esi, 45
00108265call core::panicking::panic
0010826aud2
0010826c
0010826cloc_10826c:
0010826clea rdi, [rip-0xc5296]
00108273lea rdx, [rip+0xe259e]
0010827a
0010827aloc_10827a:
0010827amov esi, 29
0010827fcall core::panicking::panic
00108284ud2
00107a20
00107a20core::num::flt2dec::strategy::grisu::format_shortest_opt:
00107a20push rbp
00107a21push r15
00107a23push r14
00107a25push r13
00107a27push r12
00107a29push rbx
00107a2asub rsp, 232
00107a31mov rbp, rdx
00107a34mov rdx, [rsi]
00107a37test rdx, rdx
00107a3aje 0x1081e4
00107a40mov rax, [rsi+8]
00107a44test rax, rax
00107a47je 0x1081f4
00107a4dmov rcx, [rsi+16]
00107a51test rcx, rcx
00107a54je 0x108204
00107a5aadd rcx, rdx
00107a5djb 0x10821e
00107a63mov r12, rdx
00107a66sub r12, rax
00107a69jb 0x108238
00107a6fmov rax, rcx
00107a72shr rax, 61
00107a76jne 0x108252
00107a7cmov eax, [rsi+24]
00107a7fmov rsi, rcx
00107a82shr rsi, 32
00107a86mov r8, rcx
00107a89shl r8, 32
00107a8dlea r9l, [rax-32]
00107a91test rsi, rsi
00107a94cmovne r8, rcx
00107a98cmovne r9l, eax
00107a9cmov rcx, r8
00107a9fshr rcx, 48
00107aa3mov rsi, r8
00107aa6shl rsi, 16
00107aaalea r10l, [r9-16]
00107aaetest rcx, rcx
00107ab1cmovne rsi, r8
00107ab5cmovne r10l, r9l
00107ab9mov rcx, rsi
00107abcshr rcx, 56
00107ac0mov r8, rsi
00107ac3shl r8, 8
00107ac7lea r9l, [r10-8]
00107acbtest rcx, rcx
00107acecmovne r8, rsi
00107ad2cmovne r9l, r10l
00107ad6mov rcx, r8
00107ad9shr rcx, 60
00107addmov rsi, r8
00107ae0shl rsi, 4
00107ae4test rcx, rcx
00107ae7cmovne rsi, r8
00107aeblea ecx, [r9-4]
00107aefcmovne ecx, r9l
00107af3mov r8, rsi
00107af6shr r8, 62
00107afalea r9, [4*rsi]
00107b02lea r15l, [rcx-2]
00107b06test r8, r8
00107b09cmovne r9, rsi
00107b0dcmovne r15l, ecx
00107b11xor ecx, ecx
00107b13test r9, r9
00107b16setns cl
00107b19shl r9, cl
00107b1csub r15l, ecx
00107b1fmov [rsp+112], r12
00107b24mov [rsp+120], ax
00107b29mov ecx, eax
00107b2bsub cx, r15w
00107b2fjs 0x10826c
00107b35and ecx, 63
00107b38mov r8, -1
00107b3fshr r8, cl
00107b42mov rsi, r8
00107b45and rsi, r12
00107b48mov [rsp+80], rsi
00107b4dcmp r12, r8
00107b50ja 0x1081bf
00107b56shl r12, cl
00107b59mov [rsp+112], rdx
00107b5emov [rsp+120], ax
00107b63mov rax, r8
00107b66and rax, rdx
00107b69mov [rsp+80], rax
00107b6ecmp rdx, r8
00107b71ja 0x1081bf
00107b77mov eax, -96
00107b7csub eax, r15l
00107b7fcwde
00107b80lea eax, [rax+4*rax]
00107b83shl eax, 4
00107b86add eax, 0x153b0
00107b8bcdqe
00107b8dimul rax, rax, 0x7b4dc993
00107b94mov rsi, rax
00107b97shr rsi, 63
00107b9bsar rax, 42
00107b9fadd eax, esi
00107ba1cdqe
00107ba3cmp eax, 81
00107ba6jae 0x1081a9
00107bacmov [rsp+24], rdi
00107bb1shl rdx, cl
00107bb4shl rax, 4
00107bb8lea rdi, [rip-0xc49af]
00107bbfmov r10, [rax+rdi]
00107bc3movzx ecx, [rax+rdi+10]
00107bc8mov [rsp+8], ecx
00107bccmov rcx, r9
00107bcfshr rcx, 32
00107bd3mov rbx, rcx
00107bd6mov [rsp+104], rcx
00107bdbmov esi, r9l
00107bdemov ecx, r10l
00107be1shr r10, 32
00107be5mov r8, r10
00107be8imul r8, rsi
00107becmov r11, r8
00107befmov [rsp+72], r8
00107bf4mov r8, rcx
00107bf7imul r8, rbx
00107bfbimul rsi, rcx
00107bffshr rsi, 32
00107c03mov r9l, r8l
00107c06add r9, rsi
00107c09mov r13l, r11l
00107c0cadd r13, r9
00107c0fadd r15w, [rax+rdi+8]
00107c15mov rbx, r12
00107c18shr rbx, 32
00107c1cmov esi, r12l
00107c1fmov rax, r10
00107c22imul rax, rbx
00107c26mov [rsp+16], rax
00107c2bmov rax, r15
00107c2emov r15, r10
00107c31imul r15, rsi
00107c35imul rbx, rcx
00107c39imul rsi, rcx
00107c3dshr rsi, 32
00107c41mov edi, ebx
00107c43add rdi, rsi
00107c46mov esi, r15l
00107c49add rsi, rdi
00107c4cmov r14, rdx
00107c4fshr r14, 32
00107c53mov edx, edx
00107c55mov r11, r10
00107c58imul r11, rdx
00107c5cmov r9, rcx
00107c5fimul r9, r14
00107c63imul rcx, rdx
00107c67shr rcx, 32
00107c6bmov edx, r9l
00107c6eadd rdx, rcx
00107c71mov r12l, r11l
00107c74add r12, rdx
00107c77mov rcx, r10
00107c7aimul rcx, [rsp+104]
00107c80sub r13, 0xffffffff80000000
00107c87shr r8, 32
00107c8bmov rdx, [rsp+72]
00107c90shr rdx, 32
00107c94shr r13, 32
00107c98neg eax
00107c9asub rsi, 0xffffffff80000000
00107ca1shr rbx, 32
00107ca5mov [rsp+48], rbx
00107caashr r15, 32
00107caemov [rsp+32], r15
00107cb3shr rsi, 32
00107cb7mov [rsp+56], rsi
00107cbcmov [rsp+168], r10
00107cc4mov r15, r10
00107cc7imul r15, r14
00107ccbsub r12, 0xffffffff80000000
00107cd2shr r9, 32
00107cd6add r15, r9
00107cd9shr r11, 32
00107cddmov [rsp+160], r8
00107ce5mov [rsp+128], rcx
00107cedadd rcx, r8
00107cf0mov [rsp+72], rdx
00107cf5add rcx, rdx
00107cf8mov [rsp+88], r13
00107cfdlea r8, [rcx+r13]
00107d01inc r8
00107d04and eax, 63
00107d07mov rdi, r8
00107d0amov ecx, eax
00107d0cshr rdi, cl
00107d0fmov edx, 1
00107d14mov r10, rax
00107d17mov ecx, eax
00107d19shl rdx, cl
00107d1cmov [rsp+136], r11
00107d24add r15, r11
00107d27shr r12, 32
00107d2bmov [rsp+96], r12
00107d30mov [rsp+176], rdx
00107d38lea rcx, [rdx-1]
00107d3cmov [rsp+64], rcx
00107d41cmp edi, 10000
00107d47mov [rsp+152], r14
00107d4fmov [rsp+144], r9
00107d57jae 0x107d71
00107d59mov rcx, r10
00107d5ccmp edi, 100
00107d5fjae 0x107d9d
00107d61xor esi, esi
00107d63cmp edi, 10
00107d66setae sil
00107d6alea ebx, [rsi+8*rsi]
00107d6dinc ebx
00107d6fjmp 0x107db8
00107d71
00107d71loc_107d71:
00107d71cmp edi, 0xf4240
00107d77jae 0x10807d
00107d7dmov rcx, r10
00107d80cmp edi, 0x186a0
00107d86setb sil
00107d8amov edx, 10000
00107d8fmov ebx, 0x186a0
00107d94cmovb ebx, edx
00107d97xor sil, 5
00107d9bjmp 0x107db8
00107d9d
00107d9dloc_107d9d:
00107d9dcmp edi, 1000
00107da3setb sil
00107da7mov edx, 100
00107dacmov ebx, 1000
00107db1cmovb ebx, edx
00107db4xor sil, 3
00107db8
00107db8loc_107db8:
00107db8mov r11l, [rsp+8]
00107dbdmov r12, [rsp+32]
00107dc2mov rax, [rsp+48]
00107dc7
00107dc7loc_107dc7:
00107dc7mov r9, [rsp+16]
00107dccadd r15, [rsp+96]
00107dd1mov [rsp+8], r15
00107dd6mov r10, r8
00107dd9mov r14, [rsp+64]
00107ddeand r10, r14
00107de1movzx r13l, sil
00107de5mov edx, r13l
00107de8sub edx, r11l
00107debinc edx
00107dedmov [rsp+44], edx
00107df1add r9, rax
00107df4add r9, r12
00107df7add r9, [rsp+56]
00107dfcmov [rsp+56], r8
00107e01mov [rsp+16], r9
00107e06sub r8, r9
00107e09mov [rsp+32], r8
00107e0elea rsi, [r8+1]
00107e12mov r12, rsi
00107e15and r12, r14
00107e18xor r14l, r14l
00107e1bmov r9l, 0xffffffffcccccccd
00107e21nop [rax+rax]
00107e30
00107e30loc_107e30:
00107e30mov eax, edi
00107e32xor edx, edx
00107e34div ebx
00107e36add al, 48
00107e38mov r11, rbp
00107e3bmov [rbp+r14], al
00107e40mov edi, edx
00107e42mov rdx, rdi
00107e45shl rdx, cl
00107e48lea r15, [r14+1]
00107e4clea r8, [rdx+r10]
00107e50mov rbp, rsi
00107e53sub rbp, r8
00107e56ja 0x107e92
00107e58cmp r13, r14
00107e5bje 0x107f91
00107e61mov eax, ebx
00107e63imul rax, r9
00107e67shr rax, 35
00107e6bmov r14, r15
00107e6ecmp ebx, 10
00107e71mov ebx, eax
00107e73mov rbp, r11
00107e76jae 0x107e30
00107e78lea rdi, [rip-0xc46ff]
00107e7flea rdx, [rip+0xe2bea]
00107e86mov esi, 25
00107e8bcall core::panicking::panic
00107e90ud2
00107e92
00107e92loc_107e92:
00107e92mov edi, ebx
00107e94shl rdi, cl
00107e97mov r13, [rsp+56]
00107e9csub r13, [rsp+8]
00107ea1lea rcx, [r13+1]
00107ea5dec r13
00107ea8cmp rbp, rdi
00107eabsetb r12b
00107eafcmp r13, r8
00107eb2jbe 0x1080e0
00107eb8cmp rbp, rdi
00107ebbjb 0x1080e0
00107ec1mov r12, [rsp+160]
00107ec9mov rsi, [rsp+72]
00107eceadd rsi, r12
00107ed1add rsi, [rsp+88]
00107ed6add rsi, [rsp+128]
00107edemov r9, rsi
00107ee1sub r9, [rsp+8]
00107ee6sub r9, r8
00107ee9lea rbx, [r10+rdi]
00107eedmov [rsp+64], rcx
00107ef2mov rcx, [rsp+144]
00107efaadd rcx, rbx
00107efdadd rcx, [rsp+136]
00107f05add rcx, [rsp+96]
00107f0amov r8, [rsp+152]
00107f12sub r8, [rsp+104]
00107f17mov rbp, [rsp+168]
00107f1fimul rbp, r8
00107f23add rbp, rcx
00107f26mov rcx, [rsp+64]
00107f2bsub rbp, r12
00107f2esub rbp, [rsp+72]
00107f33sub rbp, [rsp+88]
00107f38sub rsi, [rsp+16]
00107f3dsub rsi, rbx
00107f40sub rsi, rdx
00107f43add rsi, 2
00107f47nop [rax+rax]
00107f50
00107f50loc_107f50:
00107f50lea r8, [rdx+rbx]
00107f54cmp r8, r13
00107f57jb 0x107f66
00107f59lea r12, [rdx+rbp]
00107f5dcmp r9, r12
00107f60jb 0x1080d7
00107f66
00107f66loc_107f66:
00107f66dec al
00107f68mov [r11+r14], al
00107f6csub rsi, rdi
00107f6fsetb r12b
00107f73add r10, rdi
00107f76cmp r8, r13
00107f79jae 0x107f89
00107f7bsub r9, rdi
00107f7eadd rbp, rdi
00107f81add rbx, rdi
00107f84test r12b, r12b
00107f87je 0x107f50
00107f89
00107f89loc_107f89:
00107f89add rdx, r10
00107f8cjmp 0x1080dd
00107f91
00107f91loc_107f91:
00107f91inc r14
00107f94mov edi, 1
00107f99mov rbx, r11
00107f9cmov r15, [rsp+56]
00107fa1mov r13, [rsp+176]
00107fa9mov r8, [rsp+8]
00107faemov r9, [rsp+64]
00107fb3nop [rax+rax]
00107fc0
00107fc0loc_107fc0:
00107fc0cmp r14, 16
00107fc4ja 0x108191
00107fcamov rax, rdi
00107fcdadd r10, r10
00107fd0lea rdx, [r10+4*r10]
00107fd4mov r10, rdx
00107fd7and r10, r9
00107fdalea rsi, [rdi+rdi]
00107fdelea rdi, [rsi+4*rsi]
00107fe2add r12, r12
00107fe5lea r12, [r12+4*r12]
00107fe9shr rdx, cl
00107feclea esi, [rdx+48]
00107fefmov [rbx+r14], sil
00107ff3inc r14
00107ff6mov rsi, r12
00107ff9sub rsi, r10
00107ffcjbe 0x107fc0
00107ffesub r15, r8
00108001imul r15, rdi
00108005lea rcx, [r15+rdi]
00108009cmp rsi, r13
0010800csetb r8b
00108010jb 0x10811f
00108016sub r15, rdi
00108019mov rdi, r15
0010801csub rdi, r10
0010801fjbe 0x10811f
00108025add dl, 47
00108028mov r9, r13
0010802bsub r9, r15
0010802emov r11, r12
00108031sub r11, r13
00108034sub r11, r10
00108037nop [rax+rax]
00108040
00108040loc_108040:
00108040lea rsi, [r10+r13]
00108044cmp rsi, r15
00108047jb 0x108056
00108049lea r8, [r9+r10]
0010804dcmp rdi, r8
00108050jb 0x10811c
00108056
00108056loc_108056:
00108056mov [rbx+r14-1], dl
0010805bsub r11, r13
0010805esetb r8b
00108062cmp rsi, r15
00108065jae 0x108122
0010806bdec dl
0010806dsub rdi, r13
00108070mov r10, rsi
00108073test r8b, r8b
00108076je 0x108040
00108078jmp 0x108122
0010807d
0010807dloc_10807d:
0010807dcmp edi, 0x5f5e100
00108083mov r11l, [rsp+8]
00108088mov r12, [rsp+32]
0010808dmov rax, [rsp+48]
00108092mov rcx, r10
00108095jae 0x1080b7
00108097cmp edi, 0x989680
0010809dsetb sil
001080a1mov edx, 0xf4240
001080a6mov ebx, 0x989680
001080abcmovb ebx, edx
001080aexor sil, 7
001080b2jmp 0x107dc7
001080b7
001080b7loc_1080b7:
001080b7cmp edi, 0x3b9aca00
001080bdsetb sil
001080c1mov edx, 0x5f5e100
001080c6mov ebx, 0x3b9aca00
001080cbcmovb ebx, edx
001080cexor sil, 9
001080d2jmp 0x107dc7
001080d7
001080d7loc_1080d7:
001080d7add rdx, r10
001080daxor r12l, r12l
001080dd
001080ddloc_1080dd:
001080ddmov r8, rdx
001080e0
001080e0loc_1080e0:
001080e0mov rax, rcx
001080e3sub rax, r8
001080e6jbe 0x1080fa
001080e8test r12b, r12b
001080ebjne 0x1080fa
001080edadd rdi, r8
001080f0sub rdi, rcx
001080f3jb 0x10815d
001080f5cmp rax, rdi
001080f8jae 0x10815d
001080fa
001080faloc_1080fa:
001080facmp r8, 2
001080fejb 0x10815d
00108100mov rax, [rsp+32]
00108105add rax, -3
00108109cmp r8, rax
0010810cja 0x10815d
0010810emov rax, [rsp+24]
00108113mov [rax], r11
00108116mov [rax+8], r15
0010811ajmp 0x108177
0010811c
0010811cloc_10811c:
0010811cxor r8l, r8l
0010811f
0010811floc_10811f:
0010811fmov rsi, r10
00108122
00108122loc_108122:
00108122mov rdx, rcx
00108125sub rdx, rsi
00108128jbe 0x10813c
0010812atest r8b, r8b
0010812djne 0x10813c
0010812fadd r13, rsi
00108132sub r13, rcx
00108135jb 0x10815d
00108137cmp rdx, r13
0010813ajae 0x10815d
0010813c
0010813cloc_10813c:
0010813clea rcx, [4*rax]
00108144lea rcx, [rcx+4*rcx]
00108148cmp rcx, rsi
0010814bja 0x10815d
0010814dshl rax, 3
00108151lea rax, [rax+4*rax]
00108155sub r12, rax
00108158cmp rsi, r12
0010815bjbe 0x10816b
0010815d
0010815dloc_10815d:
0010815dmov rax, [rsp+24]
00108162mov [rax], 0
00108169jmp 0x10817f
0010816b
0010816bloc_10816b:
0010816bmov rax, [rsp+24]
00108170mov [rax], rbx
00108173mov [rax+8], r14
00108177
00108177loc_108177:
00108177mov ecx, [rsp+44]
0010817bmov [rax+16], cx
0010817f
0010817floc_10817f:
0010817fadd rsp, 232
00108186pop rbx
00108187pop r12
00108189pop r13
0010818bpop r14
0010818dpop r15
0010818fpop rbp
00108190ret
00108191
00108191loc_108191:
00108191lea rdx, [rip+0xe28f0]
00108198mov edi, 17
0010819dmov esi, 17
001081a2call core::panicking::panic_bounds_check
001081a7ud2
001081a9
001081a9loc_1081a9:
001081a9lea rdx, [rip+0xe2848]
001081b0mov esi, 81
001081b5mov rdi, rax
001081b8call core::panicking::panic_bounds_check
001081bdud2
001081bf
001081bfloc_1081bf:
001081bfmov [rsp+184], 0
001081cblea rdi, [rsp+80]
001081d0lea rsi, [rsp+112]
001081d5lea rdx, [rsp+184]
001081ddcall core::panicking::assert_failed
001081e2ud2
001081e4
001081e4loc_1081e4:
001081e4lea rdi, [rip-0xc50a0]
001081eblea rdx, [rip+0xe281e]
001081f2jmp 0x108212
001081f4
001081f4loc_1081f4:
001081f4lea rdi, [rip-0xc5094]
001081fblea rdx, [rip+0xe2826]
00108202jmp 0x10827a
00108204
00108204loc_108204:
00108204lea rdi, [rip-0xc5087]
0010820blea rdx, [rip+0xe282e]
00108212
00108212loc_108212:
00108212mov esi, 28
00108217call core::panicking::panic
0010821cud2
0010821e
0010821eloc_10821e:
0010821elea rdi, [rip-0xc504e]
00108225lea rdx, [rip+0xe288c]
0010822cmov esi, 54
00108231call core::panicking::panic
00108236ud2
00108238
00108238loc_108238:
00108238lea rdi, [rip-0xc509f]
0010823flea rdx, [rip+0xe285a]
00108246mov esi, 55
0010824bcall core::panicking::panic
00108250ud2
00108252
00108252loc_108252:
00108252lea rdi, [rip-0xc4b0b]
00108259lea rdx, [rip+0xe27f8]
00108260mov esi, 45
00108265call core::panicking::panic
0010826aud2
0010826c
0010826cloc_10826c:
0010826clea rdi, [rip-0xc5296]
00108273lea rdx, [rip+0xe259e]
0010827a
0010827aloc_10827a:
0010827amov esi, 29
0010827fcall core::panicking::panic
00108284ud2
00107a20
00108286
00108286 // align 0x10
00108286 // align 0x10
00108290
00108290core::num::flt2dec::strategy::grisu::format_exact_opt:
00108290push rbp
00108291push r15
00108293push r14
00108295push r13
00108297push r12
00108299push rbx
0010829asub rsp, 40
0010829etest rsi, rsi
001082a1je 0x1086e9
001082a7mov rax, rsi
001082aashr rax, 61
001082aejne 0x108703
001082b4mov r10, rcx
001082b7mov rax, rsi
001082bashr rax, 32
001082bemov rcx, rsi
001082c1shl rcx, 32
001082c5lea r11l, [rdx-32]
001082c9test rax, rax
001082cccmovne rcx, rsi
001082d0cmovne r11l, edx
001082d4mov rax, rcx
001082d7shr rax, 48
001082dbmov rdx, rcx
001082deshl rdx, 16
001082e2lea esi, [r11-16]
001082e6test rax, rax
001082e9cmovne rdx, rcx
001082edcmovne esi, r11l
001082f1mov rax, rdx
001082f4shr rax, 56
001082f8mov rcx, rdx
001082fbshl rcx, 8
001082fflea r11l, [rsi-8]
00108303test rax, rax
00108306cmovne rcx, rdx
0010830acmovne r11l, esi
0010830emov rax, rcx
00108311shr rax, 60
00108315mov rsi, rcx
00108318shl rsi, 4
0010831clea ebx, [r11-4]
00108320test rax, rax
00108323cmovne rsi, rcx
00108327cmovne ebx, r11l
0010832bmov rcx, rsi
0010832eshr rcx, 62
00108332lea rax, [4*rsi]
0010833alea edx, [rbx-2]
0010833dtest rcx, rcx
00108340cmovne rax, rsi
00108344cmovne edx, ebx
00108347xor ecx, ecx
00108349test rax, rax
0010834csetns cl
0010834fsub edx, ecx
00108351mov ecx, -96
00108356sub ecx, edx
00108358movsx ecx, cx
0010835blea ecx, [rcx+4*rcx]
0010835eshl ecx, 4
00108361add ecx, 0x153b0
00108367movsxd rcx, ecx
0010836aimul rcx, rcx, 0x7b4dc993
00108371mov rsi, rcx
00108374shr rsi, 63
00108378sar rcx, 42
0010837cadd ecx, esi
0010837emovsxd rbx, ecx
00108381cmp ebx, 81
00108384jae 0x1086d3
0010838atest rax, rax
0010838dsetns cl
00108390shl rax, cl
00108393shl rbx, 4
00108397lea r14, [rip-0xc518e]
0010839emov rsi, [rbx+r14]
001083a2mov rcx, rax
001083a5shr rcx, 32
001083a9mov eax, eax
001083abmov r15l, esi
001083aeshr rsi, 32
001083b2mov r12, rsi
001083b5imul r12, rcx
001083b9imul rsi, rax
001083bdimul rcx, r15
001083c1imul r15, rax
001083c5shr r15, 32
001083c9mov r11l, ecx
001083ccadd r11, r15
001083cfmov eax, esi
001083d1add rax, r11
001083d4sub rax, 0xffffffff80000000
001083dashr rcx, 32
001083deadd rcx, r12
001083e1shr rsi, 32
001083e5add rsi, rcx
001083e8shr rax, 32
001083ecadd dx, [rbx+r14+8]
001083f2add rax, rsi
001083f5mov ecx, -64
001083fasub ecx, edx
001083fcmovzx r11l, cx
00108400mov esi, r11l
00108403and esi, 63
00108406mov rdx, rax
00108409mov ecx, esi
0010840bshr rdx, cl
0010840emov r15l, 1
00108414shl r15, cl
00108417lea rcx, [r15-1]
0010841bmov r13, rax
0010841eand r13, rcx
00108421je 0x108693
00108427movzx r14l, [rbx+r14+10]
0010842dcmp edx, 10000
00108433mov [rsp+24], rdi
00108438mov [rsp+16], r15
0010843dmov [rsp+32], rcx
00108442mov r15, r8
00108445jae 0x108460
00108447cmp edx, 100
0010844ajae 0x108486
0010844cxor ecx, ecx
0010844ecmp edx, 10
00108451setae cl
00108454lea r12l, [rcx+8*rcx]
00108458inc r12l
0010845bjmp 0x1084e6
00108460
00108460loc_108460:
00108460cmp edx, 0xf4240
00108466jae 0x1084a4
00108468cmp edx, 0x186a0
0010846esetb cl
00108471mov r8l, 10000
00108477mov r12l, 0x186a0
0010847dcmovb r12l, r8l
00108481xor cl, 5
00108484jmp 0x1084e6
00108486
00108486loc_108486:
00108486cmp edx, 1000
0010848csetb cl
0010848fmov r8l, 100
00108495mov r12l, 1000
0010849bcmovb r12l, r8l
0010849fxor cl, 3
001084a2jmp 0x1084e6
001084a4
001084a4loc_1084a4:
001084a4cmp edx, 0x5f5e100
001084aajae 0x1084ca
001084accmp edx, 0x989680
001084b2setb cl
001084b5mov r8l, 0xf4240
001084bbmov r12l, 0x989680
001084c1cmovb r12l, r8l
001084c5xor cl, 7
001084c8jmp 0x1084e6
001084ca
001084caloc_1084ca:
001084cacmp edx, 0x3b9aca00
001084d0setb cl
001084d3mov r8l, 0x5f5e100
001084d9mov r12l, 0x3b9aca00
001084dfcmovb r12l, r8l
001084e3xor cl, 9
001084e6
001084e6loc_1084e6:
001084e6movzx ecx, cl
001084e9mov ebx, ecx
001084ebsub ebx, r14l
001084eeinc ebx
001084f0cmp bx, r9w
001084f4jle 0x1085a0
001084famovsx rax, bx
001084femov r8l, ebx
00108501sub r8l, r9l
00108504mov [rsp+4], r9l
00108509movsx r9, r9w
0010850dsub rax, r9
00108510cmp rax, r15
00108513movsx r14, r8w
00108517cmovae r14, r15
0010851bneg rcx
0010851emov [rsp+8], r15
00108523mov r8, r15
00108526neg r8
00108529mov r15l, 1
0010852fmov r9l, 0xffffffffcccccccd
00108535nop [rax+rax]
00108540
00108540loc_108540:
00108540lea rbp, [r8+r15]
00108544mov eax, edx
00108546xor edx, edx
00108548div r12l
0010854bcmp rbp, 1
0010854fje 0x1086a9
00108555add al, 48
00108557mov [r10+r15-1], al
0010855ccmp r14, r15
0010855fje 0x1085d2
00108561lea rax, [rcx+r15]
00108565cmp rax, 1
00108569je 0x108613
0010856fmov eax, r12l
00108572imul rax, r9
00108576shr rax, 35
0010857ainc r15
0010857dcmp r12l, 10
00108581mov r12l, eax
00108584jae 0x108540
00108586lea rdi, [rip-0xc4e0d]
0010858dlea rdx, [rip+0xe256c]
00108594mov esi, 25
00108599call core::panicking::panic
0010859eud2
001085a0
001085a0loc_1085a0:
001085a0mov rcx, 0xcccccccccccccccd
001085aamul rcx
001085admov rax, rdx
001085b0shr rax, 3
001085b4mov r11l, r12l
001085b7mov ecx, esi
001085b9shl r11, cl
001085bcsub rsp, 8
001085c0mov rdi, [rsp+32]
001085c5mov rsi, r10
001085c8mov rdx, r15
001085cbxor ecx, ecx
001085cdmov r8l, ebx
001085d0jmp 0x1085fe
001085d2
001085d2loc_1085d2:
001085d2mov eax, edx
001085d4mov ecx, esi
001085d6shl rax, cl
001085d9add rax, r13
001085dcmov r11l, r12l
001085dfshl r11, cl
001085e2sub rsp, 8
001085e6mov rdi, [rsp+32]
001085ebmov rsi, r10
001085eemov rdx, [rsp+16]
001085f3mov rcx, r14
001085f6mov r8l, ebx
001085f9mov r9l, [rsp+12]
001085fe
001085feloc_1085fe:
001085fepush [rsp+24]
00108602push r11
00108604push rax
00108605
00108605loc_108605:
00108605call core::num::flt2dec::strategy::grisu::format_exact_opt::possibly_round
0010860aadd rsp, 72
0010860ejmp 0x10869e
00108613
00108613loc_108613:
00108613dec r11l
00108616and r11l, 63
0010861amov eax, 1
0010861fmov r8, [rsp+8]
00108624mov rdi, [rsp+24]
00108629mov r9, [rsp+32]
0010862enop
00108630
00108630loc_108630:
00108630mov rdx, rax
00108633mov ecx, r11l
00108636shr rdx, cl
00108639test rdx, rdx
0010863cjne 0x108693
0010863ecmp r15, r8
00108641jae 0x1086bf
00108643add r13, r13
00108646lea rdx, [4*r13]
0010864eadd rdx, r13
00108651mov r13, rdx
00108654and r13, r9
00108657add rax, rax
0010865alea rax, [rax+4*rax]
0010865emov ecx, esi
00108660shr rdx, cl
00108663add dl, 48
00108666mov [r10+r15], dl
0010866ainc r15
0010866dcmp r14, r15
00108670jne 0x108630
00108672sub rsp, 8
00108676mov rsi, r10
00108679mov rdx, r8
0010867cmov rcx, r14
0010867fmov r8l, ebx
00108682mov r9l, [rsp+12]
00108687push rax
00108688push [rsp+32]
0010868cpush r13
0010868ejmp 0x108605
00108693
00108693loc_108693:
00108693mov [rdi], 0
0010869aadd rsp, 40
0010869e
0010869eloc_10869e:
0010869epop rbx
0010869fpop r12
001086a1pop r13
001086a3pop r14
001086a5pop r15
001086a7pop rbp
001086a8ret
001086a9
001086a9loc_1086a9:
001086a9lea rdx, [rip+0xe2468]
001086b0mov rdi, [rsp+8]
001086b5mov rsi, rdi
001086b8call core::panicking::panic_bounds_check
001086bdud2
001086bf
001086bfloc_1086bf:
001086bflea rdx, [rip+0xe246a]
001086c6mov rdi, r15
001086c9mov rsi, r8
001086cccall core::panicking::panic_bounds_check
001086d1ud2
001086d3
001086d3loc_1086d3:
001086d3lea rdx, [rip+0xe231e]
001086damov esi, 81
001086dfmov rdi, rbx
001086e2call core::panicking::panic_bounds_check
001086e7ud2
001086e9
001086e9loc_1086e9:
001086e9lea rdi, [rip-0xc55a5]
001086f0lea rdx, [rip+0xe23d9]
001086f7mov esi, 28
001086fccall core::panicking::panic
00108701ud2
00108703
00108703loc_108703:
00108703lea rdi, [rip-0xc4f50]
0010870alea rdx, [rip+0xe23d7]
00108711mov esi, 36
00108716call core::panicking::panic
0010871bud2
00108290
00108290core::num::flt2dec::strategy::grisu::format_exact_opt:
00108290push rbp
00108291push r15
00108293push r14
00108295push r13
00108297push r12
00108299push rbx
0010829asub rsp, 40
0010829etest rsi, rsi
001082a1je 0x1086e9
001082a7mov rax, rsi
001082aashr rax, 61
001082aejne 0x108703
001082b4mov r10, rcx
001082b7mov rax, rsi
001082bashr rax, 32
001082bemov rcx, rsi
001082c1shl rcx, 32
001082c5lea r11l, [rdx-32]
001082c9test rax, rax
001082cccmovne rcx, rsi
001082d0cmovne r11l, edx
001082d4mov rax, rcx
001082d7shr rax, 48
001082dbmov rdx, rcx
001082deshl rdx, 16
001082e2lea esi, [r11-16]
001082e6test rax, rax
001082e9cmovne rdx, rcx
001082edcmovne esi, r11l
001082f1mov rax, rdx
001082f4shr rax, 56
001082f8mov rcx, rdx
001082fbshl rcx, 8
001082fflea r11l, [rsi-8]
00108303test rax, rax
00108306cmovne rcx, rdx
0010830acmovne r11l, esi
0010830emov rax, rcx
00108311shr rax, 60
00108315mov rsi, rcx
00108318shl rsi, 4
0010831clea ebx, [r11-4]
00108320test rax, rax
00108323cmovne rsi, rcx
00108327cmovne ebx, r11l
0010832bmov rcx, rsi
0010832eshr rcx, 62
00108332lea rax, [4*rsi]
0010833alea edx, [rbx-2]
0010833dtest rcx, rcx
00108340cmovne rax, rsi
00108344cmovne edx, ebx
00108347xor ecx, ecx
00108349test rax, rax
0010834csetns cl
0010834fsub edx, ecx
00108351mov ecx, -96
00108356sub ecx, edx
00108358movsx ecx, cx
0010835blea ecx, [rcx+4*rcx]
0010835eshl ecx, 4
00108361add ecx, 0x153b0
00108367movsxd rcx, ecx
0010836aimul rcx, rcx, 0x7b4dc993
00108371mov rsi, rcx
00108374shr rsi, 63
00108378sar rcx, 42
0010837cadd ecx, esi
0010837emovsxd rbx, ecx
00108381cmp ebx, 81
00108384jae 0x1086d3
0010838atest rax, rax
0010838dsetns cl
00108390shl rax, cl
00108393shl rbx, 4
00108397lea r14, [rip-0xc518e]
0010839emov rsi, [rbx+r14]
001083a2mov rcx, rax
001083a5shr rcx, 32
001083a9mov eax, eax
001083abmov r15l, esi
001083aeshr rsi, 32
001083b2mov r12, rsi
001083b5imul r12, rcx
001083b9imul rsi, rax
001083bdimul rcx, r15
001083c1imul r15, rax
001083c5shr r15, 32
001083c9mov r11l, ecx
001083ccadd r11, r15
001083cfmov eax, esi
001083d1add rax, r11
001083d4sub rax, 0xffffffff80000000
001083dashr rcx, 32
001083deadd rcx, r12
001083e1shr rsi, 32
001083e5add rsi, rcx
001083e8shr rax, 32
001083ecadd dx, [rbx+r14+8]
001083f2add rax, rsi
001083f5mov ecx, -64
001083fasub ecx, edx
001083fcmovzx r11l, cx
00108400mov esi, r11l
00108403and esi, 63
00108406mov rdx, rax
00108409mov ecx, esi
0010840bshr rdx, cl
0010840emov r15l, 1
00108414shl r15, cl
00108417lea rcx, [r15-1]
0010841bmov r13, rax
0010841eand r13, rcx
00108421je 0x108693
00108427movzx r14l, [rbx+r14+10]
0010842dcmp edx, 10000
00108433mov [rsp+24], rdi
00108438mov [rsp+16], r15
0010843dmov [rsp+32], rcx
00108442mov r15, r8
00108445jae 0x108460
00108447cmp edx, 100
0010844ajae 0x108486
0010844cxor ecx, ecx
0010844ecmp edx, 10
00108451setae cl
00108454lea r12l, [rcx+8*rcx]
00108458inc r12l
0010845bjmp 0x1084e6
00108460
00108460loc_108460:
00108460cmp edx, 0xf4240
00108466jae 0x1084a4
00108468cmp edx, 0x186a0
0010846esetb cl
00108471mov r8l, 10000
00108477mov r12l, 0x186a0
0010847dcmovb r12l, r8l
00108481xor cl, 5
00108484jmp 0x1084e6
00108486
00108486loc_108486:
00108486cmp edx, 1000
0010848csetb cl
0010848fmov r8l, 100
00108495mov r12l, 1000
0010849bcmovb r12l, r8l
0010849fxor cl, 3
001084a2jmp 0x1084e6
001084a4
001084a4loc_1084a4:
001084a4cmp edx, 0x5f5e100
001084aajae 0x1084ca
001084accmp edx, 0x989680
001084b2setb cl
001084b5mov r8l, 0xf4240
001084bbmov r12l, 0x989680
001084c1cmovb r12l, r8l
001084c5xor cl, 7
001084c8jmp 0x1084e6
001084ca
001084caloc_1084ca:
001084cacmp edx, 0x3b9aca00
001084d0setb cl
001084d3mov r8l, 0x5f5e100
001084d9mov r12l, 0x3b9aca00
001084dfcmovb r12l, r8l
001084e3xor cl, 9
001084e6
001084e6loc_1084e6:
001084e6movzx ecx, cl
001084e9mov ebx, ecx
001084ebsub ebx, r14l
001084eeinc ebx
001084f0cmp bx, r9w
001084f4jle 0x1085a0
001084famovsx rax, bx
001084femov r8l, ebx
00108501sub r8l, r9l
00108504mov [rsp+4], r9l
00108509movsx r9, r9w
0010850dsub rax, r9
00108510cmp rax, r15
00108513movsx r14, r8w
00108517cmovae r14, r15
0010851bneg rcx
0010851emov [rsp+8], r15
00108523mov r8, r15
00108526neg r8
00108529mov r15l, 1
0010852fmov r9l, 0xffffffffcccccccd
00108535nop [rax+rax]
00108540
00108540loc_108540:
00108540lea rbp, [r8+r15]
00108544mov eax, edx
00108546xor edx, edx
00108548div r12l
0010854bcmp rbp, 1
0010854fje 0x1086a9
00108555add al, 48
00108557mov [r10+r15-1], al
0010855ccmp r14, r15
0010855fje 0x1085d2
00108561lea rax, [rcx+r15]
00108565cmp rax, 1
00108569je 0x108613
0010856fmov eax, r12l
00108572imul rax, r9
00108576shr rax, 35
0010857ainc r15
0010857dcmp r12l, 10
00108581mov r12l, eax
00108584jae 0x108540
00108586lea rdi, [rip-0xc4e0d]
0010858dlea rdx, [rip+0xe256c]
00108594mov esi, 25
00108599call core::panicking::panic
0010859eud2
001085a0
001085a0loc_1085a0:
001085a0mov rcx, 0xcccccccccccccccd
001085aamul rcx
001085admov rax, rdx
001085b0shr rax, 3
001085b4mov r11l, r12l
001085b7mov ecx, esi
001085b9shl r11, cl
001085bcsub rsp, 8
001085c0mov rdi, [rsp+32]
001085c5mov rsi, r10
001085c8mov rdx, r15
001085cbxor ecx, ecx
001085cdmov r8l, ebx
001085d0jmp 0x1085fe
001085d2
001085d2loc_1085d2:
001085d2mov eax, edx
001085d4mov ecx, esi
001085d6shl rax, cl
001085d9add rax, r13
001085dcmov r11l, r12l
001085dfshl r11, cl
001085e2sub rsp, 8
001085e6mov rdi, [rsp+32]
001085ebmov rsi, r10
001085eemov rdx, [rsp+16]
001085f3mov rcx, r14
001085f6mov r8l, ebx
001085f9mov r9l, [rsp+12]
001085fe
001085feloc_1085fe:
001085fepush [rsp+24]
00108602push r11
00108604push rax
00108605
00108605loc_108605:
00108605call core::num::flt2dec::strategy::grisu::format_exact_opt::possibly_round
0010860aadd rsp, 72
0010860ejmp 0x10869e
00108613
00108613loc_108613:
00108613dec r11l
00108616and r11l, 63
0010861amov eax, 1
0010861fmov r8, [rsp+8]
00108624mov rdi, [rsp+24]
00108629mov r9, [rsp+32]
0010862enop
00108630
00108630loc_108630:
00108630mov rdx, rax
00108633mov ecx, r11l
00108636shr rdx, cl
00108639test rdx, rdx
0010863cjne 0x108693
0010863ecmp r15, r8
00108641jae 0x1086bf
00108643add r13, r13
00108646lea rdx, [4*r13]
0010864eadd rdx, r13
00108651mov r13, rdx
00108654and r13, r9
00108657add rax, rax
0010865alea rax, [rax+4*rax]
0010865emov ecx, esi
00108660shr rdx, cl
00108663add dl, 48
00108666mov [r10+r15], dl
0010866ainc r15
0010866dcmp r14, r15
00108670jne 0x108630
00108672sub rsp, 8
00108676mov rsi, r10
00108679mov rdx, r8
0010867cmov rcx, r14
0010867fmov r8l, ebx
00108682mov r9l, [rsp+12]
00108687push rax
00108688push [rsp+32]
0010868cpush r13
0010868ejmp 0x108605
00108693
00108693loc_108693:
00108693mov [rdi], 0
0010869aadd rsp, 40
0010869e
0010869eloc_10869e:
0010869epop rbx
0010869fpop r12
001086a1pop r13
001086a3pop r14
001086a5pop r15
001086a7pop rbp
001086a8ret
001086a9
001086a9loc_1086a9:
001086a9lea rdx, [rip+0xe2468]
001086b0mov rdi, [rsp+8]
001086b5mov rsi, rdi
001086b8call core::panicking::panic_bounds_check
001086bdud2
001086bf
001086bfloc_1086bf:
001086bflea rdx, [rip+0xe246a]
001086c6mov rdi, r15
001086c9mov rsi, r8
001086cccall core::panicking::panic_bounds_check
001086d1ud2
001086d3
001086d3loc_1086d3:
001086d3lea rdx, [rip+0xe231e]
001086damov esi, 81
001086dfmov rdi, rbx
001086e2call core::panicking::panic_bounds_check
001086e7ud2
001086e9
001086e9loc_1086e9:
001086e9lea rdi, [rip-0xc55a5]
001086f0lea rdx, [rip+0xe23d9]
001086f7mov esi, 28
001086fccall core::panicking::panic
00108701ud2
00108703
00108703loc_108703:
00108703lea rdi, [rip-0xc4f50]
0010870alea rdx, [rip+0xe23d7]
00108711mov esi, 36
00108716call core::panicking::panic
0010871bud2
00108290
0010871d
0010871d // align 0x10
0010871d // align 0x10
00108720
00108720core::num::flt2dec::strategy::grisu::format_exact_opt::possibly_round:
00108720push rbp
00108721push r15
00108723push r14
00108725push r13
00108727push r12
00108729push rbx
0010872apush rax
0010872bmov rbx, rcx
0010872emov r14, rdx
00108731mov r15, rdi
00108734mov rcx, [rsp+80]
00108739mov rax, [rsp+72]
0010873emov rdx, rax
00108741sub rdx, rcx
00108744jbe 0x108783
00108746cmp rdx, rcx
00108749jbe 0x108783
0010874bmov r13l, r9l
0010874emov ebp, r8l
00108751mov r12, rsi
00108754mov rdx, [rsp+64]
00108759mov rsi, rax
0010875csub rsi, rdx
0010875fcmp rsi, rdx
00108762jbe 0x108776
00108764mov rdi, rax
00108767sub rdi, rdx
0010876asub rdi, rdx
0010876dlea rsi, [rcx+rcx]
00108771cmp rdi, rsi
00108774jae 0x108799
00108776
00108776loc_108776:
00108776sub rdx, rcx
00108779jbe 0x108783
0010877bsub rax, rdx
0010877ecmp rax, rdx
00108781jbe 0x1087ae
00108783
00108783loc_108783:
00108783mov [r15], 0
0010878a
0010878aloc_10878a:
0010878aadd rsp, 8
0010878epop rbx
0010878fpop r12
00108791pop r13
00108793pop r14
00108795pop r15
00108797pop rbp
00108798ret
00108799
00108799loc_108799:
00108799cmp rbx, r14
0010879cjbe 0x108844
001087a2lea rdx, [rip+0xe23cf]
001087a9jmp 0x108865
001087ae
001087aeloc_1087ae:
001087aecmp rbx, r14
001087b1ja 0x108855
001087b7mov rdx, -1
001087bemov rax, rbx
001087c1nop [rax+rax]
001087d0
001087d0loc_1087d0:
001087d0test rax, rax
001087d3je 0x1087ff
001087d5mov rdi, rax
001087d8dec rax
001087dbinc rdx
001087decmp [r12+rdi-1], 57
001087e4je 0x1087d0
001087e6inc [r12+rax]
001087eacmp rdi, rbx
001087edjae 0x10883f
001087efadd rdi, r12
001087f2mov esi, 48
001087f7call [rip+0x10930b]
001087fdjmp 0x10883f
001087ff
001087ffloc_1087ff:
001087fftest rbx, rbx
00108802je 0x108829
00108804mov [r12], 49
00108809mov al, 48
0010880bcmp rbx, 1
0010880fje 0x10882b
00108811lea rdi, [r12+1]
00108816lea rdx, [rbx-1]
0010881amov esi, 48
0010881fcall [rip+0x1092e3]
00108825mov al, 48
00108827jmp 0x10882b
00108829
00108829loc_108829:
00108829mov al, 49
0010882b
0010882bloc_10882b:
0010882binc ebp
0010882dcmp rbx, r14
00108830jae 0x10883f
00108832cmp bp, r13w
00108836jle 0x10883f
00108838mov [r12+rbx], al
0010883cinc rbx
0010883f
0010883floc_10883f:
0010883fcmp rbx, r14
00108842ja 0x10885e
00108844
00108844loc_108844:
00108844mov [r15], r12
00108847mov [r15+8], rbx
0010884bmov [r15+16], bp
00108850jmp 0x10878a
00108855
00108855loc_108855:
00108855lea rdx, [rip+0xe22ec]
0010885cjmp 0x108865
0010885e
0010885eloc_10885e:
0010885elea rdx, [rip+0xe22fb]
00108865
00108865loc_108865:
00108865mov rdi, rbx
00108868mov rsi, r14
0010886bcall core::slice::index::slice_end_index_len_fail
00108870ud2
00108720
00108720core::num::flt2dec::strategy::grisu::format_exact_opt::possibly_round:
00108720push rbp
00108721push r15
00108723push r14
00108725push r13
00108727push r12
00108729push rbx
0010872apush rax
0010872bmov rbx, rcx
0010872emov r14, rdx
00108731mov r15, rdi
00108734mov rcx, [rsp+80]
00108739mov rax, [rsp+72]
0010873emov rdx, rax
00108741sub rdx, rcx
00108744jbe 0x108783
00108746cmp rdx, rcx
00108749jbe 0x108783
0010874bmov r13l, r9l
0010874emov ebp, r8l
00108751mov r12, rsi
00108754mov rdx, [rsp+64]
00108759mov rsi, rax
0010875csub rsi, rdx
0010875fcmp rsi, rdx
00108762jbe 0x108776
00108764mov rdi, rax
00108767sub rdi, rdx
0010876asub rdi, rdx
0010876dlea rsi, [rcx+rcx]
00108771cmp rdi, rsi
00108774jae 0x108799
00108776
00108776loc_108776:
00108776sub rdx, rcx
00108779jbe 0x108783
0010877bsub rax, rdx
0010877ecmp rax, rdx
00108781jbe 0x1087ae
00108783
00108783loc_108783:
00108783mov [r15], 0
0010878a
0010878aloc_10878a:
0010878aadd rsp, 8
0010878epop rbx
0010878fpop r12
00108791pop r13
00108793pop r14
00108795pop r15
00108797pop rbp
00108798ret
00108799
00108799loc_108799:
00108799cmp rbx, r14
0010879cjbe 0x108844
001087a2lea rdx, [rip+0xe23cf]
001087a9jmp 0x108865
001087ae
001087aeloc_1087ae:
001087aecmp rbx, r14
001087b1ja 0x108855
001087b7mov rdx, -1
001087bemov rax, rbx
001087c1nop [rax+rax]
001087d0
001087d0loc_1087d0:
001087d0test rax, rax
001087d3je 0x1087ff
001087d5mov rdi, rax
001087d8dec rax
001087dbinc rdx
001087decmp [r12+rdi-1], 57
001087e4je 0x1087d0
001087e6inc [r12+rax]
001087eacmp rdi, rbx
001087edjae 0x10883f
001087efadd rdi, r12
001087f2mov esi, 48
001087f7call [rip+0x10930b]
001087fdjmp 0x10883f
001087ff
001087ffloc_1087ff:
001087fftest rbx, rbx
00108802je 0x108829
00108804mov [r12], 49
00108809mov al, 48
0010880bcmp rbx, 1
0010880fje 0x10882b
00108811lea rdi, [r12+1]
00108816lea rdx, [rbx-1]
0010881amov esi, 48
0010881fcall [rip+0x1092e3]
00108825mov al, 48
00108827jmp 0x10882b
00108829
00108829loc_108829:
00108829mov al, 49
0010882b
0010882bloc_10882b:
0010882binc ebp
0010882dcmp rbx, r14
00108830jae 0x10883f
00108832cmp bp, r13w
00108836jle 0x10883f
00108838mov [r12+rbx], al
0010883cinc rbx
0010883f
0010883floc_10883f:
0010883fcmp rbx, r14
00108842ja 0x10885e
00108844
00108844loc_108844:
00108844mov [r15], r12
00108847mov [r15+8], rbx
0010884bmov [r15+16], bp
00108850jmp 0x10878a
00108855
00108855loc_108855:
00108855lea rdx, [rip+0xe22ec]
0010885cjmp 0x108865
0010885e
0010885eloc_10885e:
0010885elea rdx, [rip+0xe22fb]
00108865
00108865loc_108865:
00108865mov rdi, rbx
00108868mov rsi, r14
0010886bcall core::slice::index::slice_end_index_len_fail
00108870ud2
00108720
00108872
00108872 // align 0x10
00108872 // align 0x10
00108880
00108880core::num::flt2dec::digits_to_dec_str:
00108880push rax
00108881test rsi, rsi
00108884je 0x108992
0010888acmp [rdi], 48
0010888djbe 0x1089a2
00108893test dx, dx
00108896jle 0x1088f7
00108898movzx eax, dx
0010889bmov rdx, rax
0010889emov [r8], 2
001088a4mov [r8+8], rdi
001088a8sub rdx, rsi
001088abjae 0x108948
001088b1mov [r8+16], rax
001088b5mov [r8+24], 2
001088bclea rdx, [rip-0x786f6]
001088c3mov [r8+32], rdx
001088c7mov [r8+40], 1
001088cfsub rsi, rax
001088d2add rdi, rax
001088d5mov [r8+48], 2
001088dcmov [r8+56], rdi
001088e0mov [r8+64], rsi
001088e4mov edx, 3
001088e9sub rcx, rsi
001088ecja 0x108976
001088f2jmp 0x108986
001088f7
001088f7loc_1088f7:
001088f7movsx rax, dx
001088fbmov r9, rax
001088feneg r9
00108901mov [r8], 2
00108907lea rdx, [rip-0xc50c2]
0010890emov [r8+8], rdx
00108912mov [r8+16], 2
0010891amov [r8+24], 0
00108921mov [r8+32], r9
00108925mov [r8+48], 2
0010892cmov [r8+56], rdi
00108930mov [r8+64], rsi
00108934mov edx, 3
00108939sub rcx, rsi
0010893cjbe 0x108986
0010893ecmp rcx, r9
00108941jbe 0x108986
00108943add rcx, rax
00108946jmp 0x108976
00108948
00108948loc_108948:
00108948mov [r8+16], rsi
0010894cmov [r8+24], 0
00108953mov [r8+32], rdx
00108957test rcx, rcx
0010895aje 0x10898b
0010895cmov [r8+48], 2
00108963lea rax, [rip-0x7879d]
0010896amov [r8+56], rax
0010896emov [r8+64], 1
00108976
00108976loc_108976:
00108976mov [r8+72], 0
0010897dmov [r8+80], rcx
00108981mov edx, 4
00108986
00108986loc_108986:
00108986mov rax, r8
00108989pop rcx
0010898aret
0010898b
0010898bloc_10898b:
0010898bmov edx, 2
00108990jmp 0x108986
00108992
00108992loc_108992:
00108992lea rdi, [rip-0xc5200]
00108999lea rdx, [rip+0xe21f0]
001089a0jmp 0x1089b0
001089a2
001089a2loc_1089a2:
001089a2lea rdi, [rip-0xc517e]
001089a9lea rdx, [rip+0xe21f8]
001089b0
001089b0loc_1089b0:
001089b0mov esi, 33
001089b5call core::panicking::panic
001089baud2
00108880
00108880core::num::flt2dec::digits_to_dec_str:
00108880push rax
00108881test rsi, rsi
00108884je 0x108992
0010888acmp [rdi], 48
0010888djbe 0x1089a2
00108893test dx, dx
00108896jle 0x1088f7
00108898movzx eax, dx
0010889bmov rdx, rax
0010889emov [r8], 2
001088a4mov [r8+8], rdi
001088a8sub rdx, rsi
001088abjae 0x108948
001088b1mov [r8+16], rax
001088b5mov [r8+24], 2
001088bclea rdx, [rip-0x786f6]
001088c3mov [r8+32], rdx
001088c7mov [r8+40], 1
001088cfsub rsi, rax
001088d2add rdi, rax
001088d5mov [r8+48], 2
001088dcmov [r8+56], rdi
001088e0mov [r8+64], rsi
001088e4mov edx, 3
001088e9sub rcx, rsi
001088ecja 0x108976
001088f2jmp 0x108986
001088f7
001088f7loc_1088f7:
001088f7movsx rax, dx
001088fbmov r9, rax
001088feneg r9
00108901mov [r8], 2
00108907lea rdx, [rip-0xc50c2]
0010890emov [r8+8], rdx
00108912mov [r8+16], 2
0010891amov [r8+24], 0
00108921mov [r8+32], r9
00108925mov [r8+48], 2
0010892cmov [r8+56], rdi
00108930mov [r8+64], rsi
00108934mov edx, 3
00108939sub rcx, rsi
0010893cjbe 0x108986
0010893ecmp rcx, r9
00108941jbe 0x108986
00108943add rcx, rax
00108946jmp 0x108976
00108948
00108948loc_108948:
00108948mov [r8+16], rsi
0010894cmov [r8+24], 0
00108953mov [r8+32], rdx
00108957test rcx, rcx
0010895aje 0x10898b
0010895cmov [r8+48], 2
00108963lea rax, [rip-0x7879d]
0010896amov [r8+56], rax
0010896emov [r8+64], 1
00108976
00108976loc_108976:
00108976mov [r8+72], 0
0010897dmov [r8+80], rcx
00108981mov edx, 4
00108986
00108986loc_108986:
00108986mov rax, r8
00108989pop rcx
0010898aret
0010898b
0010898bloc_10898b:
0010898bmov edx, 2
00108990jmp 0x108986
00108992
00108992loc_108992:
00108992lea rdi, [rip-0xc5200]
00108999lea rdx, [rip+0xe21f0]
001089a0jmp 0x1089b0
001089a2
001089a2loc_1089a2:
001089a2lea rdi, [rip-0xc517e]
001089a9lea rdx, [rip+0xe21f8]
001089b0
001089b0loc_1089b0:
001089b0mov esi, 33
001089b5call core::panicking::panic
001089baud2
00108880
Loading..