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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov rax, qword [0x18017b008]
xor rax, rsp
mov qword [rsp + 0x68], rax
mov eax, 0x38
mov byte [rsp + 0x20], dl
mov r9d, eax
mov dword [rsp + 0x28], eax
lea r8, [rsp + 0x30]
xor edx, edx
mov rbx, rcx
call fcn.1800f7760
test al, al
je 0x1800f7b82
mov rdx, qword [rsp + 0x30]
movabs rax, 0xa3e686372613c21
cmp rdx, rax
je 0x1800f7b82
movzx ecx, dx
cmp ecx, 0x3a64
ja 0x1800f7997
je 0x1800f79b3
test ecx, ecx
je 0x1800f792d
sub ecx, 0x14c
je 0x1800f79b3
cmp ecx, 0x78
je 0x1800f79b3
jmp 0x1800f7b82
mov eax, 0xffff
cmp word [rsp + 0x32], ax
je 0x1800f7947
or dword [rbx + 0x30], 0x20000
mov al, 1
jmp 0x1800f7b84
cmp word [rsp + 0x34], 0
je 0x1800f7939
mov rax, qword [rsp + 0x3c]
cmp rax, qword [0x18015aec0]
jne 0x1800f7b82
mov rax, qword [rsp + 0x44]
cmp rax, qword [0x18015aec8]
jne 0x1800f7b82
movzx eax, word [rsp + 0x36]
or dword [rbx + 0x30], 0x40000
mov ecx, dword [rsp + 0x60]
mov r14d, dword [rsp + 0x5c]
mov r13d, dword [rsp + 0x64]
mov word [rbx + 0x30], ax
mov dword [rsp + 0x2c], ecx
jmp 0x1800f79d6
cmp ecx, 0x8664
je 0x1800f79b3
cmp ecx, 0xa641
je 0x1800f79b3
cmp ecx, 0xaa64
jne 0x1800f7b82
movzx edi, word [rsp + 0x40]
mov eax, dword [rsp + 0x38]
add edi, 0x14
movzx r14d, word [rsp + 0x32]
mov r13d, dword [rsp + 0x3c]
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x2c], eax
mov word [rbx + 0x30], dx
mov r15d, r14d
mov edx, 0x6666666
mov dword [rsp + 0x24], r14d
cmp r15, rdx
ja 0x1800f7b64
mov eax, dword [rbx + 0x44]
xor edi, edi
lea r9, [rdi - 1]
cmp r15, rax
jbe 0x1800f7a96
lea ecx, [rax + rax*2]
mov ebp, r15d
shr rcx, 1
mov eax, 0x28
cmp r15, rcx
cmovbe rbp, rcx
cmp rbp, rdx
cmova rbp, rdx
mul rbp
lea rdx, [0x180139860]
cmovo rax, r9
mov rcx, rax
call fcn.18000bbe4
mov rsi, rax
test rax, rax
je 0x1800f7b64
cmp qword [rbx + 0x38], rdi
je 0x1800f7a88
mov edx, edi
cmp dword [rbx + 0x40], edx
jbe 0x1800f7a7f
nop dword [rax]
mov eax, edx
inc edx
lea rcx, [rax + rax*4]
mov rax, qword [rbx + 0x38]
movups xmm0, xmmword [rax + rcx*8]
movups xmmword [rsi + rcx*8], xmm0
movups xmm1, xmmword [rax + rcx*8 + 0x10]
movups xmmword [rsi + rcx*8 + 0x10], xmm1
movsd xmm0, qword [rax + rcx*8 + 0x20]
movsd qword [rsi + rcx*8 + 0x20], xmm0
cmp edx, dword [rbx + 0x40]
jb 0x1800f7a50
mov rcx, qword [rbx + 0x38]
call fcn.18000b6f0
mov qword [rbx + 0x38], rsi
mov r9, 0xffffffffffffffff
mov dword [rbx + 0x44], ebp
mov ebp, 0x12
mov dword [rbx + 0x40], r14d
test dword [rbx + 0x30], 0x40000
mov esi, r13d
lea r8d, [rbp + 2]
je 0x1800f7baf
mov edx, 0xccccccc
cmp rsi, rdx
jbe 0x1800f7ac4
mov eax, edi
jmp 0x1800f7b5c
mov eax, dword [rbx + 0x64]
cmp rsi, rax
jbe 0x1800f7b53
lea ecx, [rax + rax*2]
mov rax, r8
shr rcx, 1
cmp rsi, rcx
cmovbe rsi, rcx
cmp rsi, rdx
cmova rsi, rdx
mul rsi
lea rdx, [0x180139860]
cmovo rax, r9
mov rcx, rax
call fcn.18000bbe4
mov r14, rax
test rax, rax
jne 0x1800f7b09
mov eax, edi
jmp 0x1800f7b5c
cmp qword [rbx + 0x58], rdi
je 0x1800f7b4c
mov edx, edi
cmp dword [rbx + 0x60], edx
jbe 0x1800f7b43
nop word [rax + rax]
mov eax, edx
inc edx
lea rcx, [rax + rax*4]
mov rax, qword [rbx + 0x58]
movups xmm0, xmmword [rax + rcx*4]
movups xmmword [r14 + rcx*4], xmm0
mov eax, dword [rax + rcx*4 + 0x10]
mov dword [r14 + rcx*4 + 0x10], eax
cmp edx, dword [rbx + 0x60]
jb 0x1800f7b20
mov rcx, qword [rbx + 0x58]
call fcn.18000b6f0
mov qword [rbx + 0x58], r14
mov dword [rbx + 0x64], esi
mov dword [rbx + 0x60], r13d
mov eax, 1
test eax, eax
jne 0x1800f7c49
mov rcx, qword [rbx + 0xb8]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x8007000e
mov rcx, qword [rcx + 0x280]
call fcn.1800adc20
xor al, al
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.18000b6d0
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov edx, 0xe38e38e
cmp rsi, rdx
ja 0x1800f7b64
mov eax, dword [rbx + 0x54]
cmp rsi, rax
jbe 0x1800f7c45
lea ecx, [rax + rax*2]
mov rax, rbp
shr rcx, 1
cmp rsi, rcx
cmovbe rsi, rcx
cmp rsi, rdx
cmova rsi, rdx
mul rsi
lea rdx, [0x180139860]
cmovo rax, r9
mov rcx, rax
call fcn.18000bbe4
mov r14, rax
test rax, rax
je 0x1800f7b64
cmp qword [rbx + 0x48], rdi
je 0x1800f7c3e
mov edx, edi
cmp dword [rbx + 0x50], edx
jbe 0x1800f7c35
nop dword [rax + rax]
mov eax, edx
inc edx
lea rcx, [rax + rax*8]
mov rax, qword [rbx + 0x48]
movups xmm0, xmmword [rax + rcx*2]
movups xmmword [r14 + rcx*2], xmm0
movzx eax, word [rax + rcx*2 + 0x10]
mov word [r14 + rcx*2 + 0x10], ax
cmp edx, dword [rbx + 0x50]
jb 0x1800f7c10
mov rcx, qword [rbx + 0x48]
call fcn.18000b6f0
mov qword [rbx + 0x48], r14
mov dword [rbx + 0x54], esi
mov dword [rbx + 0x50], r13d
mov rdx, r15
lea rcx, [rbx + 0x68]
call fcn.1800432a0
test eax, eax
je 0x1800f7b64
mov rdx, r15
lea rcx, [rbx + 0x78]
call fcn.1800432a0
test eax, eax
je 0x1800f7b64
mov eax, dword [rbx + 0x94]
cmp r15, rax
jbe 0x1800f7d1b
lea ecx, [rax + rax*2]
mov eax, 0x1fffffff
shr rcx, 1
cmp r15, rcx
cmovbe r15, rcx
mov rcx, 0xffffffffffffffff
cmp r15, rax
cmova r15, rax
mov eax, 8
mul r15
lea rdx, [0x180139860]
cmovo rax, rcx
mov rcx, rax
call fcn.18000bbe4
mov rsi, rax
test rax, rax
je 0x1800f7b64
cmp qword [rbx + 0x88], rdi
je 0x1800f7d0d
cmp dword [rbx + 0x90], edi
jbe 0x1800f7d01
nop dword [rax + rax]
mov rax, qword [rbx + 0x88]
lea rdx, [rdi*8]
inc edi
mov rcx, qword [rdx + rax]
mov qword [rdx + rsi], rcx
cmp edi, dword [rbx + 0x90]
jb 0x1800f7ce0
mov rcx, qword [rbx + 0x88]
call fcn.18000b6f0
mov qword [rbx + 0x88], rsi
mov dword [rbx + 0x94], r15d
mov eax, dword [rsp + 0x24]
xor edx, edx
mov dword [rbx + 0x90], eax
mov r8d, dword [rbx + 0x70]
mov rcx, qword [rbx + 0x68]
shl r8, 2
call fcn.18000c7b0
mov r8d, dword [rbx + 0x80]
xor edx, edx
mov rcx, qword [rbx + 0x78]
shl r8, 2
call fcn.18000c7b0
mov r8d, dword [rbx + 0x90]
xor edx, edx
mov rcx, qword [rbx + 0x88]
shl r8, 3
call fcn.18000c7b0
mov eax, dword [rbx + 0x40]
mov rcx, rbx
mov r8, qword [rbx + 0x38]
mov edx, dword [rsp + 0x28]
lea r9d, [rax + rax*4]
shl r9d, 3
call fcn.1800f7760
test al, al
je 0x1800f7b82
test dword [rbx + 0x30], 0x40000
mov r9d, ebp
mov esi, 0x14
cmovne r9d, esi
imul r9d, r13d
test dword [rbx + 0x30], 0x40000
je 0x1800f7db0
mov r8, qword [rbx + 0x58]
jmp 0x1800f7db4
mov r8, qword [rbx + 0x48]
mov edi, dword [rsp + 0x2c]
mov rcx, rbx
mov edx, edi
call fcn.1800f7760
test al, al
je 0x1800f7b82
test dword [rbx + 0x30], 0x40000
cmovne ebp, esi
imul ebp, r13d
add ebp, edi
cmp byte [rsp + 0x20], 0
mov dword [rbx + 0x2c], ebp
je 0x1800f7940
mov rcx, rbx
call fcn.1800f7e00
test al, al
setne al
jmp 0x1800f7b84