Function at 0x5c2340
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x88
push esi
push edi
mov edi, ecx
mov dword [esp + 0x14], edi
mov eax, dword [edi + 0x38]
cmp eax, dword [edi + 0x3c]
jne 0x5c237e
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov eax, dword [eax]
cmp ecx, eax
je 0x5c2ef2
push ecx
push eax
call fcn.005d3f10
add esp, 8
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
mov edx, dword [ebp + 0x10]
mov eax, dword [edx]
cmp dword [eax + 4], 2
jle 0x5c238f
movsx esi, word [eax + 0x32]
jmp 0x5c2391
xor esi, esi
cmp byte [edi + 0x12d], 0
mov dword [esp + 0x10], esi
jne 0x5c24ba
mov eax, dword [ebp + 0xc]
mov byte [edi + 0x12d], 1
mov eax, dword [eax]
mov eax, dword [eax]
movsx ecx, word [eax + 0x14]
movaps xmm0, xmmword [ecx + eax]
movaps xmmword [edi + 0xb0], xmm0
movaps xmm0, xmmword [ecx + eax + 0x10]
movaps xmmword [edi + 0xc0], xmm0
movaps xmm0, xmmword [ecx + eax + 0x20]
movaps xmmword [edi + 0xd0], xmm0
test esi, esi
jle 0x5c2498
mov eax, dword [edi + 0x118]
add edi, 0x110
and eax, 0x3fffffff
mov dword [esp + 0x20], edi
cmp eax, esi
jge 0x5c2409
push 0x30
push esi
push edi
push 0x7d8954
call fcn.00467b80
add esp, 0x10
mov ecx, dword [edi + 8]
and ecx, 0x3fffffff
cmp ecx, esi
jge 0x5c2430
add ecx, ecx
mov eax, esi
cmp esi, ecx
push 0x30
cmovl eax, ecx
push eax
push edi
push 0x7d8954
call fcn.00467b80
add esp, 0x10
mov eax, dword [ebp + 0xc]
mov dword [edi + 4], esi
mov eax, dword [eax]
mov eax, dword [eax]
movsx edi, word [eax + 0x34]
add edi, eax
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [esp + 0x14], eax
lea eax, [esi + esi*2]
shl eax, 4
shr eax, 4
mov dword [esp + 0x10], eax
test eax, eax
jle 0x5c2498
nop dword [eax + eax]
mov ecx, dword [edi + 4]
lea edi, [edi + 0x10]
mov eax, dword [edi - 0x10]
mov edx, dword [edi - 8]
mov esi, dword [edi - 4]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x14]
mov dword [ecx], eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov dword [eax + 0xc], esi
add eax, 0x10
sub dword [esp + 0x10], 1
mov dword [esp + 0x14], eax
jne 0x5c2460
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
mov eax, dword [ebp + 0x10]
cmp eax, ecx
je 0x5c2ef2
push eax
push ecx
call fcn.005d3f10
add esp, 8
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
cmp byte [edi + 0x12e], 0
jne 0x5c27bd
cmp byte [edi + 0x12c], 0
je 0x5c279e
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax]
movsx ecx, word [eax + 0x24]
movaps xmm0, xmmword [ecx + eax]
movaps xmmword [edi + 0xe0], xmm0
movaps xmm0, xmmword [ecx + eax + 0x10]
movaps xmmword [edi + 0xf0], xmm0
movaps xmm0, xmmword [ecx + eax + 0x20]
movaps xmmword [edi + 0x100], xmm0
test esi, esi
jle 0x5c279e
cmp esi, dword [edi + 0x114]
jne 0x5c279e
lea edx, [edi + 0x11c]
mov byte [edi + 0x12e], 1
mov eax, dword [edx + 8]
and eax, 0x3fffffff
mov dword [esp + 0x24], edx
cmp eax, esi
jge 0x5c254a
push 0x30
push esi
push edx
push 0x7d8954
call fcn.00467b80
add esp, 0x10
lea edx, [edi + 0x11c]
mov ecx, dword [edx + 8]
and ecx, 0x3fffffff
cmp ecx, esi
jge 0x5c2577
add ecx, ecx
mov eax, esi
cmp esi, ecx
push 0x30
cmovl eax, ecx
push eax
push edx
push 0x7d8954
call fcn.00467b80
add esp, 0x10
lea edx, [edi + 0x11c]
mov eax, dword [ebp + 0xc]
mov dword [edx + 4], esi
mov edx, dword [edi + 0x110]
mov eax, dword [eax]
mov eax, dword [eax]
movsx ecx, word [eax + 0x34]
add ecx, eax
mov dword [esp + 0x1c], ecx
test esi, esi
jle 0x5c2738
mov edi, ecx
mov dword [esp + 0x20], esi
sub edi, edx
lea eax, [edx + 0x10]
mov dword [esp + 0x2c], edi
mov edi, 0xfffffff0
sub edi, edx
mov dword [esp + 0x18], eax
mov dword [esp + 0x28], edi
mov edi, dword [esp + 0x24]
nop dword [eax + eax]
movaps xmm5, xmmword [eax]
movaps xmm2, xmmword [eax - 0x10]
movaps xmm1, xmm5
movaps xmm3, xmm2
shufps xmm1, xmm5, 0xc9
mulps xmm3, xmm5
movaps xmm7, xmm5
mov esi, dword [esp + 0x28]
shufps xmm7, xmm5, 0xd2
movaps xmm4, xmm5
shufps xmm4, xmm5, 0xff
add esi, eax
add esi, dword [edi]
movaps xmm0, xmm3
shufps xmm0, xmm3, 0x55
addss xmm0, xmm3
shufps xmm3, xmm3, 0xaa
addss xmm3, xmm0
movaps xmm0, xmm2
shufps xmm0, xmm2, 0xd2
mulps xmm1, xmm0
movaps xmm0, xmm2
shufps xmm0, xmm2, 0xc9
mulps xmm7, xmm0
shufps xmm3, xmm3, 0
mulps xmm3, xmm5
subps xmm7, xmm1
xorps xmm5, xmmword [0x719d70]
movaps xmm1, xmmword [eax + 0x10]
add eax, dword [esp + 0x2c]
movaps xmm0, xmm1
unpckhps xmm0, xmmword [0x719330]
shufps xmm1, xmm0, 0xc4
mulps xmm7, xmm4
mulps xmm4, xmm4
movaps xmmword [esp + 0x70], xmm5
addps xmm4, xmmword [0x7195c0]
mulps xmm4, xmm2
rcpps xmm2, xmm1
addps xmm4, xmm3
movaps xmm0, xmm2
mulps xmm0, xmm1
addps xmm7, xmm4
movaps xmm4, xmmword [eax]
movaps xmm3, xmm4
movaps xmm5, xmm4
mulps xmm0, xmm2
addps xmm2, xmm2
shufps xmm5, xmm4, 0xff
addps xmm7, xmm7
subps xmm2, xmm0
xorps xmm7, xmmword [0x719130]
mulps xmm3, xmm7
movaps xmm1, xmm7
andps xmm2, xmmword [0x719150]
movaps xmmword [esp + 0x80], xmm2
movaps xmm2, xmm7
shufps xmm1, xmm7, 0xc9
movaps xmm0, xmm3
shufps xmm2, xmm7, 0xd2
shufps xmm0, xmm3, 0x55
addss xmm0, xmm3
movaps xmmword [esp + 0x60], xmm7
shufps xmm3, xmm3, 0xaa
addss xmm3, xmm0
movaps xmm0, xmm4
shufps xmm0, xmm4, 0xd2
mulps xmm1, xmm0
movaps xmm0, xmm4
shufps xmm0, xmm4, 0xc9
mulps xmm2, xmm0
shufps xmm3, xmm3, 0
mulps xmm3, xmm4
subps xmm2, xmm1
mulps xmm2, xmm5
mulps xmm5, xmm5
addps xmm5, xmmword [0x7195c0]
mulps xmm5, xmm7
addps xmm5, xmm3
addps xmm2, xmm5
addps xmm2, xmm2
addps xmm2, xmmword [ecx]
lea ecx, [esp + 0x70]
push ecx
push eax
lea ecx, [esi + 0x10]
movaps xmmword [esi], xmm2
call fcn.004782a0
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
add eax, 0x30
mov dword [esp + 0x18], eax
movaps xmm0, xmmword [ecx + 0x20]
add ecx, 0x30
sub dword [esp + 0x20], 1
mulps xmm0, xmmword [esp + 0x80]
mov dword [esp + 0x1c], ecx
movaps xmmword [esi + 0x20], xmm0
jne 0x5c25c0
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x10]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax]
movsx ecx, word [eax + 0x34]
add ecx, eax
mov eax, dword [edi + 0x110]
mov dword [esp + 0x14], eax
lea eax, [esi + esi*2]
shl eax, 4
shr eax, 4
mov dword [esp + 0x10], ecx
mov dword [esp + 0x20], eax
test eax, eax
jle 0x5c279b
mov edi, ecx
mov eax, dword [edi]
mov ecx, dword [edi + 4]
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov edi, dword [esp + 0x14]
mov dword [edi], eax
mov eax, edi
mov edi, dword [esp + 0x10]
add edi, 0x10
mov dword [esp + 0x10], edi
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov dword [eax + 0xc], esi
add eax, 0x10
sub dword [esp + 0x20], 1
mov dword [esp + 0x14], eax
jne 0x5c2766
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
cmp edx, eax
je 0x5c2ef2
push edx
push eax
call fcn.005d3f10
add esp, 8
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
cmp esi, dword [edi + 0x114]
je 0x5c27db
mov eax, dword [ebp + 0xc]
push edx
push dword [eax]
call fcn.005d3f10
add esp, 8
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
movss xmm1, dword [edi + 0x50]
movss xmm0, dword [edi + 0x4c]
addss xmm0, xmm1
addss xmm1, dword [ebp + 0x14]
movaps xmmword [esp + 0x50], xmm0
comiss xmm0, xmm1
ja 0x5c27fb
movaps xmm1, xmm0
ucomiss xmm0, dword [0x718814]
lahf
test ah, 0x44
jnp 0x5c2814
divss xmm1, xmm0
movaps xmm0, xmm1
movaps xmmword [esp + 0x50], xmm0
lea eax, [edi + 0xf0]
push eax
mov eax, dword [ebp + 8]
lea ecx, [esp + 0x74]
mov eax, dword [eax]
mov eax, dword [eax + 0x48]
add eax, 0x10
push eax
call fcn.004782a0
test esi, esi
jle 0x5c291b
xor ecx, ecx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], ecx
mov esi, dword [esp + 0x14]
mov edi, dword [edi + 0x110]
add edi, ecx
mov esi, dword [esi + 0x11c]
add esi, ecx
movaps xmm5, xmmword [esi + 0x10]
lea ecx, [esi + 0x10]
movaps xmm3, xmmword [edi]
lea eax, [edi + 0x10]
movaps xmm4, xmm3
movaps xmm1, xmm3
mulps xmm4, xmm5
movaps xmm2, xmm3
push eax
shufps xmm1, xmm3, 0xc9
movaps xmm6, xmm5
shufps xmm2, xmm3, 0xd2
shufps xmm6, xmm5, 0xff
movaps xmm0, xmm4
shufps xmm0, xmm4, 0x55
addss xmm0, xmm4
shufps xmm4, xmm4, 0xaa
push ecx
lea ecx, [esp + 0x78]
addss xmm4, xmm0
movaps xmm0, xmm5
shufps xmm0, xmm5, 0xd2
mulps xmm1, xmm0
movaps xmm0, xmm5
shufps xmm0, xmm5, 0xc9
mulps xmm2, xmm0
shufps xmm4, xmm4, 0
mulps xmm4, xmm5
subps xmm2, xmm1
mulps xmm2, xmm6
mulps xmm6, xmm6
addps xmm6, xmmword [0x7195c0]
mulps xmm6, xmm3
addps xmm6, xmm4
addps xmm2, xmm6
addps xmm2, xmm2
addps xmm2, xmmword [esi]
movaps xmmword [esp + 0x68], xmm2
call fcn.004782a0
movaps xmm1, xmmword [esi + 0x20]
mulps xmm1, xmmword [edi + 0x20]
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
movaps xmm0, xmmword [esp + 0x60]
mov eax, dword [edi + 0x110]
movaps xmmword [eax + ecx], xmm0
movaps xmm0, xmmword [esp + 0x70]
movaps xmmword [eax + ecx + 0x10], xmm0
movaps xmmword [eax + ecx + 0x20], xmm1
add ecx, 0x30
sub dword [esp + 0x1c], 1
mov dword [esp + 0x20], ecx
jne 0x5c2842
mov eax, dword [ebp + 8]
movaps xmm3, xmmword [edi + 0xe0]
movaps xmm4, xmm3
movaps xmm1, xmm3
shufps xmm1, xmm3, 0xc9
movaps xmm2, xmm3
mov eax, dword [eax]
shufps xmm2, xmm3, 0xd2
mov esi, dword [eax + 0x48]
lea eax, [edi + 0xf0]
movaps xmm5, xmmword [esi + 0x10]
lea ecx, [esi + 0x10]
mulps xmm4, xmm5
movaps xmm6, xmm5
push eax
shufps xmm6, xmm5, 0xff
push ecx
lea ecx, [edi + 0xc0]
movaps xmm0, xmm4
shufps xmm0, xmm4, 0x55
addss xmm0, xmm4
shufps xmm4, xmm4, 0xaa
addss xmm4, xmm0
movaps xmm0, xmm5
shufps xmm0, xmm5, 0xd2
mulps xmm1, xmm0
movaps xmm0, xmm5
shufps xmm0, xmm5, 0xc9
mulps xmm2, xmm0
shufps xmm4, xmm4, 0
mulps xmm4, xmm5
subps xmm2, xmm1
mulps xmm2, xmm6
mulps xmm6, xmm6
addps xmm6, xmmword [0x7195c0]
mulps xmm6, xmm3
addps xmm6, xmm4
addps xmm2, xmm6
addps xmm2, xmm2
addps xmm2, xmmword [esi]
movaps xmmword [edi + 0xb0], xmm2
call fcn.004782a0
movaps xmm0, xmmword [esi + 0x20]
mulps xmm0, xmmword [edi + 0x100]
mov esi, dword [ebp + 0xc]
push dword [ebp + 0x10]
movaps xmmword [edi + 0xd0], xmm0
push dword [esi]
call fcn.005d3280
mov eax, dword [esi]
add esp, 8
mov edx, dword [esp + 0x10]
mov ecx, dword [eax]
lea esi, [edx + edx*2]
lea edi, [edx + 1]
shl esi, 4
movsx eax, word [ecx + 0x34]
add eax, ecx
mov dword [esp + 0x4c], edi
add eax, esi
mov dword [esp + 0x40], eax
lea eax, [edi + 0x1f]
sar eax, 5
mov dword [esp + 0x44], eax
or eax, 0x80000000
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x10]
mov edx, dword [eax]
movsx eax, word [edx + 0x34]
add eax, edx
mov dword [esp + 0x3c], edi
add eax, esi
mov dword [esp + 0x30], eax
lea eax, [edi + 0x1f]
mov edi, dword [ebp + 0xc]
sar eax, 5
mov dword [esp + 0x34], eax
or eax, 0x80000000
mov dword [esp + 0x38], eax
mov ecx, dword [edi]
mov ecx, dword [ecx]
movaps xmm0, xmmword [esp + 0x50]
lea eax, [esp + 0x30]
mov esi, dword [esp + 0x14]
push eax
movsx eax, word [edx + 0x34]
add eax, edx
push eax
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0x4c]
push dword [esp + 0x1c]
push eax
movsx eax, word [ecx + 0x34]
add eax, ecx
push eax
lea eax, [esp + 0x58]
push eax
push dword [esi + 0x110]
call fcn.005d42a0
mov eax, dword [esp + 0x58]
add esp, 0x20
mov dword [esp + 0x34], 0
test eax, eax
js 0x5c2aa0
and eax, 0x3fffffff
mov ecx, 0x7d8954
shl eax, 2
push eax
mov eax, dword [0x7d8954]
push dword [esp + 0x34]
call dword [eax + 0x10]
mov eax, dword [esp + 0x48]
mov dword [esp + 0x30], 0
mov dword [esp + 0x38], connect
mov dword [esp + 0x44], 0
test eax, eax
js 0x5c2ada
and eax, 0x3fffffff
mov ecx, 0x7d8954
shl eax, 2
push eax
mov eax, dword [0x7d8954]
push dword [esp + 0x44]
call dword [eax + 0x10]
movzx eax, word [esi + 0x34]
test al, 1
je 0x5c2b16
mov eax, dword [edi]
mov eax, dword [eax]
movsx edx, word [eax + 0x14]
add edx, eax
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
movaps xmm0, xmmword [edx]
movsx ecx, word [eax + 0x14]
movaps xmmword [ecx + eax], xmm0
movaps xmm0, xmmword [edx + 0x10]
movaps xmmword [ecx + eax + 0x10], xmm0
movaps xmm0, xmmword [edx + 0x20]
movaps xmmword [ecx + eax + 0x20], xmm0
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
test al, 4
je 0x5c2b4e
mov eax, dword [ebp + 0x10]
movaps xmm0, xmmword [esi + 0xb0]
mov eax, dword [eax]
movsx ecx, word [eax + 0x14]
movaps xmmword [ecx + eax], xmm0
movaps xmm0, xmmword [esi + 0xc0]
movaps xmmword [ecx + eax + 0x10], xmm0
movaps xmm0, xmmword [esi + 0xd0]
movaps xmmword [ecx + eax + 0x20], xmm0
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
mov edx, dword [ebp + 0x10]
xorps xmm4, xmm4
movss xmm3, dword [0x718824]
xorps xmm7, xmm7
movaps xmm2, xmmword [esp + 0x50]
subss xmm3, xmm2
mov eax, dword [edx]
movsx edi, word [eax + 0x14]
add edi, eax
shufps xmm3, xmm3, 0
movaps xmmword [esp + 0x30], xmm3
lea eax, [esp + 0x50]
movaps xmmword [edi], xmm4
movaps xmmword [edi + 0x10], xmm4
movaps xmmword [edi + 0x20], xmm4
movaps xmm0, xmmword [esi + 0xb0]
mulps xmm0, xmm3
movaps xmmword [edi], xmm0
movaps xmm0, xmmword [esi + 0xd0]
mulps xmm0, xmm3
addps xmm0, xmmword [edi + 0x20]
movaps xmmword [edi + 0x20], xmm0
movaps xmm5, xmmword [esi + 0xc0]
movaps xmm0, xmm5
mulps xmm0, xmmword [edi + 0x10]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x4e
addps xmm1, xmm0
movaps xmm0, xmm1
shufps xmm0, xmm1, 0xb1
addps xmm0, xmm1
comiss xmm7, xmm0
jbe 0x5c2be3
movaps xmm0, xmmword [0x719550]
subps xmm0, xmm3
shufps xmm0, xmm0, 0
movaps xmmword [esp + 0x50], xmm0
jmp 0x5c2be8
movaps xmmword [esp + 0x50], xmm3
movups xmm0, xmmword [eax]
mov eax, dword [ebp + 0xc]
shufps xmm2, xmm2, 0
mulps xmm5, xmm0
movaps xmm0, xmm2
movaps xmmword [esp + 0x50], xmm2
addps xmm5, xmmword [edi + 0x10]
movaps xmmword [edi + 0x10], xmm5
mov eax, dword [eax]
mov eax, dword [eax]
movsx ecx, word [eax + 0x14]
mulps xmm0, xmmword [ecx + eax]
addps xmm0, xmmword [edi]
movaps xmmword [edi], xmm0
movaps xmm0, xmmword [ecx + eax + 0x20]
mulps xmm0, xmm2
addps xmm0, xmmword [edi + 0x20]
movaps xmmword [edi + 0x20], xmm0
movaps xmm5, xmmword [ecx + eax + 0x10]
lea ecx, [esp + 0x40]
movaps xmm0, xmm5
mulps xmm0, xmmword [edi + 0x10]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x4e
addps xmm1, xmm0
movaps xmm0, xmm1
shufps xmm0, xmm1, 0xb1
addps xmm0, xmm1
comiss xmm7, xmm0
jbe 0x5c2c65
movaps xmm0, xmmword [0x719550]
subps xmm0, xmm2
shufps xmm0, xmm0, 0
movaps xmmword [esp + 0x40], xmm0
jmp 0x5c2c6a
movaps xmmword [esp + 0x40], xmm2
movups xmm0, xmmword [ecx]
mulps xmm5, xmm0
addps xmm5, xmmword [edi + 0x10]
movaps xmmword [edi + 0x10], xmm5
movaps xmm1, xmmword [0x719330]
movss xmm5, dword [0x77f9a4]
movaps xmm0, xmm1
andps xmm0, xmmword [0x719120]
comiss xmm5, xmm0
jbe 0x5c2ca9
movaps xmmword [edi], xmm4
movaps xmm0, xmmword [0x7195b0]
movaps xmmword [edi + 0x10], xmm0
jmp 0x5c2d30
divps xmm1, xmm1
shufps xmm1, xmm1, 0
movaps xmm0, xmm1
mulps xmm0, xmmword [edi]
movaps xmmword [edi], xmm0
mulps xmm1, xmmword [edi + 0x20]
movaps xmmword [edi + 0x20], xmm1
movaps xmm0, xmmword [edi + 0x10]
mulps xmm0, xmm0
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x4e
addps xmm1, xmm0
movaps xmm0, xmm1
shufps xmm0, xmm1, 0xb1
addps xmm0, xmm1
comiss xmm5, xmm0
jbe 0x5c2cee
movaps xmm0, xmmword [0x7195b0]
movaps xmmword [edi + 0x10], xmm0
jmp 0x5c2d11
lea ecx, [edi + 0x10]
call fcn.00478080
movaps xmm2, xmmword [esp + 0x50]
xorps xmm4, xmm4
movaps xmm3, xmmword [esp + 0x30]
xorps xmm7, xmm7
movss xmm5, dword [0x77f9a4]
mov edx, dword [ebp + 0x10]
movaps xmm1, xmmword [edi + 0x20]
mulps xmm1, xmm1
movaps xmm0, xmm1
shufps xmm0, xmm1, 0x55
addss xmm0, xmm1
shufps xmm1, xmm1, 0xaa
addss xmm1, xmm0
comiss xmm5, xmm1
jbe 0x5c2d3b
movaps xmm0, xmmword [0x719da0]
movaps xmmword [edi + 0x20], xmm0
mov eax, dword [edx]
movaps xmm0, xmm3
movsx edi, word [eax + 0x24]
add edi, eax
lea eax, [esp + 0x50]
movaps xmmword [edi], xmm4
movaps xmmword [edi + 0x10], xmm4
movaps xmmword [edi + 0x20], xmm4
mulps xmm0, xmmword [esi + 0xe0]
movaps xmmword [edi], xmm0
movaps xmm0, xmmword [esi + 0x100]
mulps xmm0, xmm3
addps xmm0, xmmword [edi + 0x20]
movaps xmmword [edi + 0x20], xmm0
movaps xmm6, xmmword [esi + 0xf0]
movaps xmm0, xmm6
mulps xmm0, xmmword [edi + 0x10]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x4e
addps xmm1, xmm0
movaps xmm0, xmm1
shufps xmm0, xmm1, 0xb1
addps xmm0, xmm1
comiss xmm7, xmm0
jbe 0x5c2dad
movaps xmm0, xmmword [0x719550]
subps xmm0, xmm3
shufps xmm0, xmm0, 0
movaps xmmword [esp + 0x50], xmm0
jmp 0x5c2db2
movaps xmmword [esp + 0x50], xmm3
movups xmm0, xmmword [eax]
mov eax, dword [ebp + 0xc]
mulps xmm6, xmm0
addps xmm6, xmmword [edi + 0x10]
movaps xmmword [edi + 0x10], xmm6
mov eax, dword [eax]
mov eax, dword [eax]
movsx ecx, word [eax + 0x24]
movaps xmm0, xmmword [ecx + eax]
mulps xmm0, xmm2
addps xmm0, xmmword [edi]
movaps xmmword [edi], xmm0
movaps xmm0, xmmword [ecx + eax + 0x20]
mulps xmm0, xmm2
addps xmm0, xmmword [edi + 0x20]
movaps xmmword [edi + 0x20], xmm0
movaps xmm3, xmmword [ecx + eax + 0x10]
lea eax, [esp + 0x50]
movaps xmm0, xmm3
mulps xmm0, xmmword [edi + 0x10]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x4e
addps xmm1, xmm0
movaps xmm0, xmm1
shufps xmm0, xmm1, 0xb1
addps xmm0, xmm1
comiss xmm7, xmm0
jbe 0x5c2e26
movaps xmm0, xmmword [0x719550]
subps xmm0, xmm2
shufps xmm0, xmm0, 0
movaps xmmword [esp + 0x50], xmm0
jmp 0x5c2e2b
movaps xmmword [esp + 0x50], xmm2
movups xmm0, xmmword [eax]
mulps xmm3, xmm0
addps xmm3, xmmword [edi + 0x10]
movaps xmmword [edi + 0x10], xmm3
movaps xmm1, xmmword [0x719330]
movaps xmm0, xmm1
andps xmm0, xmmword [0x719120]
comiss xmm5, xmm0
jbe 0x5c2e70
movaps xmmword [edi], xmm4
movaps xmm0, xmmword [0x7195b0]
movaps xmmword [edi + 0x10], xmm0
movaps xmm0, xmmword [0x719da0]
movaps xmmword [edi + 0x20], xmm0
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
divps xmm1, xmm1
movaps xmm0, xmmword [edi]
shufps xmm1, xmm1, 0
mulps xmm0, xmm1
movaps xmmword [edi], xmm0
movaps xmm0, xmmword [edi + 0x20]
mulps xmm0, xmm1
movaps xmmword [edi + 0x20], xmm0
movaps xmm0, xmmword [edi + 0x10]
mulps xmm0, xmm0
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x4e
addps xmm1, xmm0
movaps xmm0, xmm1
shufps xmm0, xmm1, 0xb1
addps xmm0, xmm1
comiss xmm5, xmm0
jbe 0x5c2eb8
movaps xmm0, xmmword [0x7195b0]
movaps xmmword [edi + 0x10], xmm0
jmp 0x5c2ec8
lea ecx, [edi + 0x10]
call fcn.00478080
movss xmm5, dword [0x77f9a4]
movaps xmm1, xmmword [edi + 0x20]
mulps xmm1, xmm1
movaps xmm0, xmm1
shufps xmm0, xmm1, 0x55
addss xmm0, xmm1
shufps xmm1, xmm1, 0xaa
addss xmm1, xmm0
comiss xmm5, xmm1
jbe 0x5c2ef2
movaps xmm0, xmmword [0x719da0]
movaps xmmword [edi + 0x20], xmm0
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10