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

Disassembly:
sub esp, 0x44
movss xmm1, dword [0x10164bb4]
push ebx
push ebp
mov ebp, dword [esp + 0x54]
mov ebx, dword [esp + 0x50]
mov eax, ebx
push esi
push edi
movd xmm0, ebp
mov esi, ebx
cvtdq2ps xmm0, xmm0
mov edi, dword [esp + 0x60]
imul eax, edi
divss xmm1, xmm0
mov dword [esp + 0x14], eax
imul esi, ebp
cvtps2pd xmm0, xmm1
mov dword [esp + 0x18], esi
movsd qword [esp + 0x48], xmm0
call fcn.100d34e0
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x50], xmm0
movsd xmm0, qword [esp + 0x48]
call fcn.100d36a0
lea eax, [ebx - 1]
xorps xmm7, xmm7
sar eax, 1
lea ecx, [ebp + 1]
sar ecx, 1
cvtsd2ss xmm7, xmm0
mov dword [esp + 0x2c], eax
mov dword [esp + 0x10], ecx
xor eax, eax
cmp ebx, edi
jge 0x100c1aeb
mov dword [esp + 0x20], eax
test ebx, ebx
jle 0x100c1bde
nop word [eax + eax]
xor ebp, ebp
mov ecx, eax
mov dword [esp + 0x1c], ebp
mov edx, eax
cmp edi, 4
jl 0x100c1a93
lea esi, [edi - 4]
mov edi, dword [esp + 0x68]
shr esi, 2
inc esi
mov dword [esp + 0x28], esi
lea ebp, [esi*4]
mov dword [esp + 0x1c], ebp
mov ebp, dword [esp + 0x18]
nop dword [eax]
mov eax, dword [edi + edx*4]
add edx, ebp
mov esi, dword [esp + 0x74]
mov dword [esi + ecx*4], eax
add ecx, ebx
mov eax, dword [edi + edx*4]
add edx, ebp
mov dword [esi + ecx*4], eax
add ecx, ebx
mov eax, dword [edi + edx*4]
add edx, ebp
mov dword [esi + ecx*4], eax
add ecx, ebx
mov eax, dword [edi + edx*4]
add edx, ebp
mov dword [esi + ecx*4], eax
add ecx, ebx
sub dword [esp + 0x28], 1
jne 0x100c1a50
mov eax, dword [esp + 0x20]
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x60]
cmp ebp, edi
jge 0x100c1ad5
mov eax, dword [esp + 0x74]
lea ebp, [esi*4]
mov esi, dword [esp + 0x60]
lea edi, [ebx*4]
sub esi, dword [esp + 0x1c]
lea ecx, [eax + ecx*4]
mov eax, dword [esp + 0x68]
lea edx, [eax + edx*4]
nop dword [eax + eax]
mov eax, dword [edx]
add edx, ebp
mov dword [ecx], eax
add ecx, edi
sub esi, 1
jne 0x100c1ac0
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x60]
mov esi, dword [esp + 0x18]
inc eax
mov dword [esp + 0x20], eax
cmp eax, ebx
jl 0x100c1a20
jmp 0x100c1bd6
xor ebp, ebp
mov dword [esp + 0x1c], eax
test edi, edi
jle 0x100c1bda
mov esi, dword [esp + 0x68]
mov ecx, dword [esp + 0x74]
add esi, 8
add ecx, 8
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], ecx
mov dword [esp + 0x28], edi
xor edi, edi
mov edx, ebp
mov ecx, eax
cmp ebx, 4
jl 0x100c1b76
mov ecx, dword [esp + 0x20]
mov edx, esi
lea esi, [ebx - 4]
shr esi, 2
inc esi
lea edi, [esi*4]
lea ebx, [edi + ebp]
add eax, edi
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x58]
mov dword [esp + 0x30], eax
mov eax, dword [edx - 8]
lea edx, [edx + 0x10]
mov dword [ecx - 8], eax
lea ecx, [ecx + 0x10]
mov eax, dword [edx - 0x14]
mov dword [ecx - 0x14], eax
mov eax, dword [edx - 0x10]
mov dword [ecx - 0x10], eax
mov eax, dword [edx - 0xc]
mov dword [ecx - 0xc], eax
sub esi, 1
jne 0x100c1b43
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x24]
cmp edi, ebx
jge 0x100c1ba7
mov eax, dword [esp + 0x68]
mov esi, ebx
sub esi, edi
lea ecx, [eax + ecx*4]
mov eax, dword [esp + 0x74]
lea edx, [eax + edx*4]
nop dword [eax]
mov eax, dword [ecx]
lea ecx, [ecx + 4]
mov dword [edx], eax
lea edx, [edx + 4]
sub esi, 1
jne 0x100c1b90
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x24]
mov edx, dword [esp + 0x18]
lea ecx, [ebx*4]
add dword [esp + 0x20], ecx
add eax, edx
add ebp, ebx
mov dword [esp + 0x1c], eax
lea ecx, [edx*4]
add esi, ecx
sub dword [esp + 0x28], 1
mov dword [esp + 0x24], esi
jne 0x100c1b13
mov ecx, dword [esp + 0x10]
mov ebp, dword [esp + 0x5c]
mov eax, dword [esp + 0x14]
mov edx, eax
imul edx, ebp
mov dword [esp + 0x1c], edx
cmp ecx, 1
jle 0x100c1cbe
lea ebp, [eax*4]
mov eax, dword [esp + 0x74]
mov ecx, eax
mov dword [esp + 0x20], ebp
lea esi, [ebx*8]
lea edi, [ebx*8]
lea edx, [eax + edx*4]
mov eax, dword [esp + 0x68]
add eax, esi
mov esi, dword [esp + 0x10]
dec esi
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], esi
nop dword [eax]
mov eax, dword [esp + 0x24]
add ecx, ebp
sub edx, ebp
mov dword [esp + 0x30], ecx
cmp dword [esp + 0x60], 0
mov dword [esp + 0x34], edx
jle 0x100c1c9f
mov ebp, dword [esp + 0x18]
lea esi, [ebx*4]
mov edi, dword [esp + 0x60]
shl ebp, 2
nop dword [eax]
movss xmm0, dword [eax - 4]
addss xmm0, xmm0
movss dword [ecx], xmm0
add ecx, esi
movss xmm0, dword [eax]
add eax, ebp
addss xmm0, xmm0
movss dword [edx], xmm0
add edx, esi
sub edi, 1
jne 0x100c1c60
mov edx, dword [esp + 0x34]
lea edi, [ebx*8]
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
mov ebp, dword [esp + 0x20]
mov esi, dword [esp + 0x28]
add eax, edi
sub esi, 1
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], esi
jne 0x100c1c30
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
mov ebp, dword [esp + 0x5c]
mov eax, dword [esp + 0x14]
cmp ebx, 1
je 0x100c1f85
mov esi, dword [esp + 0x2c]
cmp esi, dword [esp + 0x60]
jge 0x100c1e27
cmp ecx, 1
jle 0x100c1f85
mov esi, dword [esp + 0x1c]
lea ecx, [eax*4]
mov eax, dword [esp + 0x74]
lea edi, [ebx*8]
mov edx, eax
mov dword [esp + 0x48], ecx
lea ebp, [eax + esi*4]
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x68]
dec esi
mov dword [esp + 0x30], esi
nop word [eax + eax]
add edx, ecx
sub ebp, ecx
add eax, edi
mov dword [esp + 0x40], edx
mov dword [esp + 0x44], ebp
mov dword [esp + 0x68], eax
cmp ebx, 2
jle 0x100c1e15
mov edi, dword [esp + 0x60]
mov ecx, eax
mov esi, ebp
mov ebp, eax
lea eax, [ebx - 3]
shr eax, 1
inc eax
mov dword [esp + 0x20], eax
nop
add ebp, 8
add edx, 8
add esi, 8
mov dword [esp + 0x24], ebp
sub ecx, 8
mov dword [esp + 0x3c], edx
mov dword [esp + 0x38], esi
mov dword [esp + 0x34], ecx
test edi, edi
jle 0x100c1ded
mov eax, dword [esp + 0x18]
lea ebp, [ebx*4]
mov ebx, dword [esp + 0x60]
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x58]
lea edi, [eax*4]
mov eax, dword [esp + 0x24]
nop word [eax + eax]
movss xmm0, dword [eax - 4]
addss xmm0, dword [ecx - 4]
movss dword [edx - 4], xmm0
movss xmm0, dword [eax - 4]
subss xmm0, dword [ecx - 4]
movss dword [esi - 4], xmm0
movss xmm0, dword [eax]
subss xmm0, dword [ecx]
movss dword [edx], xmm0
add edx, ebp
movss xmm0, dword [ecx]
add ecx, edi
addss xmm0, dword [eax]
add eax, edi
movss dword [esi], xmm0
add esi, ebp
sub dword [esp + 0x28], 1
jne 0x100c1d90
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x24]
mov edi, dword [esp + 0x60]
sub eax, 1
mov dword [esp + 0x20], eax
jne 0x100c1d40
mov eax, dword [esp + 0x68]
lea edi, [ebx*8]
mov edx, dword [esp + 0x40]
mov ebp, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
mov esi, dword [esp + 0x30]
sub esi, 1
mov dword [esp + 0x30], esi
jne 0x100c1d10
jmp 0x100c1f61
cmp ecx, 1
jle 0x100c1f85
lea ecx, [eax*4]
mov eax, dword [esp + 0x74]
mov ebp, eax
mov dword [esp + 0x40], ecx
lea esi, [ebx*8]
lea edi, [eax + edx*4]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x68]
dec edx
mov dword [esp + 0x34], edx
mov ebx, dword [esp + 0x58]
add ebp, ecx
sub edi, ecx
mov dword [esp + 0x44], ebp
add eax, esi
mov dword [esp + 0x48], edi
cmp dword [esp + 0x60], 0
mov dword [esp + 0x68], eax
jle 0x100c1f54
mov edx, dword [esp + 0x18]
lea ecx, [ebx*4]
shl edx, 2
mov esi, ebp
mov dword [esp + 0x30], edx
mov ebp, eax
mov eax, dword [esp + 0x60]
mov edx, edi
mov edi, dword [esp + 0x30]
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], edx
mov dword [esp + 0x20], eax
cmp ebx, 2
jle 0x100c1f1e
lea edi, [ebx - 3]
mov eax, ebp
shr edi, 1
mov ecx, ebp
inc edi
nop dword [eax]
nop dword [eax + eax]
movss xmm0, dword [eax + 4]
add eax, 8
addss xmm0, dword [ecx - 0xc]
sub ecx, 8
add esi, 8
add edx, 8
movss dword [esi - 4], xmm0
movss xmm0, dword [eax - 4]
subss xmm0, dword [ecx - 4]
movss dword [edx - 4], xmm0
movss xmm0, dword [eax]
subss xmm0, dword [ecx]
movss dword [esi], xmm0
movss xmm0, dword [ecx]
addss xmm0, dword [eax]
movss dword [edx], xmm0
sub edi, 1
jne 0x100c1ec0
mov esi, dword [esp + 0x24]
lea ecx, [ebx*4]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x30]
add edx, ecx
add esi, ecx
add ebp, edi
mov dword [esp + 0x28], edx
sub eax, 1
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], eax
jne 0x100c1ea5
mov eax, dword [esp + 0x68]
lea esi, [ebx*8]
mov edi, dword [esp + 0x48]
mov ebp, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x34]
sub edx, 1
mov dword [esp + 0x34], edx
jne 0x100c1e58
mov ecx, dword [esp + 0x5c]
xorps xmm4, xmm4
mov edx, dword [esp + 0x64]
mov eax, edx
movss xmm6, dword [0x1011fc14]
imul eax, ecx
lea ebp, [ecx - 1]
imul ebp, edx
mov dword [esp + 0x28], ebp
jmp 0x100c1faa
mov edx, dword [esp + 0x64]
mov eax, ebp
movss xmm6, dword [0x1011fc14]
dec ebp
imul ebp, edx
xorps xmm4, xmm4
imul eax, edx
mov dword [esp + 0x28], ebp
cmp ecx, 1
jle 0x100c22b1
mov ecx, eax
lea edi, [edx*4]
sub ecx, edx
mov dword [esp + 0x3c], edi
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0x70]
mov esi, ecx
lea edx, [ecx + eax*4]
mov ecx, dword [esp + 0x10]
dec ecx
mov dword [esp + 0x24], ecx
nop
movaps xmm3, xmm6
movaps xmm0, xmm4
mulss xmm3, dword [esp + 0x50]
add esi, edi
sub edx, edi
mov edi, dword [esp + 0x64]
mulss xmm4, dword [esp + 0x50]
xor eax, eax
mov dword [esp + 0x20], esi
mulss xmm0, xmm7
mov dword [esp + 0x18], edx
mulss xmm6, xmm7
subss xmm3, xmm0
addss xmm4, xmm6
movaps xmm6, xmm3
test edi, edi
jle 0x100c206a
mov ebx, dword [esp + 0x78]
lea edi, [edi*4]
add edi, dword [esp + 0x78]
mov ecx, edx
mov edx, dword [esp + 0x78]
lea edx, [edx + ebp*4]
mov ebp, dword [esp + 0x64]
nop word [eax + eax]
movaps xmm0, xmm3
mulss xmm0, dword [edi]
add edi, 4
addss xmm0, dword [ebx + eax*4]
inc eax
movss dword [esi], xmm0
movaps xmm0, xmm4
mulss xmm0, dword [edx]
add esi, 4
add edx, 4
movss dword [ecx], xmm0
add ecx, 4
cmp eax, ebp
jl 0x100c2030
mov esi, dword [esp + 0x20]
mov edi, ebp
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
cmp dword [esp + 0x10], 2
movaps xmm5, xmm3
movaps xmm1, xmm4
jle 0x100c2131
mov ecx, dword [esp + 0x48]
lea ebx, [edi*4]
mov ebp, dword [esp + 0x10]
lea eax, [edi*4]
add ebx, dword [esp + 0x78]
mov dword [esp + 0x40], eax
lea ecx, [ecx*4]
add ecx, dword [esp + 0x78]
add ebp, 0xfffffffe
nop word [eax + eax]
movaps xmm2, xmm5
movaps xmm0, xmm1
mulss xmm2, xmm3
sub ecx, eax
add ebx, eax
mov dword [esp + 0x44], ecx
mulss xmm0, xmm4
mulss xmm5, xmm4
mulss xmm1, xmm3
subss xmm2, xmm0
addss xmm1, xmm5
movaps xmm5, xmm2
test edi, edi
jle 0x100c2120
mov eax, edx
mov edx, ecx
mov ecx, esi
mov esi, ebx
movaps xmm0, xmm2
mulss xmm0, dword [esi]
add esi, 4
addss xmm0, dword [ecx]
movss dword [ecx], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [edx]
add ecx, 4
add edx, 4
addss xmm0, dword [eax]
movss dword [eax], xmm0
add eax, 4
sub edi, 1
jne 0x100c20e5
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 0x64]
mov esi, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
sub ebp, 1
jne 0x100c20b0
mov ecx, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
sub ecx, 1
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x3c]
mov dword [esp + 0x24], ecx
jne 0x100c1fd0
mov esi, dword [esp + 0x64]
xor edi, edi
mov ebx, dword [esp + 0x78]
mov edx, dword [esp + 0x10]
add ebx, 8
dec edx
lea eax, [esi*4]
mov dword [esp + 0x34], edx
mov dword [esp + 0x50], eax
nop
add edi, esi
add ebx, eax
xor ecx, ecx
mov ebp, edi
cmp esi, 4
jl 0x100c21ec
mov eax, dword [esp + 0x78]
add esi, 0xfffffffc
shr esi, 2
add eax, 8
inc esi
mov edx, ebx
lea ecx, [esi*4]
lea ebp, [ecx + edi]
nop word [eax + eax]
movss xmm0, dword [edx - 8]
addss xmm0, dword [eax - 8]
movss dword [eax - 8], xmm0
movss xmm0, dword [edx - 4]
addss xmm0, dword [eax - 4]
movss dword [eax - 4], xmm0
movss xmm0, dword [eax]
addss xmm0, dword [edx]
movss dword [eax], xmm0
movss xmm0, dword [edx + 4]
add edx, 0x10
addss xmm0, dword [eax + 4]
movss dword [eax + 4], xmm0
add eax, 0x10
sub esi, 1
jne 0x100c21a0
mov edx, dword [esp + 0x34]
mov esi, dword [esp + 0x64]
cmp ecx, esi
jge 0x100c2218
mov eax, dword [esp + 0x78]
lea eax, [eax + ebp*4]
mov ebp, dword [esp + 0x78]
nop dword [eax + eax]
movss xmm0, dword [eax]
add eax, 4
addss xmm0, dword [ebp + ecx*4]
movss dword [ebp + ecx*4], xmm0
inc ecx
cmp ecx, esi
jl 0x100c2200
mov eax, dword [esp + 0x50]
sub edx, 1
mov dword [esp + 0x34], edx
jne 0x100c2170
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x58]
mov edi, dword [esp + 0x60]
lea ecx, [eax*4]
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x48], ecx
lea ebp, [eax + edx*4]
mov edx, dword [esp + 0x10]
dec edx
mov dword [esp + 0x34], edx
add eax, ecx
sub ebp, ecx
mov dword [esp + 0x50], eax
test edi, edi
jle 0x100c22a4
mov edx, dword [esp + 0x74]
lea esi, [ebx*4]
sub edx, dword [esp + 0x6c]
mov ecx, ebp
movss xmm0, dword [eax]
subss xmm0, dword [ecx]
movss dword [eax + edx], xmm0
movss xmm0, dword [ecx]
addss xmm0, dword [eax]
add eax, esi
movss dword [edx + ecx], xmm0
add ecx, esi
sub edi, 1
jne 0x100c2271
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x34]
mov edi, dword [esp + 0x60]
sub edx, 1
mov dword [esp + 0x34], edx
jne 0x100c2254
mov ecx, dword [esp + 0x10]
cmp ebx, 1
je 0x100c28e3
mov eax, dword [esp + 0x2c]
cmp eax, dword [esp + 0x60]
jge 0x100c2414
cmp ecx, 1
jle 0x100c255d
mov ebp, dword [esp + 0x1c]
mov ecx, dword [esp + 0x74]
mov edi, dword [esp + 0x6c]
mov eax, dword [esp + 0x14]
shl eax, 2
lea edx, [ecx + ebp*4]
mov dword [esp + 0x40], eax
dec ebp
lea esi, [edi + ebp*4]
lea ebp, [edi - 4]
mov edi, dword [esp + 0x10]
dec edi
mov dword [esp + 0x24], edi
nop dword [eax + eax]
add ecx, eax
add ebp, eax
sub edx, eax
mov dword [esp + 0x38], ecx
sub esi, eax
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x3c], edx
mov dword [esp + 0x20], esi
cmp ebx, 2
jle 0x100c2402
lea eax, [ebx - 3]
mov edi, edx
shr eax, 1
mov edx, esi
mov esi, dword [esp + 0x60]
inc eax
mov dword [esp + 0x28], eax
add ecx, 8
add ebp, 8
add edi, 8
mov dword [esp + 0x50], ecx
add edx, 8
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], edi
mov dword [esp + 0x30], edx
test esi, esi
jle 0x100c23dd
lea edx, [ebx*4]
mov eax, ebp
mov ebx, dword [esp + 0x60]
mov esi, ecx
mov ebp, dword [esp + 0x74]
mov ecx, dword [esp + 0x30]
sub ebp, dword [esp + 0x6c]
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x58]
nop word [eax + eax]
movss xmm0, dword [eax]
subss xmm0, dword [ecx + 4]
movss dword [eax + ebp], xmm0
movss xmm0, dword [eax]
addss xmm0, dword [ecx + 4]
movss dword [ecx + ebp], xmm0
movss xmm0, dword [ecx]
addss xmm0, dword [eax + 4]
movss dword [esi], xmm0
add esi, edx
movss xmm0, dword [eax + 4]
add eax, edx
subss xmm0, dword [ecx]
add ecx, edx
movss dword [edi], xmm0
add edi, edx
sub dword [esp + 0x34], 1
jne 0x100c2380
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x50]
mov ebp, dword [esp + 0x48]
mov edi, dword [esp + 0x44]
mov edx, dword [esp + 0x30]
mov esi, dword [esp + 0x60]
sub eax, 1
mov dword [esp + 0x28], eax
jne 0x100c2333
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
mov esi, dword [esp + 0x20]
mov ebp, dword [esp + 0x1c]
mov edi, dword [esp + 0x24]
sub edi, 1
mov dword [esp + 0x24], edi
jne 0x100c2300
jmp 0x100c255d
cmp ecx, 1
jle 0x100c255d
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
lea ebp, [ecx + esi*4]
shl eax, 2
dec esi
mov dword [esp + 0x50], eax
lea esi, [edx + esi*4]
add edx, 0xfffffffc
dec edi
mov dword [esp + 0x1c], edi
add ecx, eax
add edx, eax
sub ebp, eax
mov dword [esp + 0x44], ecx
sub esi, eax
mov dword [esp + 0x3c], edx
cmp dword [esp + 0x60], 0
mov dword [esp + 0x48], ebp
mov dword [esp + 0x40], esi
jle 0x100c2550
mov edi, dword [esp + 0x60]
lea eax, [ebx*4]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x30], edx
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], esi
mov dword [esp + 0x20], edi
nop dword [eax]
cmp ebx, 2
jle 0x100c2513
mov eax, edx
mov edi, ebp
mov ebp, dword [esp + 0x74]
lea edx, [ebx - 3]
sub ebp, dword [esp + 0x6c]
mov esi, ecx
mov ecx, dword [esp + 0x28]
shr edx, 1
inc edx
nop dword [eax]
movss xmm0, dword [eax + 8]
add eax, 8
subss xmm0, dword [ecx + 0xc]
add ecx, 8
add esi, 8
add edi, 8
movss dword [eax + ebp], xmm0
movss xmm0, dword [eax]
addss xmm0, dword [ecx + 4]
movss dword [ecx + ebp], xmm0
movss xmm0, dword [ecx]
addss xmm0, dword [eax + 4]
movss dword [esi], xmm0
movss xmm0, dword [eax + 4]
subss xmm0, dword [ecx]
movss dword [edi], xmm0
sub edx, 1
jne 0x100c24b0
mov ecx, dword [esp + 0x34]
lea eax, [ebx*4]
mov edx, dword [esp + 0x30]
mov ebp, dword [esp + 0x24]
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x20]
add ecx, eax
add edx, eax
add ebp, eax
mov dword [esp + 0x34], ecx
add esi, eax
mov dword [esp + 0x30], edx
sub edi, 1
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], esi
mov dword [esp + 0x20], edi
jne 0x100c2490
mov eax, dword [esp + 0x50]
mov ebp, dword [esp + 0x48]
mov ecx, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
mov edi, dword [esp + 0x1c]
sub edi, 1
mov dword [esp + 0x1c], edi
jne 0x100c2447
mov esi, dword [esp + 0x64]
xor ebp, ebp
cmp esi, 4
jl 0x100c25b8
mov eax, dword [esp + 0x78]
add esi, 0xfffffffc
mov ebp, dword [esp + 0x70]
mov edi, eax
sub edi, ebp
shr esi, 2
inc esi
lea edx, [eax + 0xc]
lea ecx, [ebp + 4]
lea ebp, [esi*4]
nop dword [eax + eax]
mov eax, dword [edx - 0xc]
lea ecx, [ecx + 0x10]
mov dword [ecx - 0x14], eax
lea edx, [edx + 0x10]
mov eax, dword [edi + ecx - 0x10]
mov dword [ecx - 0x10], eax
mov eax, dword [edx - 0x14]
mov dword [ecx - 0xc], eax
mov eax, dword [edx - 0x10]
mov dword [ecx - 8], eax
sub esi, 1
jne 0x100c2590
mov esi, dword [esp + 0x64]
cmp ebp, esi
jge 0x100c25e2
mov eax, dword [esp + 0x70]
mov ebx, dword [esp + 0x78]
sub ebx, eax
sub esi, ebp
lea ecx, [eax + ebp*4]
nop dword [eax + eax]
mov eax, dword [ecx + ebx]
lea ecx, [ecx + 4]
mov dword [ecx - 4], eax
sub esi, 1
jne 0x100c25d0
mov ebx, dword [esp + 0x58]
mov edx, dword [esp + 0x5c]
xor eax, eax
cmp edx, 1
jle 0x100c268b
dec edx
mov dword [esp + 0x64], edx
add eax, dword [esp + 0x14]
xor ebp, ebp
mov esi, dword [esp + 0x74]
mov ecx, eax
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x60]
cmp eax, 4
jl 0x100c264e
mov edi, dword [esp + 0x6c]
lea edx, [eax - 4]
shr edx, 2
inc edx
lea ebp, [edx*4]
mov eax, dword [esi + ecx*4]
mov dword [edi + ecx*4], eax
add ecx, ebx
mov eax, dword [esi + ecx*4]
mov dword [edi + ecx*4], eax
add ecx, ebx
mov eax, dword [esi + ecx*4]
mov dword [edi + ecx*4], eax
add ecx, ebx
mov eax, dword [esi + ecx*4]
mov dword [edi + ecx*4], eax
add ecx, ebx
sub edx, 1
jne 0x100c2621
mov edx, dword [esp + 0x64]
mov eax, dword [esp + 0x60]
cmp ebp, eax
jge 0x100c2676
mov edx, dword [esp + 0x6c]
lea edi, [ebx*4]
sub esi, edx
lea ecx, [edx + ecx*4]
mov edx, eax
sub edx, ebp
mov eax, dword [ecx + esi]
mov dword [ecx], eax
add ecx, edi
sub edx, 1
jne 0x100c2666
mov edx, dword [esp + 0x64]
mov eax, dword [esp + 0x58]
sub edx, 1
mov dword [esp + 0x64], edx
jne 0x100c25f6
mov edx, dword [esp + 0x5c]
mov eax, dword [esp + 0x2c]
mov ecx, ebx
not ecx
cmp eax, dword [esp + 0x60]
jle 0x100c27c8
cmp edx, 1
jle 0x100c28e3
mov eax, dword [esp + 0x14]
lea esi, [ebx*4]
mov edx, dword [esp + 0x74]
add edx, 0xfffffffc
lea ebp, [eax*4]
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x40], ebp
lea edi, [eax + ecx*4]
mov ecx, dword [esp + 0x5c]
mov eax, dword [esp + 0x6c]
dec ecx
mov dword [esp + 0x58], ecx
add edi, esi
add eax, ebp
add edx, ebp
mov dword [esp + 0x50], edi
cmp dword [esp + 0x60], 0
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], edx
jle 0x100c27b3
mov ebp, eax
lea ecx, [ebx*4]
mov eax, edx
mov edx, dword [esp + 0x60]
mov dword [esp + 0x64], eax
mov dword [esp + 0x5c], edx
nop dword [eax + eax]
cmp ebx, 2
jle 0x100c2787
mov ecx, edi
lea edx, [ebx - 3]
mov edi, dword [esp + 0x6c]
mov esi, ebp
sub edi, dword [esp + 0x74]
shr edx, 1
inc edx
nop word [eax + eax]
movss xmm1, dword [ecx + 4]
add ecx, 8
mulss xmm1, dword [eax + 8]
add eax, 8
add esi, 8
movss xmm0, dword [ecx]
mulss xmm0, dword [eax + 4]
subss xmm1, xmm0
movss dword [edi + eax], xmm1
movss xmm1, dword [ecx - 4]
movss xmm0, dword [eax]
mulss xmm1, dword [eax + 4]
mulss xmm0, dword [ecx]
addss xmm1, xmm0
movss dword [esi], xmm1
sub edx, 1
jne 0x100c2730
mov eax, dword [esp + 0x64]
lea ecx, [ebx*4]
mov edx, dword [esp + 0x5c]
mov edi, dword [esp + 0x50]
add eax, ecx
add ebp, ecx
sub edx, 1
mov dword [esp + 0x64], eax
mov dword [esp + 0x5c], edx
jne 0x100c2710
mov eax, dword [esp + 0x48]
lea esi, [ebx*4]
mov edx, dword [esp + 0x44]
mov ebp, dword [esp + 0x40]
mov ecx, dword [esp + 0x58]
sub ecx, 1
mov dword [esp + 0x58], ecx
jne 0x100c26d7
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
cmp edx, 1
jle 0x100c28e3
mov eax, dword [esp + 0x14]
lea edi, [ebx*4]
mov ebp, dword [esp + 0x74]
mov edx, dword [esp + 0x6c]
add ebp, 0xfffffffc
lea esi, [eax*4]
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x3c], esi
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 0x5c]
dec ecx
mov dword [esp + 0x5c], ecx
add eax, edi
add edx, esi
add ebp, esi
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], edx
mov dword [esp + 0x40], ebp
cmp ebx, 2
jle 0x100c28d6
mov edi, dword [esp + 0x60]
mov ecx, eax
lea eax, [ebx - 3]
shr eax, 1
inc eax
mov dword [esp + 0x64], eax
nop dword [eax]
add edx, 8
lea ecx, [ecx + 8]
add ebp, 8
mov dword [esp + 0x58], edx
mov dword [esp + 0x50], ebp
test edi, edi
jle 0x100c28ae
mov eax, ebp
lea esi, [ebx*4]
mov ebp, dword [esp + 0x6c]
sub ebp, dword [esp + 0x74]
nop word [eax + eax]
movss xmm1, dword [ecx - 4]
mulss xmm1, dword [eax]
movss xmm0, dword [ecx]
mulss xmm0, dword [eax + 4]
subss xmm1, xmm0
movss dword [eax + ebp], xmm1
movss xmm1, dword [ecx - 4]
movss xmm0, dword [ecx]
mulss xmm1, dword [eax + 4]
mulss xmm0, dword [eax]
add eax, esi
addss xmm1, xmm0
movss dword [edx], xmm1
add edx, esi
sub edi, 1
jne 0x100c2860
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x58]
mov ebp, dword [esp + 0x50]
mov edi, dword [esp + 0x60]
sub eax, 1
mov dword [esp + 0x64], eax
jne 0x100c2830
mov edx, dword [esp + 0x48]
lea edi, [ebx*4]
mov eax, dword [esp + 0x44]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x5c]
sub ecx, 1
mov dword [esp + 0x5c], ecx
jne 0x100c2802
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret