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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x604
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov eax, esi
call fcn.00540020
mov eax, dword [esi + 0xa4]
lea ecx, [esi + 0xa4]
call dword [eax + 0x20]
test eax, eax
mov dword [esp + 0x58], eax
je 0x53dfb7
cmp word [eax + 0x32], 0
jne 0x53dfc2
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
movss xmm0, dword [ebp + 0x10]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x53dfe5
movss dword [esi + 0x90], xmm1
movss xmm1, dword [0x7389bc]
divss xmm1, xmm0
jmp 0x53dff5
movss xmm0, dword [0x7389bc]
movss dword [esi + 0x90], xmm0
movss dword [esi + 0x94], xmm1
mov ecx, dword [0x8d66e0]
mov dword [esp + 0x16c], ecx
inc ecx
mov dword [0x8d66e0], ecx
movsx ebx, word [eax + 0x32]
mov eax, dword [esi + 0x14]
lea edi, [esi + 0xc]
xor edx, edx
test eax, eax
setl dl
lea ecx, [ebx*4 - 4]
mov dword [esp + 0xcc], ebx
mov dword [esp + 0x28], ecx
mov dword [esp + 0xec], edi
dec edx
and eax, edx
push eax
push edi
call fcn.005426b0
push ebx
mov dword [edi + 4], 0
push edi
mov dword [esi + 0x1c], 1
call fcn.005426b0
mov eax, dword [esi + 0x28]
lea edi, [esi + 0x20]
xor ecx, ecx
test eax, eax
setl cl
mov dword [esp + 0x174], edi
dec ecx
and eax, ecx
push eax
call fcn.00542900
mov dword [edi + 4], 0
push ebx
mov dword [esi + 0x30], 1
call fcn.00542900
mov eax, dword [esi + 0x3c]
lea edi, [esi + 0x34]
xor edx, edx
test eax, eax
setl dl
mov dword [esp + 0x3c], edi
dec edx
and eax, edx
push eax
push edi
call fcn.0048dc80
mov eax, dword [esp + 0x28]
test eax, eax
mov dword [edi + 4], 0
je 0x53e0c3
push eax
push edi
mov dword [esi + 0x44], 4
call fcn.0048dc80
mov eax, dword [esi + 0x50]
lea edi, [esi + 0x48]
xor ecx, ecx
test eax, eax
setl cl
dec ecx
and eax, ecx
push eax
push edi
call fcn.0048dc80
mov eax, dword [ebp + 0xc]
mov dword [edi + 4], 0
mov edi, dword [esi]
shl eax, 4
xor eax, edi
and eax, 0x10
mov ecx, edi
xor ecx, eax
mov al, cl
test al, 0x10
mov dword [esi + 0x58], 4
mov dword [esi], ecx
je 0x53e1a0
mov edx, dword [esp + 0x58]
mov dword [esi + 0x6c], 1
movsx edi, word [edx + 0x2a]
mov eax, dword [esi + 0x64]
lea ebx, [esi + 0x5c]
cmp edi, eax
cmovg eax, edi
push eax
call fcn.00542c00
mov dword [ebx + 4], edi
mov edi, dword [esp + 0x58]
xor ecx, ecx
cmp word [edi + 0x2a], cx
jle 0x53e1a0
xor edx, edx
mov eax, dword [ebx]
xorps xmm0, xmm0
add eax, edx
movss dword [eax + 0x30], xmm0
movss dword [eax + 0x20], xmm0
movss dword [eax + 0x10], xmm0
movss dword [eax + 0x34], xmm0
movss dword [eax + 0x24], xmm0
movss dword [eax + 4], xmm0
movss dword [eax + 0x38], xmm0
movss dword [eax + 0x18], xmm0
movss dword [eax + 8], xmm0
movss dword [eax + 0x2c], xmm0
movss dword [eax + 0x1c], xmm0
movss dword [eax + 0xc], xmm0
movss xmm0, dword [0x7389bc]
movss dword [eax], xmm0
movss dword [eax + 0x14], xmm0
movss dword [eax + 0x28], xmm0
movss dword [eax + 0x3c], xmm0
movsx eax, word [edi + 0x2a]
inc ecx
add edx, 0x40
cmp ecx, eax
jl 0x53e136
mov eax, dword [esp + 0xcc]
xor ebx, ebx
test eax, eax
mov dword [esp + 0x2c], ebx
jle 0x53ff56
xorps xmm0, xmm0
movss xmm7, dword [0x7389bc]
movss dword [esp + 0x2ac], xmm0
movss dword [esp + 0x2bc], xmm0
movss dword [esp + 0x2cc], xmm0
movss dword [esp + 0x2dc], xmm7
jmp 0x53e200
movss xmm7, dword [0x7389bc]
mov ebx, dword [esp + 0x2c]
jmp 0x53e200
mov ecx, dword [esp + 0x58]
mov edx, dword [ecx + 0x58]
movss xmm2, dword [0x7389e8]
mov edi, ebx
imul edi, edi, 0xb0
movss xmm0, dword [edi + edx + 0x4c]
movss xmm5, dword [edi + edx + 4]
movss xmm1, dword [edi + edx + 8]
add edi, edx
movss dword [esp + 0x120], xmm0
movss xmm0, dword [edi + 0x50]
movss dword [esp + 0x124], xmm0
movss xmm0, dword [edi + 0x54]
movss xmm4, dword [edi + 4]
movss xmm6, dword [edi + 8]
movss dword [esp + 0x128], xmm0
movss xmm0, dword [edi + 0x48]
movss dword [esp + 0x5c], xmm0
movss xmm0, dword [edi]
mulss xmm0, xmm2
mulss xmm1, xmm2
mulss xmm5, xmm2
movss xmm2, dword [edi + 0xc]
mulss xmm2, xmm0
mulss xmm0, dword [edi]
movss dword [esp + 0x154], xmm2
movss xmm2, dword [edi + 0xc]
mulss xmm2, xmm5
movss dword [esp + 0x14c], xmm0
movss dword [esp + 0x170], xmm2
movss xmm2, dword [edi + 0xc]
mulss xmm2, xmm1
movss dword [esp + 0xb8], xmm2
mulss xmm6, xmm1
mulss xmm4, xmm5
movaps xmm2, xmm5
movss xmm5, dword [edi + 4]
mulss xmm2, dword [edi]
mulss xmm5, xmm1
movaps xmm3, xmm1
mulss xmm3, dword [edi]
movaps xmm0, xmm6
addss xmm0, xmm4
movaps xmm1, xmm7
subss xmm1, xmm0
movaps xmm0, xmm2
addss xmm0, dword [esp + 0xb8]
subss xmm2, dword [esp + 0xb8]
movss dword [esp + 0x2a4], xmm0
movss dword [esp + 0x2a0], xmm1
movss xmm1, dword [esp + 0x170]
movaps xmm0, xmm3
subss xmm0, xmm1
movss dword [esp + 0x2a8], xmm0
movss dword [esp + 0x2b0], xmm2
movss xmm2, dword [esp + 0x14c]
addss xmm6, xmm2
movaps xmm0, xmm7
subss xmm0, xmm6
movss dword [esp + 0x2b4], xmm0
movss xmm0, dword [esp + 0x154]
movaps xmm6, xmm5
addss xmm6, xmm0
subss xmm5, xmm0
addss xmm4, xmm2
movaps xmm0, xmm7
subss xmm0, xmm4
movss dword [esp + 0x2c8], xmm0
movss xmm0, dword [edi + 0x10]
movss dword [esp + 0x2d0], xmm0
movss xmm0, dword [edi + 0x14]
lea edx, [edi + 0x30]
mov eax, dword [edx]
movss dword [esp + 0x2d4], xmm0
movss xmm0, dword [edi + 0x18]
addss xmm3, xmm1
mov dword [esp + 0x34], edi
movss dword [esp + 0x2b8], xmm6
movss dword [esp + 0x2c0], xmm3
movss dword [esp + 0x2c4], xmm5
movss dword [esp + 0x2d8], xmm0
movss xmm2, dword [0x7389e8]
movss xmm1, dword [edi + 0x20]
movss xmm4, dword [edi + 0x24]
movss xmm0, dword [edi + 0x28]
mulss xmm0, xmm2
movss xmm3, dword [edi + 0x24]
movss xmm5, dword [edi + 0x28]
mulss xmm4, xmm2
mulss xmm1, xmm2
movss xmm2, dword [edi + 0x2c]
mov ecx, dword [edx + 4]
mulss xmm2, xmm1
movss dword [esp + 0x164], xmm2
movss xmm2, dword [edi + 0x2c]
mulss xmm2, xmm4
movss dword [esp + 0x15c], xmm2
movss xmm2, dword [edi + 0x2c]
mulss xmm2, xmm0
movss dword [esp + 0xd4], xmm2
movss xmm2, dword [edi + 0x20]
mulss xmm5, xmm0
mulss xmm2, xmm1
movss xmm1, dword [edi + 0x20]
mulss xmm1, xmm4
movss dword [esp + 0xdc], xmm2
movss xmm2, dword [edi + 0x20]
mulss xmm2, xmm0
mulss xmm3, xmm4
movss xmm4, dword [edi + 0x24]
mulss xmm4, xmm0
movaps xmm6, xmm5
addss xmm5, dword [esp + 0xdc]
addss xmm6, xmm3
addss xmm3, dword [esp + 0xdc]
movaps xmm0, xmm7
subss xmm0, xmm6
movss xmm6, dword [esp + 0x15c]
movss dword [esp + 0x2e0], xmm0
movaps xmm0, xmm1
addss xmm0, dword [esp + 0xd4]
subss xmm1, dword [esp + 0xd4]
movss dword [esp + 0x2e4], xmm0
movaps xmm0, xmm2
subss xmm0, xmm6
movss dword [esp + 0x2e8], xmm0
mov dword [esp + 0x60], eax
mov eax, dword [edx + 8]
movaps xmm0, xmm7
subss xmm0, xmm5
mov dword [esp + 0x64], ecx
mov ecx, dword [edx + 0xc]
mov edx, dword [esp + 0xec]
movss dword [esp + 0x2f4], xmm0
movss dword [esp + 0x2f0], xmm1
movss xmm1, dword [esp + 0x164]
movaps xmm0, xmm4
addss xmm0, xmm1
addss xmm2, xmm6
subss xmm4, xmm1
subss xmm7, xmm3
push edx
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], ecx
movss dword [esp + 0x2fc], xmm0
movss dword [esp + 0x304], xmm2
movss dword [esp + 0x308], xmm4
movss dword [esp + 0x30c], xmm7
call fcn.00542590
mov edi, dword [edi + 0x60]
mov ecx, dword [esp + 0x16c]
mov dword [eax + 0x180], ecx
mov ecx, ebx
mov edx, 1
shl edx, cl
mov dword [eax + 0x18c], edi
mov dword [esp + 0x30], eax
mov dword [eax + 0x184], ebx
mov dword [eax + 0x188], edx
lea edi, [eax + 0x120]
mov ecx, 0x10
lea esi, [esp + 0x2a0]
rep movsd dword es:[edi], dword [esi]
lea edi, [eax + 0x40]
mov ecx, 0x10
lea esi, [esp + 0x2a0]
mov ebx, eax
rep movsd dword es:[edi], dword [esi]
call fcn.005503a0
xorps xmm0, xmm0
mov eax, dword [esp + 0x2c]
test eax, eax
movss xmm1, dword [0x738a10]
movss xmm2, dword [0x738a34]
mov esi, ebx
movss dword [esi + 0xe8], xmm0
movss dword [esi + 0xe4], xmm0
movss dword [esi + 0xe0], xmm0
movss dword [esi + 0xf8], xmm0
movss dword [esi + 0xf4], xmm0
movss dword [esi + 0xf0], xmm0
movss dword [esi + 0x2c], xmm1
je 0x53e5f1
movss xmm2, dword [0x738de4]
mov ebx, dword [esp + 0x34]
movss dword [esi + 0x20], xmm1
movss xmm1, dword [0x738aa8]
movss dword [esi + 0x28], xmm1
movss xmm1, dword [0x738b94]
movss dword [esi + 0x30], xmm2
movss dword [esi + 0x24], xmm1
movss dword [esi + 0x108], xmm0
movss dword [esi + 0x104], xmm0
movss dword [esi + 0x100], xmm0
movss dword [esi + 0x118], xmm0
movss dword [esi + 0x114], xmm0
movss dword [esi + 0x110], xmm0
test byte [ebx + 0x5a], 1
mov eax, dword [esi + 0x38]
je 0x53e657
or eax, 1
jmp 0x53e65a
and eax, 0xfffffffe
mov edi, dword [esp + 0x174]
mov dword [esi + 0x38], eax
call fcn.005427c0
mov dword [esp + 0x1c], eax
movsx eax, word [ebx + 0x58]
sub eax, 0
je 0x53ec0d
dec eax
je 0x53ea9b
dec eax
jne 0x53ec0d
movss xmm3, dword [esp + 0x128]
movss xmm1, dword [esp + 0x124]
comiss xmm3, xmm1
jbe 0x53e6a2
movaps xmm3, xmm1
movss xmm0, dword [esp + 0x120]
comiss xmm3, xmm0
jbe 0x53e6b3
movaps xmm3, xmm0
ucomiss xmm3, xmm0
lahf
test ah, 0x44
mov ecx, 2
jp 0x53e6c8
mov eax, 1
jmp 0x53e6d8
ucomiss xmm3, xmm1
lahf
test ah, 0x44
jnp 0x53e6d6
mov ecx, 1
xor eax, eax
movss xmm6, dword [0x738a1c]
movss xmm7, dword [0x7389e8]
movss xmm2, dword [0x7389bc]
movss xmm0, dword [esp + eax*4 + 0x120]
movss xmm1, dword [esp + ecx*4 + 0x120]
mulss xmm3, xmm6
movaps xmm4, xmm3
mulss xmm4, xmm7
divss xmm2, xmm4
movaps xmm5, xmm2
mulss xmm5, xmm0
addss xmm5, xmm6
cvttss2si edi, xmm5
cmp edi, 1
movss dword [esp + 0x5c], xmm3
jge 0x53e730
mov edi, 1
mulss xmm2, xmm1
addss xmm2, xmm6
cvttss2si ebx, xmm2
cmp ebx, 1
jge 0x53e746
mov ebx, 1
cmp edi, 1
xorps xmm5, xmm5
lea edx, [esp + eax*4 + 0x1c0]
mov dword [esp + 0x18], ebx
movss dword [esp + 0xa0], xmm5
movss dword [esp + 0xa4], xmm5
movss dword [esp + 0xa8], xmm5
movss dword [esp + 0x1c0], xmm5
movss dword [esp + 0x1c4], xmm5
movss dword [esp + 0x1c8], xmm5
movss dword [esp + 0x200], xmm5
movss dword [esp + 0x204], xmm5
movss dword [esp + 0x208], xmm5
movss dword [esp + 0x1b0], xmm5
movss dword [esp + 0x1b4], xmm5
movss dword [esp + 0x1b8], xmm5
lea eax, [esp + eax*4 + 0xa0]
jne 0x53e7d4
movss dword [eax], xmm5
movss dword [edx], xmm5
cvtsi2ss xmm2, edi
mulss xmm2, xmm3
mulss xmm2, xmm7
movss dword [esp + 0x38], xmm2
movss xmm7, dword [esp + 0x38]
movaps xmm2, xmm0
subss xmm2, xmm7
comiss xmm2, xmm5
jb 0x53e825
mulss xmm0, dword [0x738a38]
lea ebx, [edi + 1]
cvtsi2ss xmm7, ebx
mov ebx, dword [esp + 0x18]
divss xmm2, xmm7
addss xmm0, xmm2
addss xmm0, xmm3
addss xmm2, xmm4
movss dword [eax], xmm0
movss dword [edx], xmm2
jmp 0x53e84e
mulss xmm0, xmm6
movaps xmm2, xmm3
subss xmm2, xmm0
movss dword [eax], xmm2
movaps xmm0, xmm5
subss xmm0, xmm2
subss xmm0, xmm2
lea eax, [edi - 1]
cvtsi2ss xmm2, eax
divss xmm0, xmm2
movss dword [edx], xmm0
cmp ebx, 1
lea eax, [esp + ecx*4 + 0x1b0]
lea ecx, [esp + ecx*4 + 0x200]
jne 0x53e869
movss dword [ecx], xmm5
movss dword [eax], xmm5
cvtsi2ss xmm2, ebx
mulss xmm2, xmm3
mulss xmm2, dword [0x7389e8]
movaps xmm0, xmm1
subss xmm0, xmm2
comiss xmm0, xmm5
jb 0x53e8ae
mulss xmm1, dword [0x738a38]
lea edx, [ebx + 1]
cvtsi2ss xmm2, edx
divss xmm0, xmm2
addss xmm1, xmm0
addss xmm1, xmm3
addss xmm0, xmm4
movss dword [ecx], xmm1
movss dword [eax], xmm0
jmp 0x53e8d1
mulss xmm1, xmm6
subss xmm3, xmm1
movss dword [ecx], xmm3
subss xmm5, xmm3
lea ecx, [ebx - 1]
subss xmm5, xmm3
cvtsi2ss xmm0, ecx
divss xmm5, xmm0
movss dword [eax], xmm5
cmp edi, 1
jne 0x53e8e6
cmp ebx, edi
jne 0x53e8f7
mov edx, dword [esp + 0x1c]
mov dword [edx], 0
jmp 0x53e901
cmp ebx, 1
je 0x53e8f7
mov eax, dword [esp + 0x1c]
mov dword [eax], 1
jmp 0x53e901
mov ecx, dword [esp + 0x1c]
mov dword [ecx], 2
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
imul edx, edi
add ebx, 0xc
push edx
call fcn.00542c00
test edi, edi
jle 0x53ec9f
mov dword [esp + 0x20], edi
movss xmm0, dword [esp + 0x200]
addss xmm0, dword [esp + 0xa0]
mov eax, dword [esp + 0x18]
test eax, eax
movss dword [esp + 0x80], xmm0
movss xmm0, dword [esp + 0x204]
addss xmm0, dword [esp + 0xa4]
movss dword [esp + 0x84], xmm0
movss xmm0, dword [esp + 0x208]
addss xmm0, dword [esp + 0xa8]
movss dword [esp + 0x88], xmm0
jle 0x53ea36
mov edi, eax
call fcn.005519d0
dec edi
mov edx, dword [esp + 0x80]
xorps xmm0, xmm0
mov ecx, eax
mov dword [ecx], edx
mov edx, dword [esp + 0x84]
mov dword [ecx + 4], edx
mov edx, dword [esp + 0x88]
mov dword [ecx + 8], edx
mov edx, dword [esp + 0x8c]
mov dword [ecx + 0xc], edx
movss dword [eax + 0x18], xmm0
movss dword [eax + 0x14], xmm0
movss dword [eax + 0x10], xmm0
movss dword [eax + 0x28], xmm0
movss dword [eax + 0x24], xmm0
movss dword [eax + 0x20], xmm0
movss dword [eax + 0x38], xmm0
movss dword [eax + 0x34], xmm0
movss dword [eax + 0x30], xmm0
movss xmm0, dword [esp + 0x80]
addss xmm0, dword [esp + 0x1b0]
movss dword [esp + 0x80], xmm0
movss xmm0, dword [esp + 0x84]
addss xmm0, dword [esp + 0x1b4]
movss dword [esp + 0x84], xmm0
movss xmm0, dword [esp + 0x88]
addss xmm0, dword [esp + 0x1b8]
movss dword [esp + 0x88], xmm0
jne 0x53e980
movss xmm0, dword [esp + 0x1c0]
addss xmm0, dword [esp + 0xa0]
mov eax, dword [esp + 0x20]
movss dword [esp + 0xa0], xmm0
movss xmm0, dword [esp + 0x1c4]
addss xmm0, dword [esp + 0xa4]
movss dword [esp + 0xa4], xmm0
movss xmm0, dword [esp + 0x1c8]
addss xmm0, dword [esp + 0xa8]
dec eax
movss dword [esp + 0xa8], xmm0
mov dword [esp + 0x20], eax
jne 0x53e921
jmp 0x53ec9f
movss xmm3, dword [esp + 0x5c]
movss xmm1, dword [0x7389e8]
movss xmm0, dword [esp + 0x124]
movss xmm5, dword [0x738a1c]
movaps xmm4, xmm3
mulss xmm4, xmm1
movaps xmm2, xmm0
divss xmm2, xmm4
addss xmm2, xmm5
cvttss2si edi, xmm2
cmp edi, 1
jge 0x53eada
mov edi, 1
xorps xmm2, xmm2
cvtsi2ss xmm6, edi
mulss xmm6, xmm3
mulss xmm6, xmm1
movaps xmm1, xmm0
subss xmm1, xmm6
comiss xmm1, xmm2
movss dword [esp + 0x70], xmm2
movss dword [esp + 0x78], xmm2
jb 0x53eb31
mulss xmm0, dword [0x738a38]
lea eax, [edi + 1]
cvtsi2ss xmm2, eax
divss xmm1, xmm2
addss xmm0, xmm1
addss xmm0, xmm3
addss xmm1, xmm4
movss dword [esp + 0x74], xmm0
movss dword [esp + 0x4e4], xmm1
jmp 0x53eb61
mulss xmm0, xmm5
movaps xmm1, xmm3
subss xmm1, xmm0
movaps xmm0, xmm2
subss xmm0, xmm1
subss xmm0, xmm1
lea ecx, [edi - 1]
movss dword [esp + 0x74], xmm1
cvtsi2ss xmm1, ecx
divss xmm0, xmm1
movss dword [esp + 0x4e4], xmm0
mov eax, dword [esp + 0x1c]
mov edx, edi
dec edx
neg edx
sbb edx, edx
and edx, 2
lea ebx, [eax + 0xc]
push edi
mov dword [eax], edx
call fcn.00542c00
test edi, edi
jle 0x53ec9f
call fcn.005519d0
dec edi
mov edx, dword [esp + 0x70]
xorps xmm0, xmm0
mov ecx, eax
mov dword [ecx], edx
mov edx, dword [esp + 0x74]
mov dword [ecx + 4], edx
mov edx, dword [esp + 0x78]
mov dword [ecx + 8], edx
mov edx, dword [esp + 0x7c]
mov dword [ecx + 0xc], edx
movss dword [eax + 0x18], xmm0
movss dword [eax + 0x14], xmm0
movss dword [eax + 0x10], xmm0
movss dword [eax + 0x28], xmm0
movss dword [eax + 0x24], xmm0
movss dword [eax + 0x20], xmm0
movss dword [eax + 0x38], xmm0
movss dword [eax + 0x34], xmm0
movss dword [eax + 0x30], xmm0
movss xmm0, dword [esp + 0x70]
movss dword [esp + 0x70], xmm0
movss xmm0, dword [esp + 0x4e4]
addss xmm0, dword [esp + 0x74]
movss dword [esp + 0x74], xmm0
movss xmm0, dword [esp + 0x78]
movss dword [esp + 0x78], xmm0
jne 0x53eb82
jmp 0x53ec9f
mov edi, dword [esp + 0x1c]
mov dword [edi], 0
add edi, 0xc
push 1
mov ebx, edi
call fcn.00542c00
xorps xmm0, xmm0
movss dword [esp + 0x210], xmm0
movss dword [esp + 0x214], xmm0
movss dword [esp + 0x218], xmm0
call fcn.005519d0
mov edx, dword [esp + 0x210]
xorps xmm0, xmm0
mov ecx, eax
mov dword [ecx], edx
mov edx, dword [esp + 0x214]
mov dword [ecx + 4], edx
mov edx, dword [esp + 0x218]
mov dword [ecx + 8], edx
mov edx, dword [esp + 0x21c]
mov dword [ecx + 0xc], edx
movss dword [eax + 0x18], xmm0
movss dword [eax + 0x14], xmm0
movss dword [eax + 0x10], xmm0
movss dword [eax + 0x28], xmm0
movss dword [eax + 0x24], xmm0
movss dword [eax + 0x20], xmm0
movss dword [eax + 0x38], xmm0
movss dword [eax + 0x34], xmm0
movss dword [eax + 0x30], xmm0
movss xmm0, dword [esp + 0x5c]
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x2c]
test eax, eax
movss dword [edi + 8], xmm0
movss xmm0, dword [0x738b08]
je 0x53ecc6
movss xmm0, dword [0x7389d4]
mov ecx, dword [esp + 0x34]
movss xmm7, dword [ecx + 0x44]
movss dword [esp + 0xe4], xmm0
mov eax, dword [esp + 0xe4]
push eax
call fcn.005507e0
mov edx, dword [esp + 0x34]
mov ax, word [edx + 0x5c]
cmp ax, 0xffff
je 0x53ff3b
xorps xmm0, xmm0
movsx ebx, ax
mov eax, dword [esp + 0xec]
imul ebx, ebx, 0x1a0
add ebx, dword [eax]
add edx, 0x88
movss dword [esp + 0x24], xmm0
mov ecx, 1
mov dword [esp + 0x18], edx
mov dword [esp + 0x20], 0
mov dword [esp + 0x38], 3
lea eax, [ecx + 1]
mov dword [esp + 0x144], eax
cdq
mov esi, 3
idiv esi
mov esi, dword [esp + 0x34]
lea eax, [edx + edx*2]
lea edi, [esi + eax*4 + 0x88]
mov eax, ecx
cdq
mov ecx, 3
idiv ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test al, 1
lea edx, [edx + edx*2]
lea esi, [esi + edx*4 + 0x88]
je 0x53fed8
test al, 2
je 0x53fed8
xorps xmm0, xmm0
mov ecx, dword [esp + 0x20]
movss dword [esp + 0x1e4], xmm0
movss dword [esp + 0x1e8], xmm0
movss dword [esp + 0x1e0], xmm0
movss xmm0, dword [0x7389bc]
movss dword [esp + ecx + 0x1e0], xmm0
movss xmm0, dword [esp + 0x1e0]
movss xmm1, dword [esp + 0x1e8]
movaps xmm3, xmm0
mulss xmm3, dword [esp + 0x2e0]
movaps xmm2, xmm1
mulss xmm2, dword [esp + 0x300]
addss xmm3, xmm2
movss xmm2, dword [esp + 0x1e4]
movaps xmm7, xmm0
mulss xmm0, dword [esp + 0x2e8]
mulss xmm7, dword [esp + 0x2e4]
movaps xmm4, xmm2
mulss xmm4, dword [esp + 0x2f0]
addss xmm3, xmm4
movaps xmm4, xmm1
mulss xmm4, dword [esp + 0x304]
mulss xmm1, dword [esp + 0x308]
addss xmm0, xmm1
addss xmm7, xmm4
movaps xmm4, xmm2
mulss xmm2, dword [esp + 0x2f8]
mulss xmm4, dword [esp + 0x2f4]
addss xmm0, xmm2
movaps xmm1, xmm0
movaps xmm2, xmm1
addss xmm7, xmm4
mulss xmm2, xmm1
movss dword [esp + 0x48], xmm1
movaps xmm0, xmm3
mulss xmm0, xmm3
movaps xmm1, xmm7
addss xmm0, xmm2
mulss xmm1, xmm7
addss xmm0, xmm1
comiss xmm0, dword [0x738d48]
movss dword [esp + 0x40], xmm3
movss dword [esp + 0x44], xmm7
movss dword [esp + 0x17c], xmm0
jbe 0x53eeb9
fld dword [esp + 0x17c]
fsqrt
fdivr dword [0x7389bc]
fld dword [esp + 0x40]
fmul st(1)
fstp dword [esp + 0x40]
fld dword [esp + 0x44]
fmul st(1)
fstp dword [esp + 0x44]
movss xmm7, dword [esp + 0x44]
fmul dword [esp + 0x48]
fstp dword [esp + 0x48]
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x5f0]
call fcn.00551120
movss xmm0, dword [eax + 0x10]
subss xmm0, dword [eax]
mov edx, dword [esp + 0x20]
movss xmm4, dword [0x738a1c]
movss xmm1, dword [esp + 0x40]
movss xmm5, dword [esp + 0x60]
movss xmm6, dword [esp + 0x64]
movss xmm3, dword [esp + 0x48]
movss dword [esp + 0x430], xmm0
movss xmm0, dword [eax + 0x14]
subss xmm0, dword [eax + 4]
movss dword [esp + 0x434], xmm0
movss xmm0, dword [eax + 0x18]
subss xmm0, dword [eax + 8]
test byte [edi], 2
movss dword [esp + 0x438], xmm0
movss xmm0, dword [esp + edx + 0x430]
mulss xmm0, dword [0x738b84]
movaps xmm2, xmm7
mulss xmm1, xmm4
mulss xmm1, xmm0
subss xmm5, xmm1
movss dword [esp + 0x450], xmm5
mulss xmm2, xmm4
mulss xmm2, xmm0
movaps xmm5, xmm6
subss xmm5, xmm2
movss dword [esp + 0x454], xmm5
movss xmm5, dword [esp + 0x68]
mulss xmm3, xmm4
mulss xmm3, xmm0
movaps xmm7, xmm5
subss xmm7, xmm3
movss dword [esp + 0x458], xmm7
movss xmm7, dword [esp + 0x60]
addss xmm7, xmm1
xorps xmm1, xmm1
addss xmm6, xmm2
addss xmm5, xmm3
movss dword [esp + 0x440], xmm7
movss dword [esp + 0x444], xmm6
movss dword [esp + 0x448], xmm5
movss dword [esp + 0x28], xmm1
jne 0x53efda
movss xmm1, dword [edi + 8]
subss xmm1, dword [edi + 4]
movss xmm2, dword [esp + 0x24]
comiss xmm2, xmm1
ja 0x53efda
movss dword [esp + 0x24], xmm1
test byte [esi], 2
jne 0x53effa
movss xmm1, dword [esi + 8]
subss xmm1, dword [esi + 4]
movss xmm2, dword [esp + 0x24]
comiss xmm2, xmm1
ja 0x53effa
movss dword [esp + 0x24], xmm1
movss xmm1, dword [esp + 0x24]
ucomiss xmm1, dword [0x738a54]
lahf
test ah, 0x44
jnp 0x53f0d7
mulss xmm0, xmm4
lea eax, [esp + 0x18c]
push eax
lea ecx, [esp + 0x188]
movss dword [esp + 0x50c], xmm0
movss dword [esp + 0x51c], xmm0
push ecx
movaps xmm0, xmm1
mulss xmm0, xmm4
mulss xmm0, dword [0x738bd8]
push ecx
movss dword [esp], xmm0
call fcn.00403f60
movss xmm2, dword [esp + 0x190]
movss xmm0, dword [esp + 0x198]
xorps xmm3, xmm3
movss xmm4, dword [esp + 0x524]
movaps xmm5, xmm0
movaps xmm1, xmm2
mulss xmm1, xmm4
mulss xmm5, xmm3
addss xmm1, xmm5
mulss xmm2, xmm3
subss xmm3, xmm1
movss xmm1, dword [esp + 0x514]
mulss xmm0, xmm4
movss dword [esp + 0x4fc], xmm3
fld dword [esp + 0x4fc]
fmul dword [esp + 0x4fc]
subss xmm0, xmm2
subss xmm1, xmm0
movss dword [esp + 0x100], xmm1
fld dword [esp + 0x100]
add esp, 0xc
fmul dword [esp + 0xf4]
faddp st(1)
fsqrt
fstp dword [esp + 0x28]
mov edx, dword [esp + 0x3c]
push edx
call fcn.00542a30
push ecx
mov edi, eax
mov eax, esp
mov byte [eax + 3], 0xff
mov byte [eax + 2], 0
mov byte [eax + 1], 0
mov byte [eax], 0xff
mov eax, dword [esp + 0x2c]
push 1
push eax
mov eax, dword [esp + 0x3c]
push ebx
lea esi, [esp + 0x460]
call fcn.0054f820
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.00542a30
mov edx, dword [esp + 0x28]
push ecx
mov edi, eax
mov eax, esp
push 1
push edx
mov byte [eax + 3], 0xff
mov byte [eax + 2], 0xff
mov byte [eax + 1], 0
mov byte [eax], 0
mov eax, dword [esp + 0x3c]
push ebx
lea esi, [esp + 0x450]
call fcn.0054f820
mov eax, dword [esp + 0x18]
test byte [eax], 2
je 0x53fed8
movss xmm0, dword [eax + 8]
lea ecx, [esp + 0xfc]
push ecx
movss dword [esp + 0x16c], xmm0
movss xmm0, dword [eax + 4]
mulss xmm0, dword [0x738bd8]
mulss xmm0, dword [0x738a1c]
lea edx, [esp + 0x144]
push edx
push ecx
movss dword [esp], xmm0
call fcn.00403f60
movss xmm0, dword [esp + 0x108]
movss dword [esp + 0x128], xmm0
movss xmm0, dword [esp + 0x14c]
movaps xmm1, xmm0
mulss xmm1, dword [esp + 0x4c]
add esp, 0xc
movss dword [esp + 0x110], xmm1
movaps xmm1, xmm0
mulss xmm0, dword [esp + 0x48]
mulss xmm1, dword [esp + 0x44]
lea eax, [esp + 0xbc]
push eax
lea ecx, [esp + 0x14c]
movss dword [esp + 0x11c], xmm0
movss xmm0, dword [esp + 0x16c]
mulss xmm0, dword [0x738bd8]
mulss xmm0, dword [0x738a1c]
push ecx
push ecx
movss dword [esp + 0x120], xmm1
movss dword [esp], xmm0
call fcn.00403f60
movss xmm0, dword [esp + 0xc8]
movss dword [esp + 0x118], xmm0
movss xmm0, dword [esp + 0x154]
movaps xmm1, xmm0
mulss xmm1, dword [esp + 0x4c]
movss dword [esp + 0x10c], xmm1
lea edx, [esp + 0x5ec]
movaps xmm1, xmm0
mulss xmm1, dword [esp + 0x50]
mulss xmm0, dword [esp + 0x54]
push 0x3f000000
push edx
lea edx, [esp + 0x124]
lea ecx, [esp + 0x114]
movss dword [esp + 0x118], xmm1
movss dword [esp + 0x11c], xmm0
call fcn.006292f0
movss xmm0, dword [eax]
movss xmm2, dword [0x7389e8]
movss xmm1, dword [esp + 0x128]
movss xmm5, dword [esp + 0x110]
movss xmm6, dword [esp + 0x124]
movss dword [esp + 0xa4], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0xa8], xmm0
movss xmm0, dword [eax + 8]
movss dword [esp + 0xac], xmm0
movss xmm0, dword [eax + 0xc]
mulss xmm1, xmm2
movss dword [esp + 0xb0], xmm0
movss xmm0, dword [esp + 0x12c]
movaps xmm4, xmm1
mulss xmm4, xmm5
movss dword [esp + 0x19c], xmm4
mulss xmm0, xmm2
movaps xmm3, xmm6
mulss xmm3, xmm2
movaps xmm4, xmm0
mulss xmm4, xmm5
movaps xmm7, xmm3
movss dword [esp + 0xf4], xmm4
mulss xmm3, xmm6
movaps xmm4, xmm1
add esp, 0x14
mulss xmm7, xmm5
movss dword [esp + 0xb4], xmm3
mulss xmm4, xmm6
mulss xmm1, dword [esp + 0x114]
movaps xmm5, xmm0
mulss xmm5, xmm6
movaps xmm6, xmm0
mulss xmm0, dword [esp + 0x118]
mulss xmm6, dword [esp + 0x114]
movss dword [esp + 0x150], xmm0
addss xmm0, xmm1
movss dword [esp + 0x138], xmm1
movss xmm1, dword [0x7389bc]
movaps xmm3, xmm1
subss xmm3, xmm0
movaps xmm0, xmm4
addss xmm0, dword [esp + 0xe0]
subss xmm4, dword [esp + 0xe0]
movss dword [esp + 0x324], xmm0
movss dword [esp + 0x320], xmm3
movss xmm3, dword [esp + 0x188]
movaps xmm0, xmm5
subss xmm0, xmm3
addss xmm5, xmm3
movss dword [esp + 0x328], xmm0
movss xmm0, dword [esp + 0x150]
addss xmm0, dword [esp + 0xb4]
movss dword [esp + 0x330], xmm4
movss dword [esp + 0x340], xmm5
movss xmm5, dword [esp + 0x100]
movaps xmm4, xmm1
subss xmm4, xmm0
movaps xmm0, xmm6
subss xmm6, xmm7
addss xmm0, xmm7
movss xmm7, dword [esp + 0xbc]
movss dword [esp + 0x344], xmm6
movss dword [esp + 0x334], xmm4
movss xmm4, dword [esp + 0x104]
mulss xmm5, xmm2
movss dword [esp + 0x338], xmm0
movss xmm0, dword [esp + 0x138]
addss xmm0, dword [esp + 0xb4]
movaps xmm6, xmm5
mulss xmm6, xmm7
movss dword [esp + 0x160], xmm6
mulss xmm4, xmm2
movaps xmm6, xmm4
mulss xmm6, xmm7
movaps xmm3, xmm1
subss xmm3, xmm0
xorps xmm0, xmm0
movss dword [esp + 0x348], xmm3
movss xmm3, dword [esp + 0x108]
mulss xmm3, xmm2
movss dword [esp + 0x158], xmm6
movaps xmm6, xmm3
mulss xmm6, xmm7
movss xmm7, dword [esp + 0x100]
mulss xmm5, xmm7
movss dword [esp + 0xc4], xmm6
movaps xmm6, xmm4
movss dword [esp + 0xf0], xmm5
movaps xmm5, xmm3
mulss xmm6, xmm7
mulss xmm5, xmm7
movss xmm7, dword [esp + 0x104]
mulss xmm4, xmm7
movss dword [esp + 0xc8], xmm4
movaps xmm4, xmm3
mulss xmm3, dword [esp + 0x108]
mulss xmm4, xmm7
movss dword [esp + 0x180], xmm3
addss xmm3, dword [esp + 0xc8]
movaps xmm7, xmm1
subss xmm7, xmm3
movss dword [esp + 0x32c], xmm0
movss dword [esp + 0x33c], xmm0
movss dword [esp + 0x34c], xmm0
movss dword [esp + 0x35c], xmm1
movss dword [esp + 0x358], xmm0
movss dword [esp + 0x354], xmm0
movss dword [esp + 0x350], xmm0
movss dword [esp + 0x360], xmm7
movss xmm7, dword [esp + 0x158]
movaps xmm3, xmm6
addss xmm3, dword [esp + 0xc4]
subss xmm6, dword [esp + 0xc4]
movss dword [esp + 0x364], xmm3
movss dword [esp + 0x370], xmm6
movaps xmm3, xmm5
subss xmm3, xmm7
movss dword [esp + 0x368], xmm3
movss xmm3, dword [esp + 0x180]
addss xmm3, dword [esp + 0xf0]
movaps xmm6, xmm1
subss xmm6, xmm3
movss xmm3, dword [esp + 0x160]
movss dword [esp + 0x374], xmm6
movaps xmm6, xmm4
subss xmm4, xmm3
addss xmm6, xmm3
movss xmm3, dword [esp + 0xc8]
addss xmm3, dword [esp + 0xf0]
movss dword [esp + 0x384], xmm4
addss xmm5, xmm7
movss dword [esp + 0x378], xmm6
movss dword [esp + 0x380], xmm5
movss xmm5, dword [esp + 0x90]
mulss xmm5, xmm2
movaps xmm4, xmm1
subss xmm4, xmm3
movss xmm3, dword [esp + 0x98]
mulss xmm3, xmm2
movss dword [esp + 0x388], xmm4
movss xmm4, dword [esp + 0x94]
mulss xmm4, xmm2
movss xmm2, dword [esp + 0x9c]
movaps xmm6, xmm4
mulss xmm6, xmm2
movss dword [esp + 0x178], xmm6
movaps xmm6, xmm3
mulss xmm6, xmm2
movss dword [esp + 0xd0], xmm6
movss xmm6, dword [esp + 0x90]
movaps xmm7, xmm5
mulss xmm7, xmm2
movaps xmm2, xmm4
mulss xmm4, dword [esp + 0x94]
mulss xmm2, xmm6
mulss xmm5, xmm6
movaps xmm6, xmm3
mulss xmm6, dword [esp + 0x90]
movss dword [esp + 0xd8], xmm5
movaps xmm5, xmm3
mulss xmm3, dword [esp + 0x98]
mulss xmm5, dword [esp + 0x94]
movss dword [esp + 0xe8], xmm4
movss dword [esp + 0x13c], xmm3
addss xmm3, xmm4
movaps xmm4, xmm1
subss xmm4, xmm3
movaps xmm3, xmm2
addss xmm3, dword [esp + 0xd0]
subss xmm2, dword [esp + 0xd0]
movss dword [esp + 0x3e0], xmm4
movss dword [esp + 0x3e4], xmm3
movss xmm3, dword [esp + 0x178]
movss dword [esp + 0x3f0], xmm2
movss xmm2, dword [esp + 0x13c]
addss xmm2, dword [esp + 0xd8]
movaps xmm4, xmm6
subss xmm4, xmm3
movss dword [esp + 0x3e8], xmm4
movaps xmm4, xmm1
subss xmm4, xmm2
movss dword [esp + 0x36c], xmm0
movss dword [esp + 0x37c], xmm0
movss dword [esp + 0x38c], xmm0
movss dword [esp + 0x39c], xmm1
movss dword [esp + 0x398], xmm0
movss dword [esp + 0x394], xmm0
movss dword [esp + 0x390], xmm0
movss dword [esp + 0x3f4], xmm4
movaps xmm2, xmm5
addss xmm6, xmm3
movaps xmm3, xmm1
movss dword [esp + 0x41c], xmm1
addss xmm2, xmm7
movaps xmm1, xmm0
subss xmm1, dword [esp + 0x60]
movss dword [esp + 0x3f8], xmm2
movss xmm2, dword [esp + 0xe8]
addss xmm2, dword [esp + 0xd8]
movss dword [esp + 0x420], xmm1
mov ecx, 0x10
lea esi, [esp + 0x2a0]
lea edi, [esp + 0x520]
movaps xmm1, xmm0
subss xmm1, dword [esp + 0x64]
lea eax, [esp + 0x420]
movss dword [esp + 0x3ec], xmm0
movss dword [esp + 0x3fc], xmm0
movss dword [esp + 0x40c], xmm0
movss dword [esp + 0x418], xmm0
movss dword [esp + 0x414], xmm0
movss dword [esp + 0x410], xmm0
subss xmm0, dword [esp + 0x68]
rep movsd dword es:[edi], dword [esi]
subss xmm5, xmm7
subss xmm3, xmm2
push eax
lea ecx, [esp + 0x524]
movss dword [esp + 0x404], xmm6
movss dword [esp + 0x408], xmm5
movss dword [esp + 0x40c], xmm3
movss dword [esp + 0x428], xmm1
movss dword [esp + 0x42c], xmm0
call fcn.00404260
lea ecx, [esp + 0x520]
push ecx
lea edx, [esp + 0x564]
push edx
lea edx, [esp + 0x328]
call fcn.0062a240
lea eax, [esp + 0x528]
push eax
lea ecx, [esp + 0x5ac]
push ecx
lea edx, [esp + 0x370]
call fcn.0062a240
lea edx, [esp + 0x530]
push edx
lea eax, [esp + 0x234]
push eax
lea edx, [esp + 0x3f8]
call fcn.0062a240
add esp, 0x18
lea ecx, [esp + 0x60]
push ecx
lea ecx, [esp + 0x564]
call fcn.00404260
lea edx, [esp + 0x60]
push edx
lea ecx, [esp + 0x5a4]
call fcn.00404260
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x224]
call fcn.00404260
movss xmm4, dword [esp + 0x250]
movss xmm0, dword [esp + 0x590]
movss xmm5, dword [esp + 0x254]
movss xmm6, dword [esp + 0x258]
subss xmm0, xmm4
movss dword [esp + 0x1f0], xmm0
movss xmm0, dword [esp + 0x594]
subss xmm0, xmm5
movss dword [esp + 0x1f4], xmm0
movss xmm0, dword [esp + 0x598]
subss xmm0, xmm6
movss dword [esp + 0x1f8], xmm0
movss xmm0, dword [esp + 0x5d0]
subss xmm0, xmm4
movss dword [esp + 0x1a0], xmm0
movss xmm0, dword [esp + 0x5d4]
movss xmm7, dword [0x7389bc]
movss xmm1, dword [esp + 0x228]
movss xmm2, dword [esp + 0x238]
subss xmm0, xmm5
movss dword [esp + 0x1a4], xmm0
movss xmm0, dword [esp + 0x5d8]
subss xmm0, xmm6
movss xmm3, dword [esp + 0x248]
movss dword [esp + 0x1a8], xmm0
movss xmm0, dword [esp + 0x220]
movss dword [esp + 0x3a0], xmm0
movss xmm0, dword [esp + 0x230]
movss dword [esp + 0x3c0], xmm1
movss dword [esp + 0x3a4], xmm0
movss xmm0, dword [esp + 0x240]
mulss xmm1, xmm6
movss dword [esp + 0x3a8], xmm0
movss xmm0, dword [esp + 0x224]
movss dword [esp + 0x3dc], xmm7
movss xmm7, dword [esp + 0x224]
movss dword [esp + 0x3b0], xmm0
movss xmm0, dword [esp + 0x234]
mulss xmm7, xmm5
addss xmm1, xmm7
movss xmm7, dword [esp + 0x220]
movss dword [esp + 0x3b4], xmm0
movss xmm0, dword [esp + 0x244]
movss dword [esp + 0x3b8], xmm0
xorps xmm0, xmm0
mulss xmm7, xmm4
addss xmm1, xmm7
movss dword [esp + 0x3c4], xmm2
movaps xmm7, xmm0
subss xmm7, xmm1
movss xmm1, dword [esp + 0x234]
mulss xmm1, xmm5
mulss xmm2, xmm6
addss xmm2, xmm1
movss xmm1, dword [esp + 0x230]
mulss xmm1, xmm4
addss xmm2, xmm1
movaps xmm1, xmm0
subss xmm1, xmm2
movss dword [esp + 0x3d4], xmm1
movss xmm1, dword [esp + 0x244]
movss dword [esp + 0x3c8], xmm3
mulss xmm1, xmm5
mulss xmm3, xmm6
addss xmm3, xmm1
movss xmm1, dword [esp + 0x240]
movss dword [esp + 0x3ac], xmm0
movss dword [esp + 0x3bc], xmm0
movss dword [esp + 0x3cc], xmm0
mulss xmm1, xmm4
addss xmm3, xmm1
subss xmm0, xmm3
movss dword [esp + 0x3d0], xmm7
movss dword [esp + 0x3d8], xmm0
mov ecx, 0x10
lea esi, [esp + 0x3a0]
lea edi, [esp + 0x460]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.00542a30
movss xmm0, dword [ebx + 0x40]
movss xmm4, dword [ebx + 0x44]
movss xmm5, dword [ebx + 0x54]
movss xmm6, dword [ebx + 0x64]
movss xmm1, dword [ebx + 0x48]
movss xmm2, dword [ebx + 0x58]
movss dword [esp + 0x260], xmm0
movss xmm0, dword [ebx + 0x50]
movss dword [esp + 0x264], xmm0
movss xmm0, dword [ebx + 0x60]
movss dword [esp + 0x268], xmm0
movss dword [esp + 0x270], xmm4
movss dword [esp + 0x274], xmm5
movss dword [esp + 0x278], xmm6
movss dword [esp + 0x280], xmm1
movss dword [esp + 0x284], xmm2
mulss xmm4, dword [ebx + 0x74]
mulss xmm1, dword [ebx + 0x78]
xorps xmm0, xmm0
mulss xmm2, dword [ebx + 0x78]
mulss xmm5, dword [ebx + 0x74]
addss xmm1, xmm4
movss xmm4, dword [ebx + 0x70]
mulss xmm4, dword [esp + 0x260]
movss xmm3, dword [ebx + 0x68]
mulss xmm6, dword [ebx + 0x74]
addss xmm1, xmm4
movss xmm7, dword [0x7389bc]
movss dword [esp + 0x288], xmm3
mulss xmm3, dword [ebx + 0x78]
addss xmm3, xmm6
movaps xmm4, xmm0
subss xmm4, xmm1
movss xmm1, dword [ebx + 0x70]
mulss xmm1, dword [esp + 0x264]
movss dword [esp + 0x290], xmm4
addss xmm2, xmm5
addss xmm2, xmm1
movaps xmm1, xmm0
subss xmm1, xmm2
movss dword [esp + 0x294], xmm1
movss xmm1, dword [ebx + 0x70]
mulss xmm1, dword [esp + 0x268]
addss xmm3, xmm1
movss xmm1, dword [esp + 0x254]
movss dword [esp + 0x26c], xmm0
movss dword [esp + 0x27c], xmm0
movss dword [esp + 0x28c], xmm0
subss xmm0, xmm3
movss dword [esp + 0x298], xmm0
movss xmm0, dword [esp + 0x250]
mov ecx, 0x10
lea esi, [esp + 0x260]
lea edi, [esp + 0x4a0]
movss dword [esp + 0x29c], xmm7
rep movsd dword es:[edi], dword [esi]
movss xmm3, dword [esp + 0x4a0]
movss xmm2, dword [esp + 0x4b0]
movss xmm4, dword [esp + 0x4c0]
mulss xmm3, xmm0
mulss xmm2, xmm1
addss xmm3, xmm2
movss xmm2, dword [esp + 0x258]
mulss xmm4, xmm2
addss xmm3, xmm4
addss xmm3, dword [esp + 0x4d0]
movss xmm4, dword [esp + 0x4b4]
movss dword [esp + 0x1d0], xmm3
movss xmm3, dword [esp + 0x4a4]
mulss xmm3, xmm0
mulss xmm4, xmm1
addss xmm3, xmm4
movss xmm4, dword [esp + 0x4c4]
mulss xmm4, xmm2
addss xmm3, xmm4
addss xmm3, dword [esp + 0x4d4]
movss xmm4, dword [esp + 0x4b8]
movss dword [esp + 0x1d4], xmm3
movss xmm3, dword [esp + 0x4a8]
mulss xmm3, xmm0
mulss xmm4, xmm1
addss xmm3, xmm4
movss xmm4, dword [esp + 0x4c8]
mulss xmm4, xmm2
addss xmm3, xmm4
addss xmm3, dword [esp + 0x4d8]
movss xmm4, dword [esp + 0x470]
movss dword [esp + 0x1d8], xmm3
movss xmm3, dword [esp + 0x460]
mulss xmm3, xmm0
mulss xmm4, xmm1
addss xmm3, xmm4
movss xmm4, dword [esp + 0x480]
mulss xmm4, xmm2
addss xmm3, xmm4
addss xmm3, dword [esp + 0x490]
movss dword [esp + 0x190], xmm3
fld dword [esp + 0x1f8]
movss xmm3, dword [esp + 0x464]
fld dword [esp + 0x1f4]
movss xmm4, dword [esp + 0x474]
fld dword [esp + 0x1f0]
mov edx, dword [esp + 0x30]
fmul dword [esp + 0x1f0]
mulss xmm3, xmm0
fld st(1)
mulss xmm4, xmm1
fmul st(2)
addss xmm3, xmm4
movss xmm4, dword [esp + 0x484]
mov dword [eax + 0x28], edx
faddp st(1)
mov edx, dword [esp + 0x190]
fld st(2)
mulss xmm4, xmm2
fmul st(3)
addss xmm3, xmm4
addss xmm3, dword [esp + 0x494]
movss dword [esp + 0x194], xmm3
faddp st(1)
movss xmm3, dword [esp + 0x468]
mulss xmm3, xmm0
movss xmm0, dword [esp + 0x478]
fsqrt
mulss xmm0, xmm1
addss xmm3, xmm0
movss xmm0, dword [esp + 0x488]
mov ecx, eax
mov dword [ecx], edx
mov edx, dword [esp + 0x194]
mov dword [ecx + 4], edx
mulss xmm0, xmm2
addss xmm3, xmm0
addss xmm3, dword [esp + 0x498]
movss dword [esp + 0x198], xmm3
mov edx, dword [esp + 0x198]
mov dword [ecx + 8], edx
mov edx, dword [esp + 0x19c]
mov dword [ecx + 0xc], edx
mov edx, dword [esp + 0x1d0]
lea ecx, [eax + 0x10]
mov dword [ecx], edx
mov edx, dword [esp + 0x1d4]
mov dword [ecx + 4], edx
mov edx, dword [esp + 0x1d8]
mov dword [ecx + 8], edx
mov edx, dword [esp + 0x1dc]
mov dword [ecx + 0xc], edx
mov edx, dword [esp + 0x1a4]
mov ecx, dword [esp + 0x1a8]
mov dword [esp + 0xf8], edx
mov dword [esp + 0xc0], ecx
mov dword [eax + 0x2c], ebx
fstp st(2)
fstp st(0)
fld dword [esp + 0x1a0]
fmul dword [esp + 0x1a0]
fld dword [esp + 0xf8]
fmul dword [esp + 0xf8]
faddp st(1)
fld dword [esp + 0xc0]
fmul dword [esp + 0xc0]
faddp st(1)
fsqrt
fxch st(1)
fxch st(1)
faddp st(1)
mov dword [eax + 0x20], 1
fmul dword [0x738a1c]
fstp dword [eax + 0x24]
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x144]
add esi, 0xc
add edx, 4
dec eax
mov dword [esp + 0x18], esi
mov dword [esp + 0x20], edx
mov dword [esp + 0x38], eax
jne 0x53ed31
mov eax, dword [esp + 0x3c]
push eax
call fcn.00542a30
push ecx
mov edi, eax
mov eax, esp
push 0
mov cl, 0xff
push 0
push ebx
mov ebx, dword [esp + 0x40]
mov byte [eax + 3], cl
mov byte [eax + 2], cl
mov byte [eax + 1], cl
mov byte [eax], 0
lea esi, [esp + 0x70]
mov eax, ebx
call fcn.0054f820
mov dword [ebx + 0x194], edi
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0xcc]
inc eax
cmp eax, ecx
mov dword [esp + 0x2c], eax
jl 0x53e1e6
mov esi, dword [ebp + 8]
mov ecx, dword [0x8d66a4]
xor eax, eax
cmp ecx, eax
jne 0x53ff76
mov dword [0x8d669c], esi
mov dword [0x8d66a0], esi
mov dword [esi + 8], eax
mov dword [esi + 4], eax
jmp 0x53ff91
mov ecx, dword [0x8d66a0]
mov dword [ecx + 8], esi
mov edx, dword [0x8d66a0]
mov dword [esi + 4], edx
mov dword [esi + 8], eax
mov dword [0x8d66a0], esi
inc dword [0x8d66a4]
or dword [esi], 5
mov eax, esi
mov ecx, 0x8d6600
call fcn.0045c6b0
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret 0xc