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

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
push rbx
push rbp
push rdi
push r12
push r14
push r15
sub rsp, 0x38
xor ebx, ebx
mov r15, rdx
mov r14, rcx
test rdx, rdx
jne 0x18010cbd8
mov ebp, ebx
jmp 0x18010cc10
movzx ecx, word [rdx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x18010cbf9
cmp byte [r15 + 0x16], 1
jne 0x18010cbf9
mov rbp, qword [r15 + 8]
jmp 0x18010cc10
test cl, 1
je 0x18010cc03
mov rbp, rbx
jmp 0x18010cc10
mov dl, 1
mov rcx, r15
call fcn.180053350
mov rbp, rax
movzx ecx, word [r15 + 0x14]
mov qword [rsp + 0x70], rsi
test cl, 2
je 0x18010cc2c
cmp byte [r15 + 0x16], 1
jne 0x18010cc2c
mov esi, dword [r15 + 0x10]
jmp 0x18010cc56
test cl, 0x10
je 0x18010cc41
bt cx, 0xa
mov esi, dword [r15 + 0x10]
jae 0x18010cc56
add esi, dword [r15]
jmp 0x18010cc56
test cl, 1
je 0x18010cc4a
mov esi, ebx
jmp 0x18010cc56
mov dl, 1
mov rcx, r15
call fcn.180053bf0
mov esi, eax
mov qword [rsp + 0x30], r13
mov r8d, 0xffffffff
mov dword [rsp + 0x78], r8d
mov rdi, rbx
mov dword [rsp + 0x20], ebx
mov r12d, ebx
test rbp, rbp
je 0x18010cfe1
mov r13d, ebx
nop dword [rax]
mov rax, qword [r14 + 0x18]
lea edx, [r13 - 0x68f72]
mov rcx, qword [rax + 0x128]
test rcx, rcx
je 0x18010ccb1
cmp dword [rcx + 4], edx
jne 0x18010cca8
mov eax, dword [r14 + 0x20]
cmp dword [rcx], eax
je 0x18010ccd3
test edx, edx
js 0x18010ccd3
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x18010cc97
mov dword [rsp + 0x20], r13d
test rdi, rdi
je 0x18010cd8d
lea ecx, [r12 + 1]
mov byte [rdi + 0x32], 0
mov dword [rdi + 0x4c], ecx
mov rax, rdi
jmp 0x18010cfe3
mov rbx, qword [rcx + 8]
test rbx, rbx
je 0x18010ccb1
test rdi, rdi
jne 0x18010cd5a
cmp dword [rbx + 0x3c], esi
jne 0x18010cd21
cmp byte [rbx + 0x37], dil
je 0x18010ccf7
mov eax, dword [rsp + 0x88]
test eax, eax
jne 0x18010cd28
mov rcx, qword [rbx + 0x10]
cmp rcx, rbp
je 0x18010cd14
movsxd r8, esi
mov rdx, rbp
call fcn.180153490
mov r8d, dword [rsp + 0x78]
test eax, eax
jne 0x18010cd21
mov byte [rbx + 0x32], 0
mov rdi, rbx
mov byte [rbx + 0x36], 0
jmp 0x18010cd6e
mov eax, dword [rsp + 0x88]
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x18010cd5a
test eax, eax
jne 0x18010cd5a
cmp dword [rbx + 0x40], esi
jne 0x18010cd5a
movsxd r8, esi
mov rdx, rbp
call fcn.180153490
mov r8d, dword [rsp + 0x78]
test eax, eax
jne 0x18010cd5a
mov byte [rbx + 0x32], al
mov rdi, rbx
mov byte [rbx + 0x36], 1
jmp 0x18010cd6e
mov eax, dword [rbx + 0x4c]
cmp eax, r8d
jae 0x18010cd6e
mov r8d, eax
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x20], r13d
mov eax, dword [rbx + 0x4c]
cmp eax, r12d
cmovbe eax, r12d
inc r13d
mov r12d, eax
cmp r13d, 4
jl 0x18010cc80
jmp 0x18010ccb6
movzx eax, word [r15 + 0x14]
mov edx, 0xc
test al, 0x12
setne cl
bt ax, dx
mov edx, 1
setb al
test al, cl
je 0x18010cdc0
lea rax, [0x18002d4c0]
cmp qword [r15 + 0x30], rax
jne 0x18010cdc0
mov ebx, edx
xor r13d, r13d
jmp 0x18010cdc6
xor r13d, r13d
mov ebx, r13d
lea edi, [rsi + 1]
call fcn.1800e74e0
test eax, eax
jne 0x18010cfac
mov eax, r13d
test ebx, ebx
cmove eax, edi
movsxd rcx, eax
add rcx, 0x50
call fcn.18002a230
mov rdi, rax
test rax, rax
je 0x18010cfac
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
test ebx, ebx
je 0x18010ce1e
inc qword [rbp - 8]
mov qword [rax + 0x10], rbp
mov byte [rax + 0x34], 1
jmp 0x18010ce34
lea rcx, [rax + 0x50]
movsxd r8, esi
inc r8
mov qword [rax + 0x10], rcx
mov rdx, rbp
call fcn.18013fe80
mov rbx, qword [rsp + 0x80]
mov ecx, 1
mov dword [rdi + 0x38], ecx
mov rdx, rbx
mov rcx, rdi
call fcn.18010c9a0
test eax, eax
je 0x18010ce8b
test rbx, rbx
jne 0x18010ce64
mov byte [rdi + 0x32], 1
mov rax, rdi
jmp 0x18010cfe3
mov eax, dword [rdi + 0x38]
cmp eax, 1
jbe 0x18010ce76
dec eax
mov dword [rdi + 0x38], eax
jmp 0x18010cfe1
mov rcx, rdi
call fcn.18010a6f0
mov rcx, rdi
call fcn.18002a420
jmp 0x18010cfe1
mov dword [rdi + 0x3c], esi
lea eax, [r12 + 1]
mov esi, dword [rsp + 0x20]
mov dword [rdi + 0x4c], eax
add esi, 0xfff9708e
mov r15, qword [r14 + 0x18]
mov rbx, qword [r15 + 0x128]
test rbx, rbx
je 0x18010ceca
cmp dword [rbx + 4], esi
jne 0x18010cec1
mov eax, dword [r14 + 0x20]
cmp dword [rbx], eax
je 0x18010cede
test esi, esi
js 0x18010cede
mov rbx, qword [rbx + 0x18]
test rbx, rbx
jne 0x18010ceb0
mov rcx, qword [r15]
test rcx, rcx
je 0x18010cefe
mov edx, 0x20
call fcn.18002a8b0
jmp 0x18010cf08
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x18010cf44
mov rcx, qword [rbx + 8]
call rax
lea rax, [0x18010a820]
mov qword [rbx + 8], rdi
mov qword [rbx + 0x10], rax
jmp 0x18010cf74
mov ecx, 0x20
call fcn.18002a230
mov rbx, rax
test rax, rax
je 0x18010cf55
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov eax, dword [r14 + 0x20]
mov dword [rbx], eax
mov dword [rbx + 4], esi
mov rax, qword [r15 + 0x128]
mov qword [rbx + 0x18], rax
mov qword [r15 + 0x128], rbx
cmp dword [r14 + 0x24], 0
jne 0x18010cf44
mov dword [r14 + 0x24], 0xffffffff
lea rax, [0x18010a820]
mov qword [rbx + 8], rdi
mov qword [rbx + 0x10], rax
jmp 0x18010cf74
mov eax, dword [rdi + 0x38]
cmp eax, 1
jbe 0x18010cf64
dec eax
mov dword [rdi + 0x38], eax
jmp 0x18010cf74
mov rcx, rdi
call fcn.18010a6f0
mov rcx, rdi
call fcn.18002a420
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + 0x128]
test rcx, rcx
je 0x18010cfa7
cmp dword [rcx + 4], esi
jne 0x18010cf95
mov eax, dword [r14 + 0x20]
cmp dword [rcx], eax
je 0x18010cfa3
test esi, esi
js 0x18010cfa3
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x18010cf84
mov rax, r13
jmp 0x18010cfe3
mov r13, qword [rcx + 8]
mov rax, r13
jmp 0x18010cfe3
mov rax, qword [r14]
mov ecx, 0x9000
test word [rax + 0x14], cx
je 0x18010cfc4
mov rcx, rax
call fcn.1800523e0
jmp 0x18010cfcd
mov ecx, 1
mov word [rax + 0x14], cx
mov rcx, qword [r14]
mov dword [r14 + 0x24], 7
mov rcx, qword [rcx + 0x18]
call fcn.18002ae80
xor eax, eax
mov r13, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x70]
add rsp, 0x38
pop r15
pop r14
pop r12
pop rdi
pop rbp
pop rbx
ret