Function at 0x1400acd70
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, [0x14011e5e4]
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 [0x140122c30]
movaps xmmword [rax - 0x98], xmm12
movss xmm12, dword [0x140123080]
movaps xmmword [rax - 0xa8], xmm13
movsd xmm13, qword [0x140122c80]
movaps xmmword [rax - 0xb8], xmm14
mov rax, qword [rsi]
movsd xmm14, qword [0x140122c78]
mov qword [rsi + 8], rax
lea rax, [0x14011e5f8]
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 0x1400ad168
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 0x1400ad14f
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 xmm8, xmm11
divss xmm8, 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 xmm8, xmm1
cvtss2sd xmm0, xmm8
comisd xmm0, xmm13
jbe 0x1400ad11e
mov eax, dword [rsp + 0x30]
xorps xmm0, xmm0
cvtsi2ss xmm0, r13d
xorps xmm6, xmm6
movss dword [rsp + 0x38], xmm8
cvtsi2ss xmm6, eax
xorps xmm7, xmm7
movaps xmm1, xmm6
mulss xmm1, dword [rbx]
cvtsi2sd xmm7, eax
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 xmm8, xmm8
mulss xmm6, dword [rax + 4]
mulsd xmm0, xmm7
cvtps2pd xmm9, xmm9
cvtsd2ss xmm0, xmm0
cvtss2sd xmm8, xmm0
movaps xmm0, xmm10
mulsd xmm8, xmm14
subsd xmm0, xmm8
mulsd xmm0, xmm9
cvttsd2si ebx, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [rsp + 0x34]
addss xmm6, xmm0
movss xmm0, dword [rax + 0xc]
cvtps2pd xmm0, xmm0
cvtps2pd xmm6, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_exp
test dword [r14 + 0xd0], 0xfffffffd
mulsd xmm0, xmm7
addsd xmm8, xmm10
xorps xmm1, xmm1
cvtsd2ss xmm0, xmm0
mulsd xmm8, xmm9
cvtss2sd xmm1, xmm0
movaps xmm0, xmm6
mulsd xmm1, xmm14
cvttsd2si edx, xmm8
subsd xmm0, xmm1
addsd xmm1, xmm6
mulsd xmm0, xmm9
mulsd xmm1, xmm9
cvttsd2si ecx, xmm0
cvttsd2si r10d, xmm1
mov dword [rsp + 0x48], r10d
je 0x1400ad051
mov r9d, dword [r14 + 0xcc]
cmp r9d, ebx
mov eax, r9d
cmovge eax, ebx
test eax, eax
jns 0x1400acfd9
mov dword [rsp + 0x3c], edi
jmp 0x1400acfe4
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 0x1400acffe
mov dword [rsp + 0x40], edi
jmp 0x1400ad009
cmp r8d, ecx
cmovl ecx, r8d
mov dword [rsp + 0x40], ecx
cmp r9d, edx
mov eax, r9d
cmovge eax, edx
test eax, eax
jns 0x1400ad01c
mov dword [rsp + 0x44], edi
jmp 0x1400ad027
cmp r9d, edx
cmovl edx, r9d
mov dword [rsp + 0x44], edx
cmp r8d, r10d
mov eax, r8d
cmovge eax, r10d
test eax, eax
jns 0x1400ad03e
mov dword [rsp + 0x48], edi
jmp 0x1400ad0d9
cmp r8d, r10d
jge 0x1400ad0d9
mov dword [rsp + 0x48], r8d
jmp 0x1400ad0d9
mov r9d, dword [r14 + 0xc8]
cmp r9d, ebx
mov eax, r9d
cmovge eax, ebx
test eax, eax
jns 0x1400ad06b
mov dword [rsp + 0x3c], edi
jmp 0x1400ad076
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 0x1400ad090
mov dword [rsp + 0x40], edi
jmp 0x1400ad09b
cmp r8d, ecx
cmovl ecx, r8d
mov dword [rsp + 0x40], ecx
cmp r9d, edx
mov eax, r9d
cmovge eax, edx
test eax, eax
jns 0x1400ad0ae
mov dword [rsp + 0x44], edi
jmp 0x1400ad0b9
cmp r9d, edx
cmovl edx, r9d
mov dword [rsp + 0x44], edx
cmp r8d, r10d
mov eax, r8d
cmovge eax, r10d
test eax, eax
jns 0x1400ad0cd
mov dword [rsp + 0x48], edi
jmp 0x1400ad0d9
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 0x1400ad10c
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 0x1400ad119
lea r8, [rsp + 0x38]
mov rcx, rsi
call fcn.1400af000
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 0x1400ace82
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 0x1400ace70
mov rcx, qword [rbp - 0x80]
mov rax, qword [rsp + 0x78]
lea rdx, [0x14011e604]
add rax, 4
add rcx, 8
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x80], rcx
cmp rax, rdx
jl 0x1400ace40
mov rcx, qword [rsi + 8]
movabs rax, 0x4924924924924925
sub rcx, qword [rsi]
movss xmm2, dword [0x140122c00]
imul rcx
mov rbx, rdx
mov rdx, rsi
sar rbx, 3
mov rax, rbx
shr rax, 0x3f
add rbx, rax
call fcn.1400ad360
mov eax, 0xa
cmp ebx, eax
cmovl eax, ebx
movsxd r11, eax
test eax, eax
jle 0x1400ad308
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 0x1400ad2f8
mov eax, dword [r14 + 0xd0]
cmp eax, 2
jne 0x1400ad24f
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 0x1400ad2e5
cmp eax, 1
jne 0x1400ad288
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 0x1400ad2e5
cmp eax, 3
jne 0x1400ad2c1
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 0x1400ad2e5
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 0x1400ad308
inc r9
add rdx, 0x1c
cmp r9, r11
jl 0x1400ad1f0
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