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

Disassembly:
movss dword [rsp + 0x10], xmm1
movss dword [rsp + 8], xmm0
sub rsp, 0x1c8
movss xmm0, dword [rsp + 0x1d0]
movss dword [rsp + 0x198], xmm0
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x7c], eax
xor eax, eax
test eax, eax
jne 0x1800afe83
movss xmm0, dword [rsp + 0x1d8]
movss dword [rsp + 0x19c], xmm0
mov eax, dword [rsp + 0x19c]
mov dword [rsp + 0x4c], eax
xor eax, eax
test eax, eax
jne 0x1800afea6
mov eax, dword [rsp + 0x7c]
btr eax, 0x1f
mov dword [rsp + 0x10], eax
mov eax, dword [rsp + 0x4c]
btr eax, 0x1f
mov dword [rsp + 0x44], eax
cmp dword [rsp + 0x44], 0
jne 0x1800afefb
movss xmm0, dword [0x180143e50]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
cmp dword [rsp + 0x10], 0x7f800000
jg 0x1800aff0f
cmp dword [rsp + 0x44], 0x7f800000
jle 0x1800aff2c
movss xmm0, dword [rsp + 0x1d0]
addss xmm0, dword [rsp + 0x1d8]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
mov dword [rsp + 0x70], 0
cmp dword [rsp + 0x7c], 0
jge 0x1800affa9
cmp dword [rsp + 0x44], 0x4b800000
jl 0x1800aff4f
mov dword [rsp + 0x70], 2
jmp 0x1800affa9
cmp dword [rsp + 0x44], 0x3f800000
jl 0x1800affa9
mov eax, dword [rsp + 0x44]
sar eax, 0x17
sub eax, 0x7f
mov dword [rsp + 0x18], eax
mov eax, 0x17
sub eax, dword [rsp + 0x18]
movzx ecx, al
mov eax, dword [rsp + 0x44]
sar eax, cl
mov dword [rsp + 0xc], eax
mov eax, 0x17
sub eax, dword [rsp + 0x18]
movzx ecx, al
mov eax, dword [rsp + 0xc]
shl eax, cl
cmp eax, dword [rsp + 0x44]
jne 0x1800affa9
mov eax, dword [rsp + 0xc]
and eax, 1
mov ecx, 2
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x70], eax
cmp dword [rsp + 0x44], 0x7f800000
jne 0x1800b006c
cmp dword [rsp + 0x10], 0x3f800000
jne 0x1800affe3
movss xmm0, dword [rsp + 0x1d8]
subss xmm0, dword [rsp + 0x1d8]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
cmp dword [rsp + 0x10], 0x3f800000
jle 0x1800b002a
cmp dword [rsp + 0x4c], 0
jl 0x1800b0008
movss xmm0, dword [rsp + 0x1d8]
movss dword [rsp + 0xb0], xmm0
jmp 0x1800b0014
xorps xmm0, xmm0
movss dword [rsp + 0xb0], xmm0
movss xmm0, dword [rsp + 0xb0]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
cmp dword [rsp + 0x4c], 0
jge 0x1800b004c
movss xmm0, dword [rsp + 0x1d8]
xorps xmm0, xmmword [0x180145cd0]
movss dword [rsp + 0xb4], xmm0
jmp 0x1800b0058
xorps xmm0, xmm0
movss dword [rsp + 0xb4], xmm0
movss xmm0, dword [rsp + 0xb4]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
cmp dword [rsp + 0x44], 0x3f800000
jne 0x1800b00af
cmp dword [rsp + 0x4c], 0
jge 0x1800b009b
movss xmm0, dword [0x180143e50]
divss xmm0, dword [rsp + 0x1d0]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
movss xmm0, dword [rsp + 0x1d0]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
cmp dword [rsp + 0x4c], 0x40000000
jne 0x1800b00d6
movss xmm0, dword [rsp + 0x1d0]
mulss xmm0, dword [rsp + 0x1d0]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
cmp dword [rsp + 0x4c], 0x3f000000
jne 0x1800b02fb
cmp dword [rsp + 0x7c], 0
jl 0x1800b02fb
cvtss2sd xmm0, dword [rsp + 0x1d0]
movsd qword [rsp + 0xa8], xmm0
movsd xmm0, qword [0x180146470]
movsd qword [rsp + 0x1b8], xmm0
movsd xmm0, qword [rsp + 0xa8]
mulsd xmm0, qword [0x180146458]
movsd qword [rsp + 0x1a8], xmm0
movsd xmm0, qword [rsp + 0xa8]
ucomisd xmm0, qword [0x180124b20]
jp 0x1800b015a
jne 0x1800b015a
movsd xmm0, qword [rsp + 0xa8]
movsd qword [rsp + 0xe0], xmm0
jmp 0x1800b02e7
xorps xmm0, xmm0
comisd xmm0, xmmword [rsp + 0xa8]
jbe 0x1800b017e
movsd xmm0, qword [0x1801465b0]
movsd qword [rsp + 0xe0], xmm0
jmp 0x1800b02e7
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xd8], rax
movabs rax, 0x7ff7ffffffffffff
mov rcx, qword [rsp + 0xd8]
and rcx, rax
mov rax, rcx
movabs rcx, 0x7ff0000000000000
cmp rax, rcx
jne 0x1800b01cc
movsd xmm0, qword [rsp + 0xa8]
movsd qword [rsp + 0xe0], xmm0
jmp 0x1800b02e7
mov rax, qword [rsp + 0xd8]
sar rax, 1
movabs rcx, 0x5fe6eb50c7b537a9
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0xd8], rax
movsd xmm0, qword [rsp + 0xd8]
movsd qword [rsp + 0x68], xmm0
movsd xmm0, qword [rsp + 0x1a8]
mulsd xmm0, qword [rsp + 0x68]
mulsd xmm0, qword [rsp + 0x68]
movsd xmm1, qword [0x180146470]
subsd xmm1, xmm0
movaps xmm0, xmm1
movsd xmm1, qword [rsp + 0x68]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x68], xmm0
movsd xmm0, qword [rsp + 0x1a8]
mulsd xmm0, qword [rsp + 0x68]
mulsd xmm0, qword [rsp + 0x68]
movsd xmm1, qword [0x180146470]
subsd xmm1, xmm0
movaps xmm0, xmm1
movsd xmm1, qword [rsp + 0x68]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x68], xmm0
movsd xmm0, qword [rsp + 0x1a8]
mulsd xmm0, qword [rsp + 0x68]
mulsd xmm0, qword [rsp + 0x68]
movsd xmm1, qword [0x180146470]
subsd xmm1, xmm0
movaps xmm0, xmm1
movsd xmm1, qword [rsp + 0x68]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x68], xmm0
movsd xmm0, qword [0x180145c68]
divsd xmm0, qword [rsp + 0x68]
movsd xmm1, qword [rsp + 0xa8]
mulsd xmm1, qword [rsp + 0x68]
addsd xmm0, xmm1
mulsd xmm0, qword [0x180146458]
movsd qword [rsp + 0x1b0], xmm0
movsd xmm0, qword [rsp + 0x1b0]
movsd qword [rsp + 0xe0], xmm0
cvtsd2ss xmm0, qword [rsp + 0xe0]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
movss xmm0, dword [rsp + 0x1d0]
movss dword [rsp + 0x84], xmm0
mov eax, dword [rsp + 0x84]
btr eax, 0x1f
mov dword [rsp + 0x84], eax
movss xmm0, dword [rsp + 0x84]
movss dword [rsp + 0x50], xmm0
cmp dword [rsp + 0x10], 0x7f800000
je 0x1800b034d
cmp dword [rsp + 0x10], 0
je 0x1800b034d
cmp dword [rsp + 0x10], 0x3f800000
jne 0x1800b03df
movss xmm0, dword [rsp + 0x50]
movss dword [rsp], xmm0
cmp dword [rsp + 0x4c], 0
jge 0x1800b0378
movss xmm0, dword [rsp]
movss xmm1, dword [0x180143e50]
divss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp], xmm0
cmp dword [rsp + 0x7c], 0
jge 0x1800b03cf
mov eax, dword [rsp + 0x10]
sub eax, 0x3f800000
or eax, dword [rsp + 0x70]
test eax, eax
jne 0x1800b03b7
movss xmm0, dword [rsp]
movss xmm1, dword [rsp]
subss xmm0, xmm1
movss xmm1, dword [rsp]
movss xmm2, dword [rsp]
subss xmm1, xmm2
divss xmm0, xmm1
movss dword [rsp], xmm0
jmp 0x1800b03cf
cmp dword [rsp + 0x70], 1
jne 0x1800b03cf
movss xmm0, dword [rsp]
xorps xmm0, xmmword [0x180145cd0]
movss dword [rsp], xmm0
movss xmm0, dword [rsp]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
mov eax, dword [rsp + 0x7c]
shr eax, 0x1f
dec eax
or eax, dword [rsp + 0x70]
test eax, eax
jne 0x1800b0423
movss xmm0, dword [rsp + 0x1d0]
subss xmm0, dword [rsp + 0x1d0]
movss xmm1, dword [rsp + 0x1d0]
subss xmm1, dword [rsp + 0x1d0]
divss xmm0, xmm1
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
cmp dword [rsp + 0x44], 0x4d000000
jle 0x1800b05dd
cmp dword [rsp + 0x10], 0x3f7ffff8
jge 0x1800b0475
cmp dword [rsp + 0x4c], 0
jge 0x1800b0455
movss xmm0, dword [0x1801489e4]
movss dword [rsp + 0xb8], xmm0
jmp 0x1800b0461
xorps xmm0, xmm0
movss dword [rsp + 0xb8], xmm0
movss xmm0, dword [rsp + 0xb8]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
cmp dword [rsp + 0x10], 0x3f800007
jle 0x1800b04b9
cmp dword [rsp + 0x4c], 0
jle 0x1800b0499
movss xmm0, dword [0x1801489e4]
movss dword [rsp + 0xbc], xmm0
jmp 0x1800b04a5
xorps xmm0, xmm0
movss dword [rsp + 0xbc], xmm0
movss xmm0, dword [rsp + 0xbc]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
movss xmm0, dword [rsp + 0x1d0]
subss xmm0, dword [0x180143e50]
movss dword [rsp + 4], xmm0
movss xmm0, dword [rsp + 4]
mulss xmm0, dword [rsp + 4]
movss xmm1, dword [rsp + 4]
mulss xmm1, dword [0x1801463c4]
movss xmm2, dword [0x1801488a8]
subss xmm2, xmm1
movaps xmm1, xmm2
movss xmm2, dword [rsp + 4]
mulss xmm2, xmm1
movaps xmm1, xmm2
movss xmm2, dword [0x180143e4c]
subss xmm2, xmm1
movaps xmm1, xmm2
mulss xmm0, xmm1
movss dword [rsp + 0x80], xmm0
movss xmm0, dword [0x1801488d4]
mulss xmm0, dword [rsp + 4]
movss dword [rsp + 0x3c], xmm0
movss xmm0, dword [rsp + 4]
mulss xmm0, dword [0x180148860]
movss xmm1, dword [rsp + 0x80]
mulss xmm1, dword [0x1801488d8]
subss xmm0, xmm1
movss dword [rsp + 0x40], xmm0
movss xmm0, dword [rsp + 0x3c]
addss xmm0, dword [rsp + 0x40]
movss dword [rsp + 0x30], xmm0
movss xmm0, dword [rsp + 0x30]
movss dword [rsp + 0x1a0], xmm0
mov eax, dword [rsp + 0x1a0]
mov dword [rsp + 0x28], eax
xor eax, eax
test eax, eax
jne 0x1800b0571
mov eax, dword [rsp + 0x28]
and eax, 0xfffff000
mov dword [rsp + 0x1a4], eax
movss xmm0, dword [rsp + 0x1a4]
movss dword [rsp + 0x30], xmm0
xor eax, eax
test eax, eax
jne 0x1800b0591
movss xmm0, dword [rsp + 0x30]
subss xmm0, dword [rsp + 0x3c]
movss xmm1, dword [rsp + 0x40]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xcc], xmm0
jmp 0x1800b0b50
mov dword [rsp + 8], 0
cmp dword [rsp + 0x10], 0x800000
jge 0x1800b062e
movss xmm0, dword [rsp + 0x50]
mulss xmm0, dword [0x180145cbc]
movss dword [rsp + 0x50], xmm0
mov eax, dword [rsp + 8]
sub eax, 0x18
mov dword [rsp + 8], eax
movss xmm0, dword [rsp + 0x50]
movss dword [rsp + 0xe8], xmm0
mov eax, dword [rsp + 0xe8]
mov dword [rsp + 0x10], eax
xor eax, eax
test eax, eax
jne 0x1800b060e
mov eax, dword [rsp + 0x10]
sar eax, 0x17
mov ecx, dword [rsp + 8]
lea eax, [rcx + rax - 0x7f]
mov dword [rsp + 8], eax
mov eax, dword [rsp + 0x10]
and eax, 0x7fffff
mov dword [rsp + 0xc], eax
mov eax, dword [rsp + 0xc]
or eax, 0x3f800000
mov dword [rsp + 0x10], eax
cmp dword [rsp + 0xc], 0x1cc471
jg 0x1800b066f
mov dword [rsp + 0x18], 0
jmp 0x1800b06a2
cmp dword [rsp + 0xc], 0x5db3d7
jge 0x1800b0683
mov dword [rsp + 0x18], 1
jmp 0x1800b06a2
mov dword [rsp + 0x18], 0
mov eax, dword [rsp + 8]
inc eax
mov dword [rsp + 8], eax
mov eax, dword [rsp + 0x10]
sub eax, 0x800000
mov dword [rsp + 0x10], eax
mov eax, dword [rsp + 0x10]
mov dword [rsp + 0xec], eax
movss xmm0, dword [rsp + 0xec]
movss dword [rsp + 0x50], xmm0
xor eax, eax
test eax, eax
jne 0x1800b06a2
movsxd rax, dword [rsp + 0x18]
lea rcx, [0x1801483c8]
movss xmm0, dword [rsp + 0x50]
subss xmm0, dword [rcx + rax*4]
movss dword [rsp + 0x3c], xmm0
movsxd rax, dword [rsp + 0x18]
lea rcx, [0x1801483c8]
movss xmm0, dword [rsp + 0x50]
addss xmm0, dword [rcx + rax*4]
movss xmm1, dword [0x180143e50]
divss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x40], xmm0
movss xmm0, dword [rsp + 0x3c]
mulss xmm0, dword [rsp + 0x40]
movss dword [rsp + 0x38], xmm0
movss xmm0, dword [rsp + 0x38]
movss dword [rsp + 0x54], xmm0
movss xmm0, dword [rsp + 0x54]
movss dword [rsp + 0xf0], xmm0
mov eax, dword [rsp + 0xf0]
mov dword [rsp + 0x28], eax
xor eax, eax
test eax, eax
jne 0x1800b0729
mov eax, dword [rsp + 0x28]
and eax, 0xfffff000
mov dword [rsp + 0xf4], eax
movss xmm0, dword [rsp + 0xf4]
movss dword [rsp + 0x54], xmm0
xor eax, eax
test eax, eax
jne 0x1800b0749
mov eax, dword [rsp + 0x10]
sar eax, 1
bts eax, 0x1d
mov ecx, dword [rsp + 0x18]
shl ecx, 0x15
lea eax, [rax + rcx + 0x40000]
mov dword [rsp + 0xf8], eax
movss xmm0, dword [rsp + 0xf8]
movss dword [rsp + 0x58], xmm0
xor eax, eax
test eax, eax
jne 0x1800b076e
movsxd rax, dword [rsp + 0x18]
lea rcx, [0x1801483c8]
movss xmm0, dword [rsp + 0x58]
subss xmm0, dword [rcx + rax*4]
movss xmm1, dword [rsp + 0x50]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x88], xmm0
movss xmm0, dword [rsp + 0x54]
mulss xmm0, dword [rsp + 0x58]
movss xmm1, dword [rsp + 0x3c]
subss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x54]
mulss xmm1, dword [rsp + 0x88]
subss xmm0, xmm1
movss xmm1, dword [rsp + 0x40]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xc0], xmm0
movss xmm0, dword [rsp + 0x38]
mulss xmm0, dword [rsp + 0x38]
movss dword [rsp + 0x48], xmm0
movss xmm0, dword [rsp + 0x48]
mulss xmm0, dword [rsp + 0x48]
movss xmm1, dword [rsp + 0x48]
mulss xmm1, dword [0x180148888]
movss xmm2, dword [0x1801488a0]
addss xmm2, xmm1
movaps xmm1, xmm2
movss xmm2, dword [rsp + 0x48]
mulss xmm2, xmm1
movaps xmm1, xmm2
movss xmm2, dword [0x1801488a4]
addss xmm2, xmm1
movaps xmm1, xmm2
movss xmm2, dword [rsp + 0x48]
mulss xmm2, xmm1
movaps xmm1, xmm2
movss xmm2, dword [0x1801488a8]
addss xmm2, xmm1
movaps xmm1, xmm2
movss xmm2, dword [rsp + 0x48]
mulss xmm2, xmm1
movaps xmm1, xmm2
movss xmm2, dword [0x1801488ac]
addss xmm2, xmm1
movaps xmm1, xmm2
movss xmm2, dword [rsp + 0x48]
mulss xmm2, xmm1
movaps xmm1, xmm2
movss xmm2, dword [0x180145c30]
addss xmm2, xmm1
movaps xmm1, xmm2
mulss xmm0, xmm1
movss dword [rsp + 0x74], xmm0
movss xmm0, dword [rsp + 0x54]
addss xmm0, dword [rsp + 0x38]
movss xmm1, dword [rsp + 0xc0]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x74]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x74], xmm0
movss xmm0, dword [rsp + 0x54]
mulss xmm0, dword [rsp + 0x54]
movss dword [rsp + 0x48], xmm0
movss xmm0, dword [0x180145c74]
addss xmm0, dword [rsp + 0x48]
addss xmm0, dword [rsp + 0x74]
movss dword [rsp + 0x58], xmm0
movss xmm0, dword [rsp + 0x58]
movss dword [rsp + 0xfc], xmm0
mov eax, dword [rsp + 0xfc]
mov dword [rsp + 0x28], eax
xor eax, eax
test eax, eax
jne 0x1800b0921
mov eax, dword [rsp + 0x28]
and eax, 0xfffff000
mov dword [rsp + 0x100], eax
movss xmm0, dword [rsp + 0x100]
movss dword [rsp + 0x58], xmm0
xor eax, eax
test eax, eax
jne 0x1800b0941
movss xmm0, dword [rsp + 0x58]
subss xmm0, dword [0x180145c74]
subss xmm0, dword [rsp + 0x48]
movss xmm1, dword [rsp + 0x74]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x88], xmm0
movss xmm0, dword [rsp + 0x54]
mulss xmm0, dword [rsp + 0x58]
movss dword [rsp + 0x3c], xmm0
movss xmm0, dword [rsp + 0xc0]
mulss xmm0, dword [rsp + 0x58]
movss xmm1, dword [rsp + 0x88]
mulss xmm1, dword [rsp + 0x38]
addss xmm0, xmm1
movss dword [rsp + 0x40], xmm0
movss xmm0, dword [rsp + 0x3c]
addss xmm0, dword [rsp + 0x40]
movss dword [rsp + 0x2c], xmm0
movss xmm0, dword [rsp + 0x2c]
movss dword [rsp + 0x104], xmm0
mov eax, dword [rsp + 0x104]
mov dword [rsp + 0x28], eax
xor eax, eax
test eax, eax
jne 0x1800b09dc
mov eax, dword [rsp + 0x28]
and eax, 0xfffff000
mov dword [rsp + 0x108], eax
movss xmm0, dword [rsp + 0x108]
movss dword [rsp + 0x2c], xmm0
xor eax, eax
test eax, eax
jne 0x1800b09fc
movss xmm0, dword [rsp + 0x2c]
subss xmm0, dword [rsp + 0x3c]
movss xmm1, dword [rsp + 0x40]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x60], xmm0
movss xmm0, dword [0x1801488c8]
mulss xmm0, dword [rsp + 0x2c]
movss dword [rsp + 0xc4], xmm0
movss xmm0, dword [0x18014885c]
mulss xmm0, dword [rsp + 0x2c]
movss xmm1, dword [rsp + 0x60]
mulss xmm1, dword [0x1801488cc]
addss xmm0, xmm1
movsxd rax, dword [rsp + 0x18]
lea rcx, [0x180148638]
addss xmm0, dword [rcx + rax*4]
movss dword [rsp + 0xc8], xmm0
cvtsi2ss xmm0, dword [rsp + 8]
movss dword [rsp + 4], xmm0
movss xmm0, dword [rsp + 0xc4]
addss xmm0, dword [rsp + 0xc8]
movsxd rax, dword [rsp + 0x18]
lea rcx, [0x1801484e8]
addss xmm0, dword [rcx + rax*4]
addss xmm0, dword [rsp + 4]
movss dword [rsp + 0x30], xmm0
movss xmm0, dword [rsp + 0x30]
movss dword [rsp + 0x10c], xmm0
mov eax, dword [rsp + 0x10c]
mov dword [rsp + 0x28], eax
xor eax, eax
test eax, eax
jne 0x1800b0acc
mov eax, dword [rsp + 0x28]
and eax, 0xfffff000
mov dword [rsp + 0x110], eax
movss xmm0, dword [rsp + 0x110]
movss dword [rsp + 0x30], xmm0
xor eax, eax
test eax, eax
jne 0x1800b0aec
movss xmm0, dword [rsp + 0x30]
subss xmm0, dword [rsp + 4]
movsxd rax, dword [rsp + 0x18]
lea rcx, [0x1801484e8]
subss xmm0, dword [rcx + rax*4]
subss xmm0, dword [rsp + 0xc4]
movss xmm1, dword [rsp + 0xc8]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xcc], xmm0
movss xmm0, dword [0x180143e50]
movss dword [rsp + 0x38], xmm0
mov eax, dword [rsp + 0x7c]
shr eax, 0x1f
dec eax
mov ecx, dword [rsp + 0x70]
dec ecx
or eax, ecx
test eax, eax
jne 0x1800b0b81
movss xmm0, dword [0x180143e98]
movss dword [rsp + 0x38], xmm0
movss xmm0, dword [rsp + 0x1d8]
movss dword [rsp + 0x114], xmm0
mov eax, dword [rsp + 0x114]
mov dword [rsp + 0x28], eax
xor eax, eax
test eax, eax
jne 0x1800b0b81
mov eax, dword [rsp + 0x28]
and eax, 0xfffff000
mov dword [rsp + 0x118], eax
movss xmm0, dword [rsp + 0x118]
movss dword [rsp + 0xd0], xmm0
xor eax, eax
test eax, eax
jne 0x1800b0ba4
movss xmm0, dword [rsp + 0x1d8]
subss xmm0, dword [rsp + 0xd0]
mulss xmm0, dword [rsp + 0x30]
movss xmm1, dword [rsp + 0x1d8]
mulss xmm1, dword [rsp + 0xcc]
addss xmm0, xmm1
movss dword [rsp + 0x60], xmm0
movss xmm0, dword [rsp + 0xd0]
mulss xmm0, dword [rsp + 0x30]
movss dword [rsp + 0x2c], xmm0
movss xmm0, dword [rsp + 0x60]
addss xmm0, dword [rsp + 0x2c]
movss dword [rsp], xmm0
movss xmm0, dword [rsp]
movss dword [rsp + 0x11c], xmm0
mov eax, dword [rsp + 0x11c]
mov dword [rsp + 0xc], eax
xor eax, eax
test eax, eax
jne 0x1800b0c26
cmp dword [rsp + 0xc], 0x43000000
jle 0x1800b0c75
movss xmm0, dword [rsp + 0x38]
mulss xmm0, dword [0x1801489e0]
mulss xmm0, dword [0x1801489e0]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
cmp dword [rsp + 0xc], 0x43000000
jne 0x1800b0cc0
movss xmm0, dword [rsp + 0x60]
addss xmm0, dword [0x180148854]
movss xmm1, dword [rsp]
subss xmm1, dword [rsp + 0x2c]
comiss xmm0, xmm1
jbe 0x1800b0cbe
movss xmm0, dword [rsp + 0x38]
mulss xmm0, dword [0x1801489e0]
mulss xmm0, dword [0x1801489e0]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
jmp 0x1800b0d2f
mov eax, dword [rsp + 0xc]
btr eax, 0x1f
cmp eax, 0x43160000
jle 0x1800b0cf2
movss xmm0, dword [rsp + 0x38]
mulss xmm0, dword [0x180148848]
mulss xmm0, dword [0x180148848]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
cmp dword [rsp + 0xc], 0xc3160000
jne 0x1800b0d2f
movss xmm0, dword [rsp]
subss xmm0, dword [rsp + 0x2c]
comiss xmm0, dword [rsp + 0x60]
jb 0x1800b0d2f
movss xmm0, dword [rsp + 0x38]
mulss xmm0, dword [0x180148848]
mulss xmm0, dword [0x180148848]
movss dword [rsp + 0x14], xmm0
jmp 0x1800b1494
mov eax, dword [rsp + 0xc]
btr eax, 0x1f
mov dword [rsp + 0xd4], eax
mov eax, dword [rsp + 0xd4]
sar eax, 0x17
sub eax, 0x7f
mov dword [rsp + 0x18], eax
mov dword [rsp + 8], 0
cmp dword [rsp + 0xd4], 0x3f000000
jle 0x1800b0e25
mov eax, dword [rsp + 0x18]
inc eax
mov ecx, 0x800000
mov dword [rsp + 0x120], ecx
movzx ecx, al
mov eax, dword [rsp + 0x120]
sar eax, cl
mov ecx, dword [rsp + 0xc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 8], eax
mov eax, dword [rsp + 8]
btr eax, 0x1f
sar eax, 0x17
sub eax, 0x7f
mov dword [rsp + 0x18], eax
mov eax, dword [rsp + 0x18]
mov ecx, 0x7fffff
mov dword [rsp + 0x124], ecx
movzx ecx, al
mov eax, dword [rsp + 0x124]
sar eax, cl
not eax
mov ecx, dword [rsp + 8]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x128], eax
movss xmm0, dword [rsp + 0x128]
movss dword [rsp + 4], xmm0
xor eax, eax
test eax, eax
jne 0x1800b0da4
mov eax, dword [rsp + 8]
and eax, 0x7fffff
bts eax, 0x17
mov ecx, 0x17
sub ecx, dword [rsp + 0x18]
sar eax, cl
mov dword [rsp + 8], eax
cmp dword [rsp + 0xc], 0
jge 0x1800b0e13
mov eax, dword [rsp + 8]
neg eax
mov dword [rsp + 8], eax
movss xmm0, dword [rsp + 0x2c]
subss xmm0, dword [rsp + 4]
movss dword [rsp + 0x2c], xmm0
movss xmm0, dword [rsp + 0x60]
addss xmm0, dword [rsp + 0x2c]
movss dword [rsp + 4], xmm0
movss xmm0, dword [rsp + 4]
movss dword [rsp + 0x12c], xmm0
mov eax, dword [rsp + 0x12c]
mov dword [rsp + 0x28], eax
xor eax, eax
test eax, eax
jne 0x1800b0e37
mov eax, dword [rsp + 0x28]
and eax, 0xfffff000
mov dword [rsp + 0x130], eax
movss xmm0, dword [rsp + 0x130]
movss dword [rsp + 4], xmm0
xor eax, eax
test eax, eax
jne 0x1800b0e57
movss xmm0, dword [rsp + 4]
mulss xmm0, dword [0x1801488b8]
movss dword [rsp + 0x3c], xmm0
movss xmm0, dword [rsp + 4]
subss xmm0, dword [rsp + 0x2c]
movss xmm1, dword [rsp + 0x60]
subss xmm1, xmm0
movaps xmm0, xmm1
mulss xmm0, dword [0x1801488bc]
movss xmm1, dword [rsp + 4]
mulss xmm1, dword [0x180148858]
addss xmm0, xmm1
movss dword [rsp + 0x40], xmm0
movss xmm0, dword [rsp + 0x3c]
addss xmm0, dword [rsp + 0x40]
movss dword [rsp], xmm0
movss xmm0, dword [rsp]
subss xmm0, dword [rsp + 0x3c]
movss xmm1, dword [rsp + 0x40]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x80], xmm0
movss xmm0, dword [rsp]
movss xmm1, dword [rsp]
mulss xmm0, xmm1
movss dword [rsp + 4], xmm0
movss xmm0, dword [rsp + 4]
mulss xmm0, dword [0x180148850]
movss xmm1, dword [0x1801489e8]
addss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 4]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [0x180148864]
addss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 4]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [0x1801489ec]
addss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 4]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [0x180145c20]
addss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 4]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x30], xmm0
movss xmm0, dword [rsp]
mulss xmm0, dword [rsp + 0x30]
movss xmm1, dword [rsp + 0x30]
subss xmm1, dword [0x180143e54]
divss xmm0, xmm1
movss xmm1, dword [rsp]
mulss xmm1, dword [rsp + 0x80]
movss xmm2, dword [rsp + 0x80]
addss xmm2, xmm1
movaps xmm1, xmm2
subss xmm0, xmm1
movss dword [rsp + 0x74], xmm0
movss xmm0, dword [rsp]
movss xmm1, dword [rsp + 0x74]
subss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [0x180143e50]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp], xmm0
movss xmm0, dword [rsp]
movss dword [rsp + 0x134], xmm0
mov eax, dword [rsp + 0x134]
mov dword [rsp + 0xc], eax
xor eax, eax
test eax, eax
jne 0x1800b100a
mov eax, dword [rsp + 8]
shl eax, 0x17
mov ecx, dword [rsp + 0xc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc], eax
mov eax, dword [rsp + 0xc]
sar eax, 0x17
test eax, eax
jg 0x1800b145d
movss xmm0, dword [rsp]
movss dword [rsp + 0x20], xmm0
movss xmm0, dword [rsp + 0x20]
movss dword [rsp + 0x138], xmm0
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0x78], eax
xor eax, eax
test eax, eax
jne 0x1800b1056
mov eax, dword [rsp + 0x78]
and eax, 0x7f800000
sar eax, 0x17
mov dword [rsp + 0x34], eax
cmp dword [rsp + 0x34], 0
jne 0x1800b1118
mov eax, dword [rsp + 0x78]
btr eax, 0x1f
test eax, eax
jne 0x1800b10ae
movss xmm0, dword [rsp + 0x20]
movss dword [rsp + 0x5c], xmm0
jmp 0x1800b1450
movss xmm0, dword [rsp + 0x20]
mulss xmm0, dword [0x1801489d8]
movss dword [rsp + 0x20], xmm0
movss xmm0, dword [rsp + 0x20]
movss dword [rsp + 0x13c], xmm0
mov eax, dword [rsp + 0x13c]
mov dword [rsp + 0x78], eax
xor eax, eax
test eax, eax
jne 0x1800b10c2
mov eax, dword [rsp + 0x78]
and eax, 0x7f800000
sar eax, 0x17
sub eax, 0x19
mov dword [rsp + 0x34], eax
cmp dword [rsp + 8], 0xffff3cb0
jge 0x1800b1118
movss xmm0, dword [0x180148848]
mulss xmm0, dword [rsp + 0x20]
movss dword [rsp + 0x5c], xmm0
jmp 0x1800b1450
cmp dword [rsp + 0x34], 0xff
jne 0x1800b1139
movss xmm0, dword [rsp + 0x20]
addss xmm0, dword [rsp + 0x20]
movss dword [rsp + 0x5c], xmm0
jmp 0x1800b1450
mov eax, dword [rsp + 8]
mov ecx, dword [rsp + 0x34]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x34], eax
cmp dword [rsp + 0x34], 0xfe
jle 0x1800b1225
mov eax, 4
imul rax, rax, 0
mov dword [rsp + rax + 0x140], 0x7f800000
movss xmm0, dword [rsp + 0x140]
movss dword [rsp + 0x144], xmm0
movss xmm0, dword [rsp + 0x144]
movss dword [rsp + 0x90], xmm0
movss xmm0, dword [rsp + 0x90]
movss dword [rsp + 0x148], xmm0
mov eax, dword [rsp + 0x148]
mov dword [rsp + 0x150], eax
xor eax, eax
test eax, eax
jne 0x1800b118f
movss xmm0, dword [rsp + 0x20]
movss dword [rsp + 0x14c], xmm0
mov eax, dword [rsp + 0x14c]
mov dword [rsp + 0x154], eax
xor eax, eax
test eax, eax
jne 0x1800b11b5
mov eax, dword [rsp + 0x150]
btr eax, 0x1f
mov ecx, dword [rsp + 0x154]
and ecx, 0x80000000
or eax, ecx
mov dword [rsp + 0x158], eax
movss xmm0, dword [rsp + 0x158]
movss dword [rsp + 0x90], xmm0
xor eax, eax
test eax, eax
jne 0x1800b11d8
movss xmm0, dword [rsp + 0x90]
movss dword [rsp + 0x5c], xmm0
jmp 0x1800b1450
cmp dword [rsp + 0x34], 0
jle 0x1800b126b
mov eax, dword [rsp + 0x78]
and eax, 0x807fffff
mov ecx, dword [rsp + 0x34]
shl ecx, 0x17
or eax, ecx
mov dword [rsp + 0x15c], eax
movss xmm0, dword [rsp + 0x15c]
movss dword [rsp + 0x20], xmm0
xor eax, eax
test eax, eax
jne 0x1800b122c
movss xmm0, dword [rsp + 0x20]
movss dword [rsp + 0x5c], xmm0
jmp 0x1800b1450
cmp dword [rsp + 0x34], 0xffffffe7
jg 0x1800b1403
cmp dword [rsp + 8], 0xc350
jle 0x1800b1357
mov eax, 4
imul rax, rax, 0
mov dword [rsp + rax + 0x160], 0x7f800000
movss xmm0, dword [rsp + 0x160]
movss dword [rsp + 0x164], xmm0
movss xmm0, dword [rsp + 0x164]
movss dword [rsp + 0x98], xmm0
movss xmm0, dword [rsp + 0x98]
movss dword [rsp + 0x168], xmm0
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x170], eax
xor eax, eax
test eax, eax
jne 0x1800b12bc
movss xmm0, dword [rsp + 0x20]
movss dword [rsp + 0x16c], xmm0
mov eax, dword [rsp + 0x16c]
mov dword [rsp + 0x174], eax
xor eax, eax
test eax, eax
jne 0x1800b12e2
mov eax, dword [rsp + 0x170]
btr eax, 0x1f
mov ecx, dword [rsp + 0x174]
and ecx, 0x80000000
or eax, ecx
mov dword [rsp + 0x178], eax
movss xmm0, dword [rsp + 0x178]
movss dword [rsp + 0x98], xmm0
xor eax, eax
test eax, eax
jne 0x1800b1305
movss xmm0, dword [rsp + 0x98]
movss dword [rsp + 0x5c], xmm0
jmp 0x1800b1450
movss xmm0, dword [0x180148848]
movss dword [rsp + 0xa0], xmm0
movss xmm0, dword [rsp + 0xa0]
movss dword [rsp + 0x17c], xmm0
mov eax, dword [rsp + 0x17c]
mov dword [rsp + 0x184], eax
xor eax, eax
test eax, eax
jne 0x1800b1368
movss xmm0, dword [rsp + 0x20]
movss dword [rsp + 0x180], xmm0
mov eax, dword [rsp + 0x180]
mov dword [rsp + 0x188], eax
xor eax, eax
test eax, eax
jne 0x1800b138e
mov eax, dword [rsp + 0x184]
btr eax, 0x1f
mov ecx, dword [rsp + 0x188]
and ecx, 0x80000000
or eax, ecx
mov dword [rsp + 0x18c], eax
movss xmm0, dword [rsp + 0x18c]
movss dword [rsp + 0xa0], xmm0
xor eax, eax
test eax, eax
jne 0x1800b13b1
movss xmm0, dword [0x180148848]
mulss xmm0, dword [rsp + 0xa0]
movss dword [rsp + 0x5c], xmm0
jmp 0x1800b1450
mov eax, dword [rsp + 0x34]
add eax, 0x19
mov dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x78]
and eax, 0x807fffff
mov ecx, dword [rsp + 0x34]
shl ecx, 0x17
or eax, ecx
mov dword [rsp + 0x190], eax
movss xmm0, dword [rsp + 0x190]
movss dword [rsp + 0x20], xmm0
xor eax, eax
test eax, eax
jne 0x1800b140e
movss xmm0, dword [rsp + 0x20]
mulss xmm0, dword [0x18014884c]
movss dword [rsp + 0x5c], xmm0
movss xmm0, dword [rsp + 0x5c]
movss dword [rsp], xmm0
jmp 0x1800b147c
mov eax, dword [rsp + 0xc]
mov dword [rsp + 0x194], eax
movss xmm0, dword [rsp + 0x194]
movss dword [rsp], xmm0
xor eax, eax
test eax, eax
jne 0x1800b145d
movss xmm0, dword [rsp]
movss xmm1, dword [rsp + 0x38]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x14], xmm0
movss xmm0, dword [rsp + 0x14]
add rsp, 0x1c8
ret