File akira_3298d203c2acb68c474e5fdad8379181890b4403d6491c523c13730129be3f75.elf
Function:
Loading..
00103ff0
00103ff0core::panicking::panic_bounds_check:
00103ff0sub rsp, 104
00103ff4mov [rsp+8], rdi
00103ff9mov [rsp+16], rsi
00103ffelea rax, [rsp+16]
00104003mov [rsp+24], rax
00104008lea rax, [rip+97]
0010400fmov [rsp+32], rax
00104014lea rcx, [rsp+8]
00104019mov [rsp+40], rcx
0010401emov [rsp+48], rax
00104023lea rax, [rip+0xe6c56]
0010402amov [rsp+56], rax
0010402fmov [rsp+64], 2
00104038mov [rsp+88], 0
00104041lea rax, [rsp+24]
00104046mov [rsp+72], rax
0010404bmov [rsp+80], 2
00104054lea rdi, [rsp+56]
00104059mov rsi, rdx
0010405ccall core::panicking::panic_fmt
00104061ud2
00103ff0
00103ff0core::panicking::panic_bounds_check:
00103ff0sub rsp, 104
00103ff4mov [rsp+8], rdi
00103ff9mov [rsp+16], rsi
00103ffelea rax, [rsp+16]
00104003mov [rsp+24], rax
00104008lea rax, [rip+97]
0010400fmov [rsp+32], rax
00104014lea rcx, [rsp+8]
00104019mov [rsp+40], rcx
0010401emov [rsp+48], rax
00104023lea rax, [rip+0xe6c56]
0010402amov [rsp+56], rax
0010402fmov [rsp+64], 2
00104038mov [rsp+88], 0
00104041lea rax, [rsp+24]
00104046mov [rsp+72], rax
0010404bmov [rsp+80], 2
00104054lea rdi, [rsp+56]
00104059mov rsi, rdx
0010405ccall core::panicking::panic_fmt
00104061ud2
00103ff0
00104063
00104063 // align 0x10
00104063 // align 0x10
00104070
00104070core::fmt::num::imp::_<impl core::fmt::Display for u64>::fmt:
00104070sub rsp, 40
00104074mov rcx, [rdi]
00104077mov eax, 39
0010407clea rdi, [rip-0x75031]
00104083cmp rcx, 10000
0010408ajb 0x104135
00104090mov r9l, 39
00104096mov r8, 0x346dc5d63886594b
001040a0
001040a0loc_1040a0:
001040a0mov rax, rcx
001040a3mul r8
001040a6shr rdx, 11
001040aaimul eax, edx, 10000
001040b0mov r10l, ecx
001040b3sub r10l, eax
001040b6imul r11l, r10l, 5243
001040bdshr r11l, 19
001040c1imul eax, r11l, 100
001040c5sub r10l, eax
001040c8movzx r10l, r10w
001040cclea rax, [r9-4]
001040d0movzx r11l, [rdi+2*r11]
001040d5mov [rsp+r9-3], r11w
001040dbmovzx r10l, [rdi+2*r10]
001040e0mov [rsp+r9-1], r10w
001040e6mov r9, rax
001040e9cmp rcx, 0x5f5e0ff
001040f0mov rcx, rdx
001040f3ja 0x1040a0
001040f5cmp rdx, 99
001040f9jbe 0x104124
001040fb
001040fbloc_1040fb:
001040fbmovzx ecx, dx
001040feshr ecx, 2
00104101imul ecx, ecx, 5243
00104107shr ecx, 17
0010410aimul r8l, ecx, 100
0010410esub edx, r8l
00104111movzx edx, dx
00104114movzx edx, [rdi+2*rdx]
00104118mov [rsp+rax-1], dx
0010411dadd rax, -2
00104121mov rdx, rcx
00104124
00104124loc_104124:
00104124cmp rdx, 10
00104128jae 0x104140
0010412aadd dl, 48
0010412dmov [rsp+rax], dl
00104130dec rax
00104133jmp 0x10414d
00104135
00104135loc_104135:
00104135mov rdx, rcx
00104138cmp rdx, 99
0010413cja 0x1040fb
0010413ejmp 0x104124
00104140
00104140loc_104140:
00104140movzx ecx, [rdi+2*rdx]
00104144mov [rsp+rax-1], cx
00104149add rax, -2
0010414d
0010414dloc_10414d:
0010414dlea r8, [rsp+rax]
00104151inc r8
00104154mov r9l, 39
0010415asub r9, rax
0010415dlea rdx, [rip-0x72e6c]
00104164mov rdi, rsi
00104167mov esi, 1
0010416cxor ecx, ecx
0010416ecall core::fmt::Formatter::pad_integral
00104173add rsp, 40
00104177ret
00104070
00104070core::fmt::num::imp::_<impl core::fmt::Display for u64>::fmt:
00104070sub rsp, 40
00104074mov rcx, [rdi]
00104077mov eax, 39
0010407clea rdi, [rip-0x75031]
00104083cmp rcx, 10000
0010408ajb 0x104135
00104090mov r9l, 39
00104096mov r8, 0x346dc5d63886594b
001040a0
001040a0loc_1040a0:
001040a0mov rax, rcx
001040a3mul r8
001040a6shr rdx, 11
001040aaimul eax, edx, 10000
001040b0mov r10l, ecx
001040b3sub r10l, eax
001040b6imul r11l, r10l, 5243
001040bdshr r11l, 19
001040c1imul eax, r11l, 100
001040c5sub r10l, eax
001040c8movzx r10l, r10w
001040cclea rax, [r9-4]
001040d0movzx r11l, [rdi+2*r11]
001040d5mov [rsp+r9-3], r11w
001040dbmovzx r10l, [rdi+2*r10]
001040e0mov [rsp+r9-1], r10w
001040e6mov r9, rax
001040e9cmp rcx, 0x5f5e0ff
001040f0mov rcx, rdx
001040f3ja 0x1040a0
001040f5cmp rdx, 99
001040f9jbe 0x104124
001040fb
001040fbloc_1040fb:
001040fbmovzx ecx, dx
001040feshr ecx, 2
00104101imul ecx, ecx, 5243
00104107shr ecx, 17
0010410aimul r8l, ecx, 100
0010410esub edx, r8l
00104111movzx edx, dx
00104114movzx edx, [rdi+2*rdx]
00104118mov [rsp+rax-1], dx
0010411dadd rax, -2
00104121mov rdx, rcx
00104124
00104124loc_104124:
00104124cmp rdx, 10
00104128jae 0x104140
0010412aadd dl, 48
0010412dmov [rsp+rax], dl
00104130dec rax
00104133jmp 0x10414d
00104135
00104135loc_104135:
00104135mov rdx, rcx
00104138cmp rdx, 99
0010413cja 0x1040fb
0010413ejmp 0x104124
00104140
00104140loc_104140:
00104140movzx ecx, [rdi+2*rdx]
00104144mov [rsp+rax-1], cx
00104149add rax, -2
0010414d
0010414dloc_10414d:
0010414dlea r8, [rsp+rax]
00104151inc r8
00104154mov r9l, 39
0010415asub r9, rax
0010415dlea rdx, [rip-0x72e6c]
00104164mov rdi, rsi
00104167mov esi, 1
0010416cxor ecx, ecx
0010416ecall core::fmt::Formatter::pad_integral
00104173add rsp, 40
00104177ret
00104070
00104178
00104178 // align 0x10
00104178 // align 0x10
00104180
00104180core::fmt::Formatter::pad_integral:
00104180push rbp
00104181push r15
00104183push r14
00104185push r13
00104187push r12
00104189push rbx
0010418asub rsp, 40
0010418emov rbp, r9
00104191mov r15, r8
00104194mov r12, rcx
00104197mov r13, rdx
0010419atest esi, esi
0010419cje 0x1041dd
0010419emov eax, [rdi+52]
001041a1mov ecx, eax
001041a3and ecx, 1
001041a6mov edx, 0x110000
001041abmov esi, 43
001041b0cmove esi, edx
001041b3mov [rsp+12], esi
001041b7add rcx, rbp
001041batest al, 4
001041bcje 0x1041f0
001041be
001041beloc_1041be:
001041bemov rsi, r12
001041c1test r12, r12
001041c4je 0x1042f8
001041cacmp r12, 1
001041cejne 0x104270
001041d4xor esi, esi
001041d6xor edx, edx
001041d8jmp 0x1042e0
001041dd
001041ddloc_1041dd:
001041ddlea rcx, [rbp+1]
001041e1mov eax, [rdi+52]
001041e4mov [rsp+12], 45
001041ectest al, 4
001041eejne 0x1041be
001041f0
001041f0loc_1041f0:
001041f0xor r13l, r13l
001041f3cmp [rdi], 0
001041f7je 0x104305
001041fd
001041fdloc_1041fd:
001041fdmov [rsp+32], r15
00104202mov r15, [rdi+8]
00104206sub r15, rcx
00104209jbe 0x104237
0010420btest al, 8
0010420djne 0x10434a
00104213mov [rsp+24], rbp
00104218movzx ebp, [rdi+56]
0010421clea rax, [rip-0xc6b9f]
00104223movsxd rcx, [rax+4*rbp]
00104227add rcx, rax
0010422ajmp rcx
0010422cmov rbp, r15
0010422fxor r15l, r15l
00104232jmp 0x1043c9
00104237
00104237loc_104237:
00104237mov rbx, [rdi+32]
0010423bmov r14, [rdi+40]
0010423fmov rdi, rbx
00104242mov rsi, r14
00104245mov edx, [rsp+12]
00104249mov rcx, r13
0010424cmov r8, r12
0010424fcall core::fmt::Formatter::pad_integral::write_prefix
00104254mov r12b, 1
00104257test al, al
00104259mov rsi, [rsp+32]
0010425ejne 0x104492
00104264mov rax, [r14+24]
00104268mov rdi, rbx
0010426bjmp 0x104337
00104270
00104270loc_104270:
00104270mov rdx, r12
00104273and rdx, -2
00104277pxor x0, x0
0010427bxor esi, esi
0010427dmovdqa x1, [rip-0xcba95]
00104285movdqa x2, [rip-0xcba8d]
0010428dnop [rax]
00104290
00104290loc_104290:
00104290movzx r8l, [r13+rsi]
00104296movd x3, r8l
0010429bpcmpgtb x3, x1
0010429fpunpcklbw x3, x3
001042a3pshuflw x3, x3, -44
001042a8pshufd x3, x3, -44
001042adpand x3, x2
001042b1paddq x0, x3
001042b5add rsi, 2
001042b9cmp rdx, rsi
001042bcjne 0x104290
001042bepshufd x1, x0, -18
001042c3paddq x1, x0
001042c7movq rsi, x1
001042cccmp rdx, r12
001042cfje 0x1042f8
001042d1nop [rax+rax]
001042e0
001042e0loc_1042e0:
001042e0xor r8l, r8l
001042e3cmp [r13+rdx], -64
001042e9setge r8b
001042edadd rsi, r8
001042f0inc rdx
001042f3cmp r12, rdx
001042f6jne 0x1042e0
001042f8
001042f8loc_1042f8:
001042f8add rcx, rsi
001042fbcmp [rdi], 0
001042ffjne 0x1041fd
00104305
00104305loc_104305:
00104305mov rbx, [rdi+32]
00104309mov r14, [rdi+40]
0010430dmov rdi, rbx
00104310mov rsi, r14
00104313mov edx, [rsp+12]
00104317mov rcx, r13
0010431amov r8, r12
0010431dcall core::fmt::Formatter::pad_integral::write_prefix
00104322mov r12b, 1
00104325test al, al
00104327jne 0x104492
0010432dmov rax, [r14+24]
00104331mov rdi, rbx
00104334mov rsi, r15
00104337
00104337loc_104337:
00104337mov rdx, rbp
0010433aadd rsp, 40
0010433epop rbx
0010433fpop r12
00104341pop r13
00104343pop r14
00104345pop r15
00104347pop rbp
00104348jmp rax
0010434a
0010434aloc_10434a:
0010434amov eax, [rdi+48]
0010434dmov [rsp+24], eax
00104351mov [rdi+48], 48
00104358movzx eax, [rdi+56]
0010435cmov [rsp+11], al
00104360mov [rdi+56], 1
00104364mov r14, [rdi+32]
00104368mov [rsp+16], rdi
0010436dmov rbx, [rdi+40]
00104371mov rdi, r14
00104374mov rsi, rbx
00104377mov edx, [rsp+12]
0010437bmov rcx, r13
0010437emov r8, r12
00104381call core::fmt::Formatter::pad_integral::write_prefix
00104386mov r12b, 1
00104389test al, al
0010438bjne 0x104492
00104391inc r15
00104394nop [rax+rax]
001043a0
001043a0loc_1043a0:
001043a0dec r15
001043a3je 0x10445d
001043a9mov rdi, r14
001043acmov esi, 48
001043b1call [rbx+32]
001043b4test al, al
001043b6je 0x1043a0
001043b8jmp 0x104492
001043bdmov rbp, r15
001043c0shr rbp, 1
001043c3inc r15
001043c6shr r15, 1
001043c9
001043c9loc_1043c9:
001043c9mov r14, [rdi+32]
001043cdmov rbx, [rdi+40]
001043d1mov eax, [rdi+48]
001043d4mov [rsp+16], eax
001043d8inc rbp
001043dbnop [rax+rax]
001043e0
001043e0loc_1043e0:
001043e0mov rdi, r14
001043e3dec rbp
001043e6je 0x1043fb
001043e8mov esi, [rsp+16]
001043eccall [rbx+32]
001043eftest al, al
001043f1je 0x1043e0
001043f3mov r12b, 1
001043f6jmp 0x104492
001043fb
001043fbloc_1043fb:
001043fbmov rsi, rbx
001043femov edx, [rsp+12]
00104402mov rcx, r13
00104405mov r8, r12
00104408call core::fmt::Formatter::pad_integral::write_prefix
0010440dmov r12b, 1
00104410test al, al
00104412jne 0x104492
00104418mov rdi, r14
0010441bmov rsi, [rsp+32]
00104420mov rdx, [rsp+24]
00104425call [rbx+24]
00104428test al, al
0010442ajne 0x104492
0010442cmov r13, r15
0010442fneg r13
00104432mov r12, -1
00104439nop [rax]
00104440
00104440loc_104440:
00104440lea rax, [r12+r13]
00104444cmp rax, -1
00104448je 0x104488
0010444amov rdi, r14
0010444dmov esi, [rsp+16]
00104451call [rbx+32]
00104454inc r12
00104457test al, al
00104459je 0x104440
0010445bjmp 0x10448b
0010445d
0010445dloc_10445d:
0010445dmov rdi, r14
00104460mov rsi, [rsp+32]
00104465mov rdx, rbp
00104468call [rbx+24]
0010446btest al, al
0010446djne 0x104492
0010446fmov rax, [rsp+16]
00104474mov ecx, [rsp+24]
00104478mov [rax+48], ecx
0010447bmovzx ecx, [rsp+11]
00104480mov [rax+56], cl
00104483xor r12l, r12l
00104486jmp 0x104492
00104488
00104488loc_104488:
00104488mov r12, r15
0010448b
0010448bloc_10448b:
0010448bcmp r12, r15
0010448esetb r12b
00104492
00104492loc_104492:
00104492mov eax, r12l
00104495add rsp, 40
00104499pop rbx
0010449apop r12
0010449cpop r13
0010449epop r14
001044a0pop r15
001044a2pop rbp
001044a3ret
00104180
00104180core::fmt::Formatter::pad_integral:
00104180push rbp
00104181push r15
00104183push r14
00104185push r13
00104187push r12
00104189push rbx
0010418asub rsp, 40
0010418emov rbp, r9
00104191mov r15, r8
00104194mov r12, rcx
00104197mov r13, rdx
0010419atest esi, esi
0010419cje 0x1041dd
0010419emov eax, [rdi+52]
001041a1mov ecx, eax
001041a3and ecx, 1
001041a6mov edx, 0x110000
001041abmov esi, 43
001041b0cmove esi, edx
001041b3mov [rsp+12], esi
001041b7add rcx, rbp
001041batest al, 4
001041bcje 0x1041f0
001041be
001041beloc_1041be:
001041bemov rsi, r12
001041c1test r12, r12
001041c4je 0x1042f8
001041cacmp r12, 1
001041cejne 0x104270
001041d4xor esi, esi
001041d6xor edx, edx
001041d8jmp 0x1042e0
001041dd
001041ddloc_1041dd:
001041ddlea rcx, [rbp+1]
001041e1mov eax, [rdi+52]
001041e4mov [rsp+12], 45
001041ectest al, 4
001041eejne 0x1041be
001041f0
001041f0loc_1041f0:
001041f0xor r13l, r13l
001041f3cmp [rdi], 0
001041f7je 0x104305
001041fd
001041fdloc_1041fd:
001041fdmov [rsp+32], r15
00104202mov r15, [rdi+8]
00104206sub r15, rcx
00104209jbe 0x104237
0010420btest al, 8
0010420djne 0x10434a
00104213mov [rsp+24], rbp
00104218movzx ebp, [rdi+56]
0010421clea rax, [rip-0xc6b9f]
00104223movsxd rcx, [rax+4*rbp]
00104227add rcx, rax
0010422ajmp rcx
0010422cmov rbp, r15
0010422fxor r15l, r15l
00104232jmp 0x1043c9
00104237
00104237loc_104237:
00104237mov rbx, [rdi+32]
0010423bmov r14, [rdi+40]
0010423fmov rdi, rbx
00104242mov rsi, r14
00104245mov edx, [rsp+12]
00104249mov rcx, r13
0010424cmov r8, r12
0010424fcall core::fmt::Formatter::pad_integral::write_prefix
00104254mov r12b, 1
00104257test al, al
00104259mov rsi, [rsp+32]
0010425ejne 0x104492
00104264mov rax, [r14+24]
00104268mov rdi, rbx
0010426bjmp 0x104337
00104270
00104270loc_104270:
00104270mov rdx, r12
00104273and rdx, -2
00104277pxor x0, x0
0010427bxor esi, esi
0010427dmovdqa x1, [rip-0xcba95]
00104285movdqa x2, [rip-0xcba8d]
0010428dnop [rax]
00104290
00104290loc_104290:
00104290movzx r8l, [r13+rsi]
00104296movd x3, r8l
0010429bpcmpgtb x3, x1
0010429fpunpcklbw x3, x3
001042a3pshuflw x3, x3, -44
001042a8pshufd x3, x3, -44
001042adpand x3, x2
001042b1paddq x0, x3
001042b5add rsi, 2
001042b9cmp rdx, rsi
001042bcjne 0x104290
001042bepshufd x1, x0, -18
001042c3paddq x1, x0
001042c7movq rsi, x1
001042cccmp rdx, r12
001042cfje 0x1042f8
001042d1nop [rax+rax]
001042e0
001042e0loc_1042e0:
001042e0xor r8l, r8l
001042e3cmp [r13+rdx], -64
001042e9setge r8b
001042edadd rsi, r8
001042f0inc rdx
001042f3cmp r12, rdx
001042f6jne 0x1042e0
001042f8
001042f8loc_1042f8:
001042f8add rcx, rsi
001042fbcmp [rdi], 0
001042ffjne 0x1041fd
00104305
00104305loc_104305:
00104305mov rbx, [rdi+32]
00104309mov r14, [rdi+40]
0010430dmov rdi, rbx
00104310mov rsi, r14
00104313mov edx, [rsp+12]
00104317mov rcx, r13
0010431amov r8, r12
0010431dcall core::fmt::Formatter::pad_integral::write_prefix
00104322mov r12b, 1
00104325test al, al
00104327jne 0x104492
0010432dmov rax, [r14+24]
00104331mov rdi, rbx
00104334mov rsi, r15
00104337
00104337loc_104337:
00104337mov rdx, rbp
0010433aadd rsp, 40
0010433epop rbx
0010433fpop r12
00104341pop r13
00104343pop r14
00104345pop r15
00104347pop rbp
00104348jmp rax
0010434a
0010434aloc_10434a:
0010434amov eax, [rdi+48]
0010434dmov [rsp+24], eax
00104351mov [rdi+48], 48
00104358movzx eax, [rdi+56]
0010435cmov [rsp+11], al
00104360mov [rdi+56], 1
00104364mov r14, [rdi+32]
00104368mov [rsp+16], rdi
0010436dmov rbx, [rdi+40]
00104371mov rdi, r14
00104374mov rsi, rbx
00104377mov edx, [rsp+12]
0010437bmov rcx, r13
0010437emov r8, r12
00104381call core::fmt::Formatter::pad_integral::write_prefix
00104386mov r12b, 1
00104389test al, al
0010438bjne 0x104492
00104391inc r15
00104394nop [rax+rax]
001043a0
001043a0loc_1043a0:
001043a0dec r15
001043a3je 0x10445d
001043a9mov rdi, r14
001043acmov esi, 48
001043b1call [rbx+32]
001043b4test al, al
001043b6je 0x1043a0
001043b8jmp 0x104492
001043bdmov rbp, r15
001043c0shr rbp, 1
001043c3inc r15
001043c6shr r15, 1
001043c9
001043c9loc_1043c9:
001043c9mov r14, [rdi+32]
001043cdmov rbx, [rdi+40]
001043d1mov eax, [rdi+48]
001043d4mov [rsp+16], eax
001043d8inc rbp
001043dbnop [rax+rax]
001043e0
001043e0loc_1043e0:
001043e0mov rdi, r14
001043e3dec rbp
001043e6je 0x1043fb
001043e8mov esi, [rsp+16]
001043eccall [rbx+32]
001043eftest al, al
001043f1je 0x1043e0
001043f3mov r12b, 1
001043f6jmp 0x104492
001043fb
001043fbloc_1043fb:
001043fbmov rsi, rbx
001043femov edx, [rsp+12]
00104402mov rcx, r13
00104405mov r8, r12
00104408call core::fmt::Formatter::pad_integral::write_prefix
0010440dmov r12b, 1
00104410test al, al
00104412jne 0x104492
00104418mov rdi, r14
0010441bmov rsi, [rsp+32]
00104420mov rdx, [rsp+24]
00104425call [rbx+24]
00104428test al, al
0010442ajne 0x104492
0010442cmov r13, r15
0010442fneg r13
00104432mov r12, -1
00104439nop [rax]
00104440
00104440loc_104440:
00104440lea rax, [r12+r13]
00104444cmp rax, -1
00104448je 0x104488
0010444amov rdi, r14
0010444dmov esi, [rsp+16]
00104451call [rbx+32]
00104454inc r12
00104457test al, al
00104459je 0x104440
0010445bjmp 0x10448b
0010445d
0010445dloc_10445d:
0010445dmov rdi, r14
00104460mov rsi, [rsp+32]
00104465mov rdx, rbp
00104468call [rbx+24]
0010446btest al, al
0010446djne 0x104492
0010446fmov rax, [rsp+16]
00104474mov ecx, [rsp+24]
00104478mov [rax+48], ecx
0010447bmovzx ecx, [rsp+11]
00104480mov [rax+56], cl
00104483xor r12l, r12l
00104486jmp 0x104492
00104488
00104488loc_104488:
00104488mov r12, r15
0010448b
0010448bloc_10448b:
0010448bcmp r12, r15
0010448esetb r12b
00104492
00104492loc_104492:
00104492mov eax, r12l
00104495add rsp, 40
00104499pop rbx
0010449apop r12
0010449cpop r13
0010449epop r14
001044a0pop r15
001044a2pop rbp
001044a3ret
00104180
001044a4
001044a4 // align 0x10
001044a4 // align 0x10
001044b0
001044b0core::str::count::do_count_chars:
001044b0lea r9, [rdi+7]
001044b4and r9, -8
001044b8mov rax, r9
001044bbsub rax, rdi
001044besub rsi, rax
001044c1mov eax, esi
001044c3and eax, 7
001044c6mov rcx, r9
001044c9sub rcx, rdi
001044ccjne 0x1044d5
001044cexor edx, edx
001044d0jmp 0x104567
001044d5
001044d5loc_1044d5:
001044d5cmp rcx, 4
001044d9jae 0x1044e2
001044dbxor edx, edx
001044ddxor r8l, r8l
001044e0jmp 0x104550
001044e2
001044e2loc_1044e2:
001044e2movzx edx, [rdi+2]
001044e6movd x0, edx
001044eamovdqa x1, [rip-0xcbce2]
001044f2pcmpgtb x0, x1
001044f6punpcklbw x0, x0
001044fapshuflw x0, x0, -44
001044ffpshufd x0, x0, -44
00104504movdqa x2, [rip-0xcbcec]
0010450cpand x0, x2
00104510movzx edx, [rdi]
00104513movd x3, edx
00104517pcmpgtb x3, x1
0010451bpunpcklbw x3, x3
0010451fpshuflw x1, x3, -44
00104524pshufd x1, x1, -44
00104529pand x1, x2
0010452dpaddq x1, x0
00104531pshufd x0, x1, -18
00104536paddq x0, x1
0010453amovq rdx, x0
0010453fmov r8l, 4
00104545je 0x104567
00104547nop [rax+rax]
00104550
00104550loc_104550:
00104550xor r10l, r10l
00104553cmp [rdi+r8], -64
00104558setge r10b
0010455cadd rdx, r10
0010455finc r8
00104562cmp rcx, r8
00104565jne 0x104550
00104567
00104567loc_104567:
00104567test rax, rax
0010456aje 0x1045ff
00104570mov rdi, rsi
00104573and rdi, -8
00104577xor ecx, ecx
00104579cmp [r9+rdi], -64
0010457esetge cl
00104581cmp eax, 1
00104584je 0x104601
00104586xor r8l, r8l
00104589cmp [r9+rdi+1], -64
0010458fsetge r8b
00104593add rcx, r8
00104596cmp eax, 2
00104599je 0x104601
0010459bxor r8l, r8l
0010459ecmp [r9+rdi+2], -64
001045a4setge r8b
001045a8add rcx, r8
001045abcmp eax, 3
001045aeje 0x104601
001045b0xor r8l, r8l
001045b3cmp [r9+rdi+3], -64
001045b9setge r8b
001045bdadd rcx, r8
001045c0cmp eax, 4
001045c3je 0x104601
001045c5xor r8l, r8l
001045c8cmp [r9+rdi+4], -64
001045cesetge r8b
001045d2add rcx, r8
001045d5cmp eax, 5
001045d8je 0x104601
001045daxor r8l, r8l
001045ddcmp [r9+rdi+5], -64
001045e3setge r8b
001045e7add rcx, r8
001045eacmp eax, 6
001045edje 0x104601
001045efxor eax, eax
001045f1cmp [r9+rdi+6], -64
001045f7setge al
001045faadd rcx, rax
001045fdjmp 0x104601
001045ff
001045ffloc_1045ff:
001045ffxor ecx, ecx
00104601
00104601loc_104601:
00104601push r15
00104603push r14
00104605push r12
00104607push rbx
00104608add rcx, rdx
0010460bshr rsi, 3
0010460fmov r11, 0x7ffffffffffffff
00104619mov rdi, 0xff00ff00ff00ff
00104623mov rdx, 0x1000100010001
0010462dpcmpeqd x0, x0
00104631movdqa x1, [rip-0xcbe09]
00104639jmp 0x104673
0010463b
0010463b 0f 1f 44 00 00 ..D..
00104640
00104640loc_104640:
00104640xor ecx, ecx
00104642
00104642loc_104642:
00104642lea r9, [r8+8*r10]
00104646sub rsi, r10
00104649mov ebx, r10l
0010464cand ebx, 3
0010464fmov r14, rcx
00104652and r14, rdi
00104655shr rcx, 8
00104659and rcx, rdi
0010465cadd rcx, r14
0010465fimul rcx, rdx
00104663shr rcx, 48
00104667add rcx, rax
0010466atest rbx, rbx
0010466djne 0x104810
00104673
00104673loc_104673:
00104673mov rax, rcx
00104676test rsi, rsi
00104679je 0x104896
0010467fmov r8, r9
00104682cmp rsi, 192
00104689mov r10l, 192
0010468fcmovb r10, rsi
00104693cmp r10, 4
00104697jb 0x104640
00104699mov r9l, r10l
0010469cshr r9l, 2
001046a0lea r14, [r9+r11]
001046a4and r14, r11
001046a7je 0x10479d
001046adinc r14
001046b0mov r15, r14
001046b3and r15, -2
001046b7mov rbx, r15
001046bashl rbx, 5
001046bepxor x3, x3
001046c2mov rcx, r8
001046c5mov r12, r15
001046c8nop [rax+rax]
001046d0
001046d0loc_1046d0:
001046d0movdqu x2, [rcx]
001046d4movdqu x5, [rcx+32]
001046d9movdqa x4, x2
001046ddpunpcklqdq x4, x5
001046e1movdqa x6, x4
001046e5pxor x6, x0
001046e9psrlq x6, 7
001046eepsrlq x4, 6
001046f3por x4, x6
001046f7pand x4, x1
001046fbpaddq x4, x3
001046ffmovdqu x3, [rcx+16]
00104704movdqu x6, [rcx+48]
00104709punpckhqdq x2, x5
0010470dmovdqa x5, x3
00104711punpcklqdq x5, x6
00104715punpckhqdq x3, x6
00104719movdqa x6, x2
0010471dpxor x6, x0
00104721psrlq x6, 7
00104726psrlq x2, 6
0010472bpor x2, x6
0010472fpand x2, x1
00104733movdqa x6, x5
00104737pxor x6, x0
0010473bpsrlq x6, 7
00104740psrlq x5, 6
00104745por x5, x6
00104749pand x5, x1
0010474dpaddq x5, x2
00104751paddq x5, x4
00104755movdqa x2, x3
00104759pxor x2, x0
0010475dpsrlq x2, 7
00104762psrlq x3, 6
00104767por x3, x2
0010476bpand x3, x1
0010476fpaddq x3, x5
00104773add rcx, 64
00104777add r12, -2
0010477bjne 0x1046d0
00104781pshufd x2, x3, -18
00104786paddq x2, x3
0010478amovq rcx, x2
0010478fcmp r14, r15
00104792je 0x104642
00104798add rbx, r8
0010479bjmp 0x1047a2
0010479d
0010479dloc_10479d:
0010479dxor ecx, ecx
0010479fmov rbx, r8
001047a2
001047a2loc_1047a2:
001047a2shl r9, 5
001047a6add r9, r8
001047a9nop [rax]
001047b0
001047b0loc_1047b0:
001047b0movdqu x2, [rbx]
001047b4movdqu x3, [rbx+16]
001047b9movdqa x4, x2
001047bdpxor x4, x0
001047c1movdqa x5, x3
001047c5pxor x5, x0
001047c9psrlq x5, 7
001047cepsrlq x4, 7
001047d3psrlq x3, 6
001047d8por x3, x5
001047dcpsrlq x2, 6
001047e1por x2, x4
001047e5pand x3, x1
001047e9pand x2, x1
001047edpaddq x2, x3
001047f1pshufd x3, x2, -18
001047f6paddq x3, x2
001047famovq r14, x3
001047ffadd rcx, r14
00104802add rbx, 32
00104806cmp rbx, r9
00104809jne 0x1047b0
0010480bjmp 0x104642
00104810
00104810loc_104810:
00104810mov rsi, 0x101010101010101
0010481aand r10l, 252
00104821mov rax, [r8+8*r10]
00104825mov r9, rax
00104828not r9
0010482bshr r9, 7
0010482fshr rax, 6
00104833or rax, r9
00104836and rax, rsi
00104839cmp ebx, 1
0010483cje 0x10487b
0010483emov r9, [r8+8*r10+8]
00104843mov r11, r9
00104846not r11
00104849shr r11, 7
0010484dshr r9, 6
00104851or r9, r11
00104854and r9, rsi
00104857add rax, r9
0010485acmp ebx, 2
0010485dje 0x10487b
0010485fmov r8, [r8+8*r10+16]
00104864mov r9, r8
00104867not r9
0010486ashr r9, 7
0010486eshr r8, 6
00104872or r8, r9
00104875and r8, rsi
00104878add rax, r8
0010487b
0010487bloc_10487b:
0010487bmov rsi, rax
0010487eand rsi, rdi
00104881shr rax, 8
00104885and rax, rdi
00104888add rax, rsi
0010488bimul rax, rdx
0010488fshr rax, 48
00104893add rax, rcx
00104896
00104896loc_104896:
00104896pop rbx
00104897pop r12
00104899pop r14
0010489bpop r15
0010489dret
001044b0
001044b0core::str::count::do_count_chars:
001044b0lea r9, [rdi+7]
001044b4and r9, -8
001044b8mov rax, r9
001044bbsub rax, rdi
001044besub rsi, rax
001044c1mov eax, esi
001044c3and eax, 7
001044c6mov rcx, r9
001044c9sub rcx, rdi
001044ccjne 0x1044d5
001044cexor edx, edx
001044d0jmp 0x104567
001044d5
001044d5loc_1044d5:
001044d5cmp rcx, 4
001044d9jae 0x1044e2
001044dbxor edx, edx
001044ddxor r8l, r8l
001044e0jmp 0x104550
001044e2
001044e2loc_1044e2:
001044e2movzx edx, [rdi+2]
001044e6movd x0, edx
001044eamovdqa x1, [rip-0xcbce2]
001044f2pcmpgtb x0, x1
001044f6punpcklbw x0, x0
001044fapshuflw x0, x0, -44
001044ffpshufd x0, x0, -44
00104504movdqa x2, [rip-0xcbcec]
0010450cpand x0, x2
00104510movzx edx, [rdi]
00104513movd x3, edx
00104517pcmpgtb x3, x1
0010451bpunpcklbw x3, x3
0010451fpshuflw x1, x3, -44
00104524pshufd x1, x1, -44
00104529pand x1, x2
0010452dpaddq x1, x0
00104531pshufd x0, x1, -18
00104536paddq x0, x1
0010453amovq rdx, x0
0010453fmov r8l, 4
00104545je 0x104567
00104547nop [rax+rax]
00104550
00104550loc_104550:
00104550xor r10l, r10l
00104553cmp [rdi+r8], -64
00104558setge r10b
0010455cadd rdx, r10
0010455finc r8
00104562cmp rcx, r8
00104565jne 0x104550
00104567
00104567loc_104567:
00104567test rax, rax
0010456aje 0x1045ff
00104570mov rdi, rsi
00104573and rdi, -8
00104577xor ecx, ecx
00104579cmp [r9+rdi], -64
0010457esetge cl
00104581cmp eax, 1
00104584je 0x104601
00104586xor r8l, r8l
00104589cmp [r9+rdi+1], -64
0010458fsetge r8b
00104593add rcx, r8
00104596cmp eax, 2
00104599je 0x104601
0010459bxor r8l, r8l
0010459ecmp [r9+rdi+2], -64
001045a4setge r8b
001045a8add rcx, r8
001045abcmp eax, 3
001045aeje 0x104601
001045b0xor r8l, r8l
001045b3cmp [r9+rdi+3], -64
001045b9setge r8b
001045bdadd rcx, r8
001045c0cmp eax, 4
001045c3je 0x104601
001045c5xor r8l, r8l
001045c8cmp [r9+rdi+4], -64
001045cesetge r8b
001045d2add rcx, r8
001045d5cmp eax, 5
001045d8je 0x104601
001045daxor r8l, r8l
001045ddcmp [r9+rdi+5], -64
001045e3setge r8b
001045e7add rcx, r8
001045eacmp eax, 6
001045edje 0x104601
001045efxor eax, eax
001045f1cmp [r9+rdi+6], -64
001045f7setge al
001045faadd rcx, rax
001045fdjmp 0x104601
001045ff
001045ffloc_1045ff:
001045ffxor ecx, ecx
00104601
00104601loc_104601:
00104601push r15
00104603push r14
00104605push r12
00104607push rbx
00104608add rcx, rdx
0010460bshr rsi, 3
0010460fmov r11, 0x7ffffffffffffff
00104619mov rdi, 0xff00ff00ff00ff
00104623mov rdx, 0x1000100010001
0010462dpcmpeqd x0, x0
00104631movdqa x1, [rip-0xcbe09]
00104639jmp 0x104673
0010463b
0010463b 0f 1f 44 00 00 ..D..
00104640
00104640loc_104640:
00104640xor ecx, ecx
00104642
00104642loc_104642:
00104642lea r9, [r8+8*r10]
00104646sub rsi, r10
00104649mov ebx, r10l
0010464cand ebx, 3
0010464fmov r14, rcx
00104652and r14, rdi
00104655shr rcx, 8
00104659and rcx, rdi
0010465cadd rcx, r14
0010465fimul rcx, rdx
00104663shr rcx, 48
00104667add rcx, rax
0010466atest rbx, rbx
0010466djne 0x104810
00104673
00104673loc_104673:
00104673mov rax, rcx
00104676test rsi, rsi
00104679je 0x104896
0010467fmov r8, r9
00104682cmp rsi, 192
00104689mov r10l, 192
0010468fcmovb r10, rsi
00104693cmp r10, 4
00104697jb 0x104640
00104699mov r9l, r10l
0010469cshr r9l, 2
001046a0lea r14, [r9+r11]
001046a4and r14, r11
001046a7je 0x10479d
001046adinc r14
001046b0mov r15, r14
001046b3and r15, -2
001046b7mov rbx, r15
001046bashl rbx, 5
001046bepxor x3, x3
001046c2mov rcx, r8
001046c5mov r12, r15
001046c8nop [rax+rax]
001046d0
001046d0loc_1046d0:
001046d0movdqu x2, [rcx]
001046d4movdqu x5, [rcx+32]
001046d9movdqa x4, x2
001046ddpunpcklqdq x4, x5
001046e1movdqa x6, x4
001046e5pxor x6, x0
001046e9psrlq x6, 7
001046eepsrlq x4, 6
001046f3por x4, x6
001046f7pand x4, x1
001046fbpaddq x4, x3
001046ffmovdqu x3, [rcx+16]
00104704movdqu x6, [rcx+48]
00104709punpckhqdq x2, x5
0010470dmovdqa x5, x3
00104711punpcklqdq x5, x6
00104715punpckhqdq x3, x6
00104719movdqa x6, x2
0010471dpxor x6, x0
00104721psrlq x6, 7
00104726psrlq x2, 6
0010472bpor x2, x6
0010472fpand x2, x1
00104733movdqa x6, x5
00104737pxor x6, x0
0010473bpsrlq x6, 7
00104740psrlq x5, 6
00104745por x5, x6
00104749pand x5, x1
0010474dpaddq x5, x2
00104751paddq x5, x4
00104755movdqa x2, x3
00104759pxor x2, x0
0010475dpsrlq x2, 7
00104762psrlq x3, 6
00104767por x3, x2
0010476bpand x3, x1
0010476fpaddq x3, x5
00104773add rcx, 64
00104777add r12, -2
0010477bjne 0x1046d0
00104781pshufd x2, x3, -18
00104786paddq x2, x3
0010478amovq rcx, x2
0010478fcmp r14, r15
00104792je 0x104642
00104798add rbx, r8
0010479bjmp 0x1047a2
0010479d
0010479dloc_10479d:
0010479dxor ecx, ecx
0010479fmov rbx, r8
001047a2
001047a2loc_1047a2:
001047a2shl r9, 5
001047a6add r9, r8
001047a9nop [rax]
001047b0
001047b0loc_1047b0:
001047b0movdqu x2, [rbx]
001047b4movdqu x3, [rbx+16]
001047b9movdqa x4, x2
001047bdpxor x4, x0
001047c1movdqa x5, x3
001047c5pxor x5, x0
001047c9psrlq x5, 7
001047cepsrlq x4, 7
001047d3psrlq x3, 6
001047d8por x3, x5
001047dcpsrlq x2, 6
001047e1por x2, x4
001047e5pand x3, x1
001047e9pand x2, x1
001047edpaddq x2, x3
001047f1pshufd x3, x2, -18
001047f6paddq x3, x2
001047famovq r14, x3
001047ffadd rcx, r14
00104802add rbx, 32
00104806cmp rbx, r9
00104809jne 0x1047b0
0010480bjmp 0x104642
00104810
00104810loc_104810:
00104810mov rsi, 0x101010101010101
0010481aand r10l, 252
00104821mov rax, [r8+8*r10]
00104825mov r9, rax
00104828not r9
0010482bshr r9, 7
0010482fshr rax, 6
00104833or rax, r9
00104836and rax, rsi
00104839cmp ebx, 1
0010483cje 0x10487b
0010483emov r9, [r8+8*r10+8]
00104843mov r11, r9
00104846not r11
00104849shr r11, 7
0010484dshr r9, 6
00104851or r9, r11
00104854and r9, rsi
00104857add rax, r9
0010485acmp ebx, 2
0010485dje 0x10487b
0010485fmov r8, [r8+8*r10+16]
00104864mov r9, r8
00104867not r9
0010486ashr r9, 7
0010486eshr r8, 6
00104872or r8, r9
00104875and r8, rsi
00104878add rax, r8
0010487b
0010487bloc_10487b:
0010487bmov rsi, rax
0010487eand rsi, rdi
00104881shr rax, 8
00104885and rax, rdi
00104888add rax, rsi
0010488bimul rax, rdx
0010488fshr rax, 48
00104893add rax, rcx
00104896
00104896loc_104896:
00104896pop rbx
00104897pop r12
00104899pop r14
0010489bpop r15
0010489dret
001044b0
0010489e
0010489e // align 0x10
0010489e // align 0x10
001048a0
001048a0core::fmt::Formatter::pad_integral::write_prefix:
001048a0push r15
001048a2push r14
001048a4push r12
001048a6push rbx
001048a7push rax
001048a8mov rbx, r8
001048abmov r14, rcx
001048aemov r12, rsi
001048b1mov r15, rdi
001048b4cmp edx, 0x110000
001048baje 0x1048ce
001048bcmov rdi, r15
001048bfmov esi, edx
001048c1call [r12+32]
001048c6mov ecx, eax
001048c8mov al, 1
001048catest cl, cl
001048ccjne 0x1048f0
001048ce
001048celoc_1048ce:
001048cetest r14, r14
001048d1je 0x1048ee
001048d3mov rax, [r12+24]
001048d8mov rdi, r15
001048dbmov rsi, r14
001048demov rdx, rbx
001048e1add rsp, 8
001048e5pop rbx
001048e6pop r12
001048e8pop r14
001048eapop r15
001048ecjmp rax
001048ee
001048eeloc_1048ee:
001048eexor eax, eax
001048f0
001048f0loc_1048f0:
001048f0add rsp, 8
001048f4pop rbx
001048f5pop r12
001048f7pop r14
001048f9pop r15
001048fbret
001048a0
001048a0core::fmt::Formatter::pad_integral::write_prefix:
001048a0push r15
001048a2push r14
001048a4push r12
001048a6push rbx
001048a7push rax
001048a8mov rbx, r8
001048abmov r14, rcx
001048aemov r12, rsi
001048b1mov r15, rdi
001048b4cmp edx, 0x110000
001048baje 0x1048ce
001048bcmov rdi, r15
001048bfmov esi, edx
001048c1call [r12+32]
001048c6mov ecx, eax
001048c8mov al, 1
001048catest cl, cl
001048ccjne 0x1048f0
001048ce
001048celoc_1048ce:
001048cetest r14, r14
001048d1je 0x1048ee
001048d3mov rax, [r12+24]
001048d8mov rdi, r15
001048dbmov rsi, r14
001048demov rdx, rbx
001048e1add rsp, 8
001048e5pop rbx
001048e6pop r12
001048e8pop r14
001048eapop r15
001048ecjmp rax
001048ee
001048eeloc_1048ee:
001048eexor eax, eax
001048f0
001048f0loc_1048f0:
001048f0add rsp, 8
001048f4pop rbx
001048f5pop r12
001048f7pop r14
001048f9pop r15
001048fbret
001048a0
001048fc
001048fc // align 0x10
001048fc // align 0x10
00104900
00104900core::num::dec2flt::decimal::Decimal::right_shift:
00104900push rbx
00104901mov rcx, rsi
00104904and ecx, 63
00104907mov rsi, [rdi]
0010490alea r8, [rsi-1]
0010490exor eax, eax
00104910xor edx, edx
00104912nop [rax+rax]
00104920
00104920loc_104920:
00104920cmp rsi, rax
00104923je 0x10496e
00104925cmp rax, 768
0010492bje 0x104abc
00104931lea rdx, [rdx+4*rdx]
00104935movzx r9l, [rdi+rax+8]
0010493blea rdx, [r9+2*rdx]
0010493fmov r9, rdx
00104942shr r9, cl
00104945test r9, r9
00104948jne 0x104987
0010494acmp r8, rax
0010494dje 0x10496e
0010494flea rdx, [rdx+4*rdx]
00104953movzx r9l, [rdi+rax+9]
00104959lea rdx, [r9+2*rdx]
0010495dadd rax, 2
00104961mov r9, rdx
00104964shr r9, cl
00104967test r9, r9
0010496aje 0x104920
0010496cjmp 0x1049a5
0010496e
0010496eloc_10496e:
0010496etest rdx, rdx
00104971je 0x104a3e
00104977mov rax, rdx
0010497ashr rax, cl
0010497dtest rax, rax
00104980je 0x10498c
00104982mov rax, rsi
00104985jmp 0x1049a5
00104987
00104987loc_104987:
00104987inc rax
0010498ajmp 0x1049a5
0010498c
0010498cloc_10498c:
0010498cmov rax, rsi
0010498fnop
00104990
00104990loc_104990:
00104990add rdx, rdx
00104993lea rdx, [rdx+4*rdx]
00104997inc rax
0010499amov r8, rdx
0010499dshr r8, cl
001049a0test r8, r8
001049a3je 0x104990
001049a5
001049a5loc_1049a5:
001049a5mov r8l, [rdi+776]
001049acsub r8l, eax
001049afinc r8l
001049b2mov [rdi+776], r8l
001049b9cmp r8l, -2047
001049c0jge 0x1049dc
001049c2mov [rdi], 0
001049c9mov [rdi+776], 0
001049d3mov [rdi+780], 0
001049dapop rbx
001049dbret
001049dc
001049dcloc_1049dc:
001049dcmov r9, -1
001049e3shl r9, cl
001049e6not r9
001049e9mov r8, rsi
001049ecsub r8, rax
001049efjbe 0x104a40
001049f1mov r10l, 8
001049f7nop [rax+rax]
00104a00
00104a00loc_104a00:
00104a00cmp rax, 768
00104a06jae 0x104ad4
00104a0cmov r11, rdx
00104a0fshr r11, cl
00104a12and rdx, r9
00104a15lea rdx, [rdx+4*rdx]
00104a19movzx ebx, [rdi+rax+8]
00104a1einc rax
00104a21lea rdx, [rbx+2*rdx]
00104a25mov [rdi+r10], r11b
00104a29inc r10
00104a2ccmp rsi, rax
00104a2fjne 0x104a00
00104a31test rdx, rdx
00104a34jne 0x104a67
00104a36mov [rdi], r8
00104a39test r8, r8
00104a3cjne 0x104a86
00104a3e
00104a3eloc_104a3e:
00104a3epop rbx
00104a3fret
00104a40
00104a40loc_104a40:
00104a40test rdx, rdx
00104a43je 0x104ab3
00104a45xor r8l, r8l
00104a48jmp 0x104a67
00104a4a
00104a4a 66 0f 1f 44 00 00 f..D..
00104a50
00104a50loc_104a50:
00104a50mov [rdi+r8+8], al
00104a55inc r8
00104a58
00104a58loc_104a58:
00104a58and rdx, r9
00104a5badd rdx, rdx
00104a5elea rdx, [rdx+4*rdx]
00104a62test rdx, rdx
00104a65je 0x104a83
00104a67
00104a67loc_104a67:
00104a67mov rax, rdx
00104a6ashr rax, cl
00104a6dcmp r8, 768
00104a74jb 0x104a50
00104a76test al, al
00104a78je 0x104a58
00104a7amov [rdi+780], 1
00104a81jmp 0x104a58
00104a83
00104a83loc_104a83:
00104a83mov [rdi], r8
00104a86
00104a86loc_104a86:
00104a86cmp r8, 768
00104a8dja 0x104aea
00104a8fdec r8
00104a92nop [rax+rax]
00104aa0
00104aa0loc_104aa0:
00104aa0cmp [rdi+r8+8], 0
00104aa6jne 0x104a3e
00104aa8mov [rdi], r8
00104aabadd r8, -1
00104aafjb 0x104aa0
00104ab1jmp 0x104a3e
00104ab3
00104ab3loc_104ab3:
00104ab3mov [rdi], 0
00104abapop rbx
00104abbret
00104abc
00104abcloc_104abc:
00104abclea rdx, [rip+0xe5cad]
00104ac3mov edi, 768
00104ac8mov esi, 768
00104acdcall core::panicking::panic_bounds_check
00104ad2ud2
00104ad4
00104ad4loc_104ad4:
00104ad4lea rdx, [rip+0xe5cad]
00104adbmov esi, 768
00104ae0mov rdi, rax
00104ae3call core::panicking::panic_bounds_check
00104ae8ud2
00104aea
00104aealoc_104aea:
00104aeadec r8
00104aedlea rdx, [rip+0xe5c4c]
00104af4mov esi, 768
00104af9mov rdi, r8
00104afccall core::panicking::panic_bounds_check
00104b01ud2
00104900
00104900core::num::dec2flt::decimal::Decimal::right_shift:
00104900push rbx
00104901mov rcx, rsi
00104904and ecx, 63
00104907mov rsi, [rdi]
0010490alea r8, [rsi-1]
0010490exor eax, eax
00104910xor edx, edx
00104912nop [rax+rax]
00104920
00104920loc_104920:
00104920cmp rsi, rax
00104923je 0x10496e
00104925cmp rax, 768
0010492bje 0x104abc
00104931lea rdx, [rdx+4*rdx]
00104935movzx r9l, [rdi+rax+8]
0010493blea rdx, [r9+2*rdx]
0010493fmov r9, rdx
00104942shr r9, cl
00104945test r9, r9
00104948jne 0x104987
0010494acmp r8, rax
0010494dje 0x10496e
0010494flea rdx, [rdx+4*rdx]
00104953movzx r9l, [rdi+rax+9]
00104959lea rdx, [r9+2*rdx]
0010495dadd rax, 2
00104961mov r9, rdx
00104964shr r9, cl
00104967test r9, r9
0010496aje 0x104920
0010496cjmp 0x1049a5
0010496e
0010496eloc_10496e:
0010496etest rdx, rdx
00104971je 0x104a3e
00104977mov rax, rdx
0010497ashr rax, cl
0010497dtest rax, rax
00104980je 0x10498c
00104982mov rax, rsi
00104985jmp 0x1049a5
00104987
00104987loc_104987:
00104987inc rax
0010498ajmp 0x1049a5
0010498c
0010498cloc_10498c:
0010498cmov rax, rsi
0010498fnop
00104990
00104990loc_104990:
00104990add rdx, rdx
00104993lea rdx, [rdx+4*rdx]
00104997inc rax
0010499amov r8, rdx
0010499dshr r8, cl
001049a0test r8, r8
001049a3je 0x104990
001049a5
001049a5loc_1049a5:
001049a5mov r8l, [rdi+776]
001049acsub r8l, eax
001049afinc r8l
001049b2mov [rdi+776], r8l
001049b9cmp r8l, -2047
001049c0jge 0x1049dc
001049c2mov [rdi], 0
001049c9mov [rdi+776], 0
001049d3mov [rdi+780], 0
001049dapop rbx
001049dbret
001049dc
001049dcloc_1049dc:
001049dcmov r9, -1
001049e3shl r9, cl
001049e6not r9
001049e9mov r8, rsi
001049ecsub r8, rax
001049efjbe 0x104a40
001049f1mov r10l, 8
001049f7nop [rax+rax]
00104a00
00104a00loc_104a00:
00104a00cmp rax, 768
00104a06jae 0x104ad4
00104a0cmov r11, rdx
00104a0fshr r11, cl
00104a12and rdx, r9
00104a15lea rdx, [rdx+4*rdx]
00104a19movzx ebx, [rdi+rax+8]
00104a1einc rax
00104a21lea rdx, [rbx+2*rdx]
00104a25mov [rdi+r10], r11b
00104a29inc r10
00104a2ccmp rsi, rax
00104a2fjne 0x104a00
00104a31test rdx, rdx
00104a34jne 0x104a67
00104a36mov [rdi], r8
00104a39test r8, r8
00104a3cjne 0x104a86
00104a3e
00104a3eloc_104a3e:
00104a3epop rbx
00104a3fret
00104a40
00104a40loc_104a40:
00104a40test rdx, rdx
00104a43je 0x104ab3
00104a45xor r8l, r8l
00104a48jmp 0x104a67
00104a4a
00104a4a 66 0f 1f 44 00 00 f..D..
00104a50
00104a50loc_104a50:
00104a50mov [rdi+r8+8], al
00104a55inc r8
00104a58
00104a58loc_104a58:
00104a58and rdx, r9
00104a5badd rdx, rdx
00104a5elea rdx, [rdx+4*rdx]
00104a62test rdx, rdx
00104a65je 0x104a83
00104a67
00104a67loc_104a67:
00104a67mov rax, rdx
00104a6ashr rax, cl
00104a6dcmp r8, 768
00104a74jb 0x104a50
00104a76test al, al
00104a78je 0x104a58
00104a7amov [rdi+780], 1
00104a81jmp 0x104a58
00104a83
00104a83loc_104a83:
00104a83mov [rdi], r8
00104a86
00104a86loc_104a86:
00104a86cmp r8, 768
00104a8dja 0x104aea
00104a8fdec r8
00104a92nop [rax+rax]
00104aa0
00104aa0loc_104aa0:
00104aa0cmp [rdi+r8+8], 0
00104aa6jne 0x104a3e
00104aa8mov [rdi], r8
00104aabadd r8, -1
00104aafjb 0x104aa0
00104ab1jmp 0x104a3e
00104ab3
00104ab3loc_104ab3:
00104ab3mov [rdi], 0
00104abapop rbx
00104abbret
00104abc
00104abcloc_104abc:
00104abclea rdx, [rip+0xe5cad]
00104ac3mov edi, 768
00104ac8mov esi, 768
00104acdcall core::panicking::panic_bounds_check
00104ad2ud2
00104ad4
00104ad4loc_104ad4:
00104ad4lea rdx, [rip+0xe5cad]
00104adbmov esi, 768
00104ae0mov rdi, rax
00104ae3call core::panicking::panic_bounds_check
00104ae8ud2
00104aea
00104aealoc_104aea:
00104aeadec r8
00104aedlea rdx, [rip+0xe5c4c]
00104af4mov esi, 768
00104af9mov rdi, r8
00104afccall core::panicking::panic_bounds_check
00104b01ud2
00104900
00104b03
00104b03 // align 0x10
00104b03 // align 0x10
00104b10
00104b10core::slice::index::slice_end_index_len_fail:
00104b10sub rsp, 104
00104b14mov [rsp+8], rdi
00104b19mov [rsp+16], rsi
00104b1elea rax, [rsp+8]
00104b23mov [rsp+24], rax
00104b28lea rax, [rip-2751]
00104b2fmov [rsp+32], rax
00104b34lea rcx, [rsp+16]
00104b39mov [rsp+40], rcx
00104b3emov [rsp+48], rax
00104b43lea rax, [rip+0xe636e]
00104b4amov [rsp+56], rax
00104b4fmov [rsp+64], 2
00104b58mov [rsp+88], 0
00104b61lea rax, [rsp+24]
00104b66mov [rsp+72], rax
00104b6bmov [rsp+80], 2
00104b74lea rdi, [rsp+56]
00104b79mov rsi, rdx
00104b7ccall core::panicking::panic_fmt
00104b81ud2
00104b10
00104b10core::slice::index::slice_end_index_len_fail:
00104b10sub rsp, 104
00104b14mov [rsp+8], rdi
00104b19mov [rsp+16], rsi
00104b1elea rax, [rsp+8]
00104b23mov [rsp+24], rax
00104b28lea rax, [rip-2751]
00104b2fmov [rsp+32], rax
00104b34lea rcx, [rsp+16]
00104b39mov [rsp+40], rcx
00104b3emov [rsp+48], rax
00104b43lea rax, [rip+0xe636e]
00104b4amov [rsp+56], rax
00104b4fmov [rsp+64], 2
00104b58mov [rsp+88], 0
00104b61lea rax, [rsp+24]
00104b66mov [rsp+72], rax
00104b6bmov [rsp+80], 2
00104b74lea rdi, [rsp+56]
00104b79mov rsi, rdx
00104b7ccall core::panicking::panic_fmt
00104b81ud2
00104b10
00104b83
00104b83 // align 0x10
00104b83 // align 0x10
00104b90
00104b90core::fmt::Formatter::pad:
00104b90push rbp
00104b91push r15
00104b93push r14
00104b95push r13
00104b97push r12
00104b99push rbx
00104b9asub rsp, 24
00104b9emov r12, rdx
00104ba1mov r14, rsi
00104ba4mov r15, rdi
00104ba7mov rax, [rdi]
00104baamov rcx, [rdi+16]
00104baemov rdx, rax
00104bb1or rdx, rcx
00104bb4je 0x104dd9
00104bbatest rcx, rcx
00104bbdje 0x104d07
00104bc3mov rdi, [r15+24]
00104bc7lea rsi, [r14+r12]
00104bcbinc rdi
00104bcexor ecx, ecx
00104bd0mov rdx, r14
00104bd3jmp 0x104bfa
00104bd5nop [rax+rax]
00104be0
00104be0loc_104be0:
00104be0lea r10, [rdx+1]
00104be4
00104be4loc_104be4:
00104be4sub rcx, rdx
00104be7add rcx, r10
00104beamov rdx, r10
00104bedcmp r8l, 0x110000
00104bf4je 0x104d07
00104bfa
00104bfaloc_104bfa:
00104bfadec rdi
00104bfdje 0x104c95
00104c03cmp rdx, rsi
00104c06je 0x104d07
00104c0cmovzx r8l, [rdx]
00104c10test r8b, r8b
00104c13jns 0x104be0
00104c15mov r9l, r8l
00104c18and r9l, 31
00104c1cmovzx ebx, [rdx+1]
00104c20and ebx, 63
00104c23cmp r8b, -33
00104c27jbe 0x104c6f
00104c29movzx r11l, [rdx+2]
00104c2eshl ebx, 6
00104c31and r11l, 63
00104c35or r11l, ebx
00104c38cmp r8b, -16
00104c3cjb 0x104c82
00104c3emovzx r8l, [rdx+3]
00104c43and r9l, 7
00104c47shl r9l, 18
00104c4bshl r11l, 6
00104c4fand r8l, 63
00104c53or r8l, r11l
00104c56or r8l, r9l
00104c59cmp r8l, 0x110000
00104c60je 0x104d07
00104c66lea r10, [rdx+4]
00104c6ajmp 0x104be4
00104c6f
00104c6floc_104c6f:
00104c6flea r10, [rdx+2]
00104c73shl r9l, 6
00104c77or r9l, ebx
00104c7amov r8l, r9l
00104c7djmp 0x104be4
00104c82
00104c82loc_104c82:
00104c82lea r10, [rdx+3]
00104c86shl r9l, 12
00104c8aor r11l, r9l
00104c8dmov r8l, r11l
00104c90jmp 0x104be4
00104c95
00104c95loc_104c95:
00104c95cmp rdx, rsi
00104c98je 0x104d07
00104c9amovzx esi, [rdx]
00104c9dtest sil, sil
00104ca0jns 0x104ce2
00104ca2cmp sil, -32
00104ca6jb 0x104ce2
00104ca8cmp sil, -16
00104cacjb 0x104ce2
00104caemovzx edi, [rdx+1]
00104cb2and edi, 63
00104cb5movzx r8l, [rdx+2]
00104cbaand r8l, 63
00104cbemovzx edx, [rdx+3]
00104cc2and esi, 7
00104cc5shl esi, 18
00104cc8shl edi, 12
00104ccbshl r8l, 6
00104ccfor r8l, edi
00104cd2and edx, 63
00104cd5or edx, r8l
00104cd8or edx, esi
00104cdacmp edx, 0x110000
00104ce0je 0x104d07
00104ce2
00104ce2loc_104ce2:
00104ce2test rcx, rcx
00104ce5je 0x104cf9
00104ce7cmp rcx, r12
00104ceajae 0x104cf7
00104ceccmp [r14+rcx], -64
00104cf1jge 0x104cf9
00104cf3
00104cf3loc_104cf3:
00104cf3xor edx, edx
00104cf5jmp 0x104cfc
00104cf7
00104cf7loc_104cf7:
00104cf7jne 0x104cf3
00104cf9
00104cf9loc_104cf9:
00104cf9mov rdx, r14
00104cfc
00104cfcloc_104cfc:
00104cfctest rdx, rdx
00104cffcmovne r12, rcx
00104d03cmovne r14, rdx
00104d07
00104d07loc_104d07:
00104d07test rax, rax
00104d0aje 0x104dd9
00104d10mov r13, [r15+8]
00104d14cmp r12, 32
00104d18jae 0x104d32
00104d1amov rax, r12
00104d1dtest r12, r12
00104d20je 0x104db1
00104d26cmp r12, 1
00104d2ajne 0x104d3f
00104d2cxor eax, eax
00104d2exor ecx, ecx
00104d30jmp 0x104d9c
00104d32
00104d32loc_104d32:
00104d32mov rdi, r14
00104d35mov rsi, r12
00104d38call core::str::count::do_count_chars
00104d3djmp 0x104db1
00104d3f
00104d3floc_104d3f:
00104d3fmov rcx, r12
00104d42and rcx, -2
00104d46pxor x0, x0
00104d4axor eax, eax
00104d4cmovdqa x1, [rip-0xcc514]
00104d54movdqa x2, [rip-0xcc50c]
00104d5cnop [rax]
00104d60
00104d60loc_104d60:
00104d60movzx edx, [r14+rax]
00104d65movd x3, edx
00104d69pcmpgtb x3, x1
00104d6dpunpcklbw x3, x3
00104d71pshuflw x3, x3, -44
00104d76pshufd x3, x3, -44
00104d7bpand x3, x2
00104d7fpaddq x0, x3
00104d83add rax, 2
00104d87cmp rcx, rax
00104d8ajne 0x104d60
00104d8cpshufd x1, x0, -18
00104d91paddq x1, x0
00104d95movq rax, x1
00104d9ajmp 0x104dac
00104d9c
00104d9cloc_104d9c:
00104d9cxor edx, edx
00104d9ecmp [r14+rcx], -64
00104da3setge dl
00104da6add rax, rdx
00104da9inc rcx
00104dac
00104dacloc_104dac:
00104daccmp r12, rcx
00104dafjne 0x104d9c
00104db1
00104db1loc_104db1:
00104db1sub r13, rax
00104db4jbe 0x104dd9
00104db6movzx eax, [r15+56]
00104dbblea rcx, [rip-0xc772e]
00104dc2movsxd rax, [rcx+4*rax]
00104dc6add rax, rcx
00104dc9mov [rsp+16], r12
00104dcejmp rax
00104dd0mov [rsp+8], r13
00104dd5xor ebx, ebx
00104dd7jmp 0x104e18
00104dd9
00104dd9loc_104dd9:
00104dd9mov rdi, [r15+32]
00104dddmov rax, [r15+40]
00104de1mov rax, [rax+24]
00104de5mov rsi, r14
00104de8mov rdx, r12
00104debadd rsp, 24
00104defpop rbx
00104df0pop r12
00104df2pop r13
00104df4pop r14
00104df6pop r15
00104df8pop rbp
00104df9jmp rax
00104dfbmov rbx, r13
00104dfexor eax, eax
00104e00mov [rsp+8], rax
00104e05jmp 0x104e18
00104e07mov rbx, r13
00104e0ashr rbx, 1
00104e0dinc r13
00104e10shr r13, 1
00104e13mov [rsp+8], r13
00104e18
00104e18loc_104e18:
00104e18mov r12, [r15+32]
00104e1cmov r13, [r15+40]
00104e20mov ebp, [r15+48]
00104e24inc rbx
00104e27nop [rax+rax]
00104e30
00104e30loc_104e30:
00104e30mov rdi, r12
00104e33dec rbx
00104e36je 0x104e46
00104e38mov esi, ebp
00104e3acall [r13+32]
00104e3etest al, al
00104e40je 0x104e30
00104e42mov al, 1
00104e44jmp 0x104e99
00104e46
00104e46loc_104e46:
00104e46mov rsi, r14
00104e49mov rdx, [rsp+16]
00104e4ecall [r13+24]
00104e52mov ecx, eax
00104e54mov al, 1
00104e56test cl, cl
00104e58jne 0x104e99
00104e5amov r14, [rsp+8]
00104e5fneg r14
00104e62mov rbx, -1
00104e69nop [rax]
00104e70
00104e70loc_104e70:
00104e70lea rax, [r14+rbx]
00104e74cmp rax, -1
00104e78je 0x104e8c
00104e7amov rdi, r12
00104e7dmov esi, ebp
00104e7fcall [r13+32]
00104e83inc rbx
00104e86test al, al
00104e88je 0x104e70
00104e8ajmp 0x104e91
00104e8c
00104e8cloc_104e8c:
00104e8cmov rbx, [rsp+8]
00104e91
00104e91loc_104e91:
00104e91cmp rbx, [rsp+8]
00104e96setb al
00104e99
00104e99loc_104e99:
00104e99add rsp, 24
00104e9dpop rbx
00104e9epop r12
00104ea0pop r13
00104ea2pop r14
00104ea4pop r15
00104ea6pop rbp
00104ea7ret
00104b90
00104b90core::fmt::Formatter::pad:
00104b90push rbp
00104b91push r15
00104b93push r14
00104b95push r13
00104b97push r12
00104b99push rbx
00104b9asub rsp, 24
00104b9emov r12, rdx
00104ba1mov r14, rsi
00104ba4mov r15, rdi
00104ba7mov rax, [rdi]
00104baamov rcx, [rdi+16]
00104baemov rdx, rax
00104bb1or rdx, rcx
00104bb4je 0x104dd9
00104bbatest rcx, rcx
00104bbdje 0x104d07
00104bc3mov rdi, [r15+24]
00104bc7lea rsi, [r14+r12]
00104bcbinc rdi
00104bcexor ecx, ecx
00104bd0mov rdx, r14
00104bd3jmp 0x104bfa
00104bd5nop [rax+rax]
00104be0
00104be0loc_104be0:
00104be0lea r10, [rdx+1]
00104be4
00104be4loc_104be4:
00104be4sub rcx, rdx
00104be7add rcx, r10
00104beamov rdx, r10
00104bedcmp r8l, 0x110000
00104bf4je 0x104d07
00104bfa
00104bfaloc_104bfa:
00104bfadec rdi
00104bfdje 0x104c95
00104c03cmp rdx, rsi
00104c06je 0x104d07
00104c0cmovzx r8l, [rdx]
00104c10test r8b, r8b
00104c13jns 0x104be0
00104c15mov r9l, r8l
00104c18and r9l, 31
00104c1cmovzx ebx, [rdx+1]
00104c20and ebx, 63
00104c23cmp r8b, -33
00104c27jbe 0x104c6f
00104c29movzx r11l, [rdx+2]
00104c2eshl ebx, 6
00104c31and r11l, 63
00104c35or r11l, ebx
00104c38cmp r8b, -16
00104c3cjb 0x104c82
00104c3emovzx r8l, [rdx+3]
00104c43and r9l, 7
00104c47shl r9l, 18
00104c4bshl r11l, 6
00104c4fand r8l, 63
00104c53or r8l, r11l
00104c56or r8l, r9l
00104c59cmp r8l, 0x110000
00104c60je 0x104d07
00104c66lea r10, [rdx+4]
00104c6ajmp 0x104be4
00104c6f
00104c6floc_104c6f:
00104c6flea r10, [rdx+2]
00104c73shl r9l, 6
00104c77or r9l, ebx
00104c7amov r8l, r9l
00104c7djmp 0x104be4
00104c82
00104c82loc_104c82:
00104c82lea r10, [rdx+3]
00104c86shl r9l, 12
00104c8aor r11l, r9l
00104c8dmov r8l, r11l
00104c90jmp 0x104be4
00104c95
00104c95loc_104c95:
00104c95cmp rdx, rsi
00104c98je 0x104d07
00104c9amovzx esi, [rdx]
00104c9dtest sil, sil
00104ca0jns 0x104ce2
00104ca2cmp sil, -32
00104ca6jb 0x104ce2
00104ca8cmp sil, -16
00104cacjb 0x104ce2
00104caemovzx edi, [rdx+1]
00104cb2and edi, 63
00104cb5movzx r8l, [rdx+2]
00104cbaand r8l, 63
00104cbemovzx edx, [rdx+3]
00104cc2and esi, 7
00104cc5shl esi, 18
00104cc8shl edi, 12
00104ccbshl r8l, 6
00104ccfor r8l, edi
00104cd2and edx, 63
00104cd5or edx, r8l
00104cd8or edx, esi
00104cdacmp edx, 0x110000
00104ce0je 0x104d07
00104ce2
00104ce2loc_104ce2:
00104ce2test rcx, rcx
00104ce5je 0x104cf9
00104ce7cmp rcx, r12
00104ceajae 0x104cf7
00104ceccmp [r14+rcx], -64
00104cf1jge 0x104cf9
00104cf3
00104cf3loc_104cf3:
00104cf3xor edx, edx
00104cf5jmp 0x104cfc
00104cf7
00104cf7loc_104cf7:
00104cf7jne 0x104cf3
00104cf9
00104cf9loc_104cf9:
00104cf9mov rdx, r14
00104cfc
00104cfcloc_104cfc:
00104cfctest rdx, rdx
00104cffcmovne r12, rcx
00104d03cmovne r14, rdx
00104d07
00104d07loc_104d07:
00104d07test rax, rax
00104d0aje 0x104dd9
00104d10mov r13, [r15+8]
00104d14cmp r12, 32
00104d18jae 0x104d32
00104d1amov rax, r12
00104d1dtest r12, r12
00104d20je 0x104db1
00104d26cmp r12, 1
00104d2ajne 0x104d3f
00104d2cxor eax, eax
00104d2exor ecx, ecx
00104d30jmp 0x104d9c
00104d32
00104d32loc_104d32:
00104d32mov rdi, r14
00104d35mov rsi, r12
00104d38call core::str::count::do_count_chars
00104d3djmp 0x104db1
00104d3f
00104d3floc_104d3f:
00104d3fmov rcx, r12
00104d42and rcx, -2
00104d46pxor x0, x0
00104d4axor eax, eax
00104d4cmovdqa x1, [rip-0xcc514]
00104d54movdqa x2, [rip-0xcc50c]
00104d5cnop [rax]
00104d60
00104d60loc_104d60:
00104d60movzx edx, [r14+rax]
00104d65movd x3, edx
00104d69pcmpgtb x3, x1
00104d6dpunpcklbw x3, x3
00104d71pshuflw x3, x3, -44
00104d76pshufd x3, x3, -44
00104d7bpand x3, x2
00104d7fpaddq x0, x3
00104d83add rax, 2
00104d87cmp rcx, rax
00104d8ajne 0x104d60
00104d8cpshufd x1, x0, -18
00104d91paddq x1, x0
00104d95movq rax, x1
00104d9ajmp 0x104dac
00104d9c
00104d9cloc_104d9c:
00104d9cxor edx, edx
00104d9ecmp [r14+rcx], -64
00104da3setge dl
00104da6add rax, rdx
00104da9inc rcx
00104dac
00104dacloc_104dac:
00104daccmp r12, rcx
00104dafjne 0x104d9c
00104db1
00104db1loc_104db1:
00104db1sub r13, rax
00104db4jbe 0x104dd9
00104db6movzx eax, [r15+56]
00104dbblea rcx, [rip-0xc772e]
00104dc2movsxd rax, [rcx+4*rax]
00104dc6add rax, rcx
00104dc9mov [rsp+16], r12
00104dcejmp rax
00104dd0mov [rsp+8], r13
00104dd5xor ebx, ebx
00104dd7jmp 0x104e18
00104dd9
00104dd9loc_104dd9:
00104dd9mov rdi, [r15+32]
00104dddmov rax, [r15+40]
00104de1mov rax, [rax+24]
00104de5mov rsi, r14
00104de8mov rdx, r12
00104debadd rsp, 24
00104defpop rbx
00104df0pop r12
00104df2pop r13
00104df4pop r14
00104df6pop r15
00104df8pop rbp
00104df9jmp rax
00104dfbmov rbx, r13
00104dfexor eax, eax
00104e00mov [rsp+8], rax
00104e05jmp 0x104e18
00104e07mov rbx, r13
00104e0ashr rbx, 1
00104e0dinc r13
00104e10shr r13, 1
00104e13mov [rsp+8], r13
00104e18
00104e18loc_104e18:
00104e18mov r12, [r15+32]
00104e1cmov r13, [r15+40]
00104e20mov ebp, [r15+48]
00104e24inc rbx
00104e27nop [rax+rax]
00104e30
00104e30loc_104e30:
00104e30mov rdi, r12
00104e33dec rbx
00104e36je 0x104e46
00104e38mov esi, ebp
00104e3acall [r13+32]
00104e3etest al, al
00104e40je 0x104e30
00104e42mov al, 1
00104e44jmp 0x104e99
00104e46
00104e46loc_104e46:
00104e46mov rsi, r14
00104e49mov rdx, [rsp+16]
00104e4ecall [r13+24]
00104e52mov ecx, eax
00104e54mov al, 1
00104e56test cl, cl
00104e58jne 0x104e99
00104e5amov r14, [rsp+8]
00104e5fneg r14
00104e62mov rbx, -1
00104e69nop [rax]
00104e70
00104e70loc_104e70:
00104e70lea rax, [r14+rbx]
00104e74cmp rax, -1
00104e78je 0x104e8c
00104e7amov rdi, r12
00104e7dmov esi, ebp
00104e7fcall [r13+32]
00104e83inc rbx
00104e86test al, al
00104e88je 0x104e70
00104e8ajmp 0x104e91
00104e8c
00104e8cloc_104e8c:
00104e8cmov rbx, [rsp+8]
00104e91
00104e91loc_104e91:
00104e91cmp rbx, [rsp+8]
00104e96setb al
00104e99
00104e99loc_104e99:
00104e99add rsp, 24
00104e9dpop rbx
00104e9epop r12
00104ea0pop r13
00104ea2pop r14
00104ea4pop r15
00104ea6pop rbp
00104ea7ret
00104b90
00104ea8
00104ea8 // align 0x10
00104ea8 // align 0x10
00104eb0
00104eb0core::panicking::panic:
00104eb0sub rsp, 72
00104eb4mov [rsp+8], rdi
00104eb9mov [rsp+16], rsi
00104ebelea rax, [rsp+8]
00104ec3mov [rsp+24], rax
00104ec8mov [rsp+32], 1
00104ed1lea rax, [rip-0x73be0]
00104ed8mov [rsp+40], rax
00104eddxorps x0, x0
00104ee0movups [rsp+48], x0
00104ee5lea rdi, [rsp+24]
00104eeamov rsi, rdx
00104eedcall core::panicking::panic_fmt
00104ef2ud2
00104eb0
00104eb0core::panicking::panic:
00104eb0sub rsp, 72
00104eb4mov [rsp+8], rdi
00104eb9mov [rsp+16], rsi
00104ebelea rax, [rsp+8]
00104ec3mov [rsp+24], rax
00104ec8mov [rsp+32], 1
00104ed1lea rax, [rip-0x73be0]
00104ed8mov [rsp+40], rax
00104eddxorps x0, x0
00104ee0movups [rsp+48], x0
00104ee5lea rdi, [rsp+24]
00104eeamov rsi, rdx
00104eedcall core::panicking::panic_fmt
00104ef2ud2
00104eb0
00104ef4
00104ef4 // align 0x10
00104ef4 // align 0x10
00104f00
00104f00core::panicking::assert_failed:
00104f00sub rsp, 24
00104f04mov r9, rdx
00104f07mov [rsp+8], rdi
00104f0cmov [rsp+16], rsi
00104f11lea rax, [rip+0xe5918]
00104f18mov [rsp], rax
00104f1clea rdx, [rip+0xe5d7d]
00104f23lea rsi, [rsp+8]
00104f28lea rcx, [rsp+16]
00104f2dxor edi, edi
00104f2fmov r8, rdx
00104f32call core::panicking::assert_failed_inner
00104f37ud2
00104f00
00104f00core::panicking::assert_failed:
00104f00sub rsp, 24
00104f04mov r9, rdx
00104f07mov [rsp+8], rdi
00104f0cmov [rsp+16], rsi
00104f11lea rax, [rip+0xe5918]
00104f18mov [rsp], rax
00104f1clea rdx, [rip+0xe5d7d]
00104f23lea rsi, [rsp+8]
00104f28lea rcx, [rsp+16]
00104f2dxor edi, edi
00104f2fmov r8, rdx
00104f32call core::panicking::assert_failed_inner
00104f37ud2
00104f00
00104f39
00104f39 // align 0x10
00104f39 // align 0x10
00104f40
00104f40core::panicking::assert_failed_inner:
00104f40sub rsp, 216
00104f47mov rax, rsi
00104f4amov rsi, [rsp+224]
00104f52mov [rsp], rax
00104f56mov [rsp+8], rdx
00104f5bmov [rsp+16], rcx
00104f60mov [rsp+24], r8
00104f65test dil, dil
00104f68lea rax, [rip-0xc15ba]
00104f6flea rcx, [rip-0xad3f1]
00104f76cmove rcx, rax
00104f7amov [rsp+32], rcx
00104f7fmov [rsp+40], 2
00104f88cmp [r9], 0
00104f8cjne 0x105006
00104f8elea rax, [rsp+32]
00104f93mov [rsp+48], rax
00104f98lea rax, [rip+305]
00104f9fmov [rsp+56], rax
00104fa4mov rax, rsp
00104fa7mov [rsp+64], rax
00104faclea rax, [rip+317]
00104fb3mov [rsp+72], rax
00104fb8lea rcx, [rsp+16]
00104fbdmov [rsp+80], rcx
00104fc2mov [rsp+88], rax
00104fc7lea rax, [rip+0xe5cf2]
00104fcemov [rsp+112], rax
00104fd3mov [rsp+120], 3
00104fdcmov [rsp+144], 0
00104fe8lea rax, [rsp+48]
00104fedmov [rsp+128], rax
00104ff5mov [rsp+136], 3
00105001jmp 0x1050b8
00105006
00105006loc_105006:
00105006movups x0, [r9]
0010500amovups x1, [r9+16]
0010500fmovups x2, [r9+32]
00105014movaps [rsp+192], x2
0010501cmovaps [rsp+176], x1
00105024movaps [rsp+160], x0
0010502clea rax, [rsp+32]
00105031mov [rsp+48], rax
00105036lea rax, [rip+147]
0010503dmov [rsp+56], rax
00105042lea rax, [rsp+160]
0010504amov [rsp+64], rax
0010504flea rax, [rip+170]
00105056mov [rsp+72], rax
0010505bmov rax, rsp
0010505emov [rsp+80], rax
00105063lea rax, [rip+134]
0010506amov [rsp+88], rax
0010506flea rcx, [rsp+16]
00105074mov [rsp+96], rcx
00105079mov [rsp+104], rax
0010507elea rax, [rip+0xe5c6b]
00105085mov [rsp+112], rax
0010508amov [rsp+120], 4
00105093mov [rsp+144], 0
0010509flea rax, [rsp+48]
001050a4mov [rsp+128], rax
001050acmov [rsp+136], 4
001050b8
001050b8loc_1050b8:
001050b8lea rdi, [rsp+112]
001050bdcall core::panicking::panic_fmt
001050c2ud2
00104f40
00104f40core::panicking::assert_failed_inner:
00104f40sub rsp, 216
00104f47mov rax, rsi
00104f4amov rsi, [rsp+224]
00104f52mov [rsp], rax
00104f56mov [rsp+8], rdx
00104f5bmov [rsp+16], rcx
00104f60mov [rsp+24], r8
00104f65test dil, dil
00104f68lea rax, [rip-0xc15ba]
00104f6flea rcx, [rip-0xad3f1]
00104f76cmove rcx, rax
00104f7amov [rsp+32], rcx
00104f7fmov [rsp+40], 2
00104f88cmp [r9], 0
00104f8cjne 0x105006
00104f8elea rax, [rsp+32]
00104f93mov [rsp+48], rax
00104f98lea rax, [rip+305]
00104f9fmov [rsp+56], rax
00104fa4mov rax, rsp
00104fa7mov [rsp+64], rax
00104faclea rax, [rip+317]
00104fb3mov [rsp+72], rax
00104fb8lea rcx, [rsp+16]
00104fbdmov [rsp+80], rcx
00104fc2mov [rsp+88], rax
00104fc7lea rax, [rip+0xe5cf2]
00104fcemov [rsp+112], rax
00104fd3mov [rsp+120], 3
00104fdcmov [rsp+144], 0
00104fe8lea rax, [rsp+48]
00104fedmov [rsp+128], rax
00104ff5mov [rsp+136], 3
00105001jmp 0x1050b8
00105006
00105006loc_105006:
00105006movups x0, [r9]
0010500amovups x1, [r9+16]
0010500fmovups x2, [r9+32]
00105014movaps [rsp+192], x2
0010501cmovaps [rsp+176], x1
00105024movaps [rsp+160], x0
0010502clea rax, [rsp+32]
00105031mov [rsp+48], rax
00105036lea rax, [rip+147]
0010503dmov [rsp+56], rax
00105042lea rax, [rsp+160]
0010504amov [rsp+64], rax
0010504flea rax, [rip+170]
00105056mov [rsp+72], rax
0010505bmov rax, rsp
0010505emov [rsp+80], rax
00105063lea rax, [rip+134]
0010506amov [rsp+88], rax
0010506flea rcx, [rsp+16]
00105074mov [rsp+96], rcx
00105079mov [rsp+104], rax
0010507elea rax, [rip+0xe5c6b]
00105085mov [rsp+112], rax
0010508amov [rsp+120], 4
00105093mov [rsp+144], 0
0010509flea rax, [rsp+48]
001050a4mov [rsp+128], rax
001050acmov [rsp+136], 4
001050b8
001050b8loc_1050b8:
001050b8lea rdi, [rsp+112]
001050bdcall core::panicking::panic_fmt
001050c2ud2
00104f40
001050c4
001050c4 // align 0x10
001050c4 // align 0x10
001050d0
001050d0_<&T as core::fmt::Display>::fmt:
001050d0mov rax, rsi
001050d3mov rsi, [rdi]
001050d6mov rdx, [rdi+8]
001050damov rdi, rax
001050ddjmp 0x104b90
001050d0
001050d0_<&T as core::fmt::Display>::fmt:
001050d0mov rax, rsi
001050d3mov rsi, [rdi]
001050d6mov rdx, [rdi+8]
001050damov rdi, rax
001050ddjmp 0x104b90
001050d0
001050e2
001050e2 // align 0x10
001050e2 // align 0x10
001050f0
001050f0_<&T as core::fmt::Debug>::fmt:
001050f0mov rax, [rdi]
001050f3mov rcx, [rdi+8]
001050f7mov rcx, [rcx+24]
001050fbmov rdi, rax
001050fejmp rcx
001050f0
001050f0_<&T as core::fmt::Debug>::fmt:
001050f0mov rax, [rdi]
001050f3mov rcx, [rdi+8]
001050f7mov rcx, [rcx+24]
001050fbmov rdi, rax
001050fejmp rcx
001050f0
00105100
00105100_<core::fmt::Arguments as core::fmt::Display>::fmt:
00105100mov rdx, rdi
00105103mov rdi, [rsi+32]
00105107mov rsi, [rsi+40]
0010510bjmp 0x105110
00105100
00105100_<core::fmt::Arguments as core::fmt::Display>::fmt:
00105100mov rdx, rdi
00105103mov rdi, [rsi+32]
00105107mov rsi, [rsi+40]
0010510bjmp 0x105110
00105100
00105110
00105110core::fmt::write:
00105110push rbp
00105111push r15
00105113push r14
00105115push r13
00105117push r12
00105119push rbx
0010511asub rsp, 72
0010511emov [rsp+56], 32
00105127mov [rsp+64], 3
0010512cmov [rsp+8], 0
00105135mov [rsp+24], 0
0010513emov [rsp+40], rdi
00105143mov [rsp+48], rsi
00105148mov r12, [rdx+32]
0010514ctest r12, r12
0010514fmov [rsp], rdx
00105153je 0x10526c
00105159mov rax, [rdx+40]
0010515dtest rax, rax
00105160je 0x1052ce
00105166mov r13, [rdx]
00105169mov rbp, [rdx+16]
0010516dadd r13, 8
00105171imul r14, rax, 56
00105175xor ebx, ebx
00105177xor r15l, r15l
0010517anop [rax+rax]
00105180
00105180loc_105180:
00105180mov rdx, [r13]
00105184test rdx, rdx
00105187je 0x1051a2
00105189mov rdi, [rsp+40]
0010518emov rax, [rsp+48]
00105193mov rsi, [r13-8]
00105197call [rax+24]
0010519atest al, al
0010519cjne 0x105300
001051a2
001051a2loc_1051a2:
001051a2movzx eax, [r12+rbx+48]
001051a8mov [rsp+64], al
001051acmov rax, [r12+rbx+40]
001051b1mov [rsp+56], rax
001051b6mov rcx, [r12+rbx+16]
001051bbmov rax, [r12+rbx+24]
001051c0test rcx, rcx
001051c3je 0x1051e8
001051c5cmp ecx, 1
001051c8jne 0x1051dc
001051cashl rax, 4
001051celea rcx, [rip-5381]
001051d5cmp [rbp+rax+8], rcx
001051daje 0x1051e0
001051dc
001051dcloc_1051dc:
001051dcxor ecx, ecx
001051dejmp 0x1051ed
001051e0
001051e0loc_1051e0:
001051e0mov rax, [rbp+rax]
001051e5mov rax, [rax]
001051e8
001051e8loc_1051e8:
001051e8mov ecx, 1
001051ed
001051edloc_1051ed:
001051edmov [rsp+8], rcx
001051f2mov [rsp+16], rax
001051f7mov rcx, [r12+rbx]
001051fbmov rax, [r12+rbx+8]
00105200test rcx, rcx
00105203je 0x105228
00105205cmp ecx, 1
00105208jne 0x10521c
0010520ashl rax, 4
0010520elea rcx, [rip-5445]
00105215cmp [rbp+rax+8], rcx
0010521aje 0x105220
0010521c
0010521cloc_10521c:
0010521cxor ecx, ecx
0010521ejmp 0x10522d
00105220
00105220loc_105220:
00105220mov rax, [rbp+rax]
00105225mov rax, [rax]
00105228
00105228loc_105228:
00105228mov ecx, 1
0010522d
0010522dloc_10522d:
0010522dmov [rsp+24], rcx
00105232mov [rsp+32], rax
00105237mov rax, [r12+rbx+32]
0010523cshl rax, 4
00105240mov rdi, [rbp+rax]
00105245lea rsi, [rsp+8]
0010524acall [rbp+rax+8]
0010524etest al, al
00105250jne 0x105300
00105256add r13, 16
0010525aadd rbx, 56
0010525einc r15
00105261cmp r14, rbx
00105264jne 0x105180
0010526ajmp 0x1052d1
0010526c
0010526cloc_10526c:
0010526cmov rbx, [rdx+24]
00105270test rbx, rbx
00105273je 0x1052ce
00105275mov r12, [rdx+16]
00105279mov r13, [rdx]
0010527cshl rbx, 4
00105280xor ebp, ebp
00105282lea r14, [rsp+8]
00105287xor r15l, r15l
0010528anop [rax+rax]
00105290
00105290loc_105290:
00105290mov rdx, [r13+rbp+8]
00105295test rdx, rdx
00105298je 0x1052b0
0010529amov rdi, [rsp+40]
0010529fmov rax, [rsp+48]
001052a4mov rsi, [r13+rbp]
001052a9call [rax+24]
001052actest al, al
001052aejne 0x105300
001052b0
001052b0loc_1052b0:
001052b0mov rdi, [r12+rbp]
001052b4mov rsi, r14
001052b7call [r12+rbp+8]
001052bctest al, al
001052bejne 0x105300
001052c0add rbp, 16
001052c4inc r15
001052c7cmp rbx, rbp
001052cajne 0x105290
001052ccjmp 0x1052d1
001052ce
001052celoc_1052ce:
001052cexor r15l, r15l
001052d1
001052d1loc_1052d1:
001052d1mov rax, [rsp]
001052d5cmp r15, [rax+8]
001052d9jae 0x105304
001052dbmov rax, [rsp]
001052dfmov rax, [rax]
001052e2shl r15, 4
001052e6mov rdi, [rsp+40]
001052ebmov rcx, [rsp+48]
001052f0mov rsi, [rax+r15]
001052f4mov rdx, [rax+r15+8]
001052f9call [rcx+24]
001052fctest al, al
001052feje 0x105304
00105300
00105300loc_105300:
00105300mov al, 1
00105302jmp 0x105306
00105304
00105304loc_105304:
00105304xor eax, eax
00105306
00105306loc_105306:
00105306add rsp, 72
0010530apop rbx
0010530bpop r12
0010530dpop r13
0010530fpop r14
00105311pop r15
00105313pop rbp
00105314ret
00105110
00105110core::fmt::write:
00105110push rbp
00105111push r15
00105113push r14
00105115push r13
00105117push r12
00105119push rbx
0010511asub rsp, 72
0010511emov [rsp+56], 32
00105127mov [rsp+64], 3
0010512cmov [rsp+8], 0
00105135mov [rsp+24], 0
0010513emov [rsp+40], rdi
00105143mov [rsp+48], rsi
00105148mov r12, [rdx+32]
0010514ctest r12, r12
0010514fmov [rsp], rdx
00105153je 0x10526c
00105159mov rax, [rdx+40]
0010515dtest rax, rax
00105160je 0x1052ce
00105166mov r13, [rdx]
00105169mov rbp, [rdx+16]
0010516dadd r13, 8
00105171imul r14, rax, 56
00105175xor ebx, ebx
00105177xor r15l, r15l
0010517anop [rax+rax]
00105180
00105180loc_105180:
00105180mov rdx, [r13]
00105184test rdx, rdx
00105187je 0x1051a2
00105189mov rdi, [rsp+40]
0010518emov rax, [rsp+48]
00105193mov rsi, [r13-8]
00105197call [rax+24]
0010519atest al, al
0010519cjne 0x105300
001051a2
001051a2loc_1051a2:
001051a2movzx eax, [r12+rbx+48]
001051a8mov [rsp+64], al
001051acmov rax, [r12+rbx+40]
001051b1mov [rsp+56], rax
001051b6mov rcx, [r12+rbx+16]
001051bbmov rax, [r12+rbx+24]
001051c0test rcx, rcx
001051c3je 0x1051e8
001051c5cmp ecx, 1
001051c8jne 0x1051dc
001051cashl rax, 4
001051celea rcx, [rip-5381]
001051d5cmp [rbp+rax+8], rcx
001051daje 0x1051e0
001051dc
001051dcloc_1051dc:
001051dcxor ecx, ecx
001051dejmp 0x1051ed
001051e0
001051e0loc_1051e0:
001051e0mov rax, [rbp+rax]
001051e5mov rax, [rax]
001051e8
001051e8loc_1051e8:
001051e8mov ecx, 1
001051ed
001051edloc_1051ed:
001051edmov [rsp+8], rcx
001051f2mov [rsp+16], rax
001051f7mov rcx, [r12+rbx]
001051fbmov rax, [r12+rbx+8]
00105200test rcx, rcx
00105203je 0x105228
00105205cmp ecx, 1
00105208jne 0x10521c
0010520ashl rax, 4
0010520elea rcx, [rip-5445]
00105215cmp [rbp+rax+8], rcx
0010521aje 0x105220
0010521c
0010521cloc_10521c:
0010521cxor ecx, ecx
0010521ejmp 0x10522d
00105220
00105220loc_105220:
00105220mov rax, [rbp+rax]
00105225mov rax, [rax]
00105228
00105228loc_105228:
00105228mov ecx, 1
0010522d
0010522dloc_10522d:
0010522dmov [rsp+24], rcx
00105232mov [rsp+32], rax
00105237mov rax, [r12+rbx+32]
0010523cshl rax, 4
00105240mov rdi, [rbp+rax]
00105245lea rsi, [rsp+8]
0010524acall [rbp+rax+8]
0010524etest al, al
00105250jne 0x105300
00105256add r13, 16
0010525aadd rbx, 56
0010525einc r15
00105261cmp r14, rbx
00105264jne 0x105180
0010526ajmp 0x1052d1
0010526c
0010526cloc_10526c:
0010526cmov rbx, [rdx+24]
00105270test rbx, rbx
00105273je 0x1052ce
00105275mov r12, [rdx+16]
00105279mov r13, [rdx]
0010527cshl rbx, 4
00105280xor ebp, ebp
00105282lea r14, [rsp+8]
00105287xor r15l, r15l
0010528anop [rax+rax]
00105290
00105290loc_105290:
00105290mov rdx, [r13+rbp+8]
00105295test rdx, rdx
00105298je 0x1052b0
0010529amov rdi, [rsp+40]
0010529fmov rax, [rsp+48]
001052a4mov rsi, [r13+rbp]
001052a9call [rax+24]
001052actest al, al
001052aejne 0x105300
001052b0
001052b0loc_1052b0:
001052b0mov rdi, [r12+rbp]
001052b4mov rsi, r14
001052b7call [r12+rbp+8]
001052bctest al, al
001052bejne 0x105300
001052c0add rbp, 16
001052c4inc r15
001052c7cmp rbx, rbp
001052cajne 0x105290
001052ccjmp 0x1052d1
001052ce
001052celoc_1052ce:
001052cexor r15l, r15l
001052d1
001052d1loc_1052d1:
001052d1mov rax, [rsp]
001052d5cmp r15, [rax+8]
001052d9jae 0x105304
001052dbmov rax, [rsp]
001052dfmov rax, [rax]
001052e2shl r15, 4
001052e6mov rdi, [rsp+40]
001052ebmov rcx, [rsp+48]
001052f0mov rsi, [rax+r15]
001052f4mov rdx, [rax+r15+8]
001052f9call [rcx+24]
001052fctest al, al
001052feje 0x105304
00105300
00105300loc_105300:
00105300mov al, 1
00105302jmp 0x105306
00105304
00105304loc_105304:
00105304xor eax, eax
00105306
00105306loc_105306:
00105306add rsp, 72
0010530apop rbx
0010530bpop r12
0010530dpop r13
0010530fpop r14
00105311pop r15
00105313pop rbp
00105314ret
00105110
00105315
00105315 // align 0x10
00105315 // align 0x10
00105320
00105320core::ptr::drop_in_place<&core::iter::adapters::copied::Copied<core::slice::iter::Iter<u8>>>:
00105320ret
00105320
00105320core::ptr::drop_in_place<&core::iter::adapters::copied::Copied<core::slice::iter::Iter<u8>>>:
00105320ret
00105320
00105321
00105321 // align 0x10
00105321 // align 0x10
00105338
00105338 // align 0x10
00105338 // align 0x10
00105340
00105340_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u64$GT$3fmt17hfd34c49f95dd23e5E.84:
00105340sub rsp, 136
00105347mov eax, [rsi+52]
0010534atest al, 16
0010534cjne 0x105432
00105352test al, 32
00105354jne 0x105480
0010535amov rcx, [rdi]
0010535dmov eax, 39
00105362cmp rcx, 10000
00105369jb 0x1054f2
0010536fmov r9l, 39
00105375mov rdi, 0x346dc5d63886594b
0010537flea r8, [rip-0x76334]
00105386nop [rax+rax]
00105390
00105390loc_105390:
00105390mov rax, rcx
00105393mul rdi
00105396shr rdx, 11
0010539aimul eax, edx, 10000
001053a0mov r10l, ecx
001053a3sub r10l, eax
001053a6imul r11l, r10l, 5243
001053adshr r11l, 19
001053b1imul eax, r11l, 100
001053b5sub r10l, eax
001053b8movzx r10l, r10w
001053bclea rax, [r9-4]
001053c0movzx r11l, [r8+2*r11]
001053c5mov [rsp+r9+4], r11w
001053cbmovzx r10l, [r8+2*r10]
001053d0mov [rsp+r9+6], r10w
001053d6mov r9, rax
001053d9cmp rcx, 0x5f5e0ff
001053e0mov rcx, rdx
001053e3ja 0x105390
001053e5cmp rdx, 99
001053e9jbe 0x105419
001053eb
001053ebloc_1053eb:
001053ebmovzx ecx, dx
001053eeshr ecx, 2
001053f1imul ecx, ecx, 5243
001053f7shr ecx, 17
001053faimul edi, ecx, 100
001053fdsub edx, edi
001053ffmovzx edx, dx
00105402lea rdi, [rip-0x763b7]
00105409movzx edx, [rdi+2*rdx]
0010540dmov [rsp+rax+6], dx
00105412add rax, -2
00105416mov rdx, rcx
00105419
00105419loc_105419:
00105419cmp rdx, 10
0010541djae 0x105504
00105423add dl, 48
00105426mov [rsp+rax+7], dl
0010542adec rax
0010542djmp 0x105518
00105432
00105432loc_105432:
00105432mov rcx, [rdi]
00105435mov edx, 129
0010543amov eax, 48
0010543fmov r8, rcx
00105442nop [rax+rax]
00105450
00105450loc_105450:
00105450mov rdi, rdx
00105453shr r8, 4
00105457mov edx, ecx
00105459and dl, 15
0010545ccmp dl, 10
0010545fmov r9l, 87
00105465cmovb r9l, eax
00105469add r9b, dl
0010546cmov [rsp+rdi+6], r9b
00105471lea rdx, [rdi-1]
00105475cmp rcx, 16
00105479mov rcx, r8
0010547cjae 0x105450
0010547ejmp 0x1054be
00105480
00105480loc_105480:
00105480mov rcx, [rdi]
00105483mov edx, 129
00105488mov eax, 48
0010548dmov r8, rcx
00105490
00105490loc_105490:
00105490mov rdi, rdx
00105493shr r8, 4
00105497mov edx, ecx
00105499and dl, 15
0010549ccmp dl, 10
0010549fmov r9l, 55
001054a5cmovb r9l, eax
001054a9add r9b, dl
001054acmov [rsp+rdi+6], r9b
001054b1lea rdx, [rdi-1]
001054b5cmp rcx, 16
001054b9mov rcx, r8
001054bcjae 0x105490
001054be
001054beloc_1054be:
001054beadd rdi, -2
001054c2cmp rdi, 128
001054c9ja 0x105547
001054cbmov r9l, 129
001054d1sub r9, rdx
001054d4lea r8, [rsp+rdi]
001054d8add r8, 8
001054dclea rdx, [rip-0x768e9]
001054e3mov ecx, 2
001054e8mov rdi, rsi
001054ebmov esi, 1
001054f0jmp 0x10553a
001054f2
001054f2loc_1054f2:
001054f2mov rdx, rcx
001054f5cmp rdx, 99
001054f9ja 0x1053eb
001054ffjmp 0x105419
00105504
00105504loc_105504:
00105504lea rcx, [rip-0x764b9]
0010550bmovzx ecx, [rcx+2*rdx]
0010550fmov [rsp+rax+6], cx
00105514add rax, -2
00105518
00105518loc_105518:
00105518lea r8, [rsp+rax]
0010551cadd r8, 8
00105520mov r9l, 39
00105526sub r9, rax
00105529lea rdx, [rip-0x74238]
00105530mov rdi, rsi
00105533mov esi, 1
00105538xor ecx, ecx
0010553a
0010553aloc_10553a:
0010553acall core::fmt::Formatter::pad_integral
0010553fadd rsp, 136
00105546ret
00105547
00105547loc_105547:
00105547lea rdx, [rip+0xe5882]
0010554emov esi, 128
00105553call core::slice::index::slice_start_index_len_fail
00105558ud2
00105340
00105340_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u64$GT$3fmt17hfd34c49f95dd23e5E.84:
00105340sub rsp, 136
00105347mov eax, [rsi+52]
0010534atest al, 16
0010534cjne 0x105432
00105352test al, 32
00105354jne 0x105480
0010535amov rcx, [rdi]
0010535dmov eax, 39
00105362cmp rcx, 10000
00105369jb 0x1054f2
0010536fmov r9l, 39
00105375mov rdi, 0x346dc5d63886594b
0010537flea r8, [rip-0x76334]
00105386nop [rax+rax]
00105390
00105390loc_105390:
00105390mov rax, rcx
00105393mul rdi
00105396shr rdx, 11
0010539aimul eax, edx, 10000
001053a0mov r10l, ecx
001053a3sub r10l, eax
001053a6imul r11l, r10l, 5243
001053adshr r11l, 19
001053b1imul eax, r11l, 100
001053b5sub r10l, eax
001053b8movzx r10l, r10w
001053bclea rax, [r9-4]
001053c0movzx r11l, [r8+2*r11]
001053c5mov [rsp+r9+4], r11w
001053cbmovzx r10l, [r8+2*r10]
001053d0mov [rsp+r9+6], r10w
001053d6mov r9, rax
001053d9cmp rcx, 0x5f5e0ff
001053e0mov rcx, rdx
001053e3ja 0x105390
001053e5cmp rdx, 99
001053e9jbe 0x105419
001053eb
001053ebloc_1053eb:
001053ebmovzx ecx, dx
001053eeshr ecx, 2
001053f1imul ecx, ecx, 5243
001053f7shr ecx, 17
001053faimul edi, ecx, 100
001053fdsub edx, edi
001053ffmovzx edx, dx
00105402lea rdi, [rip-0x763b7]
00105409movzx edx, [rdi+2*rdx]
0010540dmov [rsp+rax+6], dx
00105412add rax, -2
00105416mov rdx, rcx
00105419
00105419loc_105419:
00105419cmp rdx, 10
0010541djae 0x105504
00105423add dl, 48
00105426mov [rsp+rax+7], dl
0010542adec rax
0010542djmp 0x105518
00105432
00105432loc_105432:
00105432mov rcx, [rdi]
00105435mov edx, 129
0010543amov eax, 48
0010543fmov r8, rcx
00105442nop [rax+rax]
00105450
00105450loc_105450:
00105450mov rdi, rdx
00105453shr r8, 4
00105457mov edx, ecx
00105459and dl, 15
0010545ccmp dl, 10
0010545fmov r9l, 87
00105465cmovb r9l, eax
00105469add r9b, dl
0010546cmov [rsp+rdi+6], r9b
00105471lea rdx, [rdi-1]
00105475cmp rcx, 16
00105479mov rcx, r8
0010547cjae 0x105450
0010547ejmp 0x1054be
00105480
00105480loc_105480:
00105480mov rcx, [rdi]
00105483mov edx, 129
00105488mov eax, 48
0010548dmov r8, rcx
00105490
00105490loc_105490:
00105490mov rdi, rdx
00105493shr r8, 4
00105497mov edx, ecx
00105499and dl, 15
0010549ccmp dl, 10
0010549fmov r9l, 55
001054a5cmovb r9l, eax
001054a9add r9b, dl
001054acmov [rsp+rdi+6], r9b
001054b1lea rdx, [rdi-1]
001054b5cmp rcx, 16
001054b9mov rcx, r8
001054bcjae 0x105490
001054be
001054beloc_1054be:
001054beadd rdi, -2
001054c2cmp rdi, 128
001054c9ja 0x105547
001054cbmov r9l, 129
001054d1sub r9, rdx
001054d4lea r8, [rsp+rdi]
001054d8add r8, 8
001054dclea rdx, [rip-0x768e9]
001054e3mov ecx, 2
001054e8mov rdi, rsi
001054ebmov esi, 1
001054f0jmp 0x10553a
001054f2
001054f2loc_1054f2:
001054f2mov rdx, rcx
001054f5cmp rdx, 99
001054f9ja 0x1053eb
001054ffjmp 0x105419
00105504
00105504loc_105504:
00105504lea rcx, [rip-0x764b9]
0010550bmovzx ecx, [rcx+2*rdx]
0010550fmov [rsp+rax+6], cx
00105514add rax, -2
00105518
00105518loc_105518:
00105518lea r8, [rsp+rax]
0010551cadd r8, 8
00105520mov r9l, 39
00105526sub r9, rax
00105529lea rdx, [rip-0x74238]
00105530mov rdi, rsi
00105533mov esi, 1
00105538xor ecx, ecx
0010553a
0010553aloc_10553a:
0010553acall core::fmt::Formatter::pad_integral
0010553fadd rsp, 136
00105546ret
00105547
00105547loc_105547:
00105547lea rdx, [rip+0xe5882]
0010554emov esi, 128
00105553call core::slice::index::slice_start_index_len_fail
00105558ud2
00105340
0010555a
0010555a // align 0x10
0010555a // align 0x10
00105560
00105560core::num::flt2dec::strategy::dragon::mul_pow10:
00105560push r14
00105562push rbx
00105563push rax
00105564mov r14, rsi
00105567mov rbx, rdi
0010556amov rax, rsi
0010556dand rax, 7
00105571je 0x1055eb
00105573mov rdi, [rbx+160]
0010557acmp rdi, 41
0010557ejae 0x105738
00105584test rdi, rdi
00105587je 0x105657
0010558dlea rcx, [rip-0xc1db4]
00105594mov ecx, [rcx+4*rax]
00105597lea rdx, [4*rdi]
0010559fxor esi, esi
001055a1xor eax, eax
001055a3nop [rax+rax]
001055b0
001055b0loc_1055b0:
001055b0mov r8l, [rbx+rsi]
001055b4imul r8, rcx
001055b8add r8, rax
001055bbmov rax, r8
001055beshr rax, 32
001055c2mov [rbx+rsi], r8l
001055c6add rsi, 4
001055cacmp rdx, rsi
001055cdjne 0x1055b0
001055cftest rax, rax
001055d2je 0x1055e4
001055d4cmp rdi, 39
001055d8ja 0x105720
001055demov [rbx+4*rdi], eax
001055e1inc rdi
001055e4
001055e4loc_1055e4:
001055e4mov [rbx+160], rdi
001055eb
001055ebloc_1055eb:
001055ebtest r14b, 8
001055efje 0x105671
001055f5
001055f5loc_1055f5:
001055f5mov rdi, [rbx+160]
001055fccmp rdi, 41
00105600jae 0x105738
00105606test rdi, rdi
00105609je 0x105668
0010560blea rcx, [4*rdi]
00105613xor edx, edx
00105615xor eax, eax
00105617nop [rax+rax]
00105620
00105620loc_105620:
00105620mov esi, [rbx+rdx]
00105623imul rsi, rsi, 0x5f5e100
0010562aadd rsi, rax
0010562dmov rax, rsi
00105630shr rax, 32
00105634mov [rbx+rdx], esi
00105637add rdx, 4
0010563bcmp rcx, rdx
0010563ejne 0x105620
00105640test rax, rax
00105643je 0x10566a
00105645cmp rdi, 39
00105649ja 0x105720
0010564fmov [rbx+4*rdi], eax
00105652inc rdi
00105655jmp 0x10566a
00105657
00105657loc_105657:
00105657xor edi, edi
00105659mov [rbx+160], rdi
00105660test r14b, 8
00105664jne 0x1055f5
00105666jmp 0x105671
00105668
00105668loc_105668:
00105668xor edi, edi
0010566a
0010566aloc_10566a:
0010566amov [rbx+160], rdi
00105671
00105671loc_105671:
00105671test r14b, 16
00105675jne 0x1056b0
00105677test r14b, 32
0010567bjne 0x1056ca
0010567d
0010567dloc_10567d:
0010567dtest r14b, 64
00105681jne 0x1056e4
00105683
00105683loc_105683:
00105683test r14b, r14b
00105686js 0x1056fd
00105688
00105688loc_105688:
00105688test r14l, 256
0010568fje 0x1056a5
00105691
00105691loc_105691:
00105691lea rsi, [rip-0xc25e8]
00105698mov edx, 27
0010569dmov rdi, rbx
001056a0call core::num::bignum::Big32x40::mul_digits
001056a5
001056a5loc_1056a5:
001056a5mov rax, rbx
001056a8add rsp, 8
001056acpop rbx
001056adpop r14
001056afret
001056b0
001056b0loc_1056b0:
001056b0lea rsi, [rip-0xc2673]
001056b7mov edx, 2
001056bcmov rdi, rbx
001056bfcall core::num::bignum::Big32x40::mul_digits
001056c4test r14b, 32
001056c8je 0x10567d
001056ca
001056caloc_1056ca:
001056calea rsi, [rip-0xc2685]
001056d1mov edx, 4
001056d6mov rdi, rbx
001056d9call core::num::bignum::Big32x40::mul_digits
001056detest r14b, 64
001056e2je 0x105683
001056e4
001056e4loc_1056e4:
001056e4lea rsi, [rip-0xc268f]
001056ebmov edx, 7
001056f0mov rdi, rbx
001056f3call core::num::bignum::Big32x40::mul_digits
001056f8test r14b, r14b
001056fbjns 0x105688
001056fd
001056fdloc_1056fd:
001056fdlea rsi, [rip-0xc268c]
00105704mov edx, 14
00105709mov rdi, rbx
0010570ccall core::num::bignum::Big32x40::mul_digits
00105711test r14l, 256
00105718jne 0x105691
0010571ejmp 0x1056a5
00105720
00105720loc_105720:
00105720lea rdx, [rip+0xe5ac1]
00105727mov edi, 40
0010572cmov esi, 40
00105731call core::panicking::panic_bounds_check
00105736ud2
00105738
00105738loc_105738:
00105738lea rdx, [rip+0xe5aa9]
0010573fmov esi, 40
00105744call core::slice::index::slice_end_index_len_fail
00105749ud2
00105560
00105560core::num::flt2dec::strategy::dragon::mul_pow10:
00105560push r14
00105562push rbx
00105563push rax
00105564mov r14, rsi
00105567mov rbx, rdi
0010556amov rax, rsi
0010556dand rax, 7
00105571je 0x1055eb
00105573mov rdi, [rbx+160]
0010557acmp rdi, 41
0010557ejae 0x105738
00105584test rdi, rdi
00105587je 0x105657
0010558dlea rcx, [rip-0xc1db4]
00105594mov ecx, [rcx+4*rax]
00105597lea rdx, [4*rdi]
0010559fxor esi, esi
001055a1xor eax, eax
001055a3nop [rax+rax]
001055b0
001055b0loc_1055b0:
001055b0mov r8l, [rbx+rsi]
001055b4imul r8, rcx
001055b8add r8, rax
001055bbmov rax, r8
001055beshr rax, 32
001055c2mov [rbx+rsi], r8l
001055c6add rsi, 4
001055cacmp rdx, rsi
001055cdjne 0x1055b0
001055cftest rax, rax
001055d2je 0x1055e4
001055d4cmp rdi, 39
001055d8ja 0x105720
001055demov [rbx+4*rdi], eax
001055e1inc rdi
001055e4
001055e4loc_1055e4:
001055e4mov [rbx+160], rdi
001055eb
001055ebloc_1055eb:
001055ebtest r14b, 8
001055efje 0x105671
001055f5
001055f5loc_1055f5:
001055f5mov rdi, [rbx+160]
001055fccmp rdi, 41
00105600jae 0x105738
00105606test rdi, rdi
00105609je 0x105668
0010560blea rcx, [4*rdi]
00105613xor edx, edx
00105615xor eax, eax
00105617nop [rax+rax]
00105620
00105620loc_105620:
00105620mov esi, [rbx+rdx]
00105623imul rsi, rsi, 0x5f5e100
0010562aadd rsi, rax
0010562dmov rax, rsi
00105630shr rax, 32
00105634mov [rbx+rdx], esi
00105637add rdx, 4
0010563bcmp rcx, rdx
0010563ejne 0x105620
00105640test rax, rax
00105643je 0x10566a
00105645cmp rdi, 39
00105649ja 0x105720
0010564fmov [rbx+4*rdi], eax
00105652inc rdi
00105655jmp 0x10566a
00105657
00105657loc_105657:
00105657xor edi, edi
00105659mov [rbx+160], rdi
00105660test r14b, 8
00105664jne 0x1055f5
00105666jmp 0x105671
00105668
00105668loc_105668:
00105668xor edi, edi
0010566a
0010566aloc_10566a:
0010566amov [rbx+160], rdi
00105671
00105671loc_105671:
00105671test r14b, 16
00105675jne 0x1056b0
00105677test r14b, 32
0010567bjne 0x1056ca
0010567d
0010567dloc_10567d:
0010567dtest r14b, 64
00105681jne 0x1056e4
00105683
00105683loc_105683:
00105683test r14b, r14b
00105686js 0x1056fd
00105688
00105688loc_105688:
00105688test r14l, 256
0010568fje 0x1056a5
00105691
00105691loc_105691:
00105691lea rsi, [rip-0xc25e8]
00105698mov edx, 27
0010569dmov rdi, rbx
001056a0call core::num::bignum::Big32x40::mul_digits
001056a5
001056a5loc_1056a5:
001056a5mov rax, rbx
001056a8add rsp, 8
001056acpop rbx
001056adpop r14
001056afret
001056b0
001056b0loc_1056b0:
001056b0lea rsi, [rip-0xc2673]
001056b7mov edx, 2
001056bcmov rdi, rbx
001056bfcall core::num::bignum::Big32x40::mul_digits
001056c4test r14b, 32
001056c8je 0x10567d
001056ca
001056caloc_1056ca:
001056calea rsi, [rip-0xc2685]
001056d1mov edx, 4
001056d6mov rdi, rbx
001056d9call core::num::bignum::Big32x40::mul_digits
001056detest r14b, 64
001056e2je 0x105683
001056e4
001056e4loc_1056e4:
001056e4lea rsi, [rip-0xc268f]
001056ebmov edx, 7
001056f0mov rdi, rbx
001056f3call core::num::bignum::Big32x40::mul_digits
001056f8test r14b, r14b
001056fbjns 0x105688
001056fd
001056fdloc_1056fd:
001056fdlea rsi, [rip-0xc268c]
00105704mov edx, 14
00105709mov rdi, rbx
0010570ccall core::num::bignum::Big32x40::mul_digits
00105711test r14l, 256
00105718jne 0x105691
0010571ejmp 0x1056a5
00105720
00105720loc_105720:
00105720lea rdx, [rip+0xe5ac1]
00105727mov edi, 40
0010572cmov esi, 40
00105731call core::panicking::panic_bounds_check
00105736ud2
00105738
00105738loc_105738:
00105738lea rdx, [rip+0xe5aa9]
0010573fmov esi, 40
00105744call core::slice::index::slice_end_index_len_fail
00105749ud2
00105560
0010574b
0010574b // align 0x10
0010574b // align 0x10
00105750
00105750core::num::bignum::Big32x40::mul_digits:
00105750push rbp
00105751push r15
00105753push r14
00105755push r13
00105757push r12
00105759push rbx
0010575asub rsp, 184
00105761mov rbx, rdi
00105764xorps x0, x0
00105767movaps [rsp+160], x0
0010576fmovaps [rsp+144], x0
00105777movaps [rsp+128], x0
0010577fmovaps [rsp+112], x0
00105784movaps [rsp+96], x0
00105789movaps [rsp+80], x0
0010578emovaps [rsp+64], x0
00105793movaps [rsp+48], x0
00105798movaps [rsp+32], x0
0010579dmovaps [rsp+16], x0
001057a2mov rdi, [rdi+160]
001057a9cmp rdi, rdx
001057acjae 0x105872
001057b2cmp rdi, 41
001057b6jae 0x105972
001057bclea rax, [rbx+4*rdi]
001057c0lea rcx, [rdx+1]
001057c4mov [rsp+8], rcx
001057c9lea r8, [4*rdx]
001057d1xor r10l, r10l
001057d4mov r9, rbx
001057d7xor r14l, r14l
001057danop [rax+rax]
001057e0
001057e0loc_1057e0:
001057e0cmp r9, rax
001057e3je 0x10591a
001057e9mov r11, r10
001057ecinc r10
001057efmov r15l, [r9]
001057f2add r9, 4
001057f6test r15, r15
001057f9je 0x1057e0
001057fbxor r13l, r13l
001057femov rdi, r11
00105801xor r12l, r12l
00105804nop [rax+rax]
00105810
00105810loc_105810:
00105810cmp rdi, 40
00105814jae 0x105949
0010581amov ebp, [rsi+r13]
0010581emov ecx, [rsp+4*rdi+16]
00105822add r12, rcx
00105825imul rbp, r15
00105829add rbp, r12
0010582cmov r12, rbp
0010582fshr r12, 32
00105833mov [rsp+4*rdi+16], ebp
00105837inc rdi
0010583aadd r13, 4
0010583ecmp r8, r13
00105841jne 0x105810
00105843mov rdi, rdx
00105846test r12, r12
00105849je 0x105863
0010584blea rdi, [r11+rdx]
0010584fcmp rdi, 40
00105853jae 0x105949
00105859mov [rsp+4*rdi+16], r12l
0010585emov rdi, [rsp+8]
00105863
00105863loc_105863:
00105863add rdi, r11
00105866cmp r14, rdi
00105869cmovbe r14, rdi
0010586djmp 0x1057e0
00105872
00105872loc_105872:
00105872cmp rdi, 41
00105876jae 0x105972
0010587clea rcx, [rsi+4*rdx]
00105880lea rdx, [rdi+1]
00105884lea r8, [4*rdi]
0010588cxor r9l, r9l
0010588fxor r14l, r14l
00105892nop [rax+rax]
001058a0
001058a0loc_1058a0:
001058a0cmp rsi, rcx
001058a3je 0x10591a
001058a5mov r10, r9
001058a8inc r9
001058abmov r11l, [rsi]
001058aeadd rsi, 4
001058b2test r11, r11
001058b5je 0x1058a0
001058b7xor r12l, r12l
001058bamov rax, r10
001058bdxor r15l, r15l
001058c0
001058c0loc_1058c0:
001058c0cmp rax, 40
001058c4jae 0x10595c
001058camov r13l, [rbx+r12]
001058cemov ebp, [rsp+4*rax+16]
001058d2add r15, rbp
001058d5imul r13, r11
001058d9add r13, r15
001058dcmov r15, r13
001058dfshr r15, 32
001058e3mov [rsp+4*rax+16], r13l
001058e8inc rax
001058ebadd r12, 4
001058efcmp r8, r12
001058f2jne 0x1058c0
001058f4mov rax, rdi
001058f7test r15, r15
001058faje 0x10590e
001058fclea rax, [r10+rdi]
00105900cmp rax, 40
00105904jae 0x10595c
00105906mov [rsp+4*rax+16], r15l
0010590bmov rax, rdx
0010590e
0010590eloc_10590e:
0010590eadd rax, r10
00105911cmp r14, rax
00105914cmovbe r14, rax
00105918jmp 0x1058a0
0010591a
0010591aloc_10591a:
0010591alea rsi, [rsp+16]
0010591fmov edx, 160
00105924mov rdi, rbx
00105927call [rip+0x10c1f3]
0010592dmov [rbx+160], r14
00105934mov rax, rbx
00105937add rsp, 184
0010593epop rbx
0010593fpop r12
00105941pop r13
00105943pop r14
00105945pop r15
00105947pop rbp
00105948ret
00105949
00105949loc_105949:
00105949lea rdx, [rip+0xe5898]
00105950mov esi, 40
00105955call core::panicking::panic_bounds_check
0010595aud2
0010595c
0010595cloc_10595c:
0010595clea rdx, [rip+0xe5885]
00105963mov esi, 40
00105968mov rdi, rax
0010596bcall core::panicking::panic_bounds_check
00105970ud2
00105972
00105972loc_105972:
00105972lea rdx, [rip+0xe586f]
00105979mov esi, 40
0010597ecall core::slice::index::slice_end_index_len_fail
00105983ud2
00105750
00105750core::num::bignum::Big32x40::mul_digits:
00105750push rbp
00105751push r15
00105753push r14
00105755push r13
00105757push r12
00105759push rbx
0010575asub rsp, 184
00105761mov rbx, rdi
00105764xorps x0, x0
00105767movaps [rsp+160], x0
0010576fmovaps [rsp+144], x0
00105777movaps [rsp+128], x0
0010577fmovaps [rsp+112], x0
00105784movaps [rsp+96], x0
00105789movaps [rsp+80], x0
0010578emovaps [rsp+64], x0
00105793movaps [rsp+48], x0
00105798movaps [rsp+32], x0
0010579dmovaps [rsp+16], x0
001057a2mov rdi, [rdi+160]
001057a9cmp rdi, rdx
001057acjae 0x105872
001057b2cmp rdi, 41
001057b6jae 0x105972
001057bclea rax, [rbx+4*rdi]
001057c0lea rcx, [rdx+1]
001057c4mov [rsp+8], rcx
001057c9lea r8, [4*rdx]
001057d1xor r10l, r10l
001057d4mov r9, rbx
001057d7xor r14l, r14l
001057danop [rax+rax]
001057e0
001057e0loc_1057e0:
001057e0cmp r9, rax
001057e3je 0x10591a
001057e9mov r11, r10
001057ecinc r10
001057efmov r15l, [r9]
001057f2add r9, 4
001057f6test r15, r15
001057f9je 0x1057e0
001057fbxor r13l, r13l
001057femov rdi, r11
00105801xor r12l, r12l
00105804nop [rax+rax]
00105810
00105810loc_105810:
00105810cmp rdi, 40
00105814jae 0x105949
0010581amov ebp, [rsi+r13]
0010581emov ecx, [rsp+4*rdi+16]
00105822add r12, rcx
00105825imul rbp, r15
00105829add rbp, r12
0010582cmov r12, rbp
0010582fshr r12, 32
00105833mov [rsp+4*rdi+16], ebp
00105837inc rdi
0010583aadd r13, 4
0010583ecmp r8, r13
00105841jne 0x105810
00105843mov rdi, rdx
00105846test r12, r12
00105849je 0x105863
0010584blea rdi, [r11+rdx]
0010584fcmp rdi, 40
00105853jae 0x105949
00105859mov [rsp+4*rdi+16], r12l
0010585emov rdi, [rsp+8]
00105863
00105863loc_105863:
00105863add rdi, r11
00105866cmp r14, rdi
00105869cmovbe r14, rdi
0010586djmp 0x1057e0
00105872
00105872loc_105872:
00105872cmp rdi, 41
00105876jae 0x105972
0010587clea rcx, [rsi+4*rdx]
00105880lea rdx, [rdi+1]
00105884lea r8, [4*rdi]
0010588cxor r9l, r9l
0010588fxor r14l, r14l
00105892nop [rax+rax]
001058a0
001058a0loc_1058a0:
001058a0cmp rsi, rcx
001058a3je 0x10591a
001058a5mov r10, r9
001058a8inc r9
001058abmov r11l, [rsi]
001058aeadd rsi, 4
001058b2test r11, r11
001058b5je 0x1058a0
001058b7xor r12l, r12l
001058bamov rax, r10
001058bdxor r15l, r15l
001058c0
001058c0loc_1058c0:
001058c0cmp rax, 40
001058c4jae 0x10595c
001058camov r13l, [rbx+r12]
001058cemov ebp, [rsp+4*rax+16]
001058d2add r15, rbp
001058d5imul r13, r11
001058d9add r13, r15
001058dcmov r15, r13
001058dfshr r15, 32
001058e3mov [rsp+4*rax+16], r13l
001058e8inc rax
001058ebadd r12, 4
001058efcmp r8, r12
001058f2jne 0x1058c0
001058f4mov rax, rdi
001058f7test r15, r15
001058faje 0x10590e
001058fclea rax, [r10+rdi]
00105900cmp rax, 40
00105904jae 0x10595c
00105906mov [rsp+4*rax+16], r15l
0010590bmov rax, rdx
0010590e
0010590eloc_10590e:
0010590eadd rax, r10
00105911cmp r14, rax
00105914cmovbe r14, rax
00105918jmp 0x1058a0
0010591a
0010591aloc_10591a:
0010591alea rsi, [rsp+16]
0010591fmov edx, 160
00105924mov rdi, rbx
00105927call [rip+0x10c1f3]
0010592dmov [rbx+160], r14
00105934mov rax, rbx
00105937add rsp, 184
0010593epop rbx
0010593fpop r12
00105941pop r13
00105943pop r14
00105945pop r15
00105947pop rbp
00105948ret
00105949
00105949loc_105949:
00105949lea rdx, [rip+0xe5898]
00105950mov esi, 40
00105955call core::panicking::panic_bounds_check
0010595aud2
0010595c
0010595cloc_10595c:
0010595clea rdx, [rip+0xe5885]
00105963mov esi, 40
00105968mov rdi, rax
0010596bcall core::panicking::panic_bounds_check
00105970ud2
00105972
00105972loc_105972:
00105972lea rdx, [rip+0xe586f]
00105979mov esi, 40
0010597ecall core::slice::index::slice_end_index_len_fail
00105983ud2
00105750
00105985
00105985 // align 0x10
00105985 // align 0x10
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
Loading..