Function at 0x1400c3a40
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, 0x98
mov qword [rsp + 0x40], r9
mov rdi, r8
mov rsi, rdx
mov qword [rsp + 0x38], rcx
mov rcx, rdx
call fcn.1400911c0
mov rcx, rsi
mov rdx, rdi
call fcn.140090ef0
mov ebx, eax
movzx r12d, word [rsi + 0x58]
mov r13d, r12d
and r13d, ebx
lea rax, [rsi + 0x28]
mov qword [rsp + 0x28], rax
mov rbp, qword [rsi + 0x18]
mov r15, qword [rsi + 0x20]
mov rdx, qword [rsi + 0x38]
mov qword [rsp + 0x30], rsi
mov r9, qword [rsi + 0x28]
mov r10, qword [rdi]
mov rax, qword [rdi + 8]
mov qword [rsp + 0x80], rax
movzx r11d, byte [rdi + 8]
mov qword [rsp + 0x48], rdi
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x58], rax
xor edi, edi
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x88], r10
mov byte [rsp + 0x27], r11b
jmp 0x1400c3af6
cmp byte [rax + 8], r11b
je 0x1400c3bbf
nop dword [rax + rax]
inc rdi
inc r13
mov rax, r13
nop dword [rax]
mov r13, rax
mov eax, 0
cmp r13, r15
jae 0x1400c3b00
movzx esi, word [rbp + r13*4]
cmp rsi, 0xffff
je 0x1400c3c7f
movzx eax, word [rbp + r13*4 + 2]
mov ecx, r12d
and ecx, eax
mov r8d, r13d
sub r8d, ecx
and r8d, r12d
cmp r8, rdi
jb 0x1400c3d3a
cmp ax, bx
jne 0x1400c3af0
cmp rdx, rsi
jbe 0x1400c3e81
test r10, r10
sete al
imul r14, rsi, 0x68
mov rcx, qword [r9 + r14 + 0x40]
test rcx, rcx
setne r8b
cmp r8b, al
je 0x1400c3af0
lea rax, [r9 + r14]
add rax, 0x40
test rcx, rcx
je 0x1400c3ae1
mov rcx, qword [rsp + 0x58]
cmp qword [rax + 0x10], rcx
jne 0x1400c3af0
mov rcx, qword [rax + 8]
mov rdx, qword [rsp + 0x80]
mov r8, qword [rsp + 0x58]
call sub.msvcrt.dll_memcmp
movzx r11d, byte [rsp + 0x27]
mov r10, qword [rsp + 0x88]
mov r9, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x50]
test eax, eax
jne 0x1400c3af0
cmp qword [r9 + r14], 0
je 0x1400c3bde
add r9, r14
mov rdx, qword [r9 + 8]
mov rdi, qword [rsp + 0x30]
mov rcx, rdi
call fcn.140038b00
mov rdx, qword [rdi + 0x38]
cmp rdx, rsi
jbe 0x1400c3e81
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
movups xmm0, xmmword [rax + r14 + 0x18]
movups xmm1, xmmword [rax + r14 + 0x28]
mov r8, qword [rsp + 0x38]
movups xmmword [r8 + 0x10], xmm1
movups xmmword [r8], xmm0
movzx ecx, byte [rax + r14 + 0x38]
mov edx, dword [rax + r14 + 0x3c]
mov dword [r8 + 0x24], edx
mov edx, dword [rax + r14 + 0x39]
mov dword [r8 + 0x21], edx
mov r9, qword [rsp + 0x40]
mov rdx, qword [r9 + 0x20]
mov qword [rax + r14 + 0x38], rdx
movups xmm0, xmmword [r9]
movups xmm1, xmmword [r9 + 0x10]
movups xmmword [rax + r14 + 0x18], xmm0
movups xmmword [rax + r14 + 0x28], xmm1
mov byte [r8 + 0x20], cl
mov r8, qword [rsp + 0x48]
mov rax, qword [r8]
test rax, rax
je 0x1400c3e6d
mov rax, qword [rax + 0x10]
lea rcx, [r8 + 0x18]
mov rdx, qword [r8 + 8]
mov r8, qword [r8 + 0x10]
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp rax
cmp rdx, 0x8000
jae 0x1400c3e81
mov rax, qword [rsp + 0x48]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x70], xmm1
movaps xmmword [rsp + 0x60], xmm0
mov rax, rdx
mov rsi, qword [rsp + 0x30]
cmp rdx, qword [rsi + 0x30]
jne 0x1400c3ccb
mov rcx, qword [rsp + 0x28]
call fcn.1400212f0
mov rdx, qword [rsp + 0x50]
mov rax, qword [rsi + 0x38]
mov r15, qword [rsi + 0x20]
mov r9, qword [rsi + 0x28]
imul rcx, rax, 0x68
mov qword [r9 + rcx], 0
mov r8, qword [rsp + 0x40]
movups xmm0, xmmword [r8]
movups xmm1, xmmword [r8 + 0x10]
movups xmmword [r9 + rcx + 0x18], xmm0
movups xmmword [r9 + rcx + 0x28], xmm1
mov r8, qword [r8 + 0x20]
mov qword [r9 + rcx + 0x38], r8
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movups xmmword [r9 + rcx + 0x40], xmm0
movups xmmword [r9 + rcx + 0x50], xmm1
mov word [r9 + rcx + 0x60], bx
inc rax
mov qword [rsi + 0x38], rax
cmp r13, r15
jae 0x1400c3e81
mov rax, qword [rsi + 0x18]
mov word [rax + r13*4], dx
mov word [rax + r13*4 + 2], bx
jmp 0x1400c3e64
cmp rdi, 0x200
setae r12b
mov rdi, qword [rsp + 0x30]
cmp qword [rdi], 2
setne sil
mov rax, qword [rsp + 0x48]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x70], xmm1
movaps xmmword [rsp + 0x60], xmm0
cmp rdx, 0x8000
jae 0x1400c3e81
mov rax, rdx
cmp rdx, qword [rdi + 0x30]
jne 0x1400c3d9d
mov rcx, qword [rsp + 0x28]
call fcn.1400212f0
mov rdx, qword [rsp + 0x50]
mov rax, qword [rdi + 0x38]
mov r9, qword [rdi + 0x28]
mov rbp, qword [rdi + 0x18]
mov r15, qword [rdi + 0x20]
and r12b, sil
imul rcx, rax, 0x68
mov qword [r9 + rcx], 0
mov r8, qword [rsp + 0x40]
movups xmm0, xmmword [r8]
movups xmm1, xmmword [r8 + 0x10]
movups xmmword [r9 + rcx + 0x18], xmm0
movups xmmword [r9 + rcx + 0x28], xmm1
mov r8, qword [r8 + 0x20]
mov qword [r9 + rcx + 0x38], r8
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movups xmmword [r9 + rcx + 0x40], xmm0
movups xmmword [r9 + rcx + 0x50], xmm1
mov word [r9 + rcx + 0x60], bx
inc rax
mov qword [rdi + 0x38], rax
xor eax, eax
nop word cs:[rax + rax]
mov rcx, r13
mov r13d, 0
cmp rcx, r15
jae 0x1400c3e00
movzx r9d, word [rbp + rcx*4]
cmp r9w, 0xffff
je 0x1400c3e3c
inc rax
movzx r8d, word [rbp + rcx*4 + 2]
mov word [rbp + rcx*4], dx
mov word [rbp + rcx*4 + 2], bx
inc rcx
mov ebx, r8d
mov edx, r9d
mov r13, rcx
jmp 0x1400c3e00
mov word [rbp + rcx*4], dx
mov word [rbp + rcx*4 + 2], bx
cmp rax, 0x80
setb al
not r12b
test r12b, al
jne 0x1400c3e64
cmp qword [rdi], 0
jne 0x1400c3e64
mov qword [rdi], 1
mov rax, qword [rsp + 0x38]
mov byte [rax + 0x20], 2
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2