Function at 0x569220
Capabilities:
Enumerate pe sections
Execute anti-debugging instructions
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x78
push esi
mov esi, dword [sym.imp.KERNEL32.dll_TlsGetValue]
push edi
push dword [0x884c50]
call esi
mov edi, eax
mov ecx, dword [edi + 4]
cmp ecx, dword [edi + 0xc]
jae 0x569263
mov dword [ecx], str.LtMapPoseModelSpace
mov dword [ecx + 0xc], str.Stinit
rdtsc
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
mov dword [ecx + 4], eax
lea eax, [ecx + 0x10]
mov dword [edi + 4], eax
push dword [0x884c50]
call esi
mov edi, eax
mov esi, dword [edi + 4]
cmp esi, dword [edi + 0xc]
jae 0x56928e
mov dword [esi], str.StsimpleMappings
rdtsc
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0x20]
lea eax, [esi + 0xc]
mov dword [esi + 4], ecx
mov dword [edi + 4], eax
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x1c]
mov dword [esp + 0xc], eax
test eax, eax
jle 0x5693b1
xor ecx, ecx
mov dword [esp + 0x10], ecx
nop word [eax + eax]
mov eax, dword [edi + 0x18]
movaps xmm3, xmmword [eax + ecx + 0x10]
lea edx, [eax + ecx]
movaps xmm4, xmm3
mov dword [esp + 0x20], edx
movaps xmm1, xmm3
movaps xmm2, xmm3
prefetchnta byte [eax + ecx + 0x80]
movsx eax, word [edx]
shufps xmm1, xmm3, 0xc9
shufps xmm2, xmm3, 0xd2
lea edi, [eax + eax*2]
movsx eax, word [edx + 2]
shl edi, 4
add edi, dword [ebp + 0xc]
movaps xmm5, xmmword [edi + 0x10]
lea ecx, [edi + 0x10]
mulps xmm4, xmm5
lea esi, [eax + eax*2]
shl esi, 4
lea eax, [edx + 0x20]
movaps xmm6, xmm5
add esi, dword [ebp + 0x14]
shufps xmm6, xmm5, 0xff
push eax
movaps xmm0, xmm4
shufps xmm0, xmm4, 0x55
addss xmm0, xmm4
shufps xmm4, xmm4, 0xaa
push ecx
lea ecx, [esi + 0x10]
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 [edi]
movaps xmmword [esi], xmm2
call fcn.004782a0
mov ecx, dword [esp + 0x20]
movaps xmm0, xmmword [edi + 0x20]
mov edx, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mulps xmm0, xmmword [ecx + 0x30]
movaps xmmword [esi + 0x20], xmm0
movsx eax, word [ecx]
mov esi, dword [ebp + 0x14]
lea eax, [eax + eax*2]
add eax, eax
prefetchnta byte [edx + eax*8 + 0x80]
movsx eax, word [ecx + 2]
mov ecx, dword [esp + 0x10]
add ecx, 0x40
mov dword [esp + 0x10], ecx
lea eax, [eax + eax*2]
add eax, eax
sub dword [esp + 0xc], 1
prefetchnta byte [esi + eax*8 + 0x80]
jne 0x5692b0
jmp 0x5693b4
mov esi, dword [ebp + 0x14]
push dword [0x884c50]
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, eax
mov dword [esp + 0x18], ecx
mov eax, dword [ecx + 4]
mov dword [esp + 0x1c], eax
cmp eax, dword [ecx + 0xc]
jae 0x5693f3
mov dword [eax], str.StchainMappings
rdtsc
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [eax + 4], ecx
add eax, 0xc
mov ecx, dword [esp + 0x18]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0x28]
mov edi, dword [ebp + 0x10]
mov dword [esp + 0x20], eax
test eax, eax
jle 0x569a73
xor ecx, ecx
mov dword [esp + 0x1c], ecx
nop dword [eax + eax]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x24]
add eax, ecx
mov dword [esp + 0x18], eax
movzx ecx, word [eax + 2]
movzx edx, word [eax + 4]
mov dword [esp + 0x2c], ecx
movzx ecx, word [eax + 6]
movsx eax, word [eax]
mov dword [esp + 0x28], edx
movsx edx, dx
mov dword [esp + 0x10], ecx
lea ecx, [eax + eax*2]
shl ecx, 4
add ecx, dword [ebp + 0xc]
lea eax, [edx + edx*2]
shl eax, 4
add eax, esi
mov dword [esp + 0xc], eax
movaps xmm5, xmmword [ecx + 0x10]
mov eax, dword [esp + 0x18]
movaps xmm6, xmm5
shufps xmm6, xmm5, 0xff
mov edi, dword [esp + 0xc]
movaps xmm3, xmmword [eax + 0x10]
movaps xmm4, xmm3
movaps xmm1, xmm3
mulps xmm4, xmm5
movaps xmm2, xmm3
shufps xmm2, xmm3, 0xd2
shufps xmm1, xmm3, 0xc9
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 [ecx]
movaps xmmword [edi], xmm2
movaps xmm4, xmmword [ecx + 0x10]
movaps xmm6, xmmword [eax + 0x20]
movaps xmm0, xmm4
shufps xmm0, xmm4, 0xd2
movaps xmm1, xmm6
shufps xmm1, xmm6, 0xc9
movaps xmm5, xmm6
mulps xmm1, xmm0
movaps xmm3, xmm4
shufps xmm5, xmm6, 0xd2
movaps xmm0, xmm4
shufps xmm0, xmm4, 0xc9
movaps xmm2, xmm6
mulps xmm5, xmm0
movaps xmm0, xmm6
shufps xmm3, xmm4, 0xff
shufps xmm3, xmm3, 0
mulps xmm0, xmm3
subps xmm5, xmm1
shufps xmm2, xmm6, 0xff
mulps xmm6, xmm4
shufps xmm2, xmm2, 0
mulps xmm2, xmm4
addps xmm5, xmm0
movaps xmm0, xmm6
shufps xmm0, xmm6, 0x55
addps xmm5, xmm2
addss xmm0, xmm6
movaps xmm1, xmm6
shufps xmm1, xmm6, 0xaa
addss xmm1, xmm0
movaps xmm0, xmm5
shufps xmm1, xmm1, 0
subps xmm6, xmm1
unpckhps xmm0, xmm6
shufps xmm5, xmm0, 0xc4
movaps xmmword [edi + 0x10], xmm5
movaps xmm0, xmmword [ecx + 0x20]
mulps xmm0, xmmword [eax + 0x30]
mov eax, edi
mov ecx, dword [esp + 0x10]
movsx ecx, cx
sub ecx, edx
add ecx, 1
movaps xmmword [eax + 0x20], xmm0
mov dword [esp + 0x14], ecx
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], connect
mov dword [esp + 0x7c], ecx
je 0x5695d8
push dword [0x884adc]
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov edx, dword [esp + 0x14]
mov ecx, eax
mov eax, dword [ecx + 0xc]
lea edx, [edx*2 + 0x7f]
and edx, 0xffffff80
lea esi, [eax + edx]
mov dword [esp + 0x24], esi
mov esi, dword [ebp + 0x14]
cmp edx, dword [ecx + 8]
jg 0x5695cc
lea esi, [eax + edx]
cmp esi, dword [ecx + 0x10]
mov esi, dword [ebp + 0x14]
ja 0x5695cc
mov edx, dword [esp + 0x24]
mov dword [ecx + 0xc], edx
mov ecx, dword [esp + 0x14]
jmp 0x5695da
push edx
call fcn.0046a3c0
mov ecx, dword [esp + 0x14]
jmp 0x5695da
xor eax, eax
mov dword [esp + 0x6c], eax
or ecx, 0x80000000
mov dword [esp + 0x78], eax
lea eax, [esp + 0x6c]
push eax
push dword [esp + 0x14]
mov eax, dword [ebp + 8]
push dword [esp + 0x30]
mov dword [esp + 0x80], ecx
push dword [eax + 0x14]
lea eax, [esp + 0x1b]
push eax
call fcn.0057f0c0
mov ecx, dword [esp + 0x24]
add esp, 0x14
mov edi, dword [ebp + 0x10]
movaps xmm7, xmmword [0x7195c0]
movsx eax, cx
lea eax, [eax + eax*2]
add eax, eax
movaps xmm6, xmmword [edi + eax*8]
mov eax, dword [esp + 0x70]
add eax, 0xfffffffe
cmp eax, 1
jl 0x5696c5
mov edx, dword [esp + 0x6c]
nop dword [eax]
movsx ecx, word [edx + eax*2]
dec eax
lea ecx, [ecx + ecx*2]
add ecx, ecx
movaps xmm3, xmmword [edi + ecx*8 + 0x10]
movaps xmm5, xmmword [edi + ecx*8 + 0x20]
movaps xmm2, xmm3
mulps xmm5, xmm6
movaps xmm6, xmm3
shufps xmm6, xmm3, 0xc9
movaps xmm1, xmm3
shufps xmm1, xmm3, 0xd2
movaps xmm4, xmm3
shufps xmm4, xmm3, 0xff
mulps xmm2, xmm5
movaps xmm0, xmm2
shufps xmm0, xmm2, 0x55
addss xmm0, xmm2
shufps xmm2, xmm2, 0xaa
addss xmm2, xmm0
movaps xmm0, xmm5
shufps xmm0, xmm5, 0xd2
mulps xmm6, xmm0
movaps xmm0, xmm5
shufps xmm0, xmm5, 0xc9
mulps xmm1, xmm0
shufps xmm2, xmm2, 0
mulps xmm2, xmm3
subps xmm6, xmm1
mulps xmm6, xmm4
mulps xmm4, xmm4
addps xmm4, xmm7
mulps xmm4, xmm5
addps xmm4, xmm2
addps xmm6, xmm4
addps xmm6, xmm6
addps xmm6, xmmword [edi + ecx*8]
cmp eax, 1
jge 0x569640
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x18]
cwde
movaps xmm3, xmmword [edx + 0x10]
movaps xmm5, xmmword [edx + 0x20]
movaps xmm2, xmm3
mulps xmm5, xmm6
movaps xmm7, xmm3
lea eax, [eax + eax*2]
shufps xmm7, xmm3, 0xc9
movaps xmm1, xmm3
shufps xmm1, xmm3, 0xd2
movaps xmm4, xmm3
shufps xmm4, xmm3, 0xff
mulps xmm2, xmm5
shl eax, 4
add eax, dword [ebp + 0xc]
movaps xmm0, xmm2
shufps xmm0, xmm2, 0x55
addss xmm0, xmm2
shufps xmm2, xmm2, 0xaa
addss xmm2, xmm0
movaps xmm0, xmm5
shufps xmm0, xmm5, 0xd2
mulps xmm7, xmm0
movaps xmm0, xmm5
shufps xmm0, xmm5, 0xc9
mulps xmm1, xmm0
shufps xmm2, xmm2, 0
mulps xmm2, xmm3
subps xmm7, xmm1
mulps xmm7, xmm4
mulps xmm4, xmm4
addps xmm4, xmmword [0x7195c0]
mulps xmm4, xmm5
movaps xmm5, xmmword [eax + 0x10]
movaps xmm6, xmm5
shufps xmm6, xmm5, 0xff
addps xmm4, xmm2
movaps xmm2, xmmword [ecx + 0x40]
movaps xmm3, xmm2
movaps xmm1, xmm2
mulps xmm3, xmm5
shufps xmm1, xmm2, 0xc9
addps xmm7, xmm4
movaps xmm4, xmm2
shufps xmm4, xmm2, 0xd2
movaps xmm0, xmm3
shufps xmm0, xmm3, 0x55
addss xmm0, xmm3
shufps xmm3, xmm3, 0xaa
addps xmm7, xmm7
addss xmm3, xmm0
movaps xmm0, xmm5
shufps xmm0, xmm5, 0xd2
mulps xmm1, xmm0
movaps xmm0, xmm5
shufps xmm0, xmm5, 0xc9
mulps xmm4, xmm0
addps xmm7, xmmword [edx]
shufps xmm3, xmm3, 0
mulps xmm3, xmm5
subps xmm4, xmm1
subps xmm7, xmmword [edx]
mulps xmm4, xmm6
mulps xmm6, xmm6
movaps xmmword [esp + 0x40], xmm7
addps xmm6, xmmword [0x7195c0]
mulps xmm6, xmm2
addps xmm6, xmm3
addps xmm4, xmm6
addps xmm4, xmm4
addps xmm4, xmmword [eax]
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x44]
push eax
subps xmm4, xmmword [edx]
movaps xmmword [esp + 0x38], xmm4
call fcn.0056b800
add esp, 8
lea eax, [esp + 0x30]
lea ecx, [esp + 0x50]
push eax
lea eax, [esp + 0x44]
push eax
call fcn.0056b890
mov eax, dword [esp + 0xc]
mov edx, 1
movaps xmm6, xmmword [esp + 0x50]
movaps xmm5, xmm6
mov ecx, dword [esp + 0x70]
shufps xmm5, xmm6, 0xc9
movaps xmm1, xmm6
movups xmm4, xmmword [eax + 0x10]
mov dword [esp + 0x18], edx
shufps xmm1, xmm6, 0xd2
movaps xmm3, xmm6
movaps xmm0, xmm4
shufps xmm3, xmm6, 0xff
shufps xmm0, xmm4, 0xd2
movaps xmm2, xmm4
mulps xmm5, xmm0
movaps xmm0, xmm4
shufps xmm0, xmm4, 0xc9
mulps xmm1, xmm0
movaps xmm0, xmm4
shufps xmm3, xmm3, 0
mulps xmm0, xmm3
subps xmm5, xmm1
shufps xmm2, xmm4, 0xff
shufps xmm2, xmm2, 0
addps xmm5, xmm0
movaps xmm0, xmm6
mulps xmm0, xmm2
mulps xmm6, xmm4
addps xmm5, xmm0
movaps xmm0, xmm6
movaps xmm1, xmm6
shufps xmm0, xmm6, 0x55
addss xmm0, xmm6
shufps xmm1, xmm6, 0xaa
addss xmm1, xmm0
movaps xmm0, xmm5
shufps xmm1, xmm1, 0
subps xmm6, xmm1
unpckhps xmm0, xmm6
shufps xmm5, xmm0, 0xc4
movaps xmmword [eax + 0x10], xmm5
lea eax, [ecx - 1]
cmp eax, edx
jle 0x5699cb
mov eax, dword [esp + 0x6c]
lea ecx, [eax + edx*2]
movzx eax, word [ecx]
cwde
lea edx, [eax + eax*2]
movsx eax, word [ecx - 2]
add edx, edx
lea eax, [eax + eax*2]
movaps xmm3, xmmword [edi + edx*8]
shl eax, 4
movaps xmm4, xmm3
add eax, esi
movaps xmm1, xmm3
shufps xmm1, xmm3, 0xc9
movaps xmm2, xmm3
shufps xmm2, xmm3, 0xd2
movaps xmm5, xmmword [eax + 0x10]
mulps xmm4, xmm5
movaps xmm6, xmm5
shufps xmm6, xmm5, 0xff
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 [eax]
movaps xmmword [esi + edx*8], xmm2
movaps xmm4, xmmword [eax + 0x10]
movaps xmm6, xmmword [edi + edx*8 + 0x10]
movaps xmm0, xmm4
shufps xmm0, xmm4, 0xd2
movaps xmm1, xmm6
shufps xmm1, xmm6, 0xc9
movaps xmm5, xmm6
mulps xmm1, xmm0
movaps xmm3, xmm4
shufps xmm5, xmm6, 0xd2
movaps xmm0, xmm4
shufps xmm0, xmm4, 0xc9
movaps xmm2, xmm6
mulps xmm5, xmm0
movaps xmm0, xmm6
shufps xmm3, xmm4, 0xff
shufps xmm2, xmm6, 0xff
mulps xmm6, xmm4
subps xmm5, xmm1
shufps xmm3, xmm3, 0
mulps xmm0, xmm3
movaps xmm1, xmm6
shufps xmm2, xmm2, 0
shufps xmm1, xmm6, 0xaa
mulps xmm2, xmm4
addps xmm5, xmm0
movaps xmm0, xmm6
shufps xmm0, xmm6, 0x55
addss xmm0, xmm6
addps xmm5, xmm2
addss xmm1, xmm0
movaps xmm0, xmm5
shufps xmm1, xmm1, 0
subps xmm6, xmm1
unpckhps xmm0, xmm6
shufps xmm5, xmm0, 0xc4
movaps xmmword [esi + edx*8 + 0x10], xmm5
movaps xmm0, xmmword [eax + 0x20]
mulps xmm0, xmmword [edi + edx*8 + 0x20]
movaps xmmword [esi + edx*8 + 0x20], xmm0
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x18]
inc edx
mov dword [esp + 0x18], edx
lea eax, [ecx - 1]
cmp edx, eax
jl 0x569893
mov eax, dword [esp + 0x78]
xor edx, edx
cmp eax, dword [esp + 0x6c]
push dword [0x884adc]
mov dword [esp + 0x1c], eax
cmove ecx, edx
mov eax, dword [esp + 0x80]
mov dword [esp + 0x74], ecx
lea esi, [eax*2 + 0x7f]
and esi, 0xffffff80
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov edx, eax
lea eax, [esi + 0xf]
and eax, 0xfffffff0
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x18]
cmp esi, dword [edx + 8]
mov esi, dword [esp + 0x14]
jg 0x569a28
lea ecx, [esi + eax]
cmp ecx, dword [edx + 0xc]
jne 0x569a28
cmp dword [edx + 0x14], eax
je 0x569a28
mov dword [edx + 0xc], eax
jmp 0x569a31
push esi
push eax
mov ecx, edx
call fcn.0046a590
mov eax, dword [esp + 0x74]
mov dword [esp + 0x70], 0
test eax, eax
js 0x569a5a
and eax, 0x3fffffff
mov ecx, 0x7d8954
add eax, eax
push eax
mov eax, dword [0x7d8954]
push dword [esp + 0x70]
call dword [eax + 0x10]
mov ecx, dword [esp + 0x1c]
mov esi, dword [ebp + 0x14]
add ecx, 0x70
sub dword [esp + 0x20], 1
mov dword [esp + 0x1c], ecx
jne 0x569410
push dword [0x884c50]
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov dword [esp + 0x28], eax
mov esi, dword [eax + 4]
cmp esi, dword [eax + 0xc]
jae 0x569aa8
mov dword [esi], str.StunmappedBones
rdtsc
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0x2c]
lea eax, [esi + 0xc]
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0x28]
mov dword [ecx + 4], eax
mov edx, dword [ebp + 8]
cmp byte [edx + 0x70], 0
mov eax, dword [edx + 0x34]
mov dword [esp + 0x2c], eax
je 0x569c2a
xor esi, esi
test eax, eax
jle 0x569c2a
mov eax, dword [edx + 0x30]
movzx eax, word [eax + esi*2]
movsx ecx, ax
mov eax, dword [edx + 0x14]
mov eax, dword [eax + 0xc]
movzx eax, word [eax + ecx*2]
cmp ax, 0xffff
je 0x569bfb
mov edx, dword [ebp + 0x14]
lea ecx, [ecx + ecx*2]
cwde
add ecx, ecx
movaps xmm3, xmmword [edi + ecx*8]
lea eax, [eax + eax*2]
shl eax, 4
movaps xmm4, xmm3
add eax, edx
movaps xmm1, xmm3
shufps xmm1, xmm3, 0xc9
movaps xmm2, xmm3
shufps xmm2, xmm3, 0xd2
movaps xmm5, xmmword [eax + 0x10]
mulps xmm4, xmm5
movaps xmm6, xmm5
shufps xmm6, xmm5, 0xff
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 [eax]
movaps xmmword [edx + ecx*8], xmm2
movaps xmm4, xmmword [eax + 0x10]
movaps xmm6, xmmword [edi + ecx*8 + 0x10]
movaps xmm3, xmm4
movaps xmm1, xmm6
shufps xmm3, xmm4, 0xff
shufps xmm1, xmm6, 0xc9
movaps xmm2, xmm6
movaps xmm0, xmm4
shufps xmm2, xmm6, 0xff
shufps xmm0, xmm4, 0xd2
movaps xmm5, xmm6
mulps xmm1, xmm0
movaps xmm0, xmm4
shufps xmm5, xmm6, 0xd2
shufps xmm0, xmm4, 0xc9
mulps xmm5, xmm0
shufps xmm3, xmm3, 0
mulps xmm3, xmm6
mulps xmm6, xmm4
subps xmm5, xmm1
shufps xmm2, xmm2, 0
mulps xmm2, xmm4
movaps xmm0, xmm6
addps xmm5, xmm3
shufps xmm0, xmm6, 0x55
movaps xmm1, xmm6
addss xmm0, xmm6
shufps xmm1, xmm6, 0xaa
addps xmm5, xmm2
addss xmm1, xmm0
movaps xmm0, xmm5
shufps xmm1, xmm1, 0
subps xmm6, xmm1
unpckhps xmm0, xmm6
shufps xmm5, xmm0, 0xc4
movaps xmmword [edx + ecx*8 + 0x10], xmm5
movaps xmm0, xmmword [eax + 0x20]
mulps xmm0, xmmword [edi + ecx*8 + 0x20]
movaps xmmword [edx + ecx*8 + 0x20], xmm0
mov edx, dword [ebp + 8]
jmp 0x569c1f
lea eax, [ecx + ecx*2]
mov ecx, dword [ebp + 0x14]
add eax, eax
movaps xmm0, xmmword [edi + eax*8]
movaps xmmword [ecx + eax*8], xmm0
movaps xmm0, xmmword [edi + eax*8 + 0x10]
movaps xmmword [ecx + eax*8 + 0x10], xmm0
movaps xmm0, xmmword [edi + eax*8 + 0x20]
movaps xmmword [ecx + eax*8 + 0x20], xmm0
inc esi
cmp esi, dword [esp + 0x2c]
jl 0x569ac6
push dword [0x884c50]
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov dword [esp + 0x28], eax
mov esi, dword [eax + 4]
cmp esi, dword [eax + 0xc]
jae 0x569c5f
mov dword [esi], str.StenforceConstraints
rdtsc
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0x2c]
lea eax, [esi + 0xc]
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0x28]
mov dword [ecx + 4], eax
mov eax, dword [ebp + 0x18]
sub eax, 1
je 0x569c80
sub eax, 1
jne 0x569c91
push dword [ebp + 0x14]
mov eax, dword [ebp + 8]
push edi
push dword [eax + 0x14]
call fcn.0057ef30
add esp, 0xc
jmp 0x569c91
mov eax, dword [ebp + 8]
push dword [ebp + 0x14]
push dword [eax + 0x14]
call fcn.0057edf0
add esp, 8
push dword [0x884c50]
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov edi, eax
mov esi, dword [edi + 4]
cmp esi, dword [edi + 0xc]
jae 0x569cc0
mov dword [esi], 0x77f784
rdtsc
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0x2c]
lea eax, [esi + 0xc]
mov dword [esi + 4], ecx
mov dword [edi + 4], eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret