Function at 0x403ac8
Capabilities:
Enumerate pe sections
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x4c
movaps xmm3, xmm2
mulps xmm0, xmm0
mulps xmm1, xmm2
movq mm4, mm1
movq mm4, mm1
subps xmm2, xmm1
divps xmm1, xmm2
divps xmm1, xmm2
addps xmm2, xmm0
divps xmm1, xmm2
subps xmm2, xmm1
movss xmm0, xmm2
movq mm4, mm1
sqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
mulps xmm1, xmm0
movaps xmm1, xmm0
rsqrtps xmm0, xmm0
mulps xmm3, xmm1
subps xmm0, xmm1
mulps xmm3, xmm1
rsqrtss xmm2, xmm2
movq mm4, mm1
mulps xmm2, xmm0
addss xmm2, xmm0
mulps xmm3, xmm1
movq mm2, mm0
addss xmm2, xmm0
mulps xmm0, xmm0
addss xmm2, xmm0
mov eax, dword [ebp + 8]
cmp word [eax], 0x5a4d
je 0x403bb5
movq mm4, mm1
movss xmm0, xmm2
rsqrtss xmm2, xmm2
mulps xmm1, xmm2
movss xmm0, xmm2
movhlps xmm2, xmm0
shufps xmm2, xmm2, 0x55
mulps xmm1, xmm2
subps xmm2, xmm1
addss xmm2, xmm0
movhlps xmm2, xmm0
mulps xmm3, xmm1
mulps xmm1, xmm0
mulps xmm2, xmm0
mulps xmm0, xmm0
divps xmm1, xmm2
subps xmm2, xmm1
subps xmm0, xmm1
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0
movq mm2, mm0
rsqrtss xmm2, xmm2
movaps xmm3, xmm2
subps xmm2, xmm1
mulps xmm1, xmm2
movaps xmm1, xmm0
mulps xmm0, xmm0
movq mm2, mm0
addps xmm2, xmm0
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
mulps xmm1, xmm2
movq mm4, mm1
movhlps xmm2, xmm0
movhlps xmm2, xmm0
rsqrtps xmm0, xmm0
jmp 0x405d12
shufps xmm2, xmm2, 0x55
subps xmm2, xmm1
rsqrtss xmm2, xmm2
movaps xmm3, xmm2
divps xmm1, xmm2
addss xmm2, xmm0
addps xmm2, xmm0
shufps xmm2, xmm2, 0x55
addps xmm2, xmm0
rsqrtps xmm0, xmm0
addps xmm2, xmm0
subps xmm0, xmm1
shufps xmm2, xmm2, 0x55
rsqrtps xmm0, xmm0
movq mm4, mm1
mulps xmm2, xmm0
mulps xmm1, xmm0
rsqrtps xmm0, xmm0
rsqrtss xmm2, xmm2
mulps xmm2, xmm0
addss xmm2, xmm0
movq mm4, mm1
mulps xmm0, xmm0
mulps xmm1, xmm2
mulps xmm3, xmm1
rsqrtps xmm0, xmm0
rsqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0x55
movss xmm0, xmm2
movq mm4, mm1
movq mm4, mm1
mov edx, dword [ebp + 8]
add edx, dword [edx + 0x3c]
mov dword [ebp - 0x30], edx
movhlps xmm2, xmm0
divps xmm1, xmm2
subps xmm0, xmm1
movaps xmm3, xmm2
subps xmm2, xmm1
mulps xmm1, xmm0
mulps xmm1, xmm0
movaps xmm3, xmm2
shufps xmm2, xmm2, 0
mulps xmm3, xmm1
subps xmm2, xmm1
movaps xmm3, xmm2
haddps xmm0, xmm0
movss xmm0, xmm2
shufps xmm2, xmm2, 0x55
movq mm4, mm1
haddps xmm0, xmm0
cmp dword [edx], 0x4550
je 0x403cd1
rsqrtss xmm2, xmm2
mulps xmm0, xmm0
movss xmm0, xmm2
movq mm2, mm0
haddps xmm0, xmm0
mulps xmm0, xmm0
mulps xmm1, xmm2
addss xmm2, xmm0
subps xmm2, xmm1
movhlps xmm2, xmm0
mulps xmm3, xmm1
mulps xmm1, xmm0
mulps xmm3, xmm1
rsqrtps xmm0, xmm0
movss xmm0, xmm2
movaps xmm3, xmm2
subps xmm2, xmm1
divps xmm1, xmm2
mulps xmm3, xmm1
movss xmm0, xmm2
movss xmm0, xmm2
movq mm2, mm0
movss xmm0, xmm2
addps xmm2, xmm0
addps xmm2, xmm0
movaps xmm3, xmm2
movaps xmm3, xmm2
shufps xmm2, xmm2, 0x55
movq mm2, mm0
jmp 0x405d12
addss xmm2, xmm0
movaps xmm1, xmm0
movq mm2, mm0
rsqrtps xmm0, xmm0
divps xmm1, xmm2
subps xmm0, xmm1
movaps xmm1, xmm0
subps xmm0, xmm1
movq mm4, mm1
movq mm2, mm0
rsqrtps xmm0, xmm0
rsqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
haddps xmm0, xmm0
mulps xmm3, xmm1
subps xmm2, xmm1
addps xmm2, xmm0
shufps xmm2, xmm2, 0
mulps xmm1, xmm0
mulps xmm2, xmm0
subps xmm2, xmm1
shufps xmm2, xmm2, 0
movaps xmm3, xmm2
mulps xmm3, xmm1
movaps xmm3, xmm2
mulps xmm0, xmm0
mulps xmm3, xmm1
subps xmm2, xmm1
haddps xmm0, xmm0
rsqrtss xmm2, xmm2
mulps xmm0, xmm0
movaps xmm1, xmm0
shufps xmm2, xmm2, 0x55
mov ecx, dword [ebp - 0x30]
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0x2000
mov eax, dword [ecx + 0x50]
mov dword [esp + 4], eax
mov eax, dword [ecx + 0x34]
mov dword [esp], eax
call fcn.0040b5ec
sub esp, 0x10
mov dword [ebp - 0x38], eax
shufps xmm2, xmm2, 0x55
mulps xmm1, xmm0
movaps xmm1, xmm0
shufps xmm2, xmm2, 0
movaps xmm3, xmm2
subps xmm0, xmm1
divps xmm1, xmm2
addss xmm2, xmm0
sqrtss xmm2, xmm2
divps xmm1, xmm2
subps xmm0, xmm1
subps xmm0, xmm1
movq mm4, mm1
shufps xmm2, xmm2, 0x55
subps xmm2, xmm1
mulps xmm1, xmm0
mulps xmm0, xmm0
subps xmm0, xmm1
shufps xmm2, xmm2, 0
rsqrtps xmm0, xmm0
movss xmm0, xmm2
sqrtss xmm2, xmm2
test eax, eax
jne 0x403ee6
rsqrtss xmm2, xmm2
mulps xmm3, xmm1
mulps xmm0, xmm0
subps xmm0, xmm1
subps xmm0, xmm1
movq mm2, mm0
mulps xmm1, xmm0
subps xmm0, xmm1
addps xmm2, xmm0
haddps xmm0, xmm0
mulps xmm0, xmm0
sqrtss xmm2, xmm2
movq mm3, mm1
mulps xmm1, xmm2
movq mm2, mm0
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0x55
mulps xmm2, xmm0
shufps xmm2, xmm2, 0
shufps xmm2, xmm2, 0
mulps xmm1, xmm0
subps xmm0, xmm1
movaps xmm1, xmm0
mov ebx, dword [ebp - 0x30]
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0x2000
mov eax, dword [ebx + 0x50]
mov dword [esp], 0
mov dword [esp + 4], eax
call fcn.0040b5ec
sub esp, 0x10
mov dword [ebp - 0x38], eax
movaps xmm3, xmm2
subps xmm2, xmm1
mulps xmm1, xmm0
movaps xmm1, xmm0
addss xmm2, xmm0
rsqrtps xmm0, xmm0
movaps xmm3, xmm2
mulps xmm3, xmm1
mulps xmm2, xmm0
movq mm3, mm1
shufps xmm2, xmm2, 0x55
addps xmm2, xmm0
mulps xmm1, xmm2
subps xmm0, xmm1
mulps xmm2, xmm0
subps xmm0, xmm1
mulps xmm1, xmm2
test eax, eax
jne 0x403eb6
rsqrtps xmm0, xmm0
shufps xmm2, xmm2, 0
addss xmm2, xmm0
movaps xmm1, xmm0
subps xmm0, xmm1
mulps xmm2, xmm0
movss xmm0, xmm2
shufps xmm2, xmm2, 0x55
movq mm2, mm0
divps xmm1, xmm2
shufps xmm2, xmm2, 0
sqrtss xmm2, xmm2
movq mm4, mm1
movaps xmm1, xmm0
shufps xmm2, xmm2, 0x55
subps xmm2, xmm1
movq mm2, mm0
movss xmm0, xmm2
movaps xmm3, xmm2
mulps xmm0, xmm0
movq mm4, mm1
jmp 0x405d14
mulps xmm3, xmm1
mulps xmm3, xmm1
mulps xmm0, xmm0
rsqrtps xmm0, xmm0
rsqrtps xmm0, xmm0
shufps xmm2, xmm2, 0
mulps xmm2, xmm0
movq mm4, mm1
addss xmm2, xmm0
rsqrtss xmm2, xmm2
mulps xmm2, xmm0
rsqrtps xmm0, xmm0
mulps xmm2, xmm0
subps xmm2, xmm1
subps xmm2, xmm1
movaps xmm3, xmm2
rsqrtss xmm2, xmm2
shufps xmm2, xmm2, 0
rsqrtss xmm2, xmm2
haddps xmm0, xmm0
movss xmm0, xmm2
addss xmm2, xmm0
sqrtss xmm2, xmm2
addps xmm2, xmm0
shufps xmm2, xmm2, 0x55
rsqrtss xmm2, xmm2
movq mm3, mm1
shufps xmm2, xmm2, 0
movaps xmm1, xmm0
call fcn.0040b5d4
mov dword [esp + 8], 0x14
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0040b5dc
sub esp, 0xc
mov ebx, eax
rsqrtps xmm0, xmm0
shufps xmm2, xmm2, 0x55
rsqrtss xmm2, xmm2
movaps xmm3, xmm2
haddps xmm0, xmm0
rsqrtps xmm0, xmm0
subps xmm2, xmm1
movq mm4, mm1
shufps xmm2, xmm2, 0x55
sqrtss xmm2, xmm2
subps xmm0, xmm1
haddps xmm0, xmm0
movaps xmm1, xmm0
subps xmm0, xmm1
mov eax, dword [ebp - 0x38]
mov dword [ebx + 4], eax
mulps xmm0, xmm0
mulps xmm3, xmm1
mulps xmm3, xmm1
movq mm2, mm0
movaps xmm1, xmm0
mulps xmm1, xmm0
movaps xmm1, xmm0
addps xmm2, xmm0
rsqrtps xmm0, xmm0
mulps xmm1, xmm0
movaps xmm3, xmm2
rsqrtss xmm2, xmm2
mulps xmm3, xmm1
rsqrtss xmm2, xmm2
movss xmm0, xmm2
subps xmm0, xmm1
movq mm4, mm1
mov dword [ebx + 0xc], 0
movss xmm0, xmm2
subps xmm2, xmm1
haddps xmm0, xmm0
movq mm2, mm0
subps xmm2, xmm1
rsqrtss xmm2, xmm2
addps xmm2, xmm0
movaps xmm1, xmm0
addps xmm2, xmm0
movaps xmm3, xmm2
mulps xmm2, xmm0
rsqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
mulps xmm1, xmm0
mulps xmm1, xmm2
divps xmm1, xmm2
movq mm4, mm1
rsqrtss xmm2, xmm2
movq mm3, mm1
movq mm3, mm1
subps xmm2, xmm1
movq mm2, mm0
mulps xmm3, xmm1
rsqrtps xmm0, xmm0
mov dword [ebx + 8], 0
addps xmm2, xmm0
movq mm4, mm1
haddps xmm0, xmm0
divps xmm1, xmm2
shufps xmm2, xmm2, 0
haddps xmm0, xmm0
movq mm4, mm1
shufps xmm2, xmm2, 0
haddps xmm0, xmm0
shufps xmm2, xmm2, 0x55
movaps xmm3, xmm2
rsqrtss xmm2, xmm2
movq mm2, mm0
mulps xmm3, xmm1
subps xmm2, xmm1
mov dword [ebx + 0x10], 0
movhlps xmm2, xmm0
rsqrtss xmm2, xmm2
subps xmm0, xmm1
addss xmm2, xmm0
shufps xmm2, xmm2, 0x55
movq mm3, mm1
mulps xmm3, xmm1
mulps xmm2, xmm0
addps xmm2, xmm0
mulps xmm3, xmm1
mulps xmm3, xmm1
movaps xmm1, xmm0
movq mm2, mm0
mulps xmm3, xmm1
movaps xmm1, xmm0
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0x1000
mov eax, dword [edx + 0x50]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0040b5ec
sub esp, 0x10
movaps xmm1, xmm0
movaps xmm1, xmm0
haddps xmm0, xmm0
addss xmm2, xmm0
mulps xmm1, xmm2
movq mm4, mm1
movhlps xmm2, xmm0
mulps xmm1, xmm2
mulps xmm2, xmm0
divps xmm1, xmm2
rsqrtps xmm0, xmm0
subps xmm2, xmm1
movq mm2, mm0
movss xmm0, xmm2
movhlps xmm2, xmm0
mulps xmm1, xmm0
mulps xmm2, xmm0
rsqrtss xmm2, xmm2
mulps xmm1, xmm2
rsqrtss xmm2, xmm2
subps xmm2, xmm1
subps xmm2, xmm1
shufps xmm2, xmm2, 0
shufps xmm2, xmm2, 0x55
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x38]
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0x1000
mov eax, dword [edx + 0x54]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0040b5ec
sub esp, 0x10
haddps xmm0, xmm0
movhlps xmm2, xmm0
mulps xmm2, xmm0
mulps xmm3, xmm1
rsqrtss xmm2, xmm2
movss xmm0, xmm2
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
rsqrtps xmm0, xmm0
mulps xmm0, xmm0
movhlps xmm2, xmm0
mulps xmm0, xmm0
addps xmm2, xmm0
mulps xmm3, xmm1
mulps xmm3, xmm1
movq mm4, mm1
rsqrtss xmm2, xmm2
shufps xmm2, xmm2, 0
shufps xmm2, xmm2, 0x55
movq mm4, mm1
mulps xmm0, xmm0
mov edx, dword [ebp + 8]
mov edi, eax
mov esi, dword [ebp + 8]
mov ecx, dword [edx + 0x3c]
mov edx, dword [ebp - 0x30]
add ecx, dword [edx + 0x54]
rep movsb byte es:[edi], byte [esi]
subps xmm0, xmm1
mulps xmm3, xmm1
rsqrtss xmm2, xmm2
movq mm2, mm0
mulps xmm1, xmm2
sqrtss xmm2, xmm2
mulps xmm2, xmm0
movaps xmm1, xmm0
movss xmm0, xmm2
mulps xmm2, xmm0
rsqrtss xmm2, xmm2
addss xmm2, xmm0
movhlps xmm2, xmm0
mulps xmm1, xmm0
mov ecx, dword [ebp + 8]
add eax, dword [ecx + 0x3c]
mov dword [ebx], eax
movhlps xmm2, xmm0
subps xmm0, xmm1
subps xmm2, xmm1
addps xmm2, xmm0
rsqrtss xmm2, xmm2
movq mm4, mm1
mulps xmm1, xmm2
mulps xmm1, xmm2
movhlps xmm2, xmm0
movq mm3, mm1
rsqrtps xmm0, xmm0
mulps xmm0, xmm0
movss xmm0, xmm2
subps xmm2, xmm1
sqrtss xmm2, xmm2
mulps xmm1, xmm0
movaps xmm1, xmm0
mov edx, dword [ebp - 0x38]
mov dword [eax + 0x34], edx
movq mm2, mm0
divps xmm1, xmm2
sqrtss xmm2, xmm2
mulps xmm0, xmm0
movaps xmm3, xmm2
haddps xmm0, xmm0
subps xmm2, xmm1
subps xmm2, xmm1
rsqrtss xmm2, xmm2
mulps xmm0, xmm0
addps xmm2, xmm0
movq mm3, mm1
movq mm4, mm1
sqrtss xmm2, xmm2
sqrtss xmm2, xmm2
movzx edx, word [eax + 0x14]
mov ecx, dword [ebx + 4]
lea edx, [eax + edx + 0x18]
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x2c], edx
addss xmm2, xmm0
movaps xmm3, xmm2
subps xmm0, xmm1
movaps xmm1, xmm0
movq mm4, mm1
mulps xmm1, xmm2
addps xmm2, xmm0
mulps xmm0, xmm0
movss xmm0, xmm2
addss xmm2, xmm0
rsqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
mulps xmm1, xmm0
mulps xmm3, xmm1
shufps xmm2, xmm2, 0x55
movss xmm0, xmm2
addps xmm2, xmm0
movq mm3, mm1
movaps xmm1, xmm0
rsqrtss xmm2, xmm2
addps xmm2, xmm0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x44], ebx
jmp 0x4045a8
mulps xmm3, xmm1
movq mm4, mm1
movaps xmm1, xmm0
movq mm3, mm1
haddps xmm0, xmm0
mulps xmm1, xmm0
mulps xmm0, xmm0
movss xmm0, xmm2
haddps xmm0, xmm0
rsqrtss xmm2, xmm2
mulps xmm1, xmm2
movaps xmm1, xmm0
haddps xmm0, xmm0
movss xmm0, xmm2
movq mm4, mm1
addps xmm2, xmm0
subps xmm2, xmm1
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx + 0x10]
test eax, eax
jne 0x404460
movq mm3, mm1
sqrtss xmm2, xmm2
subps xmm2, xmm1
subps xmm0, xmm1
addps xmm2, xmm0
mulps xmm0, xmm0
mulps xmm3, xmm1
subps xmm0, xmm1
haddps xmm0, xmm0
shufps xmm2, xmm2, 0x55
movss xmm0, xmm2
movaps xmm3, xmm2
movq mm2, mm0
rsqrtss xmm2, xmm2
haddps xmm0, xmm0
divps xmm1, xmm2
subps xmm2, xmm1
mulps xmm0, xmm0
subps xmm2, xmm1
mulps xmm2, xmm0
shufps xmm2, xmm2, 0x55
haddps xmm0, xmm0
mov eax, dword [ebp - 0x30]
mov ebx, dword [eax + 0x38]
movaps xmm1, xmm0
movaps xmm1, xmm0
mulps xmm1, xmm2
movhlps xmm2, xmm0
movq mm3, mm1
sqrtss xmm2, xmm2
addps xmm2, xmm0
subps xmm2, xmm1
rsqrtss xmm2, xmm2
addss xmm2, xmm0
addss xmm2, xmm0
movq mm2, mm0
test ebx, ebx
jle 0x4045a1
mulps xmm2, xmm0
mulps xmm2, xmm0
divps xmm1, xmm2
movq mm4, mm1
movq mm4, mm1
movq mm4, mm1
mulps xmm0, xmm0
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0
mulps xmm0, xmm0
mulps xmm1, xmm0
movaps xmm1, xmm0
movq mm4, mm1
mulps xmm1, xmm0
subps xmm2, xmm1
mulps xmm2, xmm0
mulps xmm1, xmm0
movaps xmm1, xmm0
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x40]
mov dword [esp + 4], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0x1000
add eax, dword [edx + 0xc]
mov dword [esp], eax
call fcn.0040b5ec
sub esp, 0x10
rsqrtss xmm2, xmm2
movq mm4, mm1
mulps xmm1, xmm2
addss xmm2, xmm0
mulps xmm1, xmm2
mulps xmm3, xmm1
rsqrtss xmm2, xmm2
movss xmm0, xmm2
shufps xmm2, xmm2, 0
sqrtss xmm2, xmm2
movaps xmm3, xmm2
mulps xmm3, xmm1
movhlps xmm2, xmm0
subps xmm2, xmm1
movq mm2, mm0
movss xmm0, xmm2
mulps xmm2, xmm0
mulps xmm0, xmm0
shufps xmm2, xmm2, 0x55
divps xmm1, xmm2
movhlps xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 8], eax
rsqrtps xmm0, xmm0
divps xmm1, xmm2
mulps xmm1, xmm0
divps xmm1, xmm2
divps xmm1, xmm2
movq mm3, mm1
rsqrtps xmm0, xmm0
haddps xmm0, xmm0
rsqrtps xmm0, xmm0
addss xmm2, xmm0
rsqrtss xmm2, xmm2
shufps xmm2, xmm2, 0
sqrtss xmm2, xmm2
movss xmm0, xmm2
rsqrtps xmm0, xmm0
mulps xmm1, xmm2
movq mm2, mm0
divps xmm1, xmm2
haddps xmm0, xmm0
shufps xmm2, xmm2, 0
movq mm2, mm0
movaps xmm1, xmm0
mov edi, eax
mov ecx, ebx
xor eax, eax
rep stosb byte es:[edi], al
shufps xmm2, xmm2, 0
shufps xmm2, xmm2, 0
rsqrtps xmm0, xmm0
movhlps xmm2, xmm0
movaps xmm1, xmm0
movq mm4, mm1
sqrtss xmm2, xmm2
movq mm3, mm1
subps xmm2, xmm1
addps xmm2, xmm0
mulps xmm3, xmm1
jmp 0x4045a1
subps xmm2, xmm1
mulps xmm2, xmm0
divps xmm1, xmm2
subps xmm2, xmm1
subps xmm2, xmm1
movhlps xmm2, xmm0
divps xmm1, xmm2
movaps xmm1, xmm0
subps xmm2, xmm1
movq mm4, mm1
subps xmm0, xmm1
movaps xmm1, xmm0
shufps xmm2, xmm2, 0x55
movq mm3, mm1
mulps xmm1, xmm2
movhlps xmm2, xmm0
movhlps xmm2, xmm0
movq mm4, mm1
mov edx, dword [ebp - 0x2c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x40]
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0x1000
add eax, dword [edx + 0xc]
mov dword [esp], eax
call fcn.0040b5ec
sub esp, 0x10
mulps xmm2, xmm0
addps xmm2, xmm0
shufps xmm2, xmm2, 0x55
movss xmm0, xmm2
divps xmm1, xmm2
rsqrtss xmm2, xmm2
rsqrtss xmm2, xmm2
mulps xmm2, xmm0
divps xmm1, xmm2
haddps xmm0, xmm0
movq mm2, mm0
movss xmm0, xmm2
mulps xmm0, xmm0
haddps xmm0, xmm0
mulps xmm3, xmm1
movq mm4, mm1
movq mm4, mm1
shufps xmm2, xmm2, 0x55
mulps xmm1, xmm2
rsqrtps xmm0, xmm0
haddps xmm0, xmm0
movq mm3, mm1
mulps xmm1, xmm0
mulps xmm1, xmm2
mov ecx, dword [ebp - 0x2c]
mov edi, eax
mov esi, dword [ebp + 8]
add esi, dword [ecx + 0x14]
mov ebx, ecx
mov ecx, dword [ecx + 0x10]
rep movsb byte es:[edi], byte [esi]
sqrtss xmm2, xmm2
mulps xmm2, xmm0
movaps xmm1, xmm0
addss xmm2, xmm0
subps xmm0, xmm1
addps xmm2, xmm0
divps xmm1, xmm2
rsqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
mulps xmm2, xmm0
movaps xmm3, xmm2
addss xmm2, xmm0
mulps xmm1, xmm2
shufps xmm2, xmm2, 0x55
movhlps xmm2, xmm0
mulps xmm1, xmm2
movaps xmm3, xmm2
mov dword [ebx + 8], eax
movss xmm0, xmm2
movq mm3, mm1
rsqrtps xmm0, xmm0
addss xmm2, xmm0
mulps xmm0, xmm0
movss xmm0, xmm2
movss xmm0, xmm2
haddps xmm0, xmm0
movss xmm0, xmm2
addps xmm2, xmm0
subps xmm0, xmm1
subps xmm0, xmm1
movq mm2, mm0
subps xmm2, xmm1
addps xmm2, xmm0
divps xmm1, xmm2
addss xmm2, xmm0
rsqrtss xmm2, xmm2
mulps xmm2, xmm0
subps xmm0, xmm1
inc dword [ebp - 0x3c]
add dword [ebp - 0x2c], 0x28
mov edx, dword [ebp - 0x44]
mov eax, dword [edx]
movzx edx, word [eax + 6]
cmp dword [ebp - 0x3c], edx
jl 0x404271
mov ebx, dword [ebp - 0x44]
subps xmm2, xmm1
movaps xmm3, xmm2
mulps xmm3, xmm1
movq mm4, mm1
sqrtss xmm2, xmm2
divps xmm1, xmm2
movss xmm0, xmm2
addss xmm2, xmm0
movq mm4, mm1
mulps xmm1, xmm0
subps xmm2, xmm1
addss xmm2, xmm0
mulps xmm3, xmm1
mulps xmm0, xmm0
rsqrtss xmm2, xmm2
sqrtss xmm2, xmm2
subps xmm2, xmm1
mulps xmm2, xmm0
mulps xmm2, xmm0
movss xmm0, xmm2
movss xmm0, xmm2
movss xmm0, xmm2
movhlps xmm2, xmm0
movss xmm0, xmm2
rsqrtss xmm2, xmm2
movhlps xmm2, xmm0
movaps xmm1, xmm0
movss xmm0, xmm2
movq mm4, mm1
mulps xmm2, xmm0
movaps xmm3, xmm2
mulps xmm2, xmm0
mulps xmm1, xmm0
movhlps xmm2, xmm0
mulps xmm3, xmm1
rsqrtps xmm0, xmm0
mulps xmm0, xmm0
addss xmm2, xmm0
movhlps xmm2, xmm0
movss xmm0, xmm2
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x38]
sub esi, dword [ecx + 0x34]
subps xmm2, xmm1
subps xmm2, xmm1
mulps xmm2, xmm0
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
divps xmm1, xmm2
subps xmm0, xmm1
mulps xmm2, xmm0
subps xmm2, xmm1
sqrtss xmm2, xmm2
mulps xmm1, xmm0
mulps xmm1, xmm0
movq mm2, mm0
rsqrtps xmm0, xmm0
movaps xmm3, xmm2
subps xmm0, xmm1
mulps xmm1, xmm0
movhlps xmm2, xmm0
movq mm2, mm0
movq mm3, mm1
divps xmm1, xmm2
subps xmm2, xmm1
test esi, esi
je 0x404a37
subps xmm2, xmm1
mulps xmm1, xmm0
mulps xmm2, xmm0
movq mm4, mm1
movaps xmm1, xmm0
movss xmm0, xmm2
rsqrtss xmm2, xmm2
subps xmm2, xmm1
haddps xmm0, xmm0
movq mm4, mm1
shufps xmm2, xmm2, 0
mulps xmm2, xmm0
mulps xmm3, xmm1
movss xmm0, xmm2
movaps xmm3, xmm2
mulps xmm1, xmm2
shufps xmm2, xmm2, 0x55
subps xmm2, xmm1
mulps xmm0, xmm0
shufps xmm2, xmm2, 0
movq mm3, mm1
subps xmm2, xmm1
mov edx, dword [ebx + 4]
mov dword [ebp - 0x2c], edx
shufps xmm2, xmm2, 0x55
mulps xmm2, xmm0
subps xmm2, xmm1
movhlps xmm2, xmm0
mulps xmm2, xmm0
rsqrtps xmm0, xmm0
movaps xmm3, xmm2
mulps xmm1, xmm2
movq mm3, mm1
movq mm4, mm1
movq mm4, mm1
mulps xmm0, xmm0
movq mm2, mm0
rsqrtps xmm0, xmm0
mulps xmm1, xmm0
subps xmm2, xmm1
mulps xmm1, xmm0
divps xmm1, xmm2
mulps xmm1, xmm2
mulps xmm2, xmm0
movq mm3, mm1
mulps xmm0, xmm0
divps xmm1, xmm2
cmp dword [eax + 0xa4], 0
je 0x4049cb
movaps xmm3, xmm2
movaps xmm1, xmm0
mulps xmm2, xmm0
movss xmm0, xmm2
mulps xmm1, xmm0
shufps xmm2, xmm2, 0x55
mulps xmm0, xmm0
shufps xmm2, xmm2, 0
movq mm4, mm1
mulps xmm0, xmm0
mulps xmm2, xmm0
movhlps xmm2, xmm0
subps xmm2, xmm1
subps xmm2, xmm1
movq mm4, mm1
rsqrtps xmm0, xmm0
mulps xmm3, xmm1
subps xmm0, xmm1
subps xmm2, xmm1
subps xmm2, xmm1
sqrtss xmm2, xmm2
mov eax, dword [eax + 0xa0]
add eax, edx
subps xmm2, xmm1
movss xmm0, xmm2
subps xmm2, xmm1
movaps xmm3, xmm2
rsqrtss xmm2, xmm2
haddps xmm0, xmm0
rsqrtps xmm0, xmm0
movaps xmm1, xmm0
mulps xmm1, xmm2
movaps xmm1, xmm0
sqrtss xmm2, xmm2
movq mm3, mm1
shufps xmm2, xmm2, 0
movss xmm0, xmm2
movss xmm0, xmm2
movhlps xmm2, xmm0
mulps xmm1, xmm0
rsqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
addps xmm2, xmm0
rsqrtps xmm0, xmm0
movss xmm0, xmm2
movq mm2, mm0
jmp 0x404986
add edx, dword [ebp - 0x2c]
mov dword [ebp - 0x30], edx
movss xmm0, xmm2
subps xmm2, xmm1
movaps xmm3, xmm2
shufps xmm2, xmm2, 0x55
mulps xmm2, xmm0
mulps xmm0, xmm0
mulps xmm1, xmm2
shufps xmm2, xmm2, 0
addss xmm2, xmm0
movaps xmm3, xmm2
rsqrtss xmm2, xmm2
sqrtss xmm2, xmm2
movq mm2, mm0
movq mm4, mm1
subps xmm2, xmm1
mulps xmm3, xmm1
movq mm3, mm1
mulps xmm3, xmm1
mulps xmm3, xmm1
mulps xmm1, xmm0
divps xmm1, xmm2
movq mm4, mm1
addss xmm2, xmm0
xor edx, edx
jmp 0x404922
movzx ecx, word [eax + edx*2 + 8]
mulps xmm1, xmm0
haddps xmm0, xmm0
movhlps xmm2, xmm0
divps xmm1, xmm2
subps xmm2, xmm1
sqrtss xmm2, xmm2
mulps xmm1, xmm2
movss xmm0, xmm2
movaps xmm1, xmm0
divps xmm1, xmm2
rsqrtps xmm0, xmm0
mov edi, ecx
sar edi, 0xc
je 0x40486c
cmp edi, 3
jne 0x404921
jmp 0x4048a4
mulps xmm1, xmm0
subps xmm0, xmm1
mulps xmm3, xmm1
mulps xmm1, xmm2
movq mm4, mm1
movaps xmm3, xmm2
haddps xmm0, xmm0
shufps xmm2, xmm2, 0x55
haddps xmm0, xmm0
subps xmm2, xmm1
subps xmm0, xmm1
movss xmm0, xmm2
shufps xmm2, xmm2, 0
rsqrtps xmm0, xmm0
divps xmm1, xmm2
movss xmm0, xmm2
jmp 0x404921
movaps xmm1, xmm0
addps xmm2, xmm0
movq mm2, mm0
movaps xmm1, xmm0
divps xmm1, xmm2
subps xmm2, xmm1
movaps xmm1, xmm0
movss xmm0, xmm2
movq mm2, mm0
shufps xmm2, xmm2, 0
shufps xmm2, xmm2, 0
subps xmm2, xmm1
divps xmm1, xmm2
and ecx, 0xfff
add ecx, dword [ebp - 0x30]
movq mm2, mm0
shufps xmm2, xmm2, 0x55
movss xmm0, xmm2
divps xmm1, xmm2
rsqrtss xmm2, xmm2
movhlps xmm2, xmm0
mulps xmm1, xmm0
sqrtss xmm2, xmm2
movaps xmm1, xmm0
mulps xmm1, xmm2
movq mm3, mm1
mulps xmm1, xmm0
add dword [ecx], esi
movaps xmm3, xmm2
haddps xmm0, xmm0
addss xmm2, xmm0
rsqrtps xmm0, xmm0
movaps xmm1, xmm0
movq mm3, mm1
mulps xmm1, xmm2
movq mm4, mm1
divps xmm1, xmm2
movq mm3, mm1
inc edx
mov edi, dword [eax + 4]
lea ecx, [edi - 8]
shr ecx, 1
cmp edx, ecx
jb 0x404831
mulps xmm2, xmm0
mulps xmm1, xmm2
subps xmm0, xmm1
movq mm2, mm0
movq mm3, mm1
shufps xmm2, xmm2, 0x55
mulps xmm0, xmm0
movhlps xmm2, xmm0
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
haddps xmm0, xmm0
rsqrtss xmm2, xmm2
mulps xmm1, xmm2
mulps xmm1, xmm0
mulps xmm1, xmm2
add eax, edi
mulps xmm0, xmm0
shufps xmm2, xmm2, 0
rsqrtps xmm0, xmm0
mulps xmm3, xmm1
rsqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
shufps xmm2, xmm2, 0
movq mm4, mm1
subps xmm0, xmm1
divps xmm1, xmm2
mov edx, dword [eax]
test edx, edx
jne 0x4047d8
movaps xmm3, xmm2
movaps xmm3, xmm2
movq mm2, mm0
addps xmm2, xmm0
subps xmm2, xmm1
mulps xmm1, xmm0
mulps xmm3, xmm1
movaps xmm3, xmm2
sqrtss xmm2, xmm2
sqrtss xmm2, xmm2
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
mulps xmm3, xmm1
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0x55
movaps xmm1, xmm0
addps xmm2, xmm0
mulps xmm1, xmm2
haddps xmm0, xmm0
movq mm2, mm0
rsqrtps xmm0, xmm0
rsqrtps xmm0, xmm0
mulps xmm0, xmm0
movq mm4, mm1
movaps xmm3, xmm2
movhlps xmm2, xmm0
subps xmm0, xmm1
mulps xmm2, xmm0
subps xmm2, xmm1
divps xmm1, xmm2
subps xmm2, xmm1
rsqrtps xmm0, xmm0
mulps xmm2, xmm0
movq mm3, mm1
shufps xmm2, xmm2, 0x55
addps xmm2, xmm0
mulps xmm2, xmm0
movq mm2, mm0
addss xmm2, xmm0
movaps xmm1, xmm0
movq mm2, mm0
divps xmm1, xmm2
movhlps xmm2, xmm0
subps xmm2, xmm1
rsqrtss xmm2, xmm2
subps xmm0, xmm1
shufps xmm2, xmm2, 0
rsqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
movaps xmm1, xmm0
movq mm2, mm0
subps xmm2, xmm1
sqrtss xmm2, xmm2
addss xmm2, xmm0
subps xmm2, xmm1
movaps xmm1, xmm0
addss xmm2, xmm0
subps xmm0, xmm1
addss xmm2, xmm0
sqrtss xmm2, xmm2
movss xmm0, xmm2
haddps xmm0, xmm0
subps xmm2, xmm1
subps xmm0, xmm1
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
mov dword [ebp - 0x2c], ecx
shufps xmm2, xmm2, 0x55
movss xmm0, xmm2
subps xmm2, xmm1
addps xmm2, xmm0
mulps xmm1, xmm2
movaps xmm3, xmm2
mulps xmm0, xmm0
mulps xmm1, xmm2
mulps xmm1, xmm2
subps xmm2, xmm1
mulps xmm1, xmm2
addps xmm2, xmm0
movq mm4, mm1
divps xmm1, xmm2
subps xmm0, xmm1
movq mm2, mm0
movaps xmm3, xmm2
movaps xmm1, xmm0
rsqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
subps xmm0, xmm1
shufps xmm2, xmm2, 0
movaps xmm3, xmm2
cmp dword [eax + 0x84], 0
mov edi, 1
je 0x40537c
mov esi, dword [eax + 0x80]
add esi, ecx
movq mm4, mm1
subps xmm2, xmm1
mulps xmm3, xmm1
divps xmm1, xmm2
addps xmm2, xmm0
subps xmm2, xmm1
mulps xmm1, xmm0
movq mm3, mm1
haddps xmm0, xmm0
mulps xmm1, xmm2
movaps xmm1, xmm0
mulps xmm1, xmm2
shufps xmm2, xmm2, 0
movaps xmm3, xmm2
divps xmm1, xmm2
subps xmm2, xmm1
movaps xmm3, xmm2
shufps xmm2, xmm2, 0x55
movq mm3, mm1
subps xmm2, xmm1
mulps xmm3, xmm1
mov dword [ebp - 0x30], edi
mov edi, ebx
jmp 0x405226
movaps xmm3, xmm2
haddps xmm0, xmm0
subps xmm0, xmm1
subps xmm2, xmm1
movaps xmm3, xmm2
haddps xmm0, xmm0
subps xmm2, xmm1
rsqrtps xmm0, xmm0
rsqrtss xmm2, xmm2
movaps xmm3, xmm2
movaps xmm3, xmm2
mulps xmm0, xmm0
rsqrtss xmm2, xmm2
mulps xmm0, xmm0
sqrtss xmm2, xmm2
movq mm4, mm1
subps xmm0, xmm1
addps xmm2, xmm0
mulps xmm0, xmm0
subps xmm2, xmm1
movq mm3, mm1
movq mm3, mm1
mov eax, dword [edi + 0xc]
lea ebx, [eax*4 + 4]
call fcn.0040b5d4
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0040b5dc
sub esp, 0xc
mov ebx, eax
subps xmm2, xmm1
haddps xmm0, xmm0
mulps xmm1, xmm2
mulps xmm2, xmm0
mulps xmm1, xmm0
mulps xmm2, xmm0
mulps xmm1, xmm0
movhlps xmm2, xmm0
shufps xmm2, xmm2, 0x55
subps xmm0, xmm1
rsqrtss xmm2, xmm2
rsqrtss xmm2, xmm2
mulps xmm3, xmm1
rsqrtss xmm2, xmm2
divps xmm1, xmm2
mulps xmm2, xmm0
subps xmm0, xmm1
mulps xmm0, xmm0
mov edx, dword [edi + 8]
mov dword [ebp - 0x48], edx
call fcn.0040b5d4
mov edx, dword [ebp - 0x48]
mov dword [esp + 4], 0
mov dword [esp + 8], edx
mov dword [esp], eax
call fcn.0040b5f4
sub esp, 0xc
movaps xmm1, xmm0
shufps xmm2, xmm2, 0
subps xmm2, xmm1
mulps xmm0, xmm0
movq mm2, mm0
movaps xmm1, xmm0
movss xmm0, xmm2
shufps xmm2, xmm2, 0x55
movhlps xmm2, xmm0
addps xmm2, xmm0
movss xmm0, xmm2
mulps xmm0, xmm0
movss xmm0, xmm2
movss xmm0, xmm2
addps xmm2, xmm0
addss xmm2, xmm0
shufps xmm2, xmm2, 0
haddps xmm0, xmm0
movaps xmm1, xmm0
subps xmm2, xmm1
subps xmm2, xmm1
mulps xmm2, xmm0
sqrtss xmm2, xmm2
mov dword [edi + 8], ebx
movhlps xmm2, xmm0
movhlps xmm2, xmm0
movq mm2, mm0
movq mm3, mm1
addss xmm2, xmm0
movq mm3, mm1
rsqrtps xmm0, xmm0
movss xmm0, xmm2
mulps xmm3, xmm1
subps xmm2, xmm1
subps xmm2, xmm1
movq mm4, mm1
movhlps xmm2, xmm0
test ebx, ebx
jne 0x404ce2
mov ebx, edi
rsqrtss xmm2, xmm2
rsqrtss xmm2, xmm2
movaps xmm1, xmm0
subps xmm2, xmm1
divps xmm1, xmm2
mulps xmm1, xmm2
mulps xmm0, xmm0
mulps xmm2, xmm0
movaps xmm3, xmm2
movhlps xmm2, xmm0
movq mm4, mm1
mulps xmm1, xmm0
movq mm2, mm0
mulps xmm3, xmm1
addps xmm2, xmm0
rsqrtss xmm2, xmm2
addps xmm2, xmm0
divps xmm1, xmm2
subps xmm0, xmm1
mulps xmm2, xmm0
subps xmm2, xmm1
shufps xmm2, xmm2, 0
subps xmm2, xmm1
haddps xmm0, xmm0
rsqrtps xmm0, xmm0
addss xmm2, xmm0
subps xmm2, xmm1
subps xmm2, xmm1
movaps xmm3, xmm2
movq mm3, mm1
divps xmm1, xmm2
shufps xmm2, xmm2, 0x55
subps xmm0, xmm1
movaps xmm1, xmm0
mulps xmm3, xmm1
addss xmm2, xmm0
jmp 0x40533c
movhlps xmm2, xmm0
haddps xmm0, xmm0
mulps xmm3, xmm1
shufps xmm2, xmm2, 0x55
subps xmm0, xmm1
mulps xmm0, xmm0
sqrtss xmm2, xmm2
mulps xmm2, xmm0
divps xmm1, xmm2
rsqrtss xmm2, xmm2
movaps xmm1, xmm0
divps xmm1, xmm2
addps xmm2, xmm0
rsqrtps xmm0, xmm0
subps xmm0, xmm1
mulps xmm2, xmm0
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0
mulps xmm2, xmm0
mulps xmm0, xmm0
shufps xmm2, xmm2, 0
mulps xmm3, xmm1
movq mm3, mm1
mov eax, dword [edi + 0xc]
mov edx, dword [ebp - 0x34]
mov dword [ebx + eax*4], edx
inc eax
mov dword [edi + 0xc], eax
rsqrtps xmm0, xmm0
movss xmm0, xmm2
movq mm3, mm1
mulps xmm1, xmm0
movq mm4, mm1
subps xmm2, xmm1
movq mm4, mm1
shufps xmm2, xmm2, 0x55
subps xmm2, xmm1
movaps xmm1, xmm0
haddps xmm0, xmm0
mov eax, dword [esi]
test eax, eax
je 0x404e59
movaps xmm3, xmm2
sqrtss xmm2, xmm2
movss xmm0, xmm2
rsqrtss xmm2, xmm2
movhlps xmm2, xmm0
shufps xmm2, xmm2, 0
movhlps xmm2, xmm0
subps xmm0, xmm1
divps xmm1, xmm2
subps xmm2, xmm1
movaps xmm3, xmm2
sqrtss xmm2, xmm2
movaps xmm1, xmm0
shufps xmm2, xmm2, 0x55
subps xmm0, xmm1
addss xmm2, xmm0
subps xmm0, xmm1
sqrtss xmm2, xmm2
mulps xmm1, xmm0
mulps xmm3, xmm1
rsqrtss xmm2, xmm2
sqrtss xmm2, xmm2
movss xmm0, xmm2
add eax, dword [ebp - 0x2c]
mov dword [ebp - 0x3c], eax
mulps xmm1, xmm0
subps xmm2, xmm1
shufps xmm2, xmm2, 0
movhlps xmm2, xmm0
addps xmm2, xmm0
shufps xmm2, xmm2, 0
movq mm4, mm1
mulps xmm1, xmm0
haddps xmm0, xmm0
addss xmm2, xmm0
movaps xmm3, xmm2
movaps xmm1, xmm0
movaps xmm1, xmm0
mulps xmm3, xmm1
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0
shufps xmm2, xmm2, 0x55
divps xmm1, xmm2
addss xmm2, xmm0
haddps xmm0, xmm0
movss xmm0, xmm2
mov edx, dword [ebp - 0x2c]
add edx, dword [esi + 0x10]
subps xmm0, xmm1
rsqrtss xmm2, xmm2
movq mm2, mm0
rsqrtps xmm0, xmm0
subps xmm0, xmm1
rsqrtss xmm2, xmm2
addps xmm2, xmm0
addss xmm2, xmm0
movq mm2, mm0
movss xmm0, xmm2
movaps xmm1, xmm0
mulps xmm1, xmm0
mulps xmm1, xmm2
movq mm4, mm1
addps xmm2, xmm0
mulps xmm2, xmm0
rsqrtss xmm2, xmm2
haddps xmm0, xmm0
shufps xmm2, xmm2, 0x55
movq mm3, mm1
jmp 0x404efa
subps xmm0, xmm1
mulps xmm0, xmm0
addps xmm2, xmm0
shufps xmm2, xmm2, 0x55
addss xmm2, xmm0
mulps xmm0, xmm0
mulps xmm2, xmm0
subps xmm2, xmm1
addss xmm2, xmm0
mulps xmm1, xmm0
addps xmm2, xmm0
sqrtss xmm2, xmm2
sqrtss xmm2, xmm2
movhlps xmm2, xmm0
subps xmm2, xmm1
mulps xmm1, xmm2
shufps xmm2, xmm2, 0
addss xmm2, xmm0
divps xmm1, xmm2
mulps xmm3, xmm1
movq mm2, mm0
rsqrtps xmm0, xmm0
mov ecx, dword [ebp - 0x2c]
add ecx, dword [esi + 0x10]
mov dword [ebp - 0x3c], ecx
shufps xmm2, xmm2, 0x55
addps xmm2, xmm0
mulps xmm3, xmm1
mulps xmm2, xmm0
movaps xmm3, xmm2
divps xmm1, xmm2
mulps xmm2, xmm0
sqrtss xmm2, xmm2
movss xmm0, xmm2
mulps xmm3, xmm1
mov edx, ecx
subps xmm2, xmm1
shufps xmm2, xmm2, 0
sqrtss xmm2, xmm2
mulps xmm2, xmm0
movaps xmm1, xmm0
shufps xmm2, xmm2, 0
movq mm2, mm0
mulps xmm3, xmm1
movss xmm0, xmm2
mulps xmm0, xmm0
addss xmm2, xmm0
movq mm3, mm1
addps xmm2, xmm0
subps xmm2, xmm1
mulps xmm2, xmm0
shufps xmm2, xmm2, 0x55
rsqrtps xmm0, xmm0
subps xmm2, xmm1
addss xmm2, xmm0
movq mm3, mm1
movss xmm0, xmm2
subps xmm0, xmm1
movq mm4, mm1
mulps xmm1, xmm2
haddps xmm0, xmm0
mulps xmm1, xmm0
addss xmm2, xmm0
movss xmm0, xmm2
movss xmm0, xmm2
rsqrtss xmm2, xmm2
xor ebx, ebx
jmp 0x4051a7
sqrtss xmm2, xmm2
mulps xmm1, xmm2
mulps xmm0, xmm0
subps xmm2, xmm1
subps xmm2, xmm1
haddps xmm0, xmm0
mulps xmm1, xmm0
addss xmm2, xmm0
addss xmm2, xmm0
movaps xmm1, xmm0
shufps xmm2, xmm2, 0x55
subps xmm2, xmm1
jge 0x405018
mulps xmm0, xmm0
mulps xmm2, xmm0
movq mm4, mm1
haddps xmm0, xmm0
mulps xmm3, xmm1
shufps xmm2, xmm2, 0
movss xmm0, xmm2
sqrtss xmm2, xmm2
shufps xmm2, xmm2, 0x55
addss xmm2, xmm0
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0x55
mulps xmm1, xmm2
subps xmm2, xmm1
subps xmm2, xmm1
mulps xmm1, xmm0
shufps xmm2, xmm2, 0
movq mm3, mm1
movss xmm0, xmm2
subps xmm2, xmm1
and eax, 0xffff
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x48], edx
mov dword [esp], eax
call fcn.0040b5c4
mov edx, dword [ebp - 0x48]
push ecx
push ecx
mov dword [edx + ebx], eax
shufps xmm2, xmm2, 0x55
mulps xmm3, xmm1
addss xmm2, xmm0
shufps xmm2, xmm2, 0
subps xmm0, xmm1
mulps xmm2, xmm0
mulps xmm0, xmm0
shufps xmm2, xmm2, 0
mulps xmm2, xmm0
sqrtss xmm2, xmm2
movhlps xmm2, xmm0
mulps xmm1, xmm0
mulps xmm1, xmm2
movaps xmm1, xmm0
haddps xmm0, xmm0
subps xmm2, xmm1
mulps xmm1, xmm2
sqrtss xmm2, xmm2
movq mm4, mm1
movaps xmm3, xmm2
jmp 0x405103
rsqrtss xmm2, xmm2
subps xmm0, xmm1
mulps xmm1, xmm2
rsqrtss xmm2, xmm2
shufps xmm2, xmm2, 0x55
addss xmm2, xmm0
rsqrtss xmm2, xmm2
haddps xmm0, xmm0
rsqrtss xmm2, xmm2
mulps xmm3, xmm1
subps xmm2, xmm1
movaps xmm1, xmm0
subps xmm0, xmm1
subps xmm0, xmm1
subps xmm2, xmm1
movaps xmm3, xmm2
mulps xmm1, xmm2
movq mm2, mm0
addss xmm2, xmm0
haddps xmm0, xmm0
sqrtss xmm2, xmm2
mulps xmm1, xmm2
movhlps xmm2, xmm0
subps xmm2, xmm1
movq mm3, mm1
movq mm2, mm0
shufps xmm2, xmm2, 0x55
addss xmm2, xmm0
subps xmm0, xmm1
subps xmm0, xmm1
sqrtss xmm2, xmm2
subps xmm2, xmm1
addss xmm2, xmm0
movq mm2, mm0
addss xmm2, xmm0
movq mm4, mm1
subps xmm2, xmm1
addss xmm2, xmm0
shufps xmm2, xmm2, 0
divps xmm1, xmm2
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x48], edx
lea eax, [ecx + eax + 2]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
call fcn.0040b5c4
push edx
push edx
mov edx, dword [ebp - 0x48]
mov dword [edx + ebx], eax
movq mm4, mm1
movss xmm0, xmm2
mulps xmm1, xmm2
mulps xmm3, xmm1
mulps xmm1, xmm2
rsqrtss xmm2, xmm2
subps xmm2, xmm1
movaps xmm3, xmm2
rsqrtss xmm2, xmm2
movhlps xmm2, xmm0
subps xmm0, xmm1
rsqrtps xmm0, xmm0
addps xmm2, xmm0
addss xmm2, xmm0
movq mm2, mm0
mulps xmm1, xmm0
mulps xmm2, xmm0
movss xmm0, xmm2
subps xmm2, xmm1
movaps xmm3, xmm2
addss xmm2, xmm0
movq mm3, mm1
subps xmm2, xmm1
mulps xmm2, xmm0
mulps xmm0, xmm0
addss xmm2, xmm0
divps xmm1, xmm2
movhlps xmm2, xmm0
subps xmm0, xmm1
mulps xmm1, xmm0
movss xmm0, xmm2
mulps xmm3, xmm1
subps xmm2, xmm1
divps xmm1, xmm2
haddps xmm0, xmm0
sqrtss xmm2, xmm2
subps xmm0, xmm1
rsqrtps xmm0, xmm0
movhlps xmm2, xmm0
subps xmm2, xmm1
mov eax, dword [edx + ebx]
add ebx, 4
test eax, eax
jne 0x4051a7
shufps xmm2, xmm2, 0
movss xmm0, xmm2
mulps xmm1, xmm0
divps xmm1, xmm2
divps xmm1, xmm2
movq mm2, mm0
movq mm4, mm1
subps xmm0, xmm1
shufps xmm2, xmm2, 0
mulps xmm1, xmm2
mulps xmm1, xmm2
mulps xmm3, xmm1
movaps xmm3, xmm2
subps xmm0, xmm1
movss xmm0, xmm2
mulps xmm2, xmm0
rsqrtss xmm2, xmm2
divps xmm1, xmm2
movq mm2, mm0
subps xmm2, xmm1
movq mm2, mm0
movq mm3, mm1
subps xmm0, xmm1
movq mm3, mm1
movq mm4, mm1
mov dword [ebp - 0x30], 0
jmp 0x4051b6
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ecx + ebx]
cmp eax, 0
jne 0x404f3c
movq mm2, mm0
movss xmm0, xmm2
movq mm4, mm1
addss xmm2, xmm0
sqrtss xmm2, xmm2
rsqrtss xmm2, xmm2
movaps xmm1, xmm0
addps xmm2, xmm0
movaps xmm1, xmm0
subps xmm0, xmm1
addss xmm2, xmm0
cmp dword [ebp - 0x30], 0
je 0x405340
shufps xmm2, xmm2, 0x55
movaps xmm3, xmm2
movq mm2, mm0
subps xmm0, xmm1
movhlps xmm2, xmm0
mulps xmm1, xmm2
subps xmm2, xmm1
shufps xmm2, xmm2, 0
movq mm3, mm1
movq mm4, mm1
subps xmm2, xmm1
mulps xmm1, xmm2
subps xmm0, xmm1
movaps xmm3, xmm2
mulps xmm1, xmm0
haddps xmm0, xmm0
movaps xmm1, xmm0
addps xmm2, xmm0
addss xmm2, xmm0
add esi, 0x14
mov dword [esp + 4], 0x14
mov dword [esp], esi
call fcn.0040b5fc
test eax, eax
push ecx
push ecx
jne 0x405340
mov eax, dword [esi + 0xc]
test eax, eax
je 0x405340
add eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.0040b604
mov dword [ebp - 0x34], eax
push edx
rsqrtps xmm0, xmm0
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
addss xmm2, xmm0
shufps xmm2, xmm2, 0x55
mulps xmm1, xmm2
movaps xmm1, xmm0
movss xmm0, xmm2
addss xmm2, xmm0
rsqrtps xmm0, xmm0
shufps xmm2, xmm2, 0x55
subps xmm0, xmm1
rsqrtss xmm2, xmm2
movaps xmm3, xmm2
addps xmm2, xmm0
movaps xmm3, xmm2
mulps xmm1, xmm2
movaps xmm3, xmm2
shufps xmm2, xmm2, 0
rsqrtss xmm2, xmm2
subps xmm0, xmm1
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0x55
test eax, eax
jne 0x404b19
mov ebx, edi
mulps xmm0, xmm0
movq mm3, mm1
rsqrtps xmm0, xmm0
shufps xmm2, xmm2, 0x55
haddps xmm0, xmm0
mulps xmm2, xmm0
mulps xmm1, xmm0
movq mm3, mm1
mulps xmm1, xmm0
shufps xmm2, xmm2, 0
subps xmm2, xmm1
shufps xmm2, xmm2, 0
addss xmm2, xmm0
addps xmm2, xmm0
sqrtss xmm2, xmm2
sqrtss xmm2, xmm2
addps xmm2, xmm0
divps xmm1, xmm2
movq mm3, mm1
rsqrtss xmm2, xmm2
movaps xmm1, xmm0
rsqrtps xmm0, xmm0
movss xmm0, xmm2
mulps xmm1, xmm0
divps xmm1, xmm2
movq mm4, mm1
shufps xmm2, xmm2, 0x55
mulps xmm3, xmm1
rsqrtss xmm2, xmm2
movq mm3, mm1
subps xmm0, xmm1
subps xmm2, xmm1
movq mm2, mm0
shufps xmm2, xmm2, 0
subps xmm2, xmm1
subps xmm2, xmm1
haddps xmm0, xmm0
mulps xmm0, xmm0
mulps xmm1, xmm0
mulps xmm1, xmm2
mulps xmm2, xmm0
xor edi, edi
jmp 0x405345
mov ebx, edi
mov edi, dword [ebp - 0x30]
mulps xmm1, xmm2
shufps xmm2, xmm2, 0
mulps xmm1, xmm0
addss xmm2, xmm0
movaps xmm3, xmm2
rsqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
mulps xmm3, xmm1
addps xmm2, xmm0
shufps xmm2, xmm2, 0x55
movhlps xmm2, xmm0
movaps xmm3, xmm2
movq mm3, mm1
mulps xmm3, xmm1
mulps xmm2, xmm0
subps xmm0, xmm1
mulps xmm0, xmm0
haddps xmm0, xmm0
haddps xmm0, xmm0
movaps xmm1, xmm0
subps xmm2, xmm1
addps xmm2, xmm0
subps xmm2, xmm1
rsqrtps xmm0, xmm0
movq mm4, mm1
movq mm4, mm1
subps xmm0, xmm1
subps xmm2, xmm1
divps xmm1, xmm2
haddps xmm0, xmm0
movq mm2, mm0
rsqrtps xmm0, xmm0
mulps xmm1, xmm0
movss xmm0, xmm2
movaps xmm1, xmm0
movaps xmm3, xmm2
movq mm3, mm1
subps xmm2, xmm1
shufps xmm2, xmm2, 0
rsqrtps xmm0, xmm0
movq mm2, mm0
test edi, edi
jne 0x4053f5
mulps xmm2, xmm0
movaps xmm1, xmm0
mulps xmm1, xmm0
movq mm4, mm1
movaps xmm3, xmm2
rsqrtps xmm0, xmm0
mulps xmm1, xmm2
shufps xmm2, xmm2, 0
subps xmm2, xmm1
rsqrtps xmm0, xmm0
shufps xmm2, xmm2, 0x55
jmp 0x405cb6
rsqrtss xmm2, xmm2
haddps xmm0, xmm0
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
mulps xmm0, xmm0
haddps xmm0, xmm0
mulps xmm1, xmm0
rsqrtss xmm2, xmm2
mulps xmm2, xmm0
addss xmm2, xmm0
subps xmm0, xmm1
addps xmm2, xmm0
mulps xmm2, xmm0
movq mm3, mm1
mulps xmm1, xmm2
mulps xmm2, xmm0
mulps xmm0, xmm0
mulps xmm0, xmm0
rsqrtss xmm2, xmm2
mulps xmm3, xmm1
movaps xmm3, xmm2
movaps xmm3, xmm2
movaps xmm1, xmm0
mov eax, dword [ebx]
movzx edx, word [eax + 0x14]
lea esi, [eax + edx + 0x18]
subps xmm2, xmm1
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
mulps xmm3, xmm1
subps xmm0, xmm1
movhlps xmm2, xmm0
mulps xmm1, xmm0
mulps xmm2, xmm0
haddps xmm0, xmm0
addps xmm2, xmm0
addps xmm2, xmm0
mulps xmm3, xmm1
movq mm2, mm0
movq mm3, mm1
movhlps xmm2, xmm0
movq mm4, mm1
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x3c], ebx
jmp 0x4059d4
mov eax, dword [esi + 0x24]
movq mm2, mm0
movaps xmm1, xmm0
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0x55
subps xmm2, xmm1
mulps xmm0, xmm0
divps xmm1, xmm2
mulps xmm3, xmm1
shufps xmm2, xmm2, 0x55
mulps xmm2, xmm0
movq mm4, mm1
mulps xmm1, xmm2
mulps xmm0, xmm0
movq mm3, mm1
movaps xmm3, xmm2
mulps xmm0, xmm0
rsqrtps xmm0, xmm0
subps xmm2, xmm1
movaps xmm1, xmm0
shufps xmm2, xmm2, 0
mulps xmm1, xmm2
movss xmm0, xmm2
mulps xmm1, xmm0
subps xmm0, xmm1
test eax, 0x2000000
je 0x405586
shufps xmm2, xmm2, 0x55
movq mm4, mm1
mulps xmm1, xmm0
movaps xmm1, xmm0
shufps xmm2, xmm2, 0
mulps xmm3, xmm1
shufps xmm2, xmm2, 0
mulps xmm0, xmm0
subps xmm0, xmm1
mulps xmm1, xmm0
movq mm4, mm1
mulps xmm1, xmm2
rsqrtps xmm0, xmm0
movhlps xmm2, xmm0
movaps xmm1, xmm0
subps xmm2, xmm1
mov dword [esp + 8], 0x4000
mov eax, dword [esi + 0x10]
mov dword [esp + 4], eax
mov eax, dword [esi + 8]
mov dword [esp], eax
call fcn.0040b60c
sub esp, 0xc
movq mm4, mm1
mulps xmm2, xmm0
movq mm2, mm0
subps xmm2, xmm1
mulps xmm3, xmm1
movaps xmm3, xmm2
mulps xmm2, xmm0
shufps xmm2, xmm2, 0x55
rsqrtss xmm2, xmm2
subps xmm2, xmm1
haddps xmm0, xmm0
movq mm3, mm1
subps xmm0, xmm1
mulps xmm1, xmm2
movss xmm0, xmm2
movq mm2, mm0
mulps xmm2, xmm0
mulps xmm1, xmm0
rsqrtss xmm2, xmm2
movhlps xmm2, xmm0
subps xmm2, xmm1
mulps xmm3, xmm1
subps xmm2, xmm1
jmp 0x4059ce
movaps xmm1, xmm0
movaps xmm3, xmm2
mulps xmm1, xmm0
mulps xmm2, xmm0
mulps xmm3, xmm1
movq mm2, mm0
addss xmm2, xmm0
movaps xmm3, xmm2
haddps xmm0, xmm0
subps xmm2, xmm1
rsqrtps xmm0, xmm0
subps xmm0, xmm1
movaps xmm3, xmm2
addss xmm2, xmm0
shufps xmm2, xmm2, 0
haddps xmm0, xmm0
addss xmm2, xmm0
mulps xmm1, xmm0
movss xmm0, xmm2
mulps xmm1, xmm2
cdq
and edx, 4
mov dword [ebp - 0x30], edx
mov edx, eax
mov ebx, dword [ebp - 0x30]
and edx, 0x40000000
cmp edx, 1
mov edx, eax
sbb ecx, ecx
and edx, 0x20000000
not ecx
and ecx, 8
cmp edx, 1
sbb edx, edx
not edx
and edx, 0x10
lea ebx, [ebx + ecx + 0x4242b8]
mov ecx, dword [ebx + edx]
movq mm2, mm0
divps xmm1, xmm2
mulps xmm1, xmm0
mulps xmm3, xmm1
movaps xmm1, xmm0
mulps xmm0, xmm0
mulps xmm3, xmm1
addss xmm2, xmm0
mulps xmm3, xmm1
haddps xmm0, xmm0
addps xmm2, xmm0
subps xmm2, xmm1
movaps xmm1, xmm0
mulps xmm0, xmm0
mulps xmm1, xmm2
divps xmm1, xmm2
mulps xmm2, xmm0
sqrtss xmm2, xmm2
divps xmm1, xmm2
rsqrtss xmm2, xmm2
test eax, 0x4000000
je 0x40569b
movq mm3, mm1
haddps xmm0, xmm0
divps xmm1, xmm2
mulps xmm1, xmm0
addss xmm2, xmm0
movhlps xmm2, xmm0
haddps xmm0, xmm0
subps xmm2, xmm1
movq mm4, mm1
movq mm4, mm1
rsqrtps xmm0, xmm0
movq mm2, mm0
or ch, 2
mulps xmm2, xmm0
sqrtss xmm2, xmm2
shufps xmm2, xmm2, 0x55
mulps xmm1, xmm2
mulps xmm1, xmm0
sqrtss xmm2, xmm2
addps xmm2, xmm0
sqrtss xmm2, xmm2
subps xmm0, xmm1
divps xmm1, xmm2
shufps xmm2, xmm2, 0
mulps xmm0, xmm0
movaps xmm3, xmm2
shufps xmm2, xmm2, 0
mulps xmm0, xmm0
addss xmm2, xmm0
movq mm2, mm0
mulps xmm0, xmm0
addss xmm2, xmm0
mulps xmm2, xmm0
movaps xmm1, xmm0
movq mm4, mm1
movq mm3, mm1
mulps xmm1, xmm2
mov edx, dword [esi + 0x10]
mulps xmm0, xmm0
haddps xmm0, xmm0
mulps xmm2, xmm0
movss xmm0, xmm2
addps xmm2, xmm0
mulps xmm1, xmm0
mulps xmm3, xmm1
movaps xmm3, xmm2
mulps xmm0, xmm0
movq mm3, mm1
mulps xmm0, xmm0
movss xmm0, xmm2
rsqrtss xmm2, xmm2
movaps xmm3, xmm2
movq mm4, mm1
test edx, edx
jne 0x40587f
movq mm3, mm1
subps xmm2, xmm1
movhlps xmm2, xmm0
mulps xmm1, xmm0
movq mm4, mm1
movaps xmm3, xmm2
movq mm4, mm1
divps xmm1, xmm2
movss xmm0, xmm2
subps xmm0, xmm1
haddps xmm0, xmm0
rsqrtss xmm2, xmm2
sqrtss xmm2, xmm2
mulps xmm1, xmm2
mulps xmm1, xmm2
mulps xmm1, xmm2
mulps xmm1, xmm2
rsqrtps xmm0, xmm0
subps xmm0, xmm1
subps xmm0, xmm1
mulps xmm3, xmm1
movss xmm0, xmm2
movq mm4, mm1
mulps xmm1, xmm0
test al, 0x40
je 0x4057e8
subps xmm0, xmm1
shufps xmm2, xmm2, 0
addss xmm2, xmm0
movq mm4, mm1
addps xmm2, xmm0
subps xmm2, xmm1
addss xmm2, xmm0
movq mm3, mm1
movhlps xmm2, xmm0
mulps xmm1, xmm2
mulps xmm0, xmm0
mulps xmm3, xmm1
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0
movq mm4, mm1
shufps xmm2, xmm2, 0
mulps xmm1, xmm0
shufps xmm2, xmm2, 0
shufps xmm2, xmm2, 0x55
subps xmm2, xmm1
addss xmm2, xmm0
movaps xmm1, xmm0
movq mm3, mm1
mov edx, dword [edi + 0x20]
subps xmm2, xmm1
sqrtss xmm2, xmm2
divps xmm1, xmm2
addss xmm2, xmm0
movaps xmm1, xmm0
subps xmm2, xmm1
haddps xmm0, xmm0
mulps xmm0, xmm0
shufps xmm2, xmm2, 0
addss xmm2, xmm0
divps xmm1, xmm2
mulps xmm2, xmm0
addss xmm2, xmm0
movaps xmm1, xmm0
mulps xmm0, xmm0
movq mm2, mm0
movq mm4, mm1
movq mm4, mm1
subps xmm2, xmm1
mulps xmm2, xmm0
jmp 0x405850
test al, al
jns 0x405850
mulps xmm1, xmm0
rsqrtps xmm0, xmm0
rsqrtss xmm2, xmm2
haddps xmm0, xmm0
movq mm3, mm1
shufps xmm2, xmm2, 0
rsqrtss xmm2, xmm2
subps xmm0, xmm1
divps xmm1, xmm2
movq mm4, mm1
movaps xmm1, xmm0
addps xmm2, xmm0
movq mm2, mm0
movq mm2, mm0
divps xmm1, xmm2
mov edx, dword [edi + 0x24]
addps xmm2, xmm0
movhlps xmm2, xmm0
rsqrtss xmm2, xmm2
subps xmm2, xmm1
subps xmm2, xmm1
shufps xmm2, xmm2, 0
addss xmm2, xmm0
movaps xmm1, xmm0
movq mm2, mm0
shufps xmm2, xmm2, 0x55
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
mulps xmm0, xmm0
rsqrtss xmm2, xmm2
movhlps xmm2, xmm0
addss xmm2, xmm0
addss xmm2, xmm0
movaps xmm3, xmm2
shufps xmm2, xmm2, 0x55
movhlps xmm2, xmm0
haddps xmm0, xmm0
mulps xmm1, xmm0
subps xmm2, xmm1
rsqrtss xmm2, xmm2
mulps xmm2, xmm0
addps xmm2, xmm0
subps xmm2, xmm1
subps xmm2, xmm1
movaps xmm3, xmm2
movq mm3, mm1
movss xmm0, xmm2
shufps xmm2, xmm2, 0x55
movq mm3, mm1
movss xmm0, xmm2
movhlps xmm2, xmm0
shufps xmm2, xmm2, 0x55
mulps xmm1, xmm2
mulps xmm3, xmm1
subps xmm2, xmm1
mulps xmm1, xmm2
sqrtss xmm2, xmm2
movq mm4, mm1
rsqrtps xmm0, xmm0
movq mm4, mm1
rsqrtps xmm0, xmm0
mulps xmm0, xmm0
mulps xmm1, xmm0
movhlps xmm2, xmm0
subps xmm2, xmm1
mulps xmm0, xmm0
movaps xmm1, xmm0
addps xmm2, xmm0
test edx, edx
je 0x4059ad
haddps xmm0, xmm0
haddps xmm0, xmm0
shufps xmm2, xmm2, 0x55
haddps xmm0, xmm0
haddps xmm0, xmm0
rsqrtss xmm2, xmm2
movq mm3, mm1
movss xmm0, xmm2
mulps xmm0, xmm0
movss xmm0, xmm2
addps xmm2, xmm0
subps xmm2, xmm1
shufps xmm2, xmm2, 0
rsqrtps xmm0, xmm0
movaps xmm3, xmm2
movq mm3, mm1
rsqrtps xmm0, xmm0
divps xmm1, xmm2
lea eax, [ebp - 0x1c]
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov eax, dword [esi + 8]
mov dword [esp], eax
call fcn.0040b614
sub esp, 0x10
test eax, eax
jne 0x405976
subps xmm2, xmm1
movq mm4, mm1
movhlps xmm2, xmm0
addss xmm2, xmm0
divps xmm1, xmm2
mulps xmm0, xmm0
movaps xmm3, xmm2
mulps xmm1, xmm2
sqrtss xmm2, xmm2
mulps xmm1, xmm0
sqrtss xmm2, xmm2
movaps xmm1, xmm0
subps xmm0, xmm1
sqrtss xmm2, xmm2
movhlps xmm2, xmm0
subps xmm0, xmm1
sqrtss xmm2, xmm2
haddps xmm0, xmm0
divps xmm1, xmm2
divps xmm1, xmm2
mulps xmm3, xmm1
mulps xmm0, xmm0
mulps xmm2, xmm0
movq mm3, mm1
haddps xmm0, xmm0
subps xmm2, xmm1
movss xmm0, xmm2
subps xmm2, xmm1
sqrtss xmm2, xmm2
mulps xmm2, xmm0
subps xmm2, xmm1
movq mm2, mm0
movq mm3, mm1
movq mm4, mm1
subps xmm2, xmm1
addss xmm2, xmm0
mulps xmm0, xmm0
shufps xmm2, xmm2, 0
movaps xmm1, xmm0
subps xmm2, xmm1
addss xmm2, xmm0
subps xmm2, xmm1
subps xmm0, xmm1
movaps xmm3, xmm2
movaps xmm1, xmm0
haddps xmm0, xmm0
movaps xmm3, xmm2
inc dword [ebp - 0x2c]
add esi, 0x28
mov edx, dword [ebp - 0x3c]
mov edi, dword [edx]
movzx eax, word [edi + 6]
cmp dword [ebp - 0x2c], eax
jl 0x40548c
mov ebx, edx
mulps xmm3, xmm1
haddps xmm0, xmm0
subps xmm0, xmm1
mulps xmm1, xmm0
movq mm4, mm1
divps xmm1, xmm2
movhlps xmm2, xmm0
mulps xmm3, xmm1
mulps xmm2, xmm0
movhlps xmm2, xmm0
addps xmm2, xmm0
shufps xmm2, xmm2, 0
movq mm2, mm0
subps xmm0, xmm1
mulps xmm1, xmm0
addss xmm2, xmm0
addps xmm2, xmm0
movaps xmm1, xmm0
mulps xmm2, xmm0
mulps xmm1, xmm0
addss xmm2, xmm0
movss xmm0, xmm2
addps xmm2, xmm0
movaps xmm3, xmm2
divps xmm1, xmm2
mulps xmm0, xmm0
addps xmm2, xmm0
rsqrtss xmm2, xmm2
addss xmm2, xmm0
rsqrtss xmm2, xmm2
mulps xmm1, xmm0
subps xmm2, xmm1
divps xmm1, xmm2
movaps xmm1, xmm0
sqrtss xmm2, xmm2
divps xmm1, xmm2
addss xmm2, xmm0
mulps xmm1, xmm2
mulps xmm1, xmm2
movq mm4, mm1
addss xmm2, xmm0
sqrtss xmm2, xmm2
subps xmm0, xmm1
addss xmm2, xmm0
haddps xmm0, xmm0
addps xmm2, xmm0
mov eax, dword [edi + 0x28]
test eax, eax
je 0x405c6b
mulps xmm0, xmm0
subps xmm2, xmm1
mulps xmm1, xmm2
haddps xmm0, xmm0
movaps xmm3, xmm2
sqrtss xmm2, xmm2
movhlps xmm2, xmm0
subps xmm0, xmm1
addps xmm2, xmm0
movaps xmm3, xmm2
rsqrtss xmm2, xmm2
subps xmm2, xmm1
movq mm3, mm1
subps xmm0, xmm1
mulps xmm1, xmm2
mulps xmm0, xmm0
movq mm3, mm1
rsqrtss xmm2, xmm2
subps xmm0, xmm1
mulps xmm3, xmm1
sqrtss xmm2, xmm2
addss xmm2, xmm0
movaps xmm1, xmm0
mulps xmm3, xmm1
subps xmm0, xmm1
subps xmm2, xmm1
shufps xmm2, xmm2, 0
subps xmm0, xmm1
movss xmm0, xmm2
addps xmm2, xmm0
movq mm2, mm0
movss xmm0, xmm2
mulps xmm1, xmm0
divps xmm1, xmm2
movq mm3, mm1
movq mm3, mm1
rsqrtps xmm0, xmm0
addps xmm2, xmm0
movaps xmm3, xmm2
mulps xmm1, xmm0
addps xmm2, xmm0
shufps xmm2, xmm2, 0x55
mulps xmm3, xmm1
movq mm3, mm1
movhlps xmm2, xmm0
movq mm3, mm1
mulps xmm3, xmm1
rsqrtss xmm2, xmm2
mulps xmm2, xmm0
divps xmm1, xmm2
rsqrtss xmm2, xmm2
mov ecx, dword [ebp - 0x38]
add eax, dword [ebp - 0x38]
mov dword [esp + 8], 0
mov dword [esp + 4], 1
mov dword [esp], ecx
call eax
sub esp, 0xc
divps xmm1, xmm2
haddps xmm0, xmm0
mulps xmm2, xmm0
rsqrtps xmm0, xmm0
addss xmm2, xmm0
mulps xmm0, xmm0
movq mm2, mm0
addps xmm2, xmm0
movss xmm0, xmm2
movaps xmm3, xmm2
sqrtss xmm2, xmm2
test eax, eax
jne 0x405bff
addss xmm2, xmm0
movq mm4, mm1
divps xmm1, xmm2
shufps xmm2, xmm2, 0x55
addss xmm2, xmm0
mulps xmm0, xmm0
movaps xmm1, xmm0
rsqrtps xmm0, xmm0
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
movaps xmm3, xmm2
movq mm3, mm1
rsqrtps xmm0, xmm0
subps xmm2, xmm1
addss xmm2, xmm0
subps xmm2, xmm1
shufps xmm2, xmm2, 0
sqrtss xmm2, xmm2
movss xmm0, xmm2
sqrtss xmm2, xmm2
rsqrtss xmm2, xmm2
movss xmm0, xmm2
movhlps xmm2, xmm0
mulps xmm3, xmm1
movhlps xmm2, xmm0
sqrtss xmm2, xmm2
movq mm4, mm1
mulps xmm3, xmm1
movaps xmm3, xmm2
addps xmm2, xmm0
subps xmm0, xmm1
subps xmm2, xmm1
subps xmm2, xmm1
mulps xmm1, xmm2
mulps xmm0, xmm0
mulps xmm3, xmm1
rsqrtss xmm2, xmm2
subps xmm2, xmm1
jmp 0x405cb6
sqrtss xmm2, xmm2
addss xmm2, xmm0
mulps xmm1, xmm2
subps xmm2, xmm1
subps xmm2, xmm1
mulps xmm0, xmm0
mulps xmm2, xmm0
addss xmm2, xmm0
addps xmm2, xmm0
mulps xmm3, xmm1
shufps xmm2, xmm2, 0
subps xmm2, xmm1
mulps xmm1, xmm0
subps xmm2, xmm1
mulps xmm2, xmm0
mulps xmm1, xmm0
mulps xmm1, xmm0
mulps xmm3, xmm1
movhlps xmm2, xmm0
mov dword [ebx + 0x10], 1
mulps xmm1, xmm2
mulps xmm2, xmm0
subps xmm2, xmm1
movss xmm0, xmm2
movq mm3, mm1
shufps xmm2, xmm2, 0
sqrtss xmm2, xmm2
divps xmm1, xmm2
movhlps xmm2, xmm0
movq mm4, mm1
movaps xmm1, xmm0
shufps xmm2, xmm2, 0x55
rsqrtss xmm2, xmm2
rsqrtss xmm2, xmm2
subps xmm0, xmm1
mulps xmm3, xmm1
subps xmm0, xmm1
mulps xmm1, xmm2
movq mm4, mm1
rsqrtps xmm0, xmm0
rsqrtss xmm2, xmm2
movq mm4, mm1
mulps xmm1, xmm0
divps xmm1, xmm2
movaps xmm1, xmm0
haddps xmm0, xmm0
movq mm3, mm1
shufps xmm2, xmm2, 0x55
movaps xmm1, xmm0
shufps xmm2, xmm2, 0x55
movaps xmm3, xmm2
movss xmm0, xmm2
addss xmm2, xmm0
mov eax, ebx
jmp 0x405d14
rsqrtps xmm0, xmm0
addps xmm2, xmm0
mulps xmm0, xmm0
rsqrtss xmm2, xmm2
divps xmm1, xmm2
divps xmm1, xmm2
movq mm3, mm1
mulps xmm3, xmm1
movss xmm0, xmm2
subps xmm2, xmm1
mulps xmm1, xmm2
mulps xmm3, xmm1
mulps xmm1, xmm2
mov dword [esp], ebx
call fcn.00403118
subps xmm2, xmm1
movq mm3, mm1
mulps xmm0, xmm0
divps xmm1, xmm2
addss xmm2, xmm0
movhlps xmm2, xmm0
movaps xmm3, xmm2
movq mm2, mm0
movaps xmm1, xmm0
movaps xmm1, xmm0
rsqrtps xmm0, xmm0
movq mm4, mm1
addps xmm2, xmm0
movhlps xmm2, xmm0
xor eax, eax
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret