| std::piecewise_construct: |
| .zero 1 |
| __gnu_cxx::__ops::__iter_less_iter(): |
| push rbp |
| mov rbp, rsp |
| pop rbp |
| ret |
| __gnu_cxx::__ops::_Iter_less_val::_Iter_less_val(__gnu_cxx::__ops::_Iter_less_iter): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::__ops::__iter_less_val(): |
| push rbp |
| mov rbp, rsp |
| pop rbp |
| ret |
| __gnu_cxx::__ops::__val_comp_iter(__gnu_cxx::__ops::_Iter_less_iter): |
| push rbp |
| mov rbp, rsp |
| pop rbp |
| ret |
| __gnu_cxx::__ops::__iter_equal_to_iter(): |
| push rbp |
| mov rbp, rsp |
| pop rbp |
| ret |
| std::__lg(long): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| bsr rax, rax |
| xor rax, 63 |
| cdqe |
| mov edx, 63 |
| sub rdx, rax |
| mov rax, rdx |
| pop rbp |
| ret |
| std::type_info::operator==(std::type_info const&) const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rax+8] |
| cmp rdx, rax |
| je .L13 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+8] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 42 |
| je .L14 |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+8] |
| mov rsi, rdx |
| mov rdi, rax |
| call strcmp |
| test eax, eax |
| jne .L14 |
| .L13: |
| mov eax, 1 |
| jmp .L15 |
| .L14: |
| mov eax, 0 |
| .L15: |
| leave |
| ret |
| operator new(unsigned long, void*): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| pop rbp |
| ret |
| operator delete(void*, void*): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| nop |
| pop rbp |
| ret |
| std::char_traits<char>::assign(char&, char const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| movzx edx, BYTE PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax], dl |
| nop |
| pop rbp |
| ret |
| std::char_traits<char>::compare(char const*, char const*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov eax, 0 |
| test al, al |
| je .L22 |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call __gnu_cxx::char_traits<char>::compare(char const*, char const*, unsigned long) |
| jmp .L23 |
| .L22: |
| cmp QWORD PTR [rbp-24], 0 |
| jne .L24 |
| mov eax, 0 |
| jmp .L23 |
| .L24: |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call memcmp |
| nop |
| .L23: |
| leave |
| ret |
| std::char_traits<char>::length(char const*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rbp-8], rax |
| mov eax, 0 |
| test al, al |
| je .L27 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call __gnu_cxx::char_traits<char>::length(char const*) |
| jmp .L28 |
| .L27: |
| mov rax, QWORD PTR [rbp-24] |
| mov rcx, -1 |
| mov rdx, rax |
| mov eax, 0 |
| mov rdi, rdx |
| repnz scasb |
| mov rax, rcx |
| not rax |
| sub rax, 1 |
| nop |
| .L28: |
| leave |
| ret |
| std::char_traits<char>::move(char*, char const*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| cmp QWORD PTR [rbp-24], 0 |
| jne .L30 |
| mov rax, QWORD PTR [rbp-8] |
| jmp .L31 |
| .L30: |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call memmove |
| nop |
| .L31: |
| leave |
| ret |
| std::char_traits<char>::copy(char*, char const*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| cmp QWORD PTR [rbp-24], 0 |
| jne .L33 |
| mov rax, QWORD PTR [rbp-8] |
| jmp .L34 |
| .L33: |
| mov rdx, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rbp-16] |
| mov rcx, rdx |
| mov rsi, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, rax |
| mov rdi, rcx |
| call memcpy |
| nop |
| .L34: |
| leave |
| ret |
| std::char_traits<char>::assign(char*, unsigned long, char): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov eax, edx |
| mov BYTE PTR [rbp-20], al |
| cmp QWORD PTR [rbp-16], 0 |
| jne .L36 |
| mov rax, QWORD PTR [rbp-8] |
| jmp .L37 |
| .L36: |
| movsx ecx, BYTE PTR [rbp-20] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call memset |
| nop |
| .L37: |
| leave |
| ret |
| __gthread_active_p()::__gthread_active_ptr: |
| .quad __gthrw___pthread_key_create(unsigned int*, void (*)(void*)) |
| __gthread_active_p(): |
| push rbp |
| mov rbp, rsp |
| mov rax, QWORD PTR __gthread_active_p()::__gthread_active_ptr[rip] |
| test rax, rax |
| setne al |
| movzx eax, al |
| pop rbp |
| ret |
| __gnu_cxx::__exchange_and_add(int volatile*, int): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov DWORD PTR [rbp-12], esi |
| mov edx, DWORD PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| lock xadd DWORD PTR [rax], edx |
| mov eax, edx |
| pop rbp |
| ret |
| __gnu_cxx::__exchange_and_add_single(int*, int): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-24], rdi |
| mov DWORD PTR [rbp-28], esi |
| mov rax, QWORD PTR [rbp-24] |
| mov eax, DWORD PTR [rax] |
| mov DWORD PTR [rbp-4], eax |
| mov rax, QWORD PTR [rbp-24] |
| mov edx, DWORD PTR [rax] |
| mov eax, DWORD PTR [rbp-28] |
| add edx, eax |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax], edx |
| mov eax, DWORD PTR [rbp-4] |
| pop rbp |
| ret |
| __gnu_cxx::__exchange_and_add_dispatch(int*, int): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov DWORD PTR [rbp-12], esi |
| call __gthread_active_p() |
| test eax, eax |
| setne al |
| test al, al |
| je .L45 |
| mov edx, DWORD PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, edx |
| mov rdi, rax |
| call __gnu_cxx::__exchange_and_add(int volatile*, int) |
| jmp .L46 |
| .L45: |
| mov edx, DWORD PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, edx |
| mov rdi, rax |
| call __gnu_cxx::__exchange_and_add_single(int*, int) |
| nop |
| .L46: |
| leave |
| ret |
| std::operator&(std::_Ios_Fmtflags, std::_Ios_Fmtflags): |
| push rbp |
| mov rbp, rsp |
| mov DWORD PTR [rbp-4], edi |
| mov DWORD PTR [rbp-8], esi |
| mov eax, DWORD PTR [rbp-4] |
| and eax, DWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::operator|(std::_Ios_Fmtflags, std::_Ios_Fmtflags): |
| push rbp |
| mov rbp, rsp |
| mov DWORD PTR [rbp-4], edi |
| mov DWORD PTR [rbp-8], esi |
| mov eax, DWORD PTR [rbp-4] |
| or eax, DWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::operator~(std::_Ios_Fmtflags): |
| push rbp |
| mov rbp, rsp |
| mov DWORD PTR [rbp-4], edi |
| mov eax, DWORD PTR [rbp-4] |
| not eax |
| pop rbp |
| ret |
| std::operator|=(std::_Ios_Fmtflags&, std::_Ios_Fmtflags): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov DWORD PTR [rbp-12], esi |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax] |
| mov edx, DWORD PTR [rbp-12] |
| mov esi, edx |
| mov edi, eax |
| call std::operator|(std::_Ios_Fmtflags, std::_Ios_Fmtflags) |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax], edx |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::operator&=(std::_Ios_Fmtflags&, std::_Ios_Fmtflags): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov DWORD PTR [rbp-12], esi |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax] |
| mov edx, DWORD PTR [rbp-12] |
| mov esi, edx |
| mov edi, eax |
| call std::operator&(std::_Ios_Fmtflags, std::_Ios_Fmtflags) |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax], edx |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::ios_base::setf(std::_Ios_Fmtflags, std::_Ios_Fmtflags): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov DWORD PTR [rbp-28], esi |
| mov DWORD PTR [rbp-32], edx |
| mov rax, QWORD PTR [rbp-24] |
| mov eax, DWORD PTR [rax+24] |
| mov DWORD PTR [rbp-4], eax |
| mov eax, DWORD PTR [rbp-32] |
| mov edi, eax |
| call std::operator~(std::_Ios_Fmtflags) |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-24] |
| add rax, 24 |
| mov esi, edx |
| mov rdi, rax |
| call std::operator&=(std::_Ios_Fmtflags&, std::_Ios_Fmtflags) |
| mov edx, DWORD PTR [rbp-32] |
| mov eax, DWORD PTR [rbp-28] |
| mov esi, edx |
| mov edi, eax |
| call std::operator&(std::_Ios_Fmtflags, std::_Ios_Fmtflags) |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-24] |
| add rax, 24 |
| mov esi, edx |
| mov rdi, rax |
| call std::operator|=(std::_Ios_Fmtflags&, std::_Ios_Fmtflags) |
| mov eax, DWORD PTR [rbp-4] |
| leave |
| ret |
| std::hex(std::ios_base&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov edx, 74 |
| mov esi, 8 |
| mov rdi, rax |
| call std::ios_base::setf(std::_Ios_Fmtflags, std::_Ios_Fmtflags) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::oct(std::ios_base&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov edx, 74 |
| mov esi, 64 |
| mov rdi, rax |
| call std::ios_base::setf(std::_Ios_Fmtflags, std::_Ios_Fmtflags) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::ctype<char>::toupper(char) const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-12], al |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| add rax, 16 |
| mov rax, QWORD PTR [rax] |
| movsx ecx, BYTE PTR [rbp-12] |
| mov rdx, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rdx |
| call rax |
| leave |
| ret |
| std::ctype<char>::tolower(char) const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-12], al |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| add rax, 32 |
| mov rax, QWORD PTR [rax] |
| movsx ecx, BYTE PTR [rbp-12] |
| mov rdx, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rdx |
| call rax |
| leave |
| ret |
| std::ctype<char>::tolower(char*, char const*) const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| add rax, 40 |
| mov rax, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rsi, QWORD PTR [rbp-16] |
| mov rcx, QWORD PTR [rbp-8] |
| mov rdi, rcx |
| call rax |
| leave |
| ret |
| std::ctype<char>::widen(char) const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-12], al |
| mov rax, QWORD PTR [rbp-8] |
| movzx eax, BYTE PTR [rax+56] |
| test al, al |
| je .L70 |
| movzx eax, BYTE PTR [rbp-12] |
| movzx eax, al |
| mov rdx, QWORD PTR [rbp-8] |
| cdqe |
| movzx eax, BYTE PTR [rdx+57+rax] |
| jmp .L71 |
| .L70: |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::ctype<char>::_M_widen_init() const |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| add rax, 48 |
| mov rax, QWORD PTR [rax] |
| movsx ecx, BYTE PTR [rbp-12] |
| mov rdx, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rdx |
| call rax |
| nop |
| .L71: |
| leave |
| ret |
| std::ctype<char>::narrow(char, char) const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-28], al |
| mov eax, edx |
| mov BYTE PTR [rbp-32], al |
| movzx eax, BYTE PTR [rbp-28] |
| movzx eax, al |
| mov rdx, QWORD PTR [rbp-24] |
| cdqe |
| movzx eax, BYTE PTR [rdx+313+rax] |
| test al, al |
| je .L73 |
| movzx eax, BYTE PTR [rbp-28] |
| movzx eax, al |
| mov rdx, QWORD PTR [rbp-24] |
| cdqe |
| movzx eax, BYTE PTR [rdx+313+rax] |
| jmp .L74 |
| .L73: |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax] |
| add rax, 64 |
| mov rax, QWORD PTR [rax] |
| movsx edx, BYTE PTR [rbp-32] |
| movsx esi, BYTE PTR [rbp-28] |
| mov rcx, QWORD PTR [rbp-24] |
| mov rdi, rcx |
| call rax |
| mov BYTE PTR [rbp-1], al |
| movzx eax, BYTE PTR [rbp-1] |
| cmp al, BYTE PTR [rbp-32] |
| je .L75 |
| movzx eax, BYTE PTR [rbp-28] |
| movzx eax, al |
| mov rdx, QWORD PTR [rbp-24] |
| cdqe |
| movzx ecx, BYTE PTR [rbp-1] |
| mov BYTE PTR [rdx+313+rax], cl |
| .L75: |
| movzx eax, BYTE PTR [rbp-1] |
| .L74: |
| leave |
| ret |
| std::ctype<char>::is(unsigned short, char) const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov eax, esi |
| mov WORD PTR [rbp-12], ax |
| mov eax, edx |
| mov BYTE PTR [rbp-16], al |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+48] |
| movzx edx, BYTE PTR [rbp-16] |
| movzx edx, dl |
| add rdx, rdx |
| add rax, rdx |
| movzx eax, WORD PTR [rax] |
| and ax, WORD PTR [rbp-12] |
| test ax, ax |
| setne al |
| pop rbp |
| ret |
| std::_Rb_tree_header::_Rb_tree_header() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Rb_tree_header::_M_reset() |
| nop |
| leave |
| ret |
| std::_Rb_tree_header::_M_reset(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], 0 |
| mov rdx, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+16], rdx |
| mov rdx, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+32], 0 |
| nop |
| pop rbp |
| ret |
| std::_Sp_make_shared_tag::_S_ti()::__tag: |
| .zero 16 |
| std::_Sp_make_shared_tag::_S_ti(): |
| push rbp |
| mov rbp, rsp |
| mov eax, OFFSET FLAT:std::_Sp_make_shared_tag::_S_ti()::__tag |
| pop rbp |
| ret |
| std::__deque_buf_size(unsigned long): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| cmp QWORD PTR [rbp-8], 511 |
| ja .L83 |
| mov eax, 512 |
| mov edx, 0 |
| div QWORD PTR [rbp-8] |
| jmp .L85 |
| .L83: |
| mov eax, 1 |
| .L85: |
| pop rbp |
| ret |
| std::_Any_data::_M_access(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::_Any_data::_M_access() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::_Function_base::_Function_base() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+16], 0 |
| nop |
| pop rbp |
| ret |
| std::_Function_base::~_Function_base() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+16] |
| test rax, rax |
| je .L93 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+16] |
| mov rsi, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rbp-8] |
| mov edx, 3 |
| mov rdi, rcx |
| call rax |
| .L93: |
| nop |
| leave |
| ret |
| std::_Function_base::_M_empty() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+16] |
| test rax, rax |
| sete al |
| pop rbp |
| ret |
| std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type): |
| push rbp |
| mov rbp, rsp |
| mov DWORD PTR [rbp-4], edi |
| mov DWORD PTR [rbp-8], esi |
| mov eax, DWORD PTR [rbp-4] |
| and eax, DWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::regex_constants::operator|(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type): |
| push rbp |
| mov rbp, rsp |
| mov DWORD PTR [rbp-4], edi |
| mov DWORD PTR [rbp-8], esi |
| mov eax, DWORD PTR [rbp-4] |
| or eax, DWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type): |
| push rbp |
| mov rbp, rsp |
| mov DWORD PTR [rbp-4], edi |
| mov DWORD PTR [rbp-8], esi |
| mov eax, DWORD PTR [rbp-4] |
| and eax, DWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::regex_constants::operator|(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type): |
| push rbp |
| mov rbp, rsp |
| mov DWORD PTR [rbp-4], edi |
| mov DWORD PTR [rbp-8], esi |
| mov eax, DWORD PTR [rbp-4] |
| or eax, DWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::regex_constants::operator~(std::regex_constants::match_flag_type): |
| push rbp |
| mov rbp, rsp |
| mov DWORD PTR [rbp-4], edi |
| mov eax, DWORD PTR [rbp-4] |
| not eax |
| pop rbp |
| ret |
| std::regex_error::regex_error(std::regex_constants::error_type, char const*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov DWORD PTR [rbp-12], esi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::runtime_error::runtime_error(char const*) |
| mov edx, OFFSET FLAT:_ZTVSt11regex_error+16 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov edx, DWORD PTR [rbp-12] |
| mov DWORD PTR [rax+16], edx |
| nop |
| leave |
| ret |
| std::__throw_regex_error(std::regex_constants::error_type, char const*): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 16 |
| mov DWORD PTR [rbp-20], edi |
| mov QWORD PTR [rbp-32], rsi |
| mov edi, 24 |
| call __cxa_allocate_exception |
| mov rbx, rax |
| mov rdx, QWORD PTR [rbp-32] |
| mov eax, DWORD PTR [rbp-20] |
| mov esi, eax |
| mov rdi, rbx |
| call std::regex_error::regex_error(std::regex_constants::error_type, char const*) |
| mov edx, OFFSET FLAT:_ZNSt11regex_errorD1Ev |
| mov esi, OFFSET FLAT:_ZTISt11regex_error |
| mov rdi, rbx |
| call __cxa_throw |
| mov r12, rax |
| mov rdi, rbx |
| call __cxa_free_exception |
| mov rax, r12 |
| mov rdi, rax |
| call _Unwind_Resume |
| std::__detail::_State_base::_State_base(std::__detail::_Opcode): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov DWORD PTR [rbp-12], esi |
| mov rax, QWORD PTR [rbp-8] |
| mov edx, DWORD PTR [rbp-12] |
| mov DWORD PTR [rax], edx |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], -1 |
| nop |
| pop rbp |
| ret |
| std::__detail::_State_base::_M_has_alt(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax] |
| cmp eax, 1 |
| je .L112 |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax] |
| cmp eax, 2 |
| je .L112 |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax] |
| cmp eax, 7 |
| jne .L113 |
| .L112: |
| mov eax, 1 |
| jmp .L114 |
| .L113: |
| mov eax, 0 |
| .L114: |
| pop rbp |
| ret |
| std::__detail::_NFA_base::_NFA_base(std::regex_constants::syntax_option_type): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov DWORD PTR [rbp-12], esi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::vector() [complete object constructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov edx, DWORD PTR [rbp-12] |
| mov DWORD PTR [rax+24], edx |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+32], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+40], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+48], 0 |
| nop |
| leave |
| ret |
| std::__detail::_NFA_base::_M_start() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+32] |
| pop rbp |
| ret |
| std::__detail::_NFA_base::_M_sub_count() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+40] |
| pop rbp |
| ret |
| std::integral_constant<bool, true>::operator bool() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov eax, 1 |
| pop rbp |
| ret |
| char&& std::forward<char>(std::remove_reference<char>::type&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::pair<char, char>::pair<char, char, true>(char&&, char&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call char&& std::forward<char>(std::remove_reference<char>::type&) |
| movzx edx, BYTE PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax], dl |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call char&& std::forward<char>(std::remove_reference<char>::type&) |
| movzx edx, BYTE PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+1], dl |
| nop |
| leave |
| ret |
| .LC0: |
| .string "^$\\.*+?()[]{}|" |
| .LC1: |
| .string ".[\\*^$" |
| .LC2: |
| .string ".[\\()*+?{|^$" |
| .LC3: |
| .string ".[\\()*+?{|^$\n" |
| .LC4: |
| .string ".[\\*^$\n" |
| std::__detail::_ScannerBase::_ScannerBase(std::regex_constants::syntax_option_type): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov DWORD PTR [rbp-12], esi |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], 0 |
| mov QWORD PTR [rax+8], 0 |
| mov QWORD PTR [rax+16], 0 |
| mov QWORD PTR [rax+24], 0 |
| mov QWORD PTR [rax+32], 0 |
| mov QWORD PTR [rax+40], 0 |
| mov QWORD PTR [rax+48], 0 |
| mov QWORD PTR [rax+56], 0 |
| mov QWORD PTR [rax+64], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax], 94 |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax+4], 22 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+8], 36 |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax+12], 23 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+16], 46 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+24], 42 |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax+28], 20 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+32], 43 |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax+36], 21 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+40], 63 |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax+44], 18 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+48], 124 |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax+52], 19 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+56], 10 |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax+60], 19 |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax+68], 19 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+72], 0 |
| mov QWORD PTR [rax+80], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+72], 48 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+74], 98 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+75], 8 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+76], 102 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+77], 12 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+78], 110 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+79], 10 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+80], 114 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+81], 13 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+82], 116 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+83], 9 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+84], 118 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+85], 11 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+88], 0 |
| mov QWORD PTR [rax+96], 0 |
| mov DWORD PTR [rax+104], 0 |
| mov WORD PTR [rax+108], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+88], 34 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+89], 34 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+90], 47 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+91], 47 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+92], 92 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+93], 92 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+94], 97 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+95], 7 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+96], 98 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+97], 8 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+98], 102 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+99], 12 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+100], 110 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+101], 10 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+102], 114 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+103], 13 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+104], 116 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+105], 9 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+106], 118 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+107], 11 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+112], OFFSET FLAT:.LC0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+120], OFFSET FLAT:.LC1 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+128], OFFSET FLAT:.LC2 |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax+136], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov edx, DWORD PTR [rbp-12] |
| mov DWORD PTR [rax+140], edx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__detail::_ScannerBase::_M_is_ecma() const |
| test al, al |
| je .L127 |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 72 |
| jmp .L128 |
| .L127: |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 88 |
| .L128: |
| mov rdx, QWORD PTR [rbp-8] |
| mov QWORD PTR [rdx+152], rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__detail::_ScannerBase::_M_is_ecma() const |
| test al, al |
| je .L129 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+112] |
| jmp .L130 |
| .L129: |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+140] |
| mov esi, 32 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| je .L131 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+120] |
| jmp .L130 |
| .L131: |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+140] |
| mov esi, 64 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| je .L133 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+128] |
| jmp .L130 |
| .L133: |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+140] |
| mov esi, 256 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| jne .L135 |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+140] |
| mov esi, 512 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| jne .L136 |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+140] |
| mov esi, 128 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| je .L137 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+128] |
| jmp .L130 |
| .L137: |
| mov eax, 0 |
| jmp .L130 |
| .L136: |
| mov eax, OFFSET FLAT:.LC3 |
| jmp .L130 |
| .L135: |
| mov eax, OFFSET FLAT:.LC4 |
| .L130: |
| mov rdx, QWORD PTR [rbp-8] |
| mov QWORD PTR [rdx+160], rax |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+168], 0 |
| nop |
| leave |
| ret |
| std::__detail::_ScannerBase::_M_find_escape(char): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+152] |
| mov QWORD PTR [rbp-8], rax |
| .L145: |
| mov rax, QWORD PTR [rbp-8] |
| movzx eax, BYTE PTR [rax] |
| test al, al |
| je .L142 |
| mov rax, QWORD PTR [rbp-8] |
| movzx eax, BYTE PTR [rax] |
| cmp BYTE PTR [rbp-28], al |
| jne .L143 |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 1 |
| jmp .L144 |
| .L143: |
| add QWORD PTR [rbp-8], 2 |
| jmp .L145 |
| .L142: |
| mov eax, 0 |
| .L144: |
| pop rbp |
| ret |
| std::__detail::_ScannerBase::_M_is_ecma() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+140] |
| mov esi, 16 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| setne al |
| leave |
| ret |
| std::__detail::_ScannerBase::_M_is_basic() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov esi, 256 |
| mov edi, 32 |
| call std::regex_constants::operator|(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+140] |
| mov esi, edx |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| setne al |
| leave |
| ret |
| std::__detail::_ScannerBase::_M_is_awk() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+140] |
| mov esi, 128 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| setne al |
| leave |
| ret |
| unsigned long const& std::min<unsigned long>(unsigned long const&, unsigned long const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| cmp rdx, rax |
| jnb .L153 |
| mov rax, QWORD PTR [rbp-16] |
| jmp .L154 |
| .L153: |
| mov rax, QWORD PTR [rbp-8] |
| .L154: |
| pop rbp |
| ret |
| __gnu_cxx::__alloc_traits<std::allocator<char>, char>::_S_propagate_on_move_assign(): |
| push rbp |
| mov rbp, rsp |
| mov eax, 1 |
| pop rbp |
| ret |
| __gnu_cxx::__alloc_traits<std::allocator<char>, char>::_S_always_equal(): |
| push rbp |
| mov rbp, rsp |
| mov eax, 1 |
| pop rbp |
| ret |
| .LC5: |
| .string "[a-fA-F0-9]{4}" |
| .LC6: |
| .string "012z" |
| main: |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 56 |
| lea rax, [rbp-48] |
| mov edx, 16 |
| mov esi, OFFSET FLAT:.LC5 |
| mov rdi, rax |
| call std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> >::basic_regex(char const*, std::regex_constants::syntax_option_type) |
| lea rax, [rbp-48] |
| mov edx, 0 |
| mov rsi, rax |
| mov edi, OFFSET FLAT:.LC6 |
| call bool std::regex_match<char, std::__cxx11::regex_traits<char> >(char const*, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type) |
| movzx eax, al |
| mov esi, eax |
| mov edi, OFFSET FLAT:_ZSt4cout |
| call std::basic_ostream<char, std::char_traits<char> >::operator<<(bool) |
| mov esi, OFFSET FLAT:_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_ |
| mov rdi, rax |
| call std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&)) |
| mov BYTE PTR [rbp-51], 1 |
| mov BYTE PTR [rbp-50], 1 |
| mov BYTE PTR [rbp-49], 0 |
| lea rax, [rbp-51] |
| add rax, 3 |
| lea rcx, [rbp-51] |
| mov edx, 1 |
| mov rsi, rax |
| mov rdi, rcx |
| call int std::accumulate<bool*, int, std::bit_and<bool> >(bool*, bool*, int, std::bit_and<bool>) |
| mov esi, eax |
| mov edi, OFFSET FLAT:_ZSt4cout |
| call std::basic_ostream<char, std::char_traits<char> >::operator<<(int) |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> >::~basic_regex() [complete object destructor] |
| mov eax, 0 |
| jmp .L163 |
| mov rbx, rax |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> >::~basic_regex() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L163: |
| add rsp, 56 |
| pop rbx |
| pop rbp |
| ret |
| __gnu_cxx::char_traits<char>::lt(char const&, char const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| movzx edx, BYTE PTR [rax] |
| mov rax, QWORD PTR [rbp-16] |
| movzx eax, BYTE PTR [rax] |
| cmp dl, al |
| setl al |
| pop rbp |
| ret |
| __gnu_cxx::char_traits<char>::compare(char const*, char const*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov QWORD PTR [rbp-8], 0 |
| .L171: |
| mov rax, QWORD PTR [rbp-8] |
| cmp rax, QWORD PTR [rbp-40] |
| jnb .L167 |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-8] |
| add rdx, rax |
| mov rcx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, rcx |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::char_traits<char>::lt(char const&, char const&) |
| test al, al |
| je .L168 |
| mov eax, -1 |
| jmp .L169 |
| .L168: |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-8] |
| add rdx, rax |
| mov rcx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, rcx |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::char_traits<char>::lt(char const&, char const&) |
| test al, al |
| je .L170 |
| mov eax, 1 |
| jmp .L169 |
| .L170: |
| add QWORD PTR [rbp-8], 1 |
| jmp .L171 |
| .L167: |
| mov eax, 0 |
| .L169: |
| leave |
| ret |
| __gnu_cxx::char_traits<char>::length(char const*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-8], 0 |
| .L174: |
| mov BYTE PTR [rbp-9], 0 |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-8] |
| add rdx, rax |
| lea rax, [rbp-9] |
| mov rsi, rax |
| mov rdi, rdx |
| call __gnu_cxx::char_traits<char>::eq(char const&, char const&) |
| xor eax, 1 |
| test al, al |
| je .L173 |
| add QWORD PTR [rbp-8], 1 |
| jmp .L174 |
| .L173: |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| __gnu_cxx::char_traits<char>::eq(char const&, char const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| movzx edx, BYTE PTR [rax] |
| mov rax, QWORD PTR [rbp-16] |
| movzx eax, BYTE PTR [rax] |
| cmp dl, al |
| sete al |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider::~_Alloc_hider() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::allocator<char>::~allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_dispose() |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider::~_Alloc_hider() [complete object destructor] |
| nop |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::data() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::length() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+8] |
| pop rbp |
| ret |
| std::vector<unsigned long, std::allocator<unsigned long> >::vector() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_Vector_base() [base object constructor] |
| nop |
| leave |
| ret |
| std::vector<unsigned long, std::allocator<unsigned long> >::~vector() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<unsigned long*, unsigned long>(unsigned long*, unsigned long*, std::allocator<unsigned long>&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::~_Vector_base() [base object destructor] |
| nop |
| leave |
| ret |
| unsigned long const& std::max<unsigned long>(unsigned long const&, unsigned long const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rax] |
| cmp rdx, rax |
| jnb .L187 |
| mov rax, QWORD PTR [rbp-16] |
| jmp .L188 |
| .L187: |
| mov rax, QWORD PTR [rbp-8] |
| .L188: |
| pop rbp |
| ret |
| std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| test rax, rax |
| je .L191 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| mov rdi, rax |
| call std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() |
| .L191: |
| nop |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-40], rdi |
| mov rbx, QWORD PTR [rbp-40] |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<char>::allocator() [complete object constructor] |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_local_data() |
| mov rcx, rax |
| lea rax, [rbp-17] |
| mov rdx, rax |
| mov rsi, rcx |
| mov rdi, rbx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider::_Alloc_hider(char*, std::allocator<char>&&) |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<char>::~allocator() [complete object destructor] |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long) |
| nop |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 16 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rbx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() |
| mov rdi, rax |
| call std::remove_reference<std::allocator<char>&>::type&& std::move<std::allocator<char>&>(std::allocator<char>&) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_local_data() |
| mov rdx, r12 |
| mov rsi, rax |
| mov rdi, rbx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider::_Alloc_hider(char*, std::allocator<char>&&) |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_is_local() const |
| test al, al |
| je .L194 |
| mov rax, QWORD PTR [rbp-32] |
| lea rcx, [rax+16] |
| mov rax, QWORD PTR [rbp-24] |
| add rax, 16 |
| mov edx, 16 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::char_traits<char>::copy(char*, char const*, unsigned long) |
| jmp .L195 |
| .L194: |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*) |
| mov rax, QWORD PTR [rbp-32] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_capacity(unsigned long) |
| .L195: |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::length() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_length(unsigned long) |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_local_data() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*) |
| mov rax, QWORD PTR [rbp-32] |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long) |
| nop |
| add rsp, 16 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| __gnu_cxx::__alloc_traits<std::allocator<char>, char>::_S_propagate_on_copy_assign(): |
| push rbp |
| mov rbp, rsp |
| mov eax, 0 |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator=(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 56 |
| mov QWORD PTR [rbp-56], rdi |
| mov QWORD PTR [rbp-64], rsi |
| call __gnu_cxx::__alloc_traits<std::allocator<char>, char>::_S_propagate_on_copy_assign() |
| test al, al |
| je .L199 |
| call __gnu_cxx::__alloc_traits<std::allocator<char>, char>::_S_always_equal() |
| xor eax, 1 |
| test al, al |
| je .L200 |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_is_local() const |
| xor eax, 1 |
| test al, al |
| je .L200 |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() |
| mov rsi, rbx |
| mov rdi, rax |
| call bool std::operator!=<char>(std::allocator<char> const&, std::allocator<char> const&) |
| test al, al |
| je .L200 |
| mov eax, 1 |
| jmp .L201 |
| .L200: |
| mov eax, 0 |
| .L201: |
| test al, al |
| je .L202 |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| cmp rax, 15 |
| setbe al |
| test al, al |
| je .L203 |
| mov rax, QWORD PTR [rbp-56] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_destroy(unsigned long) |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_local_data() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*) |
| mov rax, QWORD PTR [rbp-56] |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long) |
| jmp .L202 |
| .L203: |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() const |
| mov rdx, rax |
| lea rax, [rbp-33] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator<char>::allocator(std::allocator<char> const&) |
| mov rax, QWORD PTR [rbp-24] |
| lea rdx, [rax+1] |
| lea rax, [rbp-33] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<char> >::allocate(std::allocator<char>&, unsigned long) |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_destroy(unsigned long) |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*) |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_capacity(unsigned long) |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long) |
| lea rax, [rbp-33] |
| mov rdi, rax |
| call std::allocator<char>::~allocator() [complete object destructor] |
| .L202: |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() |
| mov rsi, rbx |
| mov rdi, rax |
| call void std::__alloc_on_copy<std::allocator<char> >(std::allocator<char>&, std::allocator<char> const&) |
| .L199: |
| mov rdx, QWORD PTR [rbp-64] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) |
| jmp .L208 |
| mov rbx, rax |
| lea rax, [rbp-33] |
| mov rdi, rax |
| call std::allocator<char>::~allocator() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L208: |
| add rsp, 56 |
| pop rbx |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator+=(char): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-12], al |
| movsx edx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, edx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::push_back(char) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::clear(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long) |
| nop |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov rbx, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() const |
| mov rdx, rax |
| lea rax, [rbp-17] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__alloc_traits<std::allocator<char>, char>::_S_select_on_copy(std::allocator<char> const&) |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_local_data() |
| mov rcx, rax |
| lea rax, [rbp-17] |
| mov rdx, rax |
| mov rsi, rcx |
| mov rdi, rbx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider::_Alloc_hider(char*, std::allocator<char>&&) |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<char>::~allocator() [complete object destructor] |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::length() const |
| add rbx, rax |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rcx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*>(char*, char*) |
| jmp .L215 |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider::~_Alloc_hider() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L215: |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::empty() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| test rax, rax |
| sete al |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator=(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 32 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_is_local() const |
| xor eax, 1 |
| test al, al |
| je .L219 |
| call __gnu_cxx::__alloc_traits<std::allocator<char>, char>::_S_propagate_on_move_assign() |
| test al, al |
| je .L219 |
| call __gnu_cxx::__alloc_traits<std::allocator<char>, char>::_S_always_equal() |
| xor eax, 1 |
| test al, al |
| je .L219 |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() |
| mov rsi, rbx |
| mov rdi, rax |
| call bool std::operator!=<char>(std::allocator<char> const&, std::allocator<char> const&) |
| test al, al |
| je .L219 |
| mov eax, 1 |
| jmp .L220 |
| .L219: |
| mov eax, 0 |
| .L220: |
| test al, al |
| je .L221 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_destroy(unsigned long) |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_local_data() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*) |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long) |
| .L221: |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() |
| mov rsi, rbx |
| mov rdi, rax |
| call void std::__alloc_on_move<std::allocator<char> >(std::allocator<char>&, std::allocator<char>&) |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_is_local() const |
| test al, al |
| je .L222 |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| test rax, rax |
| setne al |
| test al, al |
| je .L223 |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rdx, r12 |
| mov rsi, rbx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_copy(char*, char const*, unsigned long) |
| .L223: |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long) |
| jmp .L224 |
| .L222: |
| call __gnu_cxx::__alloc_traits<std::allocator<char>, char>::_S_propagate_on_move_assign() |
| test al, al |
| jne .L225 |
| call __gnu_cxx::__alloc_traits<std::allocator<char>, char>::_S_always_equal() |
| test al, al |
| jne .L225 |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() |
| mov rsi, rbx |
| mov rdi, rax |
| call bool std::operator==<char>(std::allocator<char> const&, std::allocator<char> const&) |
| test al, al |
| je .L226 |
| .L225: |
| mov eax, 1 |
| jmp .L227 |
| .L226: |
| mov eax, 0 |
| .L227: |
| test al, al |
| je .L228 |
| mov QWORD PTR [rbp-24], 0 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_is_local() const |
| xor eax, 1 |
| test al, al |
| je .L229 |
| call __gnu_cxx::__alloc_traits<std::allocator<char>, char>::_S_always_equal() |
| test al, al |
| je .L230 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+16] |
| mov QWORD PTR [rbp-32], rax |
| jmp .L229 |
| .L230: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_destroy(unsigned long) |
| .L229: |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*) |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::length() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_length(unsigned long) |
| mov rax, QWORD PTR [rbp-48] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_capacity(unsigned long) |
| cmp QWORD PTR [rbp-24], 0 |
| je .L232 |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*) |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_capacity(unsigned long) |
| jmp .L224 |
| .L232: |
| mov rax, QWORD PTR [rbp-48] |
| lea rdx, [rax+16] |
| mov rax, QWORD PTR [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*) |
| jmp .L224 |
| .L228: |
| mov rdx, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) |
| .L224: |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::clear() |
| mov rax, QWORD PTR [rbp-40] |
| add rsp, 32 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> >::basic_regex(char const*, std::regex_constants::syntax_option_type): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov DWORD PTR [rbp-20], edx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call std::char_traits<char>::length(char const*) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-16] |
| lea rdi, [rdx+rax] |
| mov edx, DWORD PTR [rbp-20] |
| mov rsi, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov ecx, edx |
| mov rdx, rdi |
| mov rdi, rax |
| call std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> >::basic_regex<char const*>(char const*, char const*, std::regex_constants::syntax_option_type) |
| nop |
| leave |
| ret |
| std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| mov rdi, rax |
| call std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() [complete object destructor] |
| nop |
| leave |
| ret |
| std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const>::~shared_ptr() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() [base object destructor] |
| nop |
| leave |
| ret |
| std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> >::~basic_regex() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 16 |
| mov rdi, rax |
| call std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const>::~shared_ptr() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| mov rdi, rax |
| call std::locale::~locale() [complete object destructor] |
| nop |
| leave |
| ret |
| bool std::regex_match<char, std::__cxx11::regex_traits<char> >(char const*, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov DWORD PTR [rbp-20], edx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__cxx11::regex_traits<char>::length(char const*) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| lea rsi, [rdx+rax] |
| mov ecx, DWORD PTR [rbp-20] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call bool std::regex_match<char const*, char, std::__cxx11::regex_traits<char> >(char const*, char const*, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type) |
| leave |
| ret |
| std::bit_and<bool>::operator()(bool const&, bool const&) const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-16] |
| movzx eax, BYTE PTR [rax] |
| movzx edx, al |
| mov rax, QWORD PTR [rbp-24] |
| movzx eax, BYTE PTR [rax] |
| movzx eax, al |
| and eax, edx |
| test eax, eax |
| setne al |
| pop rbp |
| ret |
| int std::accumulate<bool*, int, std::bit_and<bool> >(bool*, bool*, int, std::bit_and<bool>): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov DWORD PTR [rbp-36], edx |
| .L245: |
| mov rax, QWORD PTR [rbp-24] |
| cmp rax, QWORD PTR [rbp-32] |
| je .L244 |
| cmp DWORD PTR [rbp-36], 0 |
| setne al |
| mov BYTE PTR [rbp-1], al |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-1] |
| mov rsi, rax |
| lea rdi, [rbp+16] |
| call std::bit_and<bool>::operator()(bool const&, bool const&) const |
| movzx eax, al |
| mov DWORD PTR [rbp-36], eax |
| add QWORD PTR [rbp-24], 1 |
| jmp .L245 |
| .L244: |
| mov eax, DWORD PTR [rbp-36] |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string<char*, void>(char*, char*, std::allocator<char> const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov QWORD PTR [rbp-48], rcx |
| mov rbx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_local_data() |
| mov rcx, rax |
| mov rax, QWORD PTR [rbp-48] |
| mov rdx, rax |
| mov rsi, rcx |
| mov rdi, rbx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider::_Alloc_hider(char*, std::allocator<char> const&) |
| mov rdx, QWORD PTR [rbp-40] |
| mov rcx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*>(char*, char*) |
| jmp .L252 |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider::~_Alloc_hider() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L252: |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_dispose(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_is_local() const |
| xor eax, 1 |
| test al, al |
| je .L255 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_destroy(unsigned long) |
| .L255: |
| nop |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_local_data(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 16 |
| mov rdi, rax |
| call std::pointer_traits<char*>::pointer_to(char&) |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider::_Alloc_hider(char*, std::allocator<char> const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator<char>::allocator(std::allocator<char> const&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax], rdx |
| nop |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+8] |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::capacity() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_is_local() const |
| test al, al |
| je .L262 |
| mov eax, 15 |
| jmp .L264 |
| .L262: |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+16] |
| .L264: |
| leave |
| ret |
| std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_Vector_impl::~_Vector_impl() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::allocator<unsigned long>::~allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_Vector_base() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_Vector_impl::_Vector_impl() [complete object constructor] |
| nop |
| leave |
| ret |
| std::_Vector_base<unsigned long, std::allocator<unsigned long> >::~_Vector_base() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| sub rdx, rax |
| mov rax, rdx |
| sar rax, 3 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_M_deallocate(unsigned long*, unsigned long) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_Vector_impl::~_Vector_impl() [complete object destructor] |
| nop |
| leave |
| ret |
| std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_M_get_Tp_allocator(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| void std::_Destroy<unsigned long*, unsigned long>(unsigned long*, unsigned long*, std::allocator<unsigned long>&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::_Destroy<unsigned long*>(unsigned long*, unsigned long*) |
| nop |
| leave |
| ret |
| std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| mov esi, -1 |
| mov rdi, rax |
| call __gnu_cxx::__exchange_and_add_dispatch(int*, int) |
| cmp eax, 1 |
| sete al |
| test al, al |
| je .L273 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| add rax, 16 |
| mov rax, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-8] |
| mov rdi, rdx |
| call rax |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 12 |
| mov esi, -1 |
| mov rdi, rax |
| call __gnu_cxx::__exchange_and_add_dispatch(int*, int) |
| cmp eax, 1 |
| sete al |
| test al, al |
| je .L273 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| add rax, 24 |
| mov rax, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-8] |
| mov rdi, rdx |
| call rax |
| .L273: |
| nop |
| leave |
| ret |
| std::__shared_count<(__gnu_cxx::_Lock_policy)2>::_M_swap(std::__shared_count<(__gnu_cxx::_Lock_policy)2>&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-32] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| nop |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider::_Alloc_hider(char*, std::allocator<char>&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::remove_reference<std::allocator<char>&>::type&& std::move<std::allocator<char>&>(std::allocator<char>&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator<char>::allocator(std::allocator<char> const&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax], rdx |
| nop |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_length(unsigned long) |
| mov BYTE PTR [rbp-1], 0 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-32] |
| add rdx, rax |
| lea rax, [rbp-1] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::char_traits<char>::assign(char&, char const&) |
| nop |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::remove_reference<std::allocator<char>&>::type&& std::move<std::allocator<char>&>(std::allocator<char>&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_is_local() const: |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_local_data() const |
| cmp rbx, rax |
| sete al |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax], rdx |
| nop |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_capacity(unsigned long): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax+16], rdx |
| nop |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_length(unsigned long): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax+8], rdx |
| nop |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| bool std::operator!=<char>(std::allocator<char> const&, std::allocator<char> const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov eax, 0 |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_destroy(unsigned long): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 16 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-32] |
| lea rbx, [rax+1] |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() |
| mov rdx, rbx |
| mov rsi, r12 |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<char> >::deallocate(std::allocator<char>&, char*, unsigned long) |
| nop |
| add rsp, 16 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::allocator_traits<std::allocator<char> >::allocate(std::allocator<char>&, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov edx, 0 |
| mov rsi, rcx |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<char>::allocate(unsigned long, void const*) |
| leave |
| ret |
| void std::__alloc_on_copy<std::allocator<char> >(std::allocator<char>&, std::allocator<char> const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::__do_alloc_on_copy<std::allocator<char> >(std::allocator<char>&, std::allocator<char> const&, std::integral_constant<bool, false>) |
| nop |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::push_back(char): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-40], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-44], al |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-24] |
| lea rbx, [rax+1] |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::capacity() const |
| cmp rbx, rax |
| seta al |
| test al, al |
| je .L297 |
| mov rsi, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-40] |
| mov r8d, 1 |
| mov ecx, 0 |
| mov edx, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_mutate(unsigned long, unsigned long, char const*, unsigned long) |
| .L297: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| add rdx, rax |
| lea rax, [rbp-44] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::char_traits<char>::assign(char&, char const&) |
| mov rax, QWORD PTR [rbp-24] |
| lea rdx, [rax+1] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long) |
| nop |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| __gnu_cxx::__alloc_traits<std::allocator<char>, char>::_S_select_on_copy(std::allocator<char> const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<char> >::select_on_container_copy_construction(std::allocator<char> const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*>(char*, char*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct_aux<char*>(char*, char*, std::__false_type) |
| nop |
| leave |
| ret |
| void std::__alloc_on_move<std::allocator<char> >(std::allocator<char>&, std::allocator<char>&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::__do_alloc_on_move<std::allocator<char> >(std::allocator<char>&, std::allocator<char>&, std::integral_constant<bool, true>) |
| nop |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_copy(char*, char const*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| cmp QWORD PTR [rbp-24], 1 |
| jne .L303 |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::char_traits<char>::assign(char&, char const&) |
| jmp .L305 |
| .L303: |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::char_traits<char>::copy(char*, char const*, unsigned long) |
| .L305: |
| nop |
| leave |
| ret |
| bool std::operator==<char>(std::allocator<char> const&, std::allocator<char> const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov eax, 1 |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_check_length(unsigned long, unsigned long, char const*) const: |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov QWORD PTR [rbp-48], rcx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::max_size() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-32] |
| sub rax, rdx |
| add rax, rbx |
| cmp QWORD PTR [rbp-40], rax |
| seta al |
| test al, al |
| je .L310 |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__throw_length_error(char const*) |
| .L310: |
| nop |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov eax, edx |
| mov BYTE PTR [rbp-36], al |
| movsx ebx, BYTE PTR [rbp-36] |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| mov rsi, rax |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov r8d, ebx |
| mov rcx, rdx |
| mov rdx, rsi |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_replace_aux(unsigned long, unsigned long, unsigned long, char) |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-16] |
| add rax, rdx |
| leave |
| ret |
| .LC7: |
| .string "%s: __pos (which is %zu) > this->size() (which is %zu)" |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_check(unsigned long, char const*) const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| cmp QWORD PTR [rbp-16], rax |
| seta al |
| test al, al |
| je .L316 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| mov rcx, rax |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rax |
| mov edi, OFFSET FLAT:.LC7 |
| mov eax, 0 |
| call std::__throw_out_of_range_fmt(char const*, ...) |
| .L316: |
| mov rax, QWORD PTR [rbp-16] |
| leave |
| ret |
| std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], 0 |
| nop |
| pop rbp |
| ret |
| std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> >::basic_regex<char const*>(char const*, char const*, std::regex_constants::syntax_option_type): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 56 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov QWORD PTR [rbp-56], rdx |
| mov DWORD PTR [rbp-60], ecx |
| lea rax, [rbp-24] |
| mov rdi, rax |
| call std::locale::locale() [complete object constructor] |
| lea rax, [rbp-56] |
| mov rdi, rax |
| call std::remove_reference<char const*&>::type&& std::move<char const*&>(char const*&) |
| mov rbx, QWORD PTR [rax] |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::remove_reference<char const*&>::type&& std::move<char const*&>(char const*&) |
| mov rsi, QWORD PTR [rax] |
| mov ecx, DWORD PTR [rbp-60] |
| lea rdx, [rbp-24] |
| mov rax, QWORD PTR [rbp-40] |
| mov r8d, ecx |
| mov rcx, rdx |
| mov rdx, rbx |
| mov rdi, rax |
| call std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> >::basic_regex<char const*>(char const*, char const*, std::locale, std::regex_constants::syntax_option_type) |
| lea rax, [rbp-24] |
| mov rdi, rax |
| call std::locale::~locale() [complete object destructor] |
| jmp .L322 |
| mov rbx, rax |
| lea rax, [rbp-24] |
| mov rdi, rax |
| call std::locale::~locale() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L322: |
| add rsp, 56 |
| pop rbx |
| pop rbp |
| ret |
| std::__cxx11::regex_traits<char>::length(char const*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::char_traits<char>::length(char const*) |
| leave |
| ret |
| bool std::regex_match<char const*, char, std::__cxx11::regex_traits<char> >(char const*, char const*, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 88 |
| mov QWORD PTR [rbp-72], rdi |
| mov QWORD PTR [rbp-80], rsi |
| mov QWORD PTR [rbp-88], rdx |
| mov DWORD PTR [rbp-92], ecx |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::__cxx11::sub_match<char const*> >::allocator() [complete object constructor] |
| lea rdx, [rbp-17] |
| lea rax, [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >::match_results(std::allocator<std::__cxx11::sub_match<char const*> > const&) |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::__cxx11::sub_match<char const*> >::~allocator() [complete object destructor] |
| mov edi, DWORD PTR [rbp-92] |
| mov rcx, QWORD PTR [rbp-88] |
| lea rdx, [rbp-64] |
| mov rsi, QWORD PTR [rbp-80] |
| mov rax, QWORD PTR [rbp-72] |
| mov r8d, edi |
| mov rdi, rax |
| call bool std::regex_match<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, char, std::__cxx11::regex_traits<char> >(char const*, char const*, std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >&, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type) |
| mov ebx, eax |
| nop |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >::~match_results() [complete object destructor] |
| mov eax, ebx |
| jmp .L329 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >::~match_results() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L329: |
| add rsp, 88 |
| pop rbx |
| pop rbp |
| ret |
| std::pointer_traits<char*>::pointer_to(char&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call char* std::addressof<char>(char&) |
| leave |
| ret |
| std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_Vector_impl::_Vector_impl() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::allocator<unsigned long>::allocator() [base object constructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+16], 0 |
| nop |
| leave |
| ret |
| std::allocator<unsigned long>::~allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<unsigned long>::~new_allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_M_deallocate(unsigned long*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| cmp QWORD PTR [rbp-16], 0 |
| je .L336 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<unsigned long> >::deallocate(std::allocator<unsigned long>&, unsigned long*, unsigned long) |
| .L336: |
| nop |
| leave |
| ret |
| void std::_Destroy<unsigned long*>(unsigned long*, unsigned long*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::_Destroy_aux<true>::__destroy<unsigned long*>(unsigned long*, unsigned long*) |
| nop |
| leave |
| ret |
| std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_destroy(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| cmp QWORD PTR [rbp-8], 0 |
| je .L340 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| add rax, 8 |
| mov rax, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-8] |
| mov rdi, rdx |
| call rax |
| .L340: |
| nop |
| leave |
| ret |
| std::type_info const*& std::_Any_data::_M_access<std::type_info const*>(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Any_data::_M_access() |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_local_data() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 16 |
| mov rdi, rax |
| call std::pointer_traits<char const*>::pointer_to(char const&) |
| leave |
| ret |
| std::allocator_traits<std::allocator<char> >::deallocate(std::allocator<char>&, char*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<char>::deallocate(char*, unsigned long) |
| nop |
| leave |
| ret |
| __gnu_cxx::new_allocator<char>::allocate(unsigned long, void const*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<char>::max_size() const |
| cmp QWORD PTR [rbp-16], rax |
| seta al |
| test al, al |
| je .L349 |
| call std::__throw_bad_alloc() |
| .L349: |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call operator new(unsigned long) |
| nop |
| leave |
| ret |
| void std::__do_alloc_on_copy<std::allocator<char> >(std::allocator<char>&, std::allocator<char> const&, std::integral_constant<bool, false>): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| nop |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 56 |
| mov QWORD PTR [rbp-56], rdi |
| mov QWORD PTR [rbp-64], rsi |
| mov rax, QWORD PTR [rbp-56] |
| cmp rax, QWORD PTR [rbp-64] |
| je .L355 |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::length() const |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::capacity() const |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-24] |
| cmp rax, QWORD PTR [rbp-32] |
| jbe .L353 |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rbp-48], rax |
| mov rdx, QWORD PTR [rbp-32] |
| lea rcx, [rbp-48] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, unsigned long) |
| mov QWORD PTR [rbp-40], rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_dispose() |
| mov rdx, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*) |
| mov rdx, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_capacity(unsigned long) |
| .L353: |
| cmp QWORD PTR [rbp-24], 0 |
| je .L354 |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rcx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, rax |
| mov rsi, rbx |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_copy(char*, char const*, unsigned long) |
| .L354: |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long) |
| .L355: |
| nop |
| add rsp, 56 |
| pop rbx |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_mutate(unsigned long, unsigned long, char const*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 80 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov QWORD PTR [rbp-56], rdx |
| mov QWORD PTR [rbp-64], rcx |
| mov QWORD PTR [rbp-72], r8 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::length() const |
| sub rax, QWORD PTR [rbp-48] |
| sub rax, QWORD PTR [rbp-56] |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::length() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-72] |
| add rax, rdx |
| sub rax, QWORD PTR [rbp-56] |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::capacity() const |
| mov rdx, rax |
| lea rcx, [rbp-24] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, unsigned long) |
| mov QWORD PTR [rbp-16], rax |
| cmp QWORD PTR [rbp-48], 0 |
| je .L357 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rcx, rax |
| mov rdx, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rbp-16] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_copy(char*, char const*, unsigned long) |
| .L357: |
| cmp QWORD PTR [rbp-64], 0 |
| je .L358 |
| cmp QWORD PTR [rbp-72], 0 |
| je .L358 |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-48] |
| lea rcx, [rdx+rax] |
| mov rdx, QWORD PTR [rbp-72] |
| mov rax, QWORD PTR [rbp-64] |
| mov rsi, rax |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_copy(char*, char const*, unsigned long) |
| .L358: |
| cmp QWORD PTR [rbp-8], 0 |
| je .L359 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rcx, rax |
| mov rdx, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rbp-56] |
| add rax, rdx |
| lea rsi, [rcx+rax] |
| mov rdx, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rbp-72] |
| add rdx, rax |
| mov rax, QWORD PTR [rbp-16] |
| lea rcx, [rdx+rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, rax |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_copy(char*, char const*, unsigned long) |
| .L359: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_dispose() |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*) |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_capacity(unsigned long) |
| nop |
| leave |
| ret |
| std::allocator_traits<std::allocator<char> >::select_on_container_copy_construction(std::allocator<char> const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator<char>::allocator(std::allocator<char> const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct_aux<char*>(char*, char*, std::__false_type): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rdx, QWORD PTR [rbp-40] |
| mov rcx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*>(char*, char*, std::forward_iterator_tag) |
| nop |
| leave |
| ret |
| void std::__do_alloc_on_move<std::allocator<char> >(std::allocator<char>&, std::allocator<char>&, std::integral_constant<bool, true>): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call std::remove_reference<std::allocator<char>&>::type&& std::move<std::allocator<char>&>(std::allocator<char>&) |
| nop |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::max_size() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() const |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<char> >::max_size(std::allocator<char> const&) |
| sub rax, 1 |
| shr rax |
| leave |
| ret |
| .LC8: |
| .string "basic_string::_M_replace_aux" |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_replace_aux(unsigned long, unsigned long, unsigned long, char): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 88 |
| mov QWORD PTR [rbp-56], rdi |
| mov QWORD PTR [rbp-64], rsi |
| mov QWORD PTR [rbp-72], rdx |
| mov QWORD PTR [rbp-80], rcx |
| mov eax, r8d |
| mov BYTE PTR [rbp-84], al |
| mov rdx, QWORD PTR [rbp-80] |
| mov rsi, QWORD PTR [rbp-72] |
| mov rax, QWORD PTR [rbp-56] |
| mov ecx, OFFSET FLAT:.LC8 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_check_length(unsigned long, unsigned long, char const*) const |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| mov QWORD PTR [rbp-24], rax |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-80] |
| add rax, rdx |
| sub rax, QWORD PTR [rbp-72] |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::capacity() const |
| cmp QWORD PTR [rbp-32], rax |
| setbe al |
| test al, al |
| je .L367 |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-64] |
| add rax, rdx |
| mov QWORD PTR [rbp-40], rax |
| mov rax, QWORD PTR [rbp-24] |
| sub rax, QWORD PTR [rbp-64] |
| sub rax, QWORD PTR [rbp-72] |
| mov QWORD PTR [rbp-48], rax |
| cmp QWORD PTR [rbp-48], 0 |
| je .L369 |
| mov rax, QWORD PTR [rbp-72] |
| cmp rax, QWORD PTR [rbp-80] |
| je .L369 |
| mov rdx, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rbp-72] |
| lea rsi, [rdx+rax] |
| mov rdx, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rbp-80] |
| lea rcx, [rdx+rax] |
| mov rax, QWORD PTR [rbp-48] |
| mov rdx, rax |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_move(char*, char const*, unsigned long) |
| jmp .L369 |
| .L367: |
| mov rcx, QWORD PTR [rbp-80] |
| mov rdx, QWORD PTR [rbp-72] |
| mov rsi, QWORD PTR [rbp-64] |
| mov rax, QWORD PTR [rbp-56] |
| mov r8, rcx |
| mov ecx, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_mutate(unsigned long, unsigned long, char const*, unsigned long) |
| .L369: |
| cmp QWORD PTR [rbp-80], 0 |
| je .L370 |
| movsx ebx, BYTE PTR [rbp-84] |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-64] |
| lea rcx, [rdx+rax] |
| mov rax, QWORD PTR [rbp-80] |
| mov edx, ebx |
| mov rsi, rax |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_assign(char*, unsigned long, char) |
| .L370: |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long) |
| mov rax, QWORD PTR [rbp-56] |
| add rsp, 88 |
| pop rbx |
| pop rbp |
| ret |
| .LC9: |
| .string "basic_string::_M_create" |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, unsigned long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rbp-32] |
| mov rbx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::max_size() const |
| cmp rbx, rax |
| seta al |
| test al, al |
| je .L373 |
| mov edi, OFFSET FLAT:.LC9 |
| call std::__throw_length_error(char const*) |
| .L373: |
| mov rax, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rax] |
| cmp QWORD PTR [rbp-40], rax |
| jnb .L374 |
| mov rax, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-40] |
| add rdx, rdx |
| cmp rax, rdx |
| jnb .L374 |
| mov rax, QWORD PTR [rbp-40] |
| lea rdx, [rax+rax] |
| mov rax, QWORD PTR [rbp-32] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-32] |
| mov rbx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::max_size() const |
| cmp rbx, rax |
| seta al |
| test al, al |
| je .L374 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::max_size() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-32] |
| mov QWORD PTR [rax], rdx |
| .L374: |
| mov rax, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rax] |
| lea rbx, [rax+1] |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_get_allocator() |
| mov rsi, rbx |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<char> >::allocate(std::allocator<char>&, unsigned long) |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_limit(unsigned long, unsigned long) const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| sub rax, QWORD PTR [rbp-32] |
| cmp QWORD PTR [rbp-40], rax |
| setb al |
| mov BYTE PTR [rbp-1], al |
| cmp BYTE PTR [rbp-1], 0 |
| je .L377 |
| mov rax, QWORD PTR [rbp-40] |
| jmp .L379 |
| .L377: |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const |
| sub rax, QWORD PTR [rbp-32] |
| .L379: |
| leave |
| ret |
| std::remove_reference<char const*&>::type&& std::move<char const*&>(char const*&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> >::basic_regex<char const*>(char const*, char const*, std::locale, std::regex_constants::syntax_option_type): |
| push rbp |
| mov rbp, rsp |
| push r13 |
| push r12 |
| push rbx |
| sub rsp, 56 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov QWORD PTR [rbp-56], rdx |
| mov QWORD PTR [rbp-64], rcx |
| mov DWORD PTR [rbp-68], r8d |
| mov rax, QWORD PTR [rbp-40] |
| mov edx, DWORD PTR [rbp-68] |
| mov DWORD PTR [rax], edx |
| mov rax, QWORD PTR [rbp-40] |
| lea rbx, [rax+8] |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::remove_reference<std::locale&>::type&& std::move<std::locale&>(std::locale&) |
| mov rsi, rax |
| mov rdi, rbx |
| call std::locale::locale(std::locale const&) |
| mov rax, QWORD PTR [rbp-40] |
| mov r13d, DWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-40] |
| lea r12, [rax+8] |
| lea rax, [rbp-56] |
| mov rdi, rax |
| call std::remove_reference<char const*&>::type&& std::move<char const*&>(char const*&) |
| mov rbx, QWORD PTR [rax] |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::remove_reference<char const*&>::type&& std::move<char const*&>(char const*&) |
| mov rax, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-40] |
| lea rdi, [rdx+16] |
| mov r8d, r13d |
| mov rcx, r12 |
| mov rdx, rbx |
| mov rsi, rax |
| call std::enable_if<std::__detail::__is_contiguous_normal_iter<char const*>::value, std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const> >::type std::__detail::__compile_nfa<std::__cxx11::regex_traits<char>, char const*>(char const*, char const*, std::__cxx11::regex_traits<char>::locale_type const&, std::regex_constants::syntax_option_type) |
| jmp .L385 |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| add rax, 8 |
| mov rdi, rax |
| call std::locale::~locale() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L385: |
| add rsp, 56 |
| pop rbx |
| pop r12 |
| pop r13 |
| pop rbp |
| ret |
| std::allocator<std::__cxx11::sub_match<char const*> >::allocator() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> >::new_allocator() [base object constructor] |
| nop |
| leave |
| ret |
| std::allocator<std::__cxx11::sub_match<char const*> >::~allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> >::~new_allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >::match_results(std::allocator<std::__cxx11::sub_match<char const*> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::vector(std::allocator<std::__cxx11::sub_match<char const*> > const&) |
| nop |
| leave |
| ret |
| std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >::~match_results() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~vector() [base object destructor] |
| nop |
| leave |
| ret |
| bool std::regex_match<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, char, std::__cxx11::regex_traits<char> >(char const*, char const*, std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >&, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov QWORD PTR [rbp-32], rcx |
| mov DWORD PTR [rbp-36], r8d |
| mov edi, DWORD PTR [rbp-36] |
| mov rcx, QWORD PTR [rbp-32] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rsi, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov r8d, edi |
| mov rdi, rax |
| call bool std::__detail::__regex_algo_impl<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, char, std::__cxx11::regex_traits<char>, (std::__detail::_RegexExecutorPolicy)0, true>(char const*, char const*, std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >&, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type) |
| leave |
| ret |
| char* std::addressof<char>(char&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call char* std::__addressof<char>(char&) |
| leave |
| ret |
| std::iterator_traits<char const*>::difference_type std::distance<char const*>(char const*, char const*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| lea rax, [rbp-8] |
| mov rdi, rax |
| call std::iterator_traits<char const*>::iterator_category std::__iterator_category<char const*>(char const* const&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::iterator_traits<char const*>::difference_type std::__distance<char const*>(char const*, char const*, std::random_access_iterator_tag) |
| leave |
| ret |
| std::allocator<unsigned long>::allocator() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<unsigned long>::new_allocator() [base object constructor] |
| nop |
| leave |
| ret |
| __gnu_cxx::new_allocator<unsigned long>::~new_allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| nop |
| pop rbp |
| ret |
| std::allocator_traits<std::allocator<unsigned long> >::deallocate(std::allocator<unsigned long>&, unsigned long*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<unsigned long>::deallocate(unsigned long*, unsigned long) |
| nop |
| leave |
| ret |
| void std::_Destroy_aux<true>::__destroy<unsigned long*>(unsigned long*, unsigned long*): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| nop |
| pop rbp |
| ret |
| std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::~_Sp_counted_base() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov edx, OFFSET FLAT:_ZTVSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE+16 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| nop |
| pop rbp |
| ret |
| std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::~_Sp_counted_base() [deleting destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::~_Sp_counted_base() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, 16 |
| mov rdi, rax |
| call operator delete(void*, unsigned long) |
| leave |
| ret |
| std::pointer_traits<char const*>::pointer_to(char const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call char const* std::addressof<char const>(char const&) |
| leave |
| ret |
| __gnu_cxx::new_allocator<char>::deallocate(char*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call operator delete(void*) |
| leave |
| ret |
| __gnu_cxx::new_allocator<char>::max_size() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, -1 |
| pop rbp |
| ret |
| std::iterator_traits<char*>::difference_type std::distance<char*>(char*, char*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| lea rax, [rbp-8] |
| mov rdi, rax |
| call std::iterator_traits<char*>::iterator_category std::__iterator_category<char*>(char* const&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::iterator_traits<char*>::difference_type std::__distance<char*>(char*, char*, std::random_access_iterator_tag) |
| leave |
| ret |
| .LC10: |
| .string "basic_string::_M_construct null not valid" |
| void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*>(char*, char*, std::forward_iterator_tag): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call bool __gnu_cxx::__is_null_pointer<char>(char*) |
| test al, al |
| je .L411 |
| mov rax, QWORD PTR [rbp-32] |
| cmp rax, QWORD PTR [rbp-40] |
| je .L411 |
| mov eax, 1 |
| jmp .L412 |
| .L411: |
| mov eax, 0 |
| .L412: |
| test al, al |
| je .L413 |
| mov edi, OFFSET FLAT:.LC10 |
| call std::__throw_logic_error(char const*) |
| .L413: |
| mov rdx, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rbp-32] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::iterator_traits<char*>::difference_type std::distance<char*>(char*, char*) |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-8] |
| cmp rax, 15 |
| jbe .L414 |
| lea rcx, [rbp-8] |
| mov rax, QWORD PTR [rbp-24] |
| mov edx, 0 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, unsigned long) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*) |
| mov rdx, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_capacity(unsigned long) |
| .L414: |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rcx, rax |
| mov rdx, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rbp-32] |
| mov rsi, rax |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_copy_chars(char*, char*, char*) |
| mov rdx, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long) |
| nop |
| leave |
| ret |
| std::allocator_traits<std::allocator<char> >::max_size(std::allocator<char> const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<char>::max_size() const |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_move(char*, char const*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| cmp QWORD PTR [rbp-24], 1 |
| jne .L418 |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::char_traits<char>::assign(char&, char const&) |
| jmp .L420 |
| .L418: |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::char_traits<char>::move(char*, char const*, unsigned long) |
| .L420: |
| nop |
| leave |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_assign(char*, unsigned long, char): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov eax, edx |
| mov BYTE PTR [rbp-20], al |
| cmp QWORD PTR [rbp-16], 1 |
| jne .L422 |
| lea rdx, [rbp-20] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::char_traits<char>::assign(char&, char const&) |
| jmp .L424 |
| .L422: |
| movzx eax, BYTE PTR [rbp-20] |
| movsx edx, al |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::char_traits<char>::assign(char*, unsigned long, char) |
| .L424: |
| nop |
| leave |
| ret |
| std::remove_reference<std::locale&>::type&& std::move<std::locale&>(std::locale&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::__detail::_Scanner<char>::~_Scanner() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 200 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() [complete object destructor] |
| nop |
| leave |
| ret |
| std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| mov rdi, rax |
| call std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() [complete object destructor] |
| nop |
| leave |
| ret |
| std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::~shared_ptr() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() [base object destructor] |
| nop |
| leave |
| ret |
| std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::~stack() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::~deque() [complete object destructor] |
| nop |
| leave |
| ret |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::~_Compiler() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 304 |
| mov rdi, rax |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::~stack() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 272 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 256 |
| mov rdi, rax |
| call std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::~shared_ptr() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| mov rdi, rax |
| call std::__detail::_Scanner<char>::~_Scanner() [complete object destructor] |
| nop |
| leave |
| ret |
| std::enable_if<std::__detail::__is_contiguous_normal_iter<char const*>::value, std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const> >::type std::__detail::__compile_nfa<std::__cxx11::regex_traits<char>, char const*>(char const*, char const*, std::__cxx11::regex_traits<char>::locale_type const&, std::regex_constants::syntax_option_type): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 464 |
| mov QWORD PTR [rbp-424], rdi |
| mov QWORD PTR [rbp-432], rsi |
| mov QWORD PTR [rbp-440], rdx |
| mov QWORD PTR [rbp-448], rcx |
| mov DWORD PTR [rbp-452], r8d |
| mov rax, QWORD PTR [rbp-440] |
| sub rax, QWORD PTR [rbp-432] |
| mov QWORD PTR [rbp-8], rax |
| cmp QWORD PTR [rbp-8], 0 |
| je .L433 |
| mov rax, QWORD PTR [rbp-432] |
| mov rdi, rax |
| call char const* std::__addressof<char const>(char const&) |
| jmp .L434 |
| .L433: |
| mov eax, 0 |
| .L434: |
| mov QWORD PTR [rbp-16], rax |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| lea rdi, [rdx+rax] |
| mov ecx, DWORD PTR [rbp-452] |
| mov rdx, QWORD PTR [rbp-448] |
| mov rsi, QWORD PTR [rbp-16] |
| lea rax, [rbp-416] |
| mov r8d, ecx |
| mov rcx, rdx |
| mov rdx, rdi |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_Compiler(char const*, char const*, std::locale const&, std::regex_constants::syntax_option_type) |
| mov rax, QWORD PTR [rbp-424] |
| lea rdx, [rbp-416] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_get_nfa() |
| lea rax, [rbp-416] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::~_Compiler() [complete object destructor] |
| mov rax, QWORD PTR [rbp-424] |
| leave |
| ret |
| __gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> >::new_allocator() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> >::~new_allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| nop |
| pop rbp |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::vector(std::allocator<std::__cxx11::sub_match<char const*> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_base(std::allocator<std::__cxx11::sub_match<char const*> > const&) |
| nop |
| leave |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~vector() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*> >(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~_Vector_base() [base object destructor] |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_State_info<std::integral_constant<bool, false>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::~_State_info() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 24 |
| mov rdi, rax |
| call std::unique_ptr<bool [], std::default_delete<bool []> >::~unique_ptr() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::~vector() [complete object destructor] |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::~_Executor() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 96 |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_State_info<std::integral_constant<bool, false>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::~_State_info() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 72 |
| mov rdi, rax |
| call std::vector<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~vector() [complete object destructor] |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::~_Executor() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 72 |
| mov rdi, rax |
| call std::vector<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~vector() [complete object destructor] |
| nop |
| leave |
| ret |
| bool std::__detail::__regex_algo_impl<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, char, std::__cxx11::regex_traits<char>, (std::__detail::_RegexExecutorPolicy)0, true>(char const*, char const*, std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >&, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 328 |
| mov QWORD PTR [rbp-296], rdi |
| mov QWORD PTR [rbp-304], rsi |
| mov QWORD PTR [rbp-312], rdx |
| mov QWORD PTR [rbp-320], rcx |
| mov DWORD PTR [rbp-324], r8d |
| mov rax, QWORD PTR [rbp-320] |
| add rax, 16 |
| mov esi, 0 |
| mov rdi, rax |
| call bool std::operator==<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const>(std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const> const&, decltype(nullptr)) |
| test al, al |
| je .L444 |
| mov eax, 0 |
| jmp .L463 |
| .L444: |
| mov rax, QWORD PTR [rbp-312] |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-312] |
| mov rdx, QWORD PTR [rbp-296] |
| mov QWORD PTR [rax+24], rdx |
| mov rax, QWORD PTR [rbp-320] |
| add rax, 16 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA_base::_M_sub_count() const |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-312] |
| mov esi, edx |
| mov rdi, rax |
| call std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_resize(unsigned int) |
| mov rax, QWORD PTR [rbp-32] |
| mov QWORD PTR [rbp-40], rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::begin() |
| mov QWORD PTR [rbp-104], rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::end() |
| mov QWORD PTR [rbp-112], rax |
| .L447: |
| lea rdx, [rbp-112] |
| lea rax, [rbp-104] |
| mov rsi, rdx |
| mov rdi, rax |
| call bool __gnu_cxx::operator!=<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const&, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const&) |
| test al, al |
| je .L446 |
| lea rax, [rbp-104] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::operator*() const |
| mov QWORD PTR [rbp-48], rax |
| mov rax, QWORD PTR [rbp-48] |
| mov BYTE PTR [rax+16], 0 |
| lea rax, [rbp-104] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::operator++() |
| jmp .L447 |
| .L446: |
| mov rax, QWORD PTR [rbp-320] |
| mov rdi, rax |
| call std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> >::flags() const |
| mov esi, 1024 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| je .L448 |
| mov eax, 1 |
| jmp .L449 |
| .L448: |
| mov eax, 0 |
| .L449: |
| test al, al |
| je .L450 |
| mov rcx, QWORD PTR [rbp-312] |
| mov r8d, DWORD PTR [rbp-324] |
| mov rdi, QWORD PTR [rbp-320] |
| mov rdx, QWORD PTR [rbp-304] |
| mov rsi, QWORD PTR [rbp-296] |
| lea rax, [rbp-288] |
| mov r9d, r8d |
| mov r8, rdi |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Executor(char const*, char const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type) |
| lea rax, [rbp-288] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_match() |
| mov BYTE PTR [rbp-17], al |
| lea rax, [rbp-288] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::~_Executor() [complete object destructor] |
| jmp .L451 |
| .L450: |
| mov rcx, QWORD PTR [rbp-312] |
| mov r8d, DWORD PTR [rbp-324] |
| mov rdi, QWORD PTR [rbp-320] |
| mov rdx, QWORD PTR [rbp-304] |
| mov rsi, QWORD PTR [rbp-296] |
| lea rax, [rbp-288] |
| mov r9d, r8d |
| mov r8, rdi |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Executor(char const*, char const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type) |
| lea rax, [rbp-288] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_match() |
| mov BYTE PTR [rbp-17], al |
| lea rax, [rbp-288] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::~_Executor() [complete object destructor] |
| .L451: |
| cmp BYTE PTR [rbp-17], 0 |
| je .L452 |
| mov rax, QWORD PTR [rbp-32] |
| mov QWORD PTR [rbp-56], rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::begin() |
| mov QWORD PTR [rbp-120], rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::end() |
| mov QWORD PTR [rbp-128], rax |
| .L455: |
| lea rdx, [rbp-128] |
| lea rax, [rbp-120] |
| mov rsi, rdx |
| mov rdi, rax |
| call bool __gnu_cxx::operator!=<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const&, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const&) |
| test al, al |
| je .L453 |
| lea rax, [rbp-120] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::operator*() const |
| mov QWORD PTR [rbp-64], rax |
| mov rax, QWORD PTR [rbp-64] |
| movzx eax, BYTE PTR [rax+16] |
| xor eax, 1 |
| test al, al |
| je .L454 |
| mov rax, QWORD PTR [rbp-64] |
| mov rdx, QWORD PTR [rbp-304] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-64] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-64] |
| mov QWORD PTR [rax], rdx |
| .L454: |
| lea rax, [rbp-120] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::operator++() |
| jmp .L455 |
| .L453: |
| mov rax, QWORD PTR [rbp-312] |
| mov rdi, rax |
| call std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_prefix() |
| mov QWORD PTR [rbp-72], rax |
| mov rax, QWORD PTR [rbp-312] |
| mov rdi, rax |
| call std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_suffix() |
| mov QWORD PTR [rbp-80], rax |
| mov rax, QWORD PTR [rbp-72] |
| mov BYTE PTR [rax+16], 0 |
| mov rax, QWORD PTR [rbp-72] |
| mov rdx, QWORD PTR [rbp-296] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-72] |
| mov rdx, QWORD PTR [rbp-296] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-80] |
| mov BYTE PTR [rax+16], 0 |
| mov rax, QWORD PTR [rbp-80] |
| mov rdx, QWORD PTR [rbp-304] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-80] |
| mov rdx, QWORD PTR [rbp-304] |
| mov QWORD PTR [rax+8], rdx |
| jmp .L456 |
| .L452: |
| mov rax, QWORD PTR [rbp-312] |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_resize(unsigned int) |
| mov rax, QWORD PTR [rbp-32] |
| mov QWORD PTR [rbp-88], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::begin() |
| mov QWORD PTR [rbp-136], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::end() |
| mov QWORD PTR [rbp-144], rax |
| .L458: |
| lea rdx, [rbp-144] |
| lea rax, [rbp-136] |
| mov rsi, rdx |
| mov rdi, rax |
| call bool __gnu_cxx::operator!=<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const&, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const&) |
| test al, al |
| je .L456 |
| lea rax, [rbp-136] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::operator*() const |
| mov QWORD PTR [rbp-96], rax |
| mov rax, QWORD PTR [rbp-96] |
| mov BYTE PTR [rax+16], 0 |
| mov rax, QWORD PTR [rbp-96] |
| mov rdx, QWORD PTR [rbp-304] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-96] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-96] |
| mov QWORD PTR [rax], rdx |
| lea rax, [rbp-136] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::operator++() |
| jmp .L458 |
| .L456: |
| movzx eax, BYTE PTR [rbp-17] |
| jmp .L463 |
| mov rbx, rax |
| lea rax, [rbp-288] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::~_Executor() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| mov rbx, rax |
| lea rax, [rbp-288] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::~_Executor() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L463: |
| add rsp, 328 |
| pop rbx |
| pop rbp |
| ret |
| char* std::__addressof<char>(char&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::iterator_traits<char const*>::iterator_category std::__iterator_category<char const*>(char const* const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| pop rbp |
| ret |
| std::iterator_traits<char const*>::difference_type std::__distance<char const*>(char const*, char const*, std::random_access_iterator_tag): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| sub rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| __gnu_cxx::new_allocator<unsigned long>::new_allocator() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::new_allocator<unsigned long>::deallocate(unsigned long*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call operator delete(void*) |
| leave |
| ret |
| char const* std::addressof<char const>(char const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call char const* std::__addressof<char const>(char const&) |
| leave |
| ret |
| bool __gnu_cxx::__is_null_pointer<char>(char*): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| cmp QWORD PTR [rbp-8], 0 |
| sete al |
| pop rbp |
| ret |
| std::iterator_traits<char*>::iterator_category std::__iterator_category<char*>(char* const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| pop rbp |
| ret |
| std::iterator_traits<char*>::difference_type std::__distance<char*>(char*, char*, std::random_access_iterator_tag): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| sub rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_copy_chars(char*, char*, char*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-24] |
| sub rax, QWORD PTR [rbp-16] |
| mov rdx, rax |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_copy(char*, char const*, unsigned long) |
| nop |
| leave |
| ret |
| char const* std::__addressof<char const>(char const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_Compiler(char const*, char const*, std::locale const&, std::regex_constants::syntax_option_type): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 120 |
| mov QWORD PTR [rbp-88], rdi |
| mov QWORD PTR [rbp-96], rsi |
| mov QWORD PTR [rbp-104], rdx |
| mov QWORD PTR [rbp-112], rcx |
| mov DWORD PTR [rbp-116], r8d |
| mov esi, 32 |
| mov edi, 16 |
| call std::regex_constants::operator|(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| mov esi, 64 |
| mov edi, eax |
| call std::regex_constants::operator|(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| mov esi, 256 |
| mov edi, eax |
| call std::regex_constants::operator|(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| mov esi, 512 |
| mov edi, eax |
| call std::regex_constants::operator|(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| mov esi, 128 |
| mov edi, eax |
| call std::regex_constants::operator|(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| mov edx, eax |
| mov eax, DWORD PTR [rbp-116] |
| mov esi, edx |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| jne .L485 |
| mov eax, DWORD PTR [rbp-116] |
| mov esi, 16 |
| mov edi, eax |
| call std::regex_constants::operator|(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| jmp .L486 |
| .L485: |
| mov eax, DWORD PTR [rbp-116] |
| .L486: |
| mov rdx, QWORD PTR [rbp-88] |
| mov DWORD PTR [rdx], eax |
| mov rax, QWORD PTR [rbp-88] |
| lea rbx, [rax+8] |
| mov rdx, QWORD PTR [rbp-112] |
| lea rax, [rbp-56] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::locale::locale(std::locale const&) |
| mov rax, QWORD PTR [rbp-88] |
| mov ecx, DWORD PTR [rax] |
| lea rsi, [rbp-56] |
| mov rdx, QWORD PTR [rbp-104] |
| mov rax, QWORD PTR [rbp-96] |
| mov r8, rsi |
| mov rsi, rax |
| mov rdi, rbx |
| call std::__detail::_Scanner<char>::_Scanner(char const*, char const*, std::regex_constants::syntax_option_type, std::locale) |
| lea rax, [rbp-56] |
| mov rdi, rax |
| call std::locale::~locale() [complete object destructor] |
| mov rdx, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rbp-88] |
| lea rcx, [rax+256] |
| mov rax, QWORD PTR [rbp-112] |
| mov rsi, rax |
| mov rdi, rcx |
| call std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > std::make_shared<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::locale const&, std::regex_constants::syntax_option_type&>(std::locale const&, std::regex_constants::syntax_option_type&) |
| mov rax, QWORD PTR [rbp-88] |
| add rax, 272 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string() [complete object constructor] |
| mov rax, QWORD PTR [rbp-88] |
| add rax, 304 |
| mov rdi, rax |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::stack<std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >, void>() |
| mov rax, QWORD PTR [rbp-88] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| lea rdx, [rax+80] |
| mov rax, QWORD PTR [rbp-88] |
| mov QWORD PTR [rax+384], rdx |
| mov rax, QWORD PTR [rbp-112] |
| mov rdi, rax |
| call std::ctype<char> const& std::use_facet<std::ctype<char> >(std::locale const&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-88] |
| mov QWORD PTR [rax+392], rdx |
| mov rax, QWORD PTR [rbp-88] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA_base::_M_start() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-88] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-80] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| mov rax, QWORD PTR [rbp-88] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_subexpr_begin() |
| mov rdx, rax |
| lea rax, [rbp-80] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(long) |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_disjunction() |
| mov rax, QWORD PTR [rbp-88] |
| mov esi, 27 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| xor eax, 1 |
| test al, al |
| je .L487 |
| mov edi, 5 |
| call std::__throw_regex_error(std::regex_constants::error_type) |
| .L487: |
| lea rax, [rbp-48] |
| mov rdx, QWORD PTR [rbp-88] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_pop() |
| lea rdx, [rbp-48] |
| lea rax, [rbp-80] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| mov rax, QWORD PTR [rbp-88] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_subexpr_end() |
| mov rdx, rax |
| lea rax, [rbp-80] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(long) |
| mov rax, QWORD PTR [rbp-88] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_accept() |
| mov rdx, rax |
| lea rax, [rbp-80] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(long) |
| mov rax, QWORD PTR [rbp-88] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_eliminate_dummy() |
| jmp .L496 |
| mov rbx, rax |
| lea rax, [rbp-56] |
| mov rdi, rax |
| call std::locale::~locale() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-88] |
| add rax, 304 |
| mov rdi, rax |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::~stack() [complete object destructor] |
| jmp .L490 |
| mov rbx, rax |
| .L490: |
| mov rax, QWORD PTR [rbp-88] |
| add rax, 272 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() [complete object destructor] |
| mov rax, QWORD PTR [rbp-88] |
| add rax, 256 |
| mov rdi, rax |
| call std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::~shared_ptr() [complete object destructor] |
| jmp .L491 |
| mov rbx, rax |
| .L491: |
| mov rax, QWORD PTR [rbp-88] |
| add rax, 8 |
| mov rdi, rax |
| call std::__detail::_Scanner<char>::~_Scanner() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L496: |
| add rsp, 120 |
| pop rbx |
| pop rbp |
| ret |
| std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::~deque() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 88 |
| mov QWORD PTR [rbp-88], rdi |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_get_Tp_allocator() |
| mov rbx, rax |
| lea rax, [rbp-80] |
| mov rdx, QWORD PTR [rbp-88] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::end() |
| lea rax, [rbp-48] |
| mov rdx, QWORD PTR [rbp-88] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::begin() |
| lea rdx, [rbp-80] |
| lea rsi, [rbp-48] |
| mov rax, QWORD PTR [rbp-88] |
| mov rcx, rbx |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_destroy_data(std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>, std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > const&) |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::~_Deque_base() [base object destructor] |
| nop |
| add rsp, 88 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_get_nfa(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| add rax, 256 |
| mov rdi, rax |
| call std::remove_reference<std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >&>::type&& std::move<std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >&>(std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const>::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, void>(std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >&&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_impl::~_Vector_impl() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::allocator<std::__cxx11::sub_match<char const*> >::~allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_base(std::allocator<std::__cxx11::sub_match<char const*> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_impl::_Vector_impl(std::allocator<std::__cxx11::sub_match<char const*> > const&) |
| nop |
| leave |
| ret |
| std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~_Vector_base() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| sub rdx, rax |
| mov rax, rdx |
| sar rax, 3 |
| mov rdx, rax |
| movabs rax, -6148914691236517205 |
| imul rax, rdx |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_deallocate(std::__cxx11::sub_match<char const*>*, unsigned long) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_impl::~_Vector_impl() [complete object destructor] |
| nop |
| leave |
| ret |
| std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| void std::_Destroy<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*> >(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::_Destroy<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*) |
| nop |
| leave |
| ret |
| bool std::operator==<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const>(std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const> const&, decltype(nullptr)): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2>::operator bool() const |
| xor eax, 1 |
| leave |
| ret |
| std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2, false, false>::_M_get() const |
| leave |
| ret |
| std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_resize(unsigned int): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov DWORD PTR [rbp-12], esi |
| mov rax, QWORD PTR [rbp-8] |
| mov edx, DWORD PTR [rbp-12] |
| add edx, 3 |
| mov edx, edx |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::resize(unsigned long) |
| nop |
| leave |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::begin(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::__normal_iterator(std::__cxx11::sub_match<char const*>* const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::end(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| lea rdx, [rax+8] |
| lea rax, [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::__normal_iterator(std::__cxx11::sub_match<char const*>* const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| bool __gnu_cxx::operator!=<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const&, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::base() const |
| mov rbx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::base() const |
| mov rax, QWORD PTR [rax] |
| cmp rbx, rax |
| setne al |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::operator++(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| lea rdx, [rax+24] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::operator*() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| pop rbp |
| ret |
| std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> >::flags() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax] |
| pop rbp |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Executor(char const*, char const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 64 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov QWORD PTR [rbp-56], rdx |
| mov QWORD PTR [rbp-64], rcx |
| mov QWORD PTR [rbp-72], r8 |
| mov DWORD PTR [rbp-76], r9d |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::vector() [complete object constructor] |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rbp-48] |
| mov QWORD PTR [rax+32], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rbp-56] |
| mov QWORD PTR [rax+40], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rbp-72] |
| mov QWORD PTR [rax+48], rdx |
| mov rax, QWORD PTR [rbp-72] |
| add rax, 16 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov QWORD PTR [rax+56], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rbp-64] |
| mov QWORD PTR [rax+64], rdx |
| mov rax, QWORD PTR [rbp-40] |
| lea rbx, [rax+72] |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::pair<char const*, int> >::allocator() [complete object constructor] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+56] |
| add rax, 56 |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::size() const |
| mov rcx, rax |
| lea rax, [rbp-17] |
| mov rdx, rax |
| mov rsi, rcx |
| mov rdi, rbx |
| call std::vector<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::vector(unsigned long, std::allocator<std::pair<char const*, int> > const&) |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::pair<char const*, int> >::~allocator() [complete object destructor] |
| mov rax, QWORD PTR [rbp-40] |
| lea rbx, [rax+96] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+56] |
| add rax, 56 |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::size() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+56] |
| mov rdi, rax |
| call std::__detail::_NFA_base::_M_start() const |
| mov rdx, r12 |
| mov rsi, rax |
| mov rdi, rbx |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_State_info<std::integral_constant<bool, false>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_State_info(long, unsigned long) |
| mov eax, DWORD PTR [rbp-76] |
| mov esi, 128 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| je .L524 |
| mov edi, 4 |
| call std::regex_constants::operator~(std::regex_constants::match_flag_type) |
| mov ebx, eax |
| mov edi, 1 |
| call std::regex_constants::operator~(std::regex_constants::match_flag_type) |
| mov edx, eax |
| mov eax, DWORD PTR [rbp-76] |
| mov esi, edx |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| mov esi, ebx |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| jmp .L525 |
| .L524: |
| mov eax, DWORD PTR [rbp-76] |
| .L525: |
| mov rdx, QWORD PTR [rbp-40] |
| mov DWORD PTR [rdx+136], eax |
| jmp .L531 |
| mov rbx, rax |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::pair<char const*, int> >::~allocator() [complete object destructor] |
| jmp .L527 |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| add rax, 72 |
| mov rdi, rax |
| call std::vector<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::~vector() [complete object destructor] |
| .L527: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~vector() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L531: |
| add rsp, 64 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::vector<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::~vector() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<std::pair<char const*, int>*, std::pair<char const*, int> >(std::pair<char const*, int>*, std::pair<char const*, int>*, std::allocator<std::pair<char const*, int> >&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::~_Vector_base() [base object destructor] |
| nop |
| leave |
| ret |
| std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::~vector() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::~_Vector_base() [base object destructor] |
| nop |
| leave |
| ret |
| std::unique_ptr<bool [], std::default_delete<bool []> >::~unique_ptr() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__uniq_ptr_impl<bool, std::default_delete<bool []> >::_M_ptr() |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| test rax, rax |
| je .L535 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::unique_ptr<bool [], std::default_delete<bool []> >::get_deleter() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::enable_if<std::is_convertible<bool (*) [], bool (*) []>::value, void>::type std::default_delete<bool []>::operator()<bool>(bool*) const |
| .L535: |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], 0 |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_match(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+32] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, 0 |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_main(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode) |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Executor(char const*, char const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 64 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov QWORD PTR [rbp-56], rdx |
| mov QWORD PTR [rbp-64], rcx |
| mov QWORD PTR [rbp-72], r8 |
| mov DWORD PTR [rbp-76], r9d |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::vector() [complete object constructor] |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rbp-48] |
| mov QWORD PTR [rax+32], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rbp-56] |
| mov QWORD PTR [rax+40], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rbp-72] |
| mov QWORD PTR [rax+48], rdx |
| mov rax, QWORD PTR [rbp-72] |
| add rax, 16 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov QWORD PTR [rax+56], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rbp-64] |
| mov QWORD PTR [rax+64], rdx |
| mov rax, QWORD PTR [rbp-40] |
| lea rbx, [rax+72] |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::pair<char const*, int> >::allocator() [complete object constructor] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+56] |
| add rax, 56 |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::size() const |
| mov rcx, rax |
| lea rax, [rbp-17] |
| mov rdx, rax |
| mov rsi, rcx |
| mov rdi, rbx |
| call std::vector<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::vector(unsigned long, std::allocator<std::pair<char const*, int> > const&) |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::pair<char const*, int> >::~allocator() [complete object destructor] |
| mov rax, QWORD PTR [rbp-40] |
| lea rbx, [rax+96] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+56] |
| add rax, 56 |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::size() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+56] |
| mov rdi, rax |
| call std::__detail::_NFA_base::_M_start() const |
| mov rdx, r12 |
| mov rsi, rax |
| mov rdi, rbx |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_State_info<std::integral_constant<bool, true>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_State_info(long, unsigned long) |
| mov eax, DWORD PTR [rbp-76] |
| mov esi, 128 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| je .L539 |
| mov edi, 4 |
| call std::regex_constants::operator~(std::regex_constants::match_flag_type) |
| mov ebx, eax |
| mov edi, 1 |
| call std::regex_constants::operator~(std::regex_constants::match_flag_type) |
| mov edx, eax |
| mov eax, DWORD PTR [rbp-76] |
| mov esi, edx |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| mov esi, ebx |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| jmp .L540 |
| .L539: |
| mov eax, DWORD PTR [rbp-76] |
| .L540: |
| mov rdx, QWORD PTR [rbp-40] |
| mov DWORD PTR [rdx+112], eax |
| jmp .L543 |
| mov rbx, rax |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::pair<char const*, int> >::~allocator() [complete object destructor] |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~vector() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L543: |
| add rsp, 64 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_match(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+32] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, 0 |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_main(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode) |
| leave |
| ret |
| std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_prefix(): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov rbx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| sub rax, 2 |
| mov rsi, rax |
| mov rdi, rbx |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::__cxx11::match_results<char const*, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_suffix(): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov rbx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| sub rax, 1 |
| mov rsi, rax |
| mov rdi, rbx |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| add rax, rcx |
| pop rbp |
| ret |
| std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > std::make_shared<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::locale const&, std::regex_constants::syntax_option_type&>(std::locale const&, std::regex_constants::syntax_option_type&): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 48 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov QWORD PTR [rbp-56], rdx |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::regex_constants::syntax_option_type& std::forward<std::regex_constants::syntax_option_type&>(std::remove_reference<std::regex_constants::syntax_option_type&>::type&) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::locale const& std::forward<std::locale const&>(std::remove_reference<std::locale const&>::type&) |
| mov rbx, rax |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::allocator() [complete object constructor] |
| mov rax, QWORD PTR [rbp-40] |
| lea rsi, [rbp-17] |
| mov rcx, r12 |
| mov rdx, rbx |
| mov rdi, rax |
| call std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > std::allocate_shared<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, std::locale const&, std::regex_constants::syntax_option_type&>(std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > const&, std::locale const&, std::regex_constants::syntax_option_type&) |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::~allocator() [complete object destructor] |
| jmp .L556 |
| mov rbx, rax |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::~allocator() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L556: |
| mov rax, QWORD PTR [rbp-40] |
| add rsp, 48 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::_M_get() const |
| leave |
| ret |
| std::__detail::_Scanner<char>::_Scanner(char const*, char const*, std::regex_constants::syntax_option_type, std::locale): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 56 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov DWORD PTR [rbp-44], ecx |
| mov QWORD PTR [rbp-56], r8 |
| mov rax, QWORD PTR [rbp-24] |
| mov edx, DWORD PTR [rbp-44] |
| mov esi, edx |
| mov rdi, rax |
| call std::__detail::_ScannerBase::_ScannerBase(std::regex_constants::syntax_option_type) |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-32] |
| mov QWORD PTR [rax+176], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-40] |
| mov QWORD PTR [rax+184], rdx |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::ctype<char> const& std::use_facet<std::ctype<char> const>(std::locale const&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+192], rdx |
| mov rax, QWORD PTR [rbp-24] |
| add rax, 200 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string() [complete object constructor] |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_ScannerBase::_M_is_ecma() const |
| test al, al |
| je .L560 |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+232], OFFSET FLAT:std::__detail::_Scanner<char>::_M_eat_escape_ecma() |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+240], 0 |
| jmp .L561 |
| .L560: |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+232], OFFSET FLAT:std::__detail::_Scanner<char>::_M_eat_escape_posix() |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+240], 0 |
| .L561: |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_Scanner<char>::_M_advance() |
| jmp .L564 |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| add rax, 200 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L564: |
| add rsp, 56 |
| pop rbx |
| pop rbp |
| ret |
| std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::stack<std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >, void>(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::deque() [complete object constructor] |
| nop |
| leave |
| ret |
| std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::_M_get() const |
| leave |
| ret |
| std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+16], rdx |
| nop |
| pop rbp |
| ret |
| std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_subexpr_begin(): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 136 |
| mov QWORD PTR [rbp-136], rdi |
| mov rax, QWORD PTR [rbp-136] |
| mov rax, QWORD PTR [rax+40] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-136] |
| mov QWORD PTR [rdx+40], rcx |
| mov QWORD PTR [rbp-72], rax |
| mov rax, QWORD PTR [rbp-136] |
| lea rdx, [rbp-72] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::push_back(unsigned long const&) |
| lea rax, [rbp-128] |
| mov esi, 8 |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_Opcode) |
| mov rax, QWORD PTR [rbp-72] |
| mov QWORD PTR [rbp-112], rax |
| lea rax, [rbp-128] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_State<char>&>::type&& std::move<std::__detail::_State<char>&>(std::__detail::_State<char>&) |
| mov rdx, rax |
| lea rax, [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_State<char>&&) |
| lea rdx, [rbp-64] |
| mov rax, QWORD PTR [rbp-136] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_state(std::__detail::_State<char>) |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| lea rax, [rbp-128] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| jmp .L575 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| jmp .L572 |
| mov rbx, rax |
| .L572: |
| lea rax, [rbp-128] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L575: |
| add rsp, 136 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rbx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+16] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) |
| mov QWORD PTR [rax+8], rbx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-32] |
| mov QWORD PTR [rax+16], rdx |
| nop |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_disjunction(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 112 |
| mov QWORD PTR [rbp-120], rdi |
| mov rax, QWORD PTR [rbp-120] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_alternative() |
| .L579: |
| mov rax, QWORD PTR [rbp-120] |
| mov esi, 19 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L580 |
| lea rax, [rbp-80] |
| mov rdx, QWORD PTR [rbp-120] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_pop() |
| mov rax, QWORD PTR [rbp-120] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_alternative() |
| lea rax, [rbp-112] |
| mov rdx, QWORD PTR [rbp-120] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_pop() |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_dummy() |
| mov QWORD PTR [rbp-24], rax |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-80] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(long) |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-112] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(long) |
| mov rax, QWORD PTR [rbp-120] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| mov rdx, QWORD PTR [rbp-72] |
| mov rax, QWORD PTR [rbp-104] |
| mov ecx, 0 |
| mov rsi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_alt(long, long, bool) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rsi, rax |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-48] |
| mov rcx, rdx |
| mov rdx, r12 |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long, long) |
| lea rax, [rbp-48] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| jmp .L579 |
| .L580: |
| nop |
| add rsp, 112 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov DWORD PTR [rbp-12], esi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| mov rdi, rax |
| call std::__detail::_Scanner<char>::_M_get_token() const |
| cmp DWORD PTR [rbp-12], eax |
| sete al |
| test al, al |
| je .L582 |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| mov rdi, rax |
| call std::__detail::_Scanner<char>::_M_get_value[abi:cxx11]() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 272 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator=(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| mov rdi, rax |
| call std::__detail::_Scanner<char>::_M_advance() |
| mov eax, 1 |
| jmp .L583 |
| .L582: |
| mov eax, 0 |
| .L583: |
| leave |
| ret |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_pop(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| add rax, 304 |
| mov rdi, rax |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::top() |
| mov rsi, rax |
| mov rcx, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rsi] |
| mov rdx, QWORD PTR [rsi+8] |
| mov QWORD PTR [rcx], rax |
| mov QWORD PTR [rcx+8], rdx |
| mov rax, QWORD PTR [rsi+16] |
| mov QWORD PTR [rcx+16], rax |
| mov rax, QWORD PTR [rbp-16] |
| add rax, 304 |
| mov rdi, rax |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::pop() |
| nop |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-32] |
| mov rbx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+16] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) |
| mov QWORD PTR [rax+8], rbx |
| mov rax, QWORD PTR [rbp-32] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+16], rdx |
| nop |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_subexpr_end(): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 120 |
| mov QWORD PTR [rbp-120], rdi |
| lea rax, [rbp-112] |
| mov esi, 9 |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_Opcode) |
| mov rax, QWORD PTR [rbp-120] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::back() |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-96], rax |
| mov rax, QWORD PTR [rbp-120] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::pop_back() |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_State<char>&>::type&& std::move<std::__detail::_State<char>&>(std::__detail::_State<char>&) |
| mov rdx, rax |
| lea rax, [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_State<char>&&) |
| lea rdx, [rbp-64] |
| mov rax, QWORD PTR [rbp-120] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_state(std::__detail::_State<char>) |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| jmp .L593 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| jmp .L590 |
| mov rbx, rax |
| .L590: |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L593: |
| add rsp, 120 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_accept(): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 88 |
| mov QWORD PTR [rbp-88], rdi |
| lea rax, [rbp-80] |
| mov esi, 12 |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_Opcode) |
| lea rdx, [rbp-80] |
| mov rax, QWORD PTR [rbp-88] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_state(std::__detail::_State<char>) |
| mov QWORD PTR [rbp-24], rax |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, QWORD PTR [rbp-24] |
| jmp .L598 |
| mov rbx, rax |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L598: |
| add rsp, 88 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_eliminate_dummy(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-40], rdi |
| mov rax, QWORD PTR [rbp-40] |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 56 |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::begin() |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 56 |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::end() |
| mov QWORD PTR [rbp-32], rax |
| .L609: |
| lea rdx, [rbp-32] |
| lea rax, [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call bool __gnu_cxx::operator!=<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >(__gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > > const&, __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > > const&) |
| test al, al |
| je .L610 |
| lea rax, [rbp-24] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::operator*() const |
| mov QWORD PTR [rbp-16], rax |
| .L604: |
| mov rax, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rax+8] |
| test rax, rax |
| js .L601 |
| mov rax, QWORD PTR [rbp-40] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rax+8] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) |
| mov rdi, rax |
| call std::__detail::_State<char>::_M_opcode() const |
| cmp eax, 10 |
| jne .L601 |
| mov eax, 1 |
| jmp .L602 |
| .L601: |
| mov eax, 0 |
| .L602: |
| test al, al |
| je .L603 |
| mov rax, QWORD PTR [rbp-40] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rax+8] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax+8], rdx |
| jmp .L604 |
| .L603: |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call std::__detail::_State_base::_M_has_alt() |
| test al, al |
| je .L605 |
| .L608: |
| mov rax, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rax+16] |
| test rax, rax |
| js .L606 |
| mov rax, QWORD PTR [rbp-40] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rax+16] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) |
| mov rdi, rax |
| call std::__detail::_State<char>::_M_opcode() const |
| cmp eax, 10 |
| jne .L606 |
| mov eax, 1 |
| jmp .L607 |
| .L606: |
| mov eax, 0 |
| .L607: |
| test al, al |
| je .L605 |
| mov rax, QWORD PTR [rbp-40] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rax+16] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax+16], rdx |
| jmp .L608 |
| .L605: |
| lea rax, [rbp-24] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::operator++() |
| jmp .L609 |
| .L610: |
| nop |
| leave |
| ret |
| std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_Deque_impl::~_Deque_impl() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::~allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::~_Deque_base() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| test rax, rax |
| je .L613 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+72] |
| lea rdx, [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax+40] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_destroy_nodes(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_deallocate_map(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**, unsigned long) |
| .L613: |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_Deque_impl::~_Deque_impl() [complete object destructor] |
| nop |
| leave |
| ret |
| std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::begin(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| lea rdx, [rax+16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_Deque_iterator(std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*> const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::end(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| lea rdx, [rax+48] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_Deque_iterator(std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*> const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_get_Tp_allocator(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_destroy_data(std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>, std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-72], rdi |
| mov QWORD PTR [rbp-80], rsi |
| mov QWORD PTR [rbp-88], rdx |
| mov QWORD PTR [rbp-96], rcx |
| nop |
| pop rbp |
| ret |
| std::remove_reference<std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >&>::type&& std::move<std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >&>(std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const>::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, void>(std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >&&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rbx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::remove_reference<std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >&>::type&& std::move<std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >&>(std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >&) |
| mov rsi, rax |
| mov rdi, rbx |
| call std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, void>(std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2>&&) |
| nop |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_impl::_Vector_impl(std::allocator<std::__cxx11::sub_match<char const*> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator<std::__cxx11::sub_match<char const*> >::allocator(std::allocator<std::__cxx11::sub_match<char const*> > const&) |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+16], 0 |
| nop |
| leave |
| ret |
| std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_deallocate(std::__cxx11::sub_match<char const*>*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| cmp QWORD PTR [rbp-16], 0 |
| je .L627 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<std::__cxx11::sub_match<char const*> > >::deallocate(std::allocator<std::__cxx11::sub_match<char const*> >&, std::__cxx11::sub_match<char const*>*, unsigned long) |
| .L627: |
| nop |
| leave |
| ret |
| void std::_Destroy<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::_Destroy_aux<true>::__destroy<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*) |
| nop |
| leave |
| ret |
| std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2>::operator bool() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| test rax, rax |
| setne al |
| pop rbp |
| ret |
| std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2, false, false>::_M_get() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2>::get() const |
| leave |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::resize(unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| cmp QWORD PTR [rbp-16], rax |
| seta al |
| test al, al |
| je .L634 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-16] |
| sub rax, rdx |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_default_append(unsigned long) |
| jmp .L636 |
| .L634: |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| cmp QWORD PTR [rbp-16], rax |
| setb al |
| test al, al |
| je .L636 |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| lea rdx, [rcx+rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_erase_at_end(std::__cxx11::sub_match<char const*>*) |
| .L636: |
| nop |
| leave |
| ret |
| __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::__normal_iterator(std::__cxx11::sub_match<char const*>* const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::base() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2, false, false>::_M_get() const |
| leave |
| ret |
| std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::size() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| sub rdx, rax |
| mov rax, rdx |
| sar rax, 4 |
| mov rdx, rax |
| movabs rax, -6148914691236517205 |
| imul rax, rdx |
| pop rbp |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::vector() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_base() [base object constructor] |
| nop |
| leave |
| ret |
| std::allocator<std::pair<char const*, int> >::allocator() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::pair<char const*, int> >::new_allocator() [base object constructor] |
| nop |
| leave |
| ret |
| std::allocator<std::pair<char const*, int> >::~allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::pair<char const*, int> >::~new_allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::vector<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::vector(unsigned long, std::allocator<std::pair<char const*, int> > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-40] |
| mov rcx, QWORD PTR [rbp-32] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_Vector_base(unsigned long, std::allocator<std::pair<char const*, int> > const&) |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_M_default_initialize(unsigned long) |
| jmp .L650 |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::~_Vector_base() [base object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L650: |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_State_info<std::integral_constant<bool, false>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_State_info(long, unsigned long): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::vector() [complete object constructor] |
| mov rax, QWORD PTR [rbp-24] |
| lea r12, [rax+24] |
| mov rbx, QWORD PTR [rbp-40] |
| mov rdi, rbx |
| call operator new[](unsigned long) |
| mov rcx, rax |
| mov rdx, rcx |
| lea rax, [rbx-1] |
| .L653: |
| test rax, rax |
| js .L652 |
| mov BYTE PTR [rdx], 0 |
| add rdx, 1 |
| sub rax, 1 |
| jmp .L653 |
| .L652: |
| mov rsi, rcx |
| mov rdi, r12 |
| call std::unique_ptr<bool [], std::default_delete<bool []> >::unique_ptr<bool*, std::default_delete<bool []>, void, bool>(bool*) |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-32] |
| mov QWORD PTR [rax+32], rdx |
| jmp .L656 |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::~vector() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L656: |
| add rsp, 32 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_Vector_impl::~_Vector_impl() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::allocator<std::pair<char const*, int> >::~allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::~_Vector_base() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| sub rdx, rax |
| mov rax, rdx |
| sar rax, 4 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_M_deallocate(std::pair<char const*, int>*, unsigned long) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_Vector_impl::~_Vector_impl() [complete object destructor] |
| nop |
| leave |
| ret |
| std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_M_get_Tp_allocator(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| void std::_Destroy<std::pair<char const*, int>*, std::pair<char const*, int> >(std::pair<char const*, int>*, std::pair<char const*, int>*, std::allocator<std::pair<char const*, int> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::_Destroy<std::pair<char const*, int>*>(std::pair<char const*, int>*, std::pair<char const*, int>*) |
| nop |
| leave |
| ret |
| std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_impl::~_Vector_impl() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >::~allocator() [base object destructor] |
| nop |
| leave |
| ret |
| __gnu_cxx::__alloc_traits<std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::sub_match<char const*> >::_S_always_equal(): |
| push rbp |
| mov rbp, rsp |
| mov eax, 1 |
| pop rbp |
| ret |
| std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::~_Vector_base() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| sub rdx, rax |
| mov rax, rdx |
| sar rax, 5 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_deallocate(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, unsigned long) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_impl::~_Vector_impl() [complete object destructor] |
| nop |
| leave |
| ret |
| std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_get_Tp_allocator(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| void std::_Destroy<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::_Destroy<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*>(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*) |
| nop |
| leave |
| ret |
| std::__uniq_ptr_impl<bool, std::default_delete<bool []> >::_M_ptr(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::tuple_element<0ul, std::tuple<bool*, std::default_delete<bool []> > >::type& std::get<0ul, bool*, std::default_delete<bool []> >(std::tuple<bool*, std::default_delete<bool []> >&) |
| leave |
| ret |
| std::unique_ptr<bool [], std::default_delete<bool []> >::get_deleter(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__uniq_ptr_impl<bool, std::default_delete<bool []> >::_M_deleter() |
| leave |
| ret |
| std::enable_if<std::is_convertible<bool (*) [], bool (*) []>::value, void>::type std::default_delete<bool []>::operator()<bool>(bool*) const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| cmp QWORD PTR [rbp-16], 0 |
| je .L675 |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call operator delete[](void*) |
| .L675: |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_main(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-28], al |
| movzx edx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, edx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_main_dispatch(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, std::integral_constant<bool, false>) |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_search_from_first(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+32] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, 1 |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_main(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode) |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_State_info<std::integral_constant<bool, true>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_State_info(long, unsigned long): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax], rdx |
| nop |
| pop rbp |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_main(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-28], al |
| movzx edx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, edx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_main_dispatch(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, std::integral_constant<bool, true>) |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_search_from_first(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+32] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, 1 |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_main(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode) |
| leave |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| sub rdx, rax |
| mov rax, rdx |
| sar rax, 3 |
| mov rdx, rax |
| movabs rax, -6148914691236517205 |
| imul rax, rdx |
| pop rbp |
| ret |
| std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_Sp_counted_base() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov edx, OFFSET FLAT:_ZTVSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE+16 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax+8], 1 |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax+12], 1 |
| nop |
| pop rbp |
| ret |
| std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::allocator() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::new_allocator() [base object constructor] |
| nop |
| leave |
| ret |
| std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::~allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::~new_allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::locale const& std::forward<std::locale const&>(std::remove_reference<std::locale const&>::type&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::regex_constants::syntax_option_type& std::forward<std::regex_constants::syntax_option_type&>(std::remove_reference<std::regex_constants::syntax_option_type&>::type&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > std::allocate_shared<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, std::locale const&, std::regex_constants::syntax_option_type&>(std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > const&, std::locale const&, std::regex_constants::syntax_option_type&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov QWORD PTR [rbp-48], rcx |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::regex_constants::syntax_option_type& std::forward<std::regex_constants::syntax_option_type&>(std::remove_reference<std::regex_constants::syntax_option_type&>::type&) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::locale const& std::forward<std::locale const&>(std::remove_reference<std::locale const&>::type&) |
| mov rdx, rax |
| mov rsi, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rcx, rbx |
| mov rdi, rax |
| call std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::shared_ptr<std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, std::locale const&, std::regex_constants::syntax_option_type&>(std::_Sp_alloc_shared_tag<std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > >, std::locale const&, std::regex_constants::syntax_option_type&) |
| mov rax, QWORD PTR [rbp-24] |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::_M_get() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2>::get() const |
| leave |
| ret |
| std::ctype<char> const& std::use_facet<std::ctype<char> const>(std::locale const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov edi, OFFSET FLAT:_ZNSt5ctypeIcE2idE |
| call std::locale::id::_M_id() const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax] |
| mov rax, QWORD PTR [rax+8] |
| mov QWORD PTR [rbp-16], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax] |
| mov rax, QWORD PTR [rax+16] |
| cmp QWORD PTR [rbp-8], rax |
| jnb .L699 |
| mov rax, QWORD PTR [rbp-8] |
| lea rdx, [0+rax*8] |
| mov rax, QWORD PTR [rbp-16] |
| add rax, rdx |
| mov rax, QWORD PTR [rax] |
| test rax, rax |
| jne .L700 |
| .L699: |
| call std::__throw_bad_cast() |
| .L700: |
| mov rax, QWORD PTR [rbp-8] |
| lea rdx, [0+rax*8] |
| mov rax, QWORD PTR [rbp-16] |
| add rax, rdx |
| mov rax, QWORD PTR [rax] |
| mov ecx, 0 |
| mov edx, OFFSET FLAT:_ZTISt5ctypeIcE |
| mov esi, OFFSET FLAT:_ZTINSt6locale5facetE |
| mov rdi, rax |
| call __dynamic_cast |
| test rax, rax |
| jne .L704 |
| call __cxa_bad_cast |
| .L704: |
| leave |
| ret |
| .LC11: |
| .string "Unexpected end of regex when escaping." |
| .LC12: |
| .string "Unexpected end of regex when reading control code." |
| .LC13: |
| .string "Unexpected end of regex when ascii character." |
| std::__detail::_Scanner<char>::_M_eat_escape_ecma(): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-40], rdi |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| jne .L706 |
| mov esi, OFFSET FLAT:.LC11 |
| mov edi, 2 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L706: |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-40] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| mov BYTE PTR [rbp-21], al |
| mov rbx, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+192] |
| movsx ecx, BYTE PTR [rbp-21] |
| mov edx, 0 |
| mov esi, ecx |
| mov rdi, rax |
| call std::ctype<char>::narrow(char, char) const |
| movsx eax, al |
| mov esi, eax |
| mov rdi, rbx |
| call std::__detail::_ScannerBase::_M_find_escape(char) |
| mov QWORD PTR [rbp-32], rax |
| cmp QWORD PTR [rbp-32], 0 |
| je .L707 |
| cmp BYTE PTR [rbp-21], 98 |
| jne .L708 |
| mov rax, QWORD PTR [rbp-40] |
| mov eax, DWORD PTR [rax+136] |
| cmp eax, 2 |
| jne .L707 |
| .L708: |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 1 |
| mov rax, QWORD PTR [rbp-40] |
| lea rcx, [rax+200] |
| mov rax, QWORD PTR [rbp-32] |
| movzx eax, BYTE PTR [rax] |
| movsx eax, al |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L709 |
| .L707: |
| cmp BYTE PTR [rbp-21], 98 |
| jne .L710 |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 24 |
| mov rax, QWORD PTR [rbp-40] |
| add rax, 200 |
| mov edx, 112 |
| mov esi, 1 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L731 |
| .L710: |
| cmp BYTE PTR [rbp-21], 66 |
| jne .L711 |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 24 |
| mov rax, QWORD PTR [rbp-40] |
| add rax, 200 |
| mov edx, 110 |
| mov esi, 1 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L731 |
| .L711: |
| cmp BYTE PTR [rbp-21], 100 |
| je .L712 |
| cmp BYTE PTR [rbp-21], 68 |
| je .L712 |
| cmp BYTE PTR [rbp-21], 115 |
| je .L712 |
| cmp BYTE PTR [rbp-21], 83 |
| je .L712 |
| cmp BYTE PTR [rbp-21], 119 |
| je .L712 |
| cmp BYTE PTR [rbp-21], 87 |
| jne .L713 |
| .L712: |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 14 |
| mov rax, QWORD PTR [rbp-40] |
| lea rcx, [rax+200] |
| movsx eax, BYTE PTR [rbp-21] |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L709 |
| .L713: |
| cmp BYTE PTR [rbp-21], 99 |
| jne .L714 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| jne .L715 |
| mov esi, OFFSET FLAT:.LC12 |
| mov edi, 2 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L715: |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 1 |
| mov rax, QWORD PTR [rbp-40] |
| lea rdi, [rax+200] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-40] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| movsx eax, al |
| mov edx, eax |
| mov esi, 1 |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L731 |
| .L714: |
| cmp BYTE PTR [rbp-21], 120 |
| je .L716 |
| cmp BYTE PTR [rbp-21], 117 |
| jne .L717 |
| .L716: |
| mov rax, QWORD PTR [rbp-40] |
| add rax, 200 |
| mov rdx, -1 |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::erase(unsigned long, unsigned long) |
| mov DWORD PTR [rbp-20], 0 |
| .L725: |
| cmp BYTE PTR [rbp-21], 120 |
| jne .L718 |
| mov eax, 2 |
| jmp .L719 |
| .L718: |
| mov eax, 4 |
| .L719: |
| cmp eax, DWORD PTR [rbp-20] |
| jle .L720 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| je .L721 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+192] |
| mov rdx, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rdx+176] |
| movzx edx, BYTE PTR [rdx] |
| movsx edx, dl |
| mov esi, 4096 |
| mov rdi, rax |
| call std::ctype<char>::is(unsigned short, char) const |
| xor eax, 1 |
| test al, al |
| je .L722 |
| .L721: |
| mov eax, 1 |
| jmp .L723 |
| .L722: |
| mov eax, 0 |
| .L723: |
| test al, al |
| je .L724 |
| mov esi, OFFSET FLAT:.LC13 |
| mov edi, 2 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L724: |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-40] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| movsx eax, al |
| mov rdx, QWORD PTR [rbp-40] |
| add rdx, 200 |
| mov esi, eax |
| mov rdi, rdx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator+=(char) |
| add DWORD PTR [rbp-20], 1 |
| jmp .L725 |
| .L720: |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 3 |
| jmp .L709 |
| .L717: |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+192] |
| movsx edx, BYTE PTR [rbp-21] |
| mov esi, 2048 |
| mov rdi, rax |
| call std::ctype<char>::is(unsigned short, char) const |
| test al, al |
| je .L726 |
| mov rax, QWORD PTR [rbp-40] |
| lea rcx, [rax+200] |
| movsx eax, BYTE PTR [rbp-21] |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| .L730: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| je .L727 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+192] |
| mov rdx, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rdx+176] |
| movzx edx, BYTE PTR [rdx] |
| movsx edx, dl |
| mov esi, 2048 |
| mov rdi, rax |
| call std::ctype<char>::is(unsigned short, char) const |
| test al, al |
| je .L727 |
| mov eax, 1 |
| jmp .L728 |
| .L727: |
| mov eax, 0 |
| .L728: |
| test al, al |
| je .L729 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-40] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| movsx eax, al |
| mov rdx, QWORD PTR [rbp-40] |
| add rdx, 200 |
| mov esi, eax |
| mov rdi, rdx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator+=(char) |
| jmp .L730 |
| .L729: |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 4 |
| jmp .L731 |
| .L726: |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 1 |
| mov rax, QWORD PTR [rbp-40] |
| lea rcx, [rax+200] |
| movsx eax, BYTE PTR [rbp-21] |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L731 |
| .L709: |
| .L731: |
| nop |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| .LC14: |
| .string "Unexpected escape character." |
| std::__detail::_Scanner<char>::_M_eat_escape_posix(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| jne .L733 |
| mov esi, OFFSET FLAT:.LC11 |
| mov edi, 2 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L733: |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| mov BYTE PTR [rbp-1], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+192] |
| movsx ecx, BYTE PTR [rbp-1] |
| mov edx, 0 |
| mov esi, ecx |
| mov rdi, rax |
| call std::ctype<char>::narrow(char, char) const |
| movsx edx, al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+160] |
| mov esi, edx |
| mov rdi, rax |
| call strchr |
| mov QWORD PTR [rbp-16], rax |
| cmp QWORD PTR [rbp-16], 0 |
| je .L734 |
| mov rax, QWORD PTR [rbp-16] |
| movzx eax, BYTE PTR [rax] |
| test al, al |
| je .L734 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+144], 1 |
| mov rax, QWORD PTR [rbp-24] |
| lea rcx, [rax+200] |
| movsx eax, BYTE PTR [rbp-1] |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L735 |
| .L734: |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_ScannerBase::_M_is_awk() const |
| test al, al |
| je .L736 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_Scanner<char>::_M_eat_escape_awk() |
| jmp .L732 |
| .L736: |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_ScannerBase::_M_is_basic() const |
| test al, al |
| je .L738 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+192] |
| movsx edx, BYTE PTR [rbp-1] |
| mov esi, 2048 |
| mov rdi, rax |
| call std::ctype<char>::is(unsigned short, char) const |
| test al, al |
| je .L738 |
| cmp BYTE PTR [rbp-1], 48 |
| je .L738 |
| mov eax, 1 |
| jmp .L739 |
| .L738: |
| mov eax, 0 |
| .L739: |
| test al, al |
| je .L740 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+144], 4 |
| mov rax, QWORD PTR [rbp-24] |
| lea rcx, [rax+200] |
| movsx eax, BYTE PTR [rbp-1] |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L735 |
| .L740: |
| mov esi, OFFSET FLAT:.LC14 |
| mov edi, 2 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L735: |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+176] |
| lea rdx, [rax+1] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+176], rdx |
| .L732: |
| leave |
| ret |
| std::__detail::_Scanner<char>::_M_advance(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| jne .L742 |
| mov rax, QWORD PTR [rbp-8] |
| mov DWORD PTR [rax+144], 27 |
| jmp .L741 |
| .L742: |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+136] |
| test eax, eax |
| jne .L744 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__detail::_Scanner<char>::_M_scan_normal() |
| jmp .L741 |
| .L744: |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+136] |
| cmp eax, 2 |
| jne .L745 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__detail::_Scanner<char>::_M_scan_in_bracket() |
| jmp .L741 |
| .L745: |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+136] |
| cmp eax, 1 |
| jne .L741 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__detail::_Scanner<char>::_M_scan_in_brace() |
| .L741: |
| leave |
| ret |
| std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::deque() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_Deque_base() [base object constructor] |
| nop |
| leave |
| ret |
| std::vector<unsigned long, std::allocator<unsigned long> >::push_back(unsigned long const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+16] |
| cmp rdx, rax |
| je .L748 |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<unsigned long> >::construct<unsigned long, unsigned long const&>(std::allocator<unsigned long>&, unsigned long*, unsigned long const&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+8] |
| lea rdx, [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], rdx |
| jmp .L750 |
| .L748: |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::end() |
| mov rcx, rax |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::vector<unsigned long, std::allocator<unsigned long> >::_M_realloc_insert<unsigned long const&>(__gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >, unsigned long const&) |
| .L750: |
| nop |
| leave |
| ret |
| std::__detail::_State<char>::_State(std::__detail::_Opcode): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov DWORD PTR [rbp-12], esi |
| mov rax, QWORD PTR [rbp-8] |
| mov edx, DWORD PTR [rbp-12] |
| mov esi, edx |
| mov rdi, rax |
| call std::__detail::_State_base::_State_base(std::__detail::_Opcode) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__detail::_State<char>::_M_opcode() const |
| cmp eax, 11 |
| sete al |
| test al, al |
| je .L753 |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 16 |
| mov rdi, rax |
| call __gnu_cxx::__aligned_membuf<std::function<bool (char)> >::_M_addr() |
| mov rsi, rax |
| mov edi, 32 |
| call operator new(unsigned long, void*) |
| mov rdi, rax |
| call std::function<bool (char)>::function() [complete object constructor] |
| .L753: |
| nop |
| leave |
| ret |
| std::function<bool (char)>::~function() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Function_base::~_Function_base() [base object destructor] |
| nop |
| leave |
| ret |
| std::__detail::_State<char>::~_State() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__detail::_State<char>::_M_opcode() const |
| cmp eax, 11 |
| sete al |
| test al, al |
| je .L757 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__detail::_State<char>::_M_get_matcher() |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| .L757: |
| nop |
| leave |
| ret |
| .LC15: |
| .string "Number of NFA states exceeds limit. Please use shorter regex string, or use smaller brace expression, or make _GLIBCXX_REGEX_STATE_LIMIT larger." |
| std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_state(std::__detail::_State<char>): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| lea rbx, [rax+56] |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_State<char>&>::type&& std::move<std::__detail::_State<char>&>(std::__detail::_State<char>&) |
| mov rsi, rax |
| mov rdi, rbx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::push_back(std::__detail::_State<char>&&) |
| mov rax, QWORD PTR [rbp-24] |
| add rax, 56 |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::size() const |
| cmp rax, 100000 |
| seta al |
| test al, al |
| je .L759 |
| mov esi, OFFSET FLAT:.LC15 |
| mov edi, 9 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L759: |
| mov rax, QWORD PTR [rbp-24] |
| add rax, 56 |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::size() const |
| sub rax, 1 |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::remove_reference<std::__detail::_State<char>&>::type&& std::move<std::__detail::_State<char>&>(std::__detail::_State<char>&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::__detail::_State<char>::_State(std::__detail::_State<char>&&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-32] |
| mov rcx, QWORD PTR [rdx] |
| mov rbx, QWORD PTR [rdx+8] |
| mov QWORD PTR [rax], rcx |
| mov QWORD PTR [rax+8], rbx |
| mov rcx, QWORD PTR [rdx+16] |
| mov rbx, QWORD PTR [rdx+24] |
| mov QWORD PTR [rax+16], rcx |
| mov QWORD PTR [rax+24], rbx |
| mov rcx, QWORD PTR [rdx+40] |
| mov rdx, QWORD PTR [rdx+32] |
| mov QWORD PTR [rax+32], rdx |
| mov QWORD PTR [rax+40], rcx |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::__detail::_State<char>::_M_opcode() const |
| cmp eax, 11 |
| sete al |
| test al, al |
| je .L765 |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::__detail::_State<char>::_M_get_matcher() |
| mov rdi, rax |
| call std::remove_reference<std::function<bool (char)>&>::type&& std::move<std::function<bool (char)>&>(std::function<bool (char)>&) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| add rax, 16 |
| mov rdi, rax |
| call __gnu_cxx::__aligned_membuf<std::function<bool (char)> >::_M_addr() |
| mov rsi, rax |
| mov edi, 32 |
| call operator new(unsigned long, void*) |
| mov rsi, rbx |
| mov rdi, rax |
| call std::function<bool (char)>::function(std::function<bool (char)>&&) |
| .L765: |
| nop |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 4 |
| add rax, rcx |
| pop rbp |
| ret |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_alternative(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 112 |
| mov QWORD PTR [rbp-120], rdi |
| mov rax, QWORD PTR [rbp-120] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_term() |
| test al, al |
| je .L769 |
| lea rax, [rbp-112] |
| mov rdx, QWORD PTR [rbp-120] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_pop() |
| mov rax, QWORD PTR [rbp-120] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_alternative() |
| lea rax, [rbp-80] |
| mov rdx, QWORD PTR [rbp-120] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_pop() |
| lea rdx, [rbp-80] |
| lea rax, [rbp-112] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| mov rax, QWORD PTR [rbp-120] |
| lea rdx, [rax+304] |
| lea rax, [rbp-112] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| jmp .L771 |
| .L769: |
| mov rax, QWORD PTR [rbp-120] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_dummy() |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-48] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-48] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| .L771: |
| nop |
| add rsp, 112 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_dummy(): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 72 |
| mov QWORD PTR [rbp-72], rdi |
| lea rax, [rbp-64] |
| mov esi, 10 |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_Opcode) |
| lea rdx, [rbp-64] |
| mov rax, QWORD PTR [rbp-72] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_state(std::__detail::_State<char>) |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| jmp .L776 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L776: |
| add rsp, 72 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_alt(long, long, bool): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 136 |
| mov QWORD PTR [rbp-120], rdi |
| mov QWORD PTR [rbp-128], rsi |
| mov QWORD PTR [rbp-136], rdx |
| mov eax, ecx |
| mov BYTE PTR [rbp-140], al |
| lea rax, [rbp-112] |
| mov esi, 1 |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_Opcode) |
| mov rax, QWORD PTR [rbp-128] |
| mov QWORD PTR [rbp-104], rax |
| mov rax, QWORD PTR [rbp-136] |
| mov QWORD PTR [rbp-96], rax |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_State<char>&>::type&& std::move<std::__detail::_State<char>&>(std::__detail::_State<char>&) |
| mov rdx, rax |
| lea rax, [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_State<char>&&) |
| lea rdx, [rbp-64] |
| mov rax, QWORD PTR [rbp-120] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_state(std::__detail::_State<char>) |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| jmp .L781 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L781: |
| add rsp, 136 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long, long): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov QWORD PTR [rbp-32], rcx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-32] |
| mov QWORD PTR [rax+16], rdx |
| nop |
| pop rbp |
| ret |
| std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rbx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&>::type&& std::move<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&>(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&) |
| mov rsi, rax |
| mov rdi, rbx |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::push_back(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| nop |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_Scanner<char>::_M_get_token() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+144] |
| pop rbp |
| ret |
| std::__detail::_Scanner<char>::_M_get_value[abi:cxx11]() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 200 |
| pop rbp |
| ret |
| std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::top(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::back() |
| leave |
| ret |
| std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::pop(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::pop_back() |
| nop |
| leave |
| ret |
| std::vector<unsigned long, std::allocator<unsigned long> >::back(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::end() |
| mov QWORD PTR [rbp-8], rax |
| lea rax, [rbp-8] |
| mov esi, 1 |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::operator-(long) const |
| mov QWORD PTR [rbp-16], rax |
| lea rax, [rbp-16] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::operator*() const |
| nop |
| leave |
| ret |
| std::vector<unsigned long, std::allocator<unsigned long> >::pop_back(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+8] |
| lea rdx, [rax-8] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<unsigned long> >::destroy<unsigned long>(std::allocator<unsigned long>&, unsigned long*) |
| nop |
| leave |
| ret |
| std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::begin(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::__normal_iterator(std::__detail::_State<char>* const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::end(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| lea rdx, [rax+8] |
| lea rax, [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::__normal_iterator(std::__detail::_State<char>* const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| bool __gnu_cxx::operator!=<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >(__gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > > const&, __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::base() const |
| mov rbx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::base() const |
| mov rax, QWORD PTR [rax] |
| cmp rbx, rax |
| setne al |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::operator++(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| lea rdx, [rax+48] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::operator*() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| pop rbp |
| ret |
| std::__detail::_State<char>::_M_opcode() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax] |
| pop rbp |
| ret |
| std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::~allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::~new_allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_destroy_nodes(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rbp-32] |
| mov QWORD PTR [rbp-8], rax |
| .L809: |
| mov rax, QWORD PTR [rbp-8] |
| cmp rax, QWORD PTR [rbp-40] |
| jnb .L810 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_deallocate_node(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*) |
| add QWORD PTR [rbp-8], 8 |
| jmp .L809 |
| .L810: |
| nop |
| leave |
| ret |
| std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_deallocate_map(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| lea rax, [rbp-1] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_get_map_allocator() const |
| mov rdx, QWORD PTR [rbp-40] |
| mov rcx, QWORD PTR [rbp-32] |
| lea rax, [rbp-1] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*> >::deallocate(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**, unsigned long) |
| lea rax, [rbp-1] |
| mov rdi, rax |
| call std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::~allocator() [complete object destructor] |
| nop |
| leave |
| ret |
| std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_Deque_iterator(std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*> const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+16], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+24], rdx |
| nop |
| pop rbp |
| ret |
| std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, void>(std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2>&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| mov rdi, rax |
| call std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count() [complete object constructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| mov rdx, QWORD PTR [rbp-16] |
| add rdx, 8 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__shared_count<(__gnu_cxx::_Lock_policy)2>::_M_swap(std::__shared_count<(__gnu_cxx::_Lock_policy)2>&) |
| mov rax, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax], 0 |
| nop |
| leave |
| ret |
| std::allocator<std::__cxx11::sub_match<char const*> >::allocator(std::allocator<std::__cxx11::sub_match<char const*> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> >::new_allocator(__gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> > const&) |
| nop |
| leave |
| ret |
| std::allocator_traits<std::allocator<std::__cxx11::sub_match<char const*> > >::deallocate(std::allocator<std::__cxx11::sub_match<char const*> >&, std::__cxx11::sub_match<char const*>*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> >::deallocate(std::__cxx11::sub_match<char const*>*, unsigned long) |
| nop |
| leave |
| ret |
| void std::_Destroy_aux<true>::__destroy<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| nop |
| pop rbp |
| ret |
| std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2>::get() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| pop rbp |
| ret |
| .LC16: |
| .string "vector::_M_default_append" |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_default_append(unsigned long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 72 |
| mov QWORD PTR [rbp-72], rdi |
| mov QWORD PTR [rbp-80], rsi |
| cmp QWORD PTR [rbp-80], 0 |
| je .L832 |
| mov rax, QWORD PTR [rbp-72] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-72] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-72] |
| mov rax, QWORD PTR [rax+8] |
| sub rdx, rax |
| mov rax, rdx |
| sar rax, 3 |
| mov rdx, rax |
| movabs rax, -6148914691236517205 |
| imul rax, rdx |
| mov QWORD PTR [rbp-40], rax |
| mov rax, QWORD PTR [rbp-72] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::max_size() const |
| cmp QWORD PTR [rbp-32], rax |
| ja .L821 |
| mov rax, QWORD PTR [rbp-72] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::max_size() const |
| sub rax, QWORD PTR [rbp-32] |
| cmp QWORD PTR [rbp-40], rax |
| jbe .L822 |
| .L821: |
| mov eax, 1 |
| jmp .L823 |
| .L822: |
| mov eax, 0 |
| .L823: |
| test al, al |
| mov rax, QWORD PTR [rbp-40] |
| cmp rax, QWORD PTR [rbp-80] |
| jb .L825 |
| mov rax, QWORD PTR [rbp-72] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-72] |
| mov rax, QWORD PTR [rax+8] |
| mov rcx, QWORD PTR [rbp-80] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__uninitialized_default_n_a<std::__cxx11::sub_match<char const*>*, unsigned long, std::__cxx11::sub_match<char const*> >(std::__cxx11::sub_match<char const*>*, unsigned long, std::allocator<std::__cxx11::sub_match<char const*> >&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-72] |
| mov QWORD PTR [rax+8], rdx |
| jmp .L832 |
| .L825: |
| mov rcx, QWORD PTR [rbp-80] |
| mov rax, QWORD PTR [rbp-72] |
| mov edx, OFFSET FLAT:.LC16 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_check_len(unsigned long, char const*) const |
| mov QWORD PTR [rbp-48], rax |
| mov rax, QWORD PTR [rbp-72] |
| mov rdx, QWORD PTR [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_allocate(unsigned long) |
| mov QWORD PTR [rbp-56], rax |
| mov QWORD PTR [rbp-24], 0 |
| mov rax, QWORD PTR [rbp-72] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov rsi, rax |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-56] |
| lea rcx, [rdx+rax] |
| mov rax, QWORD PTR [rbp-80] |
| mov rdx, rsi |
| mov rsi, rax |
| mov rdi, rcx |
| call std::__cxx11::sub_match<char const*>* std::__uninitialized_default_n_a<std::__cxx11::sub_match<char const*>*, unsigned long, std::__cxx11::sub_match<char const*> >(std::__cxx11::sub_match<char const*>*, unsigned long, std::allocator<std::__cxx11::sub_match<char const*> >&) |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-56] |
| add rax, rdx |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-72] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov rcx, rax |
| mov rax, QWORD PTR [rbp-72] |
| mov rsi, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-72] |
| mov rax, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__uninitialized_move_if_noexcept_a<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> > >(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&) |
| mov rax, QWORD PTR [rbp-72] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-72] |
| mov rcx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-72] |
| mov rax, QWORD PTR [rax] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*> >(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&) |
| mov rax, QWORD PTR [rbp-72] |
| mov rdx, QWORD PTR [rbp-72] |
| mov rcx, QWORD PTR [rdx+16] |
| mov rdx, QWORD PTR [rbp-72] |
| mov rdx, QWORD PTR [rdx] |
| sub rcx, rdx |
| mov rdx, rcx |
| mov rcx, rdx |
| sar rcx, 3 |
| movabs rdx, -6148914691236517205 |
| imul rdx, rcx |
| mov rsi, rdx |
| mov rdx, QWORD PTR [rbp-72] |
| mov rcx, QWORD PTR [rdx] |
| mov rdx, rsi |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_deallocate(std::__cxx11::sub_match<char const*>*, unsigned long) |
| mov rax, QWORD PTR [rbp-72] |
| mov rdx, QWORD PTR [rbp-56] |
| mov QWORD PTR [rax], rdx |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-80] |
| add rdx, rax |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-56] |
| add rdx, rax |
| mov rax, QWORD PTR [rbp-72] |
| mov QWORD PTR [rax+8], rdx |
| mov rdx, QWORD PTR [rbp-48] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-56] |
| add rdx, rax |
| mov rax, QWORD PTR [rbp-72] |
| mov QWORD PTR [rax+16], rdx |
| jmp .L832 |
| mov rdi, rax |
| call __cxa_begin_catch |
| cmp QWORD PTR [rbp-24], 0 |
| je .L828 |
| mov rax, QWORD PTR [rbp-72] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov rsi, rax |
| mov rdx, QWORD PTR [rbp-80] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| lea rcx, [rdx+rax] |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, rsi |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*> >(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&) |
| .L828: |
| mov rax, QWORD PTR [rbp-72] |
| mov rdx, QWORD PTR [rbp-48] |
| mov rcx, QWORD PTR [rbp-56] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_deallocate(std::__cxx11::sub_match<char const*>*, unsigned long) |
| call __cxa_rethrow |
| mov rbx, rax |
| call __cxa_end_catch |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L832: |
| nop |
| add rsp, 72 |
| pop rbx |
| pop rbp |
| ret |
| |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_erase_at_end(std::__cxx11::sub_match<char const*>*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+8] |
| sub rax, QWORD PTR [rbp-32] |
| sar rax, 3 |
| mov rdx, rax |
| movabs rax, -6148914691236517205 |
| imul rax, rdx |
| mov QWORD PTR [rbp-8], rax |
| cmp QWORD PTR [rbp-8], 0 |
| je .L835 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-32] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*> >(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&) |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-32] |
| mov QWORD PTR [rax+8], rdx |
| .L835: |
| nop |
| leave |
| ret |
| std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_base() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_impl::_Vector_impl() [complete object constructor] |
| nop |
| leave |
| ret |
| __gnu_cxx::new_allocator<std::pair<char const*, int> >::new_allocator() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::new_allocator<std::pair<char const*, int> >::~new_allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| nop |
| pop rbp |
| ret |
| std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_Vector_base(unsigned long, std::allocator<std::pair<char const*, int> > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_Vector_impl::_Vector_impl(std::allocator<std::pair<char const*, int> > const&) |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_M_create_storage(unsigned long) |
| jmp .L842 |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_Vector_impl::~_Vector_impl() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L842: |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::vector<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_M_default_initialize(unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::pair<char const*, int>* std::__uninitialized_default_n_a<std::pair<char const*, int>*, unsigned long, std::pair<char const*, int> >(std::pair<char const*, int>*, unsigned long, std::allocator<std::pair<char const*, int> >&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], rdx |
| nop |
| leave |
| ret |
| std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::vector() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_base() [base object constructor] |
| nop |
| leave |
| ret |
| std::unique_ptr<bool [], std::default_delete<bool []> >::unique_ptr<bool*, std::default_delete<bool []>, void, bool>(bool*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__uniq_ptr_impl<bool, std::default_delete<bool []> >::__uniq_ptr_impl(bool*) |
| nop |
| leave |
| ret |
| std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_M_deallocate(std::pair<char const*, int>*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| cmp QWORD PTR [rbp-16], 0 |
| je .L848 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<std::pair<char const*, int> > >::deallocate(std::allocator<std::pair<char const*, int> >&, std::pair<char const*, int>*, unsigned long) |
| .L848: |
| nop |
| leave |
| ret |
| void std::_Destroy<std::pair<char const*, int>*>(std::pair<char const*, int>*, std::pair<char const*, int>*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::_Destroy_aux<true>::__destroy<std::pair<char const*, int>*>(std::pair<char const*, int>*, std::pair<char const*, int>*) |
| nop |
| leave |
| ret |
| std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >::~allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >::~new_allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_deallocate(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| cmp QWORD PTR [rbp-16], 0 |
| je .L853 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::deallocate(std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, unsigned long) |
| .L853: |
| nop |
| leave |
| ret |
| void std::_Destroy<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*>(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::_Destroy_aux<false>::__destroy<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*>(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*) |
| nop |
| leave |
| ret |
| std::tuple_element<0ul, std::tuple<bool*, std::default_delete<bool []> > >::type& std::get<0ul, bool*, std::default_delete<bool []> >(std::tuple<bool*, std::default_delete<bool []> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call bool*& std::__get_helper<0ul, bool*, std::default_delete<bool []> >(std::_Tuple_impl<0ul, bool*, std::default_delete<bool []> >&) |
| leave |
| ret |
| std::__uniq_ptr_impl<bool, std::default_delete<bool []> >::_M_deleter(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::tuple_element<1ul, std::tuple<bool*, std::default_delete<bool []> > >::type& std::get<1ul, bool*, std::default_delete<bool []> >(std::tuple<bool*, std::default_delete<bool []> >&) |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_main_dispatch(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, std::integral_constant<bool, false>): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 104 |
| mov QWORD PTR [rbp-104], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-108], al |
| mov rax, QWORD PTR [rbp-104] |
| lea rcx, [rax+96] |
| mov rax, QWORD PTR [rbp-104] |
| mov rdx, QWORD PTR [rax+64] |
| mov rax, QWORD PTR [rbp-104] |
| mov rax, QWORD PTR [rax+128] |
| mov rsi, rax |
| mov rdi, rcx |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_State_info<std::integral_constant<bool, false>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_M_queue(long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&) |
| mov BYTE PTR [rbp-17], 0 |
| .L867: |
| mov rax, QWORD PTR [rbp-104] |
| mov BYTE PTR [rax+140], 0 |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 96 |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::empty() const |
| test al, al |
| jne .L873 |
| mov BYTE PTR [rbp-41], 0 |
| mov rax, QWORD PTR [rbp-104] |
| mov rax, QWORD PTR [rax+56] |
| add rax, 56 |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::size() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 120 |
| mov rdi, rax |
| call std::unique_ptr<bool [], std::default_delete<bool []> >::get() const |
| mov rcx, rax |
| lea rax, [rbp-41] |
| mov rdx, rax |
| mov rsi, rbx |
| mov rdi, rcx |
| call bool* std::fill_n<bool*, unsigned long, bool>(bool*, unsigned long, bool const&) |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 96 |
| mov rdi, rax |
| call std::remove_reference<std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >&>::type&& std::move<std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >&>(std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >&) |
| mov rdx, rax |
| lea rax, [rbp-80] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::vector(std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >&&) |
| lea rax, [rbp-80] |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::begin() |
| mov QWORD PTR [rbp-88], rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::end() |
| mov QWORD PTR [rbp-96], rax |
| .L863: |
| lea rdx, [rbp-96] |
| lea rax, [rbp-88] |
| mov rsi, rdx |
| mov rdi, rax |
| call bool __gnu_cxx::operator!=<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >(__gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > > const&, __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > > const&) |
| test al, al |
| je .L862 |
| lea rax, [rbp-88] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::operator*() const |
| mov QWORD PTR [rbp-40], rax |
| mov rax, QWORD PTR [rbp-40] |
| add rax, 8 |
| mov rdi, rax |
| call std::remove_reference<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&>::type&& std::move<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&>(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-104] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator=(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&&) |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax] |
| movzx ecx, BYTE PTR [rbp-108] |
| mov rax, QWORD PTR [rbp-104] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| lea rax, [rbp-88] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::operator++() |
| jmp .L863 |
| .L862: |
| cmp BYTE PTR [rbp-108], 1 |
| jne .L864 |
| mov rax, QWORD PTR [rbp-104] |
| movzx eax, BYTE PTR [rax+140] |
| or BYTE PTR [rbp-17], al |
| .L864: |
| mov rax, QWORD PTR [rbp-104] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-104] |
| mov rax, QWORD PTR [rax+40] |
| cmp rdx, rax |
| jne .L865 |
| mov ebx, 0 |
| jmp .L866 |
| .L865: |
| mov rax, QWORD PTR [rbp-104] |
| mov rax, QWORD PTR [rax+24] |
| lea rdx, [rax+1] |
| mov rax, QWORD PTR [rbp-104] |
| mov QWORD PTR [rax+24], rdx |
| mov ebx, 1 |
| .L866: |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::~vector() [complete object destructor] |
| cmp ebx, 1 |
| jne .L861 |
| jmp .L867 |
| .L873: |
| nop |
| .L861: |
| cmp BYTE PTR [rbp-108], 0 |
| jne .L868 |
| mov rax, QWORD PTR [rbp-104] |
| movzx eax, BYTE PTR [rax+140] |
| mov BYTE PTR [rbp-17], al |
| .L868: |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 96 |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::clear() |
| movzx eax, BYTE PTR [rbp-17] |
| jmp .L872 |
| mov rbx, rax |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::~vector() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L872: |
| add rsp, 104 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_main_dispatch(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, std::integral_constant<bool, true>): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-12], al |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+116], 0 |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 96 |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_State_info<std::integral_constant<bool, true>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_M_get_sol_pos() |
| mov QWORD PTR [rax], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+64] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator=(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+96] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-8] |
| movzx eax, BYTE PTR [rax+116] |
| leave |
| ret |
| __gnu_cxx::new_allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::new_allocator() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::new_allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::~new_allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| nop |
| pop rbp |
| ret |
| std::shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::shared_ptr<std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, std::locale const&, std::regex_constants::syntax_option_type&>(std::_Sp_alloc_shared_tag<std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > >, std::locale const&, std::regex_constants::syntax_option_type&): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov QWORD PTR [rbp-48], rcx |
| mov rbx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::regex_constants::syntax_option_type& std::forward<std::regex_constants::syntax_option_type&>(std::remove_reference<std::regex_constants::syntax_option_type&>::type&) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::locale const& std::forward<std::locale const&>(std::remove_reference<std::locale const&>::type&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rcx, r12 |
| mov rsi, rax |
| mov rdi, rbx |
| call std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, std::locale const&, std::regex_constants::syntax_option_type&>(std::_Sp_alloc_shared_tag<std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > >, std::locale const&, std::regex_constants::syntax_option_type&) |
| nop |
| add rsp, 32 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2>::get() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| pop rbp |
| ret |
| .LC17: |
| .string "basic_string::erase" |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::erase(unsigned long, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov edx, OFFSET FLAT:.LC17 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_check(unsigned long, char const*) const |
| cmp QWORD PTR [rbp-24], -1 |
| jne .L882 |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long) |
| jmp .L883 |
| .L882: |
| cmp QWORD PTR [rbp-24], 0 |
| je .L883 |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_limit(unsigned long, unsigned long) const |
| mov rdx, rax |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_erase(unsigned long, unsigned long) |
| .L883: |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::__detail::_Scanner<char>::_M_eat_escape_awk(): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-40], rdi |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-40] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| mov BYTE PTR [rbp-21], al |
| mov rbx, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+192] |
| movsx ecx, BYTE PTR [rbp-21] |
| mov edx, 0 |
| mov esi, ecx |
| mov rdi, rax |
| call std::ctype<char>::narrow(char, char) const |
| movsx eax, al |
| mov esi, eax |
| mov rdi, rbx |
| call std::__detail::_ScannerBase::_M_find_escape(char) |
| mov QWORD PTR [rbp-32], rax |
| cmp QWORD PTR [rbp-32], 0 |
| je .L886 |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 1 |
| mov rax, QWORD PTR [rbp-40] |
| lea rcx, [rax+200] |
| mov rax, QWORD PTR [rbp-32] |
| movzx eax, BYTE PTR [rax] |
| movsx eax, al |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L885 |
| .L886: |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+192] |
| movsx edx, BYTE PTR [rbp-21] |
| mov esi, 2048 |
| mov rdi, rax |
| call std::ctype<char>::is(unsigned short, char) const |
| test al, al |
| je .L888 |
| cmp BYTE PTR [rbp-21], 56 |
| je .L888 |
| cmp BYTE PTR [rbp-21], 57 |
| je .L888 |
| mov eax, 1 |
| jmp .L889 |
| .L888: |
| mov eax, 0 |
| .L889: |
| test al, al |
| je .L890 |
| mov rax, QWORD PTR [rbp-40] |
| lea rcx, [rax+200] |
| movsx eax, BYTE PTR [rbp-21] |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| mov DWORD PTR [rbp-20], 0 |
| .L894: |
| cmp DWORD PTR [rbp-20], 1 |
| jg .L891 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| je .L891 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+192] |
| mov rdx, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rdx+176] |
| movzx edx, BYTE PTR [rdx] |
| movsx edx, dl |
| mov esi, 2048 |
| mov rdi, rax |
| call std::ctype<char>::is(unsigned short, char) const |
| test al, al |
| je .L891 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 56 |
| je .L891 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 57 |
| je .L891 |
| mov eax, 1 |
| jmp .L892 |
| .L891: |
| mov eax, 0 |
| .L892: |
| test al, al |
| je .L893 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-40] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| movsx eax, al |
| mov rdx, QWORD PTR [rbp-40] |
| add rdx, 200 |
| mov esi, eax |
| mov rdi, rdx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator+=(char) |
| add DWORD PTR [rbp-20], 1 |
| jmp .L894 |
| .L893: |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 2 |
| jmp .L885 |
| .L890: |
| mov esi, OFFSET FLAT:.LC14 |
| mov edi, 2 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L885: |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| .LC18: |
| .string "Unexpected end of regex when in an open parenthesis." |
| .LC19: |
| .string "Invalid special open parenthesis." |
| std::__detail::_Scanner<char>::_M_scan_normal(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-40], rdi |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-40] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| mov BYTE PTR [rbp-1], al |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+192] |
| movsx ecx, BYTE PTR [rbp-1] |
| mov edx, 32 |
| mov esi, ecx |
| mov rdi, rax |
| call std::ctype<char>::narrow(char, char) const |
| movsx edx, al |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+160] |
| mov esi, edx |
| mov rdi, rax |
| call strchr |
| test rax, rax |
| sete al |
| test al, al |
| je .L896 |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 1 |
| mov rax, QWORD PTR [rbp-40] |
| lea rcx, [rax+200] |
| movsx eax, BYTE PTR [rbp-1] |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L895 |
| .L896: |
| cmp BYTE PTR [rbp-1], 92 |
| jne .L898 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| jne .L899 |
| mov esi, OFFSET FLAT:.LC11 |
| mov edi, 2 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L899: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__detail::_ScannerBase::_M_is_basic() const |
| xor eax, 1 |
| test al, al |
| jne .L900 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 40 |
| je .L901 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 41 |
| je .L901 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 123 |
| je .L901 |
| .L900: |
| mov eax, 1 |
| jmp .L902 |
| .L901: |
| mov eax, 0 |
| .L902: |
| test al, al |
| je .L903 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+240] |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-40] |
| add rdx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+232] |
| and eax, 1 |
| test rax, rax |
| je .L904 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+240] |
| mov rcx, rax |
| mov rax, QWORD PTR [rbp-40] |
| add rax, rcx |
| mov rcx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+232] |
| sub rax, 1 |
| add rax, rcx |
| mov rax, QWORD PTR [rax] |
| jmp .L905 |
| .L904: |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+232] |
| .L905: |
| mov rdi, rdx |
| call rax |
| jmp .L895 |
| .L903: |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-40] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| mov BYTE PTR [rbp-1], al |
| .L898: |
| cmp BYTE PTR [rbp-1], 40 |
| jne .L906 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__detail::_ScannerBase::_M_is_ecma() const |
| test al, al |
| je .L907 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 63 |
| jne .L907 |
| mov eax, 1 |
| jmp .L908 |
| .L907: |
| mov eax, 0 |
| .L908: |
| test al, al |
| je .L909 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| lea rdx, [rax+1] |
| mov rax, QWORD PTR [rbp-40] |
| mov QWORD PTR [rax+176], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| sete al |
| test al, al |
| je .L910 |
| mov esi, OFFSET FLAT:.LC18 |
| mov edi, 5 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L910: |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 58 |
| jne .L911 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| lea rdx, [rax+1] |
| mov rax, QWORD PTR [rbp-40] |
| mov QWORD PTR [rax+176], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 6 |
| jmp .L895 |
| .L911: |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 61 |
| jne .L913 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| lea rdx, [rax+1] |
| mov rax, QWORD PTR [rbp-40] |
| mov QWORD PTR [rax+176], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 7 |
| mov rax, QWORD PTR [rbp-40] |
| add rax, 200 |
| mov edx, 112 |
| mov esi, 1 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L895 |
| .L913: |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 33 |
| jne .L914 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| lea rdx, [rax+1] |
| mov rax, QWORD PTR [rbp-40] |
| mov QWORD PTR [rax+176], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 7 |
| mov rax, QWORD PTR [rbp-40] |
| add rax, 200 |
| mov edx, 110 |
| mov esi, 1 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L895 |
| .L914: |
| mov esi, OFFSET FLAT:.LC19 |
| mov edi, 5 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| jmp .L895 |
| .L909: |
| mov rax, QWORD PTR [rbp-40] |
| mov eax, DWORD PTR [rax+140] |
| mov esi, 2 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| setne al |
| test al, al |
| je .L916 |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 6 |
| jmp .L895 |
| .L916: |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 5 |
| jmp .L895 |
| .L906: |
| cmp BYTE PTR [rbp-1], 41 |
| jne .L917 |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 8 |
| jmp .L895 |
| .L917: |
| cmp BYTE PTR [rbp-1], 91 |
| jne .L918 |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+136], 2 |
| mov rax, QWORD PTR [rbp-40] |
| mov BYTE PTR [rax+168], 1 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| je .L919 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 94 |
| jne .L919 |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 10 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+176] |
| lea rdx, [rax+1] |
| mov rax, QWORD PTR [rbp-40] |
| mov QWORD PTR [rax+176], rdx |
| jmp .L895 |
| .L919: |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 9 |
| jmp .L895 |
| .L918: |
| cmp BYTE PTR [rbp-1], 123 |
| jne .L921 |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+136], 1 |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 12 |
| jmp .L895 |
| .L921: |
| cmp BYTE PTR [rbp-1], 93 |
| je .L922 |
| cmp BYTE PTR [rbp-1], 125 |
| je .L922 |
| mov rax, QWORD PTR [rbp-40] |
| mov QWORD PTR [rbp-16], rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+192] |
| movsx ecx, BYTE PTR [rbp-1] |
| mov edx, 0 |
| mov esi, ecx |
| mov rdi, rax |
| call std::ctype<char>::narrow(char, char) const |
| mov BYTE PTR [rbp-17], al |
| .L925: |
| mov rax, QWORD PTR [rbp-16] |
| movzx eax, BYTE PTR [rax] |
| test al, al |
| je .L926 |
| mov rax, QWORD PTR [rbp-16] |
| movzx eax, BYTE PTR [rax] |
| cmp BYTE PTR [rbp-17], al |
| jne .L924 |
| mov rax, QWORD PTR [rbp-16] |
| mov edx, DWORD PTR [rax+4] |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], edx |
| jmp .L895 |
| .L924: |
| add QWORD PTR [rbp-16], 8 |
| jmp .L925 |
| .L922: |
| mov rax, QWORD PTR [rbp-40] |
| mov DWORD PTR [rax+144], 1 |
| mov rax, QWORD PTR [rbp-40] |
| lea rcx, [rax+200] |
| movsx eax, BYTE PTR [rbp-1] |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L895 |
| .L926: |
| nop |
| .L895: |
| leave |
| ret |
| .LC20: |
| .string "Unexpected end of regex when in bracket expression." |
| .LC21: |
| .string "Unexpected character class open bracket." |
| std::__detail::_Scanner<char>::_M_scan_in_bracket(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| jne .L928 |
| mov esi, OFFSET FLAT:.LC20 |
| mov edi, 4 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L928: |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| mov BYTE PTR [rbp-1], al |
| cmp BYTE PTR [rbp-1], 45 |
| jne .L929 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+144], 28 |
| jmp .L930 |
| .L929: |
| cmp BYTE PTR [rbp-1], 91 |
| jne .L931 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| jne .L932 |
| mov esi, OFFSET FLAT:.LC21 |
| mov edi, 4 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L932: |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 46 |
| jne .L933 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+144], 16 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| movsx edx, al |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, edx |
| mov rdi, rax |
| call std::__detail::_Scanner<char>::_M_eat_class(char) |
| jmp .L930 |
| .L933: |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 58 |
| jne .L935 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+144], 15 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| movsx edx, al |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, edx |
| mov rdi, rax |
| call std::__detail::_Scanner<char>::_M_eat_class(char) |
| jmp .L930 |
| .L935: |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 61 |
| jne .L936 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+144], 17 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| movsx edx, al |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, edx |
| mov rdi, rax |
| call std::__detail::_Scanner<char>::_M_eat_class(char) |
| jmp .L930 |
| .L936: |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+144], 1 |
| mov rax, QWORD PTR [rbp-24] |
| lea rcx, [rax+200] |
| movsx eax, BYTE PTR [rbp-1] |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L930 |
| .L931: |
| cmp BYTE PTR [rbp-1], 93 |
| jne .L937 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_ScannerBase::_M_is_ecma() const |
| test al, al |
| jne .L938 |
| mov rax, QWORD PTR [rbp-24] |
| movzx eax, BYTE PTR [rax+168] |
| xor eax, 1 |
| test al, al |
| je .L937 |
| .L938: |
| mov eax, 1 |
| jmp .L939 |
| .L937: |
| mov eax, 0 |
| .L939: |
| test al, al |
| je .L940 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+144], 11 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+136], 0 |
| jmp .L930 |
| .L940: |
| cmp BYTE PTR [rbp-1], 92 |
| jne .L941 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_ScannerBase::_M_is_ecma() const |
| test al, al |
| jne .L942 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_ScannerBase::_M_is_awk() const |
| test al, al |
| je .L941 |
| .L942: |
| mov eax, 1 |
| jmp .L943 |
| .L941: |
| mov eax, 0 |
| .L943: |
| test al, al |
| je .L944 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+240] |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| add rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+232] |
| and eax, 1 |
| test rax, rax |
| je .L945 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+240] |
| mov rcx, rax |
| mov rax, QWORD PTR [rbp-24] |
| add rax, rcx |
| mov rcx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+232] |
| sub rax, 1 |
| add rax, rcx |
| mov rax, QWORD PTR [rax] |
| jmp .L946 |
| .L945: |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+232] |
| .L946: |
| mov rdi, rdx |
| call rax |
| jmp .L930 |
| .L944: |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+144], 1 |
| mov rax, QWORD PTR [rbp-24] |
| lea rcx, [rax+200] |
| movsx eax, BYTE PTR [rbp-1] |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| .L930: |
| mov rax, QWORD PTR [rbp-24] |
| mov BYTE PTR [rax+168], 0 |
| nop |
| leave |
| ret |
| .LC22: |
| .string "Unexpected end of regex when in brace expression." |
| .LC23: |
| .string "Unexpected character in brace expression." |
| std::__detail::_Scanner<char>::_M_scan_in_brace(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| jne .L948 |
| mov esi, OFFSET FLAT:.LC22 |
| mov edi, 6 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L948: |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| mov BYTE PTR [rbp-1], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+192] |
| movsx edx, BYTE PTR [rbp-1] |
| mov esi, 2048 |
| mov rdi, rax |
| call std::ctype<char>::is(unsigned short, char) const |
| test al, al |
| je .L949 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+144], 26 |
| mov rax, QWORD PTR [rbp-24] |
| lea rcx, [rax+200] |
| movsx eax, BYTE PTR [rbp-1] |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| .L953: |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| je .L950 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+192] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rdx+176] |
| movzx edx, BYTE PTR [rdx] |
| movsx edx, dl |
| mov esi, 2048 |
| mov rdi, rax |
| call std::ctype<char>::is(unsigned short, char) const |
| test al, al |
| je .L950 |
| mov eax, 1 |
| jmp .L951 |
| .L950: |
| mov eax, 0 |
| .L951: |
| test al, al |
| je .L959 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| movsx eax, al |
| mov rdx, QWORD PTR [rbp-24] |
| add rdx, 200 |
| mov esi, eax |
| mov rdi, rdx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator+=(char) |
| jmp .L953 |
| .L949: |
| cmp BYTE PTR [rbp-1], 44 |
| jne .L954 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+144], 25 |
| jmp .L959 |
| .L954: |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_ScannerBase::_M_is_basic() const |
| test al, al |
| je .L955 |
| cmp BYTE PTR [rbp-1], 92 |
| jne .L956 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| je .L956 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp al, 125 |
| jne .L956 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+136], 0 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+144], 13 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+176] |
| lea rdx, [rax+1] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+176], rdx |
| jmp .L959 |
| .L956: |
| mov esi, OFFSET FLAT:.LC23 |
| mov edi, 7 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| jmp .L959 |
| .L955: |
| cmp BYTE PTR [rbp-1], 125 |
| jne .L958 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+136], 0 |
| mov rax, QWORD PTR [rbp-24] |
| mov DWORD PTR [rax+144], 13 |
| jmp .L959 |
| .L958: |
| mov esi, OFFSET FLAT:.LC23 |
| mov edi, 7 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L959: |
| nop |
| leave |
| ret |
| std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_Deque_base() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_Deque_impl::_Deque_impl() [complete object constructor] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, 0 |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_initialize_map(unsigned long) |
| jmp .L963 |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_Deque_impl::~_Deque_impl() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L963: |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| void std::allocator_traits<std::allocator<unsigned long> >::construct<unsigned long, unsigned long const&>(std::allocator<unsigned long>&, unsigned long*, unsigned long const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call unsigned long const& std::forward<unsigned long const&>(std::remove_reference<unsigned long const&>::type&) |
| mov rdx, rax |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call void __gnu_cxx::new_allocator<unsigned long>::construct<unsigned long, unsigned long const&>(unsigned long*, unsigned long const&) |
| nop |
| leave |
| ret |
| std::vector<unsigned long, std::allocator<unsigned long> >::end(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| lea rdx, [rax+8] |
| lea rax, [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::__normal_iterator(unsigned long* const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| .LC24: |
| .string "vector::_M_realloc_insert" |
| void std::vector<unsigned long, std::allocator<unsigned long> >::_M_realloc_insert<unsigned long const&>(__gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >, unsigned long const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 104 |
| mov QWORD PTR [rbp-88], rdi |
| mov QWORD PTR [rbp-96], rsi |
| mov QWORD PTR [rbp-104], rdx |
| mov rax, QWORD PTR [rbp-88] |
| mov edx, OFFSET FLAT:.LC24 |
| mov esi, 1 |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::_M_check_len(unsigned long, char const*) const |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-40], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+8] |
| mov QWORD PTR [rbp-48], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::begin() |
| mov QWORD PTR [rbp-72], rax |
| lea rdx, [rbp-72] |
| lea rax, [rbp-96] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::difference_type __gnu_cxx::operator-<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >(__gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > > const&, __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > > const&) |
| mov QWORD PTR [rbp-56], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-32] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_M_allocate(unsigned long) |
| mov QWORD PTR [rbp-64], rax |
| mov rax, QWORD PTR [rbp-64] |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-104] |
| mov rdi, rax |
| call unsigned long const& std::forward<unsigned long const&>(std::remove_reference<unsigned long const&>::type&) |
| mov rsi, rax |
| mov rax, QWORD PTR [rbp-56] |
| lea rdx, [0+rax*8] |
| mov rax, QWORD PTR [rbp-64] |
| lea rcx, [rdx+rax] |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, rsi |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<unsigned long> >::construct<unsigned long, unsigned long const&>(std::allocator<unsigned long>&, unsigned long*, unsigned long const&) |
| mov QWORD PTR [rbp-24], 0 |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_M_get_Tp_allocator() |
| mov rbx, rax |
| lea rax, [rbp-96] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::base() const |
| mov rsi, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-64] |
| mov rax, QWORD PTR [rbp-40] |
| mov rcx, rbx |
| mov rdi, rax |
| call unsigned long* std::__uninitialized_move_if_noexcept_a<unsigned long*, unsigned long*, std::allocator<unsigned long> >(unsigned long*, unsigned long*, unsigned long*, std::allocator<unsigned long>&) |
| mov QWORD PTR [rbp-24], rax |
| add QWORD PTR [rbp-24], 8 |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_M_get_Tp_allocator() |
| mov rbx, rax |
| lea rax, [rbp-96] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::base() const |
| mov rax, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rsi, QWORD PTR [rbp-48] |
| mov rcx, rbx |
| mov rdi, rax |
| call unsigned long* std::__uninitialized_move_if_noexcept_a<unsigned long*, unsigned long*, std::allocator<unsigned long> >(unsigned long*, unsigned long*, unsigned long*, std::allocator<unsigned long>&) |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rcx, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<unsigned long*, unsigned long>(unsigned long*, unsigned long*, std::allocator<unsigned long>&) |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rdx+16] |
| sub rdx, QWORD PTR [rbp-40] |
| sar rdx, 3 |
| mov rcx, QWORD PTR [rbp-40] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_M_deallocate(unsigned long*, unsigned long) |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-64] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-32] |
| lea rdx, [0+rax*8] |
| mov rax, QWORD PTR [rbp-64] |
| add rdx, rax |
| mov rax, QWORD PTR [rbp-88] |
| mov QWORD PTR [rax+16], rdx |
| jmp .L974 |
| mov rdi, rax |
| call __cxa_begin_catch |
| cmp QWORD PTR [rbp-24], 0 |
| jne .L969 |
| mov rax, QWORD PTR [rbp-56] |
| lea rdx, [0+rax*8] |
| mov rax, QWORD PTR [rbp-64] |
| add rdx, rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<unsigned long> >::destroy<unsigned long>(std::allocator<unsigned long>&, unsigned long*) |
| jmp .L970 |
| .L969: |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rcx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-64] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<unsigned long*, unsigned long>(unsigned long*, unsigned long*, std::allocator<unsigned long>&) |
| .L970: |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-32] |
| mov rcx, QWORD PTR [rbp-64] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_M_deallocate(unsigned long*, unsigned long) |
| call __cxa_rethrow |
| mov rbx, rax |
| call __cxa_end_catch |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L974: |
| add rsp, 104 |
| pop rbx |
| pop rbp |
| ret |
| |
| __gnu_cxx::__aligned_membuf<std::function<bool (char)> >::_M_addr(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::function<bool (char)>::function() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Function_base::_Function_base() [base object constructor] |
| nop |
| leave |
| ret |
| std::__detail::_State<char>::_M_get_matcher(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 16 |
| mov rdi, rax |
| call __gnu_cxx::__aligned_membuf<std::function<bool (char)> >::_M_addr() |
| leave |
| ret |
| std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::push_back(std::__detail::_State<char>&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_State<char>&>::type&& std::move<std::__detail::_State<char>&>(std::__detail::_State<char>&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_State<char>& std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::emplace_back<std::__detail::_State<char> >(std::__detail::_State<char>&&) |
| nop |
| leave |
| ret |
| std::remove_reference<std::function<bool (char)>&>::type&& std::move<std::function<bool (char)>&>(std::function<bool (char)>&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::function<bool (char)>::function(std::function<bool (char)>&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Function_base::_Function_base() [base object constructor] |
| mov rdx, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::function<bool (char)>::swap(std::function<bool (char)>&) |
| nop |
| leave |
| ret |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_term(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_assertion() |
| test al, al |
| je .L985 |
| mov eax, 1 |
| jmp .L986 |
| .L985: |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_atom() |
| test al, al |
| je .L987 |
| .L989: |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_quantifier() |
| test al, al |
| je .L988 |
| jmp .L989 |
| .L988: |
| mov eax, 1 |
| jmp .L986 |
| .L987: |
| mov eax, 0 |
| .L986: |
| leave |
| ret |
| std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::push_back(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| nop |
| leave |
| ret |
| std::remove_reference<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&>::type&& std::move<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&>(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::push_back(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&>::type&& std::move<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&>(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >& std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::emplace_back<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| nop |
| leave |
| ret |
| std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::back(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-40], rdi |
| lea rax, [rbp-32] |
| mov rdx, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::end() |
| lea rax, [rbp-32] |
| mov rdi, rax |
| call std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::operator--() |
| lea rax, [rbp-32] |
| mov rdi, rax |
| call std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::operator*() const |
| nop |
| leave |
| ret |
| std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::pop_back(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+48] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+56] |
| cmp rdx, rax |
| je .L997 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+48] |
| lea rdx, [rax-24] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+48], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+48] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::destroy<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*) |
| jmp .L999 |
| .L997: |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_pop_back_aux() |
| .L999: |
| nop |
| leave |
| ret |
| __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::operator-(long) const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-32] |
| sal rdx, 3 |
| neg rdx |
| add rax, rdx |
| mov QWORD PTR [rbp-8], rax |
| lea rdx, [rbp-8] |
| lea rax, [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::__normal_iterator(unsigned long* const&) |
| mov rax, QWORD PTR [rbp-16] |
| leave |
| ret |
| __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::operator*() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| pop rbp |
| ret |
| void std::allocator_traits<std::allocator<unsigned long> >::destroy<unsigned long>(std::allocator<unsigned long>&, unsigned long*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void __gnu_cxx::new_allocator<unsigned long>::destroy<unsigned long>(unsigned long*) |
| nop |
| leave |
| ret |
| __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::__normal_iterator(std::__detail::_State<char>* const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::base() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::~new_allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| nop |
| pop rbp |
| ret |
| std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_deallocate_node(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov edi, 24 |
| call std::__deque_buf_size(unsigned long) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::deallocate(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*, unsigned long) |
| nop |
| leave |
| ret |
| std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_get_map_allocator() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_get_Tp_allocator() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::~allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::~new_allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*> >::deallocate(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::deallocate(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**, unsigned long) |
| nop |
| leave |
| ret |
| __gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> >::new_allocator(__gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> > const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> >::deallocate(std::__cxx11::sub_match<char const*>*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call operator delete(void*) |
| leave |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::max_size() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() const |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<std::__cxx11::sub_match<char const*> > >::max_size(std::allocator<std::__cxx11::sub_match<char const*> > const&) |
| leave |
| ret |
| std::__cxx11::sub_match<char const*>* std::__uninitialized_default_n_a<std::__cxx11::sub_match<char const*>*, unsigned long, std::__cxx11::sub_match<char const*> >(std::__cxx11::sub_match<char const*>*, unsigned long, std::allocator<std::__cxx11::sub_match<char const*> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__uninitialized_default_n<std::__cxx11::sub_match<char const*>*, unsigned long>(std::__cxx11::sub_match<char const*>*, unsigned long) |
| leave |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_check_len(unsigned long, char const*) const: |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 56 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov QWORD PTR [rbp-56], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::max_size() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| sub rbx, rax |
| mov rdx, rbx |
| mov rax, QWORD PTR [rbp-48] |
| cmp rdx, rax |
| setb al |
| test al, al |
| je .L1022 |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__throw_length_error(char const*) |
| .L1022: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| mov QWORD PTR [rbp-32], rax |
| lea rdx, [rbp-48] |
| lea rax, [rbp-32] |
| mov rsi, rdx |
| mov rdi, rax |
| call unsigned long const& std::max<unsigned long>(unsigned long const&, unsigned long const&) |
| mov rax, QWORD PTR [rax] |
| add rax, rbx |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| cmp QWORD PTR [rbp-24], rax |
| jb .L1023 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::max_size() const |
| cmp QWORD PTR [rbp-24], rax |
| jbe .L1024 |
| .L1023: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::max_size() const |
| jmp .L1025 |
| .L1024: |
| mov rax, QWORD PTR [rbp-24] |
| .L1025: |
| add rsp, 56 |
| pop rbx |
| pop rbp |
| ret |
| std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_allocate(unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| cmp QWORD PTR [rbp-16], 0 |
| je .L1028 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<std::__cxx11::sub_match<char const*> > >::allocate(std::allocator<std::__cxx11::sub_match<char const*> >&, unsigned long) |
| jmp .L1030 |
| .L1028: |
| mov eax, 0 |
| .L1030: |
| leave |
| ret |
| std::__cxx11::sub_match<char const*>* std::__uninitialized_move_if_noexcept_a<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> > >(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov QWORD PTR [rbp-48], rcx |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::move_iterator<std::__cxx11::sub_match<char const*>*> std::__make_move_if_noexcept_iterator<std::__cxx11::sub_match<char const*>, std::move_iterator<std::__cxx11::sub_match<char const*>*> >(std::__cxx11::sub_match<char const*>*) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::move_iterator<std::__cxx11::sub_match<char const*>*> std::__make_move_if_noexcept_iterator<std::__cxx11::sub_match<char const*>, std::move_iterator<std::__cxx11::sub_match<char const*>*> >(std::__cxx11::sub_match<char const*>*) |
| mov rdi, rax |
| mov rdx, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rbp-40] |
| mov rcx, rdx |
| mov rdx, rax |
| mov rsi, rbx |
| call std::__cxx11::sub_match<char const*>* std::__uninitialized_copy_a<std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*> >(std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&) |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_impl::_Vector_impl() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::allocator<std::__cxx11::sub_match<char const*> >::allocator() [base object constructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+16], 0 |
| nop |
| leave |
| ret |
| std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_Vector_impl::_Vector_impl(std::allocator<std::pair<char const*, int> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator<std::pair<char const*, int> >::allocator(std::allocator<std::pair<char const*, int> > const&) |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+16], 0 |
| nop |
| leave |
| ret |
| std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_M_create_storage(unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_M_allocate(unsigned long) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-16] |
| sal rdx, 4 |
| add rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+16], rdx |
| nop |
| leave |
| ret |
| std::pair<char const*, int>* std::__uninitialized_default_n_a<std::pair<char const*, int>*, unsigned long, std::pair<char const*, int> >(std::pair<char const*, int>*, unsigned long, std::allocator<std::pair<char const*, int> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::pair<char const*, int>* std::__uninitialized_default_n<std::pair<char const*, int>*, unsigned long>(std::pair<char const*, int>*, unsigned long) |
| leave |
| ret |
| std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_base() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_impl::_Vector_impl() [complete object constructor] |
| nop |
| leave |
| ret |
| std::__uniq_ptr_impl<bool, std::default_delete<bool []> >::__uniq_ptr_impl(bool*): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::tuple<bool*, std::default_delete<bool []> >::tuple<bool*, std::default_delete<bool []>, true>() |
| mov rbx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__uniq_ptr_impl<bool, std::default_delete<bool []> >::_M_ptr() |
| mov QWORD PTR [rax], rbx |
| nop |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::allocator_traits<std::allocator<std::pair<char const*, int> > >::deallocate(std::allocator<std::pair<char const*, int> >&, std::pair<char const*, int>*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::pair<char const*, int> >::deallocate(std::pair<char const*, int>*, unsigned long) |
| nop |
| leave |
| ret |
| void std::_Destroy_aux<true>::__destroy<std::pair<char const*, int>*>(std::pair<char const*, int>*, std::pair<char const*, int>*): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::new_allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >::~new_allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| nop |
| pop rbp |
| ret |
| std::allocator_traits<std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::deallocate(std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >::deallocate(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, unsigned long) |
| nop |
| leave |
| ret |
| void std::_Destroy_aux<false>::__destroy<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*>(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| .L1046: |
| mov rax, QWORD PTR [rbp-8] |
| cmp rax, QWORD PTR [rbp-16] |
| je .L1047 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >* std::__addressof<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >&) |
| mov rdi, rax |
| call void std::_Destroy<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*) |
| add QWORD PTR [rbp-8], 32 |
| jmp .L1046 |
| .L1047: |
| nop |
| leave |
| ret |
| bool*& std::__get_helper<0ul, bool*, std::default_delete<bool []> >(std::_Tuple_impl<0ul, bool*, std::default_delete<bool []> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Tuple_impl<0ul, bool*, std::default_delete<bool []> >::_M_head(std::_Tuple_impl<0ul, bool*, std::default_delete<bool []> >&) |
| leave |
| ret |
| std::tuple_element<1ul, std::tuple<bool*, std::default_delete<bool []> > >::type& std::get<1ul, bool*, std::default_delete<bool []> >(std::tuple<bool*, std::default_delete<bool []> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::default_delete<bool []>& std::__get_helper<1ul, std::default_delete<bool []>>(std::_Tuple_impl<1ul, std::default_delete<bool []>>&) |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_State_info<std::integral_constant<bool, false>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_M_queue(long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-24] |
| lea rcx, [rbp-16] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >& std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::emplace_back<long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>(long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&) |
| nop |
| leave |
| ret |
| std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::empty() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::end() const |
| mov QWORD PTR [rbp-16], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::begin() const |
| mov QWORD PTR [rbp-8], rax |
| lea rdx, [rbp-16] |
| lea rax, [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call bool __gnu_cxx::operator==<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >(__gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > > const&, __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > > const&) |
| nop |
| leave |
| ret |
| std::unique_ptr<bool [], std::default_delete<bool []> >::get() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__uniq_ptr_impl<bool, std::default_delete<bool []> >::_M_ptr() const |
| leave |
| ret |
| bool* std::fill_n<bool*, unsigned long, bool>(bool*, unsigned long, bool const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call bool* std::__niter_base<bool*>(bool*) |
| mov rcx, rax |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-16] |
| mov rsi, rax |
| mov rdi, rcx |
| call __gnu_cxx::__enable_if<std::__is_scalar<bool>::__value, bool*>::__type std::__fill_n_a<bool*, unsigned long, bool>(bool*, unsigned long, bool const&) |
| leave |
| ret |
| std::remove_reference<std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >&>::type&& std::move<std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >&>(std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::vector(std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >&&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rbx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::remove_reference<std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >&>::type&& std::move<std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >&>(std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >&) |
| mov rsi, rax |
| mov rdi, rbx |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_base(std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >&&) |
| nop |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::begin(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::__normal_iterator(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >* const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::end(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| lea rdx, [rax+8] |
| lea rax, [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::__normal_iterator(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >* const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| bool __gnu_cxx::operator!=<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >(__gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > > const&, __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::base() const |
| mov rbx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::base() const |
| mov rax, QWORD PTR [rax] |
| cmp rbx, rax |
| setne al |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::operator++(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| lea rdx, [rax+32] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::operator*() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| pop rbp |
| ret |
| std::remove_reference<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&>::type&& std::move<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&>(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator=(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov BYTE PTR [rbp-1], 1 |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::remove_reference<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&>::type&& std::move<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&>(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_move_assign(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&&, std::integral_constant<bool, true>) |
| mov rax, QWORD PTR [rbp-24] |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-24], rdx |
| mov BYTE PTR [rbp-12], al |
| mov rax, QWORD PTR [rbp-8] |
| lea rdx, [rax+96] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_State_info<std::integral_constant<bool, false>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_M_visited(long) |
| test al, al |
| jne .L1091 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov rdi, rax |
| call std::__detail::_State<char>::_M_opcode() const |
| cmp eax, 12 |
| ja .L1076 |
| mov eax, eax |
| mov rax, QWORD PTR .L1080[0+rax*8] |
| jmp rax |
| .L1080: |
| .quad .L1076 |
| .quad .L1090 |
| .quad .L1089 |
| .quad .L1088 |
| .quad .L1087 |
| .quad .L1086 |
| .quad .L1085 |
| .quad .L1084 |
| .quad .L1083 |
| .quad .L1082 |
| .quad .L1076 |
| .quad .L1081 |
| .quad .L1079 |
| .L1089: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_repeat(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| jmp .L1076 |
| .L1083: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_subexpr_begin(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| jmp .L1076 |
| .L1082: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_subexpr_end(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| jmp .L1076 |
| .L1087: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_line_begin_assertion(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| jmp .L1076 |
| .L1086: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_line_end_assertion(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| jmp .L1076 |
| .L1085: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_word_boundary(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| jmp .L1076 |
| .L1084: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_subexpr_lookahead(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| jmp .L1076 |
| .L1081: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_match(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| jmp .L1076 |
| .L1088: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_backref(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| jmp .L1076 |
| .L1079: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_accept(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| jmp .L1076 |
| .L1090: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_alternative(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| nop |
| jmp .L1076 |
| .L1091: |
| nop |
| .L1076: |
| leave |
| ret |
| std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::clear(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_erase_at_end(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*) |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_State_info<std::integral_constant<bool, true>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_M_get_sol_pos(): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| pop rbp |
| ret |
| __gnu_cxx::__alloc_traits<std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::sub_match<char const*> >::_S_propagate_on_copy_assign(): |
| push rbp |
| mov rbp, rsp |
| mov eax, 0 |
| pop rbp |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator=(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&): |
| push rbp |
| mov rbp, rsp |
| push r14 |
| push r13 |
| push r12 |
| push rbx |
| sub rsp, 32 |
| mov QWORD PTR [rbp-56], rdi |
| mov QWORD PTR [rbp-64], rsi |
| mov rax, QWORD PTR [rbp-64] |
| cmp rax, QWORD PTR [rbp-56] |
| je .L1098 |
| call __gnu_cxx::__alloc_traits<std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::sub_match<char const*> >::_S_propagate_on_copy_assign() |
| test al, al |
| je .L1099 |
| call __gnu_cxx::__alloc_traits<std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::sub_match<char const*> >::_S_always_equal() |
| xor eax, 1 |
| test al, al |
| je .L1100 |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov rsi, rbx |
| mov rdi, rax |
| call bool std::operator!=<std::__cxx11::sub_match<char const*> >(std::allocator<std::__cxx11::sub_match<char const*> > const&, std::allocator<std::__cxx11::sub_match<char const*> > const&) |
| test al, al |
| je .L1100 |
| mov eax, 1 |
| jmp .L1101 |
| .L1100: |
| mov eax, 0 |
| .L1101: |
| test al, al |
| je .L1102 |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::clear() |
| mov rax, QWORD PTR [rbp-56] |
| mov rdx, QWORD PTR [rbp-56] |
| mov rcx, QWORD PTR [rdx+16] |
| mov rdx, QWORD PTR [rbp-56] |
| mov rdx, QWORD PTR [rdx] |
| sub rcx, rdx |
| mov rdx, rcx |
| mov rcx, rdx |
| sar rcx, 3 |
| movabs rdx, -6148914691236517205 |
| imul rdx, rcx |
| mov rsi, rdx |
| mov rdx, QWORD PTR [rbp-56] |
| mov rcx, QWORD PTR [rdx] |
| mov rdx, rsi |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_deallocate(std::__cxx11::sub_match<char const*>*, unsigned long) |
| mov rax, QWORD PTR [rbp-56] |
| mov QWORD PTR [rax], 0 |
| mov rax, QWORD PTR [rbp-56] |
| mov QWORD PTR [rax+8], 0 |
| mov rax, QWORD PTR [rbp-56] |
| mov QWORD PTR [rax+16], 0 |
| .L1102: |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov rsi, rbx |
| mov rdi, rax |
| call void std::__alloc_on_copy<std::allocator<std::__cxx11::sub_match<char const*> > >(std::allocator<std::__cxx11::sub_match<char const*> >&, std::allocator<std::__cxx11::sub_match<char const*> > const&) |
| .L1099: |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| mov QWORD PTR [rbp-40], rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::capacity() const |
| cmp QWORD PTR [rbp-40], rax |
| seta al |
| test al, al |
| je .L1103 |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::end() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::begin() const |
| mov rdx, rax |
| mov rsi, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rbp-56] |
| mov rcx, rbx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_allocate_and_copy<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(unsigned long, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >) |
| mov QWORD PTR [rbp-48], rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rcx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-56] |
| mov rax, QWORD PTR [rax] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*> >(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&) |
| mov rax, QWORD PTR [rbp-56] |
| mov rdx, QWORD PTR [rbp-56] |
| mov rcx, QWORD PTR [rdx+16] |
| mov rdx, QWORD PTR [rbp-56] |
| mov rdx, QWORD PTR [rdx] |
| sub rcx, rdx |
| mov rdx, rcx |
| mov rcx, rdx |
| sar rcx, 3 |
| movabs rdx, -6148914691236517205 |
| imul rdx, rcx |
| mov rsi, rdx |
| mov rdx, QWORD PTR [rbp-56] |
| mov rcx, QWORD PTR [rdx] |
| mov rdx, rsi |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_deallocate(std::__cxx11::sub_match<char const*>*, unsigned long) |
| mov rax, QWORD PTR [rbp-56] |
| mov rdx, QWORD PTR [rbp-48] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-56] |
| mov rcx, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-40] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| lea rdx, [rcx+rax] |
| mov rax, QWORD PTR [rbp-56] |
| mov QWORD PTR [rax+16], rdx |
| jmp .L1104 |
| .L1103: |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| cmp QWORD PTR [rbp-40], rax |
| setbe al |
| test al, al |
| je .L1105 |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::end() |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::begin() |
| mov r14, rax |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::end() const |
| mov r13, rax |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::begin() const |
| mov rdx, r14 |
| mov rsi, r13 |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > std::copy<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >) |
| mov rdx, r12 |
| mov rsi, rbx |
| mov rdi, rax |
| call void std::_Destroy<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::__cxx11::sub_match<char const*> >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::__cxx11::sub_match<char const*> >&) |
| jmp .L1104 |
| .L1105: |
| mov rax, QWORD PTR [rbp-56] |
| mov rbx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-64] |
| mov r12, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| mov rdx, rax |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| lea rcx, [r12+rax] |
| mov rax, QWORD PTR [rbp-64] |
| mov rax, QWORD PTR [rax] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::copy<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*) |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov r14, rax |
| mov rax, QWORD PTR [rbp-56] |
| mov r12, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-64] |
| mov rbx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-64] |
| mov r13, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| mov rdx, rax |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| add rax, r13 |
| mov rcx, r14 |
| mov rdx, r12 |
| mov rsi, rbx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__uninitialized_copy_a<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*> >(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&) |
| .L1104: |
| mov rax, QWORD PTR [rbp-56] |
| mov rcx, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-40] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| lea rdx, [rcx+rax] |
| mov rax, QWORD PTR [rbp-56] |
| mov QWORD PTR [rax+8], rdx |
| .L1098: |
| mov rax, QWORD PTR [rbp-56] |
| add rsp, 32 |
| pop rbx |
| pop r12 |
| pop r13 |
| pop r14 |
| pop rbp |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-24], rdx |
| mov BYTE PTR [rbp-12], al |
| mov rax, QWORD PTR [rbp-8] |
| lea rdx, [rax+96] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_State_info<std::integral_constant<bool, true>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_M_visited(long) const |
| test al, al |
| jne .L1122 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov rdi, rax |
| call std::__detail::_State<char>::_M_opcode() const |
| cmp eax, 12 |
| ja .L1107 |
| mov eax, eax |
| mov rax, QWORD PTR .L1111[0+rax*8] |
| jmp rax |
| .L1111: |
| .quad .L1107 |
| .quad .L1121 |
| .quad .L1120 |
| .quad .L1119 |
| .quad .L1118 |
| .quad .L1117 |
| .quad .L1116 |
| .quad .L1115 |
| .quad .L1114 |
| .quad .L1113 |
| .quad .L1107 |
| .quad .L1112 |
| .quad .L1110 |
| .L1120: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_repeat(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| jmp .L1107 |
| .L1114: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_subexpr_begin(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| jmp .L1107 |
| .L1113: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_subexpr_end(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| jmp .L1107 |
| .L1118: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_line_begin_assertion(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| jmp .L1107 |
| .L1117: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_line_end_assertion(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| jmp .L1107 |
| .L1116: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_word_boundary(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| jmp .L1107 |
| .L1115: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_subexpr_lookahead(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| jmp .L1107 |
| .L1112: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_match(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| jmp .L1107 |
| .L1119: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_backref(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| jmp .L1107 |
| .L1110: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_accept(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| jmp .L1107 |
| .L1121: |
| mov rdx, QWORD PTR [rbp-24] |
| movzx ecx, BYTE PTR [rbp-12] |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_alternative(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| nop |
| jmp .L1107 |
| .L1122: |
| nop |
| .L1107: |
| leave |
| ret |
| std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, std::locale const&, std::regex_constants::syntax_option_type&>(std::_Sp_alloc_shared_tag<std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > >, std::locale const&, std::regex_constants::syntax_option_type&): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov QWORD PTR [rbp-48], rcx |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax], 0 |
| mov rax, QWORD PTR [rbp-24] |
| lea rbx, [rax+8] |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::regex_constants::syntax_option_type& std::forward<std::regex_constants::syntax_option_type&>(std::remove_reference<std::regex_constants::syntax_option_type&>::type&) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::locale const& std::forward<std::locale const&>(std::remove_reference<std::locale const&>::type&) |
| mov rcx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-32] |
| mov r8, r12 |
| mov rsi, rax |
| mov rdi, rbx |
| call std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, std::locale const&, std::regex_constants::syntax_option_type&>(std::__detail::_NFA<std::__cxx11::regex_traits<char> >*&, std::_Sp_alloc_shared_tag<std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > >, std::locale const&, std::regex_constants::syntax_option_type&) |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::enable_if<!std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2>::__has_esft_base<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, void>::value, void>::type std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2>::_M_enable_shared_from_this_with<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::__detail::_NFA<std::__cxx11::regex_traits<char> > >(std::__detail::_NFA<std::__cxx11::regex_traits<char> >*) |
| nop |
| add rsp, 32 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_erase(unsigned long, unsigned long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 56 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov QWORD PTR [rbp-56], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::length() const |
| sub rax, QWORD PTR [rbp-48] |
| sub rax, QWORD PTR [rbp-56] |
| mov QWORD PTR [rbp-24], rax |
| cmp QWORD PTR [rbp-24], 0 |
| je .L1125 |
| cmp QWORD PTR [rbp-56], 0 |
| je .L1125 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rcx, rax |
| mov rdx, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rbp-56] |
| add rax, rdx |
| lea rbx, [rcx+rax] |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-48] |
| lea rcx, [rdx+rax] |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, rax |
| mov rsi, rbx |
| mov rdi, rcx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_move(char*, char const*, unsigned long) |
| .L1125: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::length() const |
| sub rax, QWORD PTR [rbp-56] |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_set_length(unsigned long) |
| nop |
| add rsp, 56 |
| pop rbx |
| pop rbp |
| ret |
| .LC25: |
| .string "Unexpected end of character class." |
| std::__detail::_Scanner<char>::_M_eat_class(char): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-12], al |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 200 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::clear() |
| .L1128: |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| je .L1127 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+176] |
| movzx eax, BYTE PTR [rax] |
| cmp BYTE PTR [rbp-12], al |
| je .L1127 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-8] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| movsx eax, al |
| mov rdx, QWORD PTR [rbp-8] |
| add rdx, 200 |
| mov esi, eax |
| mov rdi, rdx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator+=(char) |
| jmp .L1128 |
| .L1127: |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| je .L1129 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-8] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| cmp BYTE PTR [rbp-12], al |
| jne .L1129 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+176] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+184] |
| cmp rdx, rax |
| je .L1129 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+176] |
| lea rcx, [rax+1] |
| mov rdx, QWORD PTR [rbp-8] |
| mov QWORD PTR [rdx+176], rcx |
| movzx eax, BYTE PTR [rax] |
| cmp al, 93 |
| je .L1130 |
| .L1129: |
| mov eax, 1 |
| jmp .L1131 |
| .L1130: |
| mov eax, 0 |
| .L1131: |
| test al, al |
| je .L1135 |
| cmp BYTE PTR [rbp-12], 58 |
| jne .L1133 |
| mov esi, OFFSET FLAT:.LC25 |
| mov edi, 1 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| jmp .L1135 |
| .L1133: |
| mov esi, OFFSET FLAT:.LC25 |
| mov edi, 0 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L1135: |
| nop |
| leave |
| ret |
| std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_Deque_impl::_Deque_impl() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::allocator() [base object constructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], 0 |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 16 |
| mov rdi, rax |
| call std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_Deque_iterator() [complete object constructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 48 |
| mov rdi, rax |
| call std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_Deque_iterator() [complete object constructor] |
| nop |
| leave |
| ret |
| std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_initialize_map(unsigned long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 72 |
| mov QWORD PTR [rbp-72], rdi |
| mov QWORD PTR [rbp-80], rsi |
| mov edi, 24 |
| call std::__deque_buf_size(unsigned long) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-80] |
| mov edx, 0 |
| div rbx |
| add rax, 1 |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-24] |
| add rax, 2 |
| mov QWORD PTR [rbp-56], rax |
| mov QWORD PTR [rbp-48], 8 |
| lea rdx, [rbp-56] |
| lea rax, [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call unsigned long const& std::max<unsigned long>(unsigned long const&, unsigned long const&) |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-72] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-72] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-72] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_allocate_map(unsigned long) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-72] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-72] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-72] |
| mov rax, QWORD PTR [rax+8] |
| sub rax, QWORD PTR [rbp-24] |
| shr rax |
| sal rax, 3 |
| add rax, rdx |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-24] |
| lea rdx, [0+rax*8] |
| mov rax, QWORD PTR [rbp-32] |
| add rax, rdx |
| mov QWORD PTR [rbp-40], rax |
| mov rdx, QWORD PTR [rbp-40] |
| mov rcx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-72] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_create_nodes(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**) |
| mov rax, QWORD PTR [rbp-72] |
| lea rdx, [rax+16] |
| mov rax, QWORD PTR [rbp-32] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_M_set_node(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**) |
| mov rax, QWORD PTR [rbp-72] |
| add rax, 48 |
| mov rdx, QWORD PTR [rbp-40] |
| sub rdx, 8 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_M_set_node(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**) |
| mov rax, QWORD PTR [rbp-72] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-72] |
| mov QWORD PTR [rax+16], rdx |
| mov rax, QWORD PTR [rbp-72] |
| mov rbx, QWORD PTR [rax+56] |
| mov edi, 24 |
| call std::__deque_buf_size(unsigned long) |
| mov rcx, rax |
| mov rax, QWORD PTR [rbp-80] |
| mov edx, 0 |
| div rcx |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| lea rdx, [rbx+rax] |
| mov rax, QWORD PTR [rbp-72] |
| mov QWORD PTR [rax+48], rdx |
| jmp .L1142 |
| mov rdi, rax |
| call __cxa_begin_catch |
| mov rax, QWORD PTR [rbp-72] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-72] |
| mov rcx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-72] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_deallocate_map(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**, unsigned long) |
| mov rax, QWORD PTR [rbp-72] |
| mov QWORD PTR [rax], 0 |
| mov rax, QWORD PTR [rbp-72] |
| mov QWORD PTR [rax+8], 0 |
| call __cxa_rethrow |
| mov rbx, rax |
| call __cxa_end_catch |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1142: |
| add rsp, 72 |
| pop rbx |
| pop rbp |
| ret |
| |
| unsigned long const& std::forward<unsigned long const&>(std::remove_reference<unsigned long const&>::type&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| void __gnu_cxx::new_allocator<unsigned long>::construct<unsigned long, unsigned long const&>(unsigned long*, unsigned long const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call unsigned long const& std::forward<unsigned long const&>(std::remove_reference<unsigned long const&>::type&) |
| mov rbx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-32] |
| mov rsi, rax |
| mov edi, 8 |
| call operator new(unsigned long, void*) |
| mov QWORD PTR [rax], rbx |
| nop |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::__normal_iterator(unsigned long* const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| nop |
| pop rbp |
| ret |
| std::vector<unsigned long, std::allocator<unsigned long> >::_M_check_len(unsigned long, char const*) const: |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 56 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov QWORD PTR [rbp-56], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::max_size() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::size() const |
| sub rbx, rax |
| mov rdx, rbx |
| mov rax, QWORD PTR [rbp-48] |
| cmp rdx, rax |
| setb al |
| test al, al |
| je .L1148 |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__throw_length_error(char const*) |
| .L1148: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::size() const |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::size() const |
| mov QWORD PTR [rbp-32], rax |
| lea rdx, [rbp-48] |
| lea rax, [rbp-32] |
| mov rsi, rdx |
| mov rdi, rax |
| call unsigned long const& std::max<unsigned long>(unsigned long const&, unsigned long const&) |
| mov rax, QWORD PTR [rax] |
| add rax, rbx |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::size() const |
| cmp QWORD PTR [rbp-24], rax |
| jb .L1149 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::max_size() const |
| cmp QWORD PTR [rbp-24], rax |
| jbe .L1150 |
| .L1149: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::max_size() const |
| jmp .L1151 |
| .L1150: |
| mov rax, QWORD PTR [rbp-24] |
| .L1151: |
| add rsp, 56 |
| pop rbx |
| pop rbp |
| ret |
| std::vector<unsigned long, std::allocator<unsigned long> >::begin(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::__normal_iterator(unsigned long* const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::difference_type __gnu_cxx::operator-<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >(__gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > > const&, __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::base() const |
| mov rbx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::base() const |
| mov rax, QWORD PTR [rax] |
| sub rbx, rax |
| mov rax, rbx |
| sar rax, 3 |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_M_allocate(unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| cmp QWORD PTR [rbp-16], 0 |
| je .L1158 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<unsigned long> >::allocate(std::allocator<unsigned long>&, unsigned long) |
| jmp .L1160 |
| .L1158: |
| mov eax, 0 |
| .L1160: |
| leave |
| ret |
| __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::base() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| unsigned long* std::__uninitialized_move_if_noexcept_a<unsigned long*, unsigned long*, std::allocator<unsigned long> >(unsigned long*, unsigned long*, unsigned long*, std::allocator<unsigned long>&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov QWORD PTR [rbp-48], rcx |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::move_iterator<unsigned long*> std::__make_move_if_noexcept_iterator<unsigned long, std::move_iterator<unsigned long*> >(unsigned long*) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::move_iterator<unsigned long*> std::__make_move_if_noexcept_iterator<unsigned long, std::move_iterator<unsigned long*> >(unsigned long*) |
| mov rdi, rax |
| mov rdx, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rbp-40] |
| mov rcx, rdx |
| mov rdx, rax |
| mov rsi, rbx |
| call unsigned long* std::__uninitialized_copy_a<std::move_iterator<unsigned long*>, unsigned long*, unsigned long>(std::move_iterator<unsigned long*>, std::move_iterator<unsigned long*>, unsigned long*, std::allocator<unsigned long>&) |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_State<char>& std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::emplace_back<std::__detail::_State<char> >(std::__detail::_State<char>&&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+16] |
| cmp rdx, rax |
| je .L1166 |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::__detail::_State<char>&& std::forward<std::__detail::_State<char> >(std::remove_reference<std::__detail::_State<char> >::type&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<std::__detail::_State<char> > >::construct<std::__detail::_State<char>, std::__detail::_State<char> >(std::allocator<std::__detail::_State<char> >&, std::__detail::_State<char>*, std::__detail::_State<char>&&) |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+8] |
| lea rdx, [rax+48] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+8], rdx |
| jmp .L1167 |
| .L1166: |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::__detail::_State<char>&& std::forward<std::__detail::_State<char> >(std::remove_reference<std::__detail::_State<char> >::type&) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::end() |
| mov rcx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::_M_realloc_insert<std::__detail::_State<char> >(__gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >, std::__detail::_State<char>&&) |
| .L1167: |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::back() |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::function<bool (char)>::swap(std::function<bool (char)>&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<std::_Any_data> >, std::is_move_constructible<std::_Any_data>, std::is_move_assignable<std::_Any_data> >::value, void>::type std::swap<std::_Any_data>(std::_Any_data&, std::_Any_data&) |
| mov rax, QWORD PTR [rbp-16] |
| lea rdx, [rax+16] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 16 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<bool (*)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)> >, std::is_move_constructible<bool (*)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>, std::is_move_assignable<bool (*)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)> >::value, void>::type std::swap<bool (*)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>(bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation), bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)) |
| mov rax, QWORD PTR [rbp-16] |
| lea rdx, [rax+24] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 24 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<bool (*)(std::_Any_data const&, char&&)> >, std::is_move_constructible<bool (*)(std::_Any_data const&, char&&)>, std::is_move_assignable<bool (*)(std::_Any_data const&, char&&)> >::value, void>::type std::swap<bool (*)(std::_Any_data const&, char&&)>(bool (*&)(std::_Any_data const&, char&&), bool (*&)(std::_Any_data const&, char&&)) |
| nop |
| leave |
| ret |
| .LC26: |
| .string "Parenthesis is not closed." |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_assertion(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 176 |
| mov QWORD PTR [rbp-184], rdi |
| mov rax, QWORD PTR [rbp-184] |
| mov esi, 22 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1171 |
| mov rax, QWORD PTR [rbp-184] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_line_begin() |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-144] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-144] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| jmp .L1172 |
| .L1171: |
| mov rax, QWORD PTR [rbp-184] |
| mov esi, 23 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1173 |
| mov rax, QWORD PTR [rbp-184] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_line_end() |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-112] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-112] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| jmp .L1172 |
| .L1173: |
| mov rax, QWORD PTR [rbp-184] |
| mov esi, 24 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1174 |
| mov rax, QWORD PTR [rbp-184] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 272 |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) |
| movzx eax, BYTE PTR [rax] |
| cmp al, 110 |
| sete al |
| movzx eax, al |
| mov esi, eax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_word_bound(bool) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-80] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-80] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| jmp .L1172 |
| .L1174: |
| mov rax, QWORD PTR [rbp-184] |
| mov esi, 7 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1175 |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 272 |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) |
| movzx eax, BYTE PTR [rax] |
| cmp al, 110 |
| sete al |
| mov BYTE PTR [rbp-17], al |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_disjunction() |
| mov rax, QWORD PTR [rbp-184] |
| mov esi, 8 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| xor eax, 1 |
| test al, al |
| je .L1176 |
| mov esi, OFFSET FLAT:.LC26 |
| mov edi, 5 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L1176: |
| lea rax, [rbp-176] |
| mov rdx, QWORD PTR [rbp-184] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_pop() |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_accept() |
| mov rdx, rax |
| lea rax, [rbp-176] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(long) |
| mov rax, QWORD PTR [rbp-184] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rcx, rax |
| movzx edx, BYTE PTR [rbp-17] |
| mov rax, QWORD PTR [rbp-168] |
| mov rsi, rax |
| mov rdi, rcx |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_lookahead(long, bool) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-48] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-48] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| jmp .L1172 |
| .L1175: |
| mov eax, 0 |
| jmp .L1177 |
| .L1172: |
| mov eax, 1 |
| .L1177: |
| add rsp, 176 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_atom(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 176 |
| mov QWORD PTR [rbp-184], rdi |
| mov rax, QWORD PTR [rbp-184] |
| mov esi, 0 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1179 |
| mov rax, QWORD PTR [rbp-184] |
| mov eax, DWORD PTR [rax] |
| mov esi, 16 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1180 |
| mov rax, QWORD PTR [rbp-184] |
| mov eax, DWORD PTR [rax] |
| mov esi, 1 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1181 |
| mov rax, QWORD PTR [rbp-184] |
| mov eax, DWORD PTR [rax] |
| mov esi, 8 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1182 |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_posix<false, false>() |
| jmp .L1191 |
| .L1182: |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_posix<false, true>() |
| jmp .L1191 |
| .L1181: |
| mov rax, QWORD PTR [rbp-184] |
| mov eax, DWORD PTR [rax] |
| mov esi, 8 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1185 |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_posix<true, false>() |
| jmp .L1191 |
| .L1185: |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_posix<true, true>() |
| jmp .L1191 |
| .L1180: |
| mov rax, QWORD PTR [rbp-184] |
| mov eax, DWORD PTR [rax] |
| mov esi, 1 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1187 |
| mov rax, QWORD PTR [rbp-184] |
| mov eax, DWORD PTR [rax] |
| mov esi, 8 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1188 |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_ecma<false, false>() |
| jmp .L1191 |
| .L1188: |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_ecma<false, true>() |
| jmp .L1191 |
| .L1187: |
| mov rax, QWORD PTR [rbp-184] |
| mov eax, DWORD PTR [rax] |
| mov esi, 8 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1190 |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_ecma<true, false>() |
| jmp .L1191 |
| .L1190: |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_ecma<true, true>() |
| jmp .L1191 |
| .L1179: |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_try_char() |
| test al, al |
| je .L1192 |
| mov rax, QWORD PTR [rbp-184] |
| mov eax, DWORD PTR [rax] |
| mov esi, 1 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1193 |
| mov rax, QWORD PTR [rbp-184] |
| mov eax, DWORD PTR [rax] |
| mov esi, 8 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1194 |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_char_matcher<false, false>() |
| jmp .L1191 |
| .L1194: |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_char_matcher<false, true>() |
| jmp .L1191 |
| .L1193: |
| mov rax, QWORD PTR [rbp-184] |
| mov eax, DWORD PTR [rax] |
| mov esi, 8 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1197 |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_char_matcher<true, false>() |
| jmp .L1191 |
| .L1197: |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_char_matcher<true, true>() |
| jmp .L1191 |
| .L1192: |
| mov rax, QWORD PTR [rbp-184] |
| mov esi, 4 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1198 |
| mov rax, QWORD PTR [rbp-184] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-184] |
| mov esi, 10 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_cur_int_value(int) |
| cdqe |
| mov rsi, rax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_backref(unsigned long) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-112] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-112] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| jmp .L1191 |
| .L1198: |
| mov rax, QWORD PTR [rbp-184] |
| mov esi, 14 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1199 |
| mov rax, QWORD PTR [rbp-184] |
| mov eax, DWORD PTR [rax] |
| mov esi, 1 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1200 |
| mov rax, QWORD PTR [rbp-184] |
| mov eax, DWORD PTR [rax] |
| mov esi, 8 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1201 |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_character_class_matcher<false, false>() |
| jmp .L1191 |
| .L1201: |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_character_class_matcher<false, true>() |
| jmp .L1191 |
| .L1200: |
| mov rax, QWORD PTR [rbp-184] |
| mov eax, DWORD PTR [rax] |
| mov esi, 8 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1204 |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_character_class_matcher<true, false>() |
| jmp .L1191 |
| .L1204: |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_character_class_matcher<true, true>() |
| jmp .L1191 |
| .L1199: |
| mov rax, QWORD PTR [rbp-184] |
| mov esi, 6 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1205 |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_dummy() |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-144] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_disjunction() |
| mov rax, QWORD PTR [rbp-184] |
| mov esi, 8 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| xor eax, 1 |
| test al, al |
| je .L1206 |
| mov esi, OFFSET FLAT:.LC26 |
| mov edi, 5 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L1206: |
| lea rax, [rbp-80] |
| mov rdx, QWORD PTR [rbp-184] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_pop() |
| lea rdx, [rbp-80] |
| lea rax, [rbp-144] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| mov rax, QWORD PTR [rbp-184] |
| lea rdx, [rax+304] |
| lea rax, [rbp-144] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| jmp .L1191 |
| .L1205: |
| mov rax, QWORD PTR [rbp-184] |
| mov esi, 5 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1207 |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_subexpr_begin() |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-176] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_disjunction() |
| mov rax, QWORD PTR [rbp-184] |
| mov esi, 8 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| xor eax, 1 |
| test al, al |
| je .L1208 |
| mov esi, OFFSET FLAT:.LC26 |
| mov edi, 5 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L1208: |
| lea rax, [rbp-48] |
| mov rdx, QWORD PTR [rbp-184] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_pop() |
| lea rdx, [rbp-48] |
| lea rax, [rbp-176] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| mov rax, QWORD PTR [rbp-184] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_subexpr_end() |
| mov rdx, rax |
| lea rax, [rbp-176] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(long) |
| mov rax, QWORD PTR [rbp-184] |
| lea rdx, [rax+304] |
| lea rax, [rbp-176] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| jmp .L1191 |
| .L1207: |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_bracket_expression() |
| xor eax, 1 |
| test al, al |
| je .L1191 |
| mov eax, 0 |
| jmp .L1209 |
| .L1191: |
| mov eax, 1 |
| .L1209: |
| add rsp, 176 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| .LC27: |
| .string "Nothing to repeat before a quantifier." |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_quantifier()::{lambda()#1}::operator()() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| add rax, 304 |
| mov rdi, rax |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::empty() const |
| test al, al |
| je .L1211 |
| mov esi, OFFSET FLAT:.LC27 |
| mov edi, 10 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L1211: |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+8] |
| movzx eax, BYTE PTR [rax] |
| test al, al |
| je .L1212 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| mov esi, 18 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1212 |
| mov edx, 1 |
| jmp .L1213 |
| .L1212: |
| mov edx, 0 |
| .L1213: |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+8] |
| mov BYTE PTR [rax], dl |
| nop |
| leave |
| ret |
| std::stack<long, std::deque<long, std::allocator<long> > >::~stack() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::deque<long, std::allocator<long> >::~deque() [complete object destructor] |
| nop |
| leave |
| ret |
| .LC28: |
| .string "Unexpected token in brace expression." |
| .LC29: |
| .string "Unexpected end of brace expression." |
| .LC30: |
| .string "Invalid range in brace expression." |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_quantifier(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 592 |
| mov QWORD PTR [rbp-600], rdi |
| mov rax, QWORD PTR [rbp-600] |
| mov eax, DWORD PTR [rax] |
| mov esi, 16 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| setne al |
| mov BYTE PTR [rbp-145], al |
| mov rax, QWORD PTR [rbp-600] |
| mov QWORD PTR [rbp-176], rax |
| lea rax, [rbp-145] |
| mov QWORD PTR [rbp-168], rax |
| mov rax, QWORD PTR [rbp-600] |
| mov esi, 20 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1216 |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_quantifier()::{lambda()#1}::operator()() const |
| lea rax, [rbp-208] |
| mov rdx, QWORD PTR [rbp-600] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_pop() |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| movzx eax, BYTE PTR [rbp-145] |
| movzx edx, al |
| mov rax, QWORD PTR [rbp-200] |
| mov ecx, edx |
| mov rdx, rax |
| mov rsi, -1 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_repeat(long, long, bool) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-240] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rdx, [rbp-240] |
| lea rax, [rbp-208] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| mov rax, QWORD PTR [rbp-600] |
| lea rdx, [rax+304] |
| lea rax, [rbp-240] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| jmp .L1217 |
| .L1216: |
| mov rax, QWORD PTR [rbp-600] |
| mov esi, 21 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1218 |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_quantifier()::{lambda()#1}::operator()() const |
| lea rax, [rbp-272] |
| mov rdx, QWORD PTR [rbp-600] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_pop() |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| movzx eax, BYTE PTR [rbp-145] |
| movzx edx, al |
| mov rax, QWORD PTR [rbp-264] |
| mov ecx, edx |
| mov rdx, rax |
| mov rsi, -1 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_repeat(long, long, bool) |
| mov rdx, rax |
| lea rax, [rbp-272] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(long) |
| mov rax, QWORD PTR [rbp-600] |
| lea rdx, [rax+304] |
| lea rax, [rbp-272] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| jmp .L1217 |
| .L1218: |
| mov rax, QWORD PTR [rbp-600] |
| mov esi, 18 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1219 |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_quantifier()::{lambda()#1}::operator()() const |
| lea rax, [rbp-304] |
| mov rdx, QWORD PTR [rbp-600] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_pop() |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_dummy() |
| mov QWORD PTR [rbp-56], rax |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| movzx eax, BYTE PTR [rbp-145] |
| movzx edx, al |
| mov rax, QWORD PTR [rbp-296] |
| mov ecx, edx |
| mov rdx, rax |
| mov rsi, -1 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_repeat(long, long, bool) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-336] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| mov rdx, QWORD PTR [rbp-56] |
| lea rax, [rbp-304] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(long) |
| mov rdx, QWORD PTR [rbp-56] |
| lea rax, [rbp-336] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(long) |
| mov rax, QWORD PTR [rbp-600] |
| lea rdx, [rax+304] |
| lea rax, [rbp-336] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| jmp .L1217 |
| .L1219: |
| mov rax, QWORD PTR [rbp-600] |
| mov esi, 12 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1220 |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 304 |
| mov rdi, rax |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::empty() const |
| test al, al |
| je .L1221 |
| mov esi, OFFSET FLAT:.LC27 |
| mov edi, 10 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L1221: |
| mov rax, QWORD PTR [rbp-600] |
| mov esi, 26 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| xor eax, 1 |
| test al, al |
| je .L1222 |
| mov esi, OFFSET FLAT:.LC28 |
| mov edi, 7 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L1222: |
| lea rax, [rbp-368] |
| mov rdx, QWORD PTR [rbp-600] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_pop() |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_dummy() |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-400] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| mov rax, QWORD PTR [rbp-600] |
| mov esi, 10 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_cur_int_value(int) |
| cdqe |
| mov QWORD PTR [rbp-64], rax |
| mov BYTE PTR [rbp-17], 0 |
| mov rax, QWORD PTR [rbp-600] |
| mov esi, 25 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1223 |
| mov rax, QWORD PTR [rbp-600] |
| mov esi, 26 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1224 |
| mov rax, QWORD PTR [rbp-600] |
| mov esi, 10 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_cur_int_value(int) |
| cdqe |
| sub rax, QWORD PTR [rbp-64] |
| mov QWORD PTR [rbp-32], rax |
| jmp .L1226 |
| .L1224: |
| mov BYTE PTR [rbp-17], 1 |
| jmp .L1226 |
| .L1223: |
| mov QWORD PTR [rbp-32], 0 |
| .L1226: |
| mov rax, QWORD PTR [rbp-600] |
| mov esi, 13 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| xor eax, 1 |
| test al, al |
| je .L1227 |
| mov esi, OFFSET FLAT:.LC29 |
| mov edi, 6 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L1227: |
| movzx eax, BYTE PTR [rbp-145] |
| test al, al |
| je .L1228 |
| mov rax, QWORD PTR [rbp-600] |
| mov esi, 18 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1228 |
| mov eax, 1 |
| jmp .L1229 |
| .L1228: |
| mov eax, 0 |
| .L1229: |
| mov BYTE PTR [rbp-145], al |
| mov QWORD PTR [rbp-40], 0 |
| .L1231: |
| mov rax, QWORD PTR [rbp-40] |
| cmp rax, QWORD PTR [rbp-64] |
| jge .L1230 |
| lea rax, [rbp-144] |
| lea rdx, [rbp-368] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_clone() |
| lea rdx, [rbp-144] |
| lea rax, [rbp-400] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| add QWORD PTR [rbp-40], 1 |
| jmp .L1231 |
| .L1230: |
| cmp BYTE PTR [rbp-17], 0 |
| je .L1232 |
| lea rax, [rbp-432] |
| lea rdx, [rbp-368] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_clone() |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| movzx eax, BYTE PTR [rbp-145] |
| movzx edx, al |
| mov rax, QWORD PTR [rbp-424] |
| mov ecx, edx |
| mov rdx, rax |
| mov rsi, -1 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_repeat(long, long, bool) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-464] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rdx, [rbp-464] |
| lea rax, [rbp-432] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| lea rdx, [rbp-464] |
| lea rax, [rbp-400] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| jmp .L1233 |
| .L1232: |
| cmp QWORD PTR [rbp-32], 0 |
| jns .L1234 |
| mov esi, OFFSET FLAT:.LC30 |
| mov edi, 7 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L1234: |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_dummy() |
| mov QWORD PTR [rbp-72], rax |
| lea rax, [rbp-592] |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::stack<std::deque<long, std::allocator<long> >, void>() |
| mov QWORD PTR [rbp-48], 0 |
| .L1236: |
| mov rax, QWORD PTR [rbp-48] |
| cmp rax, QWORD PTR [rbp-32] |
| jge .L1235 |
| lea rax, [rbp-496] |
| lea rdx, [rbp-368] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_clone() |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov rdi, rax |
| movzx eax, BYTE PTR [rbp-145] |
| movzx ecx, al |
| mov rax, QWORD PTR [rbp-488] |
| mov rdx, QWORD PTR [rbp-72] |
| mov rsi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_repeat(long, long, bool) |
| mov QWORD PTR [rbp-504], rax |
| lea rdx, [rbp-504] |
| lea rax, [rbp-592] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::push(long const&) |
| mov r12, QWORD PTR [rbp-480] |
| mov rbx, QWORD PTR [rbp-504] |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rsi, rax |
| lea rax, [rbp-112] |
| mov rcx, r12 |
| mov rdx, rbx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long, long) |
| lea rdx, [rbp-112] |
| lea rax, [rbp-400] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| add QWORD PTR [rbp-48], 1 |
| jmp .L1236 |
| .L1235: |
| mov rdx, QWORD PTR [rbp-72] |
| lea rax, [rbp-400] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_append(long) |
| .L1238: |
| lea rax, [rbp-592] |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::empty() const |
| xor eax, 1 |
| test al, al |
| je .L1237 |
| mov rax, QWORD PTR [rbp-600] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| lea rbx, [rax+56] |
| lea rax, [rbp-592] |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::top() |
| mov rax, QWORD PTR [rax] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) |
| mov QWORD PTR [rbp-80], rax |
| lea rax, [rbp-592] |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::pop() |
| mov rax, QWORD PTR [rbp-80] |
| lea rdx, [rax+16] |
| mov rax, QWORD PTR [rbp-80] |
| add rax, 8 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<long> >, std::is_move_constructible<long>, std::is_move_assignable<long> >::value, void>::type std::swap<long>(long&, long&) |
| jmp .L1238 |
| .L1237: |
| lea rax, [rbp-592] |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::~stack() [complete object destructor] |
| .L1233: |
| mov rax, QWORD PTR [rbp-600] |
| lea rdx, [rax+304] |
| lea rax, [rbp-400] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| jmp .L1217 |
| .L1220: |
| mov eax, 0 |
| jmp .L1243 |
| .L1217: |
| mov eax, 1 |
| jmp .L1243 |
| mov rbx, rax |
| lea rax, [rbp-592] |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::~stack() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1243: |
| add rsp, 592 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::push_back(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+48] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+64] |
| sub rax, 24 |
| cmp rdx, rax |
| je .L1245 |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax+48] |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::construct<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&>(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+48] |
| lea rdx, [rax+24] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+48], rdx |
| jmp .L1247 |
| .L1245: |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_push_back_aux<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&>(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| .L1247: |
| nop |
| leave |
| ret |
| std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >& std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::emplace_back<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+48] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+64] |
| sub rax, 24 |
| cmp rdx, rax |
| je .L1249 |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&& std::forward<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::remove_reference<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::type&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax+48] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::construct<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+48] |
| lea rdx, [rax+24] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+48], rdx |
| jmp .L1250 |
| .L1249: |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&& std::forward<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::remove_reference<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::type&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_push_back_aux<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| .L1250: |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::back() |
| leave |
| ret |
| std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::operator--(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+8] |
| cmp rdx, rax |
| jne .L1253 |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+24] |
| lea rdx, [rax-8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_M_set_node(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| .L1253: |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| lea rdx, [rax-24] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::operator*() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| pop rbp |
| ret |
| void std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::destroy<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::destroy<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*) |
| nop |
| leave |
| ret |
| std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_pop_back_aux(): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rdx+56] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_deallocate_node(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*) |
| mov rax, QWORD PTR [rbp-24] |
| lea rdx, [rax+48] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+72] |
| sub rax, 8 |
| mov rsi, rax |
| mov rdi, rdx |
| call std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_M_set_node(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**) |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+64] |
| lea rdx, [rax-24] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+48], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rbx, QWORD PTR [rax+48] |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_get_Tp_allocator() |
| mov rsi, rbx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::destroy<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*) |
| nop |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| void __gnu_cxx::new_allocator<unsigned long>::destroy<unsigned long>(unsigned long*): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| nop |
| pop rbp |
| ret |
| std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::deallocate(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::deallocate(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*, unsigned long) |
| nop |
| leave |
| ret |
| std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_get_Tp_allocator() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::new_allocator() [base object constructor] |
| nop |
| leave |
| ret |
| __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::~new_allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::deallocate(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call operator delete(void*) |
| leave |
| ret |
| std::allocator_traits<std::allocator<std::__cxx11::sub_match<char const*> > >::max_size(std::allocator<std::__cxx11::sub_match<char const*> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> >::max_size() const |
| leave |
| ret |
| std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::__cxx11::sub_match<char const*>* std::__uninitialized_default_n<std::__cxx11::sub_match<char const*>*, unsigned long>(std::__cxx11::sub_match<char const*>*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov BYTE PTR [rbp-1], 1 |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__uninitialized_default_n_1<false>::__uninit_default_n<std::__cxx11::sub_match<char const*>*, unsigned long>(std::__cxx11::sub_match<char const*>*, unsigned long) |
| leave |
| ret |
| std::allocator_traits<std::allocator<std::__cxx11::sub_match<char const*> > >::allocate(std::allocator<std::__cxx11::sub_match<char const*> >&, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov edx, 0 |
| mov rsi, rcx |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> >::allocate(unsigned long, void const*) |
| leave |
| ret |
| std::move_iterator<std::__cxx11::sub_match<char const*>*> std::__make_move_if_noexcept_iterator<std::__cxx11::sub_match<char const*>, std::move_iterator<std::__cxx11::sub_match<char const*>*> >(std::__cxx11::sub_match<char const*>*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::move_iterator<std::__cxx11::sub_match<char const*>*>::move_iterator(std::__cxx11::sub_match<char const*>*) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::__cxx11::sub_match<char const*>* std::__uninitialized_copy_a<std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*> >(std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov QWORD PTR [rbp-32], rcx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::uninitialized_copy<std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::__cxx11::sub_match<char const*>*>(std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::__cxx11::sub_match<char const*>*) |
| leave |
| ret |
| std::allocator<std::pair<char const*, int> >::allocator(std::allocator<std::pair<char const*, int> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::pair<char const*, int> >::new_allocator(__gnu_cxx::new_allocator<std::pair<char const*, int> > const&) |
| nop |
| leave |
| ret |
| std::_Vector_base<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::_M_allocate(unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| cmp QWORD PTR [rbp-16], 0 |
| je .L1281 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<std::pair<char const*, int> > >::allocate(std::allocator<std::pair<char const*, int> >&, unsigned long) |
| jmp .L1283 |
| .L1281: |
| mov eax, 0 |
| .L1283: |
| leave |
| ret |
| std::pair<char const*, int>* std::__uninitialized_default_n<std::pair<char const*, int>*, unsigned long>(std::pair<char const*, int>*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov BYTE PTR [rbp-1], 1 |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::pair<char const*, int>* std::__uninitialized_default_n_1<false>::__uninit_default_n<std::pair<char const*, int>*, unsigned long>(std::pair<char const*, int>*, unsigned long) |
| leave |
| ret |
| std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_impl::_Vector_impl() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >::allocator() [base object constructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+16], 0 |
| nop |
| leave |
| ret |
| std::tuple<bool*, std::default_delete<bool []> >::tuple<bool*, std::default_delete<bool []>, true>(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Tuple_impl<0ul, bool*, std::default_delete<bool []> >::_Tuple_impl() [base object constructor] |
| nop |
| leave |
| ret |
| __gnu_cxx::new_allocator<std::pair<char const*, int> >::deallocate(std::pair<char const*, int>*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call operator delete(void*) |
| leave |
| ret |
| __gnu_cxx::new_allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >::deallocate(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call operator delete(void*) |
| leave |
| ret |
| std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >* std::__addressof<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::~pair() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~vector() [complete object destructor] |
| nop |
| leave |
| ret |
| void std::_Destroy<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::~pair() [complete object destructor] |
| nop |
| leave |
| ret |
| std::_Tuple_impl<0ul, bool*, std::default_delete<bool []> >::_M_head(std::_Tuple_impl<0ul, bool*, std::default_delete<bool []> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Head_base<0ul, bool*, false>::_M_head(std::_Head_base<0ul, bool*, false>&) |
| leave |
| ret |
| std::default_delete<bool []>& std::__get_helper<1ul, std::default_delete<bool []>>(std::_Tuple_impl<1ul, std::default_delete<bool []>>&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Tuple_impl<1ul, std::default_delete<bool []> >::_M_head(std::_Tuple_impl<1ul, std::default_delete<bool []> >&) |
| leave |
| ret |
| std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >& std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::emplace_back<long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>(long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+16] |
| cmp rdx, rax |
| je .L1301 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const& std::forward<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>(std::remove_reference<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>::type&) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call long& std::forward<long&>(std::remove_reference<long&>::type&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-24] |
| mov rcx, rbx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::construct<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>(std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&) |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+8] |
| lea rdx, [rax+32] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+8], rdx |
| jmp .L1302 |
| .L1301: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const& std::forward<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>(std::remove_reference<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>::type&) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call long& std::forward<long&>(std::remove_reference<long&>::type&) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::end() |
| mov rsi, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rcx, r12 |
| mov rdx, rbx |
| mov rdi, rax |
| call void std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_realloc_insert<long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>(__gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >, long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&) |
| .L1302: |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::back() |
| add rsp, 32 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::begin() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-8], rax |
| lea rdx, [rbp-8] |
| lea rax, [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::__normal_iterator(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const* const&) |
| mov rax, QWORD PTR [rbp-16] |
| leave |
| ret |
| std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::end() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+8] |
| mov QWORD PTR [rbp-8], rax |
| lea rdx, [rbp-8] |
| lea rax, [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::__normal_iterator(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const* const&) |
| mov rax, QWORD PTR [rbp-16] |
| leave |
| ret |
| bool __gnu_cxx::operator==<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >(__gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > > const&, __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::base() const |
| mov rbx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::base() const |
| mov rax, QWORD PTR [rax] |
| cmp rbx, rax |
| sete al |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::__uniq_ptr_impl<bool, std::default_delete<bool []> >::_M_ptr() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::tuple_element<0ul, std::tuple<bool*, std::default_delete<bool []> > >::type const& std::get<0ul, bool*, std::default_delete<bool []> >(std::tuple<bool*, std::default_delete<bool []> > const&) |
| mov rax, QWORD PTR [rax] |
| leave |
| ret |
| bool* std::__niter_base<bool*>(bool*): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| __gnu_cxx::__enable_if<std::__is_scalar<bool>::__value, bool*>::__type std::__fill_n_a<bool*, unsigned long, bool>(bool*, unsigned long, bool const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rbp-40] |
| movzx eax, BYTE PTR [rax] |
| mov BYTE PTR [rbp-9], al |
| mov rax, QWORD PTR [rbp-32] |
| mov QWORD PTR [rbp-8], rax |
| .L1316: |
| cmp QWORD PTR [rbp-8], 0 |
| je .L1315 |
| mov rax, QWORD PTR [rbp-24] |
| movzx edx, BYTE PTR [rbp-9] |
| mov BYTE PTR [rax], dl |
| sub QWORD PTR [rbp-8], 1 |
| add QWORD PTR [rbp-24], 1 |
| jmp .L1316 |
| .L1315: |
| mov rax, QWORD PTR [rbp-24] |
| pop rbp |
| ret |
| std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_base(std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >&&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rbx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_get_Tp_allocator() |
| mov rdi, rax |
| call std::remove_reference<std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&>::type&& std::move<std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&>(std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&) |
| mov rsi, rax |
| mov rdi, rbx |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_impl::_Vector_impl(std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&&) |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-32] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_impl::_M_swap_data(std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_impl&) |
| nop |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::__normal_iterator(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >* const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::base() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_move_assign(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&&, std::integral_constant<bool, true>): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 56 |
| mov QWORD PTR [rbp-56], rdi |
| mov QWORD PTR [rbp-64], rsi |
| mov rdx, QWORD PTR [rbp-56] |
| lea rax, [rbp-17] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::get_allocator() const |
| lea rdx, [rbp-17] |
| lea rax, [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::vector(std::allocator<std::__cxx11::sub_match<char const*> > const&) |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::__cxx11::sub_match<char const*> >::~allocator() [complete object destructor] |
| mov rax, QWORD PTR [rbp-56] |
| lea rdx, [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_impl::_M_swap_data(std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_impl&) |
| mov rax, QWORD PTR [rbp-56] |
| mov rdx, QWORD PTR [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_impl::_M_swap_data(std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_impl&) |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov rsi, rbx |
| mov rdi, rax |
| call void std::__alloc_on_move<std::allocator<std::__cxx11::sub_match<char const*> > >(std::allocator<std::__cxx11::sub_match<char const*> >&, std::allocator<std::__cxx11::sub_match<char const*> >&) |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~vector() [complete object destructor] |
| nop |
| add rsp, 56 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_State_info<std::integral_constant<bool, false>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_M_visited(long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| lea rdx, [rax+24] |
| mov rax, QWORD PTR [rbp-16] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::unique_ptr<bool [], std::default_delete<bool []> >::operator[](unsigned long) const |
| movzx eax, BYTE PTR [rax] |
| test al, al |
| je .L1324 |
| mov eax, 1 |
| jmp .L1325 |
| .L1324: |
| mov rax, QWORD PTR [rbp-8] |
| lea rdx, [rax+24] |
| mov rax, QWORD PTR [rbp-16] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::unique_ptr<bool [], std::default_delete<bool []> >::operator[](unsigned long) const |
| mov BYTE PTR [rax], 1 |
| mov eax, 0 |
| .L1325: |
| leave |
| ret |
| std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rcx, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 4 |
| add rax, rcx |
| pop rbp |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_repeat(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-8] |
| movzx eax, BYTE PTR [rax+24] |
| xor eax, 1 |
| test al, al |
| je .L1329 |
| mov rdx, QWORD PTR [rbp-40] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_rep_once_more(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| jmp .L1331 |
| .L1329: |
| mov rax, QWORD PTR [rbp-24] |
| movzx eax, BYTE PTR [rax+140] |
| xor eax, 1 |
| test al, al |
| je .L1331 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-24] |
| movzx eax, BYTE PTR [rax+140] |
| xor eax, 1 |
| test al, al |
| je .L1331 |
| mov rdx, QWORD PTR [rbp-40] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_rep_once_more(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| .L1331: |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_subexpr_begin(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 64 |
| mov QWORD PTR [rbp-40], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-56], rdx |
| mov BYTE PTR [rbp-44], al |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rdx+16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| mov QWORD PTR [rbp-16], rax |
| mov rax, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-44] |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax], rdx |
| nop |
| leave |
| ret |
| std::__cxx11::sub_match<char const*>::operator=(std::__cxx11::sub_match<char const*> const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::pair<char const*, char const*>::operator=(std::pair<char const*, char const*> const&) |
| mov rax, QWORD PTR [rbp-16] |
| movzx edx, BYTE PTR [rax+16] |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+16], dl |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_subexpr_end(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 80 |
| mov QWORD PTR [rbp-56], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-72], rdx |
| mov BYTE PTR [rbp-60], al |
| mov rax, QWORD PTR [rbp-56] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-72] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdx, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rdx+16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| mov QWORD PTR [rbp-16], rax |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rcx] |
| mov rdx, QWORD PTR [rcx+8] |
| mov QWORD PTR [rbp-48], rax |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rcx+16] |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov BYTE PTR [rax+16], 1 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-60] |
| mov rax, QWORD PTR [rbp-56] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| lea rdx, [rbp-48] |
| mov rax, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>::operator=(std::__cxx11::sub_match<char const*> const&) |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_line_begin_assertion(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_at_begin() const |
| test al, al |
| je .L1338 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| .L1338: |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_line_end_assertion(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_at_end() const |
| test al, al |
| je .L1341 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| .L1341: |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_word_boundary(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_word_boundary() const |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-8] |
| movzx eax, BYTE PTR [rax+24] |
| xor eax, 1 |
| cmp dl, al |
| sete al |
| test al, al |
| je .L1344 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| .L1344: |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_subexpr_lookahead(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_lookahead(long) |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-8] |
| movzx eax, BYTE PTR [rax+24] |
| xor eax, 1 |
| cmp dl, al |
| sete al |
| test al, al |
| je .L1347 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| .L1347: |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_match(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+40] |
| cmp rdx, rax |
| je .L1351 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+24] |
| movzx eax, BYTE PTR [rax] |
| movsx edx, al |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, edx |
| mov rdi, rax |
| call std::__detail::_State<char>::_M_matches(char) const |
| test al, al |
| je .L1348 |
| mov rax, QWORD PTR [rbp-24] |
| lea rcx, [rax+96] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+8] |
| mov rsi, rax |
| mov rdi, rcx |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_State_info<std::integral_constant<bool, false>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_M_queue(long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&) |
| jmp .L1348 |
| .L1351: |
| nop |
| .L1348: |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_backref(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 104 |
| mov QWORD PTR [rbp-88], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-104], rdx |
| mov BYTE PTR [rbp-92], al |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-104] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-40], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rdx+16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| mov QWORD PTR [rbp-48], rax |
| mov rax, QWORD PTR [rbp-48] |
| movzx eax, BYTE PTR [rax+16] |
| xor eax, 1 |
| test al, al |
| jne .L1359 |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+24] |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-32], rax |
| .L1356: |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+40] |
| cmp QWORD PTR [rbp-24], rax |
| je .L1355 |
| mov rax, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rax+8] |
| cmp QWORD PTR [rbp-32], rax |
| je .L1355 |
| add QWORD PTR [rbp-24], 1 |
| add QWORD PTR [rbp-32], 1 |
| jmp .L1356 |
| .L1355: |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+48] |
| add rax, 16 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| lea rbx, [rax+80] |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+48] |
| mov rdi, rax |
| call std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> >::flags() const |
| mov esi, 1 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| setne al |
| movzx ecx, al |
| lea rax, [rbp-80] |
| mov rdx, rbx |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Backref_matcher<char const*, std::__cxx11::regex_traits<char> >::_Backref_matcher(bool, std::__cxx11::regex_traits<char> const&) |
| mov rax, QWORD PTR [rbp-88] |
| mov rcx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-48] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-48] |
| mov rsi, QWORD PTR [rax] |
| mov rdi, QWORD PTR [rbp-24] |
| lea rax, [rbp-80] |
| mov r8, rdi |
| mov rdi, rax |
| call std::__detail::_Backref_matcher<char const*, std::__cxx11::regex_traits<char> >::_M_apply(char const*, char const*, char const*, char const*) |
| test al, al |
| je .L1352 |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+24] |
| cmp QWORD PTR [rbp-24], rax |
| je .L1357 |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+24] |
| mov QWORD PTR [rbp-56], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+24], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-92] |
| mov rax, QWORD PTR [rbp-88] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-56] |
| mov QWORD PTR [rax+24], rdx |
| jmp .L1352 |
| .L1357: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-92] |
| mov rax, QWORD PTR [rbp-88] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| jmp .L1352 |
| .L1359: |
| nop |
| .L1352: |
| add rsp, 104 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_accept(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-24], rdx |
| mov BYTE PTR [rbp-12], al |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+32] |
| cmp rdx, rax |
| jne .L1361 |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+136] |
| mov esi, 32 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| je .L1361 |
| mov eax, 1 |
| jmp .L1362 |
| .L1361: |
| mov eax, 0 |
| .L1362: |
| test al, al |
| jne .L1366 |
| cmp BYTE PTR [rbp-12], 1 |
| je .L1365 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+40] |
| cmp rdx, rax |
| jne .L1360 |
| .L1365: |
| mov rax, QWORD PTR [rbp-8] |
| movzx eax, BYTE PTR [rax+140] |
| xor eax, 1 |
| test al, al |
| je .L1360 |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+140], 1 |
| mov rdx, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator=(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&) |
| jmp .L1360 |
| .L1366: |
| nop |
| .L1360: |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_handle_alternative(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| mov eax, DWORD PTR [rax+24] |
| mov esi, 16 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| setne al |
| test al, al |
| je .L1368 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-24] |
| movzx eax, BYTE PTR [rax+140] |
| xor eax, 1 |
| test al, al |
| je .L1370 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| jmp .L1370 |
| .L1368: |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-24] |
| movzx eax, BYTE PTR [rax+140] |
| mov BYTE PTR [rbp-9], al |
| mov rax, QWORD PTR [rbp-24] |
| mov BYTE PTR [rax+140], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-24] |
| movzx eax, BYTE PTR [rax+140] |
| or al, BYTE PTR [rbp-9] |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-24] |
| mov BYTE PTR [rax+140], dl |
| .L1370: |
| nop |
| leave |
| ret |
| std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_erase_at_end(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+8] |
| sub rax, QWORD PTR [rbp-32] |
| sar rax, 5 |
| mov QWORD PTR [rbp-8], rax |
| cmp QWORD PTR [rbp-8], 0 |
| je .L1373 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-32] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&) |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-32] |
| mov QWORD PTR [rax+8], rdx |
| .L1373: |
| nop |
| leave |
| ret |
| bool std::operator!=<std::__cxx11::sub_match<char const*> >(std::allocator<std::__cxx11::sub_match<char const*> > const&, std::allocator<std::__cxx11::sub_match<char const*> > const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov eax, 0 |
| pop rbp |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::clear(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_erase_at_end(std::__cxx11::sub_match<char const*>*) |
| nop |
| leave |
| ret |
| void std::__alloc_on_copy<std::allocator<std::__cxx11::sub_match<char const*> > >(std::allocator<std::__cxx11::sub_match<char const*> >&, std::allocator<std::__cxx11::sub_match<char const*> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::__do_alloc_on_copy<std::allocator<std::__cxx11::sub_match<char const*> > >(std::allocator<std::__cxx11::sub_match<char const*> >&, std::allocator<std::__cxx11::sub_match<char const*> > const&, std::integral_constant<bool, false>) |
| nop |
| leave |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::capacity() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| sub rdx, rax |
| mov rax, rdx |
| sar rax, 3 |
| mov rdx, rax |
| movabs rax, -6148914691236517205 |
| imul rax, rdx |
| pop rbp |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::begin() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-8], rax |
| lea rdx, [rbp-8] |
| lea rax, [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::__normal_iterator(std::__cxx11::sub_match<char const*> const* const&) |
| mov rax, QWORD PTR [rbp-16] |
| leave |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::end() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+8] |
| mov QWORD PTR [rbp-8], rax |
| lea rdx, [rbp-8] |
| lea rax, [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::__normal_iterator(std::__cxx11::sub_match<char const*> const* const&) |
| mov rax, QWORD PTR [rbp-16] |
| leave |
| ret |
| std::__cxx11::sub_match<char const*>* std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_allocate_and_copy<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(unsigned long, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 56 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov QWORD PTR [rbp-56], rdx |
| mov QWORD PTR [rbp-64], rcx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_allocate(unsigned long) |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() |
| mov rcx, rax |
| mov rdx, QWORD PTR [rbp-24] |
| mov rsi, QWORD PTR [rbp-64] |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__uninitialized_copy_a<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*> >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&) |
| mov rax, QWORD PTR [rbp-24] |
| jmp .L1390 |
| mov rdi, rax |
| call __cxa_begin_catch |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rbp-48] |
| mov rcx, QWORD PTR [rbp-24] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_deallocate(std::__cxx11::sub_match<char const*>*, unsigned long) |
| call __cxa_rethrow |
| mov rbx, rax |
| call __cxa_end_catch |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1390: |
| add rsp, 56 |
| pop rbx |
| pop rbp |
| ret |
| |
| __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > std::copy<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > std::__miter_base<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > std::__miter_base<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >) |
| mov rcx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, rax |
| mov rsi, rbx |
| mov rdi, rcx |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > std::__copy_move_a2<false, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >) |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| void std::_Destroy<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::__cxx11::sub_match<char const*> >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::__cxx11::sub_match<char const*> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::_Destroy<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >) |
| nop |
| leave |
| ret |
| std::__cxx11::sub_match<char const*>* std::copy<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__miter_base<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__miter_base<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*) |
| mov rcx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, rax |
| mov rsi, rbx |
| mov rdi, rcx |
| call std::__cxx11::sub_match<char const*>* std::__copy_move_a2<false, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*) |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::__cxx11::sub_match<char const*>* std::__uninitialized_copy_a<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*> >(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov QWORD PTR [rbp-32], rcx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::uninitialized_copy<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*) |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_State_info<std::integral_constant<bool, true>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_M_visited(long) const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov eax, 0 |
| pop rbp |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_repeat(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-8] |
| movzx eax, BYTE PTR [rax+24] |
| xor eax, 1 |
| test al, al |
| je .L1401 |
| mov rdx, QWORD PTR [rbp-40] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_rep_once_more(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-24] |
| movzx eax, BYTE PTR [rax+116] |
| xor eax, 1 |
| test al, al |
| je .L1403 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| jmp .L1403 |
| .L1401: |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-24] |
| movzx eax, BYTE PTR [rax+116] |
| xor eax, 1 |
| test al, al |
| je .L1403 |
| mov rdx, QWORD PTR [rbp-40] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_rep_once_more(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| .L1403: |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_subexpr_begin(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 64 |
| mov QWORD PTR [rbp-40], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-56], rdx |
| mov BYTE PTR [rbp-44], al |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rdx+16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| mov QWORD PTR [rbp-16], rax |
| mov rax, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-44] |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax], rdx |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_subexpr_end(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 80 |
| mov QWORD PTR [rbp-56], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-72], rdx |
| mov BYTE PTR [rbp-60], al |
| mov rax, QWORD PTR [rbp-56] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-72] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdx, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rdx+16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| mov QWORD PTR [rbp-16], rax |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rcx] |
| mov rdx, QWORD PTR [rcx+8] |
| mov QWORD PTR [rbp-48], rax |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rcx+16] |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-56] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov BYTE PTR [rax+16], 1 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-60] |
| mov rax, QWORD PTR [rbp-56] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| lea rdx, [rbp-48] |
| mov rax, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>::operator=(std::__cxx11::sub_match<char const*> const&) |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_line_begin_assertion(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_at_begin() const |
| test al, al |
| je .L1408 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| .L1408: |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_line_end_assertion(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_at_end() const |
| test al, al |
| je .L1411 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| .L1411: |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_word_boundary(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_word_boundary() const |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-8] |
| movzx eax, BYTE PTR [rax+24] |
| xor eax, 1 |
| cmp dl, al |
| sete al |
| test al, al |
| je .L1414 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| .L1414: |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_subexpr_lookahead(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_lookahead(long) |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-8] |
| movzx eax, BYTE PTR [rax+24] |
| xor eax, 1 |
| cmp dl, al |
| sete al |
| test al, al |
| je .L1417 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| .L1417: |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_match(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+40] |
| cmp rdx, rax |
| je .L1421 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+24] |
| movzx eax, BYTE PTR [rax] |
| movsx edx, al |
| mov rax, QWORD PTR [rbp-8] |
| mov esi, edx |
| mov rdi, rax |
| call std::__detail::_State<char>::_M_matches(char) const |
| test al, al |
| je .L1418 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+24] |
| lea rdx, [rax+1] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+24] |
| lea rdx, [rax-1] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+24], rdx |
| jmp .L1418 |
| .L1421: |
| nop |
| .L1418: |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_backref(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 104 |
| mov QWORD PTR [rbp-88], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-104], rdx |
| mov BYTE PTR [rbp-92], al |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-104] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-40], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rdx+16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| mov QWORD PTR [rbp-48], rax |
| mov rax, QWORD PTR [rbp-48] |
| movzx eax, BYTE PTR [rax+16] |
| xor eax, 1 |
| test al, al |
| jne .L1429 |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+24] |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-32], rax |
| .L1426: |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+40] |
| cmp QWORD PTR [rbp-24], rax |
| je .L1425 |
| mov rax, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rax+8] |
| cmp QWORD PTR [rbp-32], rax |
| je .L1425 |
| add QWORD PTR [rbp-24], 1 |
| add QWORD PTR [rbp-32], 1 |
| jmp .L1426 |
| .L1425: |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+48] |
| add rax, 16 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> > const, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| lea rbx, [rax+80] |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+48] |
| mov rdi, rax |
| call std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> >::flags() const |
| mov esi, 1 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| setne al |
| movzx ecx, al |
| lea rax, [rbp-80] |
| mov rdx, rbx |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Backref_matcher<char const*, std::__cxx11::regex_traits<char> >::_Backref_matcher(bool, std::__cxx11::regex_traits<char> const&) |
| mov rax, QWORD PTR [rbp-88] |
| mov rcx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-48] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-48] |
| mov rsi, QWORD PTR [rax] |
| mov rdi, QWORD PTR [rbp-24] |
| lea rax, [rbp-80] |
| mov r8, rdi |
| mov rdi, rax |
| call std::__detail::_Backref_matcher<char const*, std::__cxx11::regex_traits<char> >::_M_apply(char const*, char const*, char const*, char const*) |
| test al, al |
| je .L1422 |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+24] |
| cmp QWORD PTR [rbp-24], rax |
| je .L1427 |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+24] |
| mov QWORD PTR [rbp-56], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+24], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-92] |
| mov rax, QWORD PTR [rbp-88] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-56] |
| mov QWORD PTR [rax+24], rdx |
| jmp .L1422 |
| .L1427: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-92] |
| mov rax, QWORD PTR [rbp-88] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| jmp .L1422 |
| .L1429: |
| nop |
| .L1422: |
| add rsp, 104 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_accept(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| cmp BYTE PTR [rbp-28], 0 |
| jne .L1431 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+40] |
| cmp rdx, rax |
| sete dl |
| mov rax, QWORD PTR [rbp-24] |
| mov BYTE PTR [rax+116], dl |
| jmp .L1432 |
| .L1431: |
| mov rax, QWORD PTR [rbp-24] |
| mov BYTE PTR [rax+116], 1 |
| .L1432: |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+32] |
| cmp rdx, rax |
| jne .L1433 |
| mov rax, QWORD PTR [rbp-24] |
| mov eax, DWORD PTR [rax+112] |
| mov esi, 32 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| je .L1433 |
| mov eax, 1 |
| jmp .L1434 |
| .L1433: |
| mov eax, 0 |
| .L1434: |
| test al, al |
| je .L1435 |
| mov rax, QWORD PTR [rbp-24] |
| mov BYTE PTR [rax+116], 0 |
| .L1435: |
| mov rax, QWORD PTR [rbp-24] |
| movzx eax, BYTE PTR [rax+116] |
| test al, al |
| je .L1430 |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| mov eax, DWORD PTR [rax+24] |
| mov esi, 16 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| setne al |
| test al, al |
| je .L1437 |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator=(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&) |
| jmp .L1430 |
| .L1437: |
| mov rax, QWORD PTR [rbp-24] |
| add rax, 96 |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_State_info<std::integral_constant<bool, true>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_M_get_sol_pos() |
| mov rax, QWORD PTR [rax] |
| test rax, rax |
| je .L1438 |
| mov rax, QWORD PTR [rbp-24] |
| add rax, 96 |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_State_info<std::integral_constant<bool, true>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_M_get_sol_pos() |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+32] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::iterator_traits<char const*>::difference_type std::distance<char const*>(char const*, char const*) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+32] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::iterator_traits<char const*>::difference_type std::distance<char const*>(char const*, char const*) |
| cmp rbx, rax |
| jge .L1439 |
| .L1438: |
| mov eax, 1 |
| jmp .L1440 |
| .L1439: |
| mov eax, 0 |
| .L1440: |
| test al, al |
| je .L1430 |
| mov rax, QWORD PTR [rbp-24] |
| mov rbx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-24] |
| add rax, 96 |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_State_info<std::integral_constant<bool, true>, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::_M_get_sol_pos() |
| mov QWORD PTR [rax], rbx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator=(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&) |
| .L1430: |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_handle_alternative(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-28], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+56] |
| mov eax, DWORD PTR [rax+24] |
| mov esi, 16 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| setne al |
| test al, al |
| je .L1442 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-24] |
| movzx eax, BYTE PTR [rax+116] |
| xor eax, 1 |
| test al, al |
| je .L1444 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| jmp .L1444 |
| .L1442: |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-24] |
| movzx eax, BYTE PTR [rax+116] |
| mov BYTE PTR [rbp-9], al |
| mov rax, QWORD PTR [rbp-24] |
| mov BYTE PTR [rax+116], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| movzx ecx, BYTE PTR [rbp-28] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-24] |
| movzx eax, BYTE PTR [rax+116] |
| or al, BYTE PTR [rbp-9] |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-24] |
| mov BYTE PTR [rax+116], dl |
| .L1444: |
| nop |
| leave |
| ret |
| std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, std::locale const&, std::regex_constants::syntax_option_type&>(std::__detail::_NFA<std::__cxx11::regex_traits<char> >*&, std::_Sp_alloc_shared_tag<std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > >, std::locale const&, std::regex_constants::syntax_option_type&): |
| push rbp |
| mov rbp, rsp |
| push r15 |
| push r14 |
| push r13 |
| push r12 |
| push rbx |
| sub rsp, 104 |
| mov QWORD PTR [rbp-104], rdi |
| mov QWORD PTR [rbp-112], rsi |
| mov QWORD PTR [rbp-120], rdx |
| mov QWORD PTR [rbp-128], rcx |
| mov QWORD PTR [rbp-136], r8 |
| mov rdx, QWORD PTR [rbp-120] |
| lea rax, [rbp-66] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> >::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >(std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > const&) |
| lea rax, [rbp-96] |
| lea rdx, [rbp-66] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> >&) |
| lea rax, [rbp-96] |
| mov rdi, rax |
| call std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> > >::get() |
| mov QWORD PTR [rbp-56], rax |
| mov rdx, QWORD PTR [rbp-120] |
| lea rax, [rbp-65] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::allocator(std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > const&) |
| lea r13, [rbp-65] |
| mov rax, QWORD PTR [rbp-128] |
| mov rdi, rax |
| call std::locale const& std::forward<std::locale const&>(std::remove_reference<std::locale const&>::type&) |
| mov r14, rax |
| mov rax, QWORD PTR [rbp-136] |
| mov rdi, rax |
| call std::regex_constants::syntax_option_type& std::forward<std::regex_constants::syntax_option_type&>(std::remove_reference<std::regex_constants::syntax_option_type&>::type&) |
| mov r15, rax |
| mov r12, QWORD PTR [rbp-56] |
| mov rsi, r12 |
| mov edi, 104 |
| call operator new(unsigned long, void*) |
| mov rbx, rax |
| mov rcx, r15 |
| mov rdx, r14 |
| mov rsi, r13 |
| mov rdi, rbx |
| call std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::locale const&, std::regex_constants::syntax_option_type&>(std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, std::locale const&, std::regex_constants::syntax_option_type&) |
| mov QWORD PTR [rbp-64], rbx |
| lea rax, [rbp-65] |
| mov rdi, rax |
| call std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::~allocator() [complete object destructor] |
| lea rax, [rbp-96] |
| mov esi, 0 |
| mov rdi, rax |
| call std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> > >::operator=(decltype(nullptr)) |
| mov rax, QWORD PTR [rbp-104] |
| mov rdx, QWORD PTR [rbp-64] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2>::_M_ptr() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-112] |
| mov QWORD PTR [rax], rdx |
| lea rax, [rbp-96] |
| mov rdi, rax |
| call std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> > >::~__allocated_ptr() [complete object destructor] |
| lea rax, [rbp-66] |
| mov rdi, rax |
| call std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> >::~allocator() [complete object destructor] |
| jmp .L1450 |
| mov r13, rax |
| mov rsi, r12 |
| mov rdi, rbx |
| call operator delete(void*, void*) |
| mov rbx, r13 |
| lea rax, [rbp-65] |
| mov rdi, rax |
| call std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >::~allocator() [complete object destructor] |
| lea rax, [rbp-96] |
| mov rdi, rax |
| call std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> > >::~__allocated_ptr() [complete object destructor] |
| jmp .L1447 |
| mov rbx, rax |
| .L1447: |
| lea rax, [rbp-66] |
| mov rdi, rax |
| call std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> >::~allocator() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1450: |
| add rsp, 104 |
| pop rbx |
| pop r12 |
| pop r13 |
| pop r14 |
| pop r15 |
| pop rbp |
| ret |
| std::enable_if<!std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2>::__has_esft_base<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, void>::value, void>::type std::__shared_ptr<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2>::_M_enable_shared_from_this_with<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::__detail::_NFA<std::__cxx11::regex_traits<char> > >(std::__detail::_NFA<std::__cxx11::regex_traits<char> >*): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| nop |
| pop rbp |
| ret |
| std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::allocator() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::new_allocator() [base object constructor] |
| nop |
| leave |
| ret |
| std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_Deque_iterator() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+16], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+24], 0 |
| nop |
| pop rbp |
| ret |
| std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_allocate_map(unsigned long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| lea rax, [rbp-17] |
| mov rdx, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_get_map_allocator() const |
| mov rdx, QWORD PTR [rbp-48] |
| lea rax, [rbp-17] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*> >::allocate(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>&, unsigned long) |
| mov rbx, rax |
| nop |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::~allocator() [complete object destructor] |
| mov rax, rbx |
| jmp .L1458 |
| mov rbx, rax |
| lea rax, [rbp-17] |
| mov rdi, rax |
| call std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::~allocator() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1458: |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_create_nodes(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 56 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov QWORD PTR [rbp-56], rdx |
| mov rax, QWORD PTR [rbp-48] |
| mov QWORD PTR [rbp-24], rax |
| .L1461: |
| mov rax, QWORD PTR [rbp-24] |
| cmp rax, QWORD PTR [rbp-56] |
| jnb .L1466 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_allocate_node() |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax], rdx |
| add QWORD PTR [rbp-24], 8 |
| jmp .L1461 |
| mov rdi, rax |
| call __cxa_begin_catch |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_destroy_nodes(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**) |
| call __cxa_rethrow |
| mov rbx, rax |
| call __cxa_end_catch |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1466: |
| nop |
| add rsp, 56 |
| pop rbx |
| pop rbp |
| ret |
| |
| std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_M_set_node(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-32] |
| mov QWORD PTR [rax+24], rdx |
| mov rax, QWORD PTR [rbp-32] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rbx, QWORD PTR [rax+8] |
| call std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_S_buffer_size() |
| mov rdx, rax |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| lea rdx, [rbx+rax] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+16], rdx |
| nop |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::vector<unsigned long, std::allocator<unsigned long> >::max_size() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Vector_base<unsigned long, std::allocator<unsigned long> >::_M_get_Tp_allocator() const |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<unsigned long> >::max_size(std::allocator<unsigned long> const&) |
| leave |
| ret |
| std::vector<unsigned long, std::allocator<unsigned long> >::size() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax] |
| sub rdx, rax |
| mov rax, rdx |
| sar rax, 3 |
| pop rbp |
| ret |
| std::allocator_traits<std::allocator<unsigned long> >::allocate(std::allocator<unsigned long>&, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov edx, 0 |
| mov rsi, rcx |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<unsigned long>::allocate(unsigned long, void const*) |
| leave |
| ret |
| std::move_iterator<unsigned long*> std::__make_move_if_noexcept_iterator<unsigned long, std::move_iterator<unsigned long*> >(unsigned long*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::move_iterator<unsigned long*>::move_iterator(unsigned long*) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| unsigned long* std::__uninitialized_copy_a<std::move_iterator<unsigned long*>, unsigned long*, unsigned long>(std::move_iterator<unsigned long*>, std::move_iterator<unsigned long*>, unsigned long*, std::allocator<unsigned long>&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov QWORD PTR [rbp-32], rcx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call unsigned long* std::uninitialized_copy<std::move_iterator<unsigned long*>, unsigned long*>(std::move_iterator<unsigned long*>, std::move_iterator<unsigned long*>, unsigned long*) |
| leave |
| ret |
| std::__detail::_State<char>&& std::forward<std::__detail::_State<char> >(std::remove_reference<std::__detail::_State<char> >::type&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| void std::allocator_traits<std::allocator<std::__detail::_State<char> > >::construct<std::__detail::_State<char>, std::__detail::_State<char> >(std::allocator<std::__detail::_State<char> >&, std::__detail::_State<char>*, std::__detail::_State<char>&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_State<char>&& std::forward<std::__detail::_State<char> >(std::remove_reference<std::__detail::_State<char> >::type&) |
| mov rdx, rax |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call void __gnu_cxx::new_allocator<std::__detail::_State<char> >::construct<std::__detail::_State<char>, std::__detail::_State<char> >(std::__detail::_State<char>*, std::__detail::_State<char>&&) |
| nop |
| leave |
| ret |
| void std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::_M_realloc_insert<std::__detail::_State<char> >(__gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >, std::__detail::_State<char>&&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 104 |
| mov QWORD PTR [rbp-88], rdi |
| mov QWORD PTR [rbp-96], rsi |
| mov QWORD PTR [rbp-104], rdx |
| mov rax, QWORD PTR [rbp-88] |
| mov edx, OFFSET FLAT:.LC24 |
| mov esi, 1 |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::_M_check_len(unsigned long, char const*) const |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-40], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+8] |
| mov QWORD PTR [rbp-48], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::begin() |
| mov QWORD PTR [rbp-72], rax |
| lea rdx, [rbp-72] |
| lea rax, [rbp-96] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::difference_type __gnu_cxx::operator-<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >(__gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > > const&, __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > > const&) |
| mov QWORD PTR [rbp-56], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-32] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::_M_allocate(unsigned long) |
| mov QWORD PTR [rbp-64], rax |
| mov rax, QWORD PTR [rbp-64] |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-104] |
| mov rdi, rax |
| call std::__detail::_State<char>&& std::forward<std::__detail::_State<char> >(std::remove_reference<std::__detail::_State<char> >::type&) |
| mov rsi, rax |
| mov rdx, QWORD PTR [rbp-56] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 4 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-64] |
| lea rcx, [rdx+rax] |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, rsi |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<std::__detail::_State<char> > >::construct<std::__detail::_State<char>, std::__detail::_State<char> >(std::allocator<std::__detail::_State<char> >&, std::__detail::_State<char>*, std::__detail::_State<char>&&) |
| mov QWORD PTR [rbp-24], 0 |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Vector_base<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::_M_get_Tp_allocator() |
| mov rbx, rax |
| lea rax, [rbp-96] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::base() const |
| mov rsi, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-64] |
| mov rax, QWORD PTR [rbp-40] |
| mov rcx, rbx |
| mov rdi, rax |
| call std::__detail::_State<char>* std::__uninitialized_move_if_noexcept_a<std::__detail::_State<char>*, std::__detail::_State<char>*, std::allocator<std::__detail::_State<char> > >(std::__detail::_State<char>*, std::__detail::_State<char>*, std::__detail::_State<char>*, std::allocator<std::__detail::_State<char> >&) |
| mov QWORD PTR [rbp-24], rax |
| add QWORD PTR [rbp-24], 48 |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Vector_base<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::_M_get_Tp_allocator() |
| mov rbx, rax |
| lea rax, [rbp-96] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::base() const |
| mov rax, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rsi, QWORD PTR [rbp-48] |
| mov rcx, rbx |
| mov rdi, rax |
| call std::__detail::_State<char>* std::__uninitialized_move_if_noexcept_a<std::__detail::_State<char>*, std::__detail::_State<char>*, std::allocator<std::__detail::_State<char> > >(std::__detail::_State<char>*, std::__detail::_State<char>*, std::__detail::_State<char>*, std::allocator<std::__detail::_State<char> >&) |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Vector_base<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rcx, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<std::__detail::_State<char>*, std::__detail::_State<char> >(std::__detail::_State<char>*, std::__detail::_State<char>*, std::allocator<std::__detail::_State<char> >&) |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rdx+16] |
| sub rdx, QWORD PTR [rbp-40] |
| mov rcx, rdx |
| sar rcx, 4 |
| movabs rdx, -6148914691236517205 |
| imul rdx, rcx |
| mov rcx, QWORD PTR [rbp-40] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::_M_deallocate(std::__detail::_State<char>*, unsigned long) |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-64] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+8], rdx |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 4 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-64] |
| add rdx, rax |
| mov rax, QWORD PTR [rbp-88] |
| mov QWORD PTR [rax+16], rdx |
| jmp .L1488 |
| mov rdi, rax |
| call __cxa_begin_catch |
| cmp QWORD PTR [rbp-24], 0 |
| jne .L1483 |
| mov rdx, QWORD PTR [rbp-56] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 4 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-64] |
| add rdx, rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<std::__detail::_State<char> > >::destroy<std::__detail::_State<char> >(std::allocator<std::__detail::_State<char> >&, std::__detail::_State<char>*) |
| jmp .L1484 |
| .L1483: |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Vector_base<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rcx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-64] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<std::__detail::_State<char>*, std::__detail::_State<char> >(std::__detail::_State<char>*, std::__detail::_State<char>*, std::allocator<std::__detail::_State<char> >&) |
| .L1484: |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-32] |
| mov rcx, QWORD PTR [rbp-64] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::_M_deallocate(std::__detail::_State<char>*, unsigned long) |
| call __cxa_rethrow |
| mov rbx, rax |
| call __cxa_end_catch |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1488: |
| add rsp, 104 |
| pop rbx |
| pop rbp |
| ret |
| |
| std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::back(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::end() |
| mov QWORD PTR [rbp-8], rax |
| lea rax, [rbp-8] |
| mov esi, 1 |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::operator-(long) const |
| mov QWORD PTR [rbp-16], rax |
| lea rax, [rbp-16] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__detail::_State<char>*, std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > > >::operator*() const |
| nop |
| leave |
| ret |
| std::remove_reference<std::_Any_data&>::type&& std::move<std::_Any_data&>(std::_Any_data&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<std::_Any_data> >, std::is_move_constructible<std::_Any_data>, std::is_move_assignable<std::_Any_data> >::value, void>::type std::swap<std::_Any_data>(std::_Any_data&, std::_Any_data&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::remove_reference<std::_Any_data&>::type&& std::move<std::_Any_data&>(std::_Any_data&) |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-16], rax |
| mov QWORD PTR [rbp-8], rdx |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::remove_reference<std::_Any_data&>::type&& std::move<std::_Any_data&>(std::_Any_data&) |
| mov rcx, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rcx], rax |
| mov QWORD PTR [rcx+8], rdx |
| lea rax, [rbp-16] |
| mov rdi, rax |
| call std::remove_reference<std::_Any_data&>::type&& std::move<std::_Any_data&>(std::_Any_data&) |
| mov rcx, QWORD PTR [rbp-32] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rcx], rax |
| mov QWORD PTR [rcx+8], rdx |
| nop |
| leave |
| ret |
| std::remove_reference<bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>::type&& std::move<bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>(bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<bool (*)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)> >, std::is_move_constructible<bool (*)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>, std::is_move_assignable<bool (*)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)> >::value, void>::type std::swap<bool (*)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>(bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation), bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::remove_reference<bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>::type&& std::move<bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>(bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)) |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::remove_reference<bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>::type&& std::move<bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>(bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)) |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax], rdx |
| lea rax, [rbp-8] |
| mov rdi, rax |
| call std::remove_reference<bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>::type&& std::move<bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>(bool (*&)(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)) |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-32] |
| mov QWORD PTR [rax], rdx |
| nop |
| leave |
| ret |
| std::remove_reference<bool (*&)(std::_Any_data const&, char&&)>::type&& std::move<bool (*&)(std::_Any_data const&, char&&)>(bool (*&)(std::_Any_data const&, char&&)): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<bool (*)(std::_Any_data const&, char&&)> >, std::is_move_constructible<bool (*)(std::_Any_data const&, char&&)>, std::is_move_assignable<bool (*)(std::_Any_data const&, char&&)> >::value, void>::type std::swap<bool (*)(std::_Any_data const&, char&&)>(bool (*&)(std::_Any_data const&, char&&), bool (*&)(std::_Any_data const&, char&&)): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::remove_reference<bool (*&)(std::_Any_data const&, char&&)>::type&& std::move<bool (*&)(std::_Any_data const&, char&&)>(bool (*&)(std::_Any_data const&, char&&)) |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::remove_reference<bool (*&)(std::_Any_data const&, char&&)>::type&& std::move<bool (*&)(std::_Any_data const&, char&&)>(bool (*&)(std::_Any_data const&, char&&)) |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax], rdx |
| lea rax, [rbp-8] |
| mov rdi, rax |
| call std::remove_reference<bool (*&)(std::_Any_data const&, char&&)>::type&& std::move<bool (*&)(std::_Any_data const&, char&&)>(bool (*&)(std::_Any_data const&, char&&)) |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-32] |
| mov QWORD PTR [rax], rdx |
| nop |
| leave |
| ret |
| std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_line_begin(): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 72 |
| mov QWORD PTR [rbp-72], rdi |
| lea rax, [rbp-64] |
| mov esi, 4 |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_Opcode) |
| lea rdx, [rbp-64] |
| mov rax, QWORD PTR [rbp-72] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_state(std::__detail::_State<char>) |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| jmp .L1504 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1504: |
| add rsp, 72 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_line_end(): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 72 |
| mov QWORD PTR [rbp-72], rdi |
| lea rax, [rbp-64] |
| mov esi, 5 |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_Opcode) |
| lea rdx, [rbp-64] |
| mov rax, QWORD PTR [rbp-72] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_state(std::__detail::_State<char>) |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| jmp .L1509 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1509: |
| add rsp, 72 |
| pop rbx |
| pop rbp |
| ret |
| std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-16] |
| add rax, rdx |
| leave |
| ret |
| std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_word_bound(bool): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 120 |
| mov QWORD PTR [rbp-120], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-124], al |
| lea rax, [rbp-112] |
| mov esi, 6 |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_Opcode) |
| movzx eax, BYTE PTR [rbp-124] |
| mov BYTE PTR [rbp-88], al |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_State<char>&>::type&& std::move<std::__detail::_State<char>&>(std::__detail::_State<char>&) |
| mov rdx, rax |
| lea rax, [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_State<char>&&) |
| lea rdx, [rbp-64] |
| mov rax, QWORD PTR [rbp-120] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_state(std::__detail::_State<char>) |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| jmp .L1516 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1516: |
| add rsp, 120 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_lookahead(long, bool): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 136 |
| mov QWORD PTR [rbp-120], rdi |
| mov QWORD PTR [rbp-128], rsi |
| mov eax, edx |
| mov BYTE PTR [rbp-132], al |
| lea rax, [rbp-112] |
| mov esi, 7 |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_Opcode) |
| mov rax, QWORD PTR [rbp-128] |
| mov QWORD PTR [rbp-96], rax |
| movzx eax, BYTE PTR [rbp-132] |
| mov BYTE PTR [rbp-88], al |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_State<char>&>::type&& std::move<std::__detail::_State<char>&>(std::__detail::_State<char>&) |
| mov rdx, rax |
| lea rax, [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_State<char>&&) |
| lea rdx, [rbp-64] |
| mov rax, QWORD PTR [rbp-120] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_state(std::__detail::_State<char>) |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| jmp .L1521 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1521: |
| add rsp, 136 |
| pop rbx |
| pop rbp |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_posix<false, false>(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 96 |
| mov QWORD PTR [rbp-104], rdi |
| mov rax, QWORD PTR [rbp-104] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| mov rdx, QWORD PTR [rax+384] |
| lea rax, [rbp-17] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, false, false, false>::_AnyMatcher(std::__cxx11::regex_traits<char> const&) |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, false, false, false>, void, void>(std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, false, false, false>) |
| lea rax, [rbp-64] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-96] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-96] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1525 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1525: |
| add rsp, 96 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_posix<false, true>(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 96 |
| mov QWORD PTR [rbp-104], rdi |
| mov rax, QWORD PTR [rbp-104] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| mov rdx, QWORD PTR [rax+384] |
| lea rax, [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, false, false, true>::_AnyMatcher(std::__cxx11::regex_traits<char> const&) |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, false, false, true>, void, void>(std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, false, false, true>) |
| lea rax, [rbp-64] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-96] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-96] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1529 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1529: |
| add rsp, 96 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_posix<true, false>(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 96 |
| mov QWORD PTR [rbp-104], rdi |
| mov rax, QWORD PTR [rbp-104] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| mov rdx, QWORD PTR [rax+384] |
| lea rax, [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, false, true, false>::_AnyMatcher(std::__cxx11::regex_traits<char> const&) |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, false, true, false>, void, void>(std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, false, true, false>) |
| lea rax, [rbp-64] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-96] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-96] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1533 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1533: |
| add rsp, 96 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_posix<true, true>(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 96 |
| mov QWORD PTR [rbp-104], rdi |
| mov rax, QWORD PTR [rbp-104] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| mov rdx, QWORD PTR [rax+384] |
| lea rax, [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, false, true, true>::_AnyMatcher(std::__cxx11::regex_traits<char> const&) |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, false, true, true>, void, void>(std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, false, true, true>) |
| lea rax, [rbp-64] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-96] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-96] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1537 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1537: |
| add rsp, 96 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_ecma<false, false>(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 96 |
| mov QWORD PTR [rbp-104], rdi |
| mov rax, QWORD PTR [rbp-104] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| mov rdx, QWORD PTR [rax+384] |
| lea rax, [rbp-17] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, true, false, false>::_AnyMatcher(std::__cxx11::regex_traits<char> const&) |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, true, false, false>, void, void>(std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, true, false, false>) |
| lea rax, [rbp-64] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-96] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-96] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1541 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1541: |
| add rsp, 96 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_ecma<false, true>(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 96 |
| mov QWORD PTR [rbp-104], rdi |
| mov rax, QWORD PTR [rbp-104] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| mov rdx, QWORD PTR [rax+384] |
| lea rax, [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, true, false, true>::_AnyMatcher(std::__cxx11::regex_traits<char> const&) |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, true, false, true>, void, void>(std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, true, false, true>) |
| lea rax, [rbp-64] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-96] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-96] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1545 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1545: |
| add rsp, 96 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_ecma<true, false>(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 96 |
| mov QWORD PTR [rbp-104], rdi |
| mov rax, QWORD PTR [rbp-104] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| mov rdx, QWORD PTR [rax+384] |
| lea rax, [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, true, true, false>::_AnyMatcher(std::__cxx11::regex_traits<char> const&) |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, true, true, false>, void, void>(std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, true, true, false>) |
| lea rax, [rbp-64] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-96] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-96] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1549 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1549: |
| add rsp, 96 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_any_matcher_ecma<true, true>(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 96 |
| mov QWORD PTR [rbp-104], rdi |
| mov rax, QWORD PTR [rbp-104] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| mov rdx, QWORD PTR [rax+384] |
| lea rax, [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, true, true, true>::_AnyMatcher(std::__cxx11::regex_traits<char> const&) |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, true, true, true>, void, void>(std::__detail::_AnyMatcher<std::__cxx11::regex_traits<char>, true, true, true>) |
| lea rax, [rbp-64] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-104] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-96] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-96] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1553 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1553: |
| add rsp, 96 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_try_char(): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-40], rdi |
| mov BYTE PTR [rbp-17], 0 |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, 2 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1555 |
| mov BYTE PTR [rbp-17], 1 |
| mov rax, QWORD PTR [rbp-40] |
| lea rbx, [rax+272] |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, 8 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_cur_int_value(int) |
| movsx eax, al |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rbx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L1556 |
| .L1555: |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, 3 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1557 |
| mov BYTE PTR [rbp-17], 1 |
| mov rax, QWORD PTR [rbp-40] |
| lea rbx, [rax+272] |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, 16 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_cur_int_value(int) |
| movsx eax, al |
| mov edx, eax |
| mov esi, 1 |
| mov rdi, rbx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(unsigned long, char) |
| jmp .L1556 |
| .L1557: |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, 1 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| test al, al |
| je .L1556 |
| mov BYTE PTR [rbp-17], 1 |
| .L1556: |
| movzx eax, BYTE PTR [rbp-17] |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_char_matcher<false, false>(): |
| push rbp |
| mov rbp, rsp |
| push r13 |
| push r12 |
| push rbx |
| sub rsp, 104 |
| mov QWORD PTR [rbp-120], rdi |
| mov rax, QWORD PTR [rbp-120] |
| lea r12, [rax+304] |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r13, rax |
| mov rax, QWORD PTR [rbp-120] |
| mov rbx, QWORD PTR [rax+384] |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 272 |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) |
| movzx eax, BYTE PTR [rax] |
| movsx ecx, al |
| lea rax, [rbp-34] |
| mov rdx, rbx |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_CharMatcher<std::__cxx11::regex_traits<char>, false, false>::_CharMatcher(char, std::__cxx11::regex_traits<char> const&) |
| movzx edx, WORD PTR [rbp-34] |
| lea rax, [rbp-80] |
| mov esi, edx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_CharMatcher<std::__cxx11::regex_traits<char>, false, false>, void, void>(std::__detail::_CharMatcher<std::__cxx11::regex_traits<char>, false, false>) |
| lea rax, [rbp-80] |
| mov rsi, rax |
| mov rdi, r13 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-112] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-112] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1562 |
| mov rbx, rax |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1562: |
| add rsp, 104 |
| pop rbx |
| pop r12 |
| pop r13 |
| pop rbp |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_char_matcher<false, true>(): |
| push rbp |
| mov rbp, rsp |
| push r13 |
| push r12 |
| push rbx |
| sub rsp, 104 |
| mov QWORD PTR [rbp-120], rdi |
| mov rax, QWORD PTR [rbp-120] |
| lea r12, [rax+304] |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r13, rax |
| mov rax, QWORD PTR [rbp-120] |
| mov rbx, QWORD PTR [rax+384] |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 272 |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) |
| movzx eax, BYTE PTR [rax] |
| movsx ecx, al |
| lea rax, [rbp-48] |
| mov rdx, rbx |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_CharMatcher<std::__cxx11::regex_traits<char>, false, true>::_CharMatcher(char, std::__cxx11::regex_traits<char> const&) |
| mov rcx, QWORD PTR [rbp-48] |
| mov rdx, QWORD PTR [rbp-40] |
| lea rax, [rbp-80] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_CharMatcher<std::__cxx11::regex_traits<char>, false, true>, void, void>(std::__detail::_CharMatcher<std::__cxx11::regex_traits<char>, false, true>) |
| lea rax, [rbp-80] |
| mov rsi, rax |
| mov rdi, r13 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-112] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-112] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1566 |
| mov rbx, rax |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1566: |
| add rsp, 104 |
| pop rbx |
| pop r12 |
| pop r13 |
| pop rbp |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_char_matcher<true, false>(): |
| push rbp |
| mov rbp, rsp |
| push r13 |
| push r12 |
| push rbx |
| sub rsp, 104 |
| mov QWORD PTR [rbp-120], rdi |
| mov rax, QWORD PTR [rbp-120] |
| lea r12, [rax+304] |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r13, rax |
| mov rax, QWORD PTR [rbp-120] |
| mov rbx, QWORD PTR [rax+384] |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 272 |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) |
| movzx eax, BYTE PTR [rax] |
| movsx ecx, al |
| lea rax, [rbp-48] |
| mov rdx, rbx |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_CharMatcher<std::__cxx11::regex_traits<char>, true, false>::_CharMatcher(char, std::__cxx11::regex_traits<char> const&) |
| mov rcx, QWORD PTR [rbp-48] |
| mov rdx, QWORD PTR [rbp-40] |
| lea rax, [rbp-80] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_CharMatcher<std::__cxx11::regex_traits<char>, true, false>, void, void>(std::__detail::_CharMatcher<std::__cxx11::regex_traits<char>, true, false>) |
| lea rax, [rbp-80] |
| mov rsi, rax |
| mov rdi, r13 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-112] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-112] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1570 |
| mov rbx, rax |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1570: |
| add rsp, 104 |
| pop rbx |
| pop r12 |
| pop r13 |
| pop rbp |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_char_matcher<true, true>(): |
| push rbp |
| mov rbp, rsp |
| push r13 |
| push r12 |
| push rbx |
| sub rsp, 104 |
| mov QWORD PTR [rbp-120], rdi |
| mov rax, QWORD PTR [rbp-120] |
| lea r12, [rax+304] |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r13, rax |
| mov rax, QWORD PTR [rbp-120] |
| mov rbx, QWORD PTR [rax+384] |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 272 |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) |
| movzx eax, BYTE PTR [rax] |
| movsx ecx, al |
| lea rax, [rbp-48] |
| mov rdx, rbx |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_CharMatcher<std::__cxx11::regex_traits<char>, true, true>::_CharMatcher(char, std::__cxx11::regex_traits<char> const&) |
| mov rcx, QWORD PTR [rbp-48] |
| mov rdx, QWORD PTR [rbp-40] |
| lea rax, [rbp-80] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_CharMatcher<std::__cxx11::regex_traits<char>, true, true>, void, void>(std::__detail::_CharMatcher<std::__cxx11::regex_traits<char>, true, true>) |
| lea rax, [rbp-80] |
| mov rsi, rax |
| mov rdi, r13 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-120] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-112] |
| mov rdx, rbx |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-112] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1574 |
| mov rbx, rax |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1574: |
| add rsp, 104 |
| pop rbx |
| pop r12 |
| pop r13 |
| pop rbp |
| ret |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_cur_int_value(int): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 32 |
| mov QWORD PTR [rbp-40], rdi |
| mov DWORD PTR [rbp-44], esi |
| mov QWORD PTR [rbp-24], 0 |
| mov QWORD PTR [rbp-32], 0 |
| .L1577: |
| mov rax, QWORD PTR [rbp-40] |
| add rax, 272 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::length() const |
| cmp QWORD PTR [rbp-32], rax |
| setb al |
| test al, al |
| je .L1576 |
| mov eax, DWORD PTR [rbp-44] |
| cdqe |
| imul rax, QWORD PTR [rbp-24] |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rbx, QWORD PTR [rax+384] |
| mov rax, QWORD PTR [rbp-40] |
| lea rdx, [rax+272] |
| mov rax, QWORD PTR [rbp-32] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) |
| movzx eax, BYTE PTR [rax] |
| movsx eax, al |
| mov edx, DWORD PTR [rbp-44] |
| mov esi, eax |
| mov rdi, rbx |
| call std::__cxx11::regex_traits<char>::value(char, int) const |
| cdqe |
| add rax, r12 |
| mov QWORD PTR [rbp-24], rax |
| add QWORD PTR [rbp-32], 1 |
| jmp .L1577 |
| .L1576: |
| mov rax, QWORD PTR [rbp-24] |
| add rsp, 32 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| .LC31: |
| .string "Unexpected back-reference in polynomial mode." |
| .LC32: |
| .string "Back-reference index exceeds current sub-expression count." |
| .LC33: |
| .string "Back-reference referred to an opened sub-expression." |
| std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_backref(unsigned long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 152 |
| mov QWORD PTR [rbp-152], rdi |
| mov QWORD PTR [rbp-160], rsi |
| mov rax, QWORD PTR [rbp-152] |
| mov eax, DWORD PTR [rax+24] |
| mov esi, 1024 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| setne al |
| test al, al |
| je .L1580 |
| mov esi, OFFSET FLAT:.LC31 |
| mov edi, 11 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L1580: |
| mov rax, QWORD PTR [rbp-152] |
| mov rax, QWORD PTR [rax+40] |
| cmp QWORD PTR [rbp-160], rax |
| jb .L1581 |
| mov esi, OFFSET FLAT:.LC32 |
| mov edi, 3 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L1581: |
| mov rax, QWORD PTR [rbp-152] |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::begin() |
| mov QWORD PTR [rbp-136], rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<unsigned long, std::allocator<unsigned long> >::end() |
| mov QWORD PTR [rbp-144], rax |
| .L1584: |
| lea rdx, [rbp-144] |
| lea rax, [rbp-136] |
| mov rsi, rdx |
| mov rdi, rax |
| call bool __gnu_cxx::operator!=<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >(__gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > > const&, __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > > const&) |
| test al, al |
| je .L1582 |
| lea rax, [rbp-136] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::operator*() const |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-160] |
| cmp rax, QWORD PTR [rbp-32] |
| jne .L1583 |
| mov esi, OFFSET FLAT:.LC33 |
| mov edi, 3 |
| call std::__throw_regex_error(std::regex_constants::error_type, char const*) |
| .L1583: |
| lea rax, [rbp-136] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<unsigned long*, std::vector<unsigned long, std::allocator<unsigned long> > >::operator++() |
| jmp .L1584 |
| .L1582: |
| mov rax, QWORD PTR [rbp-152] |
| mov BYTE PTR [rax+48], 1 |
| lea rax, [rbp-128] |
| mov esi, 3 |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_Opcode) |
| mov rax, QWORD PTR [rbp-160] |
| mov QWORD PTR [rbp-112], rax |
| lea rax, [rbp-128] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_State<char>&>::type&& std::move<std::__detail::_State<char>&>(std::__detail::_State<char>&) |
| mov rdx, rax |
| lea rax, [rbp-80] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_State<char>&&) |
| lea rdx, [rbp-80] |
| mov rax, QWORD PTR [rbp-152] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_state(std::__detail::_State<char>) |
| mov rbx, rax |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| lea rax, [rbp-128] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| jmp .L1588 |
| mov rbx, rax |
| lea rax, [rbp-80] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| lea rax, [rbp-128] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1588: |
| add rsp, 152 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>::~_BracketMatcher() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 72 |
| mov rdi, rax |
| call std::vector<std::__cxx11::regex_traits<char>::_RegexMask, std::allocator<std::__cxx11::regex_traits<char>::_RegexMask> >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 48 |
| mov rdi, rax |
| call std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 24 |
| mov rdi, rax |
| call std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::vector<char, std::allocator<char> >::~vector() [complete object destructor] |
| nop |
| leave |
| ret |
| std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>::_BracketMatcher(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<char, std::allocator<char> >::vector(std::vector<char, std::allocator<char> >&&) |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 24 |
| mov rdx, QWORD PTR [rbp-16] |
| add rdx, 24 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::vector(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&&) |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 48 |
| mov rdx, QWORD PTR [rbp-16] |
| add rdx, 48 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > >::vector(std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > >&&) |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 72 |
| mov rdx, QWORD PTR [rbp-16] |
| add rdx, 72 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::regex_traits<char>::_RegexMask, std::allocator<std::__cxx11::regex_traits<char>::_RegexMask> >::vector(std::vector<std::__cxx11::regex_traits<char>::_RegexMask, std::allocator<std::__cxx11::regex_traits<char>::_RegexMask> >&&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov edx, DWORD PTR [rdx+96] |
| mov DWORD PTR [rax+96], edx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax+104] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+104], rdx |
| mov rax, QWORD PTR [rbp-16] |
| movzx edx, BYTE PTR [rax+112] |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+112], dl |
| mov rcx, QWORD PTR [rbp-8] |
| mov rsi, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rsi+120] |
| mov rdx, QWORD PTR [rsi+128] |
| mov QWORD PTR [rcx+120], rax |
| mov QWORD PTR [rcx+128], rdx |
| mov rax, QWORD PTR [rsi+136] |
| mov rdx, QWORD PTR [rsi+144] |
| mov QWORD PTR [rcx+136], rax |
| mov QWORD PTR [rcx+144], rdx |
| nop |
| leave |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_character_class_matcher<false, false>(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 400 |
| mov QWORD PTR [rbp-408], rdi |
| mov rax, QWORD PTR [rbp-408] |
| mov rbx, QWORD PTR [rax+384] |
| mov rax, QWORD PTR [rbp-408] |
| mov r12, QWORD PTR [rax+392] |
| mov rax, QWORD PTR [rbp-408] |
| add rax, 272 |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) |
| movzx eax, BYTE PTR [rax] |
| movsx eax, al |
| mov edx, eax |
| mov esi, 256 |
| mov rdi, r12 |
| call std::ctype<char>::is(unsigned short, char) const |
| movzx ecx, al |
| lea rax, [rbp-400] |
| mov rdx, rbx |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>::_BracketMatcher(bool, std::__cxx11::regex_traits<char> const&) |
| mov rax, QWORD PTR [rbp-408] |
| lea rcx, [rax+272] |
| lea rax, [rbp-400] |
| mov edx, 0 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>::_M_add_character_class(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool) |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>::_M_ready() |
| mov rax, QWORD PTR [rbp-408] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-408] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>&>::type&& std::move<std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>&>(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>&) |
| mov rdx, rax |
| lea rax, [rbp-176] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>::_BracketMatcher(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>&&) |
| lea rdx, [rbp-176] |
| lea rax, [rbp-208] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>, void, void>(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>) |
| lea rax, [rbp-208] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-408] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-240] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-240] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-208] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>::~_BracketMatcher() [complete object destructor] |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>::~_BracketMatcher() [complete object destructor] |
| jmp .L1598 |
| mov rbx, rax |
| lea rax, [rbp-208] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1593 |
| mov rbx, rax |
| .L1593: |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>::~_BracketMatcher() [complete object destructor] |
| jmp .L1594 |
| mov rbx, rax |
| .L1594: |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>::~_BracketMatcher() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1598: |
| add rsp, 400 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>::~_BracketMatcher() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 72 |
| mov rdi, rax |
| call std::vector<std::__cxx11::regex_traits<char>::_RegexMask, std::allocator<std::__cxx11::regex_traits<char>::_RegexMask> >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 48 |
| mov rdi, rax |
| call std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 24 |
| mov rdi, rax |
| call std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::vector<char, std::allocator<char> >::~vector() [complete object destructor] |
| nop |
| leave |
| ret |
| std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>::_BracketMatcher(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<char, std::allocator<char> >::vector(std::vector<char, std::allocator<char> >&&) |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 24 |
| mov rdx, QWORD PTR [rbp-16] |
| add rdx, 24 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::vector(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&&) |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 48 |
| mov rdx, QWORD PTR [rbp-16] |
| add rdx, 48 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::vector(std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >&&) |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 72 |
| mov rdx, QWORD PTR [rbp-16] |
| add rdx, 72 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::regex_traits<char>::_RegexMask, std::allocator<std::__cxx11::regex_traits<char>::_RegexMask> >::vector(std::vector<std::__cxx11::regex_traits<char>::_RegexMask, std::allocator<std::__cxx11::regex_traits<char>::_RegexMask> >&&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov edx, DWORD PTR [rdx+96] |
| mov DWORD PTR [rax+96], edx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rdx+104] |
| mov QWORD PTR [rax+104], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax+112] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+112], rdx |
| mov rax, QWORD PTR [rbp-16] |
| movzx edx, BYTE PTR [rax+120] |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+120], dl |
| mov rcx, QWORD PTR [rbp-8] |
| mov rsi, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rsi+128] |
| mov rdx, QWORD PTR [rsi+136] |
| mov QWORD PTR [rcx+128], rax |
| mov QWORD PTR [rcx+136], rdx |
| mov rax, QWORD PTR [rsi+144] |
| mov rdx, QWORD PTR [rsi+152] |
| mov QWORD PTR [rcx+144], rax |
| mov QWORD PTR [rcx+152], rdx |
| nop |
| leave |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_character_class_matcher<false, true>(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 400 |
| mov QWORD PTR [rbp-408], rdi |
| mov rax, QWORD PTR [rbp-408] |
| mov rbx, QWORD PTR [rax+384] |
| mov rax, QWORD PTR [rbp-408] |
| mov r12, QWORD PTR [rax+392] |
| mov rax, QWORD PTR [rbp-408] |
| add rax, 272 |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) |
| movzx eax, BYTE PTR [rax] |
| movsx eax, al |
| mov edx, eax |
| mov esi, 256 |
| mov rdi, r12 |
| call std::ctype<char>::is(unsigned short, char) const |
| movzx ecx, al |
| lea rax, [rbp-400] |
| mov rdx, rbx |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>::_BracketMatcher(bool, std::__cxx11::regex_traits<char> const&) |
| mov rax, QWORD PTR [rbp-408] |
| lea rcx, [rax+272] |
| lea rax, [rbp-400] |
| mov edx, 0 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>::_M_add_character_class(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool) |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>::_M_ready() |
| mov rax, QWORD PTR [rbp-408] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-408] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>&>::type&& std::move<std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>&>(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>&) |
| mov rdx, rax |
| lea rax, [rbp-176] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>::_BracketMatcher(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>&&) |
| lea rdx, [rbp-176] |
| lea rax, [rbp-208] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>, void, void>(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>) |
| lea rax, [rbp-208] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-408] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-240] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-240] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-208] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>::~_BracketMatcher() [complete object destructor] |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>::~_BracketMatcher() [complete object destructor] |
| jmp .L1608 |
| mov rbx, rax |
| lea rax, [rbp-208] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1603 |
| mov rbx, rax |
| .L1603: |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>::~_BracketMatcher() [complete object destructor] |
| jmp .L1604 |
| mov rbx, rax |
| .L1604: |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, true>::~_BracketMatcher() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1608: |
| add rsp, 400 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>::~_BracketMatcher() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 72 |
| mov rdi, rax |
| call std::vector<std::__cxx11::regex_traits<char>::_RegexMask, std::allocator<std::__cxx11::regex_traits<char>::_RegexMask> >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 48 |
| mov rdi, rax |
| call std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 24 |
| mov rdi, rax |
| call std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::vector<char, std::allocator<char> >::~vector() [complete object destructor] |
| nop |
| leave |
| ret |
| std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>::_BracketMatcher(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<char, std::allocator<char> >::vector(std::vector<char, std::allocator<char> >&&) |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 24 |
| mov rdx, QWORD PTR [rbp-16] |
| add rdx, 24 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::vector(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&&) |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 48 |
| mov rdx, QWORD PTR [rbp-16] |
| add rdx, 48 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > >::vector(std::vector<std::pair<char, char>, std::allocator<std::pair<char, char> > >&&) |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 72 |
| mov rdx, QWORD PTR [rbp-16] |
| add rdx, 72 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::regex_traits<char>::_RegexMask, std::allocator<std::__cxx11::regex_traits<char>::_RegexMask> >::vector(std::vector<std::__cxx11::regex_traits<char>::_RegexMask, std::allocator<std::__cxx11::regex_traits<char>::_RegexMask> >&&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov edx, DWORD PTR [rdx+96] |
| mov DWORD PTR [rax+96], edx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rdx+104] |
| mov QWORD PTR [rax+104], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax+112] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+112], rdx |
| mov rax, QWORD PTR [rbp-16] |
| movzx edx, BYTE PTR [rax+120] |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+120], dl |
| mov rcx, QWORD PTR [rbp-8] |
| mov rsi, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rsi+128] |
| mov rdx, QWORD PTR [rsi+136] |
| mov QWORD PTR [rcx+128], rax |
| mov QWORD PTR [rcx+136], rdx |
| mov rax, QWORD PTR [rsi+144] |
| mov rdx, QWORD PTR [rsi+152] |
| mov QWORD PTR [rcx+144], rax |
| mov QWORD PTR [rcx+152], rdx |
| nop |
| leave |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_character_class_matcher<true, false>(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 400 |
| mov QWORD PTR [rbp-408], rdi |
| mov rax, QWORD PTR [rbp-408] |
| mov rbx, QWORD PTR [rax+384] |
| mov rax, QWORD PTR [rbp-408] |
| mov r12, QWORD PTR [rax+392] |
| mov rax, QWORD PTR [rbp-408] |
| add rax, 272 |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) |
| movzx eax, BYTE PTR [rax] |
| movsx eax, al |
| mov edx, eax |
| mov esi, 256 |
| mov rdi, r12 |
| call std::ctype<char>::is(unsigned short, char) const |
| movzx ecx, al |
| lea rax, [rbp-400] |
| mov rdx, rbx |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>::_BracketMatcher(bool, std::__cxx11::regex_traits<char> const&) |
| mov rax, QWORD PTR [rbp-408] |
| lea rcx, [rax+272] |
| lea rax, [rbp-400] |
| mov edx, 0 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>::_M_add_character_class(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool) |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>::_M_ready() |
| mov rax, QWORD PTR [rbp-408] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-408] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>&>::type&& std::move<std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>&>(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>&) |
| mov rdx, rax |
| lea rax, [rbp-176] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>::_BracketMatcher(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>&&) |
| lea rdx, [rbp-176] |
| lea rax, [rbp-208] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>, void, void>(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>) |
| lea rax, [rbp-208] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-408] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-240] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-240] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-208] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>::~_BracketMatcher() [complete object destructor] |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>::~_BracketMatcher() [complete object destructor] |
| jmp .L1618 |
| mov rbx, rax |
| lea rax, [rbp-208] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1613 |
| mov rbx, rax |
| .L1613: |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>::~_BracketMatcher() [complete object destructor] |
| jmp .L1614 |
| mov rbx, rax |
| .L1614: |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, false>::~_BracketMatcher() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1618: |
| add rsp, 400 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>::~_BracketMatcher() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 72 |
| mov rdi, rax |
| call std::vector<std::__cxx11::regex_traits<char>::_RegexMask, std::allocator<std::__cxx11::regex_traits<char>::_RegexMask> >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 48 |
| mov rdi, rax |
| call std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 24 |
| mov rdi, rax |
| call std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::~vector() [complete object destructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::vector<char, std::allocator<char> >::~vector() [complete object destructor] |
| nop |
| leave |
| ret |
| std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>::_BracketMatcher(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<char, std::allocator<char> >::vector(std::vector<char, std::allocator<char> >&&) |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 24 |
| mov rdx, QWORD PTR [rbp-16] |
| add rdx, 24 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::vector(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&&) |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 48 |
| mov rdx, QWORD PTR [rbp-16] |
| add rdx, 48 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::vector(std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >&&) |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 72 |
| mov rdx, QWORD PTR [rbp-16] |
| add rdx, 72 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::regex_traits<char>::_RegexMask, std::allocator<std::__cxx11::regex_traits<char>::_RegexMask> >::vector(std::vector<std::__cxx11::regex_traits<char>::_RegexMask, std::allocator<std::__cxx11::regex_traits<char>::_RegexMask> >&&) |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov edx, DWORD PTR [rdx+96] |
| mov DWORD PTR [rax+96], edx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rdx+104] |
| mov QWORD PTR [rax+104], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax+112] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+112], rdx |
| mov rax, QWORD PTR [rbp-16] |
| movzx edx, BYTE PTR [rax+120] |
| mov rax, QWORD PTR [rbp-8] |
| mov BYTE PTR [rax+120], dl |
| mov rcx, QWORD PTR [rbp-8] |
| mov rsi, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rsi+128] |
| mov rdx, QWORD PTR [rsi+136] |
| mov QWORD PTR [rcx+128], rax |
| mov QWORD PTR [rcx+136], rdx |
| mov rax, QWORD PTR [rsi+144] |
| mov rdx, QWORD PTR [rsi+152] |
| mov QWORD PTR [rcx+144], rax |
| mov QWORD PTR [rcx+152], rdx |
| nop |
| leave |
| ret |
| void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_character_class_matcher<true, true>(): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 400 |
| mov QWORD PTR [rbp-408], rdi |
| mov rax, QWORD PTR [rbp-408] |
| mov rbx, QWORD PTR [rax+384] |
| mov rax, QWORD PTR [rbp-408] |
| mov r12, QWORD PTR [rax+392] |
| mov rax, QWORD PTR [rbp-408] |
| add rax, 272 |
| mov esi, 0 |
| mov rdi, rax |
| call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) |
| movzx eax, BYTE PTR [rax] |
| movsx eax, al |
| mov edx, eax |
| mov esi, 256 |
| mov rdi, r12 |
| call std::ctype<char>::is(unsigned short, char) const |
| movzx ecx, al |
| lea rax, [rbp-400] |
| mov rdx, rbx |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>::_BracketMatcher(bool, std::__cxx11::regex_traits<char> const&) |
| mov rax, QWORD PTR [rbp-408] |
| lea rcx, [rax+272] |
| lea rax, [rbp-400] |
| mov edx, 0 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>::_M_add_character_class(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool) |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>::_M_ready() |
| mov rax, QWORD PTR [rbp-408] |
| lea rbx, [rax+304] |
| mov rax, QWORD PTR [rbp-408] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator->() const |
| mov r12, rax |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>&>::type&& std::move<std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>&>(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>&) |
| mov rdx, rax |
| lea rax, [rbp-176] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>::_BracketMatcher(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>&&) |
| lea rdx, [rbp-176] |
| lea rax, [rbp-208] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::function<bool (char)>::function<std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>, void, void>(std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>) |
| lea rax, [rbp-208] |
| mov rsi, rax |
| mov rdi, r12 |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_matcher(std::function<bool (char)>) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-408] |
| add rax, 256 |
| mov rdi, rax |
| call std::__shared_ptr_access<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const |
| mov rcx, rax |
| lea rax, [rbp-240] |
| mov rdx, r12 |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long) |
| lea rax, [rbp-240] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::push(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| lea rax, [rbp-208] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>::~_BracketMatcher() [complete object destructor] |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>::~_BracketMatcher() [complete object destructor] |
| jmp .L1628 |
| mov rbx, rax |
| lea rax, [rbp-208] |
| mov rdi, rax |
| call std::function<bool (char)>::~function() [complete object destructor] |
| jmp .L1623 |
| mov rbx, rax |
| .L1623: |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>::~_BracketMatcher() [complete object destructor] |
| jmp .L1624 |
| mov rbx, rax |
| .L1624: |
| lea rax, [rbp-400] |
| mov rdi, rax |
| call std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, true, true>::~_BracketMatcher() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1628: |
| add rsp, 400 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_bracket_expression(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, 10 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| mov BYTE PTR [rbp-1], al |
| movzx eax, BYTE PTR [rbp-1] |
| xor eax, 1 |
| test al, al |
| je .L1630 |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, 9 |
| mov rdi, rax |
| call std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_match_token(std::__detail::_ScannerBase::_TokenT) |
| xor eax, 1 |
| test al, al |
| je .L1630 |
| mov eax, 1 |
| jmp .L1631 |
| .L1630: |
| mov eax, 0 |
| .L1631: |
| test al, al |
| je .L1632 |
| mov eax, 0 |
| jmp .L1633 |
| .L1632: |
| mov rax, QWORD PTR [rbp-24] |
| mov eax, DWORD PTR [rax] |
| mov esi, 1 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1634 |
| mov rax, QWORD PTR [rbp-24] |
| mov eax, DWORD PTR [rax] |
| mov esi, 8 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1635 |
| movzx edx, BYTE PTR [rbp-1] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, edx |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_bracket_matcher<false, false>(bool) |
| jmp .L1637 |
| .L1635: |
| movzx edx, BYTE PTR [rbp-1] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, edx |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_bracket_matcher<false, true>(bool) |
| jmp .L1637 |
| .L1634: |
| mov rax, QWORD PTR [rbp-24] |
| mov eax, DWORD PTR [rax] |
| mov esi, 8 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::syntax_option_type, std::regex_constants::syntax_option_type) |
| test eax, eax |
| sete al |
| test al, al |
| je .L1638 |
| movzx edx, BYTE PTR [rbp-1] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, edx |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_bracket_matcher<true, false>(bool) |
| jmp .L1637 |
| .L1638: |
| movzx edx, BYTE PTR [rbp-1] |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, edx |
| mov rdi, rax |
| call void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_bracket_matcher<true, true>(bool) |
| .L1637: |
| mov eax, 1 |
| .L1633: |
| leave |
| ret |
| std::stack<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > > >::empty() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::empty() const |
| leave |
| ret |
| std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_repeat(long, long, bool): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 136 |
| mov QWORD PTR [rbp-120], rdi |
| mov QWORD PTR [rbp-128], rsi |
| mov QWORD PTR [rbp-136], rdx |
| mov eax, ecx |
| mov BYTE PTR [rbp-140], al |
| lea rax, [rbp-112] |
| mov esi, 2 |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_Opcode) |
| mov rax, QWORD PTR [rbp-128] |
| mov QWORD PTR [rbp-104], rax |
| mov rax, QWORD PTR [rbp-136] |
| mov QWORD PTR [rbp-96], rax |
| movzx eax, BYTE PTR [rbp-140] |
| mov BYTE PTR [rbp-88], al |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_State<char>&>::type&& std::move<std::__detail::_State<char>&>(std::__detail::_State<char>&) |
| mov rdx, rax |
| lea rax, [rbp-64] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_State<char>&&) |
| lea rdx, [rbp-64] |
| mov rax, QWORD PTR [rbp-120] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_state(std::__detail::_State<char>) |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| jmp .L1645 |
| mov rbx, rax |
| lea rax, [rbp-64] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| lea rax, [rbp-112] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1645: |
| add rsp, 136 |
| pop rbx |
| pop rbp |
| ret |
| std::_Rb_tree<long, std::pair<long const, long>, std::_Select1st<std::pair<long const, long> >, std::less<long>, std::allocator<std::pair<long const, long> > >::_Rb_tree_impl<std::less<long>, true>::~_Rb_tree_impl() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::allocator<std::_Rb_tree_node<std::pair<long const, long> > >::~allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::_Rb_tree<long, std::pair<long const, long>, std::_Select1st<std::pair<long const, long> >, std::less<long>, std::allocator<std::pair<long const, long> > >::_Rb_tree() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Rb_tree<long, std::pair<long const, long>, std::_Select1st<std::pair<long const, long> >, std::less<long>, std::allocator<std::pair<long const, long> > >::_Rb_tree_impl<std::less<long>, true>::_Rb_tree_impl() [complete object constructor] |
| nop |
| leave |
| ret |
| std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::map() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Rb_tree<long, std::pair<long const, long>, std::_Select1st<std::pair<long const, long> >, std::less<long>, std::allocator<std::pair<long const, long> > >::_Rb_tree() [complete object constructor] |
| nop |
| leave |
| ret |
| std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::~map() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Rb_tree<long, std::pair<long const, long>, std::_Select1st<std::pair<long const, long> >, std::less<long>, std::allocator<std::pair<long const, long> > >::~_Rb_tree() [complete object destructor] |
| nop |
| leave |
| ret |
| std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_M_clone(): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 328 |
| mov QWORD PTR [rbp-328], rdi |
| mov QWORD PTR [rbp-336], rsi |
| lea rax, [rbp-144] |
| mov rdi, rax |
| call std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::map() [complete object constructor] |
| lea rax, [rbp-224] |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::stack<std::deque<long, std::allocator<long> >, void>() |
| mov rax, QWORD PTR [rbp-336] |
| lea rdx, [rax+8] |
| lea rax, [rbp-224] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::push(long const&) |
| .L1662: |
| lea rax, [rbp-224] |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::empty() const |
| xor eax, 1 |
| test al, al |
| je .L1651 |
| lea rax, [rbp-224] |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::top() |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-232], rax |
| lea rax, [rbp-224] |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::pop() |
| mov rax, QWORD PTR [rbp-336] |
| mov rax, QWORD PTR [rax] |
| add rax, 56 |
| mov rdx, QWORD PTR [rbp-232] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) |
| mov rdx, rax |
| lea rax, [rbp-320] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_State<char> const&) |
| mov rax, QWORD PTR [rbp-336] |
| mov rbx, QWORD PTR [rax] |
| lea rax, [rbp-320] |
| mov rdi, rax |
| call std::remove_reference<std::__detail::_State<char>&>::type&& std::move<std::__detail::_State<char>&>(std::__detail::_State<char>&) |
| mov rdx, rax |
| lea rax, [rbp-96] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__detail::_State<char>::_State(std::__detail::_State<char>&&) |
| lea rax, [rbp-96] |
| mov rsi, rax |
| mov rdi, rbx |
| call std::__detail::_NFA<std::__cxx11::regex_traits<char> >::_M_insert_state(std::__detail::_State<char>) |
| mov QWORD PTR [rbp-24], rax |
| lea rax, [rbp-96] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| mov rbx, QWORD PTR [rbp-24] |
| lea rdx, [rbp-232] |
| lea rax, [rbp-144] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::operator[](long const&) |
| mov QWORD PTR [rax], rbx |
| lea rax, [rbp-320] |
| mov rdi, rax |
| call std::__detail::_State_base::_M_has_alt() |
| test al, al |
| je .L1652 |
| mov rax, QWORD PTR [rbp-304] |
| cmp rax, -1 |
| je .L1653 |
| lea rax, [rbp-320] |
| lea rdx, [rax+16] |
| lea rax, [rbp-144] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::count(long const&) const |
| test rax, rax |
| jne .L1653 |
| mov eax, 1 |
| jmp .L1654 |
| .L1653: |
| mov eax, 0 |
| .L1654: |
| test al, al |
| je .L1652 |
| lea rax, [rbp-320] |
| lea rdx, [rax+16] |
| lea rax, [rbp-224] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::push(long const&) |
| .L1652: |
| mov rax, QWORD PTR [rbp-336] |
| mov rdx, QWORD PTR [rax+16] |
| mov rax, QWORD PTR [rbp-232] |
| cmp rdx, rax |
| jne .L1655 |
| mov ebx, 0 |
| jmp .L1656 |
| .L1655: |
| mov rax, QWORD PTR [rbp-312] |
| cmp rax, -1 |
| je .L1657 |
| lea rax, [rbp-320] |
| lea rdx, [rax+8] |
| lea rax, [rbp-144] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::count(long const&) const |
| test rax, rax |
| jne .L1657 |
| mov eax, 1 |
| jmp .L1658 |
| .L1657: |
| mov eax, 0 |
| .L1658: |
| test al, al |
| je .L1659 |
| lea rax, [rbp-320] |
| lea rdx, [rax+8] |
| lea rax, [rbp-224] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::push(long const&) |
| .L1659: |
| mov ebx, 1 |
| .L1656: |
| lea rax, [rbp-320] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| cmp ebx, 1 |
| jmp .L1662 |
| .L1651: |
| lea rax, [rbp-144] |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::begin() |
| mov QWORD PTR [rbp-264], rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::end() |
| mov QWORD PTR [rbp-272], rax |
| .L1666: |
| lea rdx, [rbp-272] |
| lea rax, [rbp-264] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Rb_tree_iterator<std::pair<long const, long> >::operator!=(std::_Rb_tree_iterator<std::pair<long const, long> > const&) const |
| test al, al |
| je .L1663 |
| lea rax, [rbp-264] |
| mov rdi, rax |
| call std::_Rb_tree_iterator<std::pair<long const, long> >::operator*() const |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-256], rax |
| mov QWORD PTR [rbp-248], rdx |
| mov rax, QWORD PTR [rbp-248] |
| mov QWORD PTR [rbp-40], rax |
| mov rax, QWORD PTR [rbp-336] |
| mov rax, QWORD PTR [rax] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) |
| mov QWORD PTR [rbp-48], rax |
| mov rax, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rax+8] |
| cmp rax, -1 |
| je .L1664 |
| mov rax, QWORD PTR [rbp-48] |
| lea rdx, [rax+8] |
| lea rax, [rbp-144] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::operator[](long const&) |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-48] |
| mov QWORD PTR [rax+8], rdx |
| .L1664: |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__detail::_State_base::_M_has_alt() |
| test al, al |
| je .L1665 |
| mov rax, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rax+16] |
| cmp rax, -1 |
| je .L1665 |
| mov rax, QWORD PTR [rbp-48] |
| lea rdx, [rax+16] |
| lea rax, [rbp-144] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::operator[](long const&) |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-48] |
| mov QWORD PTR [rax+16], rdx |
| .L1665: |
| lea rax, [rbp-264] |
| mov rdi, rax |
| call std::_Rb_tree_iterator<std::pair<long const, long> >::operator++() |
| jmp .L1666 |
| .L1663: |
| mov rax, QWORD PTR [rbp-336] |
| lea rdx, [rax+16] |
| lea rax, [rbp-144] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::operator[](long const&) |
| mov rbx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-336] |
| lea rdx, [rax+8] |
| lea rax, [rbp-144] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::operator[](long const&) |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-336] |
| mov rsi, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-328] |
| mov rcx, rbx |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >::_StateSeq(std::__detail::_NFA<std::__cxx11::regex_traits<char> >&, long, long) |
| lea rax, [rbp-224] |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::~stack() [complete object destructor] |
| lea rax, [rbp-144] |
| mov rdi, rax |
| call std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::~map() [complete object destructor] |
| jmp .L1676 |
| mov rbx, rax |
| lea rax, [rbp-96] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| jmp .L1669 |
| mov rbx, rax |
| .L1669: |
| lea rax, [rbp-320] |
| mov rdi, rax |
| call std::__detail::_State<char>::~_State() [complete object destructor] |
| jmp .L1670 |
| mov rbx, rax |
| .L1670: |
| lea rax, [rbp-224] |
| mov rdi, rax |
| call std::stack<long, std::deque<long, std::allocator<long> > >::~stack() [complete object destructor] |
| jmp .L1671 |
| mov rbx, rax |
| .L1671: |
| lea rax, [rbp-144] |
| mov rdi, rax |
| call std::map<long, long, std::less<long>, std::allocator<std::pair<long const, long> > >::~map() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1676: |
| mov rax, QWORD PTR [rbp-328] |
| add rsp, 328 |
| pop rbx |
| pop rbp |
| ret |
| std::stack<long, std::deque<long, std::allocator<long> > >::stack<std::deque<long, std::allocator<long> >, void>(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::deque<long, std::allocator<long> >::deque() [complete object constructor] |
| nop |
| leave |
| ret |
| std::deque<long, std::allocator<long> >::~deque() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 88 |
| mov QWORD PTR [rbp-88], rdi |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Deque_base<long, std::allocator<long> >::_M_get_Tp_allocator() |
| mov rbx, rax |
| lea rax, [rbp-80] |
| mov rdx, QWORD PTR [rbp-88] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::deque<long, std::allocator<long> >::end() |
| lea rax, [rbp-48] |
| mov rdx, QWORD PTR [rbp-88] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::deque<long, std::allocator<long> >::begin() |
| lea rdx, [rbp-80] |
| lea rsi, [rbp-48] |
| mov rax, QWORD PTR [rbp-88] |
| mov rcx, rbx |
| mov rdi, rax |
| call std::deque<long, std::allocator<long> >::_M_destroy_data(std::_Deque_iterator<long, long&, long*>, std::_Deque_iterator<long, long&, long*>, std::allocator<long> const&) |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Deque_base<long, std::allocator<long> >::~_Deque_base() [base object destructor] |
| nop |
| add rsp, 88 |
| pop rbx |
| pop rbp |
| ret |
| std::stack<long, std::deque<long, std::allocator<long> > >::push(long const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::deque<long, std::allocator<long> >::push_back(long const&) |
| nop |
| leave |
| ret |
| std::stack<long, std::deque<long, std::allocator<long> > >::empty() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::deque<long, std::allocator<long> >::empty() const |
| leave |
| ret |
| std::stack<long, std::deque<long, std::allocator<long> > >::top(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::deque<long, std::allocator<long> >::back() |
| leave |
| ret |
| std::stack<long, std::deque<long, std::allocator<long> > >::pop(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::deque<long, std::allocator<long> >::pop_back() |
| nop |
| leave |
| ret |
| std::remove_reference<long&>::type&& std::move<long&>(long&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<long> >, std::is_move_constructible<long>, std::is_move_assignable<long> >::value, void>::type std::swap<long>(long&, long&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::remove_reference<long&>::type&& std::move<long&>(long&) |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::remove_reference<long&>::type&& std::move<long&>(long&) |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax], rdx |
| lea rax, [rbp-8] |
| mov rdi, rax |
| call std::remove_reference<long&>::type&& std::move<long&>(long&) |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-32] |
| mov QWORD PTR [rax], rdx |
| nop |
| leave |
| ret |
| void std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::construct<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&>(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const& std::forward<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&>(std::remove_reference<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&>::type&) |
| mov rdx, rax |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call void __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::construct<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&>(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| nop |
| leave |
| ret |
| void std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_push_back_aux<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&>(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, 1 |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_reserve_map_at_back(unsigned long) |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rdx+72] |
| lea rbx, [rdx+8] |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_allocate_node() |
| mov QWORD PTR [rbx], rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const& std::forward<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&>(std::remove_reference<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&>::type&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rax+48] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::construct<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&>(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > const&) |
| mov rax, QWORD PTR [rbp-24] |
| lea rdx, [rax+48] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+72] |
| add rax, 8 |
| mov rsi, rax |
| mov rdi, rdx |
| call std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_M_set_node(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**) |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+56] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+48], rdx |
| nop |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&& std::forward<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::remove_reference<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::type&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| void std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::construct<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&& std::forward<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::remove_reference<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::type&) |
| mov rdx, rax |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call void __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::construct<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| nop |
| leave |
| ret |
| void std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_push_back_aux<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rax, QWORD PTR [rbp-24] |
| mov esi, 1 |
| mov rdi, rax |
| call std::deque<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_reserve_map_at_back(unsigned long) |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rdx+72] |
| lea rbx, [rdx+8] |
| mov rdi, rax |
| call std::_Deque_base<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::_M_allocate_node() |
| mov QWORD PTR [rbx], rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&& std::forward<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::remove_reference<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::type&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rax+48] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > > >::construct<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&&) |
| mov rax, QWORD PTR [rbp-24] |
| lea rdx, [rax+48] |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+72] |
| add rax, 8 |
| mov rsi, rax |
| mov rdi, rdx |
| call std::_Deque_iterator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >&, std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::_M_set_node(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >**) |
| mov rax, QWORD PTR [rbp-24] |
| mov rdx, QWORD PTR [rax+56] |
| mov rax, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+48], rdx |
| nop |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| void __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::destroy<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> > >::deallocate(std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call operator delete(void*) |
| leave |
| ret |
| __gnu_cxx::new_allocator<std::__detail::_StateSeq<std::__cxx11::regex_traits<char> >*>::new_allocator() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> >::max_size() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| movabs rax, 768614336404564650 |
| pop rbp |
| ret |
| std::__cxx11::sub_match<char const*>* std::__uninitialized_default_n_1<false>::__uninit_default_n<std::__cxx11::sub_match<char const*>*, unsigned long>(std::__cxx11::sub_match<char const*>*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov rax, QWORD PTR [rbp-40] |
| mov QWORD PTR [rbp-24], rax |
| .L1702: |
| cmp QWORD PTR [rbp-48], 0 |
| je .L1701 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__addressof<std::__cxx11::sub_match<char const*> >(std::__cxx11::sub_match<char const*>&) |
| mov rdi, rax |
| call void std::_Construct<std::__cxx11::sub_match<char const*>>(std::__cxx11::sub_match<char const*>*) |
| sub QWORD PTR [rbp-48], 1 |
| add QWORD PTR [rbp-24], 24 |
| jmp .L1702 |
| .L1701: |
| mov rax, QWORD PTR [rbp-24] |
| jmp .L1708 |
| mov rdi, rax |
| call __cxa_begin_catch |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::_Destroy<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*) |
| call __cxa_rethrow |
| mov rbx, rax |
| call __cxa_end_catch |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1708: |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| |
| __gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> >::allocate(unsigned long, void const*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::__cxx11::sub_match<char const*> >::max_size() const |
| cmp QWORD PTR [rbp-16], rax |
| seta al |
| test al, al |
| je .L1712 |
| call std::__throw_bad_alloc() |
| .L1712: |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, rdx |
| add rax, rax |
| add rax, rdx |
| sal rax, 3 |
| mov rdi, rax |
| call operator new(unsigned long) |
| nop |
| leave |
| ret |
| std::move_iterator<std::__cxx11::sub_match<char const*>*>::move_iterator(std::__cxx11::sub_match<char const*>*): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax], rdx |
| nop |
| pop rbp |
| ret |
| std::__cxx11::sub_match<char const*>* std::uninitialized_copy<std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::__cxx11::sub_match<char const*>*>(std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::__cxx11::sub_match<char const*>*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-1], 1 |
| mov rdx, QWORD PTR [rbp-40] |
| mov rcx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__uninitialized_copy<false>::__uninit_copy<std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::__cxx11::sub_match<char const*>*>(std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::move_iterator<std::__cxx11::sub_match<char const*>*>, std::__cxx11::sub_match<char const*>*) |
| leave |
| ret |
| __gnu_cxx::new_allocator<std::pair<char const*, int> >::new_allocator(__gnu_cxx::new_allocator<std::pair<char const*, int> > const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| nop |
| pop rbp |
| ret |
| std::allocator_traits<std::allocator<std::pair<char const*, int> > >::allocate(std::allocator<std::pair<char const*, int> >&, unsigned long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov edx, 0 |
| mov rsi, rcx |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::pair<char const*, int> >::allocate(unsigned long, void const*) |
| leave |
| ret |
| std::pair<char const*, int>* std::__uninitialized_default_n_1<false>::__uninit_default_n<std::pair<char const*, int>*, unsigned long>(std::pair<char const*, int>*, unsigned long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov rax, QWORD PTR [rbp-40] |
| mov QWORD PTR [rbp-24], rax |
| .L1721: |
| cmp QWORD PTR [rbp-48], 0 |
| je .L1720 |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::pair<char const*, int>* std::__addressof<std::pair<char const*, int> >(std::pair<char const*, int>&) |
| mov rdi, rax |
| call void std::_Construct<std::pair<char const*, int>>(std::pair<char const*, int>*) |
| sub QWORD PTR [rbp-48], 1 |
| add QWORD PTR [rbp-24], 16 |
| jmp .L1721 |
| .L1720: |
| mov rax, QWORD PTR [rbp-24] |
| jmp .L1727 |
| mov rdi, rax |
| call __cxa_begin_catch |
| mov rdx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::_Destroy<std::pair<char const*, int>*>(std::pair<char const*, int>*, std::pair<char const*, int>*) |
| call __cxa_rethrow |
| mov rbx, rax |
| call __cxa_end_catch |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1727: |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| |
| std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >::allocator() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >::new_allocator() [base object constructor] |
| nop |
| leave |
| ret |
| std::_Tuple_impl<0ul, bool*, std::default_delete<bool []> >::_Tuple_impl() [base object constructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Tuple_impl<1ul, std::default_delete<bool []> >::_Tuple_impl() [base object constructor] |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Head_base<0ul, bool*, false>::_Head_base() [base object constructor] |
| nop |
| leave |
| ret |
| std::_Head_base<0ul, bool*, false>::_M_head(std::_Head_base<0ul, bool*, false>&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::_Tuple_impl<1ul, std::default_delete<bool []> >::_M_head(std::_Tuple_impl<1ul, std::default_delete<bool []> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::_Head_base<1ul, std::default_delete<bool []>, true>::_M_head(std::_Head_base<1ul, std::default_delete<bool []>, true>&) |
| leave |
| ret |
| long& std::forward<long&>(std::remove_reference<long&>::type&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const& std::forward<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>(std::remove_reference<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>::type&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| void std::allocator_traits<std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::construct<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>(std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 40 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov QWORD PTR [rbp-48], rcx |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const& std::forward<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>(std::remove_reference<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>::type&) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call long& std::forward<long&>(std::remove_reference<long&>::type&) |
| mov rdx, rax |
| mov rsi, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rcx, rbx |
| mov rdi, rax |
| call void __gnu_cxx::new_allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >::construct<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&) |
| nop |
| add rsp, 40 |
| pop rbx |
| pop rbp |
| ret |
| void std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_realloc_insert<long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>(__gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >, long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 104 |
| mov QWORD PTR [rbp-88], rdi |
| mov QWORD PTR [rbp-96], rsi |
| mov QWORD PTR [rbp-104], rdx |
| mov QWORD PTR [rbp-112], rcx |
| mov rax, QWORD PTR [rbp-88] |
| mov edx, OFFSET FLAT:.LC24 |
| mov esi, 1 |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_check_len(unsigned long, char const*) const |
| mov QWORD PTR [rbp-32], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-40], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rax, QWORD PTR [rax+8] |
| mov QWORD PTR [rbp-48], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::begin() |
| mov QWORD PTR [rbp-72], rax |
| lea rdx, [rbp-72] |
| lea rax, [rbp-96] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::difference_type __gnu_cxx::operator-<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >(__gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > > const&, __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > > const&) |
| mov QWORD PTR [rbp-56], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-32] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_allocate(unsigned long) |
| mov QWORD PTR [rbp-64], rax |
| mov rax, QWORD PTR [rbp-64] |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-112] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const& std::forward<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>(std::remove_reference<std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>::type&) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-104] |
| mov rdi, rax |
| call long& std::forward<long&>(std::remove_reference<long&>::type&) |
| mov rdi, rax |
| mov rax, QWORD PTR [rbp-56] |
| sal rax, 5 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-64] |
| lea rsi, [rdx+rax] |
| mov rax, QWORD PTR [rbp-88] |
| mov rcx, rbx |
| mov rdx, rdi |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::construct<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&>(std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, long&, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&) |
| mov QWORD PTR [rbp-24], 0 |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_get_Tp_allocator() |
| mov rbx, rax |
| lea rax, [rbp-96] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::base() const |
| mov rsi, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-64] |
| mov rax, QWORD PTR [rbp-40] |
| mov rcx, rbx |
| mov rdi, rax |
| call std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >* std::__uninitialized_move_if_noexcept_a<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&) |
| mov QWORD PTR [rbp-24], rax |
| add QWORD PTR [rbp-24], 32 |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_get_Tp_allocator() |
| mov rbx, rax |
| lea rax, [rbp-96] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::base() const |
| mov rax, QWORD PTR [rax] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rsi, QWORD PTR [rbp-48] |
| mov rcx, rbx |
| mov rdi, rax |
| call std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >* std::__uninitialized_move_if_noexcept_a<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&) |
| mov QWORD PTR [rbp-24], rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rcx, QWORD PTR [rbp-48] |
| mov rax, QWORD PTR [rbp-40] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&) |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rdx+16] |
| sub rdx, QWORD PTR [rbp-40] |
| sar rdx, 5 |
| mov rcx, QWORD PTR [rbp-40] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_deallocate(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, unsigned long) |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-64] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-32] |
| sal rax, 5 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-64] |
| add rdx, rax |
| mov rax, QWORD PTR [rbp-88] |
| mov QWORD PTR [rax+16], rdx |
| jmp .L1746 |
| mov rdi, rax |
| call __cxa_begin_catch |
| cmp QWORD PTR [rbp-24], 0 |
| jne .L1741 |
| mov rax, QWORD PTR [rbp-56] |
| sal rax, 5 |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-64] |
| add rdx, rax |
| mov rax, QWORD PTR [rbp-88] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::allocator_traits<std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::destroy<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*) |
| jmp .L1742 |
| .L1741: |
| mov rax, QWORD PTR [rbp-88] |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_get_Tp_allocator() |
| mov rdx, rax |
| mov rcx, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rbp-64] |
| mov rsi, rcx |
| mov rdi, rax |
| call void std::_Destroy<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&) |
| .L1742: |
| mov rax, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-32] |
| mov rcx, QWORD PTR [rbp-64] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_M_deallocate(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, unsigned long) |
| call __cxa_rethrow |
| mov rbx, rax |
| call __cxa_end_catch |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1746: |
| add rsp, 104 |
| pop rbx |
| pop rbp |
| ret |
| |
| std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::back(): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::end() |
| mov QWORD PTR [rbp-8], rax |
| lea rax, [rbp-8] |
| mov esi, 1 |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::operator-(long) const |
| mov QWORD PTR [rbp-16], rax |
| lea rax, [rbp-16] |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::operator*() const |
| nop |
| leave |
| ret |
| __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::__normal_iterator(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const* const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > const*, std::vector<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > > >::base() const: |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::tuple_element<0ul, std::tuple<bool*, std::default_delete<bool []> > >::type const& std::get<0ul, bool*, std::default_delete<bool []> >(std::tuple<bool*, std::default_delete<bool []> > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call bool* const& std::__get_helper<0ul, bool*, std::default_delete<bool []> >(std::_Tuple_impl<0ul, bool*, std::default_delete<bool []> > const&) |
| leave |
| ret |
| std::remove_reference<std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&>::type&& std::move<std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&>(std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_impl::_Vector_impl(std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call std::remove_reference<std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&>::type&& std::move<std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&>(std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >&) |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >::allocator(std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > const&) |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], 0 |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+16], 0 |
| nop |
| leave |
| ret |
| std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_impl::_M_swap_data(std::_Vector_base<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::allocator<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > > >::_Vector_impl&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*> >, std::is_move_constructible<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*>, std::is_move_assignable<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*> >::value, void>::type std::swap<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*>(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*&, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*&) |
| mov rax, QWORD PTR [rbp-16] |
| lea rdx, [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*> >, std::is_move_constructible<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*>, std::is_move_assignable<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*> >::value, void>::type std::swap<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*>(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*&, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*&) |
| mov rax, QWORD PTR [rbp-16] |
| lea rdx, [rax+16] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 16 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*> >, std::is_move_constructible<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*>, std::is_move_assignable<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*> >::value, void>::type std::swap<std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*>(std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*&, std::pair<long, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >*&) |
| nop |
| leave |
| ret |
| std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::get_allocator() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdi, rax |
| call std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_M_get_Tp_allocator() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::allocator<std::__cxx11::sub_match<char const*> >::allocator(std::allocator<std::__cxx11::sub_match<char const*> > const&) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_impl::_M_swap_data(std::_Vector_base<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::_Vector_impl&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<std::__cxx11::sub_match<char const*>*> >, std::is_move_constructible<std::__cxx11::sub_match<char const*>*>, std::is_move_assignable<std::__cxx11::sub_match<char const*>*> >::value, void>::type std::swap<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*&, std::__cxx11::sub_match<char const*>*&) |
| mov rax, QWORD PTR [rbp-16] |
| lea rdx, [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 8 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<std::__cxx11::sub_match<char const*>*> >, std::is_move_constructible<std::__cxx11::sub_match<char const*>*>, std::is_move_assignable<std::__cxx11::sub_match<char const*>*> >::value, void>::type std::swap<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*&, std::__cxx11::sub_match<char const*>*&) |
| mov rax, QWORD PTR [rbp-16] |
| lea rdx, [rax+16] |
| mov rax, QWORD PTR [rbp-8] |
| add rax, 16 |
| mov rsi, rdx |
| mov rdi, rax |
| call std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<std::__cxx11::sub_match<char const*>*> >, std::is_move_constructible<std::__cxx11::sub_match<char const*>*>, std::is_move_assignable<std::__cxx11::sub_match<char const*>*> >::value, void>::type std::swap<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*&, std::__cxx11::sub_match<char const*>*&) |
| nop |
| leave |
| ret |
| void std::__alloc_on_move<std::allocator<std::__cxx11::sub_match<char const*> > >(std::allocator<std::__cxx11::sub_match<char const*> >&, std::allocator<std::__cxx11::sub_match<char const*> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov rdx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::__do_alloc_on_move<std::allocator<std::__cxx11::sub_match<char const*> > >(std::allocator<std::__cxx11::sub_match<char const*> >&, std::allocator<std::__cxx11::sub_match<char const*> >&, std::integral_constant<bool, true>) |
| nop |
| leave |
| ret |
| std::unique_ptr<bool [], std::default_delete<bool []> >::operator[](unsigned long) const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::unique_ptr<bool [], std::default_delete<bool []> >::get() const |
| mov rdx, rax |
| mov rax, QWORD PTR [rbp-16] |
| add rax, rdx |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_rep_once_more(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 64 |
| mov QWORD PTR [rbp-40], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-56], rdx |
| mov BYTE PTR [rbp-44], al |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-40] |
| lea rdx, [rax+72] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::operator[](unsigned long) |
| mov QWORD PTR [rbp-16], rax |
| mov rax, QWORD PTR [rbp-16] |
| mov eax, DWORD PTR [rax+8] |
| test eax, eax |
| je .L1765 |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+24] |
| cmp rdx, rax |
| je .L1766 |
| .L1765: |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-32], rax |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov DWORD PTR [rax+8], 1 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| movzx ecx, BYTE PTR [rbp-44] |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| lea rdx, [rbp-32] |
| mov rax, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::pair<char const*, int>::operator=(std::pair<char const*, int> const&) |
| nop |
| jmp .L1768 |
| .L1766: |
| mov rax, QWORD PTR [rbp-16] |
| mov eax, DWORD PTR [rax+8] |
| cmp eax, 1 |
| jg .L1768 |
| mov rax, QWORD PTR [rbp-16] |
| mov eax, DWORD PTR [rax+8] |
| lea edx, [rax+1] |
| mov rax, QWORD PTR [rbp-16] |
| mov DWORD PTR [rax+8], edx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| movzx ecx, BYTE PTR [rbp-44] |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-16] |
| mov eax, DWORD PTR [rax+8] |
| lea edx, [rax-1] |
| mov rax, QWORD PTR [rbp-16] |
| mov DWORD PTR [rax+8], edx |
| .L1768: |
| nop |
| leave |
| ret |
| std::pair<char const*, char const*>::operator=(std::pair<char const*, char const*> const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax+8], rdx |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_at_begin() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+32] |
| cmp rdx, rax |
| jne .L1772 |
| mov esi, 128 |
| mov edi, 1 |
| call std::regex_constants::operator|(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+136] |
| mov esi, edx |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| jne .L1772 |
| mov eax, 1 |
| jmp .L1773 |
| .L1772: |
| mov eax, 0 |
| .L1773: |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_at_end() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+40] |
| cmp rdx, rax |
| jne .L1776 |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+136] |
| mov esi, 2 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| jne .L1776 |
| mov eax, 1 |
| jmp .L1777 |
| .L1776: |
| mov eax, 0 |
| .L1777: |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_word_boundary() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-40], rdi |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+32] |
| cmp rdx, rax |
| jne .L1780 |
| mov rax, QWORD PTR [rbp-40] |
| mov eax, DWORD PTR [rax+136] |
| mov esi, 4 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| je .L1780 |
| mov eax, 1 |
| jmp .L1781 |
| .L1780: |
| mov eax, 0 |
| .L1781: |
| test al, al |
| je .L1782 |
| mov eax, 0 |
| jmp .L1783 |
| .L1782: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+40] |
| cmp rdx, rax |
| jne .L1784 |
| mov rax, QWORD PTR [rbp-40] |
| mov eax, DWORD PTR [rax+136] |
| mov esi, 8 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| je .L1784 |
| mov eax, 1 |
| jmp .L1785 |
| .L1784: |
| mov eax, 0 |
| .L1785: |
| test al, al |
| je .L1786 |
| mov eax, 0 |
| jmp .L1783 |
| .L1786: |
| mov BYTE PTR [rbp-1], 0 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+32] |
| cmp rdx, rax |
| jne .L1787 |
| mov rax, QWORD PTR [rbp-40] |
| mov eax, DWORD PTR [rax+136] |
| mov esi, 128 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| je .L1788 |
| .L1787: |
| mov eax, 1 |
| jmp .L1789 |
| .L1788: |
| mov eax, 0 |
| .L1789: |
| test al, al |
| je .L1790 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+24] |
| mov QWORD PTR [rbp-16], rax |
| mov rax, QWORD PTR [rbp-16] |
| mov esi, 1 |
| mov rdi, rax |
| call char const* std::prev<char const*>(char const*, std::iterator_traits<char const*>::difference_type) |
| movzx eax, BYTE PTR [rax] |
| movsx edx, al |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, edx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_is_word(char) const |
| test al, al |
| je .L1790 |
| mov BYTE PTR [rbp-1], 1 |
| .L1790: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+40] |
| cmp rdx, rax |
| je .L1792 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+24] |
| movzx eax, BYTE PTR [rax] |
| movsx edx, al |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, edx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_is_word(char) const |
| test al, al |
| je .L1792 |
| mov eax, 1 |
| jmp .L1793 |
| .L1792: |
| mov eax, 0 |
| .L1793: |
| mov BYTE PTR [rbp-17], al |
| movzx eax, BYTE PTR [rbp-1] |
| cmp al, BYTE PTR [rbp-17] |
| setne al |
| .L1783: |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_lookahead(long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 200 |
| mov QWORD PTR [rbp-200], rdi |
| mov QWORD PTR [rbp-208], rsi |
| mov rdx, QWORD PTR [rbp-200] |
| lea rax, [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::vector(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&) |
| mov rax, QWORD PTR [rbp-200] |
| mov r8d, DWORD PTR [rax+136] |
| mov rax, QWORD PTR [rbp-200] |
| mov rdi, QWORD PTR [rax+48] |
| mov rax, QWORD PTR [rbp-200] |
| mov rdx, QWORD PTR [rax+40] |
| mov rax, QWORD PTR [rbp-200] |
| mov rsi, QWORD PTR [rax+24] |
| lea rcx, [rbp-48] |
| lea rax, [rbp-192] |
| mov r9d, r8d |
| mov r8, rdi |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_Executor(char const*, char const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type) |
| mov rax, QWORD PTR [rbp-208] |
| mov QWORD PTR [rbp-64], rax |
| lea rax, [rbp-192] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::_M_search_from_first() |
| test al, al |
| je .L1795 |
| mov QWORD PTR [rbp-24], 0 |
| .L1798: |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| cmp QWORD PTR [rbp-24], rax |
| setb al |
| test al, al |
| je .L1796 |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| movzx eax, BYTE PTR [rax+16] |
| test al, al |
| je .L1797 |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-200] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| mov rsi, rbx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>::operator=(std::__cxx11::sub_match<char const*> const&) |
| .L1797: |
| add QWORD PTR [rbp-24], 1 |
| jmp .L1798 |
| .L1796: |
| mov ebx, 1 |
| jmp .L1799 |
| .L1795: |
| mov ebx, 0 |
| .L1799: |
| lea rax, [rbp-192] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::~_Executor() [complete object destructor] |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~vector() [complete object destructor] |
| mov eax, ebx |
| jmp .L1805 |
| mov rbx, rax |
| lea rax, [rbp-192] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, false>::~_Executor() [complete object destructor] |
| jmp .L1802 |
| mov rbx, rax |
| .L1802: |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~vector() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1805: |
| add rsp, 200 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_State<char>::_M_matches(char) const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-12], al |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call std::__detail::_State<char>::_M_get_matcher() const |
| mov rdx, rax |
| movsx eax, BYTE PTR [rbp-12] |
| mov esi, eax |
| mov rdi, rdx |
| call std::function<bool (char)>::operator()(char) const |
| leave |
| ret |
| std::__detail::_Backref_matcher<char const*, std::__cxx11::regex_traits<char> >::_Backref_matcher(bool, std::__cxx11::regex_traits<char> const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-24], rdx |
| mov BYTE PTR [rbp-12], al |
| mov rax, QWORD PTR [rbp-8] |
| movzx edx, BYTE PTR [rbp-12] |
| mov BYTE PTR [rax], dl |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rbp-24] |
| mov QWORD PTR [rax+8], rdx |
| nop |
| pop rbp |
| ret |
| std::__detail::_Backref_matcher<char const*, std::__cxx11::regex_traits<char> >::_M_apply(char const*, char const*, char const*, char const*)::{lambda(char, char)#1}::operator()(char, char) const: |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 24 |
| mov QWORD PTR [rbp-24], rdi |
| mov eax, esi |
| mov BYTE PTR [rbp-28], al |
| mov eax, edx |
| mov BYTE PTR [rbp-32], al |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+8] |
| movsx edx, BYTE PTR [rbp-28] |
| mov esi, edx |
| mov rdi, rax |
| call std::ctype<char>::tolower(char) const |
| mov ebx, eax |
| mov rax, QWORD PTR [rbp-24] |
| mov rax, QWORD PTR [rax+8] |
| movsx edx, BYTE PTR [rbp-32] |
| mov esi, edx |
| mov rdi, rax |
| call std::ctype<char>::tolower(char) const |
| cmp bl, al |
| sete al |
| add rsp, 24 |
| pop rbx |
| pop rbp |
| ret |
| std::__detail::_Backref_matcher<char const*, std::__cxx11::regex_traits<char> >::_M_apply(char const*, char const*, char const*, char const*): |
| push rbp |
| mov rbp, rsp |
| push r13 |
| push r12 |
| push rbx |
| sub rsp, 72 |
| mov QWORD PTR [rbp-56], rdi |
| mov QWORD PTR [rbp-64], rsi |
| mov QWORD PTR [rbp-72], rdx |
| mov QWORD PTR [rbp-80], rcx |
| mov QWORD PTR [rbp-88], r8 |
| mov rax, QWORD PTR [rbp-56] |
| movzx eax, BYTE PTR [rax] |
| xor eax, 1 |
| test al, al |
| je .L1812 |
| mov rcx, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-80] |
| mov rsi, QWORD PTR [rbp-72] |
| mov rax, QWORD PTR [rbp-64] |
| mov rdi, rax |
| call bool std::__equal4<char const*, char const*>(char const*, char const*, char const*, char const*) |
| jmp .L1816 |
| .L1812: |
| mov rax, QWORD PTR [rbp-56] |
| mov rdx, QWORD PTR [rax+8] |
| lea rax, [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::__cxx11::regex_traits<char>::getloc() const |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::ctype<char> const& std::use_facet<std::ctype<char> >(std::locale const&) |
| mov QWORD PTR [rbp-40], rax |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::locale::~locale() [complete object destructor] |
| mov r12, QWORD PTR [rbp-56] |
| mov r13, QWORD PTR [rbp-40] |
| mov rcx, QWORD PTR [rbp-88] |
| mov rdx, QWORD PTR [rbp-80] |
| mov rsi, QWORD PTR [rbp-72] |
| mov rax, QWORD PTR [rbp-64] |
| mov r8, r12 |
| mov r9, r13 |
| mov rdi, rax |
| call bool std::__equal4<char const*, char const*, std::__detail::_Backref_matcher<char const*, std::__cxx11::regex_traits<char> >::_M_apply(char const*, char const*, char const*, char const*)::{lambda(char, char)#1}>(char const*, std::__detail::_Backref_matcher<char const*, std::__cxx11::regex_traits<char> >::_M_apply(char const*, char const*, char const*, char const*)::{lambda(char, char)#1}, char const*, char const*, std::__detail::_Backref_matcher<char const*, std::__cxx11::regex_traits<char> >::_M_apply(char const*, char const*, char const*, char const*)::{lambda(char, char)#1}) |
| nop |
| jmp .L1816 |
| mov rbx, rax |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::locale::~locale() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1816: |
| add rsp, 72 |
| pop rbx |
| pop r12 |
| pop r13 |
| pop rbp |
| ret |
| void std::__do_alloc_on_copy<std::allocator<std::__cxx11::sub_match<char const*> > >(std::allocator<std::__cxx11::sub_match<char const*> >&, std::allocator<std::__cxx11::sub_match<char const*> > const&, std::integral_constant<bool, false>): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| nop |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::__normal_iterator(std::__cxx11::sub_match<char const*> const* const&): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-8] |
| mov QWORD PTR [rax], rdx |
| nop |
| pop rbp |
| ret |
| std::__cxx11::sub_match<char const*>* std::__uninitialized_copy_a<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*> >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::__cxx11::sub_match<char const*>*, std::allocator<std::__cxx11::sub_match<char const*> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 32 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov QWORD PTR [rbp-24], rdx |
| mov QWORD PTR [rbp-32], rcx |
| mov rdx, QWORD PTR [rbp-24] |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::uninitialized_copy<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::__cxx11::sub_match<char const*>*>(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, std::__cxx11::sub_match<char const*>*) |
| leave |
| ret |
| __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > std::__miter_base<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > std::__copy_move_a2<false, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 48 |
| mov QWORD PTR [rbp-40], rdi |
| mov QWORD PTR [rbp-48], rsi |
| mov QWORD PTR [rbp-56], rdx |
| mov rax, QWORD PTR [rbp-56] |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__niter_base<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-48] |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*> const* std::__niter_base<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*> const* std::__niter_base<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*> const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >) |
| mov rdx, r12 |
| mov rsi, rbx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__copy_move_a<false, std::__cxx11::sub_match<char const*> const*, std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*> const*, std::__cxx11::sub_match<char const*> const*, std::__cxx11::sub_match<char const*>*) |
| mov QWORD PTR [rbp-24], rax |
| lea rdx, [rbp-24] |
| lea rax, [rbp-32] |
| mov rsi, rdx |
| mov rdi, rax |
| call __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >::__normal_iterator(std::__cxx11::sub_match<char const*>* const&) |
| mov rax, QWORD PTR [rbp-32] |
| add rsp, 48 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| void std::_Destroy<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rdx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rdx |
| mov rdi, rax |
| call void std::_Destroy_aux<true>::__destroy<__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > > >(__gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >, __gnu_cxx::__normal_iterator<std::__cxx11::sub_match<char const*>*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > >) |
| nop |
| leave |
| ret |
| std::__cxx11::sub_match<char const*>* std::__miter_base<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*): |
| push rbp |
| mov rbp, rsp |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| pop rbp |
| ret |
| std::__cxx11::sub_match<char const*>* std::__copy_move_a2<false, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*): |
| push rbp |
| mov rbp, rsp |
| push r12 |
| push rbx |
| sub rsp, 32 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__niter_base<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*) |
| mov r12, rax |
| mov rax, QWORD PTR [rbp-32] |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__niter_base<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-24] |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__niter_base<std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*) |
| mov rdx, r12 |
| mov rsi, rbx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__copy_move_a<false, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*) |
| add rsp, 32 |
| pop rbx |
| pop r12 |
| pop rbp |
| ret |
| std::__cxx11::sub_match<char const*>* std::uninitialized_copy<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-24], rdi |
| mov QWORD PTR [rbp-32], rsi |
| mov QWORD PTR [rbp-40], rdx |
| mov BYTE PTR [rbp-1], 1 |
| mov rdx, QWORD PTR [rbp-40] |
| mov rcx, QWORD PTR [rbp-32] |
| mov rax, QWORD PTR [rbp-24] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>* std::__uninitialized_copy<false>::__uninit_copy<std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*>(std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*, std::__cxx11::sub_match<char const*>*) |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_rep_once_more(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 64 |
| mov QWORD PTR [rbp-40], rdi |
| mov eax, esi |
| mov QWORD PTR [rbp-56], rdx |
| mov BYTE PTR [rbp-44], al |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+56] |
| lea rdx, [rax+56] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::__detail::_State<char>, std::allocator<std::__detail::_State<char> > >::operator[](unsigned long) const |
| mov QWORD PTR [rbp-8], rax |
| mov rax, QWORD PTR [rbp-40] |
| lea rdx, [rax+72] |
| mov rax, QWORD PTR [rbp-56] |
| mov rsi, rax |
| mov rdi, rdx |
| call std::vector<std::pair<char const*, int>, std::allocator<std::pair<char const*, int> > >::operator[](unsigned long) |
| mov QWORD PTR [rbp-16], rax |
| mov rax, QWORD PTR [rbp-16] |
| mov eax, DWORD PTR [rax+8] |
| test eax, eax |
| je .L1833 |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+24] |
| cmp rdx, rax |
| je .L1834 |
| .L1833: |
| mov rax, QWORD PTR [rbp-16] |
| mov rdx, QWORD PTR [rax+8] |
| mov rax, QWORD PTR [rax] |
| mov QWORD PTR [rbp-32], rax |
| mov QWORD PTR [rbp-24], rdx |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-16] |
| mov QWORD PTR [rax], rdx |
| mov rax, QWORD PTR [rbp-16] |
| mov DWORD PTR [rax+8], 1 |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| movzx ecx, BYTE PTR [rbp-44] |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| lea rdx, [rbp-32] |
| mov rax, QWORD PTR [rbp-16] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::pair<char const*, int>::operator=(std::pair<char const*, int> const&) |
| nop |
| jmp .L1836 |
| .L1834: |
| mov rax, QWORD PTR [rbp-16] |
| mov eax, DWORD PTR [rax+8] |
| cmp eax, 1 |
| jg .L1836 |
| mov rax, QWORD PTR [rbp-16] |
| mov eax, DWORD PTR [rax+8] |
| lea edx, [rax+1] |
| mov rax, QWORD PTR [rbp-16] |
| mov DWORD PTR [rax+8], edx |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+16] |
| movzx ecx, BYTE PTR [rbp-44] |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, ecx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_dfs(std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Match_mode, long) |
| mov rax, QWORD PTR [rbp-16] |
| mov eax, DWORD PTR [rax+8] |
| lea edx, [rax-1] |
| mov rax, QWORD PTR [rbp-16] |
| mov DWORD PTR [rax+8], edx |
| .L1836: |
| nop |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_at_begin() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+32] |
| cmp rdx, rax |
| jne .L1838 |
| mov esi, 128 |
| mov edi, 1 |
| call std::regex_constants::operator|(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| mov edx, eax |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+112] |
| mov esi, edx |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| jne .L1838 |
| mov eax, 1 |
| jmp .L1839 |
| .L1838: |
| mov eax, 0 |
| .L1839: |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_at_end() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-8] |
| mov rax, QWORD PTR [rax+40] |
| cmp rdx, rax |
| jne .L1842 |
| mov rax, QWORD PTR [rbp-8] |
| mov eax, DWORD PTR [rax+112] |
| mov esi, 2 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| jne .L1842 |
| mov eax, 1 |
| jmp .L1843 |
| .L1842: |
| mov eax, 0 |
| .L1843: |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_word_boundary() const: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 48 |
| mov QWORD PTR [rbp-40], rdi |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+32] |
| cmp rdx, rax |
| jne .L1846 |
| mov rax, QWORD PTR [rbp-40] |
| mov eax, DWORD PTR [rax+112] |
| mov esi, 4 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| je .L1846 |
| mov eax, 1 |
| jmp .L1847 |
| .L1846: |
| mov eax, 0 |
| .L1847: |
| test al, al |
| je .L1848 |
| mov eax, 0 |
| jmp .L1849 |
| .L1848: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+40] |
| cmp rdx, rax |
| jne .L1850 |
| mov rax, QWORD PTR [rbp-40] |
| mov eax, DWORD PTR [rax+112] |
| mov esi, 8 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| je .L1850 |
| mov eax, 1 |
| jmp .L1851 |
| .L1850: |
| mov eax, 0 |
| .L1851: |
| test al, al |
| je .L1852 |
| mov eax, 0 |
| jmp .L1849 |
| .L1852: |
| mov BYTE PTR [rbp-1], 0 |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+32] |
| cmp rdx, rax |
| jne .L1853 |
| mov rax, QWORD PTR [rbp-40] |
| mov eax, DWORD PTR [rax+112] |
| mov esi, 128 |
| mov edi, eax |
| call std::regex_constants::operator&(std::regex_constants::match_flag_type, std::regex_constants::match_flag_type) |
| test eax, eax |
| je .L1854 |
| .L1853: |
| mov eax, 1 |
| jmp .L1855 |
| .L1854: |
| mov eax, 0 |
| .L1855: |
| test al, al |
| je .L1856 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+24] |
| mov QWORD PTR [rbp-16], rax |
| mov rax, QWORD PTR [rbp-16] |
| mov esi, 1 |
| mov rdi, rax |
| call char const* std::prev<char const*>(char const*, std::iterator_traits<char const*>::difference_type) |
| movzx eax, BYTE PTR [rax] |
| movsx edx, al |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, edx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_is_word(char) const |
| test al, al |
| je .L1856 |
| mov BYTE PTR [rbp-1], 1 |
| .L1856: |
| mov rax, QWORD PTR [rbp-40] |
| mov rdx, QWORD PTR [rax+24] |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+40] |
| cmp rdx, rax |
| je .L1858 |
| mov rax, QWORD PTR [rbp-40] |
| mov rax, QWORD PTR [rax+24] |
| movzx eax, BYTE PTR [rax] |
| movsx edx, al |
| mov rax, QWORD PTR [rbp-40] |
| mov esi, edx |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_is_word(char) const |
| test al, al |
| je .L1858 |
| mov eax, 1 |
| jmp .L1859 |
| .L1858: |
| mov eax, 0 |
| .L1859: |
| mov BYTE PTR [rbp-17], al |
| movzx eax, BYTE PTR [rbp-1] |
| cmp al, BYTE PTR [rbp-17] |
| setne al |
| .L1849: |
| leave |
| ret |
| std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_lookahead(long): |
| push rbp |
| mov rbp, rsp |
| push rbx |
| sub rsp, 184 |
| mov QWORD PTR [rbp-184], rdi |
| mov QWORD PTR [rbp-192], rsi |
| mov rdx, QWORD PTR [rbp-184] |
| lea rax, [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::vector(std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > > const&) |
| mov rax, QWORD PTR [rbp-184] |
| mov r8d, DWORD PTR [rax+112] |
| mov rax, QWORD PTR [rbp-184] |
| mov rdi, QWORD PTR [rax+48] |
| mov rax, QWORD PTR [rbp-184] |
| mov rdx, QWORD PTR [rax+40] |
| mov rax, QWORD PTR [rbp-184] |
| mov rsi, QWORD PTR [rax+24] |
| lea rcx, [rbp-48] |
| lea rax, [rbp-176] |
| mov r9d, r8d |
| mov r8, rdi |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_Executor(char const*, char const*, std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >&, std::__cxx11::basic_regex<char, std::__cxx11::regex_traits<char> > const&, std::regex_constants::match_flag_type) |
| mov rax, QWORD PTR [rbp-192] |
| mov QWORD PTR [rbp-80], rax |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::_M_search_from_first() |
| test al, al |
| je .L1861 |
| mov QWORD PTR [rbp-24], 0 |
| .L1864: |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::size() const |
| cmp QWORD PTR [rbp-24], rax |
| setb al |
| test al, al |
| je .L1862 |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| movzx eax, BYTE PTR [rax+16] |
| test al, al |
| je .L1863 |
| mov rdx, QWORD PTR [rbp-24] |
| lea rax, [rbp-48] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| mov rbx, rax |
| mov rax, QWORD PTR [rbp-184] |
| mov rdx, QWORD PTR [rbp-24] |
| mov rsi, rdx |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::operator[](unsigned long) |
| mov rsi, rbx |
| mov rdi, rax |
| call std::__cxx11::sub_match<char const*>::operator=(std::__cxx11::sub_match<char const*> const&) |
| .L1863: |
| add QWORD PTR [rbp-24], 1 |
| jmp .L1864 |
| .L1862: |
| mov ebx, 1 |
| jmp .L1865 |
| .L1861: |
| mov ebx, 0 |
| .L1865: |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::~_Executor() [complete object destructor] |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~vector() [complete object destructor] |
| mov eax, ebx |
| jmp .L1871 |
| mov rbx, rax |
| lea rax, [rbp-176] |
| mov rdi, rax |
| call std::__detail::_Executor<char const*, std::allocator<std::__cxx11::sub_match<char const*> >, std::__cxx11::regex_traits<char>, true>::~_Executor() [complete object destructor] |
| jmp .L1868 |
| mov rbx, rax |
| .L1868: |
| lea rax, [rbp-48] |
| mov rdi, rax |
| call std::vector<std::__cxx11::sub_match<char const*>, std::allocator<std::__cxx11::sub_match<char const*> > >::~vector() [complete object destructor] |
| mov rax, rbx |
| mov rdi, rax |
| call _Unwind_Resume |
| .L1871: |
| add rsp, 184 |
| pop rbx |
| pop rbp |
| ret |
| std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> >::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >(std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > > const&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> >::new_allocator() [base object constructor] |
| nop |
| leave |
| ret |
| std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> >::~allocator() [base object destructor]: |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov rax, QWORD PTR [rbp-8] |
| mov rdi, rax |
| call __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> >::~new_allocator() [base object destructor] |
| nop |
| leave |
| ret |
| std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> >&): |
| push rbp |
| mov rbp, rsp |
| sub rsp, 16 |
| mov QWORD PTR [rbp-8], rdi |
| mov QWORD PTR [rbp-16], rsi |
| mov rax, QWORD PTR [rbp-16] |
| mov esi, 1 |
| mov rdi, rax |
| call std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) |
| mov rdx, rax |
| mov rcx, QWORD PTR [rbp-16] |
| mov rax, QWORD PTR [rbp-8] |
| mov rsi, rcx |
| mov rdi, rax |
| call std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> > >::__allocated_ptr(std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> >&, std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2>*) |
| mov rax, QWORD PTR [rbp-8] |
| leave |
| ret |
| std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<std::__detail::_NFA<std::__cxx11::regex_traits<char> >, std::allocator<std::__detail::_NFA<std::__cxx11::regex_traits<char> > >, (__gnu_cxx::_Lock_policy)2> > >::~__allocated_ptr() [base object destructor]: |