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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x4a8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x410], xmm6
mov qword [rbp + 0x408], 0xfffffffffffffffe
mov qword [rbp + 0x3f8], r8
mov rdi, rdx
mov rsi, rcx
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmm2, xmmword [rdx + 0x20]
movaps xmmword [rbp + 0xa0], xmm2
movaps xmmword [rbp + 0x90], xmm1
movaps xmmword [rbp + 0x80], xmm0
mov byte [rbp + 0x406], 1
lea rbx, [rbp + 0x1a0]
lea r15, [rbp + 0x80]
mov rcx, rbx
mov rdx, r15
call fcn.140037d90
mov rdx, qword [rbp + 0x3f8]
mov r8, qword [rdx + 0x28]
mov r9, qword [rdx + 0x30]
mov r14, qword [rdi + 0x30]
mov rax, qword [rdx + 0x60]
mov qword [rbp + 0x90], rax
movups xmm0, xmmword [rdx + 0x50]
movaps xmmword [rbp + 0x80], xmm0
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax]
mov eax, dword [rax + 8]
mov byte [rbp + 0x407], 1
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r14
lea rcx, [rbp - 0x30]
call fcn.14003b360
lea rdi, [rbp + 0x1c0]
lea rdx, [rbp - 0x30]
mov r8d, 0xb0
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
movups xmm0, xmmword [rbp + 0x1a0]
movups xmm1, xmmword [rbp + 0x1b0]
movaps xmmword [rbp + 0x320], xmm1
movaps xmmword [rbp + 0x310], xmm0
mov byte [rbp + 0x407], 0
lea rcx, [rbp + 0x80]
lea r9, [rbp + 0x310]
mov rdx, rdi
mov r8b, 1
call fcn.14003bf90
cmp qword [rbp + 0x80], 0
je 0x14001a5dc
lea r15, [rbp + 0x88]
lea rcx, [rbp + 0x1c0]
mov r8d, 0x110
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rbp + 0x310]
mov rdx, r14
call fcn.14011dcb0
movups xmm6, xmmword [r14 + 0x28]
movups xmm0, xmmword [r14 + 0x40]
movzx eax, byte [r14 + 0x50]
mov byte [rbp + 0x3a0], al
movaps xmmword [rbp + 0x390], xmm0
mov rbx, qword [rbp + 0x310]
mov r13, qword [rbp + 0x318]
mov eax, dword [rbp + 0x280]
mov dword [rbp + 0x3d8], eax
cmp eax, 2
jne 0x14001a605
movzx eax, word [r14 + 0x3c]
mov word [rbp + 0x3e0], ax
movzx r8d, word [r14 + 0x3e]
mov r9d, dword [r14 + 0x38]
mov r10d, dword [r14 + 0x18]
mov r11d, dword [r14 + 0x1c]
mov edi, dword [r14 + 0x20]
mov r14d, dword [r14 + 0x24]
mov r12, qword [rbp + 0x320]
lea rcx, [rbp + 0x239]
mov rax, qword [rbp + 0x240]
mov qword [rbp + 0x3d0], rax
cmp dword [rbp + 0x200], 2
je 0x14001a573
mov rdx, qword [rbp + 0x1e8]
test rdx, rdx
je 0x14001a573
mov rcx, qword [rbp + 0x1f0]
mov word [rbp + 0x404], r8w
mov r8d, 1
mov qword [rbp + 0x3a8], r13
mov r13d, r9d
mov qword [rbp + 0x3c8], r12
mov r12d, r10d
mov dword [rbp + 0x3f4], r14d
mov r14d, edi
mov edi, r11d
call fcn.14000e960
lea rcx, [rbp + 0x239]
mov r11d, edi
mov edi, r14d
mov r14d, dword [rbp + 0x3f4]
mov r10d, r12d
mov r12, qword [rbp + 0x3c8]
mov r9d, r13d
mov r13, qword [rbp + 0x3a8]
movzx r8d, word [rbp + 0x404]
mov rax, qword [r15 + 0x20]
mov qword [rbp + 0x380], rax
movups xmm0, xmmword [r15]
movups xmm1, xmmword [r15 + 0x10]
movaps xmmword [rbp + 0x370], xmm1
movaps xmmword [rbp + 0x360], xmm0
movaps xmm0, xmmword [rbp + 0x390]
movaps xmmword [rbp + 0x3b0], xmm0
movzx eax, byte [rbp + 0x3a0]
mov byte [rbp + 0x3c0], al
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rbp + 0x3ec], eax
mov dword [rbp + 0x3ef], ecx
mov rcx, qword [rbp + 0x3f8]
movzx r15d, word [rbp + 0x3e0]
mov rdx, qword [rbp + 0x3d0]
jmp 0x14001a7c2
lea rdx, [rbp + 0x88]
lea rcx, [rsi + 8]
mov r8d, 0x108
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsi], 0
mov rcx, qword [rbp + 0x3f8]
jmp 0x14001a8d8
mov rax, qword [r15 + 0x20]
mov qword [rbp + 0x380], rax
movups xmm0, xmmword [r15]
movups xmm1, xmmword [r15 + 0x10]
movaps xmmword [rbp + 0x370], xmm1
movaps xmmword [rbp + 0x360], xmm0
mov rcx, qword [rbp + 0x1e8]
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x3e0], rax
mov r12, qword [rbp + 0x1f8]
mov r10d, dword [rbp + 0x200]
mov r11d, dword [rbp + 0x204]
mov edi, dword [rbp + 0x208]
mov r14d, dword [rbp + 0x20c]
movups xmm6, xmmword [rbp + 0x210]
mov r9d, dword [rbp + 0x220]
movzx r15d, word [rbp + 0x224]
movzx r8d, word [rbp + 0x226]
movups xmm0, xmmword [rbp + 0x228]
movaps xmmword [rbp + 0x3b0], xmm0
movzx eax, byte [rbp + 0x238]
mov byte [rbp + 0x3c0], al
mov eax, dword [rbp + 0x239]
mov dword [rbp + 0x3ec], eax
mov eax, dword [rbp + 0x23c]
mov dword [rbp + 0x3ef], eax
mov rdx, qword [rbp + 0x240]
movups xmm0, xmmword [rbp + 0x248]
movaps xmmword [rbp + 0x2d0], xmm0
movups xmm0, xmmword [rbp + 0x258]
movaps xmmword [rbp + 0x2e0], xmm0
movups xmm0, xmmword [rbp + 0x268]
movaps xmmword [rbp + 0x2f0], xmm0
mov rax, qword [rbp + 0x278]
mov qword [rbp + 0x300], rax
movups xmm0, xmmword [rbp + 0x2c0]
movups xmmword [rbp + 0x34c], xmm0
movups xmm0, xmmword [rbp + 0x284]
movups xmm1, xmmword [rbp + 0x294]
movups xmm2, xmmword [rbp + 0x2a4]
movups xmm3, xmmword [rbp + 0x2b4]
movaps xmmword [rbp + 0x340], xmm3
movaps xmmword [rbp + 0x330], xmm2
movaps xmmword [rbp + 0x320], xmm1
movaps xmmword [rbp + 0x310], xmm0
test rbx, rbx
je 0x14001a7b1
mov dword [rbp + 0x3f4], r14d
mov word [rbp + 0x404], r8w
mov r8d, 1
mov qword [rbp + 0x3d0], rcx
mov rcx, r13
mov r14, rdx
mov rdx, rbx
mov qword [rbp + 0x3c8], r12
mov r12d, edi
mov edi, r9d
mov ebx, r10d
mov r13d, r15d
mov r15d, r11d
call fcn.14000e960
mov rdx, r14
mov r11d, r15d
mov r15d, r13d
mov r10d, ebx
mov r9d, edi
mov edi, r12d
mov r12, qword [rbp + 0x3c8]
movzx r8d, word [rbp + 0x404]
mov r14d, dword [rbp + 0x3f4]
mov r13, qword [rbp + 0x3e0]
mov rbx, qword [rbp + 0x3d0]
jmp 0x14001a7bb
mov r13, qword [rbp + 0x3e0]
mov rbx, rcx
mov rcx, qword [rbp + 0x3f8]
mov rax, qword [rbp + 0x380]
mov qword [rsi + 0x28], rax
movaps xmm0, xmmword [rbp + 0x360]
movaps xmm1, xmmword [rbp + 0x370]
movups xmmword [rsi + 0x18], xmm1
movups xmmword [rsi + 8], xmm0
mov qword [rsi + 0x30], rbx
mov qword [rsi + 0x38], r13
mov qword [rsi + 0x40], r12
mov dword [rsi + 0x48], r10d
mov dword [rsi + 0x4c], r11d
mov dword [rsi + 0x50], edi
mov dword [rsi + 0x54], r14d
movups xmmword [rsi + 0x58], xmm6
mov dword [rsi + 0x68], r9d
mov word [rsi + 0x6c], r15w
mov word [rsi + 0x6e], r8w
movaps xmm0, xmmword [rbp + 0x3b0]
movups xmmword [rsi + 0x70], xmm0
movzx eax, byte [rbp + 0x3c0]
mov byte [rsi + 0x80], al
mov eax, dword [rbp + 0x3ec]
mov dword [rsi + 0x81], eax
mov eax, dword [rbp + 0x3ef]
mov dword [rsi + 0x84], eax
mov qword [rsi + 0x88], rdx
mov rax, qword [rbp + 0x300]
mov qword [rsi + 0xc0], rax
movaps xmm0, xmmword [rbp + 0x2d0]
movaps xmm1, xmmword [rbp + 0x2e0]
movaps xmm2, xmmword [rbp + 0x2f0]
movups xmmword [rsi + 0xb0], xmm2
movups xmmword [rsi + 0xa0], xmm1
movups xmmword [rsi + 0x90], xmm0
mov eax, dword [rbp + 0x3d8]
mov dword [rsi + 0xc8], eax
movups xmm0, xmmword [rbp + 0x34c]
movups xmmword [rsi + 0x108], xmm0
movaps xmm0, xmmword [rbp + 0x310]
movaps xmm1, xmmword [rbp + 0x320]
movaps xmm2, xmmword [rbp + 0x330]
movaps xmm3, xmmword [rbp + 0x340]
movups xmmword [rsi + 0xfc], xmm3
movups xmmword [rsi + 0xec], xmm2
movups xmmword [rsi + 0xdc], xmm1
movups xmmword [rsi + 0xcc], xmm0
mov qword [rsi], 1
lea rax, [rcx + 0x20]
mov qword [rbp + 0x3d8], rax
mov rax, qword [rcx]
lock dec qword [rax]
jne 0x14001a8f8
mov rcx, qword [rbp + 0x3f8]
call fcn.14000cce0
mov rax, qword [rbp + 0x3f8]
mov rax, qword [rax + 8]
lock dec qword [rax]
jne 0x14001a919
mov rax, qword [rbp + 0x3f8]
lea rcx, [rax + 8]
call fcn.14002df00
mov rax, qword [rbp + 0x3d8]
mov rdx, qword [rax]
test rdx, rdx
mov rsi, qword [rbp + 0x3f8]
je 0x14001a93e
mov rcx, qword [rsi + 0x28]
mov r8d, 1
call fcn.14000e960
mov rdx, qword [rsi + 0x38]
test rdx, rdx
je 0x14001a956
mov rcx, qword [rsi + 0x40]
mov r8d, 1
call fcn.14000e960
movaps xmm6, xmmword [rbp + 0x410]
add rsp, 0x4a8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret