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

Disassembly:
sub esp, 0x60
mov eax, dword [0x10444724]
xor eax, esp
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x70]
push ebp
mov ebp, dword [esp + 0x78]
push edi
movups xmm0, xmmword [eax]
lea eax, [esp + 0x54]
mov dword [esp + 8], ebp
mov edi, ecx
mov ecx, eax
push ebp
push eax
mov dword [esp + 0x24], edi
movups xmmword [esp + 0x5c], xmm0
call fcn.1003b460
test al, al
je 0x1010e976
mov eax, dword [esp + 0x58]
push esi
mov esi, dword [esp + 0x64]
mov dword [esp + 0x2c], eax
cmp eax, esi
jge 0x1010e975
mov edx, dword [esp + 0x60]
push ebx
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0x20], ebx
nop dword [eax]
mov ebp, dword [esp + 0x3c]
mov ecx, eax
mov eax, dword [esp + 0x3c]
sub ecx, dword [eax + 4]
mov eax, dword [esp + 0x40]
imul ecx, dword [eax + 8]
mov eax, ebx
sub eax, dword [ebp]
mov ebp, dword [esp + 0x10]
lea eax, [ecx + eax*4]
mov ecx, dword [esp + 0x40]
add eax, dword [ecx + 4]
mov dword [esp + 0x58], eax
cmp ebx, edx
jge 0x1010e963
mov eax, dword [edi + 0x38]
xor edx, edx
mov dword [esp + 0x4c], eax
xorps xmm3, xmm3
movss dword [esp + 0x2c], xmm3
xorps xmm4, xmm4
movss dword [esp + 0x28], xmm4
xorps xmm2, xmm2
mov dword [esp + 0x50], edx
test eax, eax
jle 0x1010e767
mov eax, dword [edi + 0x34]
xor esi, esi
mov dword [esp + 0x48], eax
mov dword [esp + 0x14], esi
lea ecx, [eax*4]
mov dword [esp + 0x18], ecx
lea ebx, [eax*4]
mov ecx, dword [esp + 0x4c]
test eax, eax
jle 0x1010e750
mov ebx, dword [ebp + 4]
mov eax, edx
mov edx, dword [esp + 0x24]
mov ecx, dword [ebp + 0xc]
sub ecx, ebx
mov edi, dword [ebp]
mov ebp, dword [ebp + 8]
sub eax, dword [edx + 0x4c]
sub ebp, edi
sub eax, ebx
mov dword [esp + 0x44], ebp
add eax, dword [esp + 0x30]
cdq
idiv ecx
mov eax, edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x34], eax
lea ecx, [ebx + eax]
mov eax, dword [edx + 0x3c]
add eax, esi
mov dword [esp + 0x38], ecx
mov esi, dword [esp + 0x20]
sub esi, dword [edx + 0x48]
mov dword [esp + 0x28], eax
sub esi, edi
mov eax, dword [esp + 0x48]
mov dword [esp + 0x2c], eax
nop word [eax + eax]
mov eax, esi
cdq
idiv ebp
lea eax, [edi + edx]
cmp eax, edi
jge 0x1010e679
mov ebp, dword [esp + 0x10]
mov eax, dword [ebp + 8]
mov ebp, dword [esp + 0x44]
add eax, edx
cmp ecx, ebx
jge 0x1010e68c
mov ebp, dword [esp + 0x10]
mov ecx, dword [ebp + 0xc]
add ecx, dword [esp + 0x34]
mov ebp, dword [esp + 0x44]
mov edx, dword [esp + 0x54]
inc esi
imul ecx, dword [edx + 8]
add ecx, dword [edx + 4]
mov edx, dword [esp + 0x28]
mov ecx, dword [ecx + eax*4]
mov eax, ecx
shr eax, 0x10
movss xmm1, dword [edx]
add edx, 4
movzx eax, al
mov dword [esp + 0x28], edx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x10386860]
mov eax, ecx
shr eax, 8
movzx eax, al
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
addss xmm2, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x10386860]
movzx eax, cl
mov ecx, dword [esp + 0x38]
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
addss xmm3, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
sub dword [esp + 0x2c], 1
addsd xmm0, qword [eax*8 + 0x10386860]
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
addss xmm4, xmm0
jne 0x1010e660
mov edx, dword [esp + 0x50]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x48]
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x18]
movss dword [esp + 0x28], xmm4
movss dword [esp + 0x2c], xmm3
inc edx
add esi, ebx
mov dword [esp + 0x50], edx
mov dword [esp + 0x14], esi
cmp edx, ecx
jl 0x1010e601
mov edi, dword [esp + 0x24]
movss xmm0, dword [edi + 0x40]
sub esp, 8
movss dword [esp + 0x1c], xmm0
mulss xmm0, xmm2
addss xmm0, dword [edi + 0x44]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x20], xmm0
fld qword [esp + 0x20]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
movss xmm1, dword [0x1038683c]
add esp, 8
fstp dword [esp + 0x18]
movss xmm0, dword [esp + 0x18]
comiss xmm1, xmm0
jbe 0x1010e7ba
movss xmm1, dword [0x10386844]
comiss xmm0, xmm1
ja 0x1010e7bd
movaps xmm0, xmm1
cvttss2si eax, xmm0
test eax, eax
jns 0x1010e7c9
xor ebp, ebp
jmp 0x1010e7d3
mov ebp, 0xff
cmp eax, ebp
cmovl ebp, eax
movss xmm0, dword [esp + 0x14]
sub esp, 8
mulss xmm0, dword [esp + 0x34]
addss xmm0, dword [edi + 0x44]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x20], xmm0
fld qword [esp + 0x20]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
movss xmm1, dword [0x1038683c]
add esp, 8
fstp dword [esp + 0x18]
movss xmm0, dword [esp + 0x18]
comiss xmm1, xmm0
jbe 0x1010e823
movss xmm1, dword [0x10386844]
comiss xmm0, xmm1
ja 0x1010e826
movaps xmm0, xmm1
cvttss2si eax, xmm0
test eax, eax
jns 0x1010e832
xor ebx, ebx
jmp 0x1010e83c
mov ebx, 0xff
cmp eax, ebx
cmovl ebx, eax
movss xmm0, dword [esp + 0x14]
sub esp, 8
mulss xmm0, dword [esp + 0x30]
addss xmm0, dword [edi + 0x44]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x20], xmm0
fld qword [esp + 0x20]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
movss xmm1, dword [0x1038683c]
add esp, 8
fstp dword [esp + 0x18]
movss xmm0, dword [esp + 0x18]
comiss xmm1, xmm0
jbe 0x1010e88c
movss xmm1, dword [0x10386844]
comiss xmm0, xmm1
ja 0x1010e88f
movaps xmm0, xmm1
cvttss2si eax, xmm0
test eax, eax
jns 0x1010e89b
xor edi, edi
jmp 0x1010e8a5
mov edi, 0xff
cmp eax, edi
cmovl edi, eax
mov eax, dword [esp + 0x10]
mov esi, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [esp + 0x20]
sub eax, esi
mov dword [esp + 0x38], ecx
cdq
sub ecx, esi
idiv ecx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x14], edx
mov edx, dword [eax + 4]
mov ecx, dword [eax + 0xc]
mov eax, dword [esp + 0x30]
sub ecx, edx
sub eax, edx
mov dword [esp + 0x18], edx
cdq
idiv ecx
mov eax, dword [esp + 0x18]
mov ecx, edx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x34], ecx
add ecx, dword [edx + 4]
mov edx, dword [esp + 0x14]
add edx, esi
cmp edx, esi
jge 0x1010e8fd
mov edx, dword [esp + 0x14]
add edx, dword [esp + 0x38]
cmp ecx, eax
jge 0x1010e90c
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x34]
add ecx, dword [esi + 0xc]
mov esi, dword [esp + 0x54]
push edi
push ebx
push ebp
mov eax, dword [esi + 8]
imul eax, ecx
lea ecx, [eax + edx*4]
mov eax, dword [esi + 4]
movzx eax, byte [ecx + eax + 3]
push eax
call fcn.100433f0
mov ecx, dword [esp + 0x68]
add esp, 0x10
mov ebx, dword [esp + 0x20]
mov ebp, dword [esp + 0x10]
inc ebx
mov edi, dword [esp + 0x24]
mov dword [ecx], eax
add ecx, 4
mov edx, dword [esp + 0x64]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x20], ebx
cmp ebx, edx
jl 0x1010e5b4
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0x68]
mov dword [esp + 0x20], ebx
mov eax, dword [esp + 0x30]
inc eax
mov dword [esp + 0x30], eax
cmp eax, esi
jl 0x1010e580
pop ebx
pop esi
mov ecx, dword [esp + 0x64]
pop edi
pop ebp
xor ecx, esp
call fcn.1037e005
add esp, 0x60
ret 0x14