Function at 0x41b8a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xf8
mov qword [rsp + 0x150], r8
mov r8, qword [r9 + 0x10]
mov r13, rdx
mov qword [rsp + 0x140], rcx
test r8, r8
je 0x41bc96
mov rax, qword [rsp + 0x150]
movabs r10, 0xaaaaaaaaaaaaaaab
mov qword [rax + 0x18], rcx
mov rax, qword [r8 + 0x20]
lea edx, [rax + 3]
mov rax, qword [rsp + 0x150]
mov rsi, qword [rax + 8]
mov rbx, qword [rax]
mov rax, rsi
sub rax, rbx
sar rax, 3
imul rax, r10
cmp rdx, rax
ja 0x41c080
jae 0x41b948
lea rax, [rdx + rdx*2]
lea rax, [rbx + rax*8]
cmp rsi, rax
je 0x41b948
mov rdi, qword [rsp + 0x150]
mov rsi, rax
cmp rbx, rsi
mov qword [rdi + 8], rax
je 0x41b94d
nop dword [rax]
mov byte [rbx + 0x10], 0
add rbx, 0x18
cmp rbx, rsi
jne 0x41b940
movabs rdx, 0xcccccccccccccccd
mov rax, qword [r8 + 0x38]
sub rax, qword [r8 + 0x30]
sar rax, 3
imul rax, rdx
test dword [r9], 0x400
mov rbx, rax
je 0x41c1d3
mov rdi, qword [rsp + 0x150]
movq xmm2, r13
movq xmm3, r8
test rax, rax
movq xmm0, qword [rsp + 0x140]
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x70], 0
punpcklqdq xmm0, xmm2
movaps xmmword [rsp + 0x80], xmm0
movq xmm0, r9
punpcklqdq xmm0, xmm3
mov qword [rsp + 0x78], 0
movaps xmmword [rsp + 0x90], xmm0
pxor xmm0, xmm0
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0xa8], 0
movaps xmmword [rsp + 0xb0], xmm0
je 0x41c490
movabs rdx, 0xfffffffffffffff
cmp rax, rdx
ja 0x41c4e4
mov rsi, rax
shl rsi, 4
mov rcx, rsi
call sym.operator_new_unsigned_long_long_
mov r8, qword [rsp + 0x98]
lea rdx, [rax + rsi]
movq xmm0, rax
movabs rcx, 0xcccccccccccccccd
punpcklqdq xmm0, xmm0
mov qword [rsp + 0xb8], rdx
movups xmmword [rsp + 0xa8], xmm0
mov rsi, qword [r8 + 0x38]
sub rsi, qword [r8 + 0x30]
sar rsi, 3
imul rsi, rcx
nop dword [rax]
mov qword [rax], 0
add rax, 0x10
mov dword [rax - 8], 0
sub rbx, 1
jne 0x41ba60
mov rcx, rsi
mov ebx, dword [r8 + 0x1c]
pxor xmm0, xmm0
mov qword [rsp + 0xb0], rdx
movaps xmmword [rsp + 0xc0], xmm0
mov qword [rsp + 0xd0], 0
call sym.operator_new___unsigned_long_long_
mov r9, rax
mov rax, rsi
sub rax, 1
js 0x41bacf
lea rax, [rsi - 2]
mov r8d, 1
mov rcx, r9
cmp rax, 0xffffffffffffffff
cmovge r8, rsi
xor edx, edx
call sym.memset
mov r9, rax
mov rax, qword [rsp + 0x80]
lea r12, [rsp + 0x60]
mov dword [rsp + 0x3c], ebx
mov r8, qword [rsp + 0xa0]
lea rdx, [rsp + 0x3c]
mov qword [rsp + 0xd8], r9
lea rcx, [r12 + 0x60]
mov dword [rsp + 0xe0], ebx
mov dword [rsp + 0xe8], 0
mov qword [rsp + 0x78], rax
call sym._ZNSt6vectorISt4pairIlS_INSt7__cxx119sub_matchIN9__gnu_cxx17__normal_iteratorIPKcNS1_12basic_stringIcSt11char_traitsIcESaIcEEE
mov rdi, qword [rsp + 0xc8]
mov byte [rsp + 0xec], 0
mov rbx, qword [rsp + 0xc0]
cmp rdi, rbx
je 0x41bd72
lea rbp, [0x0051ab94]
nop
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0xd8]
mov r8, qword [rax + 0x38]
sub r8, qword [rax + 0x30]
movabs rax, 0xcccccccccccccccd
sar r8, 3
imul r8, rax
test r8, r8
je 0x41bb76
xor edx, edx
call sym.memset
mov rax, qword [rsp + 0xd0]
movq xmm0, rbx
movq xmm1, rdi
mov qword [rsp + 0xd0], 0
punpcklqdq xmm0, xmm1
add rbx, 0x20
movaps xmmword [rsp + 0x40], xmm0
pxor xmm0, xmm0
movaps xmmword [rsp + 0xc0], xmm0
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x68], 0
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x70], 0
mov rax, qword [rbx - 0x18]
test rcx, rcx
mov qword [rsp + 0x60], rax
mov rdx, qword [rbx - 0x10]
mov qword [rbx - 0x18], 0
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x68], rdx
mov rdx, qword [rbx - 8]
mov qword [rbx - 0x10], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], rdx
mov qword [rbx - 8], rax
je 0x41bc08
call sym.operator_delete_void_
movsxd rax, dword [rbx - 0x20]
mov rdx, qword [rsp + 0xd8]
mov r8, rax
add rdx, rax
movzx r14d, byte [rdx]
test r14b, r14b
jne case.0x41bc51.0
mov byte [rdx], 1
lea rdx, [rax + rax*4]
mov rax, qword [rsp + 0x98]
mov rax, qword [rax + 0x30]
lea rsi, [rax + rdx*8]
cmp dword [rsi], 0xc
ja case.0x41bc51.0
mov eax, dword [rsi]
movsxd rax, dword [rbp + rax*4]
add rax, rbp
jmp rax
mov rcx, qword [rsp + 0x150]
mov edx, 3
call fcn.004b00b0
mov rax, qword [rsp + 0x150]
mov rdi, qword [rsp + 0x150]
mov rax, qword [rax]
mov rdx, qword [rdi + 8]
cmp rax, rdx
je 0x41bc96
mov byte [rax + 0x10], 0
add rax, 0x18
mov qword [rax - 0x10], r13
mov qword [rax - 0x18], r13
cmp rdx, rax
jne 0x41bc81
xor edi, edi
mov eax, edi
add rsp, 0xf8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x78]
cmp rax, qword [rsp + 0x80]
je 0x41c144
cmp rax, qword [rsp + 0x88]
je 0x41c160
cmp rdi, rbx
je 0x41bcf0
add rbx, 0x20
jmp 0x41bbb2
mov edx, r8d
mov rcx, r12
call fcn.004136f0
cmp rdi, rbx
jne 0x41bcd6
mov rax, qword [rsp + 0x78]
cmp rax, qword [rsp + 0x88]
je 0x41bfa6
mov rsi, qword [rsp + 0x48]
add rax, 1
mov rbx, qword [rsp + 0x40]
mov qword [rsp + 0x78], rax
cmp rsi, rbx
je 0x41bd40
nop dword [rax + rax]
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x41c0e0
call sym.operator_delete_void_
add rbx, 0x20
cmp rbx, rsi
jne 0x41bd20
mov rbx, qword [rsp + 0x40]
test rbx, rbx
je 0x41c0f2
mov rcx, rbx
call sym.operator_delete_void_
mov rdi, qword [rsp + 0xc8]
mov byte [rsp + 0xec], 0
mov rbx, qword [rsp + 0xc0]
cmp rbx, rdi
jne 0x41bb40
xor edi, edi
mov rcx, qword [rsp + 0xd8]
test rcx, rcx
je 0x41bd90
call sym.operator_delete___void_
mov rbx, qword [rsp + 0xc8]
nop
mov rsi, qword [rsp + 0xc0]
cmp rsi, rbx
je 0x41bdc3
nop dword [rax]
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x41c120
call sym.operator_delete_void_
add rsi, 0x20
cmp rsi, rbx
jne 0x41bda0
mov rbx, qword [rsp + 0xc0]
test rbx, rbx
je 0x41bdd0
mov rcx, rbx
call sym.operator_delete_void_
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x41bde2
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x41bdf1
call sym.operator_delete_void_
test dil, dil
je 0x41bc53
mov rax, qword [rsp + 0x150]
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
mov rax, rcx
cmp rcx, rdx
je 0x41be27
cmp byte [rax + 0x10], 0
jne 0x41be1e
mov qword [rax + 8], r13
mov qword [rax], r13
add rax, 0x18
cmp rdx, rax
jne 0x41be11
mov rsi, qword [rsp + 0x140]
sub rdx, rcx
sar rdx, 3
lea rax, [rdx*8 - 0x30]
lea rdx, [rcx + rax]
lea rax, [rcx + rax + 0x18]
mov byte [rdx + 0x10], 0
mov qword [rdx], rsi
mov qword [rdx + 8], rsi
mov byte [rax + 0x10], 0
mov qword [rax], r13
mov qword [rax + 8], r13
jmp 0x41bc98
xor edx, edx
mov rcx, r12
call fcn.004c5ec0
jmp case.0x41bc51.0
mov rax, qword [rsi + 8]
mov rcx, r12
lea rdx, [rax + rax*2]
mov rax, qword [rsp + 0x60]
lea r14, [rax + rdx*8]
mov rax, qword [rsp + 0x78]
xor edx, edx
mov r15, qword [r14]
mov qword [r14], rax
mov r8d, dword [rsi + 4]
call fcn.004c6120
mov qword [r14], r15
jmp case.0x41bc51.0
xor edx, edx
mov rcx, r12
call fcn.004c60c0
jmp case.0x41bc51.0
mov rax, qword [rsp + 0x78]
cmp rax, qword [rsp + 0x80]
je 0x41c190
cmp rax, qword [rsp + 0x88]
je 0x41c1c0
movsx r15d, byte [rax - 1]
lea r8, [0x0052dbe1]
xor r9d, r9d
mov rax, qword [rsp + 0x90]
lea rdx, [r8 - 1]
mov r14, qword [rax + 0x10]
add r14, 0x48
mov rcx, r14
call method.std::__cxx11::regex_traits_char_::_RegexMask_std::__cxx11::regex_traits_char_.lookup_classname_char_const__char_const__char_const__bool__const
mov r8d, eax
mov edx, r15d
mov rcx, r14
call method.std::__cxx11::regex_traits_char_.isctype_char__std::__cxx11::regex_traits_char_::_RegexMask__const
mov r14d, eax
mov rax, qword [rsp + 0x78]
cmp rax, qword [rsp + 0x88]
je 0x41bf5d
movsx eax, byte [rax]
lea r8, [0x0052dbe1]
xor r9d, r9d
lea rdx, [r8 - 1]
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x90]
mov r15, qword [rax + 0x10]
add r15, 0x48
mov rcx, r15
call method.std::__cxx11::regex_traits_char_::_RegexMask_std::__cxx11::regex_traits_char_.lookup_classname_char_const__char_const__char_const__bool__const
mov edx, dword [rsp + 0x28]
mov r8d, eax
mov rcx, r15
call method.std::__cxx11::regex_traits_char_.isctype_char__std::__cxx11::regex_traits_char_::_RegexMask__const
xor r14d, eax
movzx eax, byte [rsi + 0xc]
xor eax, 1
cmp al, r14b
jne case.0x41bc51.0
mov r8d, dword [rsi + 4]
xor edx, edx
mov rcx, r12
call fcn.004c6120
jmp case.0x41bc51.0
mov rax, qword [rsp + 0x88]
cmp qword [rsp + 0x78], rax
jne case.0x41bc51.0
test byte [rsp + 0xe8], 2
je 0x41bf6d
cmp rdi, rbx
jne 0x41bcd6
lea rcx, [rsp + 0x40]
call fcn.004b37e0
mov rbx, qword [rsp + 0xc0]
mov rbp, qword [rsp + 0xc8]
movzx edi, byte [rsp + 0xec]
cmp rbx, rbp
je 0x41bff3
mov rsi, rbx
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x41c132
call sym.operator_delete_void_
add rsi, 0x20
cmp rsi, rbp
jne 0x41bfd0
mov qword [rsp + 0xc8], rbx
mov rcx, qword [rsp + 0xd8]
test rcx, rcx
je 0x41bd90
call sym.operator_delete___void_
mov rbx, qword [rsp + 0xc8]
jmp 0x41bd90
mov rax, qword [rsp + 0x80]
cmp qword [rsp + 0x78], rax
jne case.0x41bc51.0
test byte [rsp + 0xe8], 0x81
jne case.0x41bc51.0
jmp 0x41bf6d
xor edx, edx
mov rcx, r12
call fcn.004c5e20
jmp case.0x41bc51.0
xor edx, edx
mov rcx, r12
call fcn.004c5c40
jmp case.0x41bc51.0
xor edx, edx
mov rcx, r12
call fcn.004c5b20
jmp case.0x41bc51.0
mov rdi, qword [rsp + 0x150]
sub rdx, rax
mov rdi, qword [rdi + 0x10]
mov rcx, rdi
mov qword [rsp + 0x28], rdi
sub rcx, rsi
sar rcx, 3
imul rcx, r10
cmp rdx, rcx
ja 0x41c333
lea rax, [rdx + rdx*2]
lea rax, [rsi + rax*8]
mov qword [rsi], 0
add rsi, 0x18
mov qword [rsi - 0x10], 0
mov byte [rsi - 8], 0
cmp rsi, rax
jne 0x41c0b3
mov rax, qword [rsp + 0x150]
mov qword [rax + 8], rsi
jmp 0x41b948
add rbx, 0x20
cmp rsi, rbx
jne 0x41bd20
jmp 0x41bd3b
mov rdi, qword [rsp + 0xc8]
mov byte [rsp + 0xec], 0
mov rbx, qword [rsp + 0xc0]
cmp rdi, rbx
jne 0x41bb40
xor edi, edi
jmp 0x41bd74
add rsi, 0x20
cmp rsi, rbx
jne 0x41bda0
jmp 0x41bdbb
add rsi, 0x20
cmp rsi, rbp
jne 0x41bfd0
jmp 0x41bfeb
test byte [rsp + 0xe8], 0x20
jne case.0x41bc51.0
cmp rax, qword [rsp + 0x88]
jne case.0x41bc51.0
cmp byte [rsp + 0xec], 0
jne 0x41bf9d
mov rcx, qword [rsp + 0xa0]
mov rdx, r12
mov byte [rsp + 0xec], 1
call fcn.004b0280
jmp case.0x41bc51.0
mov edx, dword [rsp + 0xe8]
test dl, 4
jne 0x41bf5d
cmp rax, qword [rsp + 0x88]
je 0x41c4ad
and edx, 0x80
je 0x41bf1e
jmp 0x41bed3
test byte [rsp + 0xe8], 8
jne 0x41bf5d
jmp 0x41bed3
mov rdi, qword [rsp + 0x150]
movq xmm4, r13
movq xmm5, r8
test rax, rax
movq xmm0, qword [rsp + 0x140]
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x70], 0
punpcklqdq xmm0, xmm4
movaps xmmword [rsp + 0x80], xmm0
movq xmm0, r9
punpcklqdq xmm0, xmm5
mov qword [rsp + 0x78], 0
movaps xmmword [rsp + 0x90], xmm0
pxor xmm0, xmm0
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0xa8], 0
movaps xmmword [rsp + 0xb0], xmm0
je 0x41c470
movabs rdx, 0xfffffffffffffff
cmp rax, rdx
ja 0x41c4d3
mov rsi, rax
shl rsi, 4
mov rcx, rsi
call sym.operator_new_unsigned_long_long_
mov rdx, qword [rsp + 0xa0]
lea rcx, [rax + rsi]
movq xmm0, rax
mov r8, qword [rsp + 0x98]
punpcklqdq xmm0, xmm0
mov qword [rsp + 0xb8], rcx
movups xmmword [rsp + 0xa8], xmm0
nop word [rax + rax]
mov qword [rax], 0
add rax, 0x10
mov dword [rax - 8], 0
sub rbx, 1
jne 0x41c2b0
mov eax, dword [r8 + 0x1c]
lea r12, [rsp + 0x60]
mov qword [rsp + 0xb0], rcx
mov rcx, r12
mov dword [rsp + 0xd0], 0
mov byte [rsp + 0xd4], 0
mov qword [rsp + 0xc8], 0
mov dword [rsp + 0xc0], eax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x78], rax
call fcn.004b0280
mov r8d, dword [rsp + 0xc0]
xor edx, edx
mov rcx, r12
call fcn.004c6a20
movzx edi, byte [rsp + 0xd4]
jmp 0x41bdd0
movabs rcx, 0xaaaaaaaaaaaaaaa
mov r8, rcx
sub r8, rax
cmp rdx, r8
ja 0x41c4d8
cmp rax, rdx
mov r8, rdx
cmovae r8, rax
add rax, r8
jb 0x41c4c7
cmp rax, rcx
cmova rax, rcx
lea rdi, [rax + rax*2]
shl rdi, 3
mov rcx, rdi
mov qword [rsp + 0x158], r9
mov qword [rsp + 0x28], rdx
call sym.operator_new_unsigned_long_long_
mov rdx, qword [rsp + 0x28]
mov rbx, rax
mov rax, qword [rsp + 0x150]
mov r9, qword [rsp + 0x158]
mov r10, qword [rax + 8]
mov rcx, qword [rax]
cmp r10, rcx
je 0x41c4a5
mov rax, rcx
mov r8, rbx
mov r11, qword [rax]
add rax, 0x18
add r8, 0x18
mov qword [r8 - 0x18], r11
mov r11, qword [rax - 0x10]
mov qword [r8 - 0x10], r11
mov r11, qword [rax - 8]
mov qword [r8 - 8], r11
cmp r10, rax
jne 0x41c3b1
lea rax, [r10 - 0x18]
movabs r8, 0xaaaaaaaaaaaaaab
sub rax, rcx
shr rax, 3
imul rax, r8
movabs r8, 0x1fffffffffffffff
and rax, r8
lea rax, [rax + rax*2 + 3]
lea rax, [rbx + rax*8]
lea rdx, [rdx + rdx*2]
lea rsi, [rax + rdx*8]
nop dword [rax]
mov qword [rax], 0
add rax, 0x18
mov qword [rax - 0x10], 0
mov byte [rax - 8], 0
cmp rax, rsi
jne 0x41c410
test rcx, rcx
je 0x41c446
mov qword [rsp + 0x158], r9
call sym.operator_delete_void_
mov r9, qword [rsp + 0x158]
mov rax, qword [rsp + 0x150]
movq xmm0, rbx
movq xmm2, rsi
add rdi, rbx
punpcklqdq xmm0, xmm2
mov r8, qword [r9 + 0x10]
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rdi
jmp 0x41b948
mov rdx, rdi
xor ecx, ecx
mov qword [rsp + 0xb8], 0
jmp 0x41c2c8
mov qword [rsp + 0xb8], 0
xor esi, esi
xor edx, edx
jmp 0x41ba78
mov rax, rbx
jmp 0x41c404
test dl, 8
jne 0x41bf5d
and edx, 0x80
jne 0x41bed3
jmp 0x41bf5d
mov rdi, 0xfffffffffffffff0
jmp 0x41c36e
call sym.std::__throw_bad_alloc__
lea rcx, [0x00516194]
call sym.std::__throw_length_error_char_const_
call sym.std::__throw_bad_alloc__
mov rbx, rax
mov rcx, r12
call fcn.004c65b0
mov rcx, rbx
call sym._Unwind_Resume
mov rbx, rax
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x41c54e
call sym.operator_delete_void_
jmp 0x41c54e
mov rcx, rbx
call sym._Unwind_Resume
jmp 0x41c4fc