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

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x310
movaps xmmword [rsp + 0x300], xmm6
mov rdi, r9
mov rsi, rcx
mov rax, qword [rdx]
movzx eax, byte [rax + 0x82]
cmp al, 2
mov ecx, 1
cmovne ecx, eax
mov rax, qword [r8 + 0x10]
mov qword [rsp + 0x30], rax
movups xmm0, xmmword [r8]
movaps xmmword [rsp + 0x20], xmm0
movzx eax, byte [r8 + 0x18]
mov edx, dword [r8 + 0x1c]
mov dword [rsp + 0x3c], edx
mov edx, dword [r8 + 0x19]
mov dword [rsp + 0x39], edx
mov byte [rsp + 0x38], al
mov byte [rsp + 0x40], cl
mov qword [rsp + 0x1c0], 0
mov qword [rsp + 0x1c8], 8
mov qword [rsp + 0x1d0], 0
mov qword [rsp + 0x1d8], 0x2710
mov word [rsp + 0x1e0], 0
mov qword [rsp + 0x1e8], 0
mov qword [rsp + 0x1f0], 8
mov qword [rsp + 0x1f8], 0
lea rbx, [rsp + 0x208]
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x80], 8
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x98], 8
xorps xmm6, xmm6
movups xmmword [rsp + 0xa0], xmm6
movups xmmword [rsp + 0xd8], xmm6
mov qword [rsp + 0xe8], 8
movups xmmword [rsp + 0xf0], xmm6
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x108], 1
mov qword [rsp + 0x110], 0
mov qword [rsp + 0xb0], 4
movups xmmword [rsp + 0xb8], xmm6
mov qword [rsp + 0xc8], 4
mov qword [rsp + 0xd0], 0
movups xmmword [rsp + 0x88], xmm6
movups xmmword [rsp + 0x68], xmm6
mov qword [rsp + 0x50], 8
mov qword [rsp + 0x58], 8
lea r14, [rsp + 0x78]
mov qword [rsp + 0x60], r14
lea rdx, [rsp + 0x50]
call fcn.180564ec0
mov rcx, r14
call fcn.18055d6d0
mov rcx, r14
call fcn.18055d6d0
mov r8d, 0xa0
mov rcx, rbx
mov rdx, r14
call fcn.1806a7400
mov word [rsp + 0x2d0], 0
mov qword [rsp + 0x2c8], 0x3e8
mov qword [rsp + 0x2b8], 4
mov qword [rsp + 0x2c0], 0
movabs rax, 0xa02020202020201
mov qword [rsp + 0x130], rax
mov dword [rsp + 0x138], 0xfa
mov word [rsp + 0x13c], 0
mov byte [rsp + 0x13e], 0
mov qword [rsp + 0x118], 2
mov byte [rsp + 0x128], 0
mov dword [rsp + 0x12a], 0x3020202
mov qword [rsp + 0x158], 0
movups xmmword [rsp + 0x140], xmm6
mov qword [rsp + 0x160], 8
movups xmmword [rsp + 0x168], xmm6
mov qword [rsp + 0x178], 4
movups xmmword [rsp + 0x180], xmm6
mov qword [rsp + 0x190], 8
mov qword [rsp + 0x198], 0
mov dword [rsp + 0x1a0], 0
mov qword [rsp + 0x1a8], 0
mov word [rsp + 0x1b0], 0
mov byte [rsp + 0x1b2], 0xa
mov qword [rsp + 0x1b8], 0
mov qword [rsp + 0x200], 0
movups xmmword [rsp + 0x2a8], xmm6
mov byte [rsp + 0x2f0], 3
mov byte [rsp + 0x2f8], 2
lea rcx, [rsp + 0x118]
lea rdx, [rsp + 0x20]
call fcn.1805618b0
mov rdi, qword [rdi]
lock inc qword [rdi]
jle 0x180561317
movzx ebx, byte [rsp + 0x2f8]
movzx ebp, byte [rsp + 0x2f0]
cmp ebp, 2
je 0x1805612c6
cmp ebp, 3
je 0x1805612c9
mov r14, qword [rsp + 0x2d8]
mov r15, qword [rsp + 0x2e0]
lock inc qword [r14]
jle 0x180561317
movzx ebp, byte [rsp + 0x2f0]
mov r12, qword [rsp + 0x2e8]
jmp 0x1805612c9
mov bpl, 2
lea rcx, [rsp + 0x118]
call fcn.180560b70
mov qword [rsi + 8], rdi
mov qword [rsi + 0x10], r14
mov qword [rsi + 0x18], r15
mov qword [rsi + 0x20], r12
mov byte [rsi + 0x28], bpl
mov byte [rsi + 0x30], bl
movabs rax, 0x8000000000000002
mov qword [rsi], rax
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x300]
add rsp, 0x310
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
ud2