Function at 0x1400f9fa0
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, 0x318
mov rsi, r8
mov r14, rdx
mov rbx, rcx
mov rcx, rdx
call fcn.1400f54f0
cmp eax, 0x7b
jne 0x1400fab0b
mov r15, qword [r14]
lea r13, [r15 + 0xa0]
mov rax, qword [r15 + 0xb0]
mov qword [rsp + 0x50], rax
movups xmm0, xmmword [r15 + 0xa0]
movaps xmmword [rsp + 0x40], xmm0
mov r12, qword [rsi + 0x10]
test r12, r12
je 0x1400fa0a9
lea rbp, [r12 - 1]
mov qword [rsi + 0x10], rbp
mov qword [rsp + 0x20], rsi
mov rdi, qword [rsi + 8]
mov rsi, rbp
shl rsi, 4
mov rax, qword [rdi + rsi]
mov rcx, qword [rdi + rsi + 8]
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x1b8], rcx
cmp rax, 2
jae 0x1400fa114
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x88], rax
movups xmm0, xmmword [r13]
movups xmmword [rsp + 0x78], xmm0
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [r13]
movaps xmmword [rsp + 0x60], xmm0
mov r15, qword [r14 + 0x10]
test r15, r15
js 0x1400fab31
mov r14, qword [r14 + 8]
mov rsi, qword [rsp + 0x20]
je 0x1400fa2d3
movzx eax, byte [0x1403af381]
mov r13d, 1
mov edx, 1
mov rcx, r15
call fcn.140024490
test rax, rax
je 0x1400fab34
mov r12, rax
jmp 0x1400fa2d9
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x88], rax
movups xmm0, xmmword [r13]
movups xmmword [rsp + 0x78], xmm0
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [r13]
movaps xmmword [rsp + 0x60], xmm0
mov rdi, qword [r14 + 0x10]
test rdi, rdi
js 0x1400fab23
mov r14, qword [r14 + 8]
je 0x1400fa28a
movzx eax, byte [0x1403af381]
mov r12d, 1
mov edx, 1
mov rcx, rdi
call fcn.140024490
test rax, rax
je 0x1400fab26
mov r15, rax
jmp 0x1400fa290
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x178], rax
mov rcx, r14
call fcn.1400f5610
test al, al
je 0x1400fa219
mov qword [rsp + 0x168], r12
mov rcx, r14
call fcn.1400f5770
mov r12, qword [r13]
mov rax, qword [r14 + 0x10]
cmp r12, rax
je 0x1400fa21d
lea r12, [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov rcx, r12
mov rdx, r14
call fcn.1400ff460
mov dword [rsp + 0x2a8], 5
mov dword [rsp + 0x2e0], 0x19
lea rcx, [rsp + 0xe8]
lea r8, [rsp + 0x2a8]
lea r9, [rsp + 0x2e0]
mov rdx, r12
call fcn.140102ee0
mov rcx, qword [rsp + 0x28]
cmp qword [r13], rcx
jne 0x1400fa3b1
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x88], rax
movups xmm0, xmmword [r13]
movups xmmword [rsp + 0x78], xmm0
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x70], rax
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x60], xmm0
test rcx, rcx
js 0x1400fab4d
mov r14, qword [r14 + 8]
mov rsi, qword [rsp + 0x20]
je 0x1400fa564
movzx eax, byte [0x1403af381]
mov r13d, 1
mov edx, 1
call fcn.140024490
test rax, rax
je 0x1400fab50
mov r12, rax
jmp 0x1400fa56a
mov r12, qword [r14 + 0x10]
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x88], rax
movups xmm0, xmmword [r13]
movups xmmword [rsp + 0x78], xmm0
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x70], rax
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x60], xmm0
test r12, r12
js 0x1400fab3f
mov r14, qword [r14 + 8]
mov rsi, qword [rsp + 0x20]
je 0x1400fa319
movzx eax, byte [0x1403af381]
mov r13d, 1
mov edx, 1
mov rcx, r12
call fcn.140024490
test rax, rax
je 0x1400fab42
mov r15, rax
jmp 0x1400fa31f
mov r15d, 1
mov rcx, r15
mov rdx, r14
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movaps xmm2, xmmword [rsp + 0x80]
movups xmmword [rbx + 0x50], xmm0
movups xmmword [rbx + 0x60], xmm1
movups xmmword [rbx + 0x70], xmm2
mov qword [rbx], rdi
mov qword [rbx + 8], r15
mov qword [rbx + 0x10], rdi
mov dword [rbx + 0x18], 0x1b
jmp 0x1400fa381
mov r12d, 1
mov rcx, r12
mov rdx, r14
mov r8, r15
call sub.VCRUNTIME140.dll_memcpy
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movaps xmm2, xmmword [rsp + 0x80]
movups xmmword [rbx + 0x50], xmm0
movups xmmword [rbx + 0x60], xmm1
movups xmmword [rbx + 0x70], xmm2
mov qword [rbx], r15
mov qword [rbx + 8], r12
mov qword [rbx + 0x10], r15
mov dword [rbx + 0x18], 0x1b
jmp 0x1400fa35d
mov r15d, 1
mov rcx, r15
mov rdx, r14
mov r8, r12
call sub.VCRUNTIME140.dll_memcpy
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movaps xmm2, xmmword [rsp + 0x80]
movups xmmword [rbx + 0x50], xmm0
movups xmmword [rbx + 0x60], xmm1
movups xmmword [rbx + 0x70], xmm2
mov qword [rbx], r12
mov qword [rbx + 8], r15
mov qword [rbx + 0x10], r12
mov dword [rbx + 0x18], 0x1a
mov rcx, r14
call fcn.1400f54f0
cmp eax, 0x2c
jne 0x1400fa45e
mov rcx, r14
call fcn.1400f5610
test al, al
je 0x1400fa3e5
mov rcx, r14
call fcn.1400f5770
mov rax, qword [rsp + 0x28]
cmp qword [r13], rax
jne 0x1400fa626
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x1e8], rax
movups xmm0, xmmword [r13]
movups xmmword [rsp + 0x1d8], xmm0
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x1c0], xmm0
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x1d0], rax
mov rdx, qword [r14 + 8]
mov rcx, rbx
mov r8, qword [rsp + 0x28]
call fcn.1400f50a0
mov dword [rbx + 0x18], 0x1a
movaps xmm0, xmmword [rsp + 0x1c0]
movaps xmm1, xmmword [rsp + 0x1d0]
movaps xmm2, xmmword [rsp + 0x1e0]
movups xmmword [rbx + 0x50], xmm0
movups xmmword [rbx + 0x60], xmm1
movups xmmword [rbx + 0x70], xmm2
mov r12b, 1
xor eax, eax
jmp 0x1400fa76e
mov rax, qword [rsp + 0xe8]
mov r15d, dword [rsp + 0xf0]
mov rcx, rax
neg rcx
jno 0x1400fa5b7
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x34], 0
xor r12d, r12d
mov rax, qword [rsp + 0x28]
cmp qword [r13], rax
je 0x1400fa6f9
mov r12d, 1
mov rcx, r12
mov rdx, r14
mov r14, qword [rsp + 0x28]
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movaps xmm2, xmmword [rsp + 0x80]
movups xmmword [rbx + 0x50], xmm0
movups xmmword [rbx + 0x60], xmm1
movups xmmword [rbx + 0x70], xmm2
mov qword [rbx], r14
mov qword [rbx + 8], r12
mov qword [rbx + 0x10], r14
mov dword [rbx + 0x18], 0x1a
xor eax, eax
xor r12d, r12d
jmp 0x1400fa777
mov ecx, dword [rsp + 0x164]
mov dword [rbx + 0x7c], ecx
movups xmm0, xmmword [rsp + 0x154]
movups xmmword [rbx + 0x6c], xmm0
movups xmm0, xmmword [rsp + 0x144]
movups xmmword [rbx + 0x5c], xmm0
movups xmm0, xmmword [rsp + 0x134]
movups xmmword [rbx + 0x4c], xmm0
movups xmm0, xmmword [rsp + 0xf4]
movups xmm1, xmmword [rsp + 0x104]
movups xmm2, xmmword [rsp + 0x114]
movups xmm3, xmmword [rsp + 0x124]
movups xmmword [rbx + 0x3c], xmm3
movups xmmword [rbx + 0x2c], xmm2
movups xmmword [rbx + 0x1c], xmm1
movups xmmword [rbx + 0xc], xmm0
mov qword [rbx], rax
mov dword [rbx + 8], r15d
mov al, 1
mov rcx, r14
call fcn.1400f54f0
mov rdx, qword [rsp + 0xe8]
cmp eax, 0x7d
jne 0x1400fa676
mov r15d, dword [rsp + 0xf0]
mov rax, rdx
neg rax
mov rax, qword [rsp + 0x28]
jno 0x1400fa7ed
mov dword [rsp + 0x34], 1
mov dword [rsp + 0x30], 0
xor r12d, r12d
cmp qword [r13], rax
jne 0x1400fa49c
jmp 0x1400fa6f9
mov rax, rdx
neg rax
seto r12b
jno 0x1400fa853
add byte [rax], al
mov r15d, dword [rsp + 0xf0]
mov eax, dword [rsp + 0x164]
mov dword [rbx + 0x7c], eax
movups xmm0, xmmword [rsp + 0x154]
movups xmmword [rbx + 0x6c], xmm0
movups xmm0, xmmword [rsp + 0x144]
movups xmmword [rbx + 0x5c], xmm0
movups xmm0, xmmword [rsp + 0x134]
movups xmmword [rbx + 0x4c], xmm0
movups xmm0, xmmword [rsp + 0xf4]
movups xmm1, xmmword [rsp + 0x104]
movups xmm2, xmmword [rsp + 0x114]
movups xmm3, xmmword [rsp + 0x124]
movups xmmword [rbx + 0x3c], xmm3
movups xmmword [rbx + 0x2c], xmm2
movups xmmword [rbx + 0x1c], xmm1
movups xmmword [rbx + 0xc], xmm0
mov qword [rbx], rdx
jmp 0x1400fa618
cmp dword [rsp + 0x100], 0x19
jne 0x1400fa8fe
cmp byte [r15 + 0xc3], 0
je 0x1400fa96e
xor r15d, r15d
test rdx, rdx
ror byte [rdi], cl
test byte [rbx], dl
invalid
invalid
invalid
mov rcx, qword [rsp + 0xf0]
mov r8d, 1
invalid
call fcn.1400244a0
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0x164]
mov dword [rbx + 0x7c], ecx
movups xmm0, xmmword [rsp + 0x154]
movups xmmword [rbx + 0x6c], xmm0
movups xmm0, xmmword [rsp + 0x144]
movups xmmword [rbx + 0x5c], xmm0
movups xmm0, xmmword [rsp + 0x134]
movups xmmword [rbx + 0x4c], xmm0
movups xmm0, xmmword [rsp + 0x124]
movups xmmword [rbx + 0x3c], xmm0
movups xmm0, xmmword [rsp + 0x114]
movups xmmword [rbx + 0x2c], xmm0
movups xmm0, xmmword [rsp + 0x104]
movups xmmword [rbx + 0x1c], xmm0
movups xmm0, xmmword [rsp + 0xf4]
movups xmmword [rbx + 0xc], xmm0
mov qword [rbx], rdx
mov dword [rbx + 8], eax
jmp 0x1400fa61c
movups xmm0, xmmword [rsp + 0x158]
movups xmmword [rbx + 0x70], xmm0
movups xmm0, xmmword [rsp + 0x148]
movups xmmword [rbx + 0x60], xmm0
movups xmm0, xmmword [rsp + 0x138]
movups xmmword [rbx + 0x50], xmm0
movups xmm0, xmmword [rsp + 0x128]
add byte [rax], al
lea rcx, str.assertion_failed:_self.char____
lea r8, str.C:UsersDamon.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_syntax_0.8.4_src_astparse.rs
mov edx, 0x24
call fcn.14025d3f0
xor r12d, r12d
mov rcx, r12
mov rdx, rdi
call fcn.14025cfe5
xor r13d, r13d
mov rcx, r13
mov rdx, r15
call fcn.14025cfe5
xor r13d, r13d
mov rcx, r13
mov rdx, r12
call fcn.14025cfe5
xor r13d, r13d
mov rcx, r13
mov rdx, qword [rsp + 0x28]
call fcn.14025cfe5
int3