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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x90
mov ebp, dword [0x1042dd60]
mov eax, dword [ebp + 0x19b4]
mov byte [eax + 0x7c], 1
mov edi, dword [ebp + 0x19b4]
cmp byte [edi + 0x7f], 0
je 0x10289eb5
xor ebx, ebx
mov eax, ebx
add esp, 0x90
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0xb0]
mov ebx, dword [esp + 0xa8]
test ebx, 0x402
je 0x10289ed5
movss xmm0, dword [ebp + 0x1554]
jmp 0x10289ed8
xorps xmm0, xmm0
movss dword [esp + 0x68], xmm0
mov esi, dword [esp + 0xac]
movss xmm0, dword [ebp + 0x1550]
movss dword [esp + 0x14], xmm0
test eax, eax
jne 0x10289f02
push 0
push esi
call fcn.10239b60
add esp, 8
lea ecx, [esp + 0x78]
push 0xbf800000
push 0
mov dword [esp + 0x38], eax
push eax
push esi
push ecx
call fcn.1023a370
add esp, 0x14
movss xmm3, dword [edi + 0xf8]
movss xmm1, dword [esp + 0x68]
maxss xmm3, xmm1
addss xmm1, xmm1
addss xmm1, dword [esp + 0x7c]
movss xmm4, dword [ebp + 0x18d0]
movss xmm0, dword [ebp + 0x1554]
addss xmm0, xmm0
addss xmm0, xmm4
minss xmm0, dword [edi + 0xec]
maxss xmm0, xmm1
movss xmm1, dword [edi + 0xcc]
addss xmm1, xmm0
mov eax, dword [edi + 0x208]
mov ecx, dword [edi + 0xc8]
mov edx, dword [edi + 0xcc]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], eax
movss dword [esp + 0x34], xmm1
movss dword [esp + 0x2c], xmm1
movd xmm1, eax
movd xmm5, ecx
punpckldq xmm5, xmm1
test bl, 2
jne 0x10289fae
movups xmmword [esp + 0x68], xmm5
jmp 0x10289ffb
movss xmm1, dword [edi + 0x34]
mulss xmm1, dword [0x103574f4]
movss xmm2, dword [0x103564bc]
addss xmm2, xmm1
unpcklps xmm2, xmm1
cvttps2dq xmm1, xmm2
cvtdq2ps xmm1, xmm1
movdqa xmm2, xmm5
subps xmm2, xmm1
addps xmm5, xmm1
movaps xmm1, xmm5
shufps xmm1, xmm2, 1
shufps xmm1, xmm2, 0xe2
movss dword [esp + 0x20], xmm2
shufps xmm5, xmm5, 0x55
movss dword [esp + 0x28], xmm5
movups xmmword [esp + 0x68], xmm1
movss xmm2, dword [esp + 0x14]
addss xmm2, xmm2
movss xmm5, dword [esp + 0x78]
xorps xmm1, xmm1
cmpltss xmm1, xmm5
movss dword [esp + 4], xmm2
addss xmm5, xmm2
andps xmm5, xmm1
movss dword [esp + 8], xmm4
addss xmm5, xmm4
movups xmmword [esp + 0x58], xmm5
movss dword [esp + 0x48], xmm5
movss dword [esp + 0x4c], xmm0
sub esp, 8
movss dword [esp + 0x40], xmm3
movss dword [esp + 4], xmm3
lea eax, [esp + 0x50]
mov dword [esp], eax
call fcn.1023c800
add esp, 8
test bl, 2
je 0x1028a072
movss xmm0, dword [0x10358aa4]
mulss xmm0, dword [esp + 0x14]
movss dword [esp + 4], xmm0
mov esi, dword [esp + 0xa4]
jne 0x1028a0bb
movups xmm1, xmmword [esp + 0x68]
movups xmm2, xmmword [esp + 0x58]
addss xmm2, xmm1
movss xmm0, dword [ebp + 0x1560]
addss xmm0, xmm0
addss xmm0, xmm2
movss dword [esp + 0x48], xmm1
mov eax, dword [esp + 0x10]
mov dword [esp + 0x4c], eax
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x34]
movss dword [esp + 0x54], xmm0
jmp 0x1028a0c5
movups xmm0, xmmword [esp + 0x20]
movups xmmword [esp + 0x48], xmm0
push ebx
push esi
call fcn.1028a9c0
add esp, 8
mov ebx, eax
test al, al
je 0x1028a10b
cmp byte [ebp + 0x1b34], 0
jne 0x1028a10b
mov eax, dword [esp + 0xa8]
and eax, 0x2000
je 0x1028a10b
mov eax, dword [esp + 0xa8]
and eax, 8
jne 0x1028a10b
mov cl, byte [edi + 0x100]
mov eax, 1
shl eax, cl
or dword [edi + 0x104], eax
push 0
push esi
lea eax, [esp + 0x50]
push eax
call fcn.1023ca80
add esp, 0xc
or byte [edi + 0x10c], 2
movups xmm0, xmmword [esp + 0x20]
movups xmmword [edi + 0x120], xmm0
test al, al
je 0x1028a1d5
mov dword [esp + 0x58], ebx
movss xmm0, dword [esp + 8]
addss xmm0, dword [esp + 4]
movss dword [esp + 8], xmm0
xor eax, eax
mov ebx, dword [esp + 0xa8]
test ebx, 0x100
sete al
mov ecx, ebx
and ecx, 4
shl ecx, 4
mov edx, ebx
shl edx, 0x19
sar edx, 0x1f
mov esi, ebx
shr esi, 6
and esi, 2
or esi, 0x10
and esi, edx
or esi, ecx
shl eax, 0xc
add eax, esi
add eax, 0x400
lea ecx, [esp + 2]
lea edx, [esp + 3]
push eax
push ecx
push edx
push dword [esp + 0xb0]
lea esi, [esp + 0x58]
push esi
call fcn.10274e30
add esp, 0x14
test ebx, 0x100
jne 0x1028a1fe
test al, al
je 0x1028a207
mov ecx, esi
mov eax, dword [esp + 0xa8]
test al, 0xc0
mov ebx, dword [esp + 0x58]
je 0x1028a212
mov eax, dword [esp + 0xa4]
cmp dword [ebp + 0x1adc], eax
sete dl
jmp 0x1028a214
mov eax, dword [esp + 0xa8]
test al, 8
sete al
mov ecx, ebx
and cl, al
cmp cl, 1
jne 0x10289ea8
push esi
call fcn.1028aa90
add esp, 4
mov bl, 1
jmp 0x10289ea8
mov ebx, dword [esp + 0x58]
jmp 0x1028a310
xor eax, eax
mov ebx, dword [esp + 0x58]
jmp 0x1028a297
mov dl, 1
movss xmm2, dword [esp + 8]
mov eax, dword [esp + 0xa8]
test al, al
jns 0x1028a272
mov byte [esp + 4], dl
movss xmm0, dword [esp + 0x54]
movss xmm1, dword [esp + 0x48]
addss xmm1, xmm2
movss dword [esp + 0x18], xmm1
movss dword [esp + 0x1c], xmm0
lea eax, [esp + 0x18]
xor esi, esi
push 1
push eax
push ecx
call fcn.1023cea0
add esp, 0xc
test al, al
je 0x1028a265
movzx esi, byte [ebp + 0x1b37]
xor esi, 1
and esi, 1
movzx eax, byte [esp + 4]
or eax, esi
setne dl
mov eax, dword [esp + 0xa8]
test al, 0x40
je 0x1028a283
or dl, byte [ebp + 0x3dd]
xor eax, eax
test bl, bl
movzx ecx, dl
cmove eax, ecx
cmp byte [ebp + 0x1d38], 0
cmove eax, ecx
mov ecx, dword [ebp + 0x1ad8]
cmp ecx, dword [esp + 0xa4]
jne 0x1028a2cc
cmp byte [ebp + 0x1b51], 0
je 0x1028a2d5
cmp dword [ebp + 0x1b5c], 0
jne 0x1028a2d5
mov ecx, ebx
xor cl, 1
jne 0x1028a2d5
call fcn.10253800
mov ecx, dword [ebp + 0x1ad8]
mov al, 1
cmp ecx, dword [esp + 0xa4]
jne 0x1028a2ec
cmp byte [ebp + 0x1b51], 0
je 0x1028a2ec
cmp dword [ebp + 0x1b5c], 1
setne cl
or cl, bl
je 0x1028a2f2
test al, al
jne 0x1028a2f7
jmp 0x1028a310
call fcn.10253800
xor bl, 1
mov ecx, dword [edi + 0x158]
movzx eax, bl
push eax
push dword [esp + 0xa8]
call fcn.10238a10
mov dword [esp + 0x58], ebx
mov eax, dword [esp + 0xa8]
test al, 4
je 0x1028a324
call fcn.10247ba0
push 0x3f800000
push 0
call fcn.10238210
add esp, 8
mov esi, eax
movss xmm2, dword [esp + 0x38]
movaps xmm1, xmm2
movss xmm5, dword [esp + 0x10]
addss xmm1, xmm5
movups xmm0, xmmword [esp + 0x68]
movaps xmm4, xmm0
movss xmm3, dword [esp + 8]
addss xmm4, xmm3
movss dword [esp + 0x18], xmm4
movss dword [esp + 0x1c], xmm1
mov ebx, dword [esp + 0xa8]
test bl, 2
jne 0x1028a4da
movups xmmword [esp + 0x80], xmm4
movss dword [esp + 4], xmm1
mov al, byte [esp + 3]
test al, al
jne 0x1028a39c
mov ecx, dword [esp + 0xa8]
and ecx, 1
je 0x1028a43b
xor ecx, ecx
test al, al
sete cl
xor ecx, 0x19
test al, al
mov eax, 0x1a
cmove eax, ecx
cmp byte [esp + 2], 0
cmove eax, ecx
push 0x3f800000
push eax
movups xmmword [esp + 0x70], xmm0
call fcn.10238210
add esp, 8
movups xmm2, xmmword [esp + 0x68]
movaps xmm0, xmm2
shufps xmm0, xmm2, 0x55
sub esp, 0x1c
mov dword [esp + 0x10], eax
movss xmm1, dword [esp + 0x50]
movss dword [esp + 0xc], xmm1
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 0x2c]
movss dword [esp + 4], xmm0
movss dword [esp], xmm2
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
call fcn.1023a930
add esp, 0x1c
lea eax, [esp + 0x20]
push 2
push dword [esp + 0xa8]
push eax
call fcn.1023b3a0
movss xmm3, dword [esp + 0x14]
movss xmm2, dword [esp + 0x44]
add esp, 0xc
mov eax, dword [esp + 0xa8]
test eax, 0x200
mov ebx, dword [esp + 0x58]
jne 0x1028a678
test eax, 0x100
movss xmm0, dword [esp + 4]
movups xmm1, xmmword [esp + 0x80]
jne 0x1028a6d2
movss xmm0, dword [ebp + 0x18d0]
mulss xmm0, dword [0x1035a620]
movzx eax, bl
addss xmm0, xmm2
addss xmm0, dword [esp + 0x24]
lea eax, [eax + eax + 1]
movss xmm1, dword [esp + 0x14]
addss xmm1, dword [esp + 0x20]
mov ecx, dword [edi + 0x27c]
sub esp, 0x18
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], esi
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm1
mov dword [esp], ecx
mov dword [esp + 0x14], 0x3f333333
call fcn.1023ae60
movups xmm1, xmmword [esp + 0x98]
movss xmm0, dword [esp + 0x1c]
add esp, 0x18
jmp 0x1028a6d2
mov cl, byte [esp + 3]
xor eax, eax
test cl, cl
sete al
xor eax, 0x19
test cl, cl
mov ecx, 0x1a
cmove ecx, eax
cmp byte [esp + 2], 0
cmove ecx, eax
push 0x3f800000
push ecx
movups xmmword [esp + 0x70], xmm0
call fcn.10238210
add esp, 8
movss xmm0, dword [ebp + 0x1558]
movups xmm2, xmmword [esp + 0x68]
movaps xmm1, xmm2
shufps xmm1, xmm2, 0x55
sub esp, 0x1c
movss dword [esp + 0x18], xmm0
mov dword [esp + 0x10], eax
movss xmm0, dword [esp + 0x50]
movss dword [esp + 0xc], xmm0
movss dword [esp + 8], xmm1
movss xmm0, dword [esp + 0x2c]
movss dword [esp + 4], xmm0
movss dword [esp], xmm2
mov dword [esp + 0x14], 1
call fcn.1023a930
add esp, 0x1c
lea eax, [esp + 0x20]
push 2
push dword [esp + 0xa8]
push eax
call fcn.1023b3a0
add esp, 0xc
movzx eax, byte [esp + 0x58]
movss xmm1, dword [esp + 0x38]
addss xmm1, dword [esp + 0x24]
lea eax, [eax + eax + 1]
movss xmm0, dword [esp + 0x14]
addss xmm0, dword [esp + 0x20]
mov ecx, dword [edi + 0x27c]
sub esp, 0x18
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], esi
movss dword [esp + 8], xmm1
movss dword [esp + 4], xmm0
mov dword [esp], ecx
mov dword [esp + 0x14], 0x3f800000
call fcn.1023ae60
add esp, 0x18
test ebx, 0x100000
je 0x1028a5f0
movss xmm0, dword [ebp + 0x18d0]
movss xmm1, dword [esp + 0x28]
addss xmm0, dword [ebp + 0x1550]
subss xmm1, xmm0
movss dword [esp + 0x28], xmm1
lea ebx, [esp + 0x28]
cmp byte [ebp + 0x2d40], 0
je 0x1028a735
mov dword [esp + 0x44], 0x23230a
mov byte [esp + 0xe], 0
mov word [esp + 0xc], 0x2323
lea edi, [esp + 0xe]
lea eax, [esp + 0x47]
lea ecx, [esp + 0x44]
lea ebp, [esp + 0x18]
push eax
push ecx
push ebp
call fcn.10239d50
add esp, 0xc
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
lea eax, [esp + 0x3c]
push 0
push eax
lea eax, [esp + 0x80]
push eax
push dword [esp + 0x3c]
push dword [esp + 0xbc]
push ebx
push ebp
call fcn.1023a460
add esp, 0x1c
lea eax, [esp + 0xc]
push edi
push eax
push ebp
call fcn.10239d50
add esp, 0xc
jmp 0x1028a76d
movss xmm0, dword [0x103574f4]
movss xmm1, dword [ebp + 0x18d0]
mulss xmm1, xmm0
addss xmm1, xmm2
addss xmm1, dword [esp + 0x24]
mulss xmm3, xmm0
addss xmm3, dword [esp + 0x20]
mov eax, dword [edi + 0x27c]
sub esp, 0x10
mov dword [esp + 0xc], esi
movss dword [esp + 8], xmm1
movss dword [esp + 4], xmm3
mov dword [esp], eax
call fcn.1023af90
add esp, 0x10
movss xmm0, dword [esp + 4]
movups xmm1, xmmword [esp + 0x80]
cmp byte [ebp + 0x2d40], 0
je 0x1028a6fb
lea eax, [esp + 0x18]
push 0
push 0x103ab8df
push eax
call fcn.10239d50
add esp, 0xc
movss xmm1, dword [esp + 0x18]
movss xmm0, dword [esp + 0x1c]
sub esp, 0x14
mov eax, dword [esp + 0x44]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc0]
mov dword [esp + 8], eax
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
mov dword [esp + 0x10], 0
call fcn.10239ba0
add esp, 0x14
mov ecx, dword [esp + 0xa4]
jmp 0x1028a778
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
lea eax, [esp + 0x3c]
lea ecx, [esp + 0x18]
push 0
push eax
lea eax, [esp + 0x80]
push eax
push dword [esp + 0x3c]
push dword [esp + 0xbc]
push ebx
push ecx
call fcn.1023a460
add esp, 0x1c
mov ecx, dword [esp + 0xa4]
mov ebx, dword [esp + 0x58]
mov eax, dword [esp + 0xa8]
test al, 8
sete al
and al, bl
cmp al, 1
jne 0x10289ea8
push ecx
call fcn.1028aa90
add esp, 4
jmp 0x10289ea8