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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x188
mov eax, dword [0x100e0458]
xor eax, esp
mov dword [esp + 0x184], eax
mov edx, dword [ebp + 0xc]
push esi
mov esi, ecx
mov dword [esp + 0x10], edx
mov ecx, dword [ebp + 0x14]
mov dword [esp + 0x24], ecx
push edi
mov al, byte [esi + 0x44]
mov edi, dword [ebp + 8]
test al, al
mov ecx, edi
mov dword [esp + 0x48], esi
cmovne ecx, edx
mov dword [esp + 0x2c], ecx
mov ecx, edx
mov eax, dword [esp + 0x2c]
cmovne ecx, edi
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov edx, dword [eax + 4]
mov dword [esp + 0x40], edx
mov eax, dword [edx + 0x54]
cmp eax, dword [esi + 0x50]
je 0x1002c582
mov ecx, esi
call fcn.1002d1e0
push dword [esp + 0x14]
mov ecx, esi
push edi
call fcn.1002c370
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x28]
mov eax, dword [edx + 0x54]
mov dword [esi + 0x50], eax
cmp dword [esi + 0x34], 0
je 0x1002d1bc
mov eax, dword [edx + 0x50]
lea edx, [esi + 0x1c]
mov edi, dword [esi + 0x20]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x64], eax
mov eax, dword [esi + 4]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x6c], eax
mov eax, dword [esi + 0x3c]
mov dword [esp + 0x74], eax
mov eax, dword [esi + 0x48]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x78], eax
test edi, edi
jg 0x1002c6a2
jns 0x1002c610
cmp dword [esi + 0x24], 0
jge 0x1002c610
mov eax, dword [esi + 0x28]
test eax, eax
je 0x1002c5f6
cmp byte [esi + 0x2c], 0
je 0x1002c5ef
push eax
call fcn.1005c890
add esp, 4
mov dword [esi + 0x28], 0
mov edx, edi
mov byte [esi + 0x2c], 1
mov dword [esi + 0x28], 0
mov ecx, edi
mov dword [esi + 0x24], 0
neg edx
jmp 0x1002c61e
mov edx, edi
mov ecx, edi
neg edx
test edi, edi
jns 0x1002c69f
cmp edx, 4
jb 0x1002c684
mov eax, dword [esi + 0x28]
lea ecx, [eax + edi*4]
add eax, 0xfffffffc
mov dword [esp + 0x14], eax
lea eax, [esi + 0x28]
mov dword [esp + 0x1c], ecx
cmp ecx, eax
mov ecx, edi
ja 0x1002c643
cmp dword [esp + 0x14], eax
jae 0x1002c684
and edx, 0x80000003
jns 0x1002c650
dec edx
or edx, 0xfffffffc
inc edx
neg edx
add ecx, 4
cmp ecx, edx
jl 0x1002c652
sub edx, edi
mov dword [esp + 0x14], ecx
mov edi, dword [esp + 0x1c]
lea eax, [edx + 3]
cdq
and edx, 3
lea ecx, [edx + eax]
xor eax, eax
sar ecx, 2
shl ecx, 4
shr ecx, 2
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x14]
mov ecx, eax
test eax, eax
jns 0x1002c69f
shl ecx, 2
nop word [eax + eax]
mov eax, dword [esi + 0x28]
mov dword [ecx + eax], 0
add ecx, 4
js 0x1002c690
lea edx, [esi + 0x1c]
mov dword [esi + 0x20], 0
xor ecx, ecx
mov eax, dword [esi + 0x34]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x1c], eax
test eax, eax
jle 0x1002c864
nop
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax + ecx*4]
test ecx, ecx
je 0x1002c849
mov eax, dword [ecx]
push edx
call dword [eax + 0xc]
mov edi, dword [esi + 0x20]
lea eax, [esi + 0x28]
xor edx, edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], edx
test edi, edi
jle 0x1002c76d
nop dword [eax]
mov eax, dword [eax]
mov ecx, dword [eax + edx*4]
cmp dword [ecx + 0x358], 0
je 0x1002c753
mov edi, dword [esp + 0x28]
mov dword [edi + 4], ecx
cmp dword [ecx + 0x358], 0
je 0x1002c74c
mov eax, dword [edi + 8]
mov edx, dword [eax + 8]
lea eax, [edx + 0x10]
mov dword [esp + 0x24], eax
mov eax, dword [edi + 0xc]
mov eax, dword [eax + 8]
mov dword [esp + 0x4c], eax
cmp dword [ecx + 0x350], edx
je 0x1002c73a
lea eax, [edx + 0x10]
push eax
mov eax, dword [esp + 0x50]
add eax, 0x10
jmp 0x1002c742
add eax, 0x10
push eax
mov eax, dword [esp + 0x28]
push eax
call fcn.100348d0
mov edx, dword [esp + 0x18]
mov dword [edi + 4], 0
mov edi, dword [esi + 0x20]
lea eax, [esi + 0x28]
inc edx
mov dword [esp + 0x18], edx
cmp edx, edi
jl 0x1002c6f0
lea eax, [esi + 0x28]
test edi, edi
jg 0x1002c842
jns 0x1002c7b0
cmp dword [esi + 0x24], 0
jge 0x1002c7b0
mov ecx, dword [eax]
test ecx, ecx
je 0x1002c793
cmp byte [esi + 0x2c], 0
je 0x1002c78d
push ecx
call fcn.1005c890
add esp, 4
lea eax, [esi + 0x28]
mov dword [eax], 0
mov edx, edi
mov byte [esi + 0x2c], 1
mov ecx, edi
mov dword [eax], 0
mov dword [esi + 0x24], 0
neg ecx
mov dword [esp + 0x18], edx
jmp 0x1002c7c2
mov ecx, edi
mov dword [esp + 0x18], edi
neg ecx
mov edx, edi
test edi, edi
jns 0x1002c842
cmp ecx, 4
jb 0x1002c827
mov eax, dword [eax]
lea edx, [eax + edi*4]
add eax, 0xfffffffc
mov dword [esp + 0x24], eax
lea eax, [esi + 0x28]
mov dword [esp + 0x4c], edx
cmp edx, eax
mov edx, dword [esp + 0x18]
ja 0x1002c7e8
cmp dword [esp + 0x24], eax
jae 0x1002c827
and ecx, 0x80000003
jns 0x1002c7f5
dec ecx
or ecx, 0xfffffffc
inc ecx
neg ecx
add edx, 4
cmp edx, ecx
jl 0x1002c7f7
sub ecx, edi
mov dword [esp + 0x18], edx
mov edi, dword [esp + 0x4c]
lea eax, [ecx + 3]
cdq
and edx, 3
lea ecx, [edx + eax]
mov edx, dword [esp + 0x18]
sar ecx, 2
xor eax, eax
shl ecx, 4
shr ecx, 2
rep stosd dword es:[edi], eax
test edx, edx
jns 0x1002c842
mov esi, dword [esp + 0x1c]
shl edx, 2
nop
mov eax, dword [esi]
mov dword [edx + eax], 0
add edx, 4
js 0x1002c830
mov esi, dword [esp + 0x48]
mov dword [esi + 0x20], 0
mov ecx, dword [esp + 0x14]
lea edx, [esi + 0x1c]
mov eax, dword [esi + 0x34]
inc ecx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x1c], eax
cmp ecx, eax
jl 0x1002c6c0
mov edi, dword [esp + 0x20]
test edi, edi
je 0x1002cc3f
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x44]
mov eax, dword [eax + 0xc]
mov ecx, dword [edx + 0xc]
movss xmm0, dword [eax + 8]
movss xmm7, dword [eax + 0x30]
movss xmm1, dword [eax + 0x34]
movss xmm6, dword [eax + 0x38]
movss xmm2, dword [eax + 0x10]
movss xmm3, dword [ecx + 0x34]
movss xmm4, dword [ecx + 0x38]
movss dword [esp + 0x20], xmm0
movss xmm0, dword [0x10095380]
xorps xmm1, xmm0
movss xmm5, dword [ecx + 0x30]
xorps xmm6, xmm0
mulss xmm2, xmm1
xorps xmm7, xmm0
movss dword [esp + 0x14], xmm1
movss xmm0, dword [eax]
movaps xmm1, xmm4
mulss xmm0, xmm7
addss xmm1, xmm6
addss xmm2, xmm0
movss xmm0, dword [eax + 0x10]
mulss xmm1, dword [eax + 0x20]
mulss xmm0, xmm3
addss xmm2, xmm0
movaps xmm0, xmm5
mulss xmm0, dword [eax]
addss xmm1, xmm0
movaps xmm0, xmm7
addss xmm2, xmm1
movaps xmm1, xmm4
addss xmm1, xmm6
addss xmm4, xmm6
movss dword [esp + 0x30], xmm2
mulss xmm0, dword [eax + 4]
movss xmm2, dword [esp + 0x14]
mulss xmm2, dword [eax + 0x14]
mulss xmm1, dword [eax + 0x24]
addss xmm2, xmm0
movss xmm0, dword [eax + 0x14]
mulss xmm0, xmm3
addss xmm2, xmm0
movss xmm0, dword [eax + 4]
mulss xmm0, xmm5
addss xmm1, xmm0
movss xmm0, dword [esp + 0x14]
addss xmm2, xmm1
movss dword [esp + 0x34], xmm2
mulss xmm0, dword [eax + 0x18]
mulss xmm7, dword [eax + 8]
mulss xmm3, dword [eax + 0x18]
mulss xmm4, dword [eax + 0x28]
addss xmm0, xmm7
mulss xmm5, dword [eax + 8]
mov dword [esp + 0x3c], 0
addss xmm0, xmm3
addss xmm4, xmm5
addss xmm0, xmm4
movss dword [esp + 0x38], xmm0
movss xmm1, dword [eax + 0x10]
movss xmm0, dword [eax]
movss xmm2, dword [ecx + 0x10]
movss xmm3, dword [ecx]
movss xmm4, dword [ecx + 0x20]
movss xmm6, dword [ecx + 0x14]
movss xmm7, dword [ecx + 4]
movss xmm5, dword [ecx + 0x24]
mulss xmm0, xmm3
mulss xmm1, xmm2
addss xmm1, xmm0
movss xmm0, dword [eax + 0x20]
mulss xmm0, xmm4
addss xmm1, xmm0
movaps xmm0, xmm7
mulss xmm0, dword [eax]
movss dword [esp + 0x110], xmm1
movaps xmm1, xmm6
mulss xmm1, dword [eax + 0x10]
addss xmm1, xmm0
mov dword [esp + 0x11c], 0
movss xmm0, dword [eax + 0x20]
mulss xmm0, xmm5
mov dword [esp + 0x12c], 0
mov dword [esp + 0x13c], 0
addss xmm1, xmm0
movss xmm0, dword [ecx + 8]
mulss xmm0, dword [eax]
movss dword [esp + 0x114], xmm1
movss xmm1, dword [ecx + 0x18]
mulss xmm1, dword [eax + 0x10]
addss xmm1, xmm0
movss xmm0, dword [ecx + 0x28]
mulss xmm0, dword [eax + 0x20]
addss xmm1, xmm0
movss xmm0, dword [eax + 0x14]
mulss xmm0, xmm2
movss dword [esp + 0x118], xmm1
movss xmm1, dword [eax + 4]
mulss xmm1, xmm3
addss xmm1, xmm0
movaps xmm0, xmm4
mulss xmm0, dword [eax + 0x24]
addss xmm1, xmm0
movaps xmm0, xmm6
mulss xmm0, dword [eax + 0x14]
mulss xmm6, dword [eax + 0x18]
movss dword [esp + 0x120], xmm1
movaps xmm1, xmm7
mulss xmm1, dword [eax + 4]
mulss xmm7, dword [eax + 8]
addss xmm1, xmm0
movss xmm0, dword [eax + 0x24]
mulss xmm0, xmm5
addss xmm7, xmm6
addss xmm1, xmm0
movss xmm0, dword [ecx + 0x18]
mulss xmm0, dword [eax + 0x14]
movss dword [esp + 0x124], xmm1
movss xmm1, dword [eax + 4]
mulss xmm1, dword [ecx + 8]
addss xmm1, xmm0
movss xmm0, dword [ecx + 0x28]
mulss xmm0, dword [eax + 0x24]
addss xmm1, xmm0
movss xmm0, dword [eax + 8]
mulss xmm0, xmm3
movss xmm3, dword [eax + 0x28]
movss dword [esp + 0x128], xmm1
movss xmm1, dword [eax + 0x18]
mulss xmm1, xmm2
addss xmm1, xmm0
movaps xmm0, xmm3
mulss xmm0, xmm4
addss xmm1, xmm0
movaps xmm0, xmm3
mulss xmm3, dword [ecx + 0x28]
mulss xmm0, xmm5
movss dword [esp + 0x130], xmm1
movss xmm1, dword [ecx + 0x18]
mulss xmm1, dword [eax + 0x18]
addss xmm7, xmm0
movss xmm0, dword [ecx + 8]
mulss xmm0, dword [esp + 0x20]
mov ecx, dword [edx + 4]
lea edx, [esp + 0x30]
movss dword [esp + 0x134], xmm7
push edx
addss xmm1, xmm0
movaps xmm0, xmmword [esp + 0x114]
movaps xmmword [esp + 0x144], xmm0
movaps xmm0, xmmword [esp + 0x124]
movaps xmmword [esp + 0x154], xmm0
addss xmm1, xmm3
movss dword [esp + 0x13c], xmm1
movaps xmm0, xmmword [esp + 0x134]
movaps xmmword [esp + 0x164], xmm0
movaps xmm0, xmmword [esp + 0x34]
movaps xmmword [esp + 0x174], xmm0
mov eax, dword [ecx]
lea edx, [esp + 0x54]
push edx
lea edx, [esp + 0x148]
push edx
call dword [eax + 4]
mov eax, dword [esp + 0x28]
mov ecx, edi
movss xmm0, dword [esp + 0x50]
movss xmm1, dword [eax + 0x20]
lea eax, [esp + 0x60]
subss xmm0, xmm1
push eax
lea eax, [esi + 8]
push eax
lea eax, [esp + 0xc8]
movss dword [esp + 0x58], xmm0
movss xmm0, dword [esp + 0x5c]
subss xmm0, xmm1
push eax
push dword [edi]
movss dword [esp + 0x64], xmm0
movss xmm0, dword [esp + 0x68]
subss xmm0, xmm1
movss dword [esp + 0x68], xmm0
movss xmm0, dword [esp + 0x40]
addss xmm0, xmm1
movss dword [esp + 0x40], xmm0
movss xmm0, dword [esp + 0x44]
addss xmm0, xmm1
movss dword [esp + 0x44], xmm0
movss xmm0, dword [esp + 0x48]
addss xmm0, xmm1
movss dword [esp + 0x48], xmm0
movaps xmm0, xmmword [esp + 0x60]
movaps xmmword [esp + 0xd0], xmm0
movaps xmm0, xmmword [esp + 0x40]
movaps xmmword [esp + 0xe0], xmm0
call fcn.1002af40
jmp 0x1002cc79
xor edi, edi
test eax, eax
jle 0x1002cc79
mov esi, dword [esp + 0x1c]
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop
mov eax, dword [esp + 0x40]
push edi
mov eax, dword [eax + 0x20]
push dword [ecx + eax + 0x40]
lea ecx, [esp + 0x68]
call fcn.1002b5b0
mov ecx, dword [esp + 0x14]
inc edi
add ecx, 0x50
mov dword [esp + 0x14], ecx
cmp edi, esi
jl 0x1002cc50
mov esi, dword [esp + 0x48]
mov edi, dword [esi + 0x34]
mov dword [esp + 0x14], edi
mov edi, dword [esi + 0x20]
test edi, edi
jg 0x1002cd5f
jns 0x1002ccca
cmp dword [esi + 0x24], 0
jge 0x1002ccca
mov eax, dword [esi + 0x28]
test eax, eax
je 0x1002ccb0
cmp byte [esi + 0x2c], 0
je 0x1002cca9
push eax
call fcn.1005c890
add esp, 4
mov dword [esi + 0x28], 0
mov edx, edi
mov byte [esi + 0x2c], 1
mov dword [esi + 0x28], 0
mov ecx, edi
mov dword [esi + 0x24], 0
neg edx
jmp 0x1002ccd8
mov edx, edi
mov ecx, edi
neg edx
test edi, edi
jns 0x1002cd5f
cmp edx, 4
jb 0x1002cd42
mov eax, dword [esi + 0x28]
lea ecx, [eax + edi*4]
add eax, 0xfffffffc
mov dword [esp + 0x20], eax
lea eax, [esi + 0x28]
mov dword [esp + 0x24], ecx
cmp ecx, eax
mov ecx, edi
ja 0x1002ccfd
cmp dword [esp + 0x20], eax
jae 0x1002cd42
and edx, 0x80000003
jns 0x1002cd0a
dec edx
or edx, 0xfffffffc
inc edx
neg edx
nop dword [eax]
add ecx, 4
cmp ecx, edx
jl 0x1002cd10
sub edx, edi
mov dword [esp + 0x20], ecx
mov edi, dword [esp + 0x24]
lea eax, [edx + 3]
cdq
and edx, 3
lea ecx, [edx + eax]
xor eax, eax
sar ecx, 2
shl ecx, 4
shr ecx, 2
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x20]
mov ecx, eax
test eax, eax
jns 0x1002cd5f
shl ecx, 2
nop word [eax + eax]
mov eax, dword [esi + 0x28]
mov dword [ecx + eax], 0
add ecx, 4
js 0x1002cd50
xor edi, edi
mov dword [esi + 0x20], 0
cmp dword [esp + 0x14], edi
jle 0x1002d1bc
xor edx, edx
mov dword [esp + 0x18], edx
nop dword [eax + eax]
mov eax, dword [esi + 0x3c]
cmp dword [eax + edi*4], 0
je 0x1002d1aa
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0x18]
mov dword [esp + 0x3c], 0
mov ecx, dword [eax + 0x20]
mov eax, dword [esp + 0x2c]
movss xmm3, dword [ecx + esi + 0x34]
mov eax, dword [eax + 0xc]
movss xmm2, dword [ecx + esi + 0x30]
mov edx, dword [ecx + edx + 0x40]
movups xmm7, xmmword [eax]
movups xmm4, xmmword [eax + 0x20]
movups xmm5, xmmword [eax + 0x30]
movups xmm6, xmmword [eax + 0x10]
movaps xmm0, xmm7
movaps xmmword [esp + 0x100], xmm4
shufps xmm0, xmm7, 0x55
movaps xmm1, xmm7
movss xmm4, dword [ecx + esi + 0x38]
movups xmmword [esp + 0xf0], xmm0
mulss xmm0, xmm3
mulss xmm1, xmm2
addss xmm1, xmm0
movaps xmm0, xmm7
shufps xmm0, xmm7, 0xaa
movaps xmm7, xmm6
movups xmmword [esp + 0xb0], xmm0
mulss xmm0, xmm4
shufps xmm7, xmm6, 0xaa
addss xmm1, xmm0
movaps xmm0, xmm6
shufps xmm0, xmm6, 0x55
movups xmmword [esp + 0xe0], xmm0
mulss xmm0, xmm3
addss xmm1, xmm5
movss dword [esp + 0x30], xmm1
movaps xmm1, xmm6
movups xmm6, xmmword [eax + 0x20]
mulss xmm1, xmm2
addss xmm1, xmm0
movaps xmm0, xmm7
mulss xmm0, xmm4
addss xmm1, xmm0
movaps xmm0, xmm5
shufps xmm0, xmm5, 0x55
shufps xmm5, xmm5, 0xaa
addss xmm1, xmm0
movaps xmm0, xmm6
shufps xmm0, xmm6, 0x55
movups xmmword [esp + 0xc0], xmm0
mulss xmm0, xmm3
movss dword [esp + 0x34], xmm1
movaps xmm1, xmm6
mulss xmm1, xmm2
movss xmm3, dword [ecx + esi + 8]
movss xmm2, dword [ecx + esi + 4]
addss xmm1, xmm0
movaps xmm0, xmm6
shufps xmm0, xmm6, 0xaa
movaps xmm6, xmm3
movups xmmword [esp + 0x60], xmm0
mulss xmm0, xmm4
movups xmm4, xmmword [eax + 0x10]
addss xmm1, xmm0
movss xmm0, dword [ecx + esi + 0x18]
mulss xmm6, xmm4
addss xmm1, xmm5
movaps xmm5, xmm2
mulss xmm5, xmm4
movss dword [esp + 0x38], xmm1
movups xmm1, xmmword [esp + 0xe0]
mulss xmm0, xmm1
addss xmm6, xmm0
movss xmm0, dword [ecx + esi + 0x28]
mulss xmm0, xmm7
addss xmm6, xmm0
movss xmm0, dword [ecx + esi + 0x14]
mulss xmm0, xmm1
addss xmm5, xmm0
movss xmm0, dword [ecx + esi + 0x24]
mulss xmm0, xmm7
addss xmm5, xmm0
movss xmm4, dword [ecx + esi]
mulss xmm4, dword [eax + 0x10]
mov dword [esp + 0x11c], 0
movss xmm0, dword [ecx + esi + 0x10]
mulss xmm0, xmm1
mov dword [esp + 0x12c], 0
movups xmm1, xmmword [esp + 0xb0]
mov dword [esp + 0x13c], 0
addss xmm4, xmm0
mulss xmm2, dword [eax]
movss xmm0, dword [ecx + esi + 0x20]
mulss xmm0, xmm7
movups xmm7, xmmword [eax]
addss xmm4, xmm0
movss dword [esp + 0x124], xmm5
movss xmm0, dword [ecx + esi + 0x18]
mulss xmm3, xmm7
movups xmm7, xmmword [esp + 0xf0]
movss dword [esp + 0x120], xmm4
mulss xmm0, xmm7
movaps xmm4, xmmword [esp + 0x100]
movss dword [esp + 0x128], xmm6
addss xmm3, xmm0
movss xmm0, dword [ecx + esi + 0x28]
mulss xmm0, xmm1
addss xmm3, xmm0
movss xmm0, dword [ecx + esi + 0x14]
mulss xmm0, xmm7
addss xmm2, xmm0
movss dword [esp + 0x118], xmm3
movss xmm0, dword [ecx + esi + 0x24]
mulss xmm0, xmm1
movss xmm1, dword [ecx + esi + 0x10]
mulss xmm1, xmm7
movups xmm7, xmmword [eax]
mov eax, esi
addss xmm2, xmm0
movss xmm0, dword [ecx + esi]
mulss xmm0, xmm7
movss xmm7, dword [ecx + eax + 0x20]
movups xmm3, xmmword [esp + 0xc0]
addss xmm1, xmm0
movss dword [esp + 0x114], xmm2
movups xmm2, xmmword [esp + 0x60]
movaps xmm0, xmm7
mulss xmm0, dword [esp + 0xb0]
mulss xmm7, xmm2
addss xmm1, xmm0
movss xmm0, dword [ecx + eax + 0x10]
mulss xmm0, xmm3
movss dword [esp + 0x110], xmm1
movss xmm1, dword [ecx + eax]
mulss xmm1, xmm4
addss xmm1, xmm0
movss xmm0, dword [ecx + eax + 0x14]
mulss xmm0, xmm3
addss xmm1, xmm7
movss dword [esp + 0x130], xmm1
movss xmm1, dword [ecx + eax + 4]
mulss xmm1, xmm4
addss xmm1, xmm0
movss xmm0, dword [ecx + eax + 0x24]
mulss xmm0, xmm2
addss xmm1, xmm0
movss xmm0, dword [ecx + eax + 0x18]
mulss xmm0, xmm3
movss dword [esp + 0x134], xmm1
movss xmm1, dword [ecx + eax + 8]
mulss xmm1, xmm4
addss xmm1, xmm0
movss xmm0, dword [ecx + eax + 0x28]
mulss xmm0, xmm2
addss xmm1, xmm0
movaps xmm0, xmmword [esp + 0x110]
movaps xmmword [esp + 0x140], xmm0
movaps xmm0, xmmword [esp + 0x120]
movaps xmmword [esp + 0x150], xmm0
movss dword [esp + 0x138], xmm1
movaps xmm0, xmmword [esp + 0x130]
movaps xmmword [esp + 0x160], xmm0
movaps xmm0, xmmword [esp + 0x30]
lea ecx, [esp + 0xa0]
movaps xmmword [esp + 0x170], xmm0
mov eax, dword [edx]
push ecx
lea ecx, [esp + 0x54]
push ecx
lea ecx, [esp + 0x148]
push ecx
mov ecx, edx
call dword [eax + 4]
mov edx, dword [esp + 0x44]
lea esi, [esp + 0x80]
push esi
lea esi, [esp + 0x94]
push esi
mov ecx, dword [edx + 4]
push dword [edx + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
movss xmm0, dword [esp + 0x50]
mov al, 1
comiss xmm0, dword [esp + 0x80]
mov esi, dword [esp + 0x48]
ja 0x1002d134
movss xmm0, dword [esp + 0x90]
comiss xmm0, dword [esp + 0xa0]
jbe 0x1002d136
xor al, al
movss xmm0, dword [esp + 0x58]
comiss xmm0, dword [esp + 0x88]
ja 0x1002d159
movss xmm0, dword [esp + 0x98]
comiss xmm0, dword [esp + 0xa8]
jbe 0x1002d15b
xor al, al
movss xmm0, dword [esp + 0x54]
comiss xmm0, dword [esp + 0x84]
ja 0x1002d182
movss xmm0, dword [esp + 0x94]
comiss xmm0, dword [esp + 0xa4]
ja 0x1002d182
test al, al
jne 0x1002d1a6
mov eax, dword [esi + 0x3c]
push 0
mov ecx, dword [eax + edi*4]
mov eax, dword [ecx]
call dword [eax]
mov ecx, dword [esi + 4]
mov eax, dword [esi + 0x3c]
mov edx, dword [ecx]
push dword [eax + edi*4]
call dword [edx + 0x38]
mov eax, dword [esi + 0x3c]
mov dword [eax + edi*4], 0
mov edx, dword [esp + 0x18]
inc edi
add edx, 0x50
mov dword [esp + 0x18], edx
cmp edi, dword [esp + 0x14]
jl 0x1002cd80
mov ecx, dword [esp + 0x18c]
pop edi
pop esi
xor ecx, esp
call fcn.100651a4
mov esp, ebp
pop ebp
ret 0x10