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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x32c
xorps xmm0, xmm0
push ebx
mov ebx, ecx
comiss xmm0, dword [ebx + 0x1c]
jae 0x100144a8
comiss xmm0, dword [ebx + 0x20]
jae 0x100144a8
push esi
push edi
call fcn.10013d22
mov esi, eax
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 8]
mov edi, dword [esi]
mov dword [ebp - 0x44], edi
test ecx, ecx
je 0x10013e72
mov eax, dword [esi + 0x34]
cmp eax, dword [ebx + 0xc]
jge 0x10013eb7
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
lea ecx, [esi + 8]
and dword [ecx], 0
jmp 0x10013e75
lea ecx, [esi + 8]
mov eax, dword [ebx + 0xc]
and dword [ebp - 0x20], 0
add eax, 0x1388
mov dword [esi + 0x34], eax
imul eax, eax, 0x14
push ecx
push 0
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x2c], 2
push ecx
mov dword [ebp - 0x30], eax
mov eax, dword [edi]
push edi
mov dword [ebp - 0x28], 1
mov dword [ebp - 0x24], 0x10000
call dword [eax + 0x11c]
test eax, eax
js 0x100144a6
mov ecx, dword [esi + 0xc]
test ecx, ecx
je 0x10013ed0
mov eax, dword [esi + 0x38]
cmp eax, dword [ebx + 8]
jge 0x10013f0f
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
and dword [esi + 0xc], 0
mov eax, dword [ebx + 8]
and dword [ebp - 0x20], 0
add eax, 0x2710
push 2
pop ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], ecx
lea ecx, [esi + 0xc]
push ecx
mov dword [esi + 0x38], eax
lea ecx, [ebp - 0x30]
add eax, eax
mov dword [ebp - 0x24], 0x10000
push 0
mov dword [ebp - 0x30], eax
mov eax, dword [edi]
push ecx
push edi
call dword [eax + 0x11c]
test eax, eax
js 0x100144a6
and dword [ebp - 0xc], 0
lea edx, [ebp - 0xc]
and dword [ebp - 0x10], 0
mov eax, dword [esi + 8]
push edx
push 0
push 4
mov ecx, dword [eax]
push eax
call dword [ecx + 0x28]
mov eax, dword [esi + 0xc]
lea edx, [ebp - 0x10]
push edx
push 0
push 4
mov ecx, dword [eax]
push eax
call dword [ecx + 0x28]
and dword [ebp - 8], 0
cmp dword [ebx + 4], 0
jle 0x10013f9d
mov edx, dword [ebp - 0xc]
xor edi, edi
mov eax, dword [ebx + 0x10]
mov esi, dword [edi + eax]
imul eax, dword [esi + 0x18], 0x14
push eax
push dword [esi + 0x20]
push edx
call sub.msvcrt.dll_memcpy
mov eax, dword [esi + 0xc]
add eax, eax
push eax
push dword [esi + 0x14]
push dword [ebp - 0x10]
call sub.msvcrt.dll_memcpy
imul eax, dword [esi + 0x18], 0x14
lea edi, [edi + 4]
mov edx, dword [ebp - 0xc]
add esp, 0x18
add edx, eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xc], edx
mov ecx, dword [esi + 0xc]
lea eax, [eax + ecx*2]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp eax, dword [ebx + 4]
jl 0x10013f48
mov edi, dword [ebp - 0x44]
mov esi, dword [ebp - 0x14]
mov eax, dword [esi + 8]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
mov eax, dword [esi + 0xc]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
mov eax, dword [esi + 0x18]
lea edx, [ebp - 4]
push edx
push 0
push 4
mov ecx, dword [eax]
push eax
call dword [ecx + 0x28]
test eax, eax
jne 0x100144a6
movss xmm6, dword [ebx + 0x14]
movss xmm2, dword [0x100b91c0]
movaps xmm3, xmm6
addss xmm3, dword [ebx + 0x1c]
movss xmm5, dword [ebx + 0x18]
movaps xmm0, xmm2
mov eax, dword [ebp - 4]
movaps xmm4, xmm5
addss xmm4, dword [ebx + 0x20]
movaps xmm1, xmm3
subss xmm1, xmm6
divss xmm0, xmm1
movss dword [eax], xmm0
movaps xmm0, xmm5
mov eax, dword [ebp - 4]
subss xmm0, xmm4
and dword [eax + 4], 0
mov eax, dword [ebp - 4]
divss xmm2, xmm0
and dword [eax + 8], 0
mov eax, dword [ebp - 4]
and dword [eax + 0xc], 0
mov eax, dword [ebp - 4]
and dword [eax + 0x10], 0
mov eax, dword [ebp - 4]
movaps xmm0, xmm3
movss dword [eax + 0x14], xmm2
addss xmm0, xmm6
mov eax, dword [ebp - 4]
subss xmm6, xmm3
and dword [eax + 0x18], 0
mov eax, dword [ebp - 4]
divss xmm0, xmm6
and dword [eax + 0x1c], 0
mov eax, dword [ebp - 4]
and dword [eax + 0x20], 0
mov eax, dword [ebp - 4]
and dword [eax + 0x24], 0
mov eax, dword [ebp - 4]
mov dword [eax + 0x28], 0x3f000000
mov eax, dword [ebp - 4]
and dword [eax + 0x2c], 0
mov eax, dword [ebp - 4]
movss dword [eax + 0x30], xmm0
movaps xmm0, xmm4
addss xmm0, xmm5
mov eax, dword [ebp - 4]
subss xmm4, xmm5
divss xmm0, xmm4
movss dword [eax + 0x34], xmm0
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], 0x3f000000
mov eax, dword [ebp - 4]
mov dword [eax + 0x3c], 0x3f800000
mov eax, dword [esi + 0x18]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
push 0x2dc
xor esi, esi
lea eax, [ebp - 0x324]
push esi
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x324]
push 0x10
pop eax
push ecx
mov dword [ebp - 0x328], eax
lea ecx, [ebp - 0x32c]
mov dword [ebp - 0x32c], eax
mov eax, dword [edi]
push ecx
push edi
call dword [eax + 0xf8]
mov eax, dword [edi]
lea ecx, [ebp - 0x224]
push ecx
lea ecx, [ebp - 0x328]
push ecx
push edi
call dword [eax + 0xf4]
mov eax, dword [edi]
lea ecx, [ebp - 0xa4]
push ecx
push edi
call dword [eax + 0xf0]
mov eax, dword [edi]
lea ecx, [ebp - 0x8c]
push ecx
lea ecx, [ebp - 0x9c]
push ecx
lea ecx, [ebp - 0xa0]
push ecx
push edi
call dword [eax + 0xe4]
mov eax, dword [edi]
lea ecx, [ebp - 0x88]
push ecx
lea ecx, [ebp - 0x84]
push ecx
push edi
call dword [eax + 0xe8]
mov eax, dword [edi]
lea ecx, [ebp - 0x80]
push ecx
push 1
push esi
push edi
call dword [eax + 0xa0]
mov eax, dword [edi]
lea ecx, [ebp - 0x7c]
push ecx
push 1
push esi
push edi
call dword [eax + 0xa8]
mov eax, dword [edi]
lea ecx, [ebp - 0x78]
push ecx
push edi
call dword [eax + 0xa4]
mov eax, dword [edi]
lea ecx, [ebp - 0x74]
push ecx
push edi
call dword [eax + 0xac]
mov eax, dword [edi]
lea ecx, [ebp - 0x60]
push ecx
push 1
push esi
push edi
call dword [eax + 0x9c]
mov eax, dword [edi]
lea ecx, [ebp - 0x70]
push ecx
push edi
call dword [eax + 0xc4]
mov eax, dword [edi]
lea ecx, [ebp - 0x6c]
push ecx
push edi
call dword [eax + 0xc8]
mov eax, dword [edi]
lea ecx, [ebp - 0x5c]
push ecx
lea ecx, [ebp - 0x50]
push ecx
lea ecx, [ebp - 0x68]
push ecx
push edi
call dword [eax + 0xbc]
mov eax, dword [edi]
lea ecx, [ebp - 0x54]
push ecx
lea ecx, [ebp - 0x58]
push ecx
lea ecx, [ebp - 0x64]
push ecx
push 1
push esi
push edi
call dword [eax + 0xb8]
mov eax, dword [edi]
lea ecx, [ebp - 0x4c]
push ecx
push edi
call dword [eax + 0xb4]
mov edx, edi
mov ecx, ebx
call fcn.10013d32
and dword [ebp - 0x1c], esi
xor edx, edx
movss xmm0, dword [ebx + 0x14]
movss xmm4, dword [ebx + 0x18]
mov dword [ebp - 8], esi
movss dword [ebp - 0x3c], xmm0
movss dword [ebp - 4], xmm4
mov dword [ebp - 0x40], edx
cmp dword [ebx + 4], edx
jle 0x1001432b
xor ecx, ecx
mov dword [ebp - 0x14], ecx
mov eax, dword [ebx + 0x10]
and dword [ebp - 0x34], 0
mov eax, dword [ecx + eax]
mov dword [ebp - 0x18], eax
cmp dword [eax], 0
jle 0x10014306
xor ecx, ecx
mov dword [ebp - 0x38], ecx
mov esi, dword [eax + 8]
add esi, ecx
mov ecx, dword [esi + 0x24]
test ecx, ecx
je 0x10014258
cmp ecx, 0xffffffff
jne 0x1001424d
mov edx, edi
mov ecx, ebx
call fcn.10013d32
jmp 0x100142d8
push esi
push eax
call ecx
pop ecx
pop ecx
jmp 0x100142d8
movss xmm3, dword [esi]
movss xmm2, dword [esi + 8]
subss xmm3, xmm0
movss xmm1, dword [esi + 4]
subss xmm2, xmm0
movss xmm0, dword [esi + 0xc]
subss xmm1, xmm4
subss xmm0, xmm4
comiss xmm3, xmm2
jae 0x100142e0
comiss xmm1, xmm0
jae 0x100142e0
cvttss2si eax, xmm3
lea ecx, [ebp - 0x2c]
push ecx
push 1
push edi
mov dword [ebp - 0x2c], eax
cvttss2si eax, xmm1
mov dword [ebp - 0x28], eax
cvttss2si eax, xmm2
mov dword [ebp - 0x24], eax
cvttss2si eax, xmm0
mov dword [ebp - 0x20], eax
mov eax, dword [edi]
call dword [eax + 0x7c]
mov eax, dword [esi + 0x10]
lea ecx, [ebp - 0x48]
push ecx
push 1
mov dword [ebp - 0x48], eax
mov eax, dword [edi]
push 0
push edi
call dword [eax + 0x10]
mov eax, dword [esi + 0x18]
add eax, dword [ebp - 8]
mov ecx, dword [edi]
push eax
mov eax, dword [esi + 0x1c]
add eax, dword [ebp - 0x1c]
push eax
push dword [esi + 0x20]
push edi
call dword [ecx + 0x20]
movss xmm4, dword [ebp - 4]
mov eax, dword [ebp - 0x18]
mov esi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
inc esi
movss xmm0, dword [ebp - 0x3c]
add ecx, 0x30
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], ecx
cmp esi, dword [eax]
jl 0x1001422e
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x40]
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 0x1c]
add ecx, 4
add edi, dword [eax + 0xc]
add esi, dword [eax + 0x18]
inc edx
mov dword [ebp - 0x1c], edi
mov edi, dword [ebp - 0x44]
mov dword [ebp - 8], esi
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x14], ecx
cmp edx, dword [ebx + 4]
jl 0x10014213
mov eax, dword [edi]
lea ecx, [ebp - 0x324]
push ecx
push dword [ebp - 0x32c]
push edi
call dword [eax + 0x7c]
mov eax, dword [edi]
lea ecx, [ebp - 0x224]
push ecx
push dword [ebp - 0x328]
push edi
call dword [eax + 0x78]
push dword [ebp - 0xa4]
mov eax, dword [edi]
push edi
call dword [eax + 0x74]
mov ecx, dword [ebp - 0xa4]
test ecx, ecx
je 0x1001436d
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
push dword [ebp - 0x8c]
mov eax, dword [edi]
lea ecx, [ebp - 0x9c]
push ecx
push dword [ebp - 0xa0]
push edi
call dword [eax + 0x64]
mov ecx, dword [ebp - 0xa0]
test ecx, ecx
je 0x10014396
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
push dword [ebp - 0x88]
mov eax, dword [edi]
push dword [ebp - 0x84]
push edi
call dword [eax + 0x68]
mov ecx, dword [ebp - 0x84]
test ecx, ecx
je 0x100143b8
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov eax, dword [edi]
lea ecx, [ebp - 0x80]
push ecx
xor esi, esi
xor ebx, ebx
inc esi
push esi
push ebx
push edi
call dword [eax + 0x10]
mov ecx, dword [ebp - 0x80]
test ecx, ecx
je 0x100143d6
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov eax, dword [edi]
lea ecx, [ebp - 0x7c]
push ecx
push esi
push ebx
push edi
call dword [eax + 0x18]
mov ecx, dword [ebp - 0x7c]
test ecx, ecx
je 0x100143ef
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
push dword [ebp - 0x78]
mov eax, dword [edi]
push edi
call dword [eax + 0x14]
mov ecx, dword [ebp - 0x78]
test ecx, ecx
je 0x10014405
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
push dword [ebp - 0x74]
mov eax, dword [edi]
push edi
call dword [eax + 0x1c]
mov ecx, dword [ebp - 0x74]
test ecx, ecx
je 0x1001441b
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
push dword [ebp - 0x70]
mov eax, dword [edi]
push edi
call dword [eax + 0x44]
mov ecx, dword [ebp - 0x70]
test ecx, ecx
je 0x10014431
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov eax, dword [edi]
lea ecx, [ebp - 0x60]
push ecx
push esi
push ebx
push edi
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x60]
test ecx, ecx
je 0x1001444a
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
push dword [ebp - 0x6c]
mov eax, dword [edi]
push edi
call dword [eax + 0x48]
push dword [ebp - 0x5c]
mov eax, dword [edi]
push dword [ebp - 0x50]
push dword [ebp - 0x68]
push edi
call dword [eax + 0x34]
mov ecx, dword [ebp - 0x68]
test ecx, ecx
je 0x1001446f
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov eax, dword [edi]
lea ecx, [ebp - 0x54]
push ecx
lea ecx, [ebp - 0x58]
push ecx
lea ecx, [ebp - 0x64]
push ecx
push esi
push ebx
push edi
call dword [eax + 0x30]
mov ecx, dword [ebp - 0x64]
test ecx, ecx
je 0x10014490
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
push dword [ebp - 0x4c]
mov eax, dword [edi]
push edi
call dword [eax + 0x2c]
mov ecx, dword [ebp - 0x4c]
test ecx, ecx
je 0x100144a6
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
pop edi
pop esi
pop ebx
leave
ret