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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1a8
mov qword [rsp + 0x50], rcx
mov rcx, qword [rdx]
lea rax, [rcx + 0xa0]
mov qword [rsp + 0x38], rax
mov rax, qword [rcx + 0xb0]
mov qword [rsp + 0xe8], rax
movups xmm0, xmmword [rcx + 0xa0]
movups xmmword [rsp + 0xd8], xmm0
mov rax, qword [rcx + 0xb0]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0x48], rcx
movups xmm0, xmmword [rcx + 0xa0]
movups xmmword [rsp + 0x90], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x80], 8
mov qword [rsp + 0x88], 0
mov esi, 8
xor r12d, r12d
xor eax, eax
mov qword [rsp + 0x40], rax
xor r13d, r13d
mov qword [rsp + 0x28], rdx
mov rcx, rdx
call sym.regex_syntax::ast::parse::ParserI_P_::char::h3913f9e171fb0ac2
cmp eax, 0x3a
je 0x1400ba233
mov rcx, qword [rsp + 0x28]
call sym.regex_syntax::ast::parse::ParserI_P_::char::h3913f9e171fb0ac2
cmp eax, 0x29
je 0x1400ba233
mov rcx, qword [rsp + 0x28]
call sym.regex_syntax::ast::parse::ParserI_P_::char::h3913f9e171fb0ac2
cmp eax, 0x2d
jne 0x1400b9ca0
mov rax, qword [rsp + 0x38]
mov rsi, qword [rax]
mov rcx, qword [rsp + 0x28]
call sym.regex_syntax::ast::parse::ParserI_P_::char::h3913f9e171fb0ac2
mov ecx, 1
cmp eax, 0x80
jb 0x1400b9adf
mov ecx, 2
cmp eax, 0x800
jb 0x1400b9adf
cmp eax, 0x10000
mov ecx, 4
sbb rcx, 0
add rsi, rcx
mov rcx, qword [rsp + 0x28]
jb 0x1400ba405
mov qword [rsp + 0x148], rsi
mov rax, qword [rsp + 0x48]
mov r15, qword [rax + 0xb0]
inc r15
je 0x1400ba40e
mov rax, qword [rax + 0xa8]
mov qword [rsp + 0x58], rax
call sym.regex_syntax::ast::parse::ParserI_P_::char::h3913f9e171fb0ac2
cmp eax, 0xa
sete byte [rsp + 0x37]
mov eax, 1
cmove r15, rax
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x160], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x150], xmm0
mov rbp, qword [rcx]
mov rcx, qword [rsp + 0x28]
call sym.regex_syntax::ast::parse::ParserI_P_::char::h3913f9e171fb0ac2
mov ecx, 1
cmp eax, 0x80
jb 0x1400b9b7b
mov ecx, 2
cmp eax, 0x800
jb 0x1400b9b7b
cmp eax, 0x10000
mov ecx, 4
sbb rcx, 0
add rbp, rcx
mov rcx, qword [rsp + 0x28]
jb 0x1400ba405
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0xb0]
inc rbx
je 0x1400ba40e
mov rsi, qword [rax + 0xa8]
call sym.regex_syntax::ast::parse::ParserI_P_::char::h3913f9e171fb0ac2
mov rdx, rsi
xor r14d, r14d
cmp eax, 0xa
sete r8b
mov eax, 1
cmove rbx, rax
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x180], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x170], xmm0
mov rsi, qword [rsp + 0x80]
cmp qword [rsp + 0x40], 0
je 0x1400b9c17
xor edi, edi
xor r13d, r13d
nop word cs:[rax + rax]
cmp byte [rsi + rdi + 0x30], 7
je 0x1400b9ec5
inc r13
add rdi, 0x38
cmp r12, rdi
jne 0x1400b9c00
mov byte [rsp + 0x36], r8b
mov r8, qword [rsp + 0x40]
cmp r8, qword [rsp + 0x78]
mov rdi, rdx
mov r13d, 0
jne 0x1400b9c48
lea rcx, [rsp + 0x78]
call sym.alloc::raw_vec::RawVec_T_A_::grow_one::h1c1ad375617d8c61
mov rsi, qword [rsp + 0x80]
mov r8, qword [rsp + 0x40]
movzx eax, byte [rsp + 0x37]
mov r13b, al
add qword [rsp + 0x58], r13
movzx eax, byte [rsp + 0x36]
mov r14b, al
add rdi, r14
imul rcx, r8, 0x38
lea rax, [rsi + rcx]
mov rdx, qword [rsp + 0x180]
mov qword [rsi + rcx + 0x10], rdx
movaps xmm0, xmmword [rsp + 0x170]
movups xmmword [rsi + rcx], xmm0
mov rcx, r8
mov rdx, rdi
mov r13d, 1
mov dil, 7
jmp 0x1400b9e12
mov rax, qword [rsp + 0x38]
mov rbp, qword [rax]
mov rcx, qword [rsp + 0x28]
call sym.regex_syntax::ast::parse::ParserI_P_::char::h3913f9e171fb0ac2
mov ecx, 1
cmp eax, 0x80
jb 0x1400b9cd8
mov ecx, 2
cmp eax, 0x800
jb 0x1400b9cd8
cmp eax, 0x10000
mov ecx, 4
sbb rcx, 0
add rbp, rcx
mov rcx, qword [rsp + 0x28]
jb 0x1400ba405
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0xb0]
inc rbx
je 0x1400ba40e
mov r15, qword [rax + 0xa8]
call sym.regex_syntax::ast::parse::ParserI_P_::char::h3913f9e171fb0ac2
xor r14d, r14d
cmp eax, 0xa
sete byte [rsp + 0x58]
mov eax, 1
cmove rbx, rax
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0xc0]
mov rdx, qword [rsp + 0x28]
call sym.regex_syntax::ast::parse::ParserI_P_::parse_flag::hb270aaef11d528f7
mov rax, qword [rsp + 0xc0]
movzx edi, byte [rsp + 0xc8]
movabs rcx, 0x8000000000000000
cmp rax, rcx
jne 0x1400ba2df
mov rcx, r15
movaps xmm0, xmmword [rsp + 0x60]
movaps xmmword [rsp + 0x190], xmm0
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x1a0], rax
cmp qword [rsp + 0x40], 0
je 0x1400b9db7
xor r15d, r15d
xor r13d, r13d
nop word cs:[rax + rax]
cmp byte [rsi + r15 + 0x30], dil
je 0x1400ba060
inc r13
add r15, 0x38
cmp r12, r15
jne 0x1400b9da0
mov r8, qword [rsp + 0x40]
cmp r8, qword [rsp + 0x78]
mov r13, rcx
jne 0x1400b9ddd
lea rcx, [rsp + 0x78]
call sym.alloc::raw_vec::RawVec_T_A_::grow_one::h1c1ad375617d8c61
mov rsi, qword [rsp + 0x80]
mov r8, qword [rsp + 0x40]
movzx eax, byte [rsp + 0x58]
mov r14b, al
add r13, r14
imul rcx, r8, 0x38
lea rax, [rsi + rcx]
mov rdx, qword [rsp + 0x1a0]
mov qword [rsi + rcx + 0x10], rdx
movaps xmm0, xmmword [rsp + 0x190]
movups xmmword [rsi + rcx], xmm0
mov rcx, r8
mov rdx, r13
xor r13d, r13d
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rdx
mov qword [rax + 0x28], rbx
mov byte [rax + 0x30], dil
inc rcx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x88], rcx
mov rcx, qword [rsp + 0x28]
call sym.regex_syntax::ast::parse::ParserI_P_::bump::had207070a3987b18
add r12, 0x38
test al, al
mov rdx, qword [rsp + 0x28]
jne 0x1400b9a70
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xe8], rax
movups xmm0, xmmword [rcx]
movups xmmword [rsp + 0xd8], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xd0], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0xc0], xmm0
mov r14, qword [rdx + 8]
mov rdi, qword [rdx + 0x10]
test rdi, rdi
je 0x1400ba3b1
js 0x1400ba41c
mov rax, qword [0x1403c8b08]
movzx eax, byte [rax]
mov r13d, 1
mov edx, 1
mov rcx, rdi
call sym.__rust_alloc
test rax, rax
je 0x1400ba41f
mov r15, rax
jmp 0x1400ba3b7
mov rax, qword [rsp + 0x38]
mov r15, qword [rax]
mov r14, qword [rsp + 0x28]
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::char::h3913f9e171fb0ac2
mov edx, 1
cmp eax, 0x80
lea rcx, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_syntax_0.8.4_src_astparse.rs
jb 0x1400b9f07
mov edx, 2
cmp eax, 0x800
jb 0x1400b9f07
cmp eax, 0x10000
mov edx, 4
sbb rdx, 0
add r15, rdx
mov rax, qword [rsp + 0x48]
jb 0x1400ba415
mov rbp, qword [rax + 0xb0]
lea rcx, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_syntax_0.8.4_src_astparse.rs
inc rbp
je 0x1400ba415
mov rbx, qword [rax + 0xa8]
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::char::h3913f9e171fb0ac2
mov qword [rsp + 0x48], r15
xor r12d, r12d
cmp eax, 0xa
sete dl
mov r14d, 1
cmove rbp, r14
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x60], xmm0
cmp r13, qword [rsp + 0x40]
jae 0x1400ba42c
movups xmm0, xmmword [rsi + rdi]
movups xmm1, xmmword [rsi + rdi + 0x10]
movups xmm2, xmmword [rsi + rdi + 0x20]
movups xmmword [rsp + 0xe4], xmm2
movups xmmword [rsp + 0xd4], xmm1
movups xmmword [rsp + 0xc4], xmm0
mov rax, qword [rsp + 0x28]
mov r15, qword [rax + 8]
mov rdi, qword [rax + 0x10]
test rdi, rdi
je 0x1400b9fdf
js 0x1400ba41c
mov esi, edx
mov rax, qword [0x1403c8b08]
movzx eax, byte [rax]
mov r13d, 1
mov edx, 1
mov rcx, rdi
call sym.__rust_alloc
test rax, rax
je 0x1400ba41f
mov r14, rax
mov edx, esi
mov r12b, dl
add rbx, r12
mov rcx, r14
mov rdx, r15
mov r8, rdi
call sym.memcpy
movups xmm0, xmmword [rsp + 0xc0]
movups xmm1, xmmword [rsp + 0xd0]
movups xmm2, xmmword [rsp + 0xe0]
mov rcx, qword [rsp + 0x50]
movups xmmword [rcx + 0x1c], xmm0
movups xmmword [rcx + 0x2c], xmm1
movups xmmword [rcx + 0x3c], xmm2
mov eax, dword [rsp + 0xf0]
mov dword [rcx + 0x4c], eax
mov rax, qword [rsp + 0x70]
mov qword [rcx + 0x60], rax
movaps xmm0, xmmword [rsp + 0x60]
movups xmmword [rcx + 0x50], xmm0
mov qword [rcx], rdi
mov qword [rcx + 8], r14
mov qword [rcx + 0x10], rdi
mov dword [rcx + 0x18], 0xe
mov rax, qword [rsp + 0x48]
mov qword [rcx + 0x68], rax
mov qword [rcx + 0x70], rbx
mov qword [rcx + 0x78], rbp
jmp 0x1400ba1fd
mov rax, qword [rsp + 0x38]
mov rdi, qword [rax]
mov rsi, qword [rsp + 0x28]
mov rcx, rsi
call sym.regex_syntax::ast::parse::ParserI_P_::char::h3913f9e171fb0ac2
mov edx, 1
cmp eax, 0x80
lea rcx, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_syntax_0.8.4_src_astparse.rs
jb 0x1400ba0a2
mov edx, 2
cmp eax, 0x800
jb 0x1400ba0a2
cmp eax, 0x10000
mov edx, 4
sbb rdx, 0
add rdi, rdx
mov rax, qword [rsp + 0x48]
jb 0x1400ba415
mov r12, qword [rax + 0xb0]
lea rcx, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_syntax_0.8.4_src_astparse.rs
inc r12
je 0x1400ba415
mov rbp, qword [rax + 0xa8]
mov rcx, rsi
call sym.regex_syntax::ast::parse::ParserI_P_::char::h3913f9e171fb0ac2
mov qword [rsp + 0x48], rdi
xor ebx, ebx
cmp eax, 0xa
sete sil
mov r14d, 1
cmove r12, r14
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x60], xmm0
cmp r13, qword [rsp + 0x40]
jae 0x1400ba435
mov rax, qword [rsp + 0x80]
movups xmm0, xmmword [rax + r15]
movups xmm1, xmmword [rax + r15 + 0x10]
movups xmm2, xmmword [rax + r15 + 0x20]
movups xmmword [rsp + 0xe4], xmm2
movups xmmword [rsp + 0xd4], xmm1
movups xmmword [rsp + 0xc4], xmm0
mov rax, qword [rsp + 0x28]
mov r15, qword [rax + 8]
mov rdi, qword [rax + 0x10]
test rdi, rdi
je 0x1400ba181
js 0x1400ba41c
mov rax, qword [0x1403c8b08]
movzx eax, byte [rax]
mov r13d, 1
mov edx, 1
mov rcx, rdi
call sym.__rust_alloc
test rax, rax
je 0x1400ba41f
mov r14, rax
mov bl, sil
add rbp, rbx
mov rcx, r14
mov rdx, r15
mov r8, rdi
call sym.memcpy
movups xmm0, xmmword [rsp + 0xc0]
movups xmm1, xmmword [rsp + 0xd0]
movups xmm2, xmmword [rsp + 0xe0]
mov rcx, qword [rsp + 0x50]
movups xmmword [rcx + 0x1c], xmm0
movups xmmword [rcx + 0x2c], xmm1
movups xmmword [rcx + 0x3c], xmm2
mov eax, dword [rsp + 0xf0]
mov dword [rcx + 0x4c], eax
mov rax, qword [rsp + 0x70]
mov qword [rcx + 0x60], rax
movaps xmm0, xmmword [rsp + 0x60]
movups xmmword [rcx + 0x50], xmm0
mov qword [rcx], rdi
mov qword [rcx + 8], r14
mov qword [rcx + 0x10], rdi
mov dword [rcx + 0x18], 0xd
mov rax, qword [rsp + 0x48]
mov qword [rcx + 0x68], rax
mov qword [rcx + 0x70], rbp
mov qword [rcx + 0x78], r12
cmp r13, 1
mov rax, qword [rsp + 0x28]
jne 0x1400ba283
mov rsi, qword [rax + 8]
mov rdi, qword [rax + 0x10]
test rdi, rdi
je 0x1400ba350
js 0x1400ba41c
mov rax, qword [0x1403c8b08]
movzx eax, byte [rax]
mov r13d, 1
mov edx, 1
mov rcx, rdi
call sym.__rust_alloc
test rax, rax
je 0x1400ba41f
mov r12, rax
jmp case.0x1400b1c9b.88
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xb8], rax
movups xmm0, xmmword [rcx]
movups xmmword [rsp + 0xa8], xmm0
mov rcx, qword [rsp + 0x50]
mov qword [rcx + 0x48], rax
movups xmmword [rcx + 0x38], xmm0
movups xmm0, xmmword [rsp + 0x78]
movups xmm1, xmmword [rsp + 0x88]
movups xmm2, xmmword [rsp + 0x98]
movups xmmword [rcx + 0x28], xmm2
movups xmmword [rcx + 0x18], xmm1
movups xmmword [rcx + 8], xmm0
movabs rax, 0x8000000000000000
mov qword [rcx], rax
jmp 0x1400ba21e
mov rcx, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x50]
mov qword [rdx + 0x78], rcx
movups xmm0, xmmword [rsp + 0x129]
movups xmmword [rdx + 0x69], xmm0
movups xmm0, xmmword [rsp + 0x119]
movups xmmword [rdx + 0x59], xmm0
movups xmm0, xmmword [rsp + 0x109]
movups xmmword [rdx + 0x49], xmm0
movups xmm0, xmmword [rsp + 0xc9]
movups xmm1, xmmword [rsp + 0xd9]
movups xmm2, xmmword [rsp + 0xe9]
movups xmm3, xmmword [rsp + 0xf9]
movups xmmword [rdx + 0x39], xmm3
movups xmmword [rdx + 0x29], xmm2
movups xmmword [rdx + 0x19], xmm1
movups xmmword [rdx + 9], xmm0
mov qword [rdx], rax
mov byte [rdx + 8], dil
jmp 0x1400ba1fd
mov r12d, 1
mov r15d, 1
mov rcx, r15
mov rdx, r14
mov r8, rdi
call sym.memcpy
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmm1, xmmword [rsp + 0xd0]
movaps xmm2, xmmword [rsp + 0xe0]
mov rax, qword [rsp + 0x50]
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm1
movups xmmword [rax + 0x70], xmm2
mov qword [rax], rdi
mov qword [rax + 8], r15
mov qword [rax + 0x10], rdi
mov dword [rax + 0x18], 0xf
jmp 0x1400ba1fd
lea rcx, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_syntax_0.8.4_src_astparse.rs
jmp 0x1400ba415
lea rcx, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_syntax_0.8.4_src_astparse.rs
call sym.core::option::unwrap_failed::h24b27a0084f6d704
jmp 0x1400ba449
xor r13d, r13d
mov rcx, r13
mov rdx, rdi
call sym.alloc::raw_vec::handle_error::h08cb50f4b6afae22
jmp 0x1400ba449
lea r8, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_syntax_0.8.4_src_astparse.rs
jmp 0x1400ba43c
lea r8, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_syntax_0.8.4_src_astparse.rs
mov rcx, r13
mov rdx, qword [rsp + 0x40]
call sym.core::panicking::panic_bounds_check::h355e469b41f98a46
ud2