Function at 0x4dd300
Capabilities:
Access peb ldr_data
Check for peb beingdebugged flag

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
mov eax, 0x56b4
call fcn.004ad330
mov eax, dword fs:[0x2c]
mov eax, dword [eax]
push ebx
mov dword [esp + 0x18], eax
mov ebx, dword [ebp + 0xc]
push esi
lea esi, [eax + 0x18f]
mov ecx, dword [ebp + 8]
and esi, 0xfffffff0
lea edx, [esi + 0x800]
mov dword [esp + 0x10], edx
lea edx, [esi + 0xc00]
push edi
mov edi, dword [ebp + 0x18]
mov dword [esp + 0x18], edx
lea edx, [esi + 0x1000]
mov dword [esp + 0x58], edx
mov edx, dword [edi*4 + 0x6af974]
mov dword [eax + 0x14], edx
mov eax, dword [edi*4 + 0x6af984]
imul eax, dword [ebp + 0x14]
lea eax, [eax + eax*4]
lea eax, [ebx + eax*4]
mov ebx, dword [edi*4 + 0x6af9a4]
mov dword [esp + 0x5c], eax
lea eax, [edx + 1]
mov dword [esp + 0x34], eax
shr eax, 1
mov dword [esp + 0x38], eax
mov eax, dword [edi*4 + 0x6b0110]
mov dword [esp + 0x28], eax
movzx eax, word [ecx + 0xc]
imul eax, ebx
movaps xmm2, xmmword [0xaac390]
movss xmm0, dword [ecx + 0x20]
movaps xmm3, xmmword [0xaac490]
mov dword [esp + 0x3c], eax
movzx eax, word [ecx]
movss xmm5, dword [edi*4 + 0x6af994]
movsx edi, word [ecx + 8]
mov dword [esp + 0x24], eax
movzx eax, byte [ecx + 0x13]
add eax, 1
lea eax, [eax + eax*2]
shl eax, 4
add eax, ecx
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0x20]
mov dword [ebx + 0x10], eax
movzx ebx, word [ecx + 0xa]
shufps xmm0, xmm0, 0
add ebx, eax
mov eax, dword [esp + 0x20]
movaps xmm1, xmm2
subps xmm1, xmm0
movss xmm0, dword [ecx + 0x24]
mulps xmm1, xmm3
movaps xmmword [esp + 0x270], xmm1
mov dword [eax + 0x18], ebx
movsx eax, byte [ecx + 0x12]
movsx ebx, word [ecx + 2]
shufps xmm0, xmm0, 0
movaps xmm1, xmm2
subps xmm1, xmm0
movss xmm0, dword [ecx + 0x28]
mulps xmm1, xmm3
movaps xmmword [esp + 0x290], xmm1
movss dword [esp + 0x10], xmm5
shufps xmm0, xmm0, 0
movaps xmm1, xmm2
movss xmm5, xmm5
subps xmm1, xmm0
shl eax, 4
shufps xmm5, xmm5, 0
mulps xmm1, xmm3
add edi, ecx
movaps xmmword [esp + 0x380], xmm5
movaps xmmword [esp + 0x2b0], xmm1
add eax, ecx
add eax, ebx
mov ebx, dword [esp + 0x20]
mov dword [ebx + 0x28], eax
lea ebx, [ebx + 0x28]
mov dword [esp + 0x2c], eax
movzx eax, word [ecx + 0xe]
mov dword [esp + 0x54], ebx
lea ebx, [edx - 2]
imul eax, ebx
imul eax, dword [esp + 0x30]
add eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x54]
mov dword [ebx], eax
movzx eax, word [ecx + 6]
movsx ebx, word [eax + ecx + 8]
add eax, ecx
movsx ecx, byte [eax + 0x12]
shl ecx, 4
sub ebx, ecx
lea ecx, [ebx + eax]
mov ebx, dword [esp + 0x20]
mov dword [ebx + edx*4 + 0x28], ecx
movzx eax, word [eax + 0xc]
add eax, ecx
cmp edx, 1
mov ecx, dword [esp + 0x34]
mov dword [ebx + ecx*4 + 0x28], eax
jbe 0x4dd4cd
lea ecx, [edx - 1]
lea eax, [ebx + 0x2c]
mov dword [esp + 0x1c], ecx
mov dword [eax], edi
add edi, dword [esp + 0x3c]
add eax, 4
sub dword [esp + 0x1c], 1
jne 0x4dd4bd
mov eax, dword [esp + 0x28]
lea eax, [eax + eax*2]
shl eax, 4
lea eax, [esp + eax + 0x3710]
lea ecx, [esp + 0x4c0]
add edx, 1
jmp 0x4dd4f0
movaps xmmword [eax], xmm2
movaps xmm0, xmmword [0xaac390]
movaps xmmword [eax + 0x10], xmm0
movaps xmm0, xmmword [0xaac390]
movaps xmmword [eax + 0x20], xmm0
movaps xmm2, xmmword [0xaac390]
movaps xmmword [ecx], xmm2
add eax, 0xc0
add ecx, 0x10
sub edx, 1
jne 0x4dd4f0
test byte [ebp + 0x10], 4
je 0x4dd566
mov edx, dword [ebx + 0x14]
mov eax, dword [esp + 0x24]
mov ecx, dword [ebx + 0x2c]
sub edx, 1
shr edx, 1
push edx
mov edx, dword [ebx + 0x28]
push eax
push ecx
mov ecx, dword [esp + 0x3c]
push edx
lea edi, [esi + 0x400]
push esi
mov eax, edi
call fcn.004db990
movaps xmm0, xmmword [0xaac480]
mov dword [ebx + 0x28], esi
add esp, 0x14
mov dword [ebx + 0x2c], edi
movaps xmmword [esp + 0x4c0], xmm0
test byte [ebp + 0x10], 8
je 0x4dd5be
mov eax, dword [ebx + 0x14]
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x14]
lea ecx, [eax - 1]
shr ecx, 1
push ecx
mov ecx, dword [ebx + esi*4 + 0x28]
push edx
mov edx, dword [ebx + eax*4 + 0x28]
mov eax, dword [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x3c]
push edx
push edi
call fcn.004db990
mov eax, dword [ebx + 0x14]
mov ecx, dword [esp + 0x2c]
movaps xmm0, xmmword [0xaac480]
mov dword [ebx + eax*4 + 0x28], edi
add esp, 0x14
shl eax, 4
mov dword [ebx + esi*4 + 0x28], ecx
movaps xmmword [esp + eax + 0x4b0], xmm0
mov eax, dword [ebp + 8]
movsx edx, byte [eax + 0x10]
sub edx, 2
mov dword [esp + 0x14], edx
movss xmm3, dword [0x6f7b4c]
shufps xmm3, xmm3, 0
fild dword [esp + 0x14]
movaps xmmword [esp + 0xb0], xmm3
fld qword [0x6f9d20]
fmul st(1), st(0)
fxch st(1)
fadd qword [0x6f9a40]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fstp dword [esp + 0x14]
fld dword [esp + 0x10]
movss xmm1, dword [esp + 0x14]
fld st(0)
fmul st(2)
fld dword [eax + 0x18]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fld st(0)
shufps xmm1, xmm1, 0
fmul st(2)
addps xmm3, xmm1
movaps xmmword [esp + 0x160], xmm3
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + 0x10]
movss xmm2, dword [esp + 0x10]
fld1
movaps xmm0, xmmword [0xaac370]
fsubrp st(1)
fmul st(3)
shufps xmm2, xmm2, 0
mulps xmm0, xmm2
movaps xmmword [esp + 0x230], xmm0
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + 0x10]
movss xmm0, dword [esp + 0x10]
movaps xmm4, xmmword [0xaac360]
fst dword [esp + 0x10]
mulps xmm4, xmm2
fld dword [esp + 0x10]
fstp dword [esp + 0x10]
shufps xmm0, xmm0, 0
addps xmm0, xmm1
addps xmm0, xmm4
movaps xmmword [esp + 0x210], xmm0
movss xmm0, dword [esp + 0x10]
fld dword [eax + 0x14]
fmulp st(3)
fxch st(2)
fstp dword [esp + 0x10]
shufps xmm0, xmm0, 0
movaps xmmword [esp + 0x180], xmm0
cvttss2si eax, dword [esp + 0x10]
fmul qword [0x6fa240]
mov byte [esp + 0x90], al
mov byte [esp + 0x91], 0
fstp dword [esp + 0x10]
cvttss2si eax, dword [esp + 0x10]
mov byte [esp + 0x130], al
mov eax, dword [ebx + 0x10]
fld dword [eax + 0xc]
movss xmm3, dword [eax]
fstp dword [esp + 0x10]
mov byte [esp + 0x131], 0
fld dword [eax + 4]
fld dword [esp + 0x10]
fld st(0)
fsubp st(2)
fxch st(1)
fstp dword [esp + 0x10]
movss xmm0, dword [esp + 0x10]
fld qword [0x6f9b80]
fdiv st(1), st(0)
fxch st(1)
fstp dword [esp + 0x14]
fld dword [eax + 0x3c]
movss xmm1, dword [esp + 0x14]
fstp dword [esp + 0x10]
unpcklps xmm3, xmm0
fld dword [eax + 0x34]
movss xmm0, dword [eax + 8]
fld dword [esp + 0x10]
unpcklps xmm0, xmm1
fld st(0)
shufps xmm3, xmm0, 0x44
fsubp st(2)
movss xmm0, dword [eax + 0x30]
fxch st(1)
movaps xmm4, xmm0
mov ecx, dword [ebx + 0x14]
add ecx, 1
fstp dword [esp + 0x10]
movss xmm0, dword [esp + 0x10]
fdiv st(1)
unpcklps xmm4, xmm0
movss xmm0, dword [eax + 0x38]
mov eax, dword [ebx + 0x18]
movaps xmm7, xmmword [0xaac390]
movaps xmmword [esp + 0x40], xmm7
fstp dword [esp + 0x14]
fld dword [eax + 0xc]
fstp dword [esp + 0x10]
fld dword [eax + 4]
movss xmm1, dword [esp + 0x14]
fld dword [esp + 0x10]
unpcklps xmm0, xmm1
fld st(0)
shufps xmm4, xmm0, 0x44
fsubp st(2)
movss xmm0, dword [eax]
fxch st(1)
fstp dword [esp + 0x14]
movss xmm1, dword [esp + 0x14]
fdiv st(1)
unpcklps xmm0, xmm1
movss xmm1, dword [eax + 8]
fstp dword [esp + 0x3c]
fld dword [eax + 0x3c]
fstp dword [esp + 0x10]
fld dword [eax + 0x34]
movss xmm2, dword [esp + 0x3c]
fld dword [esp + 0x10]
unpcklps xmm1, xmm2
fld st(0)
shufps xmm0, xmm1, 0x44
fsubp st(2)
movss xmm1, dword [eax + 0x30]
fxch st(1)
subps xmm0, xmm3
mulps xmm0, xmm5
fstp dword [esp + 0x10]
movss xmm2, dword [esp + 0x10]
unpcklps xmm1, xmm2
fdiv st(1)
movss xmm2, dword [eax + 0x38]
fstp dword [esp + 0x2c]
movss xmm6, dword [esp + 0x2c]
unpcklps xmm2, xmm6
shufps xmm1, xmm2, 0x44
subps xmm1, xmm4
mulps xmm1, xmm5
movaps xmm2, xmm4
subps xmm2, xmm1
movaps xmm6, xmm3
subps xmm6, xmm0
movaps xmmword [esp + 0x710], xmm2
subps xmm2, xmm6
mulps xmm2, xmm5
movaps xmmword [esp + 0x5e0], xmm6
movaps xmmword [esp + 0xd00], xmm2
je 0x4dd884
xor eax, eax
movaps xmm2, xmm7
addps xmm2, xmm3
movaps xmmword [esp + eax + 0x5f0], xmm2
movaps xmm2, xmmword [esp + 0x40]
addps xmm2, xmm4
movaps xmmword [esp + eax + 0x720], xmm2
movaps xmm6, xmmword [esp + eax + 0x5f0]
subps xmm2, xmm6
mulps xmm2, xmm5
movaps xmmword [esp + eax + 0xd10], xmm2
movaps xmm2, xmmword [esp + 0x40]
add eax, 0x10
sub ecx, 1
addps xmm2, xmm1
addps xmm7, xmm0
movaps xmmword [esp + 0x40], xmm2
jne 0x4dd838
mov esi, dword [ebp + 0x18]
mov eax, esi
lea ecx, [esp + 0x11c0]
shl eax, 4
push ecx
lea edx, [esp + 0xd04]
add eax, 0x6b0120
movups xmm0, xmmword [eax]
xor edi, edi
push edx
mov ecx, esi
lea edx, [esp + 0x5e8]
movaps xmmword [esp + 0x128], xmm0
mov dword [ebx + 0x74], edi
mov dword [ebx + 0x1c], 1
mov dword [esp + 0x3c], 0x54
mov dword [esp + 0x38], edi
call fcn.004dbc40
mov eax, dword [esp + 0x60]
mov edx, dword [ebx + 0x10]
push eax
movzx eax, byte [edx + 0x14]
lea ecx, [ebx + 0x2c]
push esi
call fcn.004dba50
add esp, 0x10
cmp esi, 3
mov ecx, 1
mov dword [esp + 0x2c], ecx
jne 0x4dd90e
mov eax, dword [esp + 0x24]
mov ecx, eax
not ecx
and ecx, 1
lea esi, [eax + 1]
mov dword [esp + 0x2c], ecx
shr esi, 1
jmp 0x4dd912
mov esi, dword [esp + 0x24]
mov edx, dword [ebx + 0x14]
add edx, 2
lea eax, [ebx + 0x28]
je 0x4dd928
add dword [eax], 0x10
add eax, 4
sub edx, 1
jne 0x4dd91d
lea eax, [esi - 1]
test eax, eax
mov dword [esp + 0x24], eax
jl 0x4de80d
mov eax, dword [esp + 0x28]
movups xmm0, xmmword [esp + 0x90]
lea ecx, [esp + eax*4 + 0x5c]
mov dword [esp + 0x3c], ecx
movaps xmmword [esp + 0x4b0], xmm0
mov ebx, dword [esp + 0x20]
mov edx, dword [ebx + 0x10]
movzx eax, byte [edx + 0x14]
mov edi, dword [esp + 0x30]
mov ecx, dword [ebx + 0x74]
shr eax, 2
shl eax, 4
movups xmm0, xmmword [eax + 0x6afa00]
lea edi, [edi + edi*2]
shl edi, 4
movaps xmmword [esp + 0x300], xmm0
movups xmm0, xmmword [eax + 0x6afa40]
lea eax, [esp + edi + 0x11c0]
mov dword [esp + 0x1c], eax
mov eax, dword [ebx + 0x1c]
add ecx, 1
add eax, 1
and ecx, 3
and eax, 3
cmp dword [esp + 0x24], 0
movaps xmmword [esp + 0x460], xmm0
mov dword [ebx + 0x74], ecx
mov dword [ebx + 0x1c], eax
je 0x4ddad3
fld dword [edx + 0x6c]
movss xmm0, dword [edx + 0x60]
imul eax, eax, 0x130
fstp dword [esp + 0x10]
fld dword [edx + 0x64]
fld dword [esp + 0x10]
fld st(0)
fsubp st(2)
fxch st(1)
fstp dword [esp + 0x10]
movaps xmm2, xmm0
movss xmm0, dword [esp + 0x10]
fdiv st(1)
unpcklps xmm2, xmm0
movss xmm0, dword [edx + 0x68]
mov edx, dword [ebx + 0x18]
movaps xmm4, xmmword [esp + 0x380]
lea eax, [esp + eax + 0x5e0]
add eax, 0x10
fstp dword [esp + 0x14]
fld dword [edx + 0x6c]
fstp dword [esp + 0x10]
fld dword [edx + 0x64]
movss xmm1, dword [esp + 0x14]
fld dword [esp + 0x10]
unpcklps xmm0, xmm1
fld st(0)
movss xmm1, dword [edx + 0x60]
fsubp st(2)
shufps xmm2, xmm0, 0x44
fxch st(1)
fstp dword [esp + 0x10]
movss xmm0, dword [esp + 0x10]
unpcklps xmm1, xmm0
movss xmm0, dword [edx + 0x68]
fdiv st(1)
mov edx, ecx
imul edx, edx, 0x130
fstp dword [esp + 0x14]
movss xmm3, dword [esp + 0x14]
unpcklps xmm0, xmm3
movaps xmm3, xmmword [0xaac390]
shufps xmm1, xmm0, 0x44
lea esi, [esp + edx + 0x5e0]
subps xmm1, xmm2
mulps xmm1, xmm4
movaps xmm0, xmm2
subps xmm0, xmm1
movaps xmmword [eax - 0x10], xmm0
movaps xmm5, xmmword [esi]
lea edx, [esp + edx + 0xd00]
mov ebx, edx
subps xmm0, xmm5
mulps xmm0, xmm4
movaps xmmword [ebx], xmm0
mov ebx, dword [esp + 0x20]
mov ebx, dword [ebx + 0x14]
add edx, 0x10
add esi, 0x10
add ebx, 1
je 0x4ddacf
mov dword [esp + 0x18], ebx
movaps xmm0, xmm3
addps xmm0, xmm2
movaps xmmword [eax], xmm0
movaps xmm5, xmmword [esi]
mov ebx, edx
add edx, 0x10
subps xmm0, xmm5
add esi, 0x10
add eax, 0x10
sub dword [esp + 0x18], 1
mulps xmm0, xmm4
movaps xmmword [ebx], xmm0
addps xmm3, xmm1
jne 0x4ddaa5
mov ebx, dword [esp + 0x20]
imul ecx, ecx, 0x130
lea esi, [esp + 0x2000]
lea edx, [esp + ecx + 0xd00]
sub esi, edi
push esi
push edx
lea edx, [esp + ecx + 0x5e8]
mov ecx, dword [ebp + 0x18]
call fcn.004dbc40
mov eax, dword [esp + 0x24]
mov ebx, dword [ebx + 0x14]
lea ecx, [eax + 0x30]
lea edx, [eax + 0x60]
mov dword [esp + 0x18], eax
add eax, 0x90
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x44]
add esp, 8
test ebx, ebx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], edx
mov dword [eax], esi
mov dword [esp + 0x18], ebx
jl 0x4ddc49
mov eax, dword [esp + 0x34]
mov ebx, dword [esp + 0x10]
lea ecx, [eax + eax*2]
shl ecx, 4
sub ecx, dword [esp + 0x1c]
lea edx, [esp + ecx + 0x3740]
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x28]
lea ecx, [eax + ebx]
mov eax, ebx
add ebx, 0xc0
test edi, edi
lea esi, [esp + 0x60]
jle 0x4ddc29
movaps xmm3, xmmword [eax + 0x20]
mov edx, dword [esi]
movaps xmm1, xmmword [eax]
movaps xmm5, xmmword [eax + 0xe0]
movaps xmm2, xmmword [eax + 0x10]
movaps xmm7, xmmword [edx]
movaps xmm4, xmmword [eax + 0xc0]
movaps xmm0, xmmword [eax + 0xd0]
subps xmm5, xmm3
movaps xmmword [esp + 0x390], xmm5
movaps xmm6, xmm1
shufps xmm6, xmm7, 0xf
movaps xmm7, xmmword [edx + 0x10]
subps xmm4, xmm1
movaps xmm5, xmm1
shufps xmm5, xmm6, 0x89
subps xmm1, xmm5
subps xmm0, xmm2
movaps xmm6, xmm2
shufps xmm6, xmm7, 0xf
movaps xmm7, xmmword [edx + 0x20]
movaps xmm5, xmm2
shufps xmm5, xmm6, 0x89
subps xmm2, xmm5
movaps xmm6, xmm3
shufps xmm6, xmm7, 0xf
movaps xmm5, xmm3
shufps xmm5, xmm6, 0x89
subps xmm3, xmm5
movaps xmm5, xmmword [esp + 0x390]
movaps xmm6, xmm0
mulps xmm6, xmm3
movaps xmm7, xmm5
mulps xmm7, xmm2
subps xmm7, xmm6
movaps xmm6, xmm4
movaps xmmword [ecx], xmm7
mulps xmm6, xmm3
mulps xmm5, xmm1
subps xmm6, xmm5
movaps xmmword [ecx + 0x10], xmm6
mulps xmm4, xmm2
mulps xmm0, xmm1
subps xmm0, xmm4
movaps xmmword [ecx + 0x20], xmm0
sub edi, 1
add esi, 4
add eax, 0x30
add ecx, 0x30
test edi, edi
jg 0x4ddb6d
mov eax, 0xc0
add dword [esp + 0x60], eax
add dword [esp + 0x64], eax
add dword [esp + 0x68], eax
add dword [esp + 0x6c], eax
sub dword [esp + 0x18], 1
jns 0x4ddb4e
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x20]
lea esi, [eax + eax*2]
mov eax, dword [ecx + 0x10]
movzx edx, byte [eax + 0x16]
mov eax, dword [esp + 0x38]
shl edx, 4
add edx, 0xaac3b0
movaps xmm0, xmmword [edx]
shl esi, 4
test eax, eax
lea ebx, [esp + 0x2e40]
lea esi, [esp + esi + 0x3740]
movaps xmmword [esp + 0x2a0], xmm0
mov dword [esp + 0x18], eax
jle 0x4de010
mov eax, dword [esp + 0x28]
sub eax, dword [esp + 0x34]
lea eax, [eax + eax*2]
shl eax, 4
sub eax, esi
lea ecx, [esp + eax + 0x46d0]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x10]
movaps xmm1, xmmword [ecx + esi]
movaps xmm3, xmmword [ecx + esi + 0x180]
mov edi, dword [esp + 0x28]
add ecx, esi
mov eax, esi
movaps xmm0, xmmword [eax]
movaps xmm7, xmmword [eax + 0x10]
movaps xmm5, xmmword [eax + 0x20]
movaps xmm6, xmmword [eax + 0xc0]
movaps xmm2, xmmword [eax + 0xd0]
movaps xmm4, xmmword [eax + 0xe0]
movaps xmmword [esp + 0x250], xmm1
movaps xmm1, xmmword [ecx + 0x10]
movaps xmmword [esp + 0x2f0], xmm1
movaps xmm1, xmmword [ecx + 0x20]
movaps xmmword [esp + 0x2e0], xmm3
movaps xmm3, xmmword [eax + 0x190]
movaps xmmword [esp + 0x1c0], xmm1
movaps xmm1, xmmword [ecx + 0xc0]
movaps xmmword [esp + 0x200], xmm3
movaps xmm3, xmmword [ecx + 0x190]
movaps xmmword [esp + 0x2d0], xmm1
movaps xmm1, xmmword [ecx + 0xd0]
movaps xmmword [esp + 0x280], xmm3
movaps xmm3, xmmword [eax + 0x1a0]
movaps xmmword [esp + 0x260], xmm1
movaps xmm1, xmmword [ecx + 0xe0]
movaps xmmword [esp + 0x220], xmm3
movaps xmm3, xmmword [ecx + 0x1a0]
mov edx, ebx
add esi, 0x180
mov ecx, eax
add ebx, 0x100
add eax, 0x30
test edi, edi
movaps xmmword [esp + 0x1e0], xmm1
movaps xmm1, xmmword [esi]
movaps xmmword [esp + 0x2c0], xmm3
jle 0x4ddffd
jmp 0x4dddc4
movaps xmm5, xmmword [esp + 0x490]
movaps xmm7, xmmword [esp + 0x320]
movaps xmm0, xmmword [esp + 0x3b0]
movaps xmm1, xmmword [esp + 0x360]
movaps xmm4, xmmword [esp + 0x440]
movaps xmm2, xmmword [esp + 0x340]
movaps xmm3, xmmword [esp + 0x2d0]
shufps xmm3, xmm6, 0xf
shufps xmm3, xmm6, 0x9c
addps xmm3, xmm6
movaps xmm6, xmmword [esp + 0x260]
shufps xmm6, xmm2, 0xf
shufps xmm6, xmm2, 0x9c
addps xmm6, xmm2
movaps xmm2, xmmword [esp + 0x1e0]
shufps xmm2, xmm4, 0xf
shufps xmm2, xmm4, 0x9c
addps xmm2, xmm4
movaps xmm4, xmmword [esp + 0x250]
shufps xmm4, xmm0, 0xf
shufps xmm4, xmm0, 0x9c
addps xmm4, xmm0
movaps xmm0, xmmword [esp + 0x1c0]
shufps xmm0, xmm5, 0xf
shufps xmm0, xmm5, 0x9c
addps xmm0, xmm5
movaps xmm5, xmmword [esp + 0x2e0]
shufps xmm5, xmm1, 0xf
shufps xmm5, xmm1, 0x9c
addps xmm4, xmm3
addps xmm5, xmm1
movaps xmm1, xmmword [esp + 0x2c0]
addps xmm5, xmm3
movaps xmm3, xmmword [esp + 0x220]
shufps xmm1, xmm3, 0xf
shufps xmm1, xmm3, 0x9c
addps xmm1, xmm3
movaps xmm3, xmmword [esp + 0x280]
addps xmm0, xmm2
addps xmm1, xmm2
movaps xmm2, xmmword [esp + 0x2f0]
shufps xmm2, xmm7, 0xf
shufps xmm2, xmm7, 0x9c
addps xmm2, xmm7
movaps xmm7, xmmword [esp + 0x200]
addps xmm2, xmm6
mulps xmm2, xmmword [esp + 0x2a0]
shufps xmm3, xmm7, 0xf
shufps xmm3, xmm7, 0x9c
addps xmm3, xmm7
addps xmm3, xmm6
movaps xmm6, xmmword [eax]
mulps xmm3, xmmword [esp + 0x2a0]
movaps xmmword [esp + 0x3b0], xmm6
movaps xmm6, xmmword [ecx]
movaps xmmword [esp + 0x250], xmm6
movaps xmm6, xmmword [eax + 0x10]
movaps xmmword [esp + 0x320], xmm6
movaps xmm6, xmmword [ecx + 0x10]
movaps xmmword [esp + 0x2f0], xmm6
movaps xmm6, xmmword [eax + 0x20]
movaps xmmword [esp + 0x490], xmm6
movaps xmm6, xmmword [ecx + 0x20]
movaps xmmword [esp + 0x1c0], xmm6
movaps xmm6, xmm2
mulps xmm6, xmm2
movaps xmm7, xmm4
mulps xmm7, xmm4
addps xmm6, xmm7
mulps xmm0, xmm0
addps xmm6, xmm0
rsqrtps xmm0, xmm6
movaps xmm6, xmm3
mulps xmm6, xmm3
movaps xmm7, xmm5
mulps xmm7, xmm5
addps xmm6, xmm7
movaps xmm7, xmmword [ecx + 0xc0]
movaps xmmword [esp + 0x2d0], xmm7
movaps xmm7, xmmword [eax + 0xd0]
mulps xmm1, xmm1
addps xmm6, xmm1
movaps xmmword [esp + 0x340], xmm7
movaps xmm7, xmmword [ecx + 0xd0]
rsqrtps xmm1, xmm6
movaps xmm6, xmmword [eax + 0xc0]
movaps xmmword [esp + 0x260], xmm7
movaps xmm7, xmmword [eax + 0xe0]
movaps xmmword [esp + 0x440], xmm7
movaps xmm7, xmmword [ecx + 0xe0]
movaps xmmword [esp + 0x1e0], xmm7
movaps xmm7, xmmword [eax + 0x180]
movaps xmmword [esp + 0x360], xmm7
movaps xmm7, xmmword [ecx + 0x180]
movaps xmmword [esp + 0x2e0], xmm7
movaps xmm7, xmmword [eax + 0x190]
movaps xmmword [esp + 0x200], xmm7
movaps xmm7, xmmword [ecx + 0x190]
movaps xmmword [esp + 0x280], xmm7
movaps xmm7, xmmword [eax + 0x1a0]
movaps xmmword [esp + 0x220], xmm7
movaps xmm7, xmmword [ecx + 0x1a0]
movaps xmmword [esp + 0x2c0], xmm7
movaps xmm7, xmm0
mulps xmm0, xmm2
mulps xmm7, xmm4
movaps xmmword [edx], xmm7
movaps xmmword [edx + 0x10], xmm0
movaps xmm0, xmm1
mulps xmm0, xmm5
movaps xmmword [edx + 0x80], xmm0
mulps xmm1, xmm3
movaps xmmword [edx + 0x90], xmm1
mov ecx, eax
sub edi, 1
add eax, 0x30
add edx, 0x20
test edi, edi
jg 0x4ddd94
mov eax, dword [esp + 0x18]
sub eax, 1
test eax, eax
mov dword [esp + 0x18], eax
jg 0x4ddcab
mov esi, dword [esp + 0x20]
mov eax, dword [esi + 0x10]
movaps xmm0, xmmword [eax + 0x20]
movaps xmm3, xmmword [0xaac4b0]
mov ecx, dword [esi + 0x14]
test ecx, ecx
movaps xmm7, xmmword [esp + 0x120]
movaps xmm1, xmm3
movdqa xmm2, xmm0
psrlw xmm2, 3
andps xmm1, xmm2
movaps xmm2, xmm3
movdqa xmm4, xmm0
psllw xmm4, 5
andps xmm2, xmm4
movaps xmm4, xmm3
movdqa xmm5, xmm0
psllw xmm5, 1
psllw xmm0, 9
andps xmm4, xmm5
andps xmm3, xmm0
psubw xmm4, xmm1
psubw xmm3, xmm2
psraw xmm4, xmm7
psraw xmm3, xmm7
jbe 0x4de0ad
xor eax, eax
movdqa xmm0, xmm2
psubw xmm0, xmm1
psraw xmm0, xmm7
movdqa xmmword [esp + eax + 0xaa0], xmm0
movaps xmmword [esp + eax + 0xbd0], xmm1
movdqa xmm0, xmm2
add eax, 0x10
sub ecx, 1
paddw xmm0, xmm3
paddw xmm1, xmm4
movdqa xmm2, xmm0
jne 0x4de078
movaps xmm0, xmmword [esp + 0x4b0]
mov edx, dword [esp + 0x1c]
movaps xmmword [esp + 0x170], xmm0
mov eax, 0x6af9f0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0x3a0], xmm0
mov eax, 0x6afaa0
movups xmm0, xmmword [eax]
mov eax, dword [esi + 0x14]
movups xmmword [esp + 0x4a0], xmm0
movaps xmm0, xmmword [0xaac460]
add edx, 0xc0
test eax, eax
movaps xmmword [esp + 0x310], xmm0
movaps xmm0, xmmword [0xaac4a0]
lea ecx, [esp + 0x2e40]
movaps xmmword [esp + 0x330], xmm0
jbe 0x4de71d
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x28]
mov byte [esp + 0x4f], 0x7f
mov byte [esp + 0x4e], 0x7f
mov byte [esp + 0x4d], 0x7f
mov byte [esp + 0x4c], 0x7f
mov byte [esp + 0x4b], 0x7f
mov byte [esp + 0x4a], 0x7f
mov byte [esp + 0x49], 0x7f
mov byte [esp + 0x48], 0x7f
mov byte [esp + 0x47], 0x7f
mov byte [esp + 0x46], 0x7f
mov byte [esp + 0x45], 0x7f
mov byte [esp + 0x44], 0x7f
mov byte [esp + 0x43], 0x7f
mov byte [esp + 0x42], 0x7f
mov byte [esp + 0x41], 0x7f
mov byte [esp + 0x40], 0x7f
xor ebx, ebx
jmp 0x4de177
mov edx, dword [esp + 0x10]
movaps xmm1, xmmword [esp + ebx + 0x4c0]
movdqa xmm5, xmmword [esp + 0x40]
movaps xmm3, xmmword [esp + ebx + 0xaa0]
movaps xmm0, xmmword [esp + ebx + 0xbd0]
movaps xmm6, xmmword [esp + 0x210]
mov edi, edx
add edx, 0xc0
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x58]
movaps xmm4, xmmword [ebx + edx]
movaps xmmword [esp + 0x350], xmm1
mov edx, str._a_a_a_a_a_a_a_a_a_a_a_a_a_a_a_a
movups xmm1, xmmword [edx]
movdqa xmm2, xmm4
pminub xmm2, xmm5
pcmpgtb xmm2, xmm1
mov edx, 0x6afa90
movups xmm1, xmmword [edx]
andps xmm1, xmm2
andnps xmm2, xmm4
orps xmm1, xmm2
xorps xmm1, xmmword [esp + 0x300]
orps xmm1, xmmword [esp + 0x460]
mov dword [esp + 0x18], ecx
add ecx, 0x80
test eax, eax
mov dword [esp + 0x14], ecx
movaps xmmword [esp + 0x480], xmm3
movaps xmmword [esp + 0x240], xmm4
movaps xmmword [esp + 0x140], xmm1
mov dword [esp + 0x1c], eax
jle 0x4de6f1
movaps xmm2, xmmword [esp + 0x170]
mov esi, dword [esp + 0x5c]
movaps xmmword [esp + 0xe0], xmm2
movaps xmm2, xmmword [esp + 0x3a0]
movaps xmmword [esp + 0xf0], xmm2
movaps xmm2, xmmword [esp + 0x4a0]
pxor xmm5, xmm5
movdqa xmmword [esp + 0x3c0], xmm5
movaps xmmword [esp + 0x100], xmm2
jmp 0x4de284
movdqa xmm5, xmmword [esp + 0x3c0]
movaps xmm1, xmmword [esp + 0x140]
movaps xmm3, xmmword [esp + 0x480]
movaps xmm0, xmmword [esp + 0x3e0]
punpcklbw xmm1, xmm5
punpcklwd xmm5, xmm1
movaps xmm4, xmm0
paddw xmm0, xmm3
movdqa xmm1, xmm0
paddw xmm1, xmm3
movdqa xmm2, xmm1
paddw xmm2, xmm3
psrlw xmm1, 5
movdqa xmm7, xmm2
paddw xmm7, xmm3
psrlw xmm0, 5
psrlw xmm4, 5
movdqa xmmword [esp + 0x3e0], xmm7
movaps xmm7, xmm1
psrlw xmm2, 5
movaps xmm3, xmm4
shufps xmm3, xmm0, 0xee
shufps xmm7, xmm2, 0xee
shufps xmm3, xmm7, 0xdd
pmullw xmm3, xmm5
movaps xmmword [esp + 0x450], xmm3
movzx eax, byte [esp + 0x453]
packuswb xmm4, xmm4
movaps xmmword [esp + 0x1d0], xmm4
movaps xmm4, xmmword [esp + 0x330]
mov byte [esp + 0x1d7], al
movaps xmmword [esp + 0x420], xmm3
movzx eax, byte [esp + 0x42f]
packuswb xmm0, xmm0
packuswb xmm1, xmm1
packuswb xmm2, xmm2
movaps xmmword [esp + 0x1f0], xmm0
movaps xmmword [esp + 0x1a0], xmm1
movaps xmmword [esp + 0x1b0], xmm2
mov byte [esp + 0x1b7], al
mov eax, dword [esp + 0x18]
movaps xmm0, xmmword [eax]
movaps xmm1, xmmword [eax + 0x10]
movaps xmmword [esp + 0x400], xmm3
mov cl, byte [esp + 0x407]
movaps xmmword [esp + 0x470], xmm3
movaps xmm3, xmmword [esp + 0x310]
mov dl, byte [esp + 0x47b]
mulps xmm0, xmm3
mulps xmm1, xmm3
addps xmm0, xmm4
cvtps2dq xmm2, xmm0
addps xmm1, xmm4
cvtps2dq xmm0, xmm1
add eax, 0x20
movdqa xmm1, xmm2
packssdw xmm1, xmm2
packssdw xmm0, xmm0
mov dword [esp + 0x18], eax
punpcklwd xmm1, xmm0
mov byte [esp + 0x1f7], cl
mov byte [esp + 0x1a7], dl
movdqa xmmword [esp + 0x110], xmm1
xor eax, eax
movzx edx, byte [esp + eax + 0xf0]
mov ecx, edx
and ecx, 0xf
test dl, 0x10
je 0x4de3d8
mov cl, byte [esp + ecx + 0xe0]
mov byte [esp + eax + 0x70], cl
jmp 0x4de3e3
mov dl, byte [esp + ecx + 0x110]
mov byte [esp + eax + 0x70], dl
movzx edx, byte [esp + eax + 0xf1]
mov ecx, edx
and ecx, 0xf
test dl, 0x10
je 0x4de402
mov cl, byte [esp + ecx + 0xe0]
mov byte [esp + eax + 0x71], cl
jmp 0x4de40d
mov dl, byte [esp + ecx + 0x110]
mov byte [esp + eax + 0x71], dl
movzx edx, byte [esp + eax + 0xf2]
mov ecx, edx
and ecx, 0xf
test dl, 0x10
je 0x4de42c
mov cl, byte [esp + ecx + 0xe0]
mov byte [esp + eax + 0x72], cl
jmp 0x4de437
mov dl, byte [esp + ecx + 0x110]
mov byte [esp + eax + 0x72], dl
movzx edx, byte [esp + eax + 0xf3]
mov ecx, edx
and ecx, 0xf
test dl, 0x10
je 0x4de456
mov cl, byte [esp + ecx + 0xe0]
mov byte [esp + eax + 0x73], cl
jmp 0x4de461
mov dl, byte [esp + ecx + 0x110]
mov byte [esp + eax + 0x73], dl
add eax, 4
cmp eax, 0x10
jb 0x4de3b9
movaps xmm0, xmmword [esp + 0x70]
movaps xmmword [esp + 0xc0], xmm0
movaps xmm0, xmmword [esp + 0x240]
movaps xmmword [esp + 0xd0], xmm0
xor eax, eax
movzx edx, byte [esp + eax + 0x100]
mov ecx, edx
and ecx, 0xf
test dl, 0x10
je 0x4de4ae
mov cl, byte [esp + ecx + 0xd0]
mov byte [esp + eax + 0x80], cl
jmp 0x4de4bc
mov dl, byte [esp + ecx + 0xc0]
mov byte [esp + eax + 0x80], dl
movzx edx, byte [esp + eax + 0x101]
mov ecx, edx
and ecx, 0xf
test dl, 0x10
je 0x4de4de
mov cl, byte [esp + ecx + 0xd0]
mov byte [esp + eax + 0x81], cl
jmp 0x4de4ec
mov dl, byte [esp + ecx + 0xc0]
mov byte [esp + eax + 0x81], dl
movzx edx, byte [esp + eax + 0x102]
mov ecx, edx
and ecx, 0xf
test dl, 0x10
je 0x4de50e
mov cl, byte [esp + ecx + 0xd0]
mov byte [esp + eax + 0x82], cl
jmp 0x4de51c
mov dl, byte [esp + ecx + 0xc0]
mov byte [esp + eax + 0x82], dl
movzx edx, byte [esp + eax + 0x103]
mov ecx, edx
and ecx, 0xf
test dl, 0x10
je 0x4de53e
mov cl, byte [esp + ecx + 0xd0]
mov byte [esp + eax + 0x83], cl
jmp 0x4de54c
mov dl, byte [esp + ecx + 0xc0]
mov byte [esp + eax + 0x83], dl
add eax, 4
cmp eax, 0x10
jb 0x4de48c
movaps xmm1, xmmword [0xaac490]
movaps xmm2, xmmword [edi]
movaps xmm4, xmmword [edi + 0x20]
movaps xmm3, xmmword [edi + 0x10]
addps xmm3, xmmword [esp + 0x350]
psrldq xmm0, 4
movdqa xmmword [esp + 0x240], xmm0
movdqa xmm0, xmmword [esp + 0x140]
psrldq xmm0, 4
movdqa xmmword [esp + 0x140], xmm0
movaps xmm5, xmmword [esp + 0x1a0]
movaps xmm0, xmm1
mulps xmm0, xmm2
addps xmm0, xmmword [esp + 0x270]
movaps xmm2, xmm1
mulps xmm2, xmm3
addps xmm2, xmmword [esp + 0x290]
mulps xmm1, xmm4
addps xmm1, xmmword [esp + 0x2b0]
movaps xmm3, xmm1
movaps xmm1, xmm0
shufps xmm0, xmm2, 0xee
shufps xmm1, xmm2, 0x44
movaps xmm2, xmm3
shufps xmm2, xmm6, 0x44
movaps xmm4, xmm1
shufps xmm4, xmm2, 0x88
shufps xmm1, xmm2, 0xdd
movaps xmm2, xmm0
shufps xmm3, xmm6, 0xee
shufps xmm2, xmm3, 0x88
shufps xmm0, xmm3, 0xdd
mov eax, dword [esp + 0x1c]
cvtps2dq xmm2, xmm2
cvtps2dq xmm0, xmm0
packssdw xmm2, xmm2
packssdw xmm0, xmm0
addps xmm6, xmmword [esp + 0x230]
movdqa xmmword [esp + 0x370], xmm2
movdqa xmm2, xmm0
movaps xmm0, xmmword [esp + 0x80]
cvtps2dq xmm4, xmm4
packssdw xmm4, xmm4
shufps xmm4, xmm0, 0x44
cvtps2dq xmm1, xmm1
packssdw xmm1, xmm1
movaps xmm3, xmm4
movaps xmm4, xmm1
shufps xmm1, xmm0, 0x55
shufps xmm4, xmm1, 0xc0
movaps xmm1, xmm5
shufps xmm5, xmm2, 5
movaps xmmword [esp + 0x190], xmm2
movaps xmm2, xmmword [esp + 0x1b0]
shufps xmm1, xmm5, 0xc0
movaps xmm5, xmm0
shufps xmm5, xmm2, 0x4f
movaps xmm2, xmmword [esp + 0x1d0]
movaps xmm7, xmm3
shufps xmm3, xmm2, 0xa
shufps xmm7, xmm3, 0x84
movaps xmmword [esi], xmm7
movaps xmm3, xmm4
shufps xmm3, xmm2, 0x55
movaps xmm2, xmmword [esp + 0x1f0]
shufps xmm2, xmmword [esp + 0x370], 0x44
shufps xmm0, xmm1, 0x5a
shufps xmm0, xmm1, 0xec
shufps xmm3, xmm4, 0xe2
movaps xmmword [esi + 0x10], xmm3
movaps xmmword [esi + 0x20], xmm2
movaps xmmword [esi + 0x30], xmm0
movaps xmm0, xmm5
shufps xmm0, xmmword [esp + 0x190], 0x55
shufps xmm0, xmm5, 0xe2
sub eax, 1
movaps xmmword [esi + 0x40], xmm0
add edi, 0x30
add esi, 0x50
mov dword [esp + 0x1c], eax
test eax, eax
jg 0x4de263
movaps xmm7, xmmword [esp + 0x120]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x5c], esi
mov esi, dword [esp + 0x20]
movdqa xmm1, xmmword [esp + 0x170]
movups xmm0, xmmword [esp + 0x130]
add ebx, 0x10
sub dword [esp + 0x54], 1
psubw xmm1, xmm0
movdqa xmmword [esp + 0x170], xmm1
jne 0x4de173
cmp dword [esp + 0x24], 1
jne 0x4de74c
mov eax, dword [ebp + 8]
fld dword [eax + 0x1c]
fmul st(2)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + 0x10]
movss xmm2, dword [esp + 0x10]
shufps xmm2, xmm2, 0
movaps xmmword [esp + 0x180], xmm2
jmp 0x4de754
movaps xmm2, xmmword [esp + 0x180]
movaps xmm1, xmmword [esp + 0x160]
movaps xmm0, xmmword [0xaac360]
movaps xmm4, xmmword [esp + 0xb0]
mov ecx, 0x4c
sub ecx, dword [esp + 0x30]
mulps xmm0, xmm2
addps xmm0, xmm1
mov dword [esp + 0x30], ecx
movaps xmmword [esp + 0x210], xmm0
movaps xmm0, xmmword [0xaac370]
mov ecx, 0x30
add dword [esi + 0x10], ecx
add dword [esi + 0x18], ecx
mov eax, dword [esi + 0x10]
mov ecx, dword [esp + 0x58]
movzx eax, byte [eax + 0x14]
mov edx, 0x54
sub edx, dword [esp + 0x34]
mulps xmm0, xmm2
movaps xmmword [esp + 0x230], xmm0
push ecx
mov dword [esp + 0x38], edx
mov edx, dword [ebp + 0x18]
movaps xmm0, xmm4
addps xmm0, xmm1
movaps xmm1, xmm0
push edx
lea ecx, [esi + 0x2c]
movaps xmmword [esp + 0x168], xmm1
call fcn.004dba50
lea eax, [esi + 0x28]
mov esi, dword [esi + 0x14]
lea ecx, [esi + 2]
add esp, 8
test ecx, ecx
jbe 0x4de7f4
add dword [eax], 0x10
add eax, 4
sub ecx, 1
jne 0x4de7e9
sub dword [esp + 0x24], 1
jns 0x4dd953
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x2c]
mov edi, dword [esp + 0x30]
jmp 0x4de82d
movaps xmm7, xmmword [esp + 0x120]
movaps xmm2, xmmword [esp + 0x180]
movaps xmm1, xmmword [esp + 0x160]
movaps xmm4, xmmword [esp + 0xb0]
test ecx, ecx
fstp st(0)
fstp st(0)
je 0x4deab3
mov ecx, dword [ebx + 0x14]
lea eax, [ecx - 1]
test eax, eax
mov dword [esp + 0x38], eax
fild dword [esp + 0x38]
movss dword [esp + 0x150], xmm2
jge 0x4de85a
fadd dword [0x6f9a18]
fmul dword [esp + 0x150]
movss xmm0, dword [0x6e5b14]
mov edx, dword [ebx + 0x10]
mov eax, dword [esp + 0x90]
fstp dword [esp + 0x38]
subps xmm1, xmm4
movss xmm3, dword [esp + 0x38]
unpcklps xmm3, xmm0
unpcklps xmm0, xmm0
shufps xmm3, xmm0, 0x44
movaps xmm0, xmmword [edx + 0x20]
mov edx, dword [esp + 0x94]
movdqa xmm2, xmm0
psllw xmm0, 9
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x98]
subps xmm1, xmm4
movdqa xmm4, xmm0
movaps xmm0, xmmword [0xaac4b0]
mov dword [esp + 0xa4], edx
mov edx, dword [esp + 0x9c]
mov dword [esp + 0xa8], eax
addps xmm3, xmm1
movaps xmm1, xmm0
psllw xmm2, 5
andps xmm1, xmm2
lea eax, [edi + edi*2]
andps xmm0, xmm4
mov dword [esp + 0xac], edx
mov edx, dword [esp + 0x58]
shl eax, 4
test ecx, ecx
psubw xmm0, xmm1
psraw xmm0, xmm7
movdqa xmm2, xmm1
movdqa xmmword [esp + 0x150], xmm0
psrlw xmm2, 5
lea eax, [esp + eax + 0x1280]
mov dword [esp + 0x1c], edx
lea edi, [esp + 0x2e40]
jbe 0x4deab3
movups xmm0, xmmword [esp + 0x130]
mov esi, dword [esp + 0x5c]
movups xmmword [esp + 0x190], xmm0
mov dword [esp + 0x2c], ecx
movaps xmm0, xmmword [0xaac460]
movaps xmm4, xmmword [edi]
movaps xmm5, xmmword [edi + 0x10]
movaps xmm6, xmm0
mulps xmm0, xmm5
movaps xmm5, xmmword [eax + 0x10]
mulps xmm6, xmm4
movaps xmm4, xmmword [0xaac4a0]
addps xmm0, xmm4
cvtps2dq xmm0, xmm0
movss dword [esp + 0x3f0], xmm0
movss xmm0, dword [esp + 0x3f0]
addps xmm6, xmm4
movss dword [esp + 0x10], xmm0
movaps xmm0, xmmword [0xaac490]
movaps xmm7, xmm0
cvtps2dq xmm6, xmm6
movss dword [esp + 0x3d0], xmm6
movss xmm4, dword [esp + 0x3d0]
movaps xmm6, xmmword [eax + 0x20]
movss dword [esp + 0x38], xmm4
movaps xmm4, xmmword [eax]
mulps xmm7, xmm4
addps xmm7, xmmword [esp + 0x270]
movaps xmm4, xmm0
movzx ebx, byte [esp + 0x10]
mulps xmm4, xmm5
addps xmm4, xmmword [esp + 0x290]
shufps xmm7, xmm4, 0x44
movaps xmm4, xmmword [0xaac390]
packuswb xmm2, xmm4
movdqa xmmword [esp + 0xb0], xmm2
mov edx, dword [esp + 0xb0]
mov dword [esi + 0xc], edx
mov edx, dword [esp + 0xb4]
mov dword [esi + 0x10], edx
xor edx, edx
mov dh, byte [esp + 0xa0]
paddw xmm1, xmmword [esp + 0x150]
mulps xmm0, xmm6
addps xmm0, xmmword [esp + 0x2b0]
shufps xmm0, xmm3, 0x44
shufps xmm7, xmm0, 0x88
cvtps2dq xmm0, xmm7
mov dl, byte [esp + 0x38]
packssdw xmm0, xmm0
movss dword [esp + 0x410], xmm0
movss xmm4, dword [esp + 0x410]
shufps xmm0, xmm0, 0x55
movss dword [esp + 0x430], xmm0
movss xmm0, dword [esp + 0x430]
shl edx, 8
or edx, ebx
mov ebx, dword [esp + 0x1c]
add dword [esp + 0x1c], 0x10
movss dword [esi + 4], xmm0
movups xmm0, xmmword [esp + 0xa0]
psubw xmm0, xmmword [esp + 0x190]
movss dword [esi], xmm4
movzx ebx, byte [ebx]
shl edx, 8
or edx, ebx
mov dword [esi + 8], edx
add edi, 0x80
add eax, 0xc0
sub dword [esp + 0x2c], 1
lea edx, [ecx + ecx*4]
movdqa xmm2, xmm1
psrlw xmm2, 5
movdqa xmmword [esp + 0xa0], xmm0
lea esi, [esi + edx*4 - 0x14]
jne 0x4de93d
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret