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

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov qword [rax + 8], rcx
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x48]
sub rsp, 0x120
mov r14, qword [rbp + 0x50]
lea rcx, [0x140145b9c]
movaps xmmword [rax - 0x38], xmm6
xor edi, edi
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
mov rbx, qword [r14 + 0xa0]
lea rsi, [r14 + 0x278]
mov r15, qword [r14 + 0x70]
mov r12, qword [r14 + 0x88]
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movss xmm11, dword [0x14014a6dc]
movaps xmmword [rax - 0x98], xmm12
movss xmm12, dword [0x14014abb0]
movaps xmmword [rax - 0xa8], xmm13
movsd xmm13, qword [0x14014a730]
movaps xmmword [rax - 0xb8], xmm14
mov rax, qword [rsi]
movsd xmm14, qword [0x14014a728]
mov qword [rsi + 8], rax
lea rax, [0x140145bb0]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x58], rbx
mov qword [rbp - 0x80], rcx
nop dword [rax]
nop dword [rax + rax]
mov eax, dword [rax]
mov edx, dword [rcx]
mov dword [rsp + 0x30], eax
mov eax, dword [rcx - 4]
mov dword [rsp + 0x60], edx
test eax, eax
jle 0x1400cde0b
mov ecx, edi
mov qword [rsp + 0x70], rax
mov r8d, eax
mov dword [rsp + 0x34], ecx
mov eax, dword [rsp + 0x30]
nop dword [rax]
test edx, edx
jle 0x1400cddf2
mov eax, edx
mov r13d, edi
mov qword [rsp + 0x68], rax
movss xmm0, dword [r15]
xorps xmm0, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_expf
addss xmm0, xmm11
movaps xmm6, xmm11
divss xmm6, xmm0
movss xmm0, dword [r12]
xorps xmm0, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_expf
addss xmm0, xmm11
movaps xmm1, xmm11
divss xmm1, xmm0
xorps xmm0, xmm0
mulss xmm6, xmm1
cvtss2sd xmm0, xmm6
comisd xmm0, xmm13
jbe 0x1400cddc1
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm6
cvtsi2ss xmm0, r13d
xorps xmm7, xmm7
cvtsi2ss xmm7, dword [rsp + 0x30]
movaps xmm1, xmm7
mulss xmm1, dword [rbx]
addss xmm1, xmm0
movss xmm0, dword [rbx + 8]
cvtps2pd xmm0, xmm0
cvtps2pd xmm10, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_exp
mov rax, qword [rsp + 0x58]
movss xmm9, dword [r14 + 0x18]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm10
mulss xmm1, xmm7
cvtps2pd xmm9, xmm9
cvtps2pd xmm8, xmm1
movaps xmm1, xmm7
mulss xmm1, dword [rax + 4]
mulsd xmm8, xmm14
subsd xmm0, xmm8
mulsd xmm0, xmm9
cvttsd2si ebx, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [rsp + 0x34]
addss xmm1, xmm0
movss xmm0, dword [rax + 0xc]
cvtps2pd xmm0, xmm0
cvtps2pd xmm6, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_exp
test dword [r14 + 0xd0], 0xfffffffd
xorps xmm1, xmm1
addsd xmm8, xmm10
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm6
mulsd xmm8, xmm9
mulss xmm1, xmm7
cvttsd2si edx, xmm8
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm14
subsd xmm0, xmm2
addsd xmm2, xmm6
mulsd xmm0, xmm9
mulsd xmm2, xmm9
cvttsd2si ecx, xmm0
cvttsd2si r10d, xmm2
mov dword [rsp + 0x48], r10d
je 0x1400cdcf4
mov r9d, dword [r14 + 0xcc]
cmp r9d, ebx
mov eax, r9d
cmovge eax, ebx
test eax, eax
jns 0x1400cdc7c
mov dword [rsp + 0x3c], edi
jmp 0x1400cdc87
cmp r9d, ebx
cmovl ebx, r9d
mov dword [rsp + 0x3c], ebx
mov r8d, dword [r14 + 0xc8]
cmp r8d, ecx
mov eax, r8d
cmovge eax, ecx
test eax, eax
jns 0x1400cdca1
mov dword [rsp + 0x40], edi
jmp 0x1400cdcac
cmp r8d, ecx
cmovl ecx, r8d
mov dword [rsp + 0x40], ecx
cmp r9d, edx
mov eax, r9d
cmovge eax, edx
test eax, eax
jns 0x1400cdcbf
mov dword [rsp + 0x44], edi
jmp 0x1400cdcca
cmp r9d, edx
cmovl edx, r9d
mov dword [rsp + 0x44], edx
cmp r8d, r10d
mov eax, r8d
cmovge eax, r10d
test eax, eax
jns 0x1400cdce1
mov dword [rsp + 0x48], edi
jmp 0x1400cdd7c
cmp r8d, r10d
jge 0x1400cdd7c
mov dword [rsp + 0x48], r8d
jmp 0x1400cdd7c
mov r9d, dword [r14 + 0xc8]
cmp r9d, ebx
mov eax, r9d
cmovge eax, ebx
test eax, eax
jns 0x1400cdd0e
mov dword [rsp + 0x3c], edi
jmp 0x1400cdd19
cmp r9d, ebx
cmovl ebx, r9d
mov dword [rsp + 0x3c], ebx
mov r8d, dword [r14 + 0xcc]
cmp r8d, ecx
mov eax, r8d
cmovge eax, ecx
test eax, eax
jns 0x1400cdd33
mov dword [rsp + 0x40], edi
jmp 0x1400cdd3e
cmp r8d, ecx
cmovl ecx, r8d
mov dword [rsp + 0x40], ecx
cmp r9d, edx
mov eax, r9d
cmovge eax, edx
test eax, eax
jns 0x1400cdd51
mov dword [rsp + 0x44], edi
jmp 0x1400cdd5c
cmp r9d, edx
cmovl edx, r9d
mov dword [rsp + 0x44], edx
cmp r8d, r10d
mov eax, r8d
cmovge eax, r10d
test eax, eax
jns 0x1400cdd70
mov dword [rsp + 0x48], edi
jmp 0x1400cdd7c
cmp r8d, r10d
cmovl r10d, r8d
mov dword [rsp + 0x48], r10d
mov rdx, qword [rsi + 8]
mov dword [rsp + 0x50], 1
cmp rdx, qword [rsi + 0x10]
je 0x1400cddaf
movups xmm0, xmmword [rsp + 0x38]
movsd xmm1, qword [rsp + 0x48]
movups xmmword [rdx], xmm0
movsd qword [rdx + 0x10], xmm1
mov dword [rdx + 0x18], 1
add qword [rsi + 8], 0x1c
jmp 0x1400cddbc
lea r8, [rsp + 0x38]
mov rcx, rsi
call fcn.1400cfcf0
mov rbx, qword [rsp + 0x58]
mov eax, dword [rsp + 0x30]
add rbx, 0x10
add r13d, eax
mov qword [rsp + 0x58], rbx
add r15, 4
add r12, 4
sub qword [rsp + 0x68], 1
jne 0x1400cdb32
mov ecx, dword [rsp + 0x34]
mov edx, dword [rsp + 0x60]
mov r8, qword [rsp + 0x70]
add ecx, eax
sub r8, 1
mov dword [rsp + 0x34], ecx
mov qword [rsp + 0x70], r8
jne 0x1400cdb20
mov rcx, qword [rbp - 0x80]
mov rax, qword [rsp + 0x78]
lea rdx, [0x140145bbc]
add rax, 4
add rcx, 8
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x80], rcx
cmp rax, rdx
jl 0x1400cdaf0
mov rcx, qword [rsi + 8]
movabs rax, 0x4924924924924925
sub rcx, qword [rsi]
movss xmm2, dword [0x14014a6ac]
imul rcx
mov rbx, rdx
mov rdx, rsi
sar rbx, 3
mov rax, rbx
shr rax, 0x3f
add rbx, rax
call fcn.1400ce000
mov eax, 0xa
cmp ebx, eax
cmovl eax, ebx
movsxd r11, eax
test eax, eax
jle 0x1400cdfa8
mov r9, rdi
lea r8, [r14 + 0x294]
mov r10, rdi
mov rdx, rdi
nop dword [rax + rax]
mov rcx, qword [rsi]
cmp dword [rdx + rcx + 0x18], 0
je 0x1400cdf98
mov eax, dword [r14 + 0xd0]
cmp eax, 2
jne 0x1400cdeef
mov eax, dword [r14 + 0xc8]
sub eax, dword [rdx + rcx + 0xc]
mov dword [r8 - 4], eax
mov rax, qword [rsi]
mov ecx, dword [r14 + 0xcc]
sub ecx, dword [rdx + rax + 0x10]
mov dword [r8], ecx
mov rax, qword [rsi]
mov ecx, dword [r14 + 0xc8]
sub ecx, dword [rdx + rax + 4]
mov dword [r8 + 4], ecx
mov rax, qword [rsi]
mov ecx, dword [r14 + 0xcc]
sub ecx, dword [rdx + rax + 8]
jmp 0x1400cdf85
cmp eax, 1
jne 0x1400cdf28
mov eax, dword [rdx + rcx + 8]
mov dword [r8 - 4], eax
mov rax, qword [rsi]
mov ecx, dword [r14 + 0xcc]
sub ecx, dword [rdx + rax + 0xc]
mov dword [r8], ecx
mov rax, qword [rsi]
mov ecx, dword [rdx + rax + 0x10]
mov dword [r8 + 4], ecx
mov rax, qword [rsi]
mov ecx, dword [r14 + 0xcc]
sub ecx, dword [rdx + rax + 4]
jmp 0x1400cdf85
cmp eax, 3
jne 0x1400cdf61
mov eax, dword [r14 + 0xc8]
sub eax, dword [rdx + rcx + 0x10]
mov dword [r8 - 4], eax
mov rax, qword [rsi]
mov ecx, dword [rdx + rax + 4]
mov dword [r8], ecx
mov rax, qword [rsi]
mov ecx, dword [r14 + 0xc8]
sub ecx, dword [rdx + rax + 8]
mov dword [r8 + 4], ecx
mov rax, qword [rsi]
mov ecx, dword [rdx + rax + 0xc]
jmp 0x1400cdf85
mov eax, dword [rdx + rcx + 4]
mov dword [r8 - 4], eax
mov rax, qword [rsi]
mov ecx, dword [rdx + rax + 8]
mov dword [r8], ecx
mov rax, qword [rsi]
mov ecx, dword [rdx + rax + 0xc]
mov dword [r8 + 4], ecx
mov rax, qword [rsi]
mov ecx, dword [rdx + rax + 0x10]
mov dword [r8 + 8], ecx
inc edi
add r8, 0x10
inc r10
cmp r10, 2
je 0x1400cdfa8
inc r9
add rdx, 0x1c
cmp r9, r11
jl 0x1400cde90
lea r11, [rsp + 0x120]
mov dword [r14 + 0x330], edi
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret