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

Disassembly:
mov r11, rsp
mov qword [r11 + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r15, qword [rcx + 0xf0]
xor r8d, r8d
mov eax, dword [rcx + 0xa8]
mov r14, rdx
mov r13d, dword [rcx + 0xa4]
mov rbx, rcx
mov dword [r11 + 8], r8d
mov bpl, r8b
mov qword [r11 + 0x20], r8
mov dil, 1
mov dword [rcx + 8], r8d
mov rsi, qword [r15 + 0x328]
mov dword [rsp + 0x90], eax
cmp qword [rcx + 0xf8], rsi
je 0x18006f766
mov qword [rcx + 0xf8], rsi
mov bpl, dil
cmp byte [rcx + 0xc], r8b
jne 0x18006f83e
mov rax, qword [r15 + 0x320]
cmp dword [rax + 0x1118], r8d
je 0x18006f83e
mov r12, qword [rcx + 0x288]
lea r9, [rsp + 0x98]
mov rcx, qword [r15 + 8]
lea rdx, [rsp + 0x80]
mov qword [rsp + 0x20], r8
mov rax, qword [rcx + 0x2e0]
call qword [rax + 0x78]
mov dword [rbx + 8], eax
test eax, eax
jne 0x18006fa42
mov r9, qword [rsp + 0x98]
lea rcx, [rsi + 0x238]
mov r8d, dword [rsp + 0x80]
mov edx, dword [rsi + 0x228]
call qword [r12 + 0x18]
xor r8d, r8d
test al, al
je 0x18006f807
mov r9, qword [rsp + 0x98]
mov rdx, rsi
mov r8d, dword [rsp + 0x80]
mov rcx, qword [r15 + 0x320]
call qword [r12 + 8]
xor r8d, r8d
mov bpl, dil
mov rax, qword [rsi + 0x240]
mov qword [rbx + 0x68], rax
mov byte [rbx + 0x61], r8b
mov eax, dword [rsi + 0x228]
mov dword [rbx + 0x90], eax
mov eax, dword [rsp + 0x80]
mov dword [rbx + 0x94], eax
mov rax, qword [rsp + 0x98]
mov qword [rbx + 0x98], rax
mov rax, qword [r15 + 8]
mov r12d, dword [rbx + 0x5c]
mov rcx, qword [rax + 0x80]
movzx eax, word [rcx + 0x1a]
shl eax, 0x10
cmp r12d, eax
je 0x18006f862
mov dword [rbx + 0x5c], eax
mov bpl, dil
mov r12d, eax
mov al, byte [rbx + 0x10]
and al, dil
mov byte [rbx + 0x100], al
mov rax, qword [r14]
cmp rax, qword [rbx + 0x14]
jne 0x18006f881
mov rax, qword [r14 + 8]
cmp rax, qword [rbx + 0x1c]
je 0x18006f8b4
movups xmm0, xmmword [r14]
mov eax, 0x10000
mov bpl, dil
movups xmmword [rbx + 0x14], xmm0
and qword [rbx + 0x24], 0
movups xmm0, xmmword [r14]
movups xmmword [rbx + 0x2c], xmm0
movsd xmm1, qword [r14 + 0x10]
movsd qword [rbx + 0x3c], xmm1
mov dword [rbx + 0x50], eax
mov qword [rbx + 0x44], rax
mov dword [rbx + 0x4c], r8d
mov r11d, dword [rbx + 0x10]
mov ecx, r11d
mov dl, byte [rbx + 0x102]
and ecx, 2
cmp dl, cl
je 0x18006f8d7
shr r11d, 1
and r11b, dil
mov byte [rbx + 0x102], r11b
jmp 0x18006f8e3
mov r11b, dl
test bpl, bpl
je 0x18006fa42
mov ebp, dword [rbx + 0xa0]
mov eax, 0x3e8
mov rcx, qword [r15 + 0x328]
test ebp, ebp
cmove ebp, eax
mov eax, 0x40000
cmp r12d, eax
cmovl r12d, eax
mov eax, 0x3e80000
cdq
idiv ebp
mov esi, eax
mov eax, dword [rcx + 0x194]
shl eax, 0x10
mov dword [rbx + 0x124], eax
test eax, eax
jg 0x18006f938
mov edx, esi
mov ecx, 0x4b0000
call fcn.18003f104
mov dword [rbx + 0x124], eax
xor r8d, r8d
mov edx, r12d
test r13d, r13d
jle 0x18006f97d
shl ebp, 0x10
mov ecx, ebp
call fcn.18003f104
cmp r13d, eax
lea r14, [rbx + 0x12c]
lea r11, [rbx + 0x104]
cmovle r13d, eax
and dword [r14], 0
test r13d, r13d
je 0x18006f9ae
cmp esi, 0x28f
jl 0x18006f9ae
mov eax, r13d
cdq
sub eax, edx
sar eax, 1
mov dword [r14], eax
jmp 0x18006f9ae
lea rbp, [rbx + 0x104]
mov ecx, esi
mov qword [rsp + 0x30], rbp
lea r14, [rbx + 0x12c]
mov byte [rsp + 0x28], r11b
mov r9, r14
mov dword [rsp + 0x20], r8d
mov r8d, eax
call fcn.18006f504
lea r11, [rbx + 0x104]
mov rax, qword [r15 + 0x328]
xor r15d, r15d
mov eax, dword [rax + 0x190]
shl eax, 0x10
test eax, eax
jle 0x18006f9d4
add eax, eax
mov ecx, 0x4b0000
cmp dword [rbx + 0x124], eax
jg 0x18006f9d9
mov ecx, 0x6e0000
mov edx, esi
call fcn.18003f104
mov dword [rbx + 0x128], eax
lea rbp, [rbx + 0x130]
mov r8d, eax
mov qword [rsp + 0x30], r11
mov al, byte [rbx + 0x102]
mov r9, rbp
mov byte [rsp + 0x28], al
mov edx, r12d
mov eax, dword [rsp + 0x90]
mov ecx, esi
mov dword [rsp + 0x20], eax
call fcn.18006f504
cmp dword [r14], r15d
jne 0x18006fa25
cmp dword [rbp], r15d
jne 0x18006fa25
mov dil, r15b
mov byte [rbx + 0x101], dil
lea rcx, [rbx + 0x138]
mov rdx, rbx
mov byte [rbx + 0x134], r15b
call fcn.18006f030
mov rbx, qword [rsp + 0x88]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret