File akira_3298d203c2acb68c474e5fdad8379181890b4403d6491c523c13730129be3f75.elf
Function:
    0010a470
    0010a470core::fmt::Formatter::debug_struct_fields_finish:
    0010a470push r15
    0010a472push r14
    0010a474push r13
    0010a476push r12
    0010a478push rbx
    0010a479sub rsp, 64
    0010a47dmov rax, [rsp+112]
    0010a482mov [rsp], r8
    0010a486mov [rsp+8], rax
    0010a48bcmp r8, rax
    0010a48ejne 0x10a54f
    0010a494mov rbx, r9
    0010a497mov r14, r8
    0010a49amov r15, rcx
    0010a49dmov r12, rdi
    0010a4a0mov rdi, [rdi+32]
    0010a4a4mov rax, [r12+40]
    0010a4a9call [rax+24]
    0010a4acmov [rsp+16], r12
    0010a4b1mov [rsp+24], al
    0010a4b5mov [rsp+25], 0
    0010a4baadd r15, 8
    0010a4belea r12, [rip+0xe0953]
    0010a4c5lea r13, [rsp+16]
    0010a4canop [rax+rax]
    0010a4d0
    0010a4d0loc_10a4d0:
    0010a4d0mov rsi, [r15-8]
    0010a4d4mov rdx, [r15]
    0010a4d7mov rdi, r13
    0010a4damov rcx, rbx
    0010a4ddmov r8, r12
    0010a4e0call core::fmt::builders::DebugStruct::field
    0010a4e5add r15, 16
    0010a4e9add rbx, 16
    0010a4eddec r14
    0010a4f0jne 0x10a4d0
    0010a4f2movzx eax, [rsp+24]
    0010a4f7cmp [rsp+25], 0
    0010a4fcje 0x10a53c
    0010a4fetest al, al
    0010a500mov al, 1
    0010a502jne 0x10a53c
    0010a504mov rax, [rsp+16]
    0010a509test [rax+52], 4
    0010a50djne 0x10a525
    0010a50fmov rdi, [rax+32]
    0010a513mov rax, [rax+40]
    0010a517lea rsi, [rip-0x7b927]
    0010a51emov edx, 2
    0010a523jmp 0x10a539
    0010a525
    0010a525loc_10a525:
    0010a525mov rdi, [rax+32]
    0010a529mov rax, [rax+40]
    0010a52dlea rsi, [rip-0x7ba22]
    0010a534mov edx, 1
    0010a539
    0010a539loc_10a539:
    0010a539call [rax+24]
    0010a53c
    0010a53cloc_10a53c:
    0010a53ctest al, al
    0010a53esetne al
    0010a541add rsp, 64
    0010a545pop rbx
    0010a546pop r12
    0010a548pop r13
    0010a54apop r14
    0010a54cpop r15
    0010a54eret
    0010a54f
    0010a54floc_10a54f:
    0010a54fmov [rsp+16], 0
    0010a558mov rdi, rsp
    0010a55blea rsi, [rsp+8]
    0010a560lea rdx, [rsp+16]
    0010a565call core::panicking::assert_failed
    0010a56aud2
    0010a470
    0010a56c
    0010a56c // align 0x10
    0010a570
    0010a570core::panicking::assert_failed:
    0010a570sub rsp, 24
    0010a574mov r9, rdx
    0010a577mov [rsp+8], rdi
    0010a57cmov [rsp+16], rsi
    0010a581lea rax, [rip+0xe0878]
    0010a588mov [rsp], rax
    0010a58clea rdx, [rip+0xe070d]
    0010a593lea rsi, [rsp+8]
    0010a598lea rcx, [rsp+16]
    0010a59dxor edi, edi
    0010a59fmov r8, rdx
    0010a5a2call core::panicking::assert_failed_inner
    0010a5a7ud2
    0010a570
    0010a5a9
    0010a5a9 // align 0x10
    0010a5b0
    0010a5b0core::fmt::Formatter::debug_tuple_field1_finish:
    0010a5b0push r15
    0010a5b2push r14
    0010a5b4push rbx
    0010a5b5sub rsp, 32
    0010a5b9mov rbx, r8
    0010a5bcmov r14, rcx
    0010a5bfmov r15, rdi
    0010a5c2mov rdi, [rdi+32]
    0010a5c6mov rax, [r15+40]
    0010a5cacall [rax+24]
    0010a5cdmov [rsp+16], r15
    0010a5d2mov [rsp+24], al
    0010a5d6mov [rsp+8], 0
    0010a5dfmov [rsp+25], 0
    0010a5e4lea rdi, [rsp+8]
    0010a5e9mov rsi, r14
    0010a5ecmov rdx, rbx
    0010a5efcall core::fmt::builders::DebugTuple::field
    0010a5f4mov rax, [rsp+8]
    0010a5f9movzx ecx, [rsp+24]
    0010a5fetest rax, rax
    0010a601je 0x10a658
    0010a603mov bl, 1
    0010a605test cl, cl
    0010a607jne 0x10a65a
    0010a609mov r14, [rsp+16]
    0010a60ecmp rax, 1
    0010a612jne 0x10a63d
    0010a614cmp [rsp+25], 0
    0010a619je 0x10a63d
    0010a61btest [r14+52], 4
    0010a620jne 0x10a63d
    0010a622mov rdi, [r14+32]
    0010a626mov rax, [r14+40]
    0010a62alea rsi, [rip-0x7bbbf]
    0010a631mov edx, 1
    0010a636call [rax+24]
    0010a639test al, al
    0010a63bjne 0x10a65a
    0010a63d
    0010a63dloc_10a63d:
    0010a63dmov rdi, [r14+32]
    0010a641mov rax, [r14+40]
    0010a645lea rsi, [rip-0x7a617]
    0010a64cmov edx, 1
    0010a651call [rax+24]
    0010a654mov ebx, eax
    0010a656jmp 0x10a65a
    0010a658
    0010a658loc_10a658:
    0010a658mov ebx, ecx
    0010a65a
    0010a65aloc_10a65a:
    0010a65atest bl, bl
    0010a65csetne al
    0010a65fadd rsp, 32
    0010a663pop rbx
    0010a664pop r14
    0010a666pop r15
    0010a668ret
    0010a5b0
    0010a669
    0010a669 // align 0x10
    0010a670
    0010a670core::fmt::Formatter::debug_tuple_field2_finish:
    0010a670push r15
    0010a672push r14
    0010a674push r13
    0010a676push r12
    0010a678push rbx
    0010a679sub rsp, 32
    0010a67dmov rbx, r9
    0010a680mov r14, r8
    0010a683mov r15, rcx
    0010a686mov r12, rdi
    0010a689mov r13, [rsp+80]
    0010a68emov rdi, [rdi+32]
    0010a692mov rax, [r12+40]
    0010a697call [rax+24]
    0010a69amov [rsp+16], r12
    0010a69fmov [rsp+24], al
    0010a6a3mov [rsp+8], 0
    0010a6acmov [rsp+25], 0
    0010a6b1lea r12, [rsp+8]
    0010a6b6mov rdi, r12
    0010a6b9mov rsi, r15
    0010a6bcmov rdx, r14
    0010a6bfcall core::fmt::builders::DebugTuple::field
    0010a6c4mov rdi, r12
    0010a6c7mov rsi, rbx
    0010a6camov rdx, r13
    0010a6cdcall core::fmt::builders::DebugTuple::field
    0010a6d2mov rax, [rsp+8]
    0010a6d7movzx ecx, [rsp+24]
    0010a6dctest rax, rax
    0010a6dfje 0x10a736
    0010a6e1mov bl, 1
    0010a6e3test cl, cl
    0010a6e5jne 0x10a738
    0010a6e7mov r14, [rsp+16]
    0010a6eccmp rax, 1
    0010a6f0jne 0x10a71b
    0010a6f2cmp [rsp+25], 0
    0010a6f7je 0x10a71b
    0010a6f9test [r14+52], 4
    0010a6fejne 0x10a71b
    0010a700mov rdi, [r14+32]
    0010a704mov rax, [r14+40]
    0010a708lea rsi, [rip-0x7bc9d]
    0010a70fmov edx, 1
    0010a714call [rax+24]
    0010a717test al, al
    0010a719jne 0x10a738
    0010a71b
    0010a71bloc_10a71b:
    0010a71bmov rdi, [r14+32]
    0010a71fmov rax, [r14+40]
    0010a723lea rsi, [rip-0x7a6f5]
    0010a72amov edx, 1
    0010a72fcall [rax+24]
    0010a732mov ebx, eax
    0010a734jmp 0x10a738
    0010a736
    0010a736loc_10a736:
    0010a736mov ebx, ecx
    0010a738
    0010a738loc_10a738:
    0010a738test bl, bl
    0010a73asetne al
    0010a73dadd rsp, 32
    0010a741pop rbx
    0010a742pop r12
    0010a744pop r13
    0010a746pop r14
    0010a748pop r15
    0010a74aret
    0010a670
    0010a74b
    0010a74b // align 0x10
    0010a750
    0010a750_<bool as core::fmt::Display>::fmt:
    0010a750mov rax, rsi
    0010a753test dil, dil
    0010a756je 0x10a76c
    0010a758lea rsi, [rip-0xcd7b3]
    0010a75fmov edx, 4
    0010a764mov rdi, rax
    0010a767jmp 0x104b90
    0010a76c
    0010a76cloc_10a76c:
    0010a76clea rsi, [rip-0x7bb84]
    0010a773mov edx, 5
    0010a778mov rdi, rax
    0010a77bjmp 0x104b90
    0010a750
    0010a780
    0010a780_<str as core::fmt::Debug>::fmt:
    0010a780push rbp
    0010a781push r15
    0010a783push r14
    0010a785push r13
    0010a787push r12
    0010a789push rbx
    0010a78asub rsp, 88
    0010a78emov r13, rcx
    0010a791mov rbx, rdx
    0010a794mov r15, rsi
    0010a797mov r14, rdi
    0010a79amov rax, [rcx+32]
    0010a79emov rdi, rdx
    0010a7a1mov esi, 34
    0010a7a6mov r12, rax
    0010a7a9call rax
    0010a7abtest al, al
    0010a7adje 0x10a7c0
    0010a7af
    0010a7afloc_10a7af:
    0010a7afmov al, 1
    0010a7b1add rsp, 88
    0010a7b5pop rbx
    0010a7b6pop r12
    0010a7b8pop r13
    0010a7bapop r14
    0010a7bcpop r15
    0010a7bepop rbp
    0010a7bfret
    0010a7c0
    0010a7c0loc_10a7c0:
    0010a7c0test r15, r15
    0010a7c3je 0x10aa29
    0010a7c9mov [rsp+48], r13
    0010a7cemov [rsp+24], r15
    0010a7d3lea rax, [r14+r15]
    0010a7d7mov [rsp+80], rax
    0010a7dcxor r15l, r15l
    0010a7dfmov rcx, r14
    0010a7e2xor r13l, r13l
    0010a7e5mov [rsp+72], r14
    0010a7eajmp 0x10a813
    0010a7ecnop [rax]
    0010a7f0
    0010a7f0loc_10a7f0:
    0010a7f0add r15, r13
    0010a7f3mov r14, [rsp+72]
    0010a7f8
    0010a7f8loc_10a7f8:
    0010a7f8mov rax, [rsp+40]
    0010a7fdsub r13, rax
    0010a800mov rcx, [rsp+32]
    0010a805add r13, rcx
    0010a808cmp rcx, [rsp+80]
    0010a80dje 0x10aa5e
    0010a813
    0010a813loc_10a813:
    0010a813movzx ebp, [rcx]
    0010a816test bpl, bpl
    0010a819mov [rsp+40], rcx
    0010a81ejs 0x10a830
    0010a820lea rax, [rcx+1]
    0010a824
    0010a824loc_10a824:
    0010a824mov [rsp+32], rax
    0010a829jmp 0x10a8a0
    0010a82bnop [rax+rax]
    0010a830
    0010a830loc_10a830:
    0010a830mov eax, ebp
    0010a832and eax, 31
    0010a835movzx edx, [rcx+1]
    0010a839and edx, 63
    0010a83ccmp bpl, -33
    0010a840jbe 0x10a882
    0010a842lea rsi, [rcx+3]
    0010a846movzx ecx, [rcx+2]
    0010a84ashl edx, 6
    0010a84dand ecx, 63
    0010a850or ecx, edx
    0010a852cmp bpl, -16
    0010a856jb 0x10a894
    0010a858movzx ebp, [rsi]
    0010a85band eax, 7
    0010a85eshl eax, 18
    0010a861shl ecx, 6
    0010a864and ebp, 63
    0010a867or ebp, ecx
    0010a869or ebp, eax
    0010a86bcmp ebp, 0x110000
    0010a871je 0x10aa5e
    0010a877mov rax, [rsp+40]
    0010a87cadd rax, 4
    0010a880jmp 0x10a824
    0010a882
    0010a882loc_10a882:
    0010a882add rcx, 2
    0010a886mov [rsp+32], rcx
    0010a88bshl eax, 6
    0010a88eor eax, edx
    0010a890mov ebp, eax
    0010a892jmp 0x10a8a0
    0010a894
    0010a894loc_10a894:
    0010a894mov [rsp+32], rsi
    0010a899shl eax, 12
    0010a89cor ecx, eax
    0010a89emov ebp, ecx
    0010a8a0
    0010a8a0loc_10a8a0:
    0010a8a0lea rdi, [rsp+60]
    0010a8a5mov esi, ebp
    0010a8a7mov edx, 0x10001
    0010a8accall core::char::methods::_<impl char>::escape_debug_ext
    0010a8b1cmp [rsp+60], -128
    0010a8b6je 0x10a7f8
    0010a8bcmovzx eax, [rsp+71]
    0010a8c1sub al, [rsp+70]
    0010a8c5cmp al, 1
    0010a8c7je 0x10a7f8
    0010a8cdmov rdx, r13
    0010a8d0sub rdx, r15
    0010a8d3jb 0x10aab0
    0010a8d9test r15, r15
    0010a8dcje 0x10a8f7
    0010a8decmp r15, [rsp+24]
    0010a8e3jae 0x10a8f1
    0010a8e5cmp [r14+r15], -64
    0010a8eajge 0x10a8f7
    0010a8ecjmp 0x10aab0
    0010a8f1
    0010a8f1loc_10a8f1:
    0010a8f1jne 0x10aab0
    0010a8f7
    0010a8f7loc_10a8f7:
    0010a8f7test r13, r13
    0010a8faje 0x10a915
    0010a8fccmp r13, [rsp+24]
    0010a901jae 0x10a90f
    0010a903cmp [r14+r13], -65
    0010a908jg 0x10a915
    0010a90ajmp 0x10aab0
    0010a90f
    0010a90floc_10a90f:
    0010a90fjne 0x10aab0
    0010a915
    0010a915loc_10a915:
    0010a915add r15, r14
    0010a918mov rdi, rbx
    0010a91bmov rsi, r15
    0010a91emov rax, [rsp+48]
    0010a923call [rax+24]
    0010a926test al, al
    0010a928jne 0x10a7af
    0010a92emov eax, [rsp+68]
    0010a932mov [rsp+16], eax
    0010a936mov rax, [rsp+60]
    0010a93bmov [rsp+8], rax
    0010a940cmp al, -128
    0010a942jne 0x10a9b0
    0010a944mov r14b, 128
    0010a947jmp 0x10a976
    0010a949nop [rax]
    0010a950
    0010a950loc_10a950:
    0010a950mov esi, [rsp+12]
    0010a954mov [rsp+16], 0
    0010a95cmov [rsp+8], 0
    0010a965xor r14l, r14l
    0010a968
    0010a968loc_10a968:
    0010a968mov rdi, rbx
    0010a96bcall r12
    0010a96etest al, al
    0010a970jne 0x10a7af
    0010a976
    0010a976loc_10a976:
    0010a976cmp r14b, -128
    0010a97aje 0x10a950
    0010a97cmovzx r15l, [rsp+18]
    0010a982cmp r15b, [rsp+19]
    0010a987jae 0x10a9f0
    0010a989lea eax, [r15+1]
    0010a98dmov [rsp+18], al
    0010a991cmp r15b, 10
    0010a995jae 0x10aa9a
    0010a99bmovzx esi, [rsp+r15+8]
    0010a9a1jmp 0x10a968
    0010a9a3nop [rax+rax]
    0010a9b0
    0010a9b0loc_10a9b0:
    0010a9b0movzx r14l, [rsp+19]
    0010a9b6movzx r15l, [rsp+18]
    0010a9bcnop [rax]
    0010a9c0
    0010a9c0loc_10a9c0:
    0010a9c0cmp r15, r14
    0010a9c3jae 0x10a9f0
    0010a9c5lea eax, [r15+1]
    0010a9c9mov [rsp+18], al
    0010a9cdcmp r15, 9
    0010a9d1ja 0x10aa9a
    0010a9d7movzx esi, [rsp+r15+8]
    0010a9ddmov rdi, rbx
    0010a9e0call r12
    0010a9e3inc r15
    0010a9e6test al, al
    0010a9e8je 0x10a9c0
    0010a9eajmp 0x10a7af
    0010a9efnop
    0010a9f0
    0010a9f0loc_10a9f0:
    0010a9f0mov r15l, 1
    0010a9f6cmp ebp, 128
    0010a9fcjb 0x10a7f0
    0010aa02mov r15l, 2
    0010aa08cmp ebp, 2048
    0010aa0ejb 0x10a7f0
    0010aa14cmp ebp, 0x10000
    0010aa1amov r15l, 4
    0010aa20sbb r15, 0
    0010aa24jmp 0x10a7f0
    0010aa29
    0010aa29loc_10aa29:
    0010aa29xor r15l, r15l
    0010aa2cxor edx, edx
    0010aa2e
    0010aa2eloc_10aa2e:
    0010aa2eadd r14, r15
    0010aa31mov rdi, rbx
    0010aa34mov rsi, r14
    0010aa37call [r13+24]
    0010aa3btest al, al
    0010aa3djne 0x10a7af
    0010aa43mov rdi, rbx
    0010aa46mov esi, 34
    0010aa4bmov rax, r12
    0010aa4eadd rsp, 88
    0010aa52pop rbx
    0010aa53pop r12
    0010aa55pop r13
    0010aa57pop r14
    0010aa59pop r15
    0010aa5bpop rbp
    0010aa5cjmp rax
    0010aa5e
    0010aa5eloc_10aa5e:
    0010aa5etest r15, r15
    0010aa61je 0x10aa81
    0010aa63mov rcx, [rsp+24]
    0010aa68mov rax, rcx
    0010aa6bsub rax, r15
    0010aa6emov r13, [rsp+48]
    0010aa73jbe 0x10aa90
    0010aa75cmp [r14+r15], -65
    0010aa7ajle 0x10aacc
    0010aa7cmov rdx, rax
    0010aa7fjmp 0x10aa2e
    0010aa81
    0010aa81loc_10aa81:
    0010aa81xor r15l, r15l
    0010aa84mov rdx, [rsp+24]
    0010aa89mov r13, [rsp+48]
    0010aa8ejmp 0x10aa2e
    0010aa90
    0010aa90loc_10aa90:
    0010aa90jne 0x10aacc
    0010aa92mov r15, rcx
    0010aa95mov rdx, rax
    0010aa98jmp 0x10aa2e
    0010aa9a
    0010aa9aloc_10aa9a:
    0010aa9alea rdx, [rip+0xe072f]
    0010aaa1mov esi, 10
    0010aaa6mov rdi, r15
    0010aaa9call core::panicking::panic_bounds_check
    0010aaaeud2
    0010aab0
    0010aab0loc_10aab0:
    0010aab0lea r8, [rip+0xe0399]
    0010aab7mov rdi, r14
    0010aabamov rsi, [rsp+24]
    0010aabfmov rdx, r15
    0010aac2mov rcx, r13
    0010aac5call core::str::slice_error_fail
    0010aacaud2
    0010aacc
    0010aaccloc_10aacc:
    0010aacclea r8, [rip+0xe0365]
    0010aad3mov rdi, r14
    0010aad6mov rsi, rcx
    0010aad9mov rdx, r15
    0010aadccall core::str::slice_error_fail
    0010aae1ud2
    0010a780
    0010aae3
    0010aae3 // align 0x10
    0010aaf0
    0010aaf0core::char::methods::_<impl char>::escape_debug_ext:
    0010aaf0push rbp
    0010aaf1push rbx
    0010aaf2sub rsp, 24
    0010aaf6mov ebp, esi
    0010aaf8mov rbx, rdi
    0010aafbcmp esi, 39
    0010aafeja 0x10ab1c
    0010ab00mov eax, ebp
    0010ab02lea rcx, [rip-0xcd3e9]
    0010ab09movsxd rax, [rcx+4*rax]
    0010ab0dadd rax, rcx
    0010ab10jmp rax
    0010ab12mov [rbx], 12380
    0010ab17jmp 0x10ac3d
    0010ab1c
    0010ab1cloc_10ab1c:
    0010ab1ccmp ebp, 92
    0010ab1fjne 0x10ab67
    0010ab21mov [rbx], 23644
    0010ab26jmp 0x10ac3d
    0010ab2bmov [rbx], 29788
    0010ab30jmp 0x10ac3d
    0010ab35mov [rbx], 28252
    0010ab3ajmp 0x10ac3d
    0010ab3fmov [rbx], 29276
    0010ab44jmp 0x10ac3d
    0010ab49test edx, 0x10000
    0010ab4fje 0x10ab67
    0010ab51mov [rbx], 8796
    0010ab56jmp 0x10ac3d
    0010ab5btest edx, 256
    0010ab61jne 0x10ac38
    0010ab67
    0010ab67loc_10ab67:
    0010ab67test dl, 1
    0010ab6aje 0x10ab77
    0010ab6cmov edi, ebp
    0010ab6ecall core::unicode::unicode_data::grapheme_extend::lookup
    0010ab73test al, al
    0010ab75jne 0x10ab8d
    0010ab77
    0010ab77loc_10ab77:
    0010ab77mov edi, ebp
    0010ab79call core::unicode::printable::is_printable
    0010ab7etest al, al
    0010ab80je 0x10ab8d
    0010ab82mov [rbx], -128
    0010ab85mov [rbx+4], ebp
    0010ab88jmp 0x10ac4b
    0010ab8d
    0010ab8dloc_10ab8d:
    0010ab8dmov [rsp+16], 0
    0010ab92mov [rsp+14], 0
    0010ab99mov [rsp+23], 125
    0010ab9emov ecx, ebp
    0010aba0shr ecx, 20
    0010aba3and ecx, 15
    0010aba6lea rax, [rip-0xd1d7d]
    0010abadmovzx ecx, [rcx+rax]
    0010abb1mov [rsp+17], cl
    0010abb5mov ecx, ebp
    0010abb7shr ecx, 16
    0010abbaand ecx, 15
    0010abbdmovzx ecx, [rcx+rax]
    0010abc1mov [rsp+18], cl
    0010abc5mov ecx, ebp
    0010abc7shr ecx, 12
    0010abcaand ecx, 15
    0010abcdmovzx ecx, [rcx+rax]
    0010abd1mov [rsp+19], cl
    0010abd5mov ecx, ebp
    0010abd7shr ecx, 8
    0010abdaand ecx, 15
    0010abddmovzx ecx, [rcx+rax]
    0010abe1mov [rsp+20], cl
    0010abe5mov ecx, ebp
    0010abe7shr ecx, 4
    0010abeaand ecx, 15
    0010abedmovzx ecx, [rcx+rax]
    0010abf1mov [rsp+21], cl
    0010abf5mov ecx, ebp
    0010abf7and ecx, 15
    0010abfamovzx eax, [rcx+rax]
    0010abfemov [rsp+22], al
    0010ac02or ebp, 1
    0010ac05bsr eax, ebp
    0010ac08xor eax, 28
    0010ac0bshr eax, 2
    0010ac0elea rcx, [rax-2]
    0010ac12mov [rsp+rax+14], 123
    0010ac17mov [rsp+rax+12], 30044
    0010ac1emovzx eax, [rsp+22]
    0010ac23mov [rbx+8], ax
    0010ac27mov rax, [rsp+14]
    0010ac2cmov [rbx], rax
    0010ac2fmov [rbx+10], cl
    0010ac32mov [rbx+11], 10
    0010ac36jmp 0x10ac4b
    0010ac38
    0010ac38loc_10ac38:
    0010ac38mov [rbx], 10076
    0010ac3d
    0010ac3dloc_10ac3d:
    0010ac3dmov [rbx+2], 0
    0010ac45mov [rbx+10], 512
    0010ac4b
    0010ac4bloc_10ac4b:
    0010ac4badd rsp, 24
    0010ac4fpop rbx
    0010ac50pop rbp
    0010ac51ret
    0010aaf0
    0010ac52
    0010ac52 // align 0x10
    0010ac60
    0010ac60core::str::slice_error_fail:
    0010ac60push rax
    0010ac61call core::str::slice_error_fail_rt
    0010ac66ud2
    0010ac60
    0010ac68
    0010ac68 // align 0x10
    0010ac70
    0010ac70core::str::slice_error_fail_rt:
    0010ac70sub rsp, 216
    0010ac77mov [rsp+192], rdx
    0010ac7fmov [rsp+200], rcx
    0010ac87cmp rsi, 257
    0010ac8ejb 0x10ace4
    0010ac90mov eax, 256
    0010ac95cmp [rdi+256], -65
    0010ac9cjg 0x10accc
    0010ac9emov eax, 255
    0010aca3cmp [rdi+255], -65
    0010acaajg 0x10accc
    0010acacmov eax, 254
    0010acb1cmp [rdi+254], -65
    0010acb8jg 0x10accc
    0010acbamov eax, 253
    0010acbfcmp [rdi+253], -65
    0010acc6jle 0x10aea9
    0010accc
    0010acccloc_10accc:
    0010acccmov [rsp+16], rdi
    0010acd1mov [rsp+24], rax
    0010acd6mov eax, 5
    0010acdblea r9, [rip-0xc6ff1]
    0010ace2jmp 0x10acf7
    0010ace4
    0010ace4loc_10ace4:
    0010ace4mov [rsp+16], rdi
    0010ace9mov [rsp+24], rsi
    0010aceelea r9, [rip-0x799fd]
    0010acf5xor eax, eax
    0010acf7
    0010acf7loc_10acf7:
    0010acf7mov [rsp+160], r9
    0010acffmov [rsp+168], rax
    0010ad07cmp rdx, rsi
    0010ad0aja 0x10adb1
    0010ad10cmp rcx, rsi
    0010ad13ja 0x10adb1
    0010ad19cmp rdx, rcx
    0010ad1cjbe 0x10ae41
    0010ad22lea rax, [rsp+192]
    0010ad2amov [rsp+80], rax
    0010ad2flea rax, [rip-27846]
    0010ad36mov [rsp+88], rax
    0010ad3blea rcx, [rsp+200]
    0010ad43mov [rsp+96], rcx
    0010ad48mov [rsp+104], rax
    0010ad4dlea rax, [rsp+16]
    0010ad52mov [rsp+112], rax
    0010ad57lea rax, [rip-23694]
    0010ad5emov [rsp+120], rax
    0010ad63lea rcx, [rsp+160]
    0010ad6bmov [rsp+128], rcx
    0010ad73mov [rsp+136], rax
    0010ad7blea rax, [rip+0xe026e]
    0010ad82mov [rsp+32], rax
    0010ad87mov [rsp+40], 4
    0010ad90mov [rsp+64], 0
    0010ad99lea rax, [rsp+80]
    0010ad9emov [rsp+48], rax
    0010ada3mov [rsp+56], 4
    0010adacjmp 0x10ae32
    0010adb1
    0010adb1loc_10adb1:
    0010adb1cmp rdx, rsi
    0010adb4cmova rcx, rdx
    0010adb8mov [rsp+176], rcx
    0010adc0lea rax, [rsp+176]
    0010adc8mov [rsp+80], rax
    0010adcdlea rax, [rip-28004]
    0010add4mov [rsp+88], rax
    0010add9lea rax, [rsp+16]
    0010addemov [rsp+96], rax
    0010ade3lea rax, [rip-23834]
    0010adeamov [rsp+104], rax
    0010adeflea rcx, [rsp+160]
    0010adf7mov [rsp+112], rcx
    0010adfcmov [rsp+120], rax
    0010ae01lea rax, [rip+0xe0278]
    0010ae08mov [rsp+32], rax
    0010ae0dmov [rsp+40], 3
    0010ae16mov [rsp+64], 0
    0010ae1flea rax, [rsp+80]
    0010ae24mov [rsp+48], rax
    0010ae29mov [rsp+56], 3
    0010ae32
    0010ae32loc_10ae32:
    0010ae32lea rdi, [rsp+32]
    0010ae37mov rsi, r8
    0010ae3acall core::panicking::panic_fmt
    0010ae3fud2
    0010ae41
    0010ae41loc_10ae41:
    0010ae41test rdx, rdx
    0010ae44je 0x10ae51
    0010ae46cmp rdx, rsi
    0010ae49jae 0x10ae51
    0010ae4bcmp [rdi+rdx], -64
    0010ae4fjl 0x10ae54
    0010ae51
    0010ae51loc_10ae51:
    0010ae51mov rdx, rcx
    0010ae54
    0010ae54loc_10ae54:
    0010ae54mov [rsp+208], rdx
    0010ae5cmov rax, rsi
    0010ae5fcmp rdx, rsi
    0010ae62jae 0x10af05
    0010ae68xor ecx, ecx
    0010ae6amov rax, rdx
    0010ae6dsub rax, 3
    0010ae71cmovae rcx, rax
    0010ae75lea rax, [rdx+1]
    0010ae79cmp rcx, rax
    0010ae7cjbe 0x10ae92
    0010ae7elea rdx, [rip+0xe022b]
    0010ae85mov rdi, rcx
    0010ae88mov rsi, rax
    0010ae8bcall core::slice::index::slice_index_order_fail
    0010ae90ud2
    0010ae92
    0010ae92loc_10ae92:
    0010ae92je 0x10af02
    0010ae94lea r9, [rdi+rcx]
    0010ae98add rax, rdi
    0010ae9bsub rax, r9
    0010ae9ecmp [rdi+rdx], -65
    0010aea2jle 0x10aeb7
    0010aea4dec rax
    0010aea7jmp 0x10af02
    0010aea9
    0010aea9loc_10aea9:
    0010aea9mov ecx, 253
    0010aeaexor edx, edx
    0010aeb0call core::str::slice_error_fail
    0010aeb5ud2
    0010aeb7
    0010aeb7loc_10aeb7:
    0010aeb7cmp rcx, rdx
    0010aebaje 0x10af02
    0010aebcadd rdx, rdi
    0010aebfcmp [rdx-1], -65
    0010aec3jle 0x10aecb
    0010aec5add rax, -2
    0010aec9jmp 0x10af02
    0010aecb
    0010aecbloc_10aecb:
    0010aecblea r10, [rdx-1]
    0010aecfcmp r9, r10
    0010aed2je 0x10af02
    0010aed4cmp [rdx-2], -65
    0010aed8jle 0x10aee0
    0010aedaadd rax, -3
    0010aedejmp 0x10af02
    0010aee0
    0010aee0loc_10aee0:
    0010aee0lea r10, [rdx-2]
    0010aee4cmp r9, r10
    0010aee7je 0x10af02
    0010aee9cmp [rdx-3], -65
    0010aeedjle 0x10aef5
    0010aeefadd rax, -4
    0010aef3jmp 0x10af02
    0010aef5
    0010aef5loc_10aef5:
    0010aef5add rdx, -3
    0010aef9cmp r9, rdx
    0010aefcje 0x10af02
    0010aefeadd rax, -5
    0010af02
    0010af02loc_10af02:
    0010af02add rax, rcx
    0010af05
    0010af05loc_10af05:
    0010af05test rax, rax
    0010af08jne 0x10af0f
    0010af0amov rcx, rsi
    0010af0djmp 0x10af2c
    0010af0f
    0010af0floc_10af0f:
    0010af0fmov rcx, rsi
    0010af12sub rcx, rax
    0010af15jbe 0x10af2a
    0010af17cmp [rdi+rax], -65
    0010af1bjg 0x10af2c
    0010af1d
    0010af1dloc_10af1d:
    0010af1dmov rdx, rax
    0010af20mov rcx, rsi
    0010af23call core::str::slice_error_fail
    0010af28ud2
    0010af2a
    0010af2aloc_10af2a:
    0010af2ajne 0x10af1d
    0010af2c
    0010af2cloc_10af2c:
    0010af2ctest rcx, rcx
    0010af2fjne 0x10af47
    0010af31
    0010af31loc_10af31:
    0010af31lea rdi, [rip-0x79f3a]
    0010af38mov esi, 43
    0010af3dmov rdx, r8
    0010af40call core::panicking::panic
    0010af45ud2
    0010af47
    0010af47loc_10af47:
    0010af47movzx edx, [rdi+rax]
    0010af4btest dl, dl
    0010af4djs 0x10af5d
    0010af4fmov [rsp+12], edx
    0010af53mov ecx, 1
    0010af58jmp 0x10afe2
    0010af5d
    0010af5dloc_10af5d:
    0010af5dmov ecx, edx
    0010af5fand ecx, 31
    0010af62movzx r9l, [rdi+rax+1]
    0010af68and r9l, 63
    0010af6ccmp dl, -33
    0010af6fjbe 0x10afa4
    0010af71movzx esi, [rdi+rax+2]
    0010af76shl r9l, 6
    0010af7aand esi, 63
    0010af7dor esi, r9l
    0010af80cmp dl, -16
    0010af83jb 0x10afae
    0010af85movzx edx, [rdi+rax+3]
    0010af8aand ecx, 7
    0010af8dshl ecx, 18
    0010af90shl esi, 6
    0010af93and edx, 63
    0010af96or edx, esi
    0010af98or edx, ecx
    0010af9acmp edx, 0x110000
    0010afa0je 0x10af31
    0010afa2jmp 0x10afb5
    0010afa4
    0010afa4loc_10afa4:
    0010afa4shl ecx, 6
    0010afa7or ecx, r9l
    0010afaamov edx, ecx
    0010afacjmp 0x10afb5
    0010afae
    0010afaeloc_10afae:
    0010afaeshl ecx, 12
    0010afb1or esi, ecx
    0010afb3mov edx, esi
    0010afb5
    0010afb5loc_10afb5:
    0010afb5mov [rsp+12], edx
    0010afb9mov ecx, 1
    0010afbecmp edx, 128
    0010afc4jb 0x10afe2
    0010afc6mov ecx, 2
    0010afcbcmp edx, 2048
    0010afd1jb 0x10afe2
    0010afd3cmp edx, 0x10000
    0010afd9mov ecx, 4
    0010afdesbb rcx, 0
    0010afe2
    0010afe2loc_10afe2:
    0010afe2add rcx, rax
    0010afe5mov [rsp+176], rax
    0010afedmov [rsp+184], rcx
    0010aff5lea rax, [rsp+208]
    0010affdmov [rsp+80], rax
    0010b002lea rax, [rip-28569]
    0010b009mov [rsp+88], rax
    0010b00elea rax, [rsp+12]
    0010b013mov [rsp+96], rax
    0010b018lea rax, [rip+145]
    0010b01fmov [rsp+104], rax
    0010b024lea rax, [rsp+176]
    0010b02cmov [rsp+112], rax
    0010b031lea rax, [rip+408]
    0010b038mov [rsp+120], rax
    0010b03dlea rax, [rsp+16]
    0010b042mov [rsp+128], rax
    0010b04alea rax, [rip-24449]
    0010b051mov [rsp+136], rax
    0010b059lea rcx, [rsp+160]
    0010b061mov [rsp+144], rcx
    0010b069mov [rsp+152], rax
    0010b071lea rax, [rip+0xdffb8]
    0010b078mov [rsp+32], rax
    0010b07dmov [rsp+40], 5
    0010b086mov [rsp+64], 0
    0010b08flea rax, [rsp+80]
    0010b094mov [rsp+48], rax
    0010b099mov [rsp+56], 5
    0010b0a2jmp 0x10ae32
    0010ac70
    0010b0a7
    0010b0a7 // align 0x10
    0010b0b0
    0010b0b0_<char as core::fmt::Debug>::fmt:
    0010b0b0push rbp
    0010b0b1push r15
    0010b0b3push r14
    0010b0b5push r12
    0010b0b7push rbx
    0010b0b8sub rsp, 16
    0010b0bcmov r14, rdi
    0010b0bfmov rbx, [rsi+32]
    0010b0c3mov rax, [rsi+40]
    0010b0c7mov rax, [rax+32]
    0010b0cbmov rdi, rbx
    0010b0cemov esi, 39
    0010b0d3mov r12, rax
    0010b0d6call rax
    0010b0d8test al, al
    0010b0daje 0x10b0eb
    0010b0dc
    0010b0dcloc_10b0dc:
    0010b0dcmov al, 1
    0010b0deadd rsp, 16
    0010b0e2pop rbx
    0010b0e3pop r12
    0010b0e5pop r14
    0010b0e7pop r15
    0010b0e9pop rbp
    0010b0earet
    0010b0eb
    0010b0ebloc_10b0eb:
    0010b0ebmov esi, [r14]
    0010b0eemov rdi, rsp
    0010b0f1mov edx, 257
    0010b0f6call core::char::methods::_<impl char>::escape_debug_ext
    0010b0fbcmp [rsp], -128
    0010b0ffjne 0x10b158
    0010b101mov bpl, 128
    0010b104jmp 0x10b130
    0010b106nop [rax+rax]
    0010b110
    0010b110loc_10b110:
    0010b110mov esi, [rsp+4]
    0010b114mov [rsp+8], 0
    0010b11cmov [rsp], 0
    0010b124xor ebp, ebp
    0010b126
    0010b126loc_10b126:
    0010b126mov rdi, rbx
    0010b129call r12
    0010b12ctest al, al
    0010b12ejne 0x10b0dc
    0010b130
    0010b130loc_10b130:
    0010b130cmp bpl, -128
    0010b134je 0x10b110
    0010b136movzx r14l, [rsp+10]
    0010b13ccmp r14b, [rsp+11]
    0010b141jae 0x10b19a
    0010b143lea eax, [r14+1]
    0010b147mov [rsp+10], al
    0010b14bcmp r14b, 10
    0010b14fjae 0x10b1b3
    0010b151movzx esi, [rsp+r14]
    0010b156jmp 0x10b126
    0010b158
    0010b158loc_10b158:
    0010b158movzx r15l, [rsp+11]
    0010b15emovzx r14l, [rsp+10]
    0010b164nop [rax+rax]
    0010b170
    0010b170loc_10b170:
    0010b170cmp r14, r15
    0010b173jae 0x10b19a
    0010b175lea eax, [r14+1]
    0010b179mov [rsp+10], al
    0010b17dcmp r14, 9
    0010b181ja 0x10b1b3
    0010b183movzx esi, [rsp+r14]
    0010b188mov rdi, rbx
    0010b18bcall r12
    0010b18einc r14
    0010b191test al, al
    0010b193je 0x10b170
    0010b195jmp 0x10b0dc
    0010b19a
    0010b19aloc_10b19a:
    0010b19amov rdi, rbx
    0010b19dmov esi, 39
    0010b1a2mov rax, r12
    0010b1a5add rsp, 16
    0010b1a9pop rbx
    0010b1aapop r12
    0010b1acpop r14
    0010b1aepop r15
    0010b1b0pop rbp
    0010b1b1jmp rax
    0010b1b3
    0010b1b3loc_10b1b3:
    0010b1b3lea rdx, [rip+0xe0016]
    0010b1bamov esi, 10
    0010b1bfmov rdi, r14
    0010b1c2call core::panicking::panic_bounds_check
    0010b1c7ud2
    0010b0b0
    0010b1c9
    0010b1c9 // align 0x10
    0010b1d0
    0010b1d0_<core::ops::range::Range<Idx> as core::fmt::Debug>::fmt:
    0010b1d0push r14
    0010b1d2push rbx
    0010b1d3sub rsp, 56
    0010b1d7mov rbx, rsi
    0010b1damov r14, rdi
    0010b1ddcall _ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u64$GT$3fmt17hfd34c49f95dd23e5E.84
    0010b1e2test al, al
    0010b1e4jne 0x10b225
    0010b1e6lea rax, [rip+0xdfa13]
    0010b1edmov [rsp+8], rax
    0010b1f2mov [rsp+16], 1
    0010b1fblea rax, [rip-0x79f0a]
    0010b202mov [rsp+24], rax
    0010b207xorps x0, x0
    0010b20amovups [rsp+32], x0
    0010b20fmov rdi, [rbx+32]
    0010b213mov rsi, [rbx+40]
    0010b217lea rdx, [rsp+8]
    0010b21ccall core::fmt::write
    0010b221test al, al
    0010b223je 0x10b22f
    0010b225
    0010b225loc_10b225:
    0010b225mov al, 1
    0010b227add rsp, 56
    0010b22bpop rbx
    0010b22cpop r14
    0010b22eret
    0010b22f
    0010b22floc_10b22f:
    0010b22fadd r14, 8
    0010b233mov rdi, r14
    0010b236mov rsi, rbx
    0010b239add rsp, 56
    0010b23dpop rbx
    0010b23epop r14
    0010b240jmp 0x105340
    0010b1d0
    0010b245
    0010b245 // align 0x10
    0010b250
    0010b250core::unicode::unicode_data::grapheme_extend::lookup:
    0010b250push rax
    0010b251mov esi, edi
    0010b253shl esi, 11
    0010b256mov eax, 33
    0010b25bxor edx, edx
    0010b25dlea rcx, [rip-0xc3ea0]
    0010b264mov r8l, 255
    0010b26amov r9l, 33
    0010b270jmp 0x10b288
    0010b272
    0010b272 66 66 66 66 66 2e 0f 1f 84 00 00 00 00 00 fffff.........
    0010b280
    0010b280loc_10b280:
    0010b280mov r9, rax
    0010b283
    0010b283loc_10b283:
    0010b283sub rax, rdx
    0010b286jbe 0x10b2c4
    0010b288
    0010b288loc_10b288:
    0010b288shr rax, 1
    0010b28badd rax, rdx
    0010b28emov r11l, [rcx+4*rax]
    0010b292shl r11l, 11
    0010b296xor r10l, r10l
    0010b299cmp r11l, esi
    0010b29csetne r10b
    0010b2a0cmovb r10l, r8l
    0010b2a4cmp r10b, 1
    0010b2a8je 0x10b280
    0010b2aamovzx edx, r10b
    0010b2aeinc rax
    0010b2b1cmp edx, 255
    0010b2b7jne 0x10b2c1
    0010b2b9mov rdx, rax
    0010b2bcmov rax, r9
    0010b2bfjmp 0x10b283
    0010b2c1
    0010b2c1loc_10b2c1:
    0010b2c1mov rdx, rax
    0010b2c4
    0010b2c4loc_10b2c4:
    0010b2c4cmp rdx, 32
    0010b2c8ja 0x10b373
    0010b2cemov eax, [rcx+4*rdx]
    0010b2d1shr eax, 21
    0010b2d4cmp rdx, 32
    0010b2d8jne 0x10b2e6
    0010b2damov edx, 31
    0010b2dfmov esi, 727
    0010b2e4jmp 0x10b2f5
    0010b2e6
    0010b2e6loc_10b2e6:
    0010b2e6mov esi, [rcx+4*rdx+4]
    0010b2eashr esi, 21
    0010b2edtest rdx, rdx
    0010b2f0je 0x10b349
    0010b2f2dec rdx
    0010b2f5
    0010b2f5loc_10b2f5:
    0010b2f5mov r8l, 0x1fffff
    0010b2fband r8l, [rcx+4*rdx]
    0010b2ff
    0010b2ffloc_10b2ff:
    0010b2ffmov rcx, rax
    0010b302not rcx
    0010b305add rcx, rsi
    0010b308je 0x10b345
    0010b30asub edi, r8l
    0010b30ddec rsi
    0010b310xor ecx, ecx
    0010b312lea r8, [rip-0xc3ed1]
    0010b319mov rdx, rax
    0010b31cnop [rax]
    0010b320
    0010b320loc_10b320:
    0010b320cmp rdx, 726
    0010b327ja 0x10b34e
    0010b329movzx r9l, [rdx+r8]
    0010b32eadd ecx, r9l
    0010b331cmp ecx, edi
    0010b333ja 0x10b342
    0010b335inc rdx
    0010b338cmp rsi, rdx
    0010b33bjne 0x10b320
    0010b33dmov rax, rsi
    0010b340jmp 0x10b345
    0010b342
    0010b342loc_10b342:
    0010b342mov rax, rdx
    0010b345
    0010b345loc_10b345:
    0010b345and al, 1
    0010b347pop rcx
    0010b348ret
    0010b349
    0010b349loc_10b349:
    0010b349xor r8l, r8l
    0010b34cjmp 0x10b2ff
    0010b34e
    0010b34eloc_10b34e:
    0010b34ecmp rax, 728
    0010b354mov ecx, 727
    0010b359cmovb rax, rcx
    0010b35dlea rdx, [rip+0xdfe24]
    0010b364mov esi, 727
    0010b369mov rdi, rax
    0010b36ccall core::panicking::panic_bounds_check
    0010b371ud2
    0010b373
    0010b373loc_10b373:
    0010b373lea rdx, [rip+0xdfdf6]
    0010b37amov edi, 33
    0010b37fmov esi, 33
    0010b384call core::panicking::panic_bounds_check
    0010b389ud2
    0010b250
    0010b38b
    0010b38b // align 0x10
    0010b390
    0010b390core::unicode::printable::is_printable:
    0010b390push rax
    0010b391cmp edi, 32
    0010b394jae 0x10b39a
    0010b396xor eax, eax
    0010b398
    0010b398loc_10b398:
    0010b398pop rcx
    0010b399ret
    0010b39a
    0010b39aloc_10b39a:
    0010b39amov al, 1
    0010b39ccmp edi, 127
    0010b39fjb 0x10b398
    0010b3a1cmp edi, 0x10000
    0010b3a7jae 0x10b3d3
    0010b3a9mov [rsp], 303
    0010b3b1lea rsi, [rip-0xc72f7]
    0010b3b8lea rcx, [rip-0xc72ae]
    0010b3bflea r9, [rip-0xc7196]
    0010b3c6mov edx, 40
    0010b3cbmov r8l, 287
    0010b3d1jmp 0x10b403
    0010b3d3
    0010b3d3loc_10b3d3:
    0010b3d3cmp edi, 0x20000
    0010b3d9jae 0x10b40a
    0010b3dbmov [rsp], 450
    0010b3e3lea rsi, [rip-0xc7607]
    0010b3ealea rcx, [rip-0xc75b6]
    0010b3f1lea r9, [rip-0xc74f9]
    0010b3f8mov edx, 44
    0010b3fdmov r8l, 196
    0010b403
    0010b403loc_10b403:
    0010b403call core::unicode::printable::check
    0010b408pop rcx
    0010b409ret
    0010b40a
    0010b40aloc_10b40a:
    0010b40amovd x0, edi
    0010b40epshufd x0, x0, 0
    0010b413paddd x0, [rip-0xd2b8b]
    0010b41bpxor x0, [rip-0xd2b83]
    0010b423movdqa x1, [rip-0xd2b7b]
    0010b42bpcmpgtd x1, x0
    0010b42fmovmskps ecx, x1
    0010b432xor eax, eax
    0010b434test ecx, ecx
    0010b436jne 0x10b398
    0010b43clea ecx, [rdi-0x3134b]
    0010b442cmp ecx, 5
    0010b445jb 0x10b398
    0010b44blea ecx, [rdi-0x323b0]
    0010b451cmp ecx, 0xadd50
    0010b457jb 0x10b398
    0010b45dmov ecx, edi
    0010b45fand ecx, -32
    0010b462cmp ecx, 0x2a6e0
    0010b468je 0x10b398
    0010b46emov ecx, edi
    0010b470and ecx, -2
    0010b473cmp ecx, 0x2b81e
    0010b479je 0x10b398
    0010b47fadd edi, 0xffffffffffef0000
    0010b485cmp edi, 0xfffffffffffd01f0
    0010b48bsetb al
    0010b48epop rcx
    0010b48fret
    0010b390
    0010b490
    0010b490core::unicode::printable::check:
    0010b490push r15
    0010b492push r14
    0010b494push r12
    0010b496push rbx
    0010b497push rax
    0010b498mov r11, [rsp+48]
    0010b49dmov ebx, edi
    0010b49fshr ebx, 8
    0010b4a2lea rdx, [rsi+2*rdx]
    0010b4a6xor eax, eax
    0010b4a8
    0010b4a8loc_10b4a8:
    0010b4a8mov r15, rsi
    0010b4abmovzx r14l, [rsi+1]
    0010b4b0add rsi, 2
    0010b4b4lea r10, [rax+r14]
    0010b4b8cmp [r15], bl
    0010b4bbjne 0x10b500
    0010b4bdcmp rax, r10
    0010b4c0ja 0x10b573
    0010b4c6cmp r10, r8
    0010b4c9ja 0x10b587
    0010b4cfadd rax, rcx
    0010b4d2xor r15l, r15l
    0010b4d5nop [rax+rax]
    0010b4e0
    0010b4e0loc_10b4e0:
    0010b4e0cmp r14, r15
    0010b4e3je 0x10b502
    0010b4e5lea r12, [r15+1]
    0010b4e9cmp [rax+r15], dil
    0010b4edmov r15, r12
    0010b4f0jne 0x10b4e0
    0010b4f2jmp 0x10b563
    0010b4f4
    0010b4f4 66 66 66 2e 0f 1f 84 00 00 00 00 00 fff.........
    0010b500
    0010b500loc_10b500:
    0010b500ja 0x10b50a
    0010b502
    0010b502loc_10b502:
    0010b502mov rax, r10
    0010b505cmp rsi, rdx
    0010b508jne 0x10b4a8
    0010b50a
    0010b50aloc_10b50a:
    0010b50aadd r11, r9
    0010b50dmovzx ecx, di
    0010b510mov al, 1
    0010b512nop [rax+rax]
    0010b520
    0010b520loc_10b520:
    0010b520lea rsi, [r9+1]
    0010b524movzx edx, [r9]
    0010b528test dl, dl
    0010b52ajs 0x10b540
    0010b52cmov r9, rsi
    0010b52fsub ecx, edx
    0010b531jns 0x10b55a
    0010b533jmp 0x10b565
    0010b535nop [rax+rax]
    0010b540
    0010b540loc_10b540:
    0010b540cmp rsi, r11
    0010b543je 0x10b59b
    0010b545movzx esi, [r9+1]
    0010b54aadd r9, 2
    0010b54eand edx, 127
    0010b551shl edx, 8
    0010b554or edx, esi
    0010b556sub ecx, edx
    0010b558js 0x10b565
    0010b55a
    0010b55aloc_10b55a:
    0010b55axor al, 1
    0010b55ccmp r9, r11
    0010b55fjne 0x10b520
    0010b561jmp 0x10b565
    0010b563
    0010b563loc_10b563:
    0010b563xor eax, eax
    0010b565
    0010b565loc_10b565:
    0010b565and al, 1
    0010b567add rsp, 8
    0010b56bpop rbx
    0010b56cpop r12
    0010b56epop r14
    0010b570pop r15
    0010b572ret
    0010b573
    0010b573loc_10b573:
    0010b573lea rdx, [rip+0xdfbde]
    0010b57amov rdi, rax
    0010b57dmov rsi, r10
    0010b580call core::slice::index::slice_index_order_fail
    0010b585ud2
    0010b587
    0010b587loc_10b587:
    0010b587lea rdx, [rip+0xdfbca]
    0010b58emov rdi, r10
    0010b591mov rsi, r8
    0010b594call core::slice::index::slice_end_index_len_fail
    0010b599ud2
    0010b59b
    0010b59bloc_10b59b:
    0010b59blea rdi, [rip-0x7a5a4]
    0010b5a2lea rdx, [rip+0xdfb97]
    0010b5a9mov esi, 43
    0010b5aecall core::panicking::panic
    0010b5b3ud2
    0010b490
    0010b5b5
    0010b5b5 // align 0x10
    0010b5c0
    0010b5c0_<char as core::fmt::Display>::fmt:
    0010b5c0mov rax, [rsi]
    0010b5c3or rax, [rsi+16]
    0010b5c7mov eax, [rdi]
    0010b5c9jne 0x10b5db
    0010b5cbmov rdi, [rsi+32]
    0010b5cfmov rcx, [rsi+40]
    0010b5d3mov rcx, [rcx+32]
    0010b5d7mov esi, eax
    0010b5d9jmp rcx
    0010b5db
    0010b5dbloc_10b5db:
    0010b5dbpush rax
    0010b5dcmov [rsp+4], 0
    0010b5e4cmp eax, 128
    0010b5e9jae 0x10b5f9
    0010b5ebmov [rsp+4], al
    0010b5efmov edx, 1
    0010b5f4jmp 0x10b67f
    0010b5f9
    0010b5f9loc_10b5f9:
    0010b5f9mov ecx, eax
    0010b5fbcmp eax, 2048
    0010b600jae 0x10b61b
    0010b602shr ecx, 6
    0010b605or cl, 192
    0010b608mov [rsp+4], cl
    0010b60cand al, 63
    0010b60eor al, 128
    0010b610mov [rsp+5], al
    0010b614mov edx, 2
    0010b619jmp 0x10b67f
    0010b61b
    0010b61bloc_10b61b:
    0010b61bcmp eax, 0x10000
    0010b620jae 0x10b64a
    0010b622shr ecx, 12
    0010b625or cl, 224
    0010b628mov [rsp+4], cl
    0010b62cmov ecx, eax
    0010b62eshr ecx, 6
    0010b631and cl, 63
    0010b634or cl, 128
    0010b637mov [rsp+5], cl
    0010b63band al, 63
    0010b63dor al, 128
    0010b63fmov [rsp+6], al
    0010b643mov edx, 3
    0010b648jmp 0x10b67f
    0010b64a
    0010b64aloc_10b64a:
    0010b64ashr ecx, 18
    0010b64dor cl, 240
    0010b650mov [rsp+4], cl
    0010b654mov ecx, eax
    0010b656shr ecx, 12
    0010b659and cl, 63
    0010b65cor cl, 128
    0010b65fmov [rsp+5], cl
    0010b663mov ecx, eax
    0010b665shr ecx, 6
    0010b668and cl, 63
    0010b66bor cl, 128
    0010b66emov [rsp+6], cl
    0010b672and al, 63
    0010b674or al, 128
    0010b676mov [rsp+7], al
    0010b67amov edx, 4
    0010b67f
    0010b67floc_10b67f:
    0010b67flea rax, [rsp+4]
    0010b684mov rdi, rsi
    0010b687mov rsi, rax
    0010b68acall core::fmt::Formatter::pad
    0010b68fpop rcx
    0010b690ret
    0010b5c0
    0010b691
    0010b691 // align 0x10
    0010b6a0
    0010b6a0core::slice::memchr::memchr_aligned:
    0010b6a0push r14
    0010b6a2push rbx
    0010b6a3lea r8, [rsi+7]
    0010b6a7and r8, -8
    0010b6absub r8, rsi
    0010b6aeje 0x10b6dd
    0010b6b0cmp r8, rdx
    0010b6b3cmovae r8, rdx
    0010b6b7test r8, r8
    0010b6baje 0x10b6dd
    0010b6bcxor ecx, ecx
    0010b6benop
    0010b6c0
    0010b6c0loc_10b6c0:
    0010b6c0cmp [rsi+rcx], dil
    0010b6c4je 0x10b776
    0010b6cainc rcx
    0010b6cdcmp r8, rcx
    0010b6d0jne 0x10b6c0
    0010b6d2lea rax, [rdx-16]
    0010b6d6cmp r8, rax
    0010b6d9jbe 0x10b6e4
    0010b6dbjmp 0x10b744
    0010b6dd
    0010b6ddloc_10b6dd:
    0010b6ddlea rax, [rdx-16]
    0010b6e1xor r8l, r8l
    0010b6e4
    0010b6e4loc_10b6e4:
    0010b6e4mov rcx, 0xfefefefefefefeff
    0010b6eemovzx r10l, dil
    0010b6f2mov r9, 0x101010101010101
    0010b6fcimul r9, r10
    0010b700mov r10, 0x8080808080808080
    0010b70anop [rax+rax]
    0010b710
    0010b710loc_10b710:
    0010b710mov r11, [rsi+r8]
    0010b714xor r11, r9
    0010b717lea rbx, [r11+rcx]
    0010b71bnot r11
    0010b71eand r11, rbx
    0010b721mov rbx, [rsi+r8+8]
    0010b726xor rbx, r9
    0010b729lea r14, [rbx+rcx]
    0010b72dnot rbx
    0010b730and rbx, r14
    0010b733or rbx, r11
    0010b736test rbx, r10
    0010b739jne 0x10b744
    0010b73badd r8, 16
    0010b73fcmp r8, rax
    0010b742jbe 0x10b710
    0010b744
    0010b744loc_10b744:
    0010b744mov r9, rdx
    0010b747sub r9, r8
    0010b74ajne 0x10b753
    0010b74cxor eax, eax
    0010b74emov rcx, rdx
    0010b751jmp 0x10b77b
    0010b753
    0010b753loc_10b753:
    0010b753add rsi, r8
    0010b756xor eax, eax
    0010b758xor ecx, ecx
    0010b75anop [rax+rax]
    0010b760
    0010b760loc_10b760:
    0010b760cmp [rsi+rcx], dil
    0010b764je 0x10b773
    0010b766inc rcx
    0010b769cmp r9, rcx
    0010b76cjne 0x10b760
    0010b76emov rcx, rdx
    0010b771jmp 0x10b77b
    0010b773
    0010b773loc_10b773:
    0010b773add rcx, r8
    0010b776
    0010b776loc_10b776:
    0010b776mov eax, 1
    0010b77b
    0010b77bloc_10b77b:
    0010b77bmov rdx, rcx
    0010b77epop rbx
    0010b77fpop r14
    0010b781ret
    0010b6a0
    0010b782
    0010b782 // align 0x10
    0010b790
    0010b790core::slice::memchr::memrchr:
    0010b790push r15
    0010b792push r14
    0010b794push rbx
    0010b795lea rcx, [rsi+7]
    0010b799and rcx, -8
    0010b79dsub rcx, rsi
    0010b7a0mov rax, rdx
    0010b7a3mov r9, rdx
    0010b7a6cmp rdx, rcx
    0010b7a9jb 0x10b7c4
    0010b7abmov r8l, edx
    0010b7aesub r8l, ecx
    0010b7b1and r8l, 15
    0010b7b5mov rax, rdx
    0010b7b8sub rax, r8
    0010b7bbjb 0x10b883
    0010b7c1mov r9, rcx
    0010b7c4
    0010b7c4loc_10b7c4:
    0010b7c4lea r8, [rsi+rdx]
    0010b7c8sub r8, rsi
    0010b7cbsub r8, rax
    0010b7celea rcx, [rsi+rdx]
    0010b7d2dec rcx
    0010b7d5nop [rax+rax]
    0010b7e0
    0010b7e0loc_10b7e0:
    0010b7e0test r8, r8
    0010b7e3je 0x10b7f9
    0010b7e5dec r8
    0010b7e8lea r10, [rcx-1]
    0010b7eccmp [rcx], dil
    0010b7efmov rcx, r10
    0010b7f2jne 0x10b7e0
    0010b7f4add r8, rax
    0010b7f7jmp 0x10b873
    0010b7f9
    0010b7f9loc_10b7f9:
    0010b7f9mov r8, 0xfefefefefefefeff
    0010b803movzx ecx, dil
    0010b807mov r10, 0x101010101010101
    0010b811imul r10, rcx
    0010b815mov r11, 0x8080808080808080
    0010b81fnop
    0010b820
    0010b820loc_10b820:
    0010b820mov rcx, rax
    0010b823cmp rax, r9
    0010b826jbe 0x10b858
    0010b828lea rax, [rcx-16]
    0010b82cmov rbx, [rsi+rcx-16]
    0010b831xor rbx, r10
    0010b834lea r14, [rbx+r8]
    0010b838not rbx
    0010b83band rbx, r14
    0010b83emov r14, [rsi+rcx-8]
    0010b843xor r14, r10
    0010b846lea r15, [r14+r8]
    0010b84anot r14
    0010b84dand r14, r15
    0010b850or r14, rbx
    0010b853test r14, r11
    0010b856je 0x10b820
    0010b858
    0010b858loc_10b858:
    0010b858cmp rcx, rdx
    0010b85bja 0x10b89a
    0010b85dxor eax, eax
    0010b85fnop
    0010b860
    0010b860loc_10b860:
    0010b860test rcx, rcx
    0010b863je 0x10b87a
    0010b865lea r8, [rcx-1]
    0010b869cmp [rsi+rcx-1], dil
    0010b86emov rcx, r8
    0010b871jne 0x10b860
    0010b873
    0010b873loc_10b873:
    0010b873mov eax, 1
    0010b878jmp 0x10b87a
    0010b87a
    0010b87aloc_10b87a:
    0010b87amov rdx, r8
    0010b87dpop rbx
    0010b87epop r14
    0010b880pop r15
    0010b882ret
    0010b883
    0010b883loc_10b883:
    0010b883lea rcx, [rip+0xdf5f6]
    0010b88amov rdi, rax
    0010b88dmov rsi, rdx
    0010b890mov rdx, rcx
    0010b893call core::slice::index::slice_start_index_len_fail
    0010b898ud2
    0010b89a
    0010b89aloc_10b89a:
    0010b89alea rax, [rip+0xdf5c7]
    0010b8a1mov rdi, rcx
    0010b8a4mov rsi, rdx
    0010b8a7mov rdx, rax
    0010b8aacall core::slice::index::slice_end_index_len_fail
    0010b8afud2
    0010b790
    0010b8b1
    0010b8b1 // align 0x10
    0010b8c0
    0010b8c0core::slice::index::slice_end_index_overflow_fail:
    0010b8c0sub rsp, 56
    0010b8c4mov rsi, rdi
    0010b8c7lea rax, [rip+0xdf62a]
    0010b8cemov [rsp+8], rax
    0010b8d3mov [rsp+16], 1
    0010b8dclea rax, [rip-0x7a5eb]
    0010b8e3mov [rsp+24], rax
    0010b8e8xorps x0, x0
    0010b8ebmovups [rsp+32], x0
    0010b8f0lea rdi, [rsp+8]
    0010b8f5call core::panicking::panic_fmt
    0010b8faud2
    0010b8c0
    0010b8fc
    0010b8fc // align 0x10
    0010b900
    0010b900core::slice::_<impl [T]>::copy_from_slice::len_mismatch_fail:
    0010b900sub rsp, 104
    0010b904mov [rsp+8], rdi
    0010b909mov [rsp+16], rsi
    0010b90elea rax, [rsp+16]
    0010b913mov [rsp+24], rax
    0010b918lea rax, [rip-30895]
    0010b91fmov [rsp+32], rax
    0010b924lea rcx, [rsp+8]
    0010b929mov [rsp+40], rcx
    0010b92emov [rsp+48], rax
    0010b933lea rax, [rip+0xdf5ce]
    0010b93amov [rsp+56], rax
    0010b93fmov [rsp+64], 3
    0010b948mov [rsp+88], 0
    0010b951lea rax, [rsp+24]
    0010b956mov [rsp+72], rax
    0010b95bmov [rsp+80], 2
    0010b964lea rdi, [rsp+56]
    0010b969mov rsi, rdx
    0010b96ccall core::panicking::panic_fmt
    0010b971ud2
    0010b900
    0010b973
    0010b973 // align 0x10
    0010b980
    0010b980core::str::count::char_count_general_case:
    0010b980test rsi, rsi
    0010b983je 0x10b994
    0010b985cmp rsi, 4
    0010b989jae 0x10b997
    0010b98bxor eax, eax
    0010b98dxor ecx, ecx
    0010b98fjmp 0x10ba30
    0010b994
    0010b994loc_10b994:
    0010b994xor eax, eax
    0010b996ret
    0010b997
    0010b997loc_10b997:
    0010b997mov rcx, rsi
    0010b99aand rcx, -4
    0010b99epxor x0, x0
    0010b9a2xor eax, eax
    0010b9a4movdqa x2, [rip-0xd30ec]
    0010b9acmovdqa x3, [rip-0xd30e4]
    0010b9b4pxor x1, x1
    0010b9b8nop [rax+rax]
    0010b9c0
    0010b9c0loc_10b9c0:
    0010b9c0movzx edx, [rdi+rax]
    0010b9c4movd x4, edx
    0010b9c8movzx edx, [rdi+rax+2]
    0010b9cdmovd x5, edx
    0010b9d1pcmpgtb x4, x2
    0010b9d5punpcklbw x4, x4
    0010b9d9pshuflw x4, x4, -44
    0010b9depshufd x4, x4, -44
    0010b9e3pand x4, x3
    0010b9e7paddq x0, x4
    0010b9ebpcmpgtb x5, x2
    0010b9efpunpcklbw x5, x5
    0010b9f3pshuflw x4, x5, -44
    0010b9f8pshufd x4, x4, -44
    0010b9fdpand x4, x3
    0010ba01paddq x1, x4
    0010ba05add rax, 4
    0010ba09cmp rcx, rax
    0010ba0cjne 0x10b9c0
    0010ba0epaddq x1, x0
    0010ba12pshufd x0, x1, -18
    0010ba17paddq x0, x1
    0010ba1bmovq rax, x0
    0010ba20cmp rcx, rsi
    0010ba23je 0x10ba44
    0010ba25nop [rax+rax]
    0010ba30
    0010ba30loc_10ba30:
    0010ba30xor edx, edx
    0010ba32cmp [rdi+rcx], -64
    0010ba36setge dl
    0010ba39add rax, rdx
    0010ba3cinc rcx
    0010ba3fcmp rsi, rcx
    0010ba42jne 0x10ba30
    0010ba44
    0010ba44loc_10ba44:
    0010ba44ret
    0010b980
    0010ba45
    0010ba45 // align 0x10
    0010ba50
    0010ba50core::str::traits::str_index_overflow_fail:
    0010ba50sub rsp, 56
    0010ba54lea rax, [rip+0xdf4dd]
    0010ba5bmov [rsp+8], rax
    0010ba60mov [rsp+16], 1
    0010ba69lea rax, [rip-0x7a778]
    0010ba70mov [rsp+24], rax
    0010ba75xorps x0, x0
    0010ba78movups [rsp+32], x0
    0010ba7dlea rsi, [rip+0x1036cc]
    0010ba84lea rdi, [rsp+8]
    0010ba89call core::panicking::panic_fmt
    0010ba8eud2
    0010ba50
    0010ba90
    0010ba90core::str::pattern::StrSearcher::new:
    0010ba90push rbp
    0010ba91push r15
    0010ba93push r14
    0010ba95push r13
    0010ba97push r12
    0010ba99push rbx
    0010ba9asub rsp, 24
    0010ba9emov rbx, r8
    0010baa1mov r12, rcx
    0010baa4mov r14, rdi
    0010baa7cmp r8, 1
    0010baabmov [rsp+16], rsi
    0010bab0jne 0x10bb36
    0010bab6mov r13l, 1
    0010babcxor eax, eax
    0010babexor ebp, ebp
    0010bac0mov ecx, 1
    0010bac5
    0010bac5loc_10bac5:
    0010bac5cmp rax, rbp
    0010bac8cmova rbp, rax
    0010bacccmovbe r13, rcx
    0010bad0mov r15, rbx
    0010bad3sub r15, rbp
    0010bad6jb 0x10bf6d
    0010badcmov rsi, r13
    0010badfadd rsi, rbp
    0010bae2jb 0x10bf79
    0010bae8mov [rsp+8], rdx
    0010baedcmp rsi, rbx
    0010baf0ja 0x10bf8a
    0010baf6lea rsi, [r12+r13]
    0010bafamov rdi, r12
    0010bafdmov rdx, rbp
    0010bb00call [rip+0x10608a]
    0010bb06test eax, eax
    0010bb08je 0x10bc60
    0010bb0ecmp rbp, r15
    0010bb11cmova r15, rbp
    0010bb15lea rax, [rbx-1]
    0010bb19mov ecx, ebx
    0010bb1band ecx, 3
    0010bb1ecmp rax, 3
    0010bb22jae 0x10bdf2
    0010bb28xor eax, eax
    0010bb2axor edx, edx
    0010bb2cmov r10, [rsp+8]
    0010bb31jmp 0x10be40
    0010bb36
    0010bb36loc_10bb36:
    0010bb36mov r8l, 1
    0010bb3cxor ecx, ecx
    0010bb3emov r13l, 1
    0010bb44xor eax, eax
    0010bb46mov r10l, 1
    0010bb4cxor r9l, r9l
    0010bb4fjmp 0x10bb7c
    0010bb51
    0010bb51 66 66 66 66 66 66 2e 0f 1f 84 00 00 00 00 00 ffffff.........
    0010bb60
    0010bb60loc_10bb60:
    0010bb60lea rdi, [r10+r9]
    0010bb64inc rdi
    0010bb67mov r13, rdi
    0010bb6asub r13, rax
    0010bb6dxor r9l, r9l
    0010bb70
    0010bb70loc_10bb70:
    0010bb70lea r8, [rdi+r9]
    0010bb74mov r10, rdi
    0010bb77cmp r8, rbx
    0010bb7ajae 0x10bbd2
    0010bb7c
    0010bb7cloc_10bb7c:
    0010bb7clea rdi, [r9+rax]
    0010bb80cmp rdi, rbx
    0010bb83jae 0x10bf47
    0010bb89movzx edi, [r12+rdi]
    0010bb8ecmp [r12+r8], dil
    0010bb92jb 0x10bb60
    0010bb94jne 0x10bbc0
    0010bb96inc r9
    0010bb99cmp r9, r13
    0010bb9cmov r8, r9
    0010bb9fcmove r8, rcx
    0010bba3cmovne r9, rcx
    0010bba7mov rdi, r9
    0010bbaaadd rdi, r10
    0010bbadmov r9, r8
    0010bbb0jmp 0x10bb70
    0010bbb2
    0010bbb2 66 66 66 66 66 2e 0f 1f 84 00 00 00 00 00 fffff.........
    0010bbc0
    0010bbc0loc_10bbc0:
    0010bbc0lea rdi, [r10+1]
    0010bbc4mov r13l, 1
    0010bbcaxor r9l, r9l
    0010bbcdmov rax, r10
    0010bbd0jmp 0x10bb70
    0010bbd2
    0010bbd2loc_10bbd2:
    0010bbd2mov r9l, 1
    0010bbd8xor r10l, r10l
    0010bbdbmov ecx, 1
    0010bbe0xor ebp, ebp
    0010bbe2mov r8l, 1
    0010bbe8xor esi, esi
    0010bbeajmp 0x10bc0f
    0010bbec
    0010bbec 0f 1f 40 00 ..@.
    0010bbf0
    0010bbf0loc_10bbf0:
    0010bbf0lea rdi, [r8+rsi]
    0010bbf4inc rdi
    0010bbf7mov rcx, rdi
    0010bbfasub rcx, rbp
    0010bbfdxor esi, esi
    0010bbff
    0010bbffloc_10bbff:
    0010bbfflea r9, [rdi+rsi]
    0010bc03mov r8, rdi
    0010bc06cmp r9, rbx
    0010bc09jae 0x10bac5
    0010bc0f
    0010bc0floc_10bc0f:
    0010bc0flea rdi, [rsi+rbp]
    0010bc13cmp rdi, rbx
    0010bc16jae 0x10bf47
    0010bc1cmovzx edi, [r12+rdi]
    0010bc21cmp [r12+r9], dil
    0010bc25ja 0x10bbf0
    0010bc27jne 0x10bc50
    0010bc29inc rsi
    0010bc2ccmp rsi, rcx
    0010bc2fmov r9, rsi
    0010bc32cmove r9, r10
    0010bc36cmovne rsi, r10
    0010bc3amov rdi, rsi
    0010bc3dadd rdi, r8
    0010bc40mov rsi, r9
    0010bc43jmp 0x10bbff
    0010bc45
    0010bc45 66 66 2e 0f 1f 84 00 00 00 00 00 ff.........
    0010bc50
    0010bc50loc_10bc50:
    0010bc50lea rdi, [r8+1]
    0010bc54mov ecx, 1
    0010bc59xor esi, esi
    0010bc5bmov rbp, r8
    0010bc5ejmp 0x10bbff
    0010bc60
    0010bc60loc_10bc60:
    0010bc60mov esi, 1
    0010bc65xor edx, edx
    0010bc67xor r8l, r8l
    0010bc6amov r9l, 1
    0010bc70xor ecx, ecx
    0010bc72jmp 0x10bc98
    0010bc74
    0010bc74 66 66 66 2e 0f 1f 84 00 00 00 00 00 fff.........
    0010bc80
    0010bc80loc_10bc80:
    0010bc80lea r10, [r8+r9]
    0010bc84inc r10
    0010bc87mov rsi, r10
    0010bc8asub rsi, rcx
    0010bc8dxor r8l, r8l
    0010bc90
    0010bc90loc_10bc90:
    0010bc90mov r9, r10
    0010bc93cmp rsi, r13
    0010bc96je 0x10bd0d
    0010bc98
    0010bc98loc_10bc98:
    0010bc98lea rax, [r9+r8]
    0010bc9ccmp rax, rbx
    0010bc9fjae 0x10bd0d
    0010bca1mov rax, r9
    0010bca4not rax
    0010bca7mov rdi, rbx
    0010bcaasub rdi, r8
    0010bcadadd rdi, rax
    0010bcb0cmp rdi, rbx
    0010bcb3jae 0x10bf50
    0010bcb9mov rax, r8
    0010bcbcnot rax
    0010bcbfadd rax, rbx
    0010bcc2sub rax, rcx
    0010bcc5cmp rax, rbx
    0010bcc8jae 0x10bf59
    0010bccelea r10, [r9+1]
    0010bcd2movzx eax, [r12+rax]
    0010bcd7cmp [r12+rdi], al
    0010bcdbjb 0x10bc80
    0010bcddjne 0x10bd00
    0010bcdfinc r8
    0010bce2cmp r8, rsi
    0010bce5mov rax, r8
    0010bce8cmove rax, rdx
    0010bceccmovne r8, rdx
    0010bcf0mov r10, r8
    0010bcf3add r10, r9
    0010bcf6mov r8, rax
    0010bcf9jmp 0x10bc90
    0010bcfb
    0010bcfb 0f 1f 44 00 00 ..D..
    0010bd00
    0010bd00loc_10bd00:
    0010bd00mov esi, 1
    0010bd05xor r8l, r8l
    0010bd08mov rcx, r9
    0010bd0bjmp 0x10bc90
    0010bd0d
    0010bd0dloc_10bd0d:
    0010bd0dmov r8l, 1
    0010bd13xor edx, edx
    0010bd15xor r9l, r9l
    0010bd18mov r10l, 1
    0010bd1exor esi, esi
    0010bd20jmp 0x10bd48
    0010bd22
    0010bd22 66 66 66 66 66 2e 0f 1f 84 00 00 00 00 00 fffff.........
    0010bd30
    0010bd30loc_10bd30:
    0010bd30lea r11, [r9+r10]
    0010bd34inc r11
    0010bd37mov r8, r11
    0010bd3asub r8, rsi
    0010bd3dxor r9l, r9l
    0010bd40
    0010bd40loc_10bd40:
    0010bd40mov r10, r11
    0010bd43cmp r8, r13
    0010bd46je 0x10bdbe
    0010bd48
    0010bd48loc_10bd48:
    0010bd48lea rax, [r10+r9]
    0010bd4ccmp rax, rbx
    0010bd4fjae 0x10bdbe
    0010bd51mov rax, r10
    0010bd54not rax
    0010bd57mov rdi, rbx
    0010bd5asub rdi, r9
    0010bd5dadd rdi, rax
    0010bd60cmp rdi, rbx
    0010bd63jae 0x10bf50
    0010bd69mov rax, r9
    0010bd6cnot rax
    0010bd6fadd rax, rbx
    0010bd72sub rax, rsi
    0010bd75cmp rax, rbx
    0010bd78jae 0x10bf59
    0010bd7elea r11, [r10+1]
    0010bd82movzx eax, [r12+rax]
    0010bd87cmp [r12+rdi], al
    0010bd8bja 0x10bd30
    0010bd8djne 0x10bdb0
    0010bd8finc r9
    0010bd92cmp r9, r8
    0010bd95mov rax, r9
    0010bd98cmove rax, rdx
    0010bd9ccmovne r9, rdx
    0010bda0mov r11, r9
    0010bda3add r11, r10
    0010bda6mov r9, rax
    0010bda9jmp 0x10bd40
    0010bdab
    0010bdab 0f 1f 44 00 00 ..D..
    0010bdb0
    0010bdb0loc_10bdb0:
    0010bdb0mov r8l, 1
    0010bdb6xor r9l, r9l
    0010bdb9mov rsi, r10
    0010bdbcjmp 0x10bd40
    0010bdbe
    0010bdbeloc_10bdbe:
    0010bdbecmp rcx, rsi
    0010bdc1cmova rsi, rcx
    0010bdc5mov rcx, rbx
    0010bdc8sub rcx, rsi
    0010bdcbtest r13, r13
    0010bdceje 0x10be79
    0010bdd4mov edx, r13l
    0010bdd7and edx, 3
    0010bddacmp r13, 4
    0010bddemov r10, [rsp+8]
    0010bde3jae 0x10be8a
    0010bde9xor eax, eax
    0010bdebxor edi, edi
    0010bdedjmp 0x10bed0
    0010bdf2
    0010bdf2loc_10bdf2:
    0010bdf2mov rsi, rbx
    0010bdf5and rsi, -4
    0010bdf9xor eax, eax
    0010bdfbxor edx, edx
    0010bdfdmov r10, [rsp+8]
    0010be02nop [rax+rax]
    0010be10
    0010be10loc_10be10:
    0010be10movzx edi, [r12+rdx]
    0010be15movzx r8l, [r12+rdx+1]
    0010be1bbts rax, rdi
    0010be1fbts rax, r8
    0010be23movzx edi, [r12+rdx+2]
    0010be29bts rax, rdi
    0010be2dmovzx edi, [r12+rdx+3]
    0010be33bts rax, rdi
    0010be37add rdx, 4
    0010be3bcmp rsi, rdx
    0010be3ejne 0x10be10
    0010be40
    0010be40loc_10be40:
    0010be40test rcx, rcx
    0010be43je 0x10be60
    0010be45add rdx, r12
    0010be48xor esi, esi
    0010be4anop [rax+rax]
    0010be50
    0010be50loc_10be50:
    0010be50movzx edi, [rdx+rsi]
    0010be54bts rax, rdi
    0010be58inc rsi
    0010be5bcmp rcx, rsi
    0010be5ejne 0x10be50
    0010be60
    0010be60loc_10be60:
    0010be60inc r15
    0010be63mov rsi, -1
    0010be6amov rdx, -1
    0010be71mov r13, r15
    0010be74mov rcx, rbp
    0010be77jmp 0x10bef8
    0010be79
    0010be79loc_10be79:
    0010be79xor esi, esi
    0010be7bmov rdx, rbx
    0010be7exor eax, eax
    0010be80xor r13l, r13l
    0010be83mov r10, [rsp+8]
    0010be88jmp 0x10bef8
    0010be8a
    0010be8aloc_10be8a:
    0010be8amov rsi, r13
    0010be8dand rsi, -4
    0010be91xor eax, eax
    0010be93xor edi, edi
    0010be95nop [rax+rax]
    0010bea0
    0010bea0loc_10bea0:
    0010bea0movzx r8l, [r12+rdi]
    0010bea5movzx r9l, [r12+rdi+1]
    0010beabbts rax, r8
    0010beafbts rax, r9
    0010beb3movzx r8l, [r12+rdi+2]
    0010beb9bts rax, r8
    0010bebdmovzx r8l, [r12+rdi+3]
    0010bec3bts rax, r8
    0010bec7add rdi, 4
    0010becbcmp rsi, rdi
    0010becejne 0x10bea0
    0010bed0
    0010bed0loc_10bed0:
    0010bed0test rdx, rdx
    0010bed3je 0x10bef3
    0010bed5add rdi, r12
    0010bed8xor esi, esi
    0010bedaxor r8l, r8l
    0010beddnop [rax]
    0010bee0
    0010bee0loc_10bee0:
    0010bee0movzx r9l, [rdi+r8]
    0010bee5bts rax, r9
    0010bee9inc r8
    0010beeccmp rdx, r8
    0010beefjne 0x10bee0
    0010bef1jmp 0x10bef5
    0010bef3
    0010bef3loc_10bef3:
    0010bef3xor esi, esi
    0010bef5
    0010bef5loc_10bef5:
    0010bef5mov rdx, rbx
    0010bef8
    0010bef8loc_10bef8:
    0010bef8mov rdi, [rsp+16]
    0010befdmov [r14+72], rdi
    0010bf01mov [r14+80], r10
    0010bf05mov [r14+88], r12
    0010bf09mov [r14+96], rbx
    0010bf0dmov [r14], 1
    0010bf14mov [r14+8], rbp
    0010bf18mov [r14+16], rcx
    0010bf1cmov [r14+24], r13
    0010bf20mov [r14+32], rax
    0010bf24mov [r14+40], 0
    0010bf2cmov [r14+48], r10
    0010bf30mov [r14+56], rsi
    0010bf34mov [r14+64], rdx
    0010bf38add rsp, 24
    0010bf3cpop rbx
    0010bf3dpop r12
    0010bf3fpop r13
    0010bf41pop r14
    0010bf43pop r15
    0010bf45pop rbp
    0010bf46ret
    0010bf47
    0010bf47loc_10bf47:
    0010bf47lea rdx, [rip+0xdf02a]
    0010bf4ejmp 0x10bf63
    0010bf50
    0010bf50loc_10bf50:
    0010bf50lea rdx, [rip+0xdf039]
    0010bf57jmp 0x10bf63
    0010bf59
    0010bf59loc_10bf59:
    0010bf59lea rdx, [rip+0xdf048]
    0010bf60mov rdi, rax
    0010bf63
    0010bf63loc_10bf63:
    0010bf63mov rsi, rbx
    0010bf66call core::panicking::panic_bounds_check
    0010bf6bud2
    0010bf6d
    0010bf6dloc_10bf6d:
    0010bf6dlea rdx, [rip+0xdefd4]
    0010bf74mov rdi, rbp
    0010bf77jmp 0x10bf94
    0010bf79
    0010bf79loc_10bf79:
    0010bf79lea rdx, [rip+0xdefe0]
    0010bf80mov rdi, r13
    0010bf83call core::slice::index::slice_index_order_fail
    0010bf88ud2
    0010bf8a
    0010bf8aloc_10bf8a:
    0010bf8alea rdx, [rip+0xdefcf]
    0010bf91mov rdi, rsi
    0010bf94
    0010bf94loc_10bf94:
    0010bf94mov rsi, rbx
    0010bf97call core::slice::index::slice_end_index_len_fail
    0010bf9cud2
    0010ba90
    0010bf9e
    0010bf9e // align 0x10
    0010bfa0
    0010bfa0_<core::str::lossy::Debug as core::fmt::Debug>::fmt:
    0010bfa0push rbp
    0010bfa1push r15
    0010bfa3push r14
    0010bfa5push r13
    0010bfa7push r12
    0010bfa9push rbx
    0010bfaasub rsp, 248
    0010bfb1mov r13, rcx
    0010bfb4mov r14, rdx
    0010bfb7mov rbx, rsi
    0010bfbamov r12, rdi
    0010bfbdmov r15, [rcx+32]
    0010bfc1mov rdi, rdx
    0010bfc4mov esi, 34
    0010bfc9call r15
    0010bfccmov bpl, 1
    0010bfcftest al, al
    0010bfd1jne 0x10c44e
    0010bfd7mov [rsp+184], r12
    0010bfdfmov [rsp+192], rbx
    0010bfe7lea rdi, [rsp+200]
    0010bfeflea rsi, [rsp+184]
    0010bff7call _<core::str::lossy::Utf8Chunks as core::iter::traits::iterator::Iterator>::next
    0010bffcmov rsi, [rsp+200]
    0010c004test rsi, rsi
    0010c007je 0x10c441
    0010c00dlea r12, [rsp+15]
    0010c012mov [rsp+48], r13
    0010c017
    0010c017loc_10c017:
    0010c017mov rcx, [rsp+208]
    0010c01fmov rax, [rsp+216]
    0010c027mov [rsp+176], rax
    0010c02fmov rax, [rsp+224]
    0010c037mov [rsp+56], rax
    0010c03ctest rcx, rcx
    0010c03fje 0x10c2b8
    0010c045mov [rsp+24], rcx
    0010c04alea rax, [rsi+rcx]
    0010c04emov [rsp+168], rax
    0010c056xor r13l, r13l
    0010c059xor ebp, ebp
    0010c05bmov [rsp+16], rsi
    0010c060mov rcx, rsi
    0010c063jmp 0x10c08b
    0010c065
    0010c065loc_10c065:
    0010c065add r13, rbp
    0010c068lea r12, [rsp+15]
    0010c06d
    0010c06dloc_10c06d:
    0010c06dmov rax, [rsp+40]
    0010c072sub rbp, rax
    0010c075mov rcx, [rsp+32]
    0010c07aadd rbp, rcx
    0010c07dcmp rcx, [rsp+168]
    0010c085je 0x10c3ea
    0010c08b
    0010c08bloc_10c08b:
    0010c08bmovzx ebx, [rcx]
    0010c08etest bl, bl
    0010c090mov [rsp+40], rcx
    0010c095js 0x10c0b0
    0010c097lea rax, [rcx+1]
    0010c09b
    0010c09bloc_10c09b:
    0010c09bmov [rsp+32], rax
    0010c0a0jmp 0x10c120
    0010c0a2
    0010c0a2 66 66 66 66 66 2e 0f 1f 84 00 00 00 00 00 fffff.........
    0010c0b0
    0010c0b0loc_10c0b0:
    0010c0b0mov eax, ebx
    0010c0b2and eax, 31
    0010c0b5movzx edx, [rcx+1]
    0010c0b9and edx, 63
    0010c0bccmp bl, -33
    0010c0bfjbe 0x10c100
    0010c0c1lea rsi, [rcx+3]
    0010c0c5movzx ecx, [rcx+2]
    0010c0c9shl edx, 6
    0010c0ccand ecx, 63
    0010c0cfor ecx, edx
    0010c0d1cmp bl, -16
    0010c0d4jb 0x10c112
    0010c0d6movzx ebx, [rsi]
    0010c0d9and eax, 7
    0010c0dcshl eax, 18
    0010c0dfshl ecx, 6
    0010c0e2and ebx, 63
    0010c0e5or ebx, ecx
    0010c0e7or ebx, eax
    0010c0e9cmp ebx, 0x110000
    0010c0efje 0x10c3ea
    0010c0f5mov rax, [rsp+40]
    0010c0faadd rax, 4
    0010c0fejmp 0x10c09b
    0010c100
    0010c100loc_10c100:
    0010c100add rcx, 2
    0010c104mov [rsp+32], rcx
    0010c109shl eax, 6
    0010c10cor eax, edx
    0010c10emov ebx, eax
    0010c110jmp 0x10c120
    0010c112
    0010c112loc_10c112:
    0010c112mov [rsp+32], rsi
    0010c117shl eax, 12
    0010c11aor ecx, eax
    0010c11cmov ebx, ecx
    0010c11enop
    0010c120
    0010c120loc_10c120:
    0010c120lea rdi, [rsp+120]
    0010c125mov esi, ebx
    0010c127mov edx, 0x10101
    0010c12ccall core::char::methods::_<impl char>::escape_debug_ext
    0010c131cmp [rsp+120], -128
    0010c136je 0x10c06d
    0010c13cmovzx eax, [rsp+131]
    0010c144sub al, [rsp+130]
    0010c14bcmp al, 1
    0010c14dje 0x10c06d
    0010c153mov rdx, rbp
    0010c156sub rdx, r13
    0010c159jb 0x10c478
    0010c15ftest r13, r13
    0010c162je 0x10c182
    0010c164cmp r13, [rsp+24]
    0010c169jae 0x10c17c
    0010c16bmov rax, [rsp+16]
    0010c170cmp [rax+r13], -64
    0010c175jge 0x10c182
    0010c177jmp 0x10c478
    0010c17c
    0010c17cloc_10c17c:
    0010c17cjne 0x10c478
    0010c182
    0010c182loc_10c182:
    0010c182test rbp, rbp
    0010c185je 0x10c1a4
    0010c187cmp rbp, [rsp+24]
    0010c18cjae 0x10c19e
    0010c18emov rax, [rsp+16]
    0010c193cmp [rax+rbp], -65
    0010c197jg 0x10c1a4
    0010c199jmp 0x10c478
    0010c19e
    0010c19eloc_10c19e:
    0010c19ejne 0x10c478
    0010c1a4
    0010c1a4loc_10c1a4:
    0010c1a4add r13, [rsp+16]
    0010c1a9mov rdi, r14
    0010c1acmov rsi, r13
    0010c1afmov rax, [rsp+48]
    0010c1b4call [rax+24]
    0010c1b7test al, al
    0010c1b9jne 0x10c43c
    0010c1bfmov eax, [rsp+128]
    0010c1c6mov [rsp+72], eax
    0010c1camov rax, [rsp+120]
    0010c1cfmov [rsp+64], rax
    0010c1d4cmp al, -128
    0010c1d6jne 0x10c240
    0010c1d8mov r12b, 128
    0010c1dbjmp 0x10c206
    0010c1dd
    0010c1dd 0f 1f 00 ...
    0010c1e0
    0010c1e0loc_10c1e0:
    0010c1e0mov esi, [rsp+68]
    0010c1e4mov [rsp+72], 0
    0010c1ecmov [rsp+64], 0
    0010c1f5xor r12l, r12l
    0010c1f8
    0010c1f8loc_10c1f8:
    0010c1f8mov rdi, r14
    0010c1fbcall r15
    0010c1fetest al, al
    0010c200jne 0x10c43c
    0010c206
    0010c206loc_10c206:
    0010c206cmp r12b, -128
    0010c20aje 0x10c1e0
    0010c20cmovzx r13l, [rsp+74]
    0010c212cmp r13b, [rsp+75]
    0010c217jae 0x10c27f
    0010c219lea eax, [r13+1]
    0010c21dmov [rsp+74], al
    0010c221cmp r13b, 10
    0010c225jae 0x10c462
    0010c22bmovzx esi, [rsp+r13+64]
    0010c231jmp 0x10c1f8
    0010c233nop [rax+rax]
    0010c240
    0010c240loc_10c240:
    0010c240movzx r12l, [rsp+75]
    0010c246movzx r13l, [rsp+74]
    0010c24cnop [rax]
    0010c250
    0010c250loc_10c250:
    0010c250cmp r13, r12
    0010c253jae 0x10c27f
    0010c255lea eax, [r13+1]
    0010c259mov [rsp+74], al
    0010c25dcmp r13, 9
    0010c261ja 0x10c462
    0010c267movzx esi, [rsp+r13+64]
    0010c26dmov rdi, r14
    0010c270call r15
    0010c273inc r13
    0010c276test al, al
    0010c278je 0x10c250
    0010c27ajmp 0x10c43c
    0010c27f
    0010c27floc_10c27f:
    0010c27fmov r13l, 1
    0010c285cmp ebx, 128
    0010c28bjb 0x10c065
    0010c291mov r13l, 2
    0010c297cmp ebx, 2048
    0010c29djb 0x10c065
    0010c2a3cmp ebx, 0x10000
    0010c2a9mov r13l, 4
    0010c2afsbb r13, 0
    0010c2b3jmp 0x10c065
    0010c2b8
    0010c2b8loc_10c2b8:
    0010c2b8xor r13l, r13l
    0010c2bbxor edx, edx
    0010c2bd
    0010c2bdloc_10c2bd:
    0010c2bdadd rsi, r13
    0010c2c0mov rdi, r14
    0010c2c3mov r13, [rsp+48]
    0010c2c8call [r13+24]
    0010c2cctest al, al
    0010c2cejne 0x10c44e
    0010c2d4cmp [rsp+56], 0
    0010c2daje 0x10c3c2
    0010c2e0xor ebx, ebx
    0010c2e2nop [rax+rax]
    0010c2f0
    0010c2f0loc_10c2f0:
    0010c2f0mov rax, [rsp+176]
    0010c2f8movzx eax, [rax+rbx]
    0010c2fcmov [rsp+15], al
    0010c300mov [rsp+232], r12
    0010c308lea rax, [rip+849]
    0010c30fmov [rsp+240], rax
    0010c317mov [rsp+64], 2
    0010c320mov [rsp+80], 0
    0010c329mov [rsp+88], 2
    0010c332mov [rsp+96], 0
    0010c33bmov rax, 0x800000020
    0010c345mov [rsp+104], rax
    0010c34amov [rsp+112], 3
    0010c34flea rax, [rip+0xe63e2]
    0010c356mov [rsp+120], rax
    0010c35bmov [rsp+128], 1
    0010c367lea rax, [rsp+64]
    0010c36cmov [rsp+152], rax
    0010c374mov [rsp+160], 1
    0010c380lea rax, [rsp+232]
    0010c388mov [rsp+136], rax
    0010c390mov [rsp+144], 1
    0010c39cmov rdi, r14
    0010c39fmov rsi, r13
    0010c3a2lea rdx, [rsp+120]
    0010c3a7call core::fmt::write
    0010c3actest al, al
    0010c3aejne 0x10c44e
    0010c3b4inc rbx
    0010c3b7cmp [rsp+56], rbx
    0010c3bcjne 0x10c2f0
    0010c3c2
    0010c3c2loc_10c3c2:
    0010c3c2lea rdi, [rsp+200]
    0010c3calea rsi, [rsp+184]
    0010c3d2call _<core::str::lossy::Utf8Chunks as core::iter::traits::iterator::Iterator>::next
    0010c3d7mov rsi, [rsp+200]
    0010c3dftest rsi, rsi
    0010c3e2jne 0x10c017
    0010c3e8jmp 0x10c441
    0010c3ea
    0010c3ealoc_10c3ea:
    0010c3eatest r13, r13
    0010c3edje 0x10c417
    0010c3efmov rcx, [rsp+24]
    0010c3f4mov rax, rcx
    0010c3f7sub rax, r13
    0010c3famov rsi, [rsp+16]
    0010c3ffjbe 0x10c42c
    0010c401cmp [rsi+r13], -65
    0010c406mov bpl, 1
    0010c409jle 0x10c496
    0010c40fmov rdx, rax
    0010c412jmp 0x10c2bd
    0010c417
    0010c417loc_10c417:
    0010c417xor r13l, r13l
    0010c41amov bpl, 1
    0010c41dmov rsi, [rsp+16]
    0010c422mov rdx, [rsp+24]
    0010c427jmp 0x10c2bd
    0010c42c
    0010c42cloc_10c42c:
    0010c42cmov bpl, 1
    0010c42fjne 0x10c496
    0010c431mov r13, rcx
    0010c434mov rdx, rax
    0010c437jmp 0x10c2bd
    0010c43c
    0010c43cloc_10c43c:
    0010c43cmov bpl, 1
    0010c43fjmp 0x10c44e
    0010c441
    0010c441loc_10c441:
    0010c441mov rdi, r14
    0010c444mov esi, 34
    0010c449call r15
    0010c44cmov ebp, eax
    0010c44e
    0010c44eloc_10c44e:
    0010c44emov eax, ebp
    0010c450add rsp, 248
    0010c457pop rbx
    0010c458pop r12
    0010c45apop r13
    0010c45cpop r14
    0010c45epop r15
    0010c460pop rbp
    0010c461ret
    0010c462
    0010c462loc_10c462:
    0010c462lea rdx, [rip+0xded67]
    0010c469mov esi, 10
    0010c46emov rdi, r13
    0010c471call core::panicking::panic_bounds_check
    0010c476ud2
    0010c478
    0010c478loc_10c478:
    0010c478lea r8, [rip+0xdeb59]
    0010c47fmov rdi, [rsp+16]
    0010c484mov rsi, [rsp+24]
    0010c489mov rdx, r13
    0010c48cmov rcx, rbp
    0010c48fcall core::str::slice_error_fail
    0010c494ud2
    0010c496
    0010c496loc_10c496:
    0010c496lea r8, [rip+0xdeb23]
    0010c49dmov rdi, rsi
    0010c4a0mov rsi, rcx
    0010c4a3mov rdx, r13
    0010c4a6call core::str::slice_error_fail
    0010c4abud2
    0010bfa0