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

Disassembly:
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0xc8
mov rax, qword [0x18020b800]
xor rax, rsp
mov qword [rsp + 0xb0], rax
mov rax, qword [0x18020c750]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x3ef0]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x68]
mov ecx, dword [rcx + 0x158]
cmp dword [rax + 0x4908], ecx
je 0x1800210bc
xor al, al
jmp 0x180021658
lea rax, [rsp + 0x90]
mov rcx, qword [rsp + 0x30]
mov rdi, rax
lea rsi, [rcx + 0x47a8]
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0xa0]
mov rcx, qword [rsp + 0x30]
mov rdi, rax
lea rsi, [rcx + 0x4964]
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x4984]
inc eax
mov rcx, qword [rsp + 0x30]
mov dword [rcx + 0x4984], eax
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x48d0]
cmp qword [rax + 0x368], rcx
jne 0x18002117c
mov rax, qword [rsp + 0x68]
add rax, 0x238
mov qword [rsp + 0x88], rax
lea rdx, [rsp + 0x90]
mov rcx, qword [rsp + 0x88]
call fcn.180025fe0
movzx eax, al
test eax, eax
jne 0x180021160
xor al, al
jmp 0x180021658
mov rax, qword [rsp + 0x68]
add rax, 0x238
mov rdx, rax
lea rcx, [rsp + 0x90]
call fcn.1800133e0
nop
movss xmm3, dword [rsp + 0xa8]
movss xmm2, dword [rsp + 0xa0]
movss xmm1, dword [rsp + 0x98]
movss xmm0, dword [rsp + 0x90]
call fcn.180021680
movss dword [rsp + 0x24], xmm0
movss xmm2, dword [0x1801aaffc]
movss xmm1, dword [rsp + 0xac]
movss xmm0, dword [rsp + 0xa4]
call fcn.180006af0
movss dword [rsp + 0x70], xmm0
movss xmm2, dword [0x1801aafcc]
movss xmm1, dword [rsp + 0xac]
movss xmm0, dword [rsp + 0xa4]
call fcn.180006af0
movss dword [rsp + 0x74], xmm0
movss xmm2, dword [0x1801aaffc]
movss xmm1, dword [rsp + 0x9c]
movss xmm0, dword [rsp + 0x94]
call fcn.180006af0
movss dword [rsp + 0x78], xmm0
movss xmm2, dword [0x1801aafcc]
movss xmm1, dword [rsp + 0x9c]
movss xmm0, dword [rsp + 0x94]
call fcn.180006af0
movss dword [rsp + 0x7c], xmm0
movss xmm3, dword [rsp + 0x70]
movss xmm2, dword [rsp + 0x74]
movss xmm1, dword [rsp + 0x78]
movss xmm0, dword [rsp + 0x7c]
call fcn.180021680
movss dword [rsp + 0x2c], xmm0
movss xmm0, dword [rsp + 0x2c]
ucomiss xmm0, dword [0x1801aafa4]
jp 0x180021273
je 0x1800212cb
movss xmm0, dword [rsp + 0x24]
ucomiss xmm0, dword [0x1801aafa4]
jp 0x180021284
je 0x1800212cb
movss xmm0, dword [rsp + 0x24]
comiss xmm0, dword [0x1801aafa4]
jbe 0x1800212a3
movss xmm0, dword [0x1801a6c44]
movss dword [rsp + 0x58], xmm0
jmp 0x1800212b1
movss xmm0, dword [0x1801ab080]
movss dword [rsp + 0x58], xmm0
movss xmm0, dword [rsp + 0x24]
divss xmm0, dword [0x1801ab074]
addss xmm0, dword [rsp + 0x58]
movss dword [rsp + 0x24], xmm0
movss xmm0, dword [rsp + 0x24]
call fcn.180034470
movss dword [rsp + 0x80], xmm0
movss xmm0, dword [rsp + 0x2c]
call fcn.180034470
movss xmm1, dword [rsp + 0x80]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x44], xmm0
movss xmm0, dword [rsp + 0x90]
addss xmm0, dword [rsp + 0x98]
movss xmm1, dword [rsp + 0xa0]
addss xmm1, dword [rsp + 0xa8]
subss xmm0, xmm1
movss dword [rsp + 0x40], xmm0
movss xmm0, dword [rsp + 0x94]
addss xmm0, dword [rsp + 0x9c]
movss xmm1, dword [rsp + 0xa4]
addss xmm1, dword [rsp + 0xac]
subss xmm0, xmm1
movss dword [rsp + 0x3c], xmm0
movss xmm0, dword [rsp + 0x40]
call fcn.180034470
movss dword [rsp + 0x84], xmm0
movss xmm0, dword [rsp + 0x3c]
call fcn.180034470
movss xmm1, dword [rsp + 0x84]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x38], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x48], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x4c], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x50], xmm0
movss xmm0, dword [rsp + 0x24]
ucomiss xmm0, dword [0x1801aafa4]
jp 0x1800213ce
jne 0x1800213ce
movss xmm0, dword [rsp + 0x2c]
ucomiss xmm0, dword [0x1801aafa4]
jp 0x1800213ce
je 0x18002140c
movss xmm0, dword [rsp + 0x24]
movss dword [rsp + 0x48], xmm0
movss xmm0, dword [rsp + 0x2c]
movss dword [rsp + 0x4c], xmm0
movss xmm0, dword [rsp + 0x44]
movss dword [rsp + 0x50], xmm0
movss xmm1, dword [rsp + 0x2c]
movss xmm0, dword [rsp + 0x24]
call fcn.18001ab40
mov dword [rsp + 0x54], eax
jmp 0x18002149b
movss xmm0, dword [rsp + 0x40]
ucomiss xmm0, dword [0x1801aafa4]
jp 0x18002142e
jne 0x18002142e
movss xmm0, dword [rsp + 0x3c]
ucomiss xmm0, dword [0x1801aafa4]
jp 0x18002142e
je 0x180021469
movss xmm0, dword [rsp + 0x40]
movss dword [rsp + 0x48], xmm0
movss xmm0, dword [rsp + 0x3c]
movss dword [rsp + 0x4c], xmm0
movss xmm0, dword [rsp + 0x38]
movss dword [rsp + 0x50], xmm0
movss xmm1, dword [rsp + 0x3c]
movss xmm0, dword [rsp + 0x40]
call fcn.18001ab40
mov dword [rsp + 0x54], eax
jmp 0x18002149b
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x48d8]
cmp dword [rax + 0x478c], ecx
jae 0x18002148b
mov dword [rsp + 0x5c], 0
jmp 0x180021493
mov dword [rsp + 0x5c], 1
mov eax, dword [rsp + 0x5c]
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x4958]
mov dword [rsp + 0x28], eax
mov byte [rsp + 0x20], 0
mov eax, dword [rsp + 0x28]
cmp dword [rsp + 0x54], eax
jne 0x18002158f
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x24]
comiss xmm0, dword [rsp + 0x44]
jbe 0x1800214fe
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x44]
movss dword [rax + 0x24], xmm0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x38]
movss dword [rax + 0x28], xmm0
mov al, 1
jmp 0x180021658
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x44]
ucomiss xmm0, dword [rax + 0x24]
jp 0x18002158f
jne 0x18002158f
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x28]
comiss xmm0, dword [rsp + 0x38]
jbe 0x180021542
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x38]
movss dword [rax + 0x28], xmm0
mov byte [rsp + 0x20], 1
jmp 0x18002158f
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x38]
ucomiss xmm0, dword [rax + 0x28]
jp 0x18002158f
jne 0x18002158f
cmp dword [rsp + 0x28], 2
je 0x180021574
cmp dword [rsp + 0x28], 3
je 0x180021574
movss xmm0, dword [rsp + 0x24]
movss dword [rsp + 0x60], xmm0
jmp 0x180021580
movss xmm0, dword [rsp + 0x2c]
movss dword [rsp + 0x60], xmm0
xorps xmm0, xmm0
comiss xmm0, dword [rsp + 0x60]
jbe 0x18002158f
mov byte [rsp + 0x20], 1
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x24]
ucomiss xmm0, dword [0x1801ab078]
jp 0x180021653
jne 0x180021653
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x2c]
comiss xmm0, dword [rsp + 0x50]
jbe 0x180021653
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x4908], 1
jne 0x180021653
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x48d0]
mov eax, dword [rax + 0x14]
and eax, 0x10000000
test eax, eax
jne 0x180021653
cmp dword [rsp + 0x28], 0
jne 0x1800215fe
xorps xmm0, xmm0
comiss xmm0, dword [rsp + 0x48]
ja 0x18002163b
cmp dword [rsp + 0x28], 1
jne 0x180021614
movss xmm0, dword [rsp + 0x48]
comiss xmm0, dword [0x1801aafa4]
ja 0x18002163b
cmp dword [rsp + 0x28], 2
jne 0x180021625
xorps xmm0, xmm0
comiss xmm0, dword [rsp + 0x4c]
ja 0x18002163b
cmp dword [rsp + 0x28], 3
jne 0x180021653
movss xmm0, dword [rsp + 0x4c]
comiss xmm0, dword [0x1801aafa4]
jbe 0x180021653
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x50]
movss dword [rax + 0x2c], xmm0
mov byte [rsp + 0x20], 1
movzx eax, byte [rsp + 0x20]
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.18019dcf0
add rsp, 0xc8
pop rdi
pop rsi
ret