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

Disassembly:
mov rax, rsp
mov dword [rax + 0x20], r9d
mov qword [rax + 0x18], r8
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, 0x488
mov rbp, qword [rcx + 0x28]
mov r14, qword [rcx + 0x30]
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0xa8], xmm11
mov rax, qword [rcx + 0x18]
mov r15, rcx
mov qword [rsp + 0x98], rbp
movsd xmm7, qword [0x14019c1d0]
xorps xmm8, xmm8
movaps xmm6, xmm8
movsd qword [rsp + 0x88], xmm8
movsd qword [rsp + 0x78], xmm7
mov r10, qword [rax]
xor eax, eax
mov qword [rsp + 0xa0], r14
movsd qword [rsp + 0x80], xmm6
movaps xmm11, xmm8
mov qword [rsp + 0x70], r10
mov dword [r10 + 0x20], 0
mov dword [rsp + 0x90], eax
cmp dword [r10 + 0x10], eax
jbe 0x1400f3284
movsd xmm2, qword [0x140161178]
mov edx, eax
xor eax, eax
mov qword [rsp + 0xb0], rdx
mov dword [rsp + 0x88], eax
imul r13, rdx, 0x70
add r13, qword [r10 + 0x18]
mov dword [r13 + 0x68], 0
cmp dword [r13 + 0x14], eax
jbe 0x1400f3216
nop
lea r15, [rax + rax*2]
xor eax, eax
shl r15, 6
mov dword [rsp + 0x94], eax
add r15, qword [r13 + 0x20]
cmp dword [r15 + 0x18], eax
jbe 0x1400f31ec
nop
lea rcx, [rax + rax*2]
shl rcx, 4
mov qword [rsp + 0xa8], rcx
mov eax, dword [rcx + r15 + 0x28]
cmp eax, dword [rcx + r15 + 0x20]
je 0x1400f31d2
mov eax, dword [rcx + r15 + 0x2c]
cmp eax, dword [rcx + r15 + 0x24]
je 0x1400f31d2
mov eax, dword [r15 + 0x14]
xor r12d, r12d
imul eax, dword [r15 + 0x10]
test eax, eax
je 0x1400f31d2
nop dword [rax]
nop dword [rax + rax]
mov eax, r12d
xor r14d, r14d
imul rbp, rax, 0x38
add rbp, qword [rcx + r15 + 0x38]
mov eax, dword [rbp + 0x14]
imul eax, dword [rbp + 0x10]
test eax, eax
je 0x1400f31bd
nop
mov ebx, r14d
xor r9d, r9d
shl rbx, 6
add rbx, qword [rbp + 0x18]
mov esi, dword [rbx + 0x3c]
cmp esi, 4
jb 0x1400f310f
mov r8, qword [rbx + 0x10]
lea edi, [rsi - 3]
lea rdx, [r9 + r9*2]
mov ecx, dword [r8 + rdx*8]
movsd xmm1, qword [r8 + rdx*8 + 8]
test r9d, r9d
je 0x1400f2ff8
lea eax, [r9 - 1]
lea rax, [rax + rax*2]
sub ecx, dword [r8 + rax*8]
subsd xmm1, qword [r8 + rax*8 + 8]
test ecx, ecx
je 0x1400f301a
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
divsd xmm1, xmm0
comisd xmm7, xmm1
jbe 0x1400f3011
movaps xmm7, xmm1
comisd xmm1, xmm6
jbe 0x1400f301a
movaps xmm6, xmm1
mov eax, dword [r8 + rdx*8 + 0x18]
movsd xmm1, qword [r8 + rdx*8 + 0x20]
lea ecx, [r9 + 1]
test ecx, ecx
je 0x1400f3039
sub eax, dword [r8 + rdx*8]
subsd xmm1, qword [r8 + rdx*8 + 8]
test eax, eax
je 0x1400f305b
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm1, xmm0
comisd xmm7, xmm1
jbe 0x1400f3052
movaps xmm7, xmm1
comisd xmm1, xmm6
jbe 0x1400f305b
movaps xmm6, xmm1
lea rdx, [r9 + r9*2]
lea r10d, [r9 + 2]
mov eax, dword [r8 + rdx*8 + 0x30]
movsd xmm1, qword [r8 + rdx*8 + 0x38]
test r10d, r10d
je 0x1400f3083
lea rcx, [rcx + rcx*2]
sub eax, dword [r8 + rcx*8]
subsd xmm1, qword [r8 + rcx*8 + 8]
test eax, eax
je 0x1400f30a5
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm1, xmm0
comisd xmm7, xmm1
jbe 0x1400f309c
movaps xmm7, xmm1
comisd xmm1, xmm6
jbe 0x1400f30a5
movaps xmm6, xmm1
lea rdx, [r9 + r9*2]
lea eax, [r9 + 3]
test eax, eax
mov eax, dword [r8 + rdx*8 + 0x48]
movsd xmm1, qword [r8 + rdx*8 + 0x50]
je 0x1400f30cc
lea rcx, [r10 + r10*2]
sub eax, dword [r8 + rcx*8]
subsd xmm1, qword [r8 + rcx*8 + 8]
test eax, eax
je 0x1400f30ee
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm1, xmm0
comisd xmm7, xmm1
jbe 0x1400f30e5
movaps xmm7, xmm1
comisd xmm1, xmm6
jbe 0x1400f30ee
movaps xmm6, xmm1
add r9d, 4
cmp r9d, edi
jb 0x1400f2fd1
mov r10, qword [rsp + 0x70]
movsd qword [rsp + 0x78], xmm7
movsd qword [rsp + 0x80], xmm6
cmp r9d, esi
jae 0x1400f317c
mov r8, qword [rbx + 0x10]
lea rax, [r9 + r9*2]
lea rdx, [r8 + rax*8]
mov ecx, dword [rdx]
movsd xmm1, qword [rdx + 8]
test r9d, r9d
je 0x1400f313f
lea eax, [r9 - 1]
lea rax, [rax + rax*2]
sub ecx, dword [r8 + rax*8]
subsd xmm1, qword [r8 + rax*8 + 8]
test ecx, ecx
je 0x1400f3161
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
divsd xmm1, xmm0
comisd xmm7, xmm1
jbe 0x1400f3158
movaps xmm7, xmm1
comisd xmm1, xmm6
jbe 0x1400f3161
movaps xmm6, xmm1
inc r9d
add rdx, 0x18
cmp r9d, esi
jb 0x1400f3120
movsd qword [rsp + 0x78], xmm7
movsd qword [rsp + 0x80], xmm6
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
inc r14d
sub eax, dword [rbx + 0x18]
sub ecx, dword [rbx + 0x1c]
imul ecx, eax
add dword [r10 + 0x20], ecx
mov ecx, dword [rbx + 0x24]
sub ecx, dword [rbx + 0x1c]
mov eax, dword [rbx + 0x20]
sub eax, dword [rbx + 0x18]
imul ecx, eax
add dword [r13 + 0x68], ecx
mov eax, dword [rbp + 0x14]
imul eax, dword [rbp + 0x10]
cmp r14d, eax
jb 0x1400f2fb0
mov rcx, qword [rsp + 0xa8]
mov eax, dword [r15 + 0x14]
inc r12d
imul eax, dword [r15 + 0x10]
cmp r12d, eax
jb 0x1400f2f90
mov eax, dword [rsp + 0x94]
inc eax
mov dword [rsp + 0x94], eax
cmp eax, dword [r15 + 0x18]
jb 0x1400f2f40
mov eax, dword [rsp + 0x88]
inc eax
mov dword [rsp + 0x88], eax
cmp eax, dword [r13 + 0x14]
jb 0x1400f2f20
mov r15, qword [rsp + 0x4d0]
mov rdx, qword [rsp + 0xb0]
mov rax, qword [r15 + 0x20]
movd xmm0, dword [r13 + 0x68]
shl rdx, 6
mov rcx, qword [rax + 0x18]
mov eax, 1
mov ecx, dword [rdx + rcx + 0x18]
cvtdq2pd xmm0, xmm0
shl eax, cl
movd xmm1, eax
mov eax, dword [rsp + 0x90]
inc eax
mov dword [rsp + 0x90], eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm2
mulsd xmm1, xmm1
mulsd xmm1, xmm0
addsd xmm11, xmm1
cmp eax, dword [r10 + 0x10]
jb 0x1400f2ef2
mov rbp, qword [rsp + 0x98]
mov r14, qword [rsp + 0xa0]
movsd qword [rsp + 0x88], xmm11
mov r13, qword [rsp + 0x4f0]
test r13, r13
je 0x1400f32ce
mov eax, dword [r15 + 0x38]
imul rbx, rax, 0x260
mov eax, dword [r10 + 0x20]
add rbx, qword [r13 + 0x68]
mov dword [rbx + 0x230], eax
mov rax, qword [r10 + 0x28]
mov qword [rbx + 0x238], rax
mov ecx, dword [r14 + 8]
shl rcx, 3
call fcn.1400d9100
mov qword [rbx], rax
test rax, rax
je 0x1400f3650
movaps xmmword [rsp + 0x440], xmm9
movaps xmmword [rsp + 0x430], xmm10
movaps xmmword [rsp + 0x410], xmm12
xor ebx, ebx
movaps xmmword [rsp + 0x400], xmm13
movaps xmmword [rsp + 0x3f0], xmm14
movaps xmmword [rsp + 0x3e0], xmm15
cmp dword [r14 + 8], ebx
jbe 0x1400f3615
mov r12, qword [rsp + 0x4f8]
movss xmm15, dword [0x1401678d0]
movsd xmm13, qword [0x140161b48]
mov rsi, qword [rsp + 0x70]
xorps xmm12, xmm12
movsd xmm14, qword [0x140161ca0]
nop dword [rax]
movaps xmm9, xmm6
movss xmm6, dword [r14 + rbx*4 + 0x14]
comiss xmm6, xmm12
jbe 0x1400f336f
cvtps2pd xmm0, xmm6
call sub.msvcrt.dll_ceil
mov r14d, dword [rsp + 0x4e8]
cvttsd2si rax, xmm0
cmp eax, r14d
cmovb r14d, eax
jmp 0x1400f3377
mov r14d, dword [rsp + 0x4e8]
mov rax, qword [rsp + 0xa0]
movaps xmm10, xmm8
movss xmm8, dword [rax + rbx*4 + 0x1450]
movaps xmm0, xmm8
divss xmm0, xmm15
cvtps2pd xmm1, xmm0
movsd xmm0, qword [0x1401678b8]
call sub.msvcrt.dll_pow
mov eax, dword [rbp + 0x8c]
movaps xmm1, xmm11
movsd xmm11, qword [rsi + 0x28]
divsd xmm1, xmm0
subsd xmm11, xmm1
test al, 1
je 0x1400f33c9
comiss xmm6, xmm12
ja 0x1400f33db
test al, 4
je 0x1400f3587
comiss xmm8, xmm12
jbe 0x1400f3587
mov rcx, qword [r15 + 0x20]
mov rdx, rbp
call fcn.1400fbb30
mov r15, rax
test rax, rax
je 0x1400f3613
lea esi, [rbx - 1]
mov ebp, pe_nt_image_headers64
nop dword [rax + rax]
mov rcx, qword [rsp + 0x4d0]
movaps xmm6, xmm9
xor r9d, r9d
addsd xmm6, xmm7
mov edx, ebx
mulsd xmm6, xmm13
movaps xmm2, xmm6
call fcn.1400f1f30
mov rax, qword [rsp + 0x98]
test byte [rax + 0x8c], 4
je 0x1400f34dc
movzx eax, word [rax]
sub ax, 3
cmp ax, 3
ja 0x1400f34b1
mov rcx, qword [rsp + 0x4d0]
mov r8, qword [rsp + 0x70]
mov qword [rsp + 0x60], r12
mov eax, dword [rcx + 0x10]
mov edx, dword [rcx + 0x38]
mov dword [rsp + 0x58], 0
mov dword [rsp + 0x50], eax
mov eax, dword [rcx]
lea r9d, [rbx + 1]
mov dword [rsp + 0x48], eax
mov eax, dword [rcx + 8]
mov rcx, r15
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x4e0]
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], r14d
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x4d8]
mov qword [rsp + 0x20], rax
call fcn.1400fc7c0
test eax, eax
jne 0x1400f34b1
movaps xmm7, xmm6
jmp 0x1400f354e
mov rax, qword [rsp + 0x70]
test ebx, ebx
jne 0x1400f34c1
movsd xmm0, qword [rax + 0x30]
jmp 0x1400f34d0
movsd xmm0, qword [rax + rbx*8 + 0x30]
addsd xmm0, qword [rsp + rsi*8 + 0xc0]
comisd xmm11, xmm0
ja 0x1400f3546
movaps xmm7, xmm6
jmp 0x1400f354e
mov rcx, qword [rsp + 0x4d0]
mov r8, qword [rsp + 0x70]
mov qword [rsp + 0x60], r12
mov eax, dword [rcx + 0x10]
mov edx, dword [rcx + 0x38]
mov dword [rsp + 0x58], 0
mov dword [rsp + 0x50], eax
mov eax, dword [rcx]
lea r9d, [rbx + 1]
mov dword [rsp + 0x48], eax
mov eax, dword [rcx + 8]
mov rcx, r15
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x4e0]
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], r14d
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x4d8]
mov qword [rsp + 0x20], rax
call fcn.1400fc7c0
test eax, eax
jne 0x1400f3546
movaps xmm7, xmm6
jmp 0x1400f354e
movaps xmm9, xmm6
movaps xmm10, xmm6
dec rbp
jne 0x1400f3400
xorps xmm8, xmm8
ucomisd xmm10, xmm8
jp 0x1400f3564
je 0x1400f3568
movaps xmm6, xmm10
mov rcx, r15
call fcn.1400fc030
mov rsi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x4d0]
mov rbp, qword [rsp + 0x98]
jmp 0x1400f358f
movaps xmm6, xmm14
xorps xmm8, xmm8
test r13, r13
je 0x1400f35ac
mov eax, dword [r15 + 0x38]
imul rcx, rax, 0x260
mov rax, qword [r13 + 0x68]
mov rcx, qword [rcx + rax]
movsd qword [rcx + rbx*8], xmm6
movaps xmm2, xmm6
mov r9d, 1
mov edx, ebx
mov rcx, r15
call fcn.1400f1f30
test ebx, ebx
jne 0x1400f35ca
movsd xmm0, qword [rsi + 0x30]
jmp 0x1400f35dc
lea eax, [rbx - 1]
movsd xmm0, qword [rsp + rax*8 + 0xc0]
addsd xmm0, qword [rsi + rbx*8 + 0x30]
mov r14, qword [rsp + 0xa0]
movsd qword [rsp + rbx*8 + 0xc0], xmm0
inc ebx
cmp ebx, dword [r14 + 8]
jae 0x1400f3615
movsd xmm6, qword [rsp + 0x80]
movsd xmm7, qword [rsp + 0x78]
movsd xmm11, qword [rsp + 0x88]
jmp 0x1400f3340
jmp 0x1400f361a
mov eax, 1
movaps xmm14, xmmword [rsp + 0x3f0]
movaps xmm13, xmmword [rsp + 0x400]
movaps xmm12, xmmword [rsp + 0x410]
movaps xmm10, xmmword [rsp + 0x430]
movaps xmm9, xmmword [rsp + 0x440]
movaps xmm15, xmmword [rsp + 0x3e0]
lea r11, [rsp + 0x488]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm11, xmmword [r11 - 0x68]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret