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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x74
mov ecx, dword [0x102395dc]
xor eax, eax
sub ecx, dword [0x102395d8]
mov dword [esp + 8], eax
mov eax, 0x2e8ba2e9
imul ecx
push ebx
sar edx, 3
mov eax, edx
shr eax, 0x1f
push esi
push edi
add eax, edx
je 0x1000f1ab
xor esi, esi
mov dword [esp + 0x1c], 5
mov edi, 6
mov dword [esp + 0x18], esi
mov dword [esp + 0x20], edi
xor ecx, ecx
nop
mov eax, dword [0x102395d8]
cmp eax, dword [0x102395dc]
je 0x1000f16a
add esi, eax
lea ecx, [esp + 0x54]
push esi
call fcn.100140f0
movss xmm2, dword [esi + 0x18]
lea ecx, [esp + 0x24]
mov eax, dword [0x1023d214]
movss dword [esp + 0x6c], xmm2
movups xmm0, xmmword [esi + 0x1c]
mov dword [esp + 0x2c], 0xff
addss xmm2, dword [0x1022faa8]
movups xmmword [esp + 0x70], xmm0
mov dword [esp + 0x24], 0
movss xmm1, dword [eax + 0x10]
lea eax, [esp + 0x28]
movss xmm0, dword [0x1022fbbc]
subss xmm1, xmm2
mulss xmm1, dword [0x1022fbd4]
subss xmm0, xmm1
cvttss2si edx, xmm0
test edx, edx
mov dword [esp + 0x28], edx
cmovns ecx, eax
cmp edx, 0xff
lea eax, [esp + 0x2c]
cmovle eax, ecx
mov esi, dword [eax]
mov dword [esp + 0x2c], esi
test esi, esi
jg 0x1000eee0
mov edi, dword [0x102395d8]
mov esi, dword [esp + 0x18]
add edi, 0x2c
mov ebx, dword [0x102395dc]
add edi, esi
cmp edi, ebx
je 0x1000ee41
lea esi, [edi - 0x10]
push edi
lea ecx, [esi - 0x1c]
call fcn.10013f80
mov eax, dword [esi + 0x28]
lea esi, [esi + 0x2c]
mov dword [esi - 0x30], eax
add edi, 0x2c
movups xmm0, xmmword [esi]
movups xmmword [esi - 0x2c], xmm0
cmp edi, ebx
jne 0x1000ee17
mov ebx, dword [0x102395dc]
mov esi, dword [esp + 0x18]
mov ecx, dword [ebx - 0x18]
cmp ecx, 0xf
jbe 0x1000ee75
mov eax, dword [ebx - 0x2c]
inc ecx
cmp ecx, 0x1000
jb 0x1000ee6b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f1b2
mov eax, edx
push ecx
push eax
call fcn.10183618
add esp, 8
mov edi, dword [esp + 0x20]
sub esi, 0x2c
dec dword [esp + 0x14]
sub edi, 0xf
sub dword [esp + 0x1c], 0xf
mov dword [ebx - 0x1c], 0
mov dword [ebx - 0x18], 0xf
mov byte [ebx - 0x2c], 0
sub dword [0x102395dc], 0x2c
mov ecx, dword [esp + 0x68]
cmp ecx, 0xf
jbe 0x1000f166
mov edx, dword [esp + 0x54]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000eed1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f1b2
push ecx
push edx
call fcn.10183618
add esp, 8
jmp 0x1000f166
mov ecx, dword [0x10273388]
call fcn.100ad690
mov eax, dword [0x1023d48c]
mov edx, 1
push str.Foreground
mov eax, dword [eax + 0x1d40]
mov ecx, dword [eax]
call fcn.100a46a0
movd xmm0, esi
lea edx, [esp + 0x58]
cvtdq2ps xmm0, xmm0
add esp, 4
mov dword [esp + 0x30], 0x40c00000
cmp dword [esp + 0x68], 0xf
mov ebx, eax
cmova edx, dword [esp + 0x54]
xorps xmm1, xmm1
mulss xmm0, dword [0x1022f8b4]
comiss xmm1, xmm0
jbe 0x1000ef48
movd xmm0, edi
cvtdq2ps xmm0, xmm0
movss dword [esp + 0x34], xmm0
jmp 0x1000efc3
minss xmm0, dword [0x1022f9c8]
mulss xmm0, dword [0x1022fbbc]
addss xmm0, dword [0x1022f964]
cvttss2si esi, xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
shl esi, 0x18
movss dword [esp + 0x34], xmm0
test esi, esi
je 0x1000efc3
mov ecx, edx
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000ef80
sub ecx, edi
add ecx, edx
cmp edx, ecx
je 0x1000efc3
push dword [esp + 0x34]
mov eax, dword [ebx + 0x2c]
push dword [esp + 0x34]
movups xmm0, xmmword [ebx + 0x60]
push 0
movss xmm2, dword [eax + 0xc]
push ecx
mov dword [esp], 0
push ecx
push edx
lea ecx, [esp + 0x58]
push ecx
mov ecx, dword [eax + 8]
push esi
push ebx
movups xmmword [esp + 0x64], xmm0
call fcn.100baf50
mov eax, dword [0x1023d48c]
mov edx, 1
push str.Foreground
mov eax, dword [eax + 0x1d40]
mov ecx, dword [eax]
call fcn.100a46a0
movd xmm2, dword [esp + 0x78]
lea esi, [esp + 0x58]
movd xmm1, dword [esp + 0x7c]
add esp, 4
movd xmm0, dword [esp + 0x7c]
mov ebx, eax
movd xmm3, dword [esp + 0x2c]
movss xmm4, dword [0x1022f8b4]
cmp dword [esp + 0x68], 0xf
movss xmm6, dword [0x1022f9c8]
cmova esi, dword [esp + 0x54]
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm3, xmm3
mulss xmm2, xmm4
mulss xmm1, xmm4
mulss xmm0, xmm4
mulss xmm3, xmm4
xorps xmm4, xmm4
comiss xmm4, xmm2
jbe 0x1000f043
xorps xmm2, xmm2
jmp 0x1000f047
minss xmm2, xmm6
comiss xmm4, xmm1
movss xmm5, dword [0x1022fbbc]
movss xmm7, dword [0x1022f964]
mulss xmm2, xmm5
addss xmm2, xmm7
cvttss2si ecx, xmm2
jbe 0x1000f06d
xorps xmm1, xmm1
jmp 0x1000f071
minss xmm1, xmm6
mulss xmm1, xmm5
addss xmm1, xmm7
cvttss2si eax, xmm1
shl eax, 8
or ecx, eax
comiss xmm4, xmm0
jbe 0x1000f08c
xorps xmm0, xmm0
jmp 0x1000f090
minss xmm0, xmm6
mulss xmm0, xmm5
addss xmm0, xmm7
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm4, xmm3
jbe 0x1000f0ab
xorps xmm3, xmm3
jmp 0x1000f0af
minss xmm3, xmm6
movd xmm0, dword [esp + 0x1c]
mulss xmm3, xmm5
mov dword [esp + 0x38], 0x40a00000
cvtdq2ps xmm0, xmm0
addss xmm3, xmm7
movss dword [esp + 0x3c], xmm0
cvttss2si edx, xmm3
shl edx, 0x18
or edx, ecx
test edx, 0xff000000
je 0x1000f127
mov ecx, esi
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000f0e4
sub ecx, edi
add ecx, esi
cmp esi, ecx
je 0x1000f127
push dword [esp + 0x3c]
mov eax, dword [ebx + 0x2c]
push dword [esp + 0x3c]
movups xmm0, xmmword [ebx + 0x60]
push 0
movss xmm2, dword [eax + 0xc]
push ecx
mov dword [esp], 0
push ecx
push esi
lea ecx, [esp + 0x58]
push ecx
mov ecx, dword [eax + 8]
push edx
push ebx
movups xmmword [esp + 0x64], xmm0
call fcn.100baf50
call fcn.100ad7b0
mov ecx, dword [esp + 0x68]
cmp ecx, 0xf
jbe 0x1000f15e
mov edx, dword [esp + 0x54]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f154
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f1b2
push ecx
push edx
call fcn.10183618
add esp, 8
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
add dword [esp + 0x1c], 0xf
inc ecx
mov dword [esp + 0x14], ecx
mov eax, 0x2e8ba2e9
mov ecx, dword [0x102395dc]
add esi, 0x2c
sub ecx, dword [0x102395d8]
add edi, 0xf
imul ecx
mov ecx, dword [esp + 0x14]
sar edx, 3
mov eax, edx
mov dword [esp + 0x18], esi
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x20], edi
cmp ecx, eax
jb 0x1000ed60
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3