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

Disassembly:
mov rax, rsp
mov byte [rax + 0x20], r9b
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb8
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movzx ebx, r9b
mov r11, rdx
mov r9, rcx
xor ebp, ebp
mov dword [rsp + 0x110], ebp
mov r10d, 0xffffffff
mov qword [rcx], 0xffffffffffffffff
mov dword [rcx + 8], r10d
test r8b, r8b
je 0x14007fdfc
mov rax, qword [rcx + 0x10]
mov ecx, dword [rax + 0x17c]
add dword [rdx], ecx
mov rax, qword [r9 + 0x10]
mov ecx, dword [rax + 0x180]
add dword [rdx + 4], ecx
mov r13, qword [r9 + 0x10]
cmp dword [r13 + 0x10], ebp
jne 0x14007fe0d
xor al, al
jmp 0x140080404
movsxd r14, dword [r13 + 0xa8]
test r14d, r14d
je 0x14007fe80
mov rax, qword [r13 + 0xb8]
mov rdx, qword [rax + r14*8 - 8]
test rdx, rdx
je 0x14007fe80
movsxd rax, dword [rdx + 0x18]
test eax, eax
js 0x14007fe61
cmp eax, dword [r13 + 0xf0]
jge 0x14007fe61
mov rcx, rax
add rcx, rcx
mov rax, qword [r13 + 0x100]
movups xmm0, xmmword [rax + rcx*8]
movups xmmword [rsp + 0x30], xmm0
mov ecx, dword [rdx + 0x1c]
mov dword [rsp + 0x30], ecx
add ecx, dword [rdx + 0x20]
mov dword [rsp + 0x38], ecx
jmp 0x14007fe89
mov dword [rsp + 0x34], ebp
mov dword [rsp + 0x3c], ebp
mov ecx, dword [rdx + 0x1c]
mov dword [rsp + 0x30], ecx
add ecx, dword [rdx + 0x20]
mov dword [rsp + 0x38], ecx
jmp 0x14007fe89
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x30], xmm0
mov r12d, 0x30
mov rsi, r13
lea rax, [rsp + 0x30]
movups xmm1, xmmword [rax]
test r14d, r14d
jle 0x14007ff00
mov rax, qword [r13 + 0xb8]
mov rdx, qword [rax]
test rdx, rdx
je 0x14007ff00
movsxd rax, dword [rdx + 0x18]
test eax, eax
js 0x14007fee7
cmp eax, dword [r13 + r12 + 0xc0]
jge 0x14007fee7
mov rcx, rax
add rcx, rcx
mov rax, qword [r13 + r12 + 0xd0]
movups xmm0, xmmword [rax + rcx*8]
movups xmmword [rsp + 0x40], xmm0
mov ecx, dword [rdx + 0x1c]
mov dword [rsp + 0x40], ecx
add ecx, dword [rdx + 0x20]
mov dword [rsp + 0x48], ecx
jmp 0x14007ff09
mov dword [rsp + 0x44], ebp
mov dword [rsp + 0x4c], ebp
mov ecx, dword [rdx + 0x1c]
mov dword [rsp + 0x40], ecx
add ecx, dword [rdx + 0x20]
mov dword [rsp + 0x48], ecx
jmp 0x14007ff09
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x40], xmm0
lea rax, [rsp + 0x40]
movups xmm2, xmmword [rax]
test bl, bl
je 0x14007ff37
mov ecx, dword [r11 + 4]
movdqa xmm0, xmm1
psrldq xmm0, 0xc
movd eax, xmm0
cmp ecx, eax
jg 0x14007ff6b
psrldq xmm2, 4
movd eax, xmm2
cmp ecx, eax
jl 0x14007ff84
cmp byte [r13 + 0x264], bpl
jne 0x14007ff93
mov ecx, dword [r11]
movdqa xmm0, xmm1
psrldq xmm0, 8
movd eax, xmm0
cmp ecx, eax
jle 0x14007ff73
psrldq xmm1, 4
movd eax, xmm1
cmp dword [r11 + 4], eax
jl 0x14007ff73
test bl, bl
je 0x140080402
mov rcx, r9
jmp 0x1400803fb
cmp ecx, dword [r13 + 0x198]
jge 0x14007ff93
test bl, bl
je 0x140080402
xor edx, edx
mov rcx, r9
call fcn.14007e5c0
jmp 0x140080402
mov dword [rsp + 0x50], 1
mov dword [rsp + 0x54], 1
mov rbx, qword [r11]
mov qword [rsp + 0x60], rbx
mov r15, rbx
shr r15, 0x20
mov qword [rsp + 0x68], r15
mov rdi, qword [rsp + 0x50]
shr rdi, 0x20
add edi, r15d
movsxd rax, dword [rsi + r12 + 0x78]
mov r9d, r10d
mov r8d, r10d
xor dl, dl
mov r10d, ebp
test eax, eax
jle 0x140080087
mov r14, rax
mov rbx, rbp
mov r11, qword [rsi + r12 + 0x88]
nop dword [rax]
mov rax, qword [r11]
movsxd rcx, dword [rax + 0x18]
cmp ecx, r8d
je 0x140080058
mov r8, rcx
test ecx, ecx
js 0x14008001e
cmp ecx, dword [rsi + r12 + 0xc0]
jge 0x14008001e
add rcx, rcx
mov rax, qword [rsi + r12 + 0xd0]
movups xmm0, xmmword [rax + rcx*8]
jmp 0x140080021
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x80], xmm0
movq rax, xmm0
shr rax, 0x20
mov edx, r15d
cmp r15d, eax
cmovl edx, eax
psrldq xmm0, 8
movq rax, xmm0
shr rax, 0x20
mov ecx, edi
cmp eax, edi
cmovl ecx, eax
sub ecx, edx
test ecx, ecx
setg dl
test dl, dl
je 0x140080067
cmp r9d, 0xffffffff
jne 0x14008006d
mov r9d, r10d
jmp 0x14008006d
cmp r9d, 0xffffffff
jne 0x140080080
inc r10d
inc rbx
add r11, 8
cmp rbx, r14
jl 0x14007fff0
mov r14d, dword [r13 + 0xa8]
lea eax, [r10 - 1]
mov edx, 0xffffffff
mov dword [rsp + 0x20], edx
mov r11, rbp
mov qword [rsp + 0x28], rbp
movss xmm6, dword [0x1401b07ac]
xor cl, cl
mov byte [rsp + 0x110], cl
mov edi, ebp
test r9d, r9d
cmovg edi, r9d
movsxd r15, edi
movsxd r10, eax
mov qword [rsp + 0x58], r10
cmp r15, r10
jg 0x1400803dd
xorps xmm7, xmm7
nop dword [rax]
test edi, edi
js 0x1400800e6
cmp edi, r14d
jge 0x1400800e6
mov rax, qword [r13 + 0xb8]
mov rbx, qword [rax + r15*8]
jmp 0x1400800e9
mov rbx, rbp
cmp byte [rsp + 0x120], bpl
jne 0x140080106
cmp dword [rbx + 0x10], ebp
jl 0x140080245
cmp qword [rbx + 8], rbp
je 0x140080245
movsxd rax, dword [rbx + 0x18]
test eax, eax
js 0x140080148
cmp eax, dword [rsi + r12 + 0xc0]
jge 0x140080148
mov rcx, rax
add rcx, rcx
mov rax, qword [rsi + r12 + 0xd0]
movups xmm1, xmmword [rax + rcx*8]
movups xmmword [rsp + 0x70], xmm1
movdqa xmm0, xmm1
psrldq xmm0, 0xc
movd r14d, xmm0
psrldq xmm1, 4
movd esi, xmm1
jmp 0x140080155
mov esi, ebp
mov dword [rsp + 0x74], ebp
mov r14d, ebp
mov dword [rsp + 0x7c], ebp
mov r8d, dword [rbx + 0x1c]
mov r9d, dword [rbx + 0x20]
add r9d, r8d
mov dword [rsp + 0x24], r9d
lea eax, [r14 + rsi]
cdq
sub eax, edx
sar eax, 1
mov ecx, eax
mov rax, qword [rsp + 0x108]
sub ecx, dword [rax + 4]
lea eax, [r9 + r8]
cdq
sub eax, edx
sar eax, 1
mov rdx, qword [rsp + 0x108]
sub eax, dword [rdx]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm1
mulsd xmm0, xmm0
addsd xmm1, xmm0
ucomisd xmm1, xmm7
jp 0x1400801b7
jne 0x1400801b7
movaps xmm0, xmm7
jmp 0x1400801e1
xorps xmm0, xmm0
ucomisd xmm0, xmm1
ja 0x1400801c6
sqrtpd xmm0, xmm1
jmp 0x1400801e1
movaps xmm0, xmm1
call fcn.14015b9cc
mov r11, qword [rsp + 0x28]
mov r8d, dword [rbx + 0x1c]
mov r9d, dword [rsp + 0x24]
mov r10, qword [rsp + 0x58]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
test r11, r11
je 0x1400801f2
comiss xmm6, xmm1
jbe 0x140080236
mov edx, edi
mov dword [rsp + 0x20], edx
mov r11, rbx
mov qword [rsp + 0x28], rbx
movaps xmm6, xmm1
mov rbx, qword [rsp + 0x60]
cmp ebx, r8d
jl 0x14008022b
cmp ebx, r9d
jge 0x14008022b
mov rax, qword [rsp + 0x68]
cmp eax, esi
jl 0x14008022b
cmp eax, r14d
jge 0x14008022b
mov cl, 1
mov byte [rsp + 0x110], cl
jmp 0x140080242
xor cl, cl
mov byte [rsp + 0x110], cl
jmp 0x140080242
movzx ecx, byte [rsp + 0x110]
mov edx, dword [rsp + 0x20]
mov rsi, r13
inc edi
inc r15
cmp r15, r10
mov r14d, dword [r13 + 0xa8]
jle 0x1400800d0
movzx r14d, byte [rsp + 0x118]
test r11, r11
je 0x1400803e6
test r14b, r14b
jne 0x140080279
test cl, cl
je 0x140080402
mov r10, qword [r11 + 8]
mov rdi, qword [rsp + 0x100]
mov dword [rdi + 8], edx
mov edx, ebp
movsxd rax, dword [r13 + 0x10]
test eax, eax
jle 0x1400802b7
mov r8, rax
mov rcx, rbp
mov rax, qword [r13 + 0x20]
nop dword [rax]
cmp qword [rax], r10
je 0x140080384
inc edx
inc rcx
add rax, 8
cmp rcx, r8
jl 0x1400802a0
mov esi, 0xffffffff
mov edx, esi
mov dword [rdi], edx
mov eax, dword [r11 + 0x10]
mov dword [rdi + 4], eax
mov ecx, dword [r11 + 0x20]
mov eax, dword [r11 + 0x1c]
lea eax, [rcx + rax*2]
cdq
sub eax, edx
sar eax, 1
mov rdx, qword [rsp + 0x108]
cmp dword [rdx], eax
jle 0x1400803ee
test ecx, ecx
jle 0x1400803ee
cmp word [r11], 0xa
je 0x1400803ee
movsxd rbx, dword [rsp + 0x20]
test ebx, ebx
js 0x140080356
lea edx, [rbx + 1]
movsxd r11, dword [r13 + 0xa8]
cmp edx, r11d
jge 0x140080356
movsxd rcx, edx
mov rax, qword [r13 + 0xb8]
lea r8, [rax + rcx*8]
mov rax, qword [r8]
cmp dword [rax + 0x20], ebp
jg 0x140080336
inc edx
inc rcx
add r8, 8
cmp rcx, r11
jl 0x140080320
cmp edx, r11d
jge 0x140080356
movsxd r9, edx
mov rdx, qword [r13 + 0xb8]
mov r8, qword [rdx + rbx*8]
mov rax, qword [rdx + r9*8]
mov edx, dword [rax + 0x18]
cmp dword [r8 + 0x18], edx
je 0x14008038e
mov rax, qword [r10]
lea rdx, [rsp + 0x100]
mov rcx, r10
call qword [rax + 0x20]
mov ebp, 1
mov rax, qword [rax]
mov ecx, dword [rax - 0x10]
dec ecx
mov rax, qword [rsp + 0x28]
cmp dword [rax + 0x10], ecx
jge 0x14008038e
movzx ebx, bpl
jmp 0x140080390
mov esi, 0xffffffff
jmp 0x1400802be
xor bl, bl
test bpl, 1
je 0x1400803c8
mov rdx, qword [rsp + 0x100]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400803c8
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400803be
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x1400803c8
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
test bl, bl
jne 0x1400803ee
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rdi
call fcn.14007f960
jmp 0x1400803ee
movzx r14d, byte [rsp + 0x118]
mov rdi, qword [rsp + 0x100]
test r14b, r14b
je 0x140080402
cmp dword [rdi], 0xffffffff
jne 0x140080402
mov rcx, rdi
xor edx, edx
call fcn.14007ec50
mov al, 1
movaps xmm6, xmmword [rsp + 0xa0]
movaps xmm7, xmmword [rsp + 0x90]
add rsp, 0xb8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret