Function at 0x1401cc170
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, 0x378
xor eax, eax
mov r14, qword [rcx + 0x10]
mov r11, qword [rcx + 8]
lea r10, [rsp + 0xc0]
mov r15, rcx
mov qword [rsp + 0x3d0], r8
mov r8, qword [rcx]
mov rdi, r10
mov ecx, 7
mov qword [rsp + 0x3c8], rdx
mov r12, qword [r11 + 0x20]
rep stosq qword [rdi], rax
movzx eax, byte [r14 + 0x10]
movsxd rdx, dword [r11 + 0x14]
mov rcx, qword [r8 + 8]
imul rax, rax, 0x68
lea rax, [rcx + rax + 8]
mov ebx, dword [rax + 0x44]
test byte [rax + 0x3c], 0x10
mov dword [rsp + 0x70], ebx
jne 0x1401cc217
imul rdx, rdx, 0x38
add rdx, r12
cmp r12, rdx
jae 0x1401cc217
mov rdi, rdx
mov qword [rsp + 0x28], rax
mov rcx, r10
test byte [r12 + 0x15], 2
je 0x1401cc20e
mov r8, qword [r12 + 0x20]
mov rax, qword [r8 + 0x1e8]
and rax, qword [r14 + 8]
jne 0x1401cc230
add r12, 0x38
cmp r12, rdi
jb 0x1401cc1f4
xor ebp, ebp
mov eax, ebp
add rsp, 0x378
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
movsxd rax, dword [r8 + 0x14]
mov rsi, qword [r8 + 0x20]
imul rax, rax, 0x38
lea rdx, [rsi + rax]
mov rax, qword [r15]
cmp rsi, rdx
mov qword [rsp + 0x90], rax
mov rax, qword [r15 + 8]
mov qword [rsp + 0x98], rax
mov rax, qword [r15 + 0x10]
mov qword [rsp + 0xa0], rax
mov rax, qword [r15 + 0x20]
mov qword [rsp + 0xb0], rax
lea rax, [rsp + 0x100]
mov qword [rsp + 0xa8], rax
jae 0x1401cc67f
lea rax, [rsp + 0xc8]
mov r13d, 1
xor ebp, ebp
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x108]
mov rdi, rsi
mov r10d, ebp
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x90]
mov esi, r13d
mov rbp, r11
mov qword [rsp + 0x68], r12
mov r13, rcx
mov r12, rdx
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x3c0], r15
test byte [rdi + 0x15], 4
je 0x1401cc458
mov rax, qword [rdi + 0x20]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x28]
xor r14d, r14d
mov word [rsp + 0x100], r14w
mov rax, qword [rax + 0x20]
cmp byte [rax + 0x3f], 1
je 0x1401cc4b0
mov rdx, qword [rsp + 0x3c8]
mov rcx, qword [rsp + 0x30]
call fcn.140197830
mov r10d, eax
test r10d, r10d
je 0x1401cc4d6
movzx r9d, word [rsp + 0x100]
test r9w, r9w
je 0x1401cc650
test esi, esi
mov dword [rsp + 0x38], r10d
je 0x1401cc500
mov rdx, qword [rsp + 0x50]
movzx r8d, r9w
mov word [rsp + 0xc0], r9w
mov rcx, qword [rsp + 0x48]
shl r8, 4
call sub.msvcrt.dll_memcpy
mov r10d, dword [rsp + 0x38]
xor esi, esi
add rdi, 0x38
cmp rdi, r12
jb 0x1401cc2e0
mov rdi, qword [rsp + 0x58]
mov r11, rbp
mov rcx, r13
mov ebp, r10d
mov r14, qword [rsp + 0x60]
mov r12, qword [rsp + 0x68]
mov r15, qword [rsp + 0x3c0]
mov rax, qword [r14 + 0x48]
xor r9d, r9d
mov r8d, 1
test ebp, ebp
mov word [r14 + 0x3c], r8w
mov qword [rax], r12
mov dword [r14 + 0x38], 0x2000
mov word [r14 + 0x12], r9w
mov byte [r14 + 0x11], 0
mov qword [r14 + 0x18], 0
mov qword [r14 + 0x20], 0
mov qword [r14 + 0x28], 0
mov qword [r14 + 0x30], 0
jne 0x1401cc219
movzx ebx, word [rsp + 0xc0]
mov rsi, rcx
mov r13, r11
mov rbp, rcx
shl rbx, 4
add rbx, rcx
jmp 0x1401cc445
movzx eax, word [rsi + 0x10]
mov rcx, r15
add rsi, 0x10
lea edx, [rax + 1]
movzx eax, word [rsi + 2]
movzx edx, dx
shl eax, 0x10
or eax, edx
mov rdx, r14
mov dword [r14 + 0x14], eax
mov rax, qword [rsi - 8]
mov qword [r14], rax
call fcn.140168b80
test eax, eax
jne 0x1401cc640
cmp rsi, rbx
jne 0x1401cc410
mov r11, r13
mov rcx, rbp
jmp 0x1401cc20e
mov eax, dword [rsp + 0x70]
cmp dword [rdi + 0x1c], eax
jne 0x1401cc37a
movq xmm0, qword [rbp]
movq xmm1, rbp
mov byte [rsp + 0x190], 0x2c
mov qword [rsp + 0x1a0], rdi
lea rax, [rsp + 0x180]
mov dword [rsp + 0x194], 1
punpcklqdq xmm0, xmm1
mov dword [rsp + 0x19c], 1
movaps xmmword [rsp + 0x180], xmm0
jmp 0x1401cc2ee
mov r8, qword [rsp + 0x3d0]
mov rdx, qword [rsp + 0x3c8]
mov rcx, qword [rsp + 0x30]
call fcn.1401cb6f0
mov r10d, eax
test r10d, r10d
jne 0x1401cc333
mov r8, qword [rsp + 0x3d0]
mov rdx, qword [rsp + 0x3c8]
mov rcx, qword [rsp + 0x30]
call fcn.1401cc170
mov r10d, eax
jmp 0x1401cc333
movzx r8d, word [rsp + 0xc0]
lea rcx, [rsp + 0x148]
mov dword [rsp + 0x74], r9d
lea rdx, [rsp + 0xc8]
lea rsi, [rsp + 0x140]
mov r14, r8
shl r8, 4
call sub.msvcrt.dll_memcpy
xor r10d, r10d
test r14w, r14w
mov word [rsp + 0xc0], r10w
mov r10d, dword [rsp + 0x38]
je 0x1401cc378
lea eax, [r14 - 1]
mov r9d, dword [rsp + 0x74]
mov rdx, rsi
mov qword [rsp + 0x78], rbp
shl rax, 4
mov qword [rsp + 0x80], r12
lea r15, [rsp + 0x112]
add rax, rsi
mov qword [rsp + 0x88], rdi
mov qword [rsp + 0x40], rax
lea rsi, [rsp + 0x108]
lea r14, [rsp + 0x110]
mov dword [rsp + 0x74], r10d
test r9w, r9w
je 0x1401cc600
movsx r12d, word [rdx + 0x12]
xor ebx, ebx
mov qword [rsp + 0x38], rdx
movsx ebp, word [rdx + 0x10]
mov rdi, qword [rdx + 8]
mov r11, rbx
mov ecx, r12d
add rbx, 1
shl r11, 4
movsx edx, word [r15 + r11]
call fcn.1401507e0
movsx edx, word [r14 + r11]
mov ecx, ebp
mov r10d, eax
call fcn.1401507e0
mov rdx, qword [rsi + r11]
movsx r9d, r10w
mov rcx, r13
movsx r8d, ax
or rdx, rdi
call fcn.140152fd0
movzx eax, word [rsp + 0x100]
cmp eax, ebx
jg 0x1401cc5b1
mov rdx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x40]
cmp rdx, rax
je 0x1401cc620
movzx r9d, word [rsp + 0x100]
add rdx, 0x10
jmp 0x1401cc597
mov rbp, qword [rsp + 0x78]
mov r12, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x88]
mov r10d, dword [rsp + 0x74]
jmp 0x1401cc378
mov ebp, eax
jmp 0x1401cc219
xor ebx, ebx
mov r11, rbp
mov rdi, qword [rsp + 0x58]
mov ebp, r10d
mov r14, qword [rsp + 0x60]
mov rcx, r13
mov word [rsp + 0xc0], bx
mov r12, qword [rsp + 0x68]
mov r15, qword [rsp + 0x3c0]
jmp 0x1401cc3a7
mov eax, 1
xor edx, edx
mov word [r14 + 0x3c], ax
mov rax, qword [r14 + 0x48]
mov qword [rax], r12
mov dword [r14 + 0x38], 0x2000
mov word [r14 + 0x12], dx
mov byte [r14 + 0x11], 0
mov qword [r14 + 0x18], 0
mov qword [r14 + 0x20], 0
mov qword [r14 + 0x28], 0
mov qword [r14 + 0x30], 0
jmp 0x1401cc3f6