File akira_3298d203c2acb68c474e5fdad8379181890b4403d6491c523c13730129be3f75.elf
Function:
    00184974
    00184974regex_syntax::ast::parse::Primitive::into_class_literal:
    00184974push rbx
    00184975sub rsp, 64
    00184979mov rbx, rsi
    0018497cmov sil, [rsi+104]
    00184980add sil, -2
    00184984movzx eax, sil
    00184988cmp al, 4
    0018498apush 4
    0018498cpop r8
    0018498ecmovb r8l, eax
    00184992test r8b, r8b
    00184995je 0x1849ca
    00184997lea rax, [rbx+56]
    0018499bcmp sil, 4
    0018499fcmovb rax, rbx
    001849a3lea r8, [rsp+8]
    001849a8mov [r8], 3
    001849afmov rsi, rdx
    001849b2mov rdx, rcx
    001849b5mov rcx, rax
    001849b8call regex_syntax::ast::parse::ParserI<P>::error
    001849bdmov rdi, rbx
    001849c0add rsp, 64
    001849c4pop rbx
    001849c5jmp 0x184966
    001849ca
    001849caloc_1849ca:
    001849camov rax, [rbx+48]
    001849cemov [rdi+56], rax
    001849d2movups x0, [rbx]
    001849d5movups x1, [rbx+16]
    001849d9movups x2, [rbx+32]
    001849ddmovups [rdi+40], x2
    001849e1movups [rdi+24], x1
    001849e5movups [rdi+8], x0
    001849e9mov [rdi], 34
    001849efadd rsp, 64
    001849f3pop rbx
    001849f4ret
    00184974
    001849f5
    001849f5regex_syntax::ast::Concat::into_ast:
    001849f5push r15
    001849f7push r14
    001849f9push rbx
    001849famov rbx, rdi
    001849fdmov rax, [rdi+16]
    00184a01cmp rax, 1
    00184a05je 0x184a1d
    00184a07test rax, rax
    00184a0ajne 0x184a4a
    00184a0clea rdi, [rbx+24]
    00184a10call regex_syntax::ast::Ast::empty
    00184a15mov r14, rdx
    00184a18xor r15l, r15l
    00184a1bjmp 0x184a40
    00184a1d
    00184a1dloc_184a1d:
    00184a1dmov rdi, rbx
    00184a20call alloc::vec::Vec<T,A>::pop
    00184a25lea rcx, [rip+0x6e004]
    00184a2cmov rdi, rax
    00184a2fmov rsi, rdx
    00184a32mov rdx, rcx
    00184a35call core::option::Option<T>::unwrap
    00184a3amov r15, rax
    00184a3dmov r14, rdx
    00184a40
    00184a40loc_184a40:
    00184a40mov rdi, rbx
    00184a43call core::ptr::drop_in_place<alloc::vec::Vec<regex_syntax::ast::Ast>>
    00184a48jmp 0x184a68
    00184a4a
    00184a4aloc_184a4a:
    00184a4apush 72
    00184a4cpop rdi
    00184a4dpush 8
    00184a4fpop rsi
    00184a50call _ZN5alloc5alloc15exchange_malloc17hc6dbbe43d4abbe5aE.641
    00184a55mov r14, rax
    00184a58push 9
    00184a5apop rcx
    00184a5bmov rdi, rax
    00184a5emov rsi, rbx
    00184a61rep movsq [rdi], [rsi]
    00184a64push 11
    00184a66pop r15
    00184a68
    00184a68loc_184a68:
    00184a68mov rax, r15
    00184a6bmov rdx, r14
    00184a6epop rbx
    00184a6fpop r14
    00184a71pop r15
    00184a73ret
    001849f5
    00184a74
    00184a74alloc::vec::Vec<T,A>::push:
    00184a74push r15
    00184a76push r14
    00184a78push rbx
    00184a79mov r14, rsi
    00184a7cmov rbx, rdi
    00184a7fmov r15, [rdi+16]
    00184a83cmp r15, [rdi+8]
    00184a87jne 0x184a98
    00184a89mov rdi, rbx
    00184a8cmov rsi, r15
    00184a8fcall alloc::raw_vec::RawVec<T,A>::reserve_for_push
    00184a94mov r15, [rbx+16]
    00184a98
    00184a98loc_184a98:
    00184a98imul rdi, r15, 224
    00184a9fadd rdi, [rbx]
    00184aa2mov edx, 224
    00184aa7mov rsi, r14
    00184aaacall [rip+0x8d070]
    00184ab0inc r15
    00184ab3mov [rbx+16], r15
    00184ab7pop rbx
    00184ab8pop r14
    00184abapop r15
    00184abcret
    00184a74
    00184abd
    00184abdcore::option::Option<T>::unwrap:
    00184abdcmp rdi, 12
    00184ac1je 0x184aca
    00184ac3mov rax, rdi
    00184ac6mov rdx, rsi
    00184ac9ret
    00184aca
    00184acaloc_184aca:
    00184acapush rax
    00184acblea rdi, [rip-0xf3ad4]
    00184ad2push 43
    00184ad4pop rsi
    00184ad5call core::panicking::panic
    00184adaud2
    00184abd
    00184adc
    00184adcregex_syntax::ast::Ast::alternation:
    00184adcpush rbx
    00184addmov rbx, rdi
    00184ae0push 72
    00184ae2pop rdi
    00184ae3push 8
    00184ae5pop rsi
    00184ae6call _ZN5alloc5alloc15exchange_malloc17hc6dbbe43d4abbe5aE.641
    00184aebmov rdx, rax
    00184aeepush 9
    00184af0pop rcx
    00184af1mov rdi, rax
    00184af4mov rsi, rbx
    00184af7rep movsq [rdi], [rsi]
    00184afapush 10
    00184afcpop rax
    00184afdpop rbx
    00184aferet
    00184adc
    00184aff
    00184affregex_syntax::ast::parse::ParserI<P>::parse_group:
    00184affpush rbp
    00184b00push r15
    00184b02push r14
    00184b04push r13
    00184b06push r12
    00184b08push rbx
    00184b09sub rsp, 488
    00184b10mov r14, rsi
    00184b13mov rbx, rdi
    00184b16mov rdi, rsi
    00184b19call regex_syntax::ast::parse::ParserI<P>::char
    00184b1emov [rsp+208], eax
    00184b25cmp eax, 40
    00184b28jne 0x18519f
    00184b2elea rdi, [rsp+32]
    00184b33mov rsi, r14
    00184b36call regex_syntax::ast::parse::ParserI<P>::span_char
    00184b3bmov rdi, r14
    00184b3ecall regex_syntax::ast::parse::ParserI<P>::bump
    00184b43mov rdi, r14
    00184b46call regex_syntax::ast::parse::ParserI<P>::bump_space
    00184b4blea rsi, [rip-0x12d21d]
    00184b52push 2
    00184b54pop rdx
    00184b55mov rdi, r14
    00184b58call regex_syntax::ast::parse::ParserI<P>::bump_if
    00184b5dtest al, al
    00184b5fjne 0x184ba3
    00184b61lea rsi, [rip-0x12d231]
    00184b68push 2
    00184b6apop rdx
    00184b6bmov rdi, r14
    00184b6ecall regex_syntax::ast::parse::ParserI<P>::bump_if
    00184b73test al, al
    00184b75jne 0x184ba3
    00184b77lea rsi, [rip-0x12d245]
    00184b7epush 3
    00184b80pop rdx
    00184b81mov rdi, r14
    00184b84call regex_syntax::ast::parse::ParserI<P>::bump_if
    00184b89test al, al
    00184b8bjne 0x184ba3
    00184b8dlea rsi, [rip-0x12d258]
    00184b94push 3
    00184b96pop rdx
    00184b97mov rdi, r14
    00184b9acall regex_syntax::ast::parse::ParserI<P>::bump_if
    00184b9ftest al, al
    00184ba1je 0x184c07
    00184ba3
    00184ba3loc_184ba3:
    00184ba3mov rax, [rsp+48]
    00184ba8lea rcx, [rsp+208]
    00184bb0mov [rcx+16], rax
    00184bb4movups x0, [rsp+32]
    00184bb9movaps [rcx], x0
    00184bbcmov rax, [r14]
    00184bbfmovups x0, [rax+160]
    00184bc6movups [rcx+24], x0
    00184bcamov rax, [rax+176]
    00184bd1mov [rcx+40], rax
    00184bd5lea r8, [rsp+80]
    00184bdamov [r8], 33
    00184be1lea rdi, [rbx+8]
    00184be5mov rsi, [r14+8]
    00184be9mov rdx, [r14+16]
    00184bed
    00184bedloc_184bed:
    00184bedcall regex_syntax::ast::parse::ParserI<P>::error
    00184bf2
    00184bf2loc_184bf2:
    00184bf2mov [rbx], 4
    00184bf5
    00184bf5loc_184bf5:
    00184bf5add rsp, 488
    00184bfcpop rbx
    00184bfdpop r12
    00184bffpop r13
    00184c01pop r14
    00184c03pop r15
    00184c05pop rbp
    00184c06ret
    00184c07
    00184c07loc_184c07:
    00184c07mov rax, [r14]
    00184c0alea r12, [rax+160]
    00184c11mov rcx, [rax+176]
    00184c18mov [rsp+392], rcx
    00184c20movups x0, [rax+160]
    00184c27movups [rsp+376], x0
    00184c2fmovups x0, [rax+160]
    00184c36movaps [rsp+352], x0
    00184c3emov rax, [rax+176]
    00184c45mov [rsp+368], rax
    00184c4dlea rsi, [rip-0x12d23d]
    00184c54push 3
    00184c56pop rdx
    00184c57mov rdi, r14
    00184c5acall regex_syntax::ast::parse::ParserI<P>::bump_if
    00184c5fmov ebp, eax
    00184c61test al, al
    00184c63jne 0x184c7f
    00184c65lea rsi, [rip-0x12d252]
    00184c6cpush 2
    00184c6epop rdx
    00184c6fmov rdi, r14
    00184c72call regex_syntax::ast::parse::ParserI<P>::bump_if
    00184c77test al, al
    00184c79je 0x184d8a
    00184c7f
    00184c7floc_184c7f:
    00184c7flea r15, [rsp+80]
    00184c84lea rdx, [rsp+32]
    00184c89mov rdi, r15
    00184c8cmov rsi, r14
    00184c8fcall regex_syntax::ast::parse::ParserI<P>::next_capture_index
    00184c94mov eax, [r15]
    00184c97cmp eax, 34
    00184c9ajne 0x184eaa
    00184ca0lea r15, [rsp+80]
    00184ca5mov edx, [r15+4]
    00184ca9mov rdi, r15
    00184cacmov rsi, r14
    00184cafcall regex_syntax::ast::parse::ParserI<P>::parse_capture_name
    00184cb4mov r9l, [r15]
    00184cb7cmp r9l, 34
    00184cbbjne 0x184dcf
    00184cc1lea rsi, [rsp+88]
    00184cc6lea r14, [rsp+212]
    00184ccepush 20
    00184cd0pop rax
    00184cd1mov rcx, rax
    00184cd4mov rdi, r14
    00184cd7rep movsd [rdi], [rsi]
    00184cd9lea r8, [rsp+408]
    00184ce1mov rcx, rax
    00184ce4mov rdi, r8
    00184ce7mov rsi, r14
    00184cearep movsd [rdi], [rsi]
    00184cecmovups x0, [rsp+32]
    00184cf1movups x1, [rsp+48]
    00184cf6movups x2, [rsp+64]
    00184cfbmovups [rbx+128], x2
    00184d02movups [rbx+112], x1
    00184d06movups [rbx+96], x0
    00184d0alea rdi, [rsp+86]
    00184d0fpush 80
    00184d11pop rdx
    00184d12mov r13, [rip+0x8ce07]
    00184d19mov rsi, r8
    00184d1ccall r13
    00184d1fmov rax, [r12+16]
    00184d24mov [r14+36], rax
    00184d28movups x0, [r12]
    00184d2dmovups [r14+20], x0
    00184d32movups x0, [r12]
    00184d37movaps [r14-4], x0
    00184d3cmov rax, [r12+16]
    00184d41mov [r14+12], rax
    00184d45lea rdi, [rsp+208]
    00184d4dcall regex_syntax::ast::Ast::empty
    00184d52mov r14, rdx
    00184d55push 16
    00184d57pop rdi
    00184d58push 8
    00184d5apop rsi
    00184d5bcall _ZN5alloc5alloc15exchange_malloc17hc6dbbe43d4abbe5aE.641
    00184d60mov r15, rax
    00184d63and [rax], 0
    00184d67mov [rax+8], r14
    00184d6blea rdi, [rbx+2]
    00184d6flea rsi, [rsp+80]
    00184d74push 86
    00184d76pop rdx
    00184d77call r13
    00184d7amov [rbx], 1
    00184d7dmov [rbx+1], bpl
    00184d81mov [rbx+88], r15
    00184d85jmp 0x184bf5
    00184d8a
    00184d8aloc_184d8a:
    00184d8alea rsi, [rip-0xf61cb]
    00184d91push 1
    00184d93pop rdx
    00184d94mov rdi, r14
    00184d97call regex_syntax::ast::parse::ParserI<P>::bump_if
    00184d9ctest al, al
    00184d9eje 0x184e1a
    00184da0mov rdx, [r12]
    00184da4mov r13, [r14+16]
    00184da8cmp rdx, r13
    00184dabjne 0x184ec7
    00184db1lea r8, [rsp+80]
    00184db6mov [r8], 21
    00184dbdlea rdi, [rbx+8]
    00184dc1mov rsi, [r14+8]
    00184dc5lea rcx, [rsp+32]
    00184dcajmp 0x184bed
    00184dcf
    00184dcfloc_184dcf:
    00184dcflea rax, [rsp+84]
    00184dd4push 21
    00184dd6pop rdx
    00184dd7lea r8, [rsp+208]
    00184ddfmov rcx, rdx
    00184de2mov rdi, r8
    00184de5mov rsi, rax
    00184de8rep movsd [rdi], [rsi]
    00184deamov rcx, [rax+116]
    00184deemov [rbx+128], rcx
    00184df5movups x0, [rax+84]
    00184df9movups x1, [rax+100]
    00184dfdmovups [rbx+112], x1
    00184e01movups [rbx+96], x0
    00184e05lea rdi, [rbx+12]
    00184e09mov rcx, rdx
    00184e0cmov rsi, r8
    00184e0frep movsd [rdi], [rsi]
    00184e11mov [rbx+8], r9l
    00184e15jmp 0x184bf2
    00184e1a
    00184e1aloc_184e1a:
    00184e1alea r15, [rsp+80]
    00184e1flea rdx, [rsp+32]
    00184e24mov rdi, r15
    00184e27mov rsi, r14
    00184e2acall regex_syntax::ast::parse::ParserI<P>::next_capture_index
    00184e2fmov eax, [r15]
    00184e32cmp eax, 34
    00184e35jne 0x184eaa
    00184e37lea rdi, [rsp+80]
    00184e3cmov ebp, [rdi+4]
    00184e3fmovups x0, [rsp+32]
    00184e44movups x1, [rsp+48]
    00184e49movups x2, [rsp+64]
    00184e4emovups [rbx+128], x2
    00184e55movups [rbx+112], x1
    00184e59movups [rbx+96], x0
    00184e5dmov rax, [r12+16]
    00184e62mov [rdi+40], rax
    00184e66movups x0, [r12]
    00184e6bmovups [rdi+24], x0
    00184e6fmovups x0, [r12]
    00184e74movaps [rdi], x0
    00184e77mov rax, [r12+16]
    00184e7cmov [rdi+16], rax
    00184e80call regex_syntax::ast::Ast::empty
    00184e85mov r14, rdx
    00184e88push 16
    00184e8apop rdi
    00184e8bpush 8
    00184e8dpop rsi
    00184e8ecall _ZN5alloc5alloc15exchange_malloc17hc6dbbe43d4abbe5aE.641
    00184e93and [rax], 0
    00184e97mov [rax+8], r14
    00184e9bmov [rbx], 0
    00184e9emov [rbx+4], ebp
    00184ea1
    00184ea1loc_184ea1:
    00184ea1mov [rbx+88], rax
    00184ea5jmp 0x184bf5
    00184eaa
    00184eaaloc_184eaa:
    00184eaalea rsi, [rsp+88]
    00184eafmov edx, [rsi-4]
    00184eb2lea rdi, [rbx+16]
    00184eb6push 15
    00184eb8pop rcx
    00184eb9rep movsq [rdi], [rsi]
    00184ebcmov [rbx+8], eax
    00184ebfmov [rbx+12], edx
    00184ec2jmp 0x184bf2
    00184ec7
    00184ec7loc_184ec7:
    00184ec7lea r15, [rsp+80]
    00184eccmov rdi, r15
    00184ecfmov rsi, r14
    00184ed2call regex_syntax::ast::parse::ParserI<P>::parse_flags
    00184ed7mov eax, [r15]
    00184edacmp eax, 34
    00184eddjne 0x184ff4
    00184ee3mov rax, [rsp+88]
    00184ee8mov [rsp+8], rax
    00184eedmov rax, [rsp+96]
    00184ef2mov [rsp+16], rax
    00184ef7mov r15, [rsp+104]
    00184efcmovups x0, [rsp+144]
    00184f04movups x1, [rsp+128]
    00184f0cmovups x2, [rsp+112]
    00184f11movaps [rsp+304], x2
    00184f19movaps [rsp+320], x1
    00184f21movaps [rsp+336], x0
    00184f29mov rdi, r14
    00184f2ccall regex_syntax::ast::parse::ParserI<P>::char
    00184f31mov ebp, eax
    00184f33mov [rsp+28], eax
    00184f37mov rdi, r14
    00184f3acall regex_syntax::ast::parse::ParserI<P>::bump
    00184f3fcmp ebp, 41
    00184f42je 0x18508a
    00184f48cmp ebp, 58
    00184f4bjne 0x1851c5
    00184f51movups x0, [rsp+32]
    00184f56movups x1, [rsp+48]
    00184f5bmovups x2, [rsp+64]
    00184f60movups [rbx+128], x2
    00184f67movups [rbx+112], x1
    00184f6bmovups [rbx+96], x0
    00184f6fmov rax, [r12+16]
    00184f74lea rdi, [rsp+80]
    00184f79mov [rdi+40], rax
    00184f7dmovups x0, [r12]
    00184f82movups [rdi+24], x0
    00184f86movups x0, [r12]
    00184f8bmovaps [rdi], x0
    00184f8emov rax, [r12+16]
    00184f93mov [rdi+16], rax
    00184f97call regex_syntax::ast::Ast::empty
    00184f9cmov r14, rdx
    00184f9fpush 16
    00184fa1pop rdi
    00184fa2push 8
    00184fa4pop rsi
    00184fa5call _ZN5alloc5alloc15exchange_malloc17hc6dbbe43d4abbe5aE.641
    00184faaand [rax], 0
    00184faemov [rax+8], r14
    00184fb2mov rcx, [rsp+8]
    00184fb7mov [rbx+8], rcx
    00184fbbmov rcx, [rsp+16]
    00184fc0mov [rbx+16], rcx
    00184fc4mov [rbx+24], r15
    00184fc8movaps x0, [rsp+304]
    00184fd0movaps x1, [rsp+320]
    00184fd8movaps x2, [rsp+336]
    00184fe0movups [rbx+64], x2
    00184fe4movups [rbx+48], x1
    00184fe8movups [rbx+32], x0
    00184fecmov [rbx], 2
    00184fefjmp 0x184ea1
    00184ff4
    00184ff4loc_184ff4:
    00184ff4mov ecx, [rsp+84]
    00184ff8movups x0, [rsp+88]
    00184ffdmov rdx, [rsp+104]
    00185002movups x1, [rsp+112]
    00185007movaps [rsp+208], x1
    0018500fmovups x1, [rsp+128]
    00185017movaps [rsp+224], x1
    0018501fmovups x1, [rsp+144]
    00185027movaps [rsp+240], x1
    0018502fmovups x1, [rsp+192]
    00185037movups [rbx+120], x1
    0018503bmovups x1, [rsp+176]
    00185043movups [rbx+104], x1
    00185047movups x1, [rsp+160]
    0018504fmovups [rbx+88], x1
    00185053mov [rbx+12], ecx
    00185056movups [rbx+16], x0
    0018505amov [rbx+32], rdx
    0018505emovaps x0, [rsp+208]
    00185066movaps x1, [rsp+224]
    0018506emovaps x2, [rsp+240]
    00185076movups [rbx+40], x0
    0018507amovups [rbx+56], x1
    0018507emovups [rbx+72], x2
    00185082mov [rbx+8], eax
    00185085jmp 0x184bf2
    0018508a
    0018508aloc_18508a:
    0018508atest r15, r15
    0018508dje 0x185164
    00185093movups x0, [r12]
    00185098movups [rsp+104], x0
    0018509dmov rax, [r12+16]
    001850a2mov [rsp+120], rax
    001850a7mov rax, [rsp+48]
    001850acmov [rsp+96], rax
    001850b1movups x0, [rsp+32]
    001850b6movaps [rsp+208], x0
    001850bemov rax, [rsp+96]
    001850c3mov [rsp+224], rax
    001850cbmov rax, [rsp+104]
    001850d0mov [rsp+232], rax
    001850d8mov rax, [rsp+112]
    001850ddmov [rsp+240], rax
    001850e5mov rax, [rsp+120]
    001850eamov [rsp+248], rax
    001850f2mov [rbx], 3
    001850f5mov rax, [rsp+8]
    001850famov [rbx+8], rax
    001850femov rax, [rsp+16]
    00185103mov [rbx+16], rax
    00185107mov [rbx+24], r15
    0018510bmovaps x0, [rsp+304]
    00185113movaps x1, [rsp+320]
    0018511bmovaps x2, [rsp+336]
    00185123movups [rbx+32], x0
    00185127movups [rbx+48], x1
    0018512bmovups [rbx+64], x2
    0018512fmovaps x0, [rsp+208]
    00185137movaps x1, [rsp+224]
    0018513fmov rax, [rsp+240]
    00185147mov rcx, [rsp+248]
    0018514fmovups [rbx+80], x0
    00185153movups [rbx+96], x1
    00185157mov [rbx+112], rax
    0018515bmov [rbx+120], rcx
    0018515fjmp 0x184bf5
    00185164
    00185164loc_185164:
    00185164lea r8, [rsp+80]
    00185169mov [r8], 27
    00185170lea rdi, [rbx+8]
    00185174mov rsi, [r14+8]
    00185178lea rcx, [rsp+352]
    00185180mov rdx, r13
    00185183call regex_syntax::ast::parse::ParserI<P>::error
    00185188mov [rbx], 4
    0018518bmov rdi, [rsp+8]
    00185190mov rsi, [rsp+16]
    00185195call _<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop
    0018519ajmp 0x184bf5
    0018519f
    0018519floc_18519f:
    0018519flea rdx, [rsp+80]
    001851a4and [rdx], 0
    001851a8lea rsi, [rip-0x14b1c3]
    001851aflea rcx, [rip+0x6d1d2]
    001851b6lea rdi, [rsp+208]
    001851be
    001851beloc_1851be:
    001851becall core::panicking::assert_failed
    001851c3ud2
    001851c5
    001851c5loc_1851c5:
    001851c5lea rdx, [rsp+80]
    001851caand [rdx], 0
    001851celea rsi, [rip-0x14b1d9]
    001851d5lea rcx, [rip+0x6d1c4]
    001851dclea rdi, [rsp+28]
    001851e1jmp 0x1851be
    00184aff
    001851e3
    001851e3regex_syntax::ast::Flags::flag_state:
    001851e3imul rcx, rsi, 56
    001851e7add rcx, rdi
    001851eaxor eax, eax
    001851ec
    001851ecloc_1851ec:
    001851eccmp rdi, rcx
    001851efje 0x185207
    001851f1movzx edx, [rdi+48]
    001851f5cmp edx, 6
    001851f8je 0x18520a
    001851faadd rdi, 56
    001851fecmp edx, 7
    00185201jne 0x1851ec
    00185203mov al, 1
    00185205jmp 0x1851ec
    00185207
    00185207loc_185207:
    00185207mov al, 2
    00185209ret
    0018520a
    0018520aloc_18520a:
    0018520axor al, 1
    0018520cret
    001851e3
    0018520d
    0018520dregex_syntax::ast::parse::ParserI<P>::next_capture_index:
    0018520dpush r15
    0018520fpush r14
    00185211push rbx
    00185212sub rsp, 192
    00185219mov rbx, rdi
    0018521cmov r15, [rsi]
    0018521fmov eax, [r15+184]
    00185226inc eax
    00185228jne 0x18525d
    0018522amov rcx, rdx
    0018522dlea r8, [rsp+136]
    00185235and [r8], 0
    00185239mov rax, [rsi+8]
    0018523dmov rdx, [rsi+16]
    00185241lea r14, [rsp+8]
    00185246mov rdi, r14
    00185249mov rsi, rax
    0018524ccall regex_syntax::ast::parse::ParserI<P>::error
    00185251mov eax, [r14]
    00185254cmp eax, 34
    00185257jne 0x18526f
    00185259mov eax, [rsp+12]
    0018525d
    0018525dloc_18525d:
    0018525dmov [r15+184], eax
    00185264mov [rbx+4], eax
    00185267mov [rbx], 34
    0018526djmp 0x185286
    0018526f
    0018526floc_18526f:
    0018526flea rsi, [rsp+16]
    00185274mov edx, [rsi-4]
    00185277lea rdi, [rbx+8]
    0018527bpush 15
    0018527dpop rcx
    0018527erep movsq [rdi], [rsi]
    00185281mov [rbx], eax
    00185283mov [rbx+4], edx
    00185286
    00185286loc_185286:
    00185286add rsp, 192
    0018528dpop rbx
    0018528epop r14
    00185290pop r15
    00185292ret
    0018520d
    00185293
    00185293regex_syntax::ast::parse::ParserI<P>::parse_flags:
    00185293push rbp
    00185294push r15
    00185296push r14
    00185298push r13
    0018529apush r12
    0018529cpush rbx
    0018529dsub rsp, 440
    001852a4mov r14, rsi
    001852a7mov [rsp], rdi
    001852abmov rax, [rsi]
    001852aelea rcx, [rax+160]
    001852b5mov [rsp+8], rcx
    001852bamov rcx, [rax+176]
    001852c1lea r15, [rsp+208]
    001852c9mov [r15+40], rcx
    001852cdmovups x0, [rax+160]
    001852d4movups [r15+24], x0
    001852d9mov rcx, [rax+176]
    001852e0mov [r15+16], rcx
    001852e4movups x0, [rax+160]
    001852ebxorps x1, x1
    001852eelea r12, [rsp+72]
    001852f3movups [r12+8], x1
    001852f9movups [r12+24], x0
    001852ffmov rax, [r15+32]
    00185303mov [r12+56], rax
    00185308mov rax, [r15+40]
    0018530cmov [r12+64], rax
    00185311mov rax, [r15+16]
    00185315mov [r12+40], rax
    0018531amov rax, [r15+24]
    0018531emov [r12+48], rax
    00185323mov [r12], 8
    0018532bxor ebx, ebx
    0018532dlea rbp, [rsp+384]
    00185335
    00185335loc_185335:
    00185335mov rdi, r14
    00185338call regex_syntax::ast::parse::ParserI<P>::char
    0018533dcmp eax, 58
    00185340je 0x18546f
    00185346mov rdi, r14
    00185349call regex_syntax::ast::parse::ParserI<P>::char
    0018534ecmp eax, 41
    00185351je 0x18546f
    00185357mov rdi, r14
    0018535acall regex_syntax::ast::parse::ParserI<P>::char
    0018535fcmp eax, 45
    00185362jne 0x1853a4
    00185364lea rdi, [rsp+336]
    0018536cmov rsi, r14
    0018536fcall regex_syntax::ast::parse::ParserI<P>::span_char
    00185374mov rdi, rbp
    00185377mov rsi, r14
    0018537acall regex_syntax::ast::parse::ParserI<P>::span_char
    0018537fmov [rsp+432], 7
    00185387mov rdi, r12
    0018538amov rsi, rbp
    0018538dcall regex_syntax::ast::Flags::add_item
    00185392push 1
    00185394pop rbx
    00185395cmp rax, 1
    00185399jne 0x18541f
    0018539fjmp 0x1854cf
    001853a4
    001853a4loc_1853a4:
    001853a4lea rdi, [rsp+16]
    001853a9mov rsi, r14
    001853accall regex_syntax::ast::parse::ParserI<P>::span_char
    001853b1mov rdi, r15
    001853b4mov rsi, r14
    001853b7call regex_syntax::ast::parse::ParserI<P>::parse_flag
    001853bcmov r13l, [rsp+208]
    001853c4mov bl, [rsp+212]
    001853cbcmp r13l, 34
    001853cfjne 0x185526
    001853d5movups x0, [rsp+16]
    001853damovups x1, [rsp+32]
    001853dfmovups x2, [rsp+48]
    001853e4movaps [rsp+144], x0
    001853ecmovaps [rsp+160], x1
    001853f4movaps [rsp+176], x2
    001853fcmov [rsp+192], bl
    00185403mov rdi, r12
    00185406lea rsi, [rsp+144]
    0018540ecall regex_syntax::ast::Flags::add_item
    00185413cmp rax, 1
    00185417je 0x185548
    0018541dxor ebx, ebx
    0018541f
    0018541floc_18541f:
    0018541fmov rdi, r14
    00185422call regex_syntax::ast::parse::ParserI<P>::bump
    00185427test al, al
    00185429jne 0x185335
    0018542fmov rdx, [rsp+8]
    00185434mov rax, [rdx+16]
    00185438lea rcx, [rsp+16]
    0018543dmov [rcx+40], rax
    00185441movups x0, [rdx]
    00185444movups [rcx+24], x0
    00185448movups x0, [rdx]
    0018544bmovaps [rcx], x0
    0018544emov rax, [rdx+16]
    00185452mov [rcx+16], rax
    00185456lea r8, [rsp+208]
    0018545emov [r8], 15
    00185465mov rsi, [r14+8]
    00185469mov rdx, [r14+16]
    0018546djmp 0x185494
    0018546f
    0018546floc_18546f:
    0018546fcmp rbx, 1
    00185473jne 0x18549d
    00185475lea r8, [rsp+208]
    0018547dmov [r8], 12
    00185484mov rsi, [r14+8]
    00185488mov rdx, [r14+16]
    0018548clea rcx, [rsp+336]
    00185494
    00185494loc_185494:
    00185494mov rdi, [rsp]
    00185498jmp 0x1855ac
    0018549d
    0018549dloc_18549d:
    0018549dmov rcx, [rsp+8]
    001854a2mov rax, [rcx+16]
    001854a6lea rsi, [rsp+72]
    001854abmov [rsi+64], rax
    001854afmovups x0, [rcx]
    001854b2movups [rsi+48], x0
    001854b6mov rax, [rsp]
    001854balea rdi, [rax+8]
    001854bepush 9
    001854c0pop rcx
    001854c1rep movsq [rdi], [rsi]
    001854c4mov [rax], 34
    001854cajmp 0x1855c0
    001854cf
    001854cfloc_1854cf:
    001854cfmov r13, rdx
    001854d2lea rbx, [rsp+16]
    001854d7mov rdi, rbx
    001854damov rsi, r14
    001854ddcall regex_syntax::ast::parse::ParserI<P>::span_char
    001854e2mov rdi, [rsp+72]
    001854e7mov rsi, [rsp+88]
    001854eclea rcx, [rip+0x6cef5]
    001854f3mov rdx, r13
    001854f6call _<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index
    001854fbmovups x0, [rax]
    001854femovups x1, [rax+16]
    00185502movups x2, [rax+32]
    00185506lea r8, [rsp+208]
    0018550emovups [r8+8], x0
    00185513movups [r8+24], x1
    00185518movups [r8+40], x2
    0018551dmov [r8], 14
    00185524jmp 0x18559d
    00185526
    00185526loc_185526:
    00185526lea rsi, [rsp+213]
    0018552emov r14, [rsp]
    00185532lea rdi, [r14+5]
    00185536push 123
    00185538pop rdx
    00185539call [rip+0x8c5e1]
    0018553fmov [r14], r13l
    00185542mov [r14+4], bl
    00185546jmp 0x1855b1
    00185548
    00185548loc_185548:
    00185548mov r13, rdx
    0018554blea rbx, [rsp+16]
    00185550mov rdi, rbx
    00185553mov rsi, r14
    00185556call regex_syntax::ast::parse::ParserI<P>::span_char
    0018555bmov rdi, [rsp+72]
    00185560mov rsi, [rsp+88]
    00185565lea rcx, [rip+0x6ce94]
    0018556cmov rdx, r13
    0018556fcall _<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index
    00185574movups x0, [rax]
    00185577movups x1, [rax+16]
    0018557bmovups x2, [rax+32]
    0018557flea r8, [rsp+208]
    00185587movups [r8+8], x0
    0018558cmovups [r8+24], x1
    00185591movups [r8+40], x2
    00185596mov [r8], 13
    0018559d
    0018559dloc_18559d:
    0018559dmov rsi, [r14+8]
    001855a1mov rdx, [r14+16]
    001855a5mov rdi, [rsp]
    001855a9mov rcx, rbx
    001855ac
    001855acloc_1855ac:
    001855accall regex_syntax::ast::parse::ParserI<P>::error
    001855b1
    001855b1loc_1855b1:
    001855b1mov rdi, [rsp+72]
    001855b6mov rsi, [rsp+80]
    001855bbcall _<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop
    001855c0
    001855c0loc_1855c0:
    001855c0add rsp, 440
    001855c7pop rbx
    001855c8pop r12
    001855capop r13
    001855ccpop r14
    001855cepop r15
    001855d0pop rbp
    001855d1ret
    00185293
    001855d2
    001855d2regex_syntax::ast::parse::ParserI<P>::parse_capture_name:
    001855d2push rbp
    001855d3push r15
    001855d5push r14
    001855d7push r13
    001855d9push r12
    001855dbpush rbx
    001855dcsub rsp, 408
    001855e3mov r12, rsi
    001855e6mov r14, [rsi]
    001855e9mov rax, [rsi+16]
    001855edlea rsi, [r14+160]
    001855f4mov r15, [r14+160]
    001855fbcmp r15, rax
    001855fejne 0x185641
    00185600mov rax, [rsi+16]
    00185604lea rcx, [rsp+176]
    0018560cmov [rcx+40], rax
    00185610movups x0, [rsi]
    00185613movups [rcx+24], x0
    00185617movups x0, [rsi]
    0018561amovaps [rcx], x0
    0018561dmov rax, [rsi+16]
    00185621mov [rcx+16], rax
    00185625lea r8, [rsp+280]
    0018562dmov [r8], 20
    00185634mov rsi, [r12+8]
    00185639mov rdx, r15
    0018563cjmp 0x185a57
    00185641
    00185641loc_185641:
    00185641mov [rsp+16], rsi
    00185646mov [rsp+28], edx
    0018564amov [rsp+8], rax
    0018564fmov [rsp+32], rdi
    00185654lea rax, [r14+168]
    0018565bmov [rsp], rax
    0018565fmov rbx, [r14+168]
    00185666mov rbp, [r14+176]
    0018566d
    0018566dloc_18566d:
    0018566dmov rdi, r12
    00185670call regex_syntax::ast::parse::ParserI<P>::char
    00185675cmp eax, 62
    00185678je 0x1857f2
    0018567emov rdi, r12
    00185681call regex_syntax::ast::parse::ParserI<P>::char
    00185686mov r13l, eax
    00185689cmp [r14+160], r15
    00185690jne 0x1856bb
    00185692cmp [r14+168], rbx
    00185699jne 0x1856bb
    0018569bcmp [r14+176], rbp
    001856a2jne 0x1856bb
    001856a4cmp r13l, 95
    001856a8je 0x1856d4
    001856aamov edi, r13l
    001856adcall core::char::methods::_<impl char>::is_alphabetic
    001856b2test al, al
    001856b4jne 0x1856d4
    001856b6jmp 0x185a23
    001856bb
    001856bbloc_1856bb:
    001856bblea eax, [r13-46]
    001856bfcmp eax, 49
    001856c2ja 0x1856e5
    001856c4mov rcx, 0x2a00000000001
    001856cebt rcx, rax
    001856d2jae 0x1856e5
    001856d4
    001856d4loc_1856d4:
    001856d4mov rdi, r12
    001856d7call regex_syntax::ast::parse::ParserI<P>::bump
    001856dctest al, al
    001856dejne 0x18566d
    001856e0jmp 0x1857f2
    001856e5
    001856e5loc_1856e5:
    001856e5mov edi, r13l
    001856e8call core::char::methods::_<impl char>::is_alphabetic
    001856edlea ecx, [r13-48]
    001856f1cmp ecx, 10
    001856f4jb 0x1856d4
    001856f6test al, al
    001856f8jne 0x1856d4
    001856facmp r13l, 127
    001856fejbe 0x185a23
    00185704mov ecx, r13l
    00185707shl ecx, 11
    0018570apush 39
    0018570cpop rsi
    0018570dmov rdx, rsi
    00185710xor eax, eax
    00185712lea r9, [rip-0x13dff9]
    00185719mov r10l, 255
    0018571f
    0018571floc_18571f:
    0018571fshr rdx, 1
    00185722add rdx, rax
    00185725mov r8l, [r9+4*rdx]
    00185729shl r8l, 11
    0018572dxor edi, edi
    0018572fcmp r8l, ecx
    00185732setne dil
    00185736cmovb edi, r10l
    0018573acmp dil, 1
    0018573eje 0x185756
    00185740movzx eax, dil
    00185744inc rdx
    00185747cmp eax, 255
    0018574cjne 0x185760
    0018574emov rax, rdx
    00185751mov rdx, rsi
    00185754jmp 0x185759
    00185756
    00185756loc_185756:
    00185756mov rsi, rdx
    00185759
    00185759loc_185759:
    00185759sub rdx, rax
    0018575cja 0x18571f
    0018575ejmp 0x185763
    00185760
    00185760loc_185760:
    00185760mov rax, rdx
    00185763
    00185763loc_185763:
    00185763cmp rax, 38
    00185767ja 0x185c0f
    0018576dmov ecx, 275
    00185772push 37
    00185774pop rdx
    00185775je 0x185788
    00185777mov ecx, [r9+4*rax+4]
    0018577cshr ecx, 21
    0018577ftest rax, rax
    00185782je 0x1857ee
    00185784lea rdx, [rax-1]
    00185788
    00185788loc_185788:
    00185788mov edx, [r9+4*rdx]
    0018578cmov esi, 0x1fffff
    00185791and edx, esi
    00185793
    00185793loc_185793:
    00185793mov edi, [r9+4*rax]
    00185797shr edi, 21
    0018579amov rax, rdi
    0018579dnot rax
    001857a0add rax, rcx
    001857a3je 0x1857df
    001857a5sub r13l, edx
    001857a8dec rcx
    001857abxor edx, edx
    001857admov rax, rdi
    001857b0lea r8, [rip-0x13dffb]
    001857b7
    001857b7loc_1857b7:
    001857b7cmp rax, 274
    001857bdja 0x185bec
    001857c3movzx esi, [rax+r8]
    001857c8add edx, esi
    001857cacmp edx, r13l
    001857cdja 0x1857dc
    001857cfinc rax
    001857d2cmp rcx, rax
    001857d5jne 0x1857b7
    001857d7mov rdi, rcx
    001857dajmp 0x1857df
    001857dc
    001857dcloc_1857dc:
    001857dcmov rdi, rax
    001857df
    001857dfloc_1857df:
    001857dftest dil, 1
    001857e3jne 0x1856d4
    001857e9jmp 0x185a23
    001857ee
    001857eeloc_1857ee:
    001857eexor edx, edx
    001857f0jmp 0x185793
    001857f2
    001857f2loc_1857f2:
    001857f2mov rsi, [rsp+16]
    001857f7mov r13, [rsi]
    001857famov rax, [rsp]
    001857femovups x0, [rax]
    00185801movaps [rsp+160], x0
    00185809mov rdx, [rsp+8]
    0018580ecmp r13, rdx
    00185811jne 0x185856
    00185813mov rax, [rsi+16]
    00185817lea rcx, [rsp+176]
    0018581fmov [rcx+40], rax
    00185823movups x0, [rsi]
    00185826movups [rcx+24], x0
    0018582amovups x0, [rsi]
    0018582dmovaps [rcx], x0
    00185830mov rax, [rsi+16]
    00185834mov [rcx+16], rax
    00185838lea r8, [rsp+280]
    00185840mov [r8], 20
    00185847mov rsi, [r12+8]
    0018584cmov rdi, [rsp+32]
    00185851jmp 0x185a57
    00185856
    00185856loc_185856:
    00185856mov rdi, r12
    00185859call regex_syntax::ast::parse::ParserI<P>::char
    0018585emov [rsp+176], eax
    00185865cmp eax, 62
    00185868jne 0x185c1e
    0018586emov rdi, r12
    00185871call regex_syntax::ast::parse::ParserI<P>::bump
    00185876mov r12, [r12+8]
    0018587blea r8, [rip+0x6cb4e]
    00185882mov rdi, r12
    00185885mov rsi, [rsp+8]
    0018588amov rdx, r15
    0018588dmov rcx, r13
    00185890call core::str::traits::_<impl core::ops::index::Index<I> for str>::index
    00185895test rdx, rdx
    00185898je 0x1859e6
    0018589emov [rsp+48], r12
    001858a3movaps x0, [rsp+160]
    001858abmovups [rsp+136], x0
    001858b3mov rdi, rdx
    001858b6mov [rsp+16], rdx
    001858bbmov [rsp], rax
    001858bfcall alloc::raw_vec::RawVec<T,A>::allocate_in
    001858c4mov r12, rax
    001858c7mov [rsp+40], rdx
    001858ccmov rdi, rax
    001858cfmov rsi, [rsp]
    001858d3mov rdx, [rsp+16]
    001858d8call [rip+0x8c242]
    001858demov rcx, [rsp+16]
    001858e3mov [rsp+104], r15
    001858e8mov [rsp+112], rbx
    001858edmov [rsp+120], rbp
    001858f2mov [rsp+128], r13
    001858famov [rsp], r12
    001858femov [rsp+80], r12
    00185903mov rax, [rsp+40]
    00185908mov [rsp+88], rax
    0018590dmov [rsp+96], rcx
    00185912mov eax, [rsp+28]
    00185916mov [rsp+152], eax
    0018591dcmp [r14+96], 0
    00185922jne 0x185c47
    00185928or [r14+96], -1
    0018592dmov rbx, [r14+104]
    00185931mov r12, [r14+120]
    00185935xor r15l, r15l
    00185938mov r13, r12
    0018593b
    0018593bloc_18593b:
    0018593bcmp r15, r12
    0018593ejae 0x18598b
    00185940shr r13, 1
    00185943add r13, r15
    00185946imul rbp, r13, 80
    0018594amov rdi, [rbx+rbp]
    0018594emov rsi, [rbx+rbp+16]
    00185953mov rdx, [rsp]
    00185957call core::cmp::impls::_<impl core::cmp::Ord for &A>::cmp
    0018595ccmp al, 1
    0018595eje 0x18597e
    00185960movzx eax, al
    00185963cmp eax, 255
    00185968mov rsi, [rsp+48]
    0018596djne 0x185a6e
    00185973inc r13
    00185976mov r15, r13
    00185979mov r13, r12
    0018597cjmp 0x185981
    0018597e
    0018597eloc_18597e:
    0018597emov r12, r13
    00185981
    00185981loc_185981:
    00185981sub r13, r15
    00185984mov rcx, [rsp+16]
    00185989jmp 0x18593b
    0018598b
    0018598bloc_18598b:
    0018598blea rax, [rsp+104]
    00185990movups x0, [rax]
    00185993movups x1, [rax+16]
    00185997movups x2, [rax+32]
    0018599blea rbx, [rsp+176]
    001859a3movups [rbx+56], x2
    001859a7movups [rbx+40], x1
    001859abmovups [rbx+24], x0
    001859afmov rdi, rbx
    001859b2mov rsi, [rsp]
    001859b6mov rdx, rcx
    001859b9call _<alloc::string::String as core::clone::Clone>::clone
    001859bemov eax, [rsp+28]
    001859c2mov [rbx+72], eax
    001859c5mov r13, [r14+120]
    001859c9cmp r13, [r14+112]
    001859cdjne 0x185b5a
    001859d3mov rsi, r13
    001859d6inc rsi
    001859d9jne 0x185abc
    001859dfxor edi, edi
    001859e1jmp 0x185b55
    001859e6
    001859e6loc_1859e6:
    001859e6lea rcx, [rsp+176]
    001859eemov [rcx], r15
    001859f1mov [rcx+8], rbx
    001859f5mov [rcx+16], rbp
    001859f9mov [rcx+24], r15
    001859fdmov [rcx+32], rbx
    00185a01mov [rcx+40], rbp
    00185a05lea r8, [rsp+280]
    00185a0dmov [r8], 18
    00185a14mov rdi, [rsp+32]
    00185a19mov rsi, r12
    00185a1cmov rdx, [rsp+8]
    00185a21jmp 0x185a57
    00185a23
    00185a23loc_185a23:
    00185a23lea rbx, [rsp+176]
    00185a2bmov rdi, rbx
    00185a2emov rsi, r12
    00185a31call regex_syntax::ast::parse::ParserI<P>::span_char
    00185a36lea r8, [rsp+280]
    00185a3emov [r8], 19
    00185a45mov rsi, [r12+8]
    00185a4amov rdi, [rsp+32]
    00185a4fmov rdx, [rsp+8]
    00185a54mov rcx, rbx
    00185a57
    00185a57loc_185a57:
    00185a57call regex_syntax::ast::parse::ParserI<P>::error
    00185a5c
    00185a5cloc_185a5c:
    00185a5cadd rsp, 408
    00185a63pop rbx
    00185a64pop r12
    00185a66pop r13
    00185a68pop r14
    00185a6apop r15
    00185a6cpop rbp
    00185a6dret
    00185a6e
    00185a6eloc_185a6e:
    00185a6emovups x0, [rbx+rbp+24]
    00185a73movups x1, [rbx+rbp+40]
    00185a78movups x2, [rbx+rbp+56]
    00185a7dlea r8, [rsp+176]
    00185a85movups [r8+40], x2
    00185a8amovups [r8+24], x1
    00185a8fmovups [r8+8], x0
    00185a94mov [r8], 17
    00185a9blea rbx, [rsp+280]
    00185aa3mov rdi, rbx
    00185aa6mov rdx, [rsp+8]
    00185aablea rcx, [rsp+104]
    00185ab0call regex_syntax::ast::parse::ParserI<P>::error
    00185ab5mov eax, [rbx]
    00185ab7jmp 0x185b9e
    00185abc
    00185abcloc_185abc:
    00185abclea rax, [2*r13]
    00185ac4cmp rax, rsi
    00185ac7cmova rsi, rax
    00185acbcmp rsi, 5
    00185acfpush 4
    00185ad1pop r12
    00185ad3cmovae r12, rsi
    00185ad7mov rax, 0x19999999999999a
    00185ae1xor esi, esi
    00185ae3cmp r12, rax
    00185ae6setb sil
    00185aeaimul rdx, r12, 80
    00185aeeshl rsi, 3
    00185af2test r13, r13
    00185af5je 0x185b14
    00185af7imul rax, r13, 80
    00185afbmov rcx, [r14+104]
    00185affmov [rsp+56], rcx
    00185b04mov [rsp+64], 8
    00185b0dmov [rsp+72], rax
    00185b12jmp 0x185b1a
    00185b14
    00185b14loc_185b14:
    00185b14and [rsp+64], 0
    00185b1a
    00185b1aloc_185b1a:
    00185b1alea rbx, [rsp+256]
    00185b22lea rcx, [rsp+56]
    00185b27mov rdi, rbx
    00185b2acall alloc::raw_vec::finish_grow
    00185b2fcmp [rbx], 0
    00185b33mov rdi, [rbx+8]
    00185b37je 0x185b43
    00185b39mov rsi, [rsp+272]
    00185b41jmp 0x185b55
    00185b43
    00185b43loc_185b43:
    00185b43mov [r14+104], rdi
    00185b47mov [r14+112], r12
    00185b4bmov rdi, 0x8000000000000001
    00185b55
    00185b55loc_185b55:
    00185b55call alloc::raw_vec::handle_reserve
    00185b5a
    00185b5aloc_185b5a:
    00185b5aimul rbx, r15, 80
    00185b5eadd rbx, [r14+104]
    00185b62mov rax, r13
    00185b65sub rax, r15
    00185b68jbe 0x185b7d
    00185b6alea rdi, [rbx+80]
    00185b6eimul rdx, rax, 80
    00185b72mov rsi, rbx
    00185b75call [rip+0x8bf95]
    00185b7bjmp 0x185b83
    00185b7d
    00185b7dloc_185b7d:
    00185b7djne 0x185c55
    00185b83
    00185b83loc_185b83:
    00185b83push 10
    00185b85pop rcx
    00185b86lea rsi, [rsp+176]
    00185b8emov rdi, rbx
    00185b91rep movsq [rdi], [rsi]
    00185b94inc r13
    00185b97mov [r14+120], r13
    00185b9bpush 34
    00185b9dpop rax
    00185b9e
    00185b9eloc_185b9e:
    00185b9einc [r14+96]
    00185ba2cmp eax, 34
    00185ba5mov rdx, [rsp+32]
    00185baajne 0x185bc6
    00185baclea rdi, [rdx+8]
    00185bb0push 10
    00185bb2pop rcx
    00185bb3lea rsi, [rsp+80]
    00185bb8rep movsq [rdi], [rsi]
    00185bbbmov [rdx], 34
    00185bc1jmp 0x185a5c
    00185bc6
    00185bc6loc_185bc6:
    00185bc6lea rsi, [rsp+284]
    00185bcelea rdi, [rdx+4]
    00185bd2push 31
    00185bd4pop rcx
    00185bd5rep movsd [rdi], [rsi]
    00185bd7mov [rdx], eax
    00185bd9mov rdi, [rsp]
    00185bddmov rsi, [rsp+40]
    00185be2call core::ptr::drop_in_place<alloc::boxed::Box<str>>
    00185be7jmp 0x185a5c
    00185bec
    00185becloc_185bec:
    00185beccmp rdi, 276
    00185bf3mov eax, 275
    00185bf8cmovb rdi, rax
    00185bfclea rdx, [rip+0x65585]
    00185c03mov esi, 275
    00185c08
    00185c08loc_185c08:
    00185c08call core::panicking::panic_bounds_check
    00185c0dud2
    00185c0f
    00185c0floc_185c0f:
    00185c0flea rdx, [rip+0x6555a]
    00185c16push 39
    00185c18pop rdi
    00185c19mov rsi, rdi
    00185c1cjmp 0x185c08
    00185c1e
    00185c1eloc_185c1e:
    00185c1elea rdx, [rsp+280]
    00185c26and [rdx], 0
    00185c2alea rsi, [rip-0x14bc31]
    00185c31lea rcx, [rip+0x6c780]
    00185c38lea rdi, [rsp+176]
    00185c40call core::panicking::assert_failed
    00185c45ud2
    00185c47
    00185c47loc_185c47:
    00185c47lea rdi, [rip+0x6c3b2]
    00185c4ecall core::cell::panic_already_borrowed
    00185c53ud2
    00185c55
    00185c55loc_185c55:
    00185c55mov rdi, r15
    00185c58mov rsi, r13
    00185c5bcall alloc::vec::Vec<T,A>::insert::assert_failed
    00185c60ud2
    001855d2
    00185c62
    00185c62core::char::methods::_<impl char>::is_alphabetic:
    00185c62push rax
    00185c63mov ecx, edi
    00185c65and ecx, -33
    00185c68add ecx, -65
    00185c6bmov al, 1
    00185c6dcmp ecx, 26
    00185c70jb 0x185d62
    00185c76cmp edi, 128
    00185c7cjb 0x185cdb
    00185c7emov esi, edi
    00185c80shl esi, 11
    00185c83push 53
    00185c85pop rax
    00185c86xor edx, edx
    00185c88lea rcx, [rip-0x13ef5b]
    00185c8fmov r8l, 255
    00185c95mov r9, rax
    00185c98
    00185c98loc_185c98:
    00185c98shr rax, 1
    00185c9badd rax, rdx
    00185c9emov r11l, [rcx+4*rax]
    00185ca2shl r11l, 11
    00185ca6xor r10l, r10l
    00185ca9cmp r11l, esi
    00185cacsetne r10b
    00185cb0cmovb r10l, r8l
    00185cb4cmp r10b, 1
    00185cb8je 0x185cd1
    00185cbamovzx edx, r10b
    00185cbeinc rax
    00185cc1cmp edx, 255
    00185cc7jne 0x185ce2
    00185cc9mov rdx, rax
    00185cccmov rax, r9
    00185ccfjmp 0x185cd4
    00185cd1
    00185cd1loc_185cd1:
    00185cd1mov r9, rax
    00185cd4
    00185cd4loc_185cd4:
    00185cd4sub rax, rdx
    00185cd7ja 0x185c98
    00185cd9jmp 0x185ce5
    00185cdb
    00185cdbloc_185cdb:
    00185cdbxor eax, eax
    00185cddjmp 0x185d62
    00185ce2
    00185ce2loc_185ce2:
    00185ce2mov rdx, rax
    00185ce5
    00185ce5loc_185ce5:
    00185ce5cmp rdx, 52
    00185ce9ja 0x185d8e
    00185cefmov eax, [rcx+4*rdx]
    00185cf2shr eax, 21
    00185cf5cmp rdx, 52
    00185cf9jne 0x185d05
    00185cfbpush 51
    00185cfdpop rdx
    00185cfemov esi, 1465
    00185d03jmp 0x185d14
    00185d05
    00185d05loc_185d05:
    00185d05mov esi, [rcx+4*rdx+4]
    00185d09shr esi, 21
    00185d0ctest rdx, rdx
    00185d0fje 0x185d64
    00185d11dec rdx
    00185d14
    00185d14loc_185d14:
    00185d14mov r8l, 0x1fffff
    00185d1aand r8l, [rcx+4*rdx]
    00185d1e
    00185d1eloc_185d1e:
    00185d1emov rcx, rax
    00185d21not rcx
    00185d24add rcx, rsi
    00185d27je 0x185d60
    00185d29sub edi, r8l
    00185d2cdec rsi
    00185d2fxor ecx, ecx
    00185d31lea r8, [rip-0x13ef30]
    00185d38mov rdx, rax
    00185d3b
    00185d3bloc_185d3b:
    00185d3bcmp rdx, 1464
    00185d42ja 0x185d69
    00185d44movzx r9l, [rdx+r8]
    00185d49add ecx, r9l
    00185d4ccmp ecx, edi
    00185d4eja 0x185d5d
    00185d50inc rdx
    00185d53cmp rsi, rdx
    00185d56jne 0x185d3b
    00185d58mov rax, rsi
    00185d5bjmp 0x185d60
    00185d5d
    00185d5dloc_185d5d:
    00185d5dmov rax, rdx
    00185d60
    00185d60loc_185d60:
    00185d60and al, 1
    00185d62
    00185d62loc_185d62:
    00185d62pop rcx
    00185d63ret
    00185d64
    00185d64loc_185d64:
    00185d64xor r8l, r8l
    00185d67jmp 0x185d1e
    00185d69
    00185d69loc_185d69:
    00185d69cmp rax, 1466
    00185d6fmov ecx, 1465
    00185d74cmovb rax, rcx
    00185d78lea rdx, [rip+0x65409]
    00185d7fmov esi, 1465
    00185d84mov rdi, rax
    00185d87
    00185d87loc_185d87:
    00185d87call core::panicking::panic_bounds_check
    00185d8cud2
    00185d8e
    00185d8eloc_185d8e:
    00185d8elea rdx, [rip+0x653db]
    00185d95push 53
    00185d97pop rdi
    00185d98mov rsi, rdi
    00185d9bjmp 0x185d87
    00185c62
    00185d9d
    00185d9dcore::cmp::impls::_<impl core::cmp::Ord for &A>::cmp:
    00185d9dpush rbx
    00185d9emov rbx, rsi
    00185da1sub rbx, rcx
    00185da4cmovb rcx, rsi
    00185da8mov rsi, rdx
    00185dabmov rdx, rcx
    00185daecall [rip+0x8beec]
    00185db4cdqe
    00185db6test eax, eax
    00185db8cmovne rbx, rax
    00185dbcxor ecx, ecx
    00185dbetest rbx, rbx
    00185dc1setne cl
    00185dc4mov eax, 255
    00185dc9cmovns eax, ecx
    00185dccpop rbx
    00185dcdret
    00185d9d
    00185dce
    00185dceregex_syntax::ast::Flags::add_item:
    00185dcepush rbp
    00185dcfpush r15
    00185dd1push r14
    00185dd3push rbx
    00185dd4push rax
    00185dd5mov r15, rsi
    00185dd8mov r14, rdi
    00185ddbmov rcx, [rdi]
    00185ddemov rsi, [rdi+16]
    00185de2mov dl, [r15+48]
    00185de6mov rbx, 0x1fffffffffffffff
    00185df0and rbx, rsi
    00185df3imul r8, rsi, 56
    00185df7xor edi, edi
    00185df9push 1
    00185dfbpop rax
    00185dfcmov r9, rcx
    00185dff
    00185dffloc_185dff:
    00185dfftest r8, r8
    00185e02je 0x185e39
    00185e04cmp dl, 7
    00185e07setne r11b
    00185e0bmov r10b, [r9+48]
    00185e0fcmp r10b, 7
    00185e13setne bpl
    00185e17xor bpl, r11b
    00185e1ajne 0x185e2c
    00185e1ccmp r10b, 7
    00185e20je 0x185e82
    00185e22cmp dl, 7
    00185e25je 0x185e82
    00185e27cmp r10b, dl
    00185e2aje 0x185e82
    00185e2c
    00185e2cloc_185e2c:
    00185e2cadd r9, 56
    00185e30add r8, -56
    00185e34inc rdi
    00185e37jmp 0x185dff
    00185e39
    00185e39loc_185e39:
    00185e39cmp rsi, [r14+8]
    00185e3djne 0x185e4e
    00185e3fmov rdi, r14
    00185e42call alloc::raw_vec::RawVec<T,A>::reserve_for_push
    00185e47mov rcx, [r14]
    00185e4amov rsi, [r14+16]
    00185e4e
    00185e4eloc_185e4e:
    00185e4eimul rax, rsi, 56
    00185e52mov rdx, [r15+48]
    00185e56mov [rcx+rax+48], rdx
    00185e5bmovups x0, [r15]
    00185e5fmovups x1, [r15+16]
    00185e64movups x2, [r15+32]
    00185e69movups [rcx+rax+32], x2
    00185e6emovups [rcx+rax+16], x1
    00185e73movups [rcx+rax], x0
    00185e77inc rsi
    00185e7amov [r14+16], rsi
    00185e7exor eax, eax
    00185e80jmp 0x185e85
    00185e82
    00185e82loc_185e82:
    00185e82mov rbx, rdi
    00185e85
    00185e85loc_185e85:
    00185e85mov rdx, rbx
    00185e88add rsp, 8
    00185e8cpop rbx
    00185e8dpop r14
    00185e8fpop r15
    00185e91pop rbp
    00185e92ret
    00185dce
    00185e93
    00185e93regex_syntax::ast::parse::ParserI<P>::parse_flag:
    00185e93push r15
    00185e95push r14
    00185e97push rbx
    00185e98sub rsp, 112
    00185e9cmov r14, rsi
    00185e9fmov rbx, rdi
    00185ea2mov rdi, rsi
    00185ea5call regex_syntax::ast::parse::ParserI<P>::char
    00185eaacmp eax, 82
    00185eadje 0x185ed3
    00185eafcmp eax, 85
    00185eb2je 0x185ed9
    00185eb4cmp eax, 105
    00185eb7je 0x185edf
    00185eb9cmp eax, 109
    00185ebcje 0x185ee5
    00185ebecmp eax, 115
    00185ec1je 0x185eeb
    00185ec3cmp eax, 117
    00185ec6je 0x185ef1
    00185ec8cmp eax, 120
    00185ecbjne 0x185f05
    00185ecdmov [rbx+4], 6
    00185ed1jmp 0x185ef5
    00185ed3
    00185ed3loc_185ed3:
    00185ed3mov [rbx+4], 5
    00185ed7jmp 0x185ef5
    00185ed9
    00185ed9loc_185ed9:
    00185ed9mov [rbx+4], 3
    00185eddjmp 0x185ef5
    00185edf
    00185edfloc_185edf:
    00185edfmov [rbx+4], 0
    00185ee3jmp 0x185ef5
    00185ee5
    00185ee5loc_185ee5:
    00185ee5mov [rbx+4], 1
    00185ee9jmp 0x185ef5
    00185eeb
    00185eebloc_185eeb:
    00185eebmov [rbx+4], 2
    00185eefjmp 0x185ef5
    00185ef1
    00185ef1loc_185ef1:
    00185ef1mov [rbx+4], 4
    00185ef5
    00185ef5loc_185ef5:
    00185ef5mov [rbx], 34
    00185efb
    00185efbloc_185efb:
    00185efbadd rsp, 112
    00185effpop rbx
    00185f00pop r14
    00185f02pop r15
    00185f04ret
    00185f05
    00185f05loc_185f05:
    00185f05lea r15, [rsp+8]
    00185f0amov rdi, r15
    00185f0dmov rsi, r14
    00185f10call regex_syntax::ast::parse::ParserI<P>::span_char
    00185f15lea r8, [rsp+56]
    00185f1amov [r8], 16
    00185f21mov rsi, [r14+8]
    00185f25mov rdx, [r14+16]
    00185f29mov rdi, rbx
    00185f2cmov rcx, r15
    00185f2fcall regex_syntax::ast::parse::ParserI<P>::error
    00185f34jmp 0x185efb
    00185e93
    00185f36
    00185f36_<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index:
    00185f36cmp rsi, rdx
    00185f39jbe 0x185f46
    00185f3bimul rax, rdx, 56
    00185f3fadd rdi, rax
    00185f42mov rax, rdi
    00185f45ret
    00185f46
    00185f46loc_185f46:
    00185f46push rax
    00185f47mov rdi, rdx
    00185f4amov rdx, rcx
    00185f4dcall core::panicking::panic_bounds_check
    00185f52ud2
    00185f36
    00185f54
    00185f54regex_syntax::is_meta_character:
    00185f54lea eax, [rdi-35]
    00185f57cmp eax, 59
    00185f5aja 0x185f6c
    00185f5cmov rcx, 0xf00000010000deb
    00185f66bt rcx, rax
    00185f6ajb 0x185f74
    00185f6c
    00185f6cloc_185f6c:
    00185f6cadd edi, -123
    00185f6fcmp edi, 4
    00185f72jae 0x185f77
    00185f74
    00185f74loc_185f74:
    00185f74mov al, 1
    00185f76ret
    00185f77
    00185f77loc_185f77:
    00185f77xor eax, eax
    00185f79ret
    00185f54
    00185f7a
    00185f7aregex_syntax::ast::parse::ParserI<P>::parse_hex:
    00185f7apush rbp
    00185f7bpush r14
    00185f7dpush rbx
    00185f7esub rsp, 112
    00185f82mov rbx, rsi
    00185f85mov r14, rdi
    00185f88mov rdi, rsi
    00185f8bcall regex_syntax::ast::parse::ParserI<P>::char
    00185f90cmp eax, 120
    00185f93je 0x185fb3
    00185f95mov rdi, rbx
    00185f98call regex_syntax::ast::parse::ParserI<P>::char
    00185f9dcmp eax, 117
    00185fa0je 0x185fb3
    00185fa2mov rdi, rbx
    00185fa5call regex_syntax::ast::parse::ParserI<P>::char
    00185faacmp eax, 85
    00185fadjne 0x18605f
    00185fb3
    00185fb3loc_185fb3:
    00185fb3mov rdi, rbx
    00185fb6call regex_syntax::ast::parse::ParserI<P>::char
    00185fbbcmp eax, 117
    00185fbesete cl
    00185fc1mov dl, 2
    00185fc3sub dl, cl
    00185fc5xor ecx, ecx
    00185fc7cmp eax, 120
    00185fcamovzx ebp, dl
    00185fcdcmove ebp, ecx
    00185fd0mov rdi, rbx
    00185fd3call regex_syntax::ast::parse::ParserI<P>::bump_and_bump_space
    00185fd8test al, al
    00185fdaje 0x186000
    00185fdcmov rdi, rbx
    00185fdfcall regex_syntax::ast::parse::ParserI<P>::char
    00185fe4movzx edx, bpl
    00185fe8mov rdi, r14
    00185febmov rsi, rbx
    00185feeadd rsp, 112
    00185ff2cmp eax, 123
    00185ff5jne 0x186056
    00185ff7pop rbx
    00185ff8pop r14
    00185ffapop rbp
    00185ffbjmp 0x186d0c
    00186000
    00186000loc_186000:
    00186000mov rax, [rbx]
    00186003mov rdx, [rax+176]
    0018600amov rcx, rsp
    0018600dmov [rcx+40], rdx
    00186011movups x0, [rax+160]
    00186018movups [rcx+24], x0
    0018601cmovups x0, [rax+160]
    00186023movaps [rcx], x0
    00186026mov rax, [rax+176]
    0018602dmov [rcx+16], rax
    00186031lea r8, [rsp+56]
    00186036mov [r8], 10
    0018603dmov rsi, [rbx+8]
    00186041mov rdx, [rbx+16]
    00186045mov rdi, r14
    00186048call regex_syntax::ast::parse::ParserI<P>::error
    0018604dadd rsp, 112
    00186051pop rbx
    00186052pop r14
    00186054pop rbp
    00186055ret
    00186056
    00186056loc_186056:
    00186056pop rbx
    00186057pop r14
    00186059pop rbp
    0018605ajmp 0x187013
    0018605f
    0018605floc_18605f:
    0018605flea rdi, [rip-0x12e5af]
    00186066lea rdx, [rip+0x6c46b]
    0018606dpush 86
    0018606fpop rsi
    00186070call core::panicking::panic
    00186075ud2
    00185f7a
    00186077
    00186077regex_syntax::ast::parse::ParserI<P>::parse_unicode_class:
    00186077push rbp
    00186078push r15
    0018607apush r14
    0018607cpush r13
    0018607epush r12
    00186080push rbx
    00186081sub rsp, 344
    00186088mov r15, rsi
    0018608bmov rbx, rdi
    0018608emov rdi, rsi
    00186091call regex_syntax::ast::parse::ParserI<P>::char
    00186096cmp eax, 112
    00186099je 0x1860ac
    0018609bmov rdi, r15
    0018609ecall regex_syntax::ast::parse::ParserI<P>::char
    001860a3cmp eax, 80
    001860a6jne 0x186871
    001860ac
    001860acloc_1860ac:
    001860acmov r14, [r15]
    001860aflea rdi, [r14+128]
    001860b6lea rsi, [rip+0x6c553]
    001860bdcall core::cell::RefCell<T>::borrow_mut
    001860c2mov r12, rax
    001860c5mov r13, rdx
    001860c8and [rax+16], 0
    001860cdmov rdi, r15
    001860d0call regex_syntax::ast::parse::ParserI<P>::char
    001860d5mov [rsp+76], eax
    001860d9mov rdi, r15
    001860dccall regex_syntax::ast::parse::ParserI<P>::bump_and_bump_space
    001860e1test al, al
    001860e3je 0x186156
    001860e5mov rdi, r15
    001860e8call regex_syntax::ast::parse::ParserI<P>::char
    001860edcmp eax, 123
    001860f0jne 0x1861af
    001860f6mov [rsp+64], r13
    001860fblea r13, [rsp+128]
    00186103mov rdi, r13
    00186106mov rsi, r15
    00186109call regex_syntax::ast::parse::ParserI<P>::span_char
    0018610emov rax, [r13+40]
    00186112mov [rsp+96], rax
    00186117movups x0, [r13+24]
    0018611cmovaps [rsp+80], x0
    00186121
    00186121loc_186121:
    00186121mov rdi, r15
    00186124call regex_syntax::ast::parse::ParserI<P>::bump_and_bump_space
    00186129test al, al
    0018612bje 0x186211
    00186131mov rdi, r15
    00186134call regex_syntax::ast::parse::ParserI<P>::char
    00186139cmp eax, 125
    0018613cje 0x186211
    00186142mov rdi, r15
    00186145call regex_syntax::ast::parse::ParserI<P>::char
    0018614amov rdi, r12
    0018614dmov esi, eax
    0018614fcall _ZN5alloc6string6String4push17hd5aad5ee06e44fdeE.947
    00186154jmp 0x186121
    00186156
    00186156loc_186156:
    00186156mov rax, [r14+176]
    0018615dlea rcx, [rsp+288]
    00186165mov [rcx+40], rax
    00186169movups x0, [r14+160]
    00186171movups [rcx+24], x0
    00186175movups x0, [r14+160]
    0018617dmovaps [rcx], x0
    00186180mov rax, [r14+176]
    00186187mov [rcx+16], rax
    0018618blea r8, [rsp+128]
    00186193mov [r8], 10
    0018619amov rsi, [r15+8]
    0018619emov rdx, [r15+16]
    001861a2mov rdi, rbx
    001861a5
    001861a5loc_1861a5:
    001861a5call regex_syntax::ast::parse::ParserI<P>::error
    001861aajmp 0x186835
    001861af
    001861afloc_1861af:
    001861afmov rax, [r14+176]
    001861b6mov [rsp+272], rax
    001861bemovups x0, [r14+160]
    001861c6movaps [rsp+256], x0
    001861cemov rdi, r15
    001861d1call regex_syntax::ast::parse::ParserI<P>::char
    001861d6cmp eax, 92
    001861d9jne 0x18626c
    001861dflea r12, [rsp+288]
    001861e7mov rdi, r12
    001861eamov rsi, r15
    001861edcall regex_syntax::ast::parse::ParserI<P>::span_char
    001861f2lea r8, [rsp+128]
    001861famov [r8], 31
    00186201mov rsi, [r15+8]
    00186205mov rdx, [r15+16]
    00186209mov rdi, rbx
    0018620cmov rcx, r12
    0018620fjmp 0x1861a5
    00186211
    00186211loc_186211:
    00186211mov rdx, [r14+160]
    00186218cmp rdx, [r15+16]
    0018621cjne 0x18629c
    0018621eadd r14, 160
    00186225mov rax, [r14+16]
    00186229lea rcx, [rsp+288]
    00186231mov [rcx+40], rax
    00186235movups x0, [r14]
    00186239movups [rcx+24], x0
    0018623dmovups x0, [r14]
    00186241movaps [rcx], x0
    00186244mov rax, [r14+16]
    00186248mov [rcx+16], rax
    0018624clea r8, [rsp+128]
    00186254mov [r8], 10
    0018625bmov rsi, [r15+8]
    0018625fmov rdi, rbx
    00186262call regex_syntax::ast::parse::ParserI<P>::error
    00186267jmp 0x186830
    0018626c
    0018626cloc_18626c:
    0018626cmov ebp, eax
    0018626emov [rsp+64], r13
    00186273mov rdi, r15
    00186276call regex_syntax::ast::parse::ParserI<P>::bump_and_bump_space
    0018627bmovaps x0, [rsp+256]
    00186283movaps [rsp+32], x0
    00186288mov rax, [rsp+272]
    00186290mov [rsp+48], rax
    00186295xor eax, eax
    00186297jmp 0x18678e
    0018629c
    0018629cloc_18629c:
    0018629cmov rdi, r15
    0018629fcall regex_syntax::ast::parse::ParserI<P>::char
    001862a4mov [rsp+288], eax
    001862abcmp eax, 125
    001862aejne 0x1868a5
    001862b4mov rdi, r15
    001862b7call regex_syntax::ast::parse::ParserI<P>::bump
    001862bcmov rsi, [r12]
    001862c0mov rdx, [r12+16]
    001862c5lea rcx, [rip-0x12e747]
    001862cclea r15, [rsp+128]
    001862d4push 2
    001862d6pop r8
    001862d8mov rdi, r15
    001862dbmov [rsp+112], rsi
    001862e0mov [rsp+120], rdx
    001862e5call core::str::pattern::StrSearcher::new
    001862eacmp [r15], 0
    001862eeje 0x18646a
    001862f4mov r15, [rsp+184]
    001862fcmov r8, [rsp+200]
    00186304mov rsi, [rsp+208]
    0018630cmov r9, [rsp+216]
    00186314mov rax, [rsp+224]
    0018631clea rcx, [rax-1]
    00186320mov [rsp+16], rcx
    00186325mov rcx, [rsp+160]
    0018632dmov [rsp+8], rcx
    00186332mov r12, [rsp+168]
    0018633amov rcx, [rsp+136]
    00186342mov rdi, [rsp+152]
    0018634amov r10, rax
    0018634dmov [rsp+24], rdi
    00186352sub r10, rdi
    00186355mov [rsp+240], r10
    0018635dxor r10l, r10l
    00186360mov r13, r15
    00186363mov [rsp], rcx
    00186367
    00186367loc_186367:
    00186367cmp rcx, r13
    0018636amov r11, r13
    0018636dcmova r11, rcx
    00186371cmp r15, -1
    00186375cmove r11, rcx
    00186379mov [rsp+248], r13
    00186381cmove r13, r10
    00186385
    00186385loc_186385:
    00186385mov rcx, [rsp+16]
    0018638aadd rcx, r12
    0018638dcmp rcx, rsi
    00186390jae 0x1865cf
    00186396movzx ecx, [r8+rcx]
    0018639bmov rdi, [rsp+8]
    001863a0bt rdi, rcx
    001863a4jae 0x186442
    001863aalea rcx, [r8+r12]
    001863aemov rbp, r11
    001863b1
    001863b1loc_1863b1:
    001863b1cmp rbp, rax
    001863b4jae 0x1863ec
    001863b6lea rdi, [r12+rbp]
    001863bacmp rdi, rsi
    001863bdjae 0x18684b
    001863c3mov r10b, [r9+rbp]
    001863c7lea rdx, [rbp+1]
    001863cbcmp r10b, [rcx+rbp]
    001863cfmov rbp, rdx
    001863d2je 0x1863b1
    001863d4sub rdi, [rsp]
    001863d8mov r12, rdi
    001863dbinc r12
    001863decmp r15, -1
    001863e2mov r10l, 0
    001863e8je 0x186385
    001863eajmp 0x18645e
    001863ec
    001863ecloc_1863ec:
    001863ecmov rdi, [rsp]
    001863f0
    001863f0loc_1863f0:
    001863f0cmp r13, rdi
    001863f3jae 0x186522
    001863f9dec rdi
    001863fccmp rdi, rax
    001863ffjae 0x186854
    00186405lea rcx, [rdi+r12]
    00186409cmp rcx, rsi
    0018640cjae 0x186860
    00186412mov bpl, [r9+rdi]
    00186416cmp bpl, [r8+rcx]
    0018641aje 0x1863f0
    0018641cadd r12, [rsp+24]
    00186421cmp r15, -1
    00186425mov r10l, 0
    0018642bje 0x186385
    00186431mov r13, [rsp+240]
    00186439mov rcx, [rsp]
    0018643djmp 0x186367
    00186442
    00186442loc_186442:
    00186442add r12, rax
    00186445cmp r15, -1
    00186449mov r13, [rsp+248]
    00186451cmovne r13, r10
    00186455mov rcx, [rsp]
    00186459jmp 0x186367
    0018645e
    0018645eloc_18645e:
    0018645exor r13l, r13l
    00186461mov rcx, [rsp]
    00186465jmp 0x186367
    0018646a
    0018646aloc_18646a:
    0018646amov r13b, [rsp+154]
    00186472mov r12, [rsp+136]
    0018647amov rax, [rsp+200]
    00186482mov [rsp+16], rax
    00186487mov r15, [rsp+208]
    0018648fmov bpl, [rsp+152]
    00186497
    00186497loc_186497:
    00186497test r13b, r13b
    0018649ajne 0x1865cf
    001864a0mov rdi, r12
    001864a3mov rsi, [rsp+16]
    001864a8mov rdx, r15
    001864abcall core::str::traits::_<impl core::slice::index::SliceIndex<str> for core::ops::range::RangeFrom<usize>>::get
    001864b0test rax, rax
    001864b3je 0x186889
    001864b9add rdx, rax
    001864bcmov [rsp+288], rax
    001864c4mov [rsp+296], rdx
    001864cclea rdi, [rsp+288]
    001864d4call core::str::validations::next_code_point
    001864d9test eax, eax
    001864dbmov eax, 0x110000
    001864e0cmove edx, eax
    001864e3test bpl, bpl
    001864e6jne 0x186522
    001864e8cmp edx, 0x110000
    001864eeje 0x1865cf
    001864f4push 1
    001864f6pop rax
    001864f7cmp edx, 128
    001864fdjb 0x186517
    001864ffpush 2
    00186501pop rax
    00186502cmp edx, 2048
    00186508jb 0x186517
    0018650acmp edx, 0x10000
    00186510push 4
    00186512pop rax
    00186513sbb rax, 0
    00186517
    00186517loc_186517:
    00186517add r12, rax
    0018651amov bpl, 1
    0018651djmp 0x186497
    00186522
    00186522loc_186522:
    00186522lea rcx, [rip+0x6c117]
    00186529mov r15, [rsp+112]
    0018652emov rdi, r15
    00186531mov r13, [rsp+120]
    00186536mov rsi, r13
    00186539mov rdx, r12
    0018653ccall core::str::traits::_<impl core::ops::index::Index<I> for str>::index
    00186541mov [rsp+8], rax
    00186546mov rbp, rdx
    00186549mov rdi, rdx
    0018654ccall alloc::raw_vec::RawVec<T,A>::allocate_in
    00186551mov [rsp+16], rax
    00186556mov [rsp], rdx
    0018655amov rdi, rax
    0018655dmov rsi, [rsp+8]
    00186562mov rdx, rbp
    00186565call [rip+0x8b5b5]
    0018656badd r12, 2
    0018656flea rcx, [rip+0x6c0e2]
    00186576mov rdi, r15
    00186579mov rsi, r13
    0018657cmov rdx, r12
    0018657fcall core::str::traits::_<impl core::ops::index::Index<I> for str>::index
    00186584mov [rsp+8], rax
    00186589mov r15, rdx
    0018658cmov rdi, rdx
    0018658fcall alloc::raw_vec::RawVec<T,A>::allocate_in
    00186594mov r12, rax
    00186597mov r13, rdx
    0018659amov rdi, rax
    0018659dmov rsi, [rsp+8]
    001865a2mov rdx, r15
    001865a5call [rip+0x8b575]
    001865abmov rdi, [rsp]
    001865afmovaps x0, [rsp+80]
    001865b4movaps [rsp+32], x0
    001865b9mov rax, [rsp+96]
    001865bemov [rsp+48], rax
    001865c3mov al, 2
    001865c5mov rsi, rbp
    001865c8mov cl, 2
    001865cajmp 0x18678e
    001865cf
    001865cfloc_1865cf:
    001865cfpush 58
    001865d1pop rdx
    001865d2mov r13, [rsp+112]
    001865d7mov rdi, r13
    001865damov rbp, [rsp+120]
    001865dfmov rsi, rbp
    001865e2call core::str::_<impl str>::find
    001865e7cmp rax, 1
    001865ebjne 0x186694
    001865f1mov r15, rdx
    001865f4lea rcx, [rip+0x6c075]
    001865fbmov rdi, r13
    001865femov rsi, rbp
    00186601call core::str::traits::_<impl core::ops::index::Index<I> for str>::index
    00186606mov [rsp+24], rax
    0018660bmov r12, rdx
    0018660emov rdi, rdx
    00186611mov [rsp+8], rdx
    00186616call alloc::raw_vec::RawVec<T,A>::allocate_in
    0018661bmov [rsp+16], rax
    00186620mov [rsp], rdx
    00186624mov rdi, rax
    00186627mov rsi, [rsp+24]
    0018662cmov rdx, r12
    0018662fcall [rip+0x8b4eb]
    00186635inc r15
    00186638lea rcx, [rip+0x6c049]
    0018663fmov rdi, r13
    00186642mov rsi, rbp
    00186645mov rdx, r15
    00186648call core::str::traits::_<impl core::ops::index::Index<I> for str>::index
    0018664dmov r15, rax
    00186650mov rbp, rdx
    00186653mov rdi, rdx
    00186656call alloc::raw_vec::RawVec<T,A>::allocate_in
    0018665bmov r12, rax
    0018665emov r13, rdx
    00186661mov rdi, rax
    00186664mov rsi, r15
    00186667mov rdx, rbp
    0018666acall [rip+0x8b4b0]
    00186670mov r15, rbp
    00186673mov rdi, [rsp]
    00186677movaps x0, [rsp+80]
    0018667cmovaps [rsp+32], x0
    00186681mov rax, [rsp+96]
    00186686mov [rsp+48], rax
    0018668bmov cl, 1
    0018668dmov al, 2
    0018668fjmp 0x18674a
    00186694
    00186694loc_186694:
    00186694push 61
    00186696pop rdx
    00186697mov rdi, r13
    0018669amov rsi, rbp
    0018669dcall core::str::_<impl str>::find
    001866a2cmp rax, 1
    001866a6jne 0x186751
    001866acmov r15, rdx
    001866aflea rcx, [rip+0x6bfea]
    001866b6mov rdi, r13
    001866b9mov rsi, rbp
    001866bccall core::str::traits::_<impl core::ops::index::Index<I> for str>::index
    001866c1mov [rsp+24], rax
    001866c6mov r12, rdx
    001866c9mov rdi, rdx
    001866ccmov [rsp+8], rdx
    001866d1call alloc::raw_vec::RawVec<T,A>::allocate_in
    001866d6mov [rsp+16], rax
    001866dbmov [rsp], rdx
    001866dfmov rdi, rax
    001866e2mov rsi, [rsp+24]
    001866e7mov rdx, r12
    001866eacall [rip+0x8b430]
    001866f0inc r15
    001866f3lea rcx, [rip+0x6bfbe]
    001866famov rdi, r13
    001866fdmov rsi, rbp
    00186700mov rdx, r15
    00186703call core::str::traits::_<impl core::ops::index::Index<I> for str>::index
    00186708mov r15, rax
    0018670bmov rbp, rdx
    0018670emov rdi, rdx
    00186711call alloc::raw_vec::RawVec<T,A>::allocate_in
    00186716mov r12, rax
    00186719mov r13, rdx
    0018671cmov rdi, rax
    0018671fmov rsi, r15
    00186722mov rdx, rbp
    00186725call [rip+0x8b3f5]
    0018672bmov r15, rbp
    0018672emov rdi, [rsp]
    00186732movaps x0, [rsp+80]
    00186737movaps [rsp+32], x0
    0018673cmov rax, [rsp+96]
    00186741mov [rsp+48], rax
    00186746mov al, 2
    00186748xor ecx, ecx
    0018674a
    0018674aloc_18674a:
    0018674amov rsi, [rsp+8]
    0018674fjmp 0x18678e
    00186751
    00186751loc_186751:
    00186751mov rdi, rbp
    00186754call alloc::raw_vec::RawVec<T,A>::allocate_in
    00186759mov r12, rdx
    0018675cmov [rsp+16], rax
    00186761mov rdi, rax
    00186764mov rsi, r13
    00186767mov rdx, rbp
    0018676acall [rip+0x8b3b0]
    00186770mov rdi, r12
    00186773movaps x0, [rsp+80]
    00186778movaps [rsp+32], x0
    0018677dmov rax, [rsp+96]
    00186782mov [rsp+48], rax
    00186787mov al, 1
    00186789xor ecx, ecx
    0018678bmov rsi, rbp
    0018678e
    0018678eloc_18678e:
    0018678ecmp [rsp+76], 80
    00186793mov rdx, [rsp+48]
    00186798mov [rsp+144], rdx
    001867a0movaps x0, [rsp+32]
    001867a5movaps [rsp+128], x0
    001867admov rdx, [r14+176]
    001867b4mov [rsp+168], rdx
    001867bcmovups x1, [r14+160]
    001867c4movups [rsp+152], x1
    001867ccmovups [rbx+64], x0
    001867d0mov rdx, [rsp+160]
    001867d8mov [rbx+96], rdx
    001867dcmov rdx, [rsp+168]
    001867e4mov [rbx+104], rdx
    001867e8mov rdx, [rsp+144]
    001867f0mov [rbx+80], rdx
    001867f4mov rdx, [rsp+152]
    001867fcmov [rbx+88], rdx
    00186800mov [rbx+8], al
    00186803mov [rbx+9], cl
    00186806mov [rbx+12], ebp
    00186809mov rax, [rsp+16]
    0018680emov [rbx+16], rax
    00186812mov [rbx+24], rdi
    00186816mov [rbx+32], rsi
    0018681amov [rbx+40], r12
    0018681emov [rbx+48], r13
    00186822mov [rbx+56], r15
    00186826sete [rbx+112]
    0018682amov [rbx], 34
    00186830
    00186830loc_186830:
    00186830mov r13, [rsp+64]
    00186835
    00186835loc_186835:
    00186835inc [r13]
    00186839add rsp, 344
    00186840pop rbx
    00186841pop r12
    00186843pop r13
    00186845pop r14
    00186847pop r15
    00186849pop rbp
    0018684aret
    0018684b
    0018684bloc_18684b:
    0018684blea rdx, [rip+0x8954e]
    00186852jmp 0x18686a
    00186854
    00186854loc_186854:
    00186854lea rdx, [rip+0x89515]
    0018685bmov rsi, rax
    0018685ejmp 0x18686a
    00186860
    00186860loc_186860:
    00186860lea rdx, [rip+0x89521]
    00186867mov rdi, rcx
    0018686a
    0018686aloc_18686a:
    0018686acall core::panicking::panic_bounds_check
    0018686fud2
    00186871
    00186871loc_186871:
    00186871lea rdi, [rip-0x12ecf1]
    00186878lea rdx, [rip+0x6be51]
    0018687fpush 62
    00186881pop rsi
    00186882call core::panicking::panic
    00186887ud2
    00186889
    00186889loc_186889:
    00186889lea r8, [rip+0x899e8]
    00186890mov rdi, [rsp+16]
    00186895mov rsi, r15
    00186898mov rdx, r12
    0018689bmov rcx, r15
    0018689ecall core::str::slice_error_fail
    001868a3ud2
    001868a5
    001868a5loc_1868a5:
    001868a5lea rdx, [rsp+128]
    001868adand [rdx], 0
    001868b1lea rsi, [rip-0x14c8ac]
    001868b8lea rcx, [rip+0x6bd69]
    001868bflea rdi, [rsp+288]
    001868c7call core::panicking::assert_failed
    001868ccud2
    00186077
    001868ce
    001868ceregex_syntax::ast::parse::ParserI<P>::parse_perl_class:
    001868cepush rbp
    001868cfpush r14
    001868d1push rbx
    001868d2sub rsp, 128
    001868d9mov r14, rsi
    001868dcmov rbx, rdi
    001868dfmov rdi, rsi
    001868e2call regex_syntax::ast::parse::ParserI<P>::char
    001868e7mov ebp, eax
    001868e9lea rdi, [rsp+16]
    001868eemov rsi, r14
    001868f1call regex_syntax::ast::parse::ParserI<P>::span_char
    001868f6mov rdi, r14
    001868f9call regex_syntax::ast::parse::ParserI<P>::bump
    001868fecmp ebp, 68
    00186901je 0x186936
    00186903cmp ebp, 83
    00186906je 0x186920
    00186908cmp ebp, 87
    0018690bje 0x186926
    0018690dcmp ebp, 100
    00186910je 0x18692c
    00186912cmp ebp, 115
    00186915je 0x186930
    00186917cmp ebp, 119
    0018691ajne 0x186966
    0018691cmov al, 2
    0018691ejmp 0x186932
    00186920
    00186920loc_186920:
    00186920mov al, 1
    00186922mov cl, 1
    00186924jmp 0x18693a
    00186926
    00186926loc_186926:
    00186926mov cl, 1
    00186928mov al, 2
    0018692ajmp 0x18693a
    0018692c
    0018692cloc_18692c:
    0018692cxor eax, eax
    0018692ejmp 0x186932
    00186930
    00186930loc_186930:
    00186930mov al, 1
    00186932
    00186932loc_186932:
    00186932xor ecx, ecx
    00186934jmp 0x18693a
    00186936
    00186936loc_186936:
    00186936mov cl, 1
    00186938xor eax, eax
    0018693a
    0018693aloc_18693a:
    0018693amovups x0, [rsp+16]
    0018693fmovups x1, [rsp+32]
    00186944movups x2, [rsp+48]
    00186949movups [rbx+32], x2
    0018694dmovups [rbx+16], x1
    00186951movups [rbx], x0
    00186954mov [rbx+48], al
    00186957mov [rbx+49], cl
    0018695aadd rsp, 128
    00186961pop rbx
    00186962pop r14
    00186964pop rbp
    00186965ret
    00186966
    00186966loc_186966:
    00186966lea rax, [rsp+12]
    0018696bmov [rax], ebp
    0018696dlea rcx, [rsp+64]
    00186972mov [rcx], rax
    00186975lea rax, [rip+0x6bd6c]
    0018697clea rdi, [rsp+80]
    00186981mov [rdi], rax
    00186984mov [rdi+8], 2
    0018698cand [rdi+32], 0
    00186991lea rax, [rip-0x7b3d8]
    00186998mov [rcx+8], rax
    0018699cmov [rdi+16], rcx
    001869a0mov [rdi+24], 1
    001869a8lea rsi, [rip+0x6bd59]
    001869afcall core::panicking::panic_fmt
    001869b4ud2
    001868ce