Function at 0x1400bd880
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, 0x5d8
movdqa xmmword [rsp + 0x5c0], xmm7
movdqa xmmword [rsp + 0x5b0], xmm6
mov r14, r9
cmp r9, 0x7fffffff
jbe 0x1400bd8e7
mov dword [rcx], 0x25
mov qword [rcx + 8], r14
mov qword [rcx + 0x10], 0x7fffffff
mov r12, r8
mov r15, rdx
test byte [rdx + 0x13], 1
je 0x1400bd8fe
cmp byte [r15 + 0x15], 2
jne 0x1400bdd41
mov qword [rsp + 0xa8], rcx
cmp qword [r15 + 0x28], 0
jne 0x1400c09f8
mov qword [r15 + 0x28], 0xffffffffffffffff
mov dword [r15 + 0x40], 0
mov rsi, qword [r15 + 0x48]
mov rdi, qword [r15 + 0x58]
mov qword [r15 + 0x58], 0
test rdi, rdi
je 0x1400bd983
add rsi, 0x10
mov rbx, qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x1400bd959
add rsi, 0x20
dec rdi
je 0x1400bd983
mov eax, dword [rsi - 0x10]
cmp rax, 7
je 0x1400bd96c
cmp eax, 6
je 0x1400bd96c
cmp eax, 2
jne 0x1400bd950
cmp qword [rsi], 0
je 0x1400bd950
mov r8, qword [rsi - 8]
mov rcx, qword [0x1404a3498]
xor edx, edx
call rbx
jmp 0x1400bd950
mov qword [rsp + 0x30], r12
mov qword [r15 + 0x70], 0
mov rsi, qword [r15 + 0x78]
mov rdi, qword [r15 + 0x88]
mov qword [rsp + 0x40], r15
mov qword [r15 + 0x88], 0
test rdi, rdi
je 0x1400bda2c
xor ebx, ebx
mov r12, qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x1400bd9c8
inc rbx
cmp rbx, rdi
je 0x1400bda2c
lea r13, [rbx + rbx*2]
mov rbp, qword [rsi + r13*8 + 0x10]
test rbp, rbp
je 0x1400bda10
mov r15, qword [rsi + r13*8]
jmp 0x1400bd9e9
add r15, 0x10
dec rbp
je 0x1400bda10
mov rax, qword [r15]
test rax, rax
je 0x1400bd9e0
lock dec qword [rax]
jne 0x1400bd9e0
mov rcx, qword [r15]
mov rdx, qword [r15 + 8]
call fcn.1400074d0
jmp 0x1400bd9e0
lea rax, [rsi + r13*8]
cmp qword [rax + 8], 0
je 0x1400bd9c0
mov r8, qword [rax]
mov rcx, qword [0x1404a3498]
xor edx, edx
call r12
jmp 0x1400bd9c0
mov rdi, qword [rsp + 0x40]
mov qword [rdi + 0x90], 0
inc qword [rdi + 0x28]
jne 0x1400c0a06
cmp byte [rdi + 0x12], 0
setne byte [rdi + 0x98]
movzx eax, byte [rdi + 0x13]
and al, 1
mov byte [rdi + 0x99], al
cmp byte [rdi + 0x10], 0
movzx eax, byte [rdi + 0x11]
mov ecx, 0xa
cmovne ecx, eax
mov byte [rdi + 0x9a], cl
mov qword [rdi + 0x28], 0xffffffffffffffff
mov rax, qword [rdi]
xor ecx, ecx
cmp rax, 2
cmovne rcx, rax
mov rax, qword [rdi + 8]
mov qword [rdi + 0x30], rcx
mov qword [rdi + 0x38], rax
test rcx, rcx
mov r15, qword [rsp + 0x30]
je 0x1400bdaca
mov rcx, qword [rdi + 0x58]
shl rcx, 5
cmp rcx, rax
jbe 0x1400bdaca
mov rcx, qword [rsp + 0xa8]
mov qword [rcx + 8], rax
mov dword [rcx], 0x27
mov qword [rdi + 0x28], 0
jmp fcn.1400bd8c3
lea rbx, [rdi + 0x30]
mov qword [rdi + 0x28], 0
lea r12, [r15 + r14*8]
shl r14, 3
xor eax, eax
cmp r14, rax
je 0x1400bdc4e
mov rcx, qword [r15 + rax]
mov rcx, qword [rcx + 0x28]
add rax, 8
test byte [rcx + 0x3c], 1
jne 0x1400bdae0
lea rcx, [rsp + 0x3b0]
call fcn.14011b520
mov rdx, qword [rsp + 0x3c0]
cmp rdx, qword [rsp + 0x3b8]
jne 0x1400bdb2f
lea rcx, [rsp + 0x3b0]
call fcn.1400b0760
mov rdx, qword [rsp + 0x3c0]
mov rax, qword [rsp + 0x3b0]
mov word [rax + rdx*2], 0xff00
inc rdx
mov qword [rsp + 0x3c0], rdx
lea rcx, [rsp + 0x3b0]
call fcn.140111830
mov byte [rsp + 0x3c8], 0
mov rax, qword [rsp + 0x3c0]
mov qword [rsp + 0x128], rax
add byte [rax], al
mov qword [rdi + 0x28], 0xffffffffffffffff
mov dword [rcx], 0x29
lea rcx, str.C:Users_rosesxrq.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_src_nfa_thompsoncompiler.rs
call fcn.140389b40
ud2
lea rcx, str.C:Users_rosesxrq.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_src_nfa_thompsoncompiler.rs
call fcn.140389b40
ud2