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

Disassembly:
push ebx
mov ebx, esp
and esp, 0xfffffff0
push ebp
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push esi
push edi
sub esp, 0xd0
mov edi, dword [ebx + 0x98]
mov eax, dword [ebx + 0x94]
mov esi, dword [ebx + 0x5c]
mov edi, dword [edi]
mov eax, dword [eax]
mov dword [ebp - 0xc], edi
mov edi, eax
sar edi, 0x1f
not edi
and edi, eax
mov edx, dword [ebx + 0x3c]
mov ecx, dword [ebx + 0x4c]
mov dword [ebp - 0x44], eax
mov edx, dword [edx]
lea eax, [edi + edi*2]
shl eax, 4
mov ecx, dword [ecx]
mov esi, dword [esi]
mov dword [ebp - 0xa4], esp
add eax, 0xf
and eax, 0xfffffff0
call fcn.00692d40
mov eax, esp
shl edi, 3
mov dword [ebp - 0x18], eax
mov eax, edi
add eax, 0xf
and eax, 0xfffffff0
call fcn.00692d40
mov eax, esp
mov dword [ebp - 0xb0], eax
lea edi, [esi - 1]
xor eax, eax
test edi, edi
mov dword [ebp - 0x50], edi
cmovg eax, edi
shl eax, 3
add eax, 0xf
and eax, 0xfffffff0
call fcn.00692d40
mov eax, esp
mov dword [ebp - 0xb4], eax
mov eax, esi
sar eax, 0x1f
not eax
and eax, esi
shl eax, 3
add eax, 0xf
and eax, 0xfffffff0
call fcn.00692d40
mov eax, esp
mov dword [ebp - 0x10], eax
lea edi, [ecx - 1]
xor eax, eax
test edi, edi
mov dword [ebp - 0x4c], edi
cmovg eax, edi
shl eax, 3
add eax, 0xf
and eax, 0xfffffff0
call fcn.00692d40
mov eax, esp
mov dword [ebp - 0xb8], eax
mov eax, ecx
sar eax, 0x1f
not eax
and eax, ecx
shl eax, 3
add eax, 0xf
and eax, 0xfffffff0
call fcn.00692d40
mov eax, esp
mov dword [ebp - 0x14], eax
lea edi, [edx - 1]
xor eax, eax
test edi, edi
mov dword [ebp - 0x48], edi
cmovg eax, edi
shl eax, 3
add eax, 0xf
and eax, 0xfffffff0
call fcn.00692d40
mov eax, esp
mov dword [ebp - 0xa8], eax
mov eax, edx
sar eax, 0x1f
not eax
and eax, edx
shl eax, 3
add eax, 0xf
and eax, 0xfffffff0
call fcn.00692d40
mov eax, esp
mov dword [ebp - 0xac], eax
mov eax, dword [ebx + 0xc4]
cmp dword [eax], 0x49125
je 0x52ca4e
add esp, 0xffffffe4
mov eax, dword [ebx + 0xc8]
movq xmm0, qword [0x72a078]
movq xmm1, qword [0x72a080]
mov dword [esp], eax
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], str._VERCM66_APPEL_INCORRECT
movq qword [esp + 0x10], xmm1
mov dword [esp + 0x18], 0
call fcn.005cbf40
add esp, 0x1c
jmp 0x52d8e7
mov eax, dword [ebx + 0x84]
mov edi, dword [eax]
mov dword [ebp - 0xbc], edi
cmp edi, 0xa
jg 0x52d959
mov eax, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
cmp dword [ebp - 0x48], 0
movups xmm0, xmmword [eax]
movups xmm6, xmmword [eax + 0x20]
cvtps2pd xmm1, xmm0
cvtps2pd xmm7, xmm6
movups xmm3, xmmword [eax + 0x10]
movhlps xmm0, xmm0
movhlps xmm6, xmm6
cvtps2pd xmm2, xmm0
cvtps2pd xmm0, xmm6
cvtps2pd xmm4, xmm3
movups xmmword [0x7d1380], xmm1
movups xmm1, xmmword [eax + 0x30]
movhlps xmm3, xmm3
cvtps2pd xmm5, xmm3
movups xmmword [0x7d1390], xmm2
cvtps2pd xmm2, xmm1
movhlps xmm1, xmm1
movups xmmword [0x7d13d0], xmm0
cvtps2pd xmm3, xmm1
movsd xmm0, qword [edi]
movsd xmm1, qword [edi + 8]
movups xmmword [0x7d13a0], xmm4
movups xmm4, xmmword [eax + 0x40]
movlhps xmm0, xmm0
movlhps xmm1, xmm1
movups xmmword [0x7d13c0], xmm7
cvtps2pd xmm7, xmm0
cvtps2pd xmm0, xmm1
movups xmmword [0x7d13b0], xmm5
cvtps2pd xmm5, xmm4
movhlps xmm4, xmm4
cvtps2pd xmm6, xmm4
movups xmmword [0x7d13e0], xmm2
movsd xmm2, qword [edi + 0x10]
movlhps xmm2, xmm2
movups xmmword [0x7d1430], xmm0
movsd xmm0, qword [edi + 0x20]
movups xmmword [0x7d13f0], xmm3
cvtps2pd xmm3, xmm2
movlhps xmm0, xmm0
movups xmmword [0x7d1410], xmm6
cvtps2pd xmm6, xmm0
movsd xmm1, qword [edi + 0x28]
movsd xmm2, qword [edi + 0x30]
movlhps xmm1, xmm1
movlhps xmm2, xmm2
movups xmmword [0x7d1420], xmm7
cvtps2pd xmm7, xmm1
cvtps2pd xmm0, xmm2
movups xmmword [0x7d1440], xmm3
pxor xmm2, xmm2
movsd xmm3, qword [edi + 0x38]
movsd xmm4, qword [edi + 0x18]
movlhps xmm3, xmm3
movlhps xmm4, xmm4
cvtps2pd xmm1, xmm3
movups xmmword [0x7d1460], xmm6
pxor xmm6, xmm6
movups xmmword [0x7d1400], xmm5
pxor xmm3, xmm3
cvtps2pd xmm5, xmm4
cvtss2sd xmm6, dword [edi + 0x48]
movsd xmm4, qword [edi + 0x40]
mov eax, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
movups xmmword [0x7d1470], xmm7
pxor xmm7, xmm7
movups xmmword [0x7d1480], xmm0
pxor xmm0, xmm0
cvtss2sd xmm7, dword [eax]
cvtss2sd xmm0, dword [edi]
mov eax, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
movlhps xmm4, xmm4
movups xmmword [0x7d1450], xmm5
cvtps2pd xmm5, xmm4
cvtss2sd xmm2, dword [edi]
movups xmmword [0x7d1490], xmm1
pxor xmm1, xmm1
cvtss2sd xmm1, dword [eax]
mov eax, dword [ebx + 0x38]
pxor xmm4, xmm4
mov edi, dword [ebx + 0x6c]
movups xmmword [0x7d14a0], xmm5
pxor xmm5, xmm5
cvtss2sd xmm3, dword [eax]
cvtss2sd xmm4, dword [edi]
mov eax, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
movsd qword [0x7d14b0], xmm6
pxor xmm6, xmm6
cvtss2sd xmm5, dword [eax]
cvtss2sd xmm6, dword [edi]
mov eax, dword [ebx + 0x7c]
mov edi, dword [ebx + 0x80]
movsd qword [ebp - 0xa0], xmm7
pxor xmm7, xmm7
movsd qword [ebp - 0x98], xmm0
pxor xmm0, xmm0
cvtss2sd xmm7, dword [eax]
cvtss2sd xmm0, dword [edi]
movsd qword [ebp - 0x90], xmm1
movsd qword [ebp - 0x88], xmm2
movsd qword [ebp - 0x80], xmm3
movsd qword [ebp - 0x78], xmm4
movsd qword [ebp - 0x70], xmm5
movsd qword [ebp - 0x68], xmm6
movsd qword [ebp - 0x60], xmm7
movsd qword [ebp - 0x58], xmm0
jle 0x52cdc6
cmp dword [ebp - 0x48], 8
jl 0x52d94a
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0xc8], esi
and eax, 0xfffffff8
mov dword [ebp - 0xc4], ecx
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0xd8], eax
xor eax, eax
mov edx, dword [ebx + 0x48]
mov ecx, dword [ebx + 0x40]
mov esi, dword [ebp - 0xac]
mov edi, dword [ebp - 0xa8]
nop dword [eax + eax]
movups xmm0, xmmword [ecx + eax*4]
movups xmm6, xmmword [ecx + eax*4 + 0x10]
cvtps2pd xmm1, xmm0
cvtps2pd xmm7, xmm6
movups xmm3, xmmword [edx + eax*4]
movhlps xmm0, xmm0
cvtps2pd xmm2, xmm0
cvtps2pd xmm4, xmm3
movups xmmword [esi + eax*8], xmm1
movups xmm1, xmmword [edx + eax*4 + 0x10]
movups xmmword [esi + eax*8 + 0x10], xmm2
movhlps xmm3, xmm3
movhlps xmm6, xmm6
cvtps2pd xmm2, xmm1
cvtps2pd xmm5, xmm3
cvtps2pd xmm0, xmm6
movhlps xmm1, xmm1
cvtps2pd xmm3, xmm1
movups xmmword [edi + eax*8], xmm4
movups xmmword [edi + eax*8 + 0x10], xmm5
movups xmmword [esi + eax*8 + 0x20], xmm7
movups xmmword [esi + eax*8 + 0x30], xmm0
movups xmmword [edi + eax*8 + 0x20], xmm2
movups xmmword [edi + eax*8 + 0x30], xmm3
add eax, 8
cmp eax, dword [ebp - 0xd8]
jb 0x52cca0
mov esi, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0xc4]
mov edx, dword [ebp - 0xc0]
mov eax, dword [ebp - 0xd8]
lea edi, [eax + 1]
cmp edi, dword [ebp - 0x48]
ja 0x52cdc6
mov edi, dword [ebx + 0x48]
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xc8], esi
mov dword [ebp - 0xc4], ecx
lea edi, [edi + eax*4]
mov dword [ebp - 0xd0], edi
mov edi, dword [ebp - 0xac]
mov dword [ebp - 0xc0], edx
sub dword [ebp - 0x48], eax
mov edx, dword [ebp - 0xd0]
lea edi, [edi + eax*8]
mov dword [ebp - 0xcc], edi
mov edi, dword [ebp - 0xa8]
mov esi, dword [ebp - 0xcc]
lea edi, [edi + eax*8]
mov dword [ebp - 0xd4], edi
mov edi, dword [ebx + 0x40]
mov ecx, dword [ebp - 0xd4]
lea eax, [edi + eax*4]
mov edi, dword [ebp - 0xd8]
pxor xmm0, xmm0
pxor xmm1, xmm1
cvtss2sd xmm0, dword [eax + edi*4]
cvtss2sd xmm1, dword [edx + edi*4]
movsd qword [esi + edi*8], xmm0
movsd qword [ecx + edi*8], xmm1
inc edi
cmp edi, dword [ebp - 0x48]
jb 0x52cd92
mov esi, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0xc4]
mov edx, dword [ebp - 0xc0]
mov eax, dword [ebx + 0x40]
pxor xmm0, xmm0
mov edi, dword [ebp - 0xac]
cmp dword [ebp - 0x4c], 0
cvtss2sd xmm0, dword [eax + edx*4 - 4]
movsd qword [edi + edx*8 - 8], xmm0
jle 0x52cf1c
cmp dword [ebp - 0x4c], 8
jl 0x52d943
mov eax, dword [ebp - 0x4c]
xor edx, edx
and eax, 0xfffffff8
mov dword [ebp - 0xc8], esi
mov dword [ebp - 0xc4], ecx
mov dword [ebp - 0xd8], eax
mov ecx, dword [ebx + 0x58]
mov esi, dword [ebx + 0x50]
mov edi, dword [ebp - 0xb8]
nop dword [eax]
movups xmm0, xmmword [esi + edx*4]
movups xmm6, xmmword [esi + edx*4 + 0x10]
cvtps2pd xmm1, xmm0
cvtps2pd xmm7, xmm6
movups xmm3, xmmword [ecx + edx*4]
movhlps xmm0, xmm0
mov eax, dword [ebp - 0x14]
cvtps2pd xmm2, xmm0
cvtps2pd xmm4, xmm3
movups xmmword [eax + edx*8], xmm1
movups xmm1, xmmword [ecx + edx*4 + 0x10]
movups xmmword [eax + edx*8 + 0x10], xmm2
movhlps xmm3, xmm3
movhlps xmm6, xmm6
cvtps2pd xmm2, xmm1
cvtps2pd xmm5, xmm3
cvtps2pd xmm0, xmm6
movhlps xmm1, xmm1
cvtps2pd xmm3, xmm1
movups xmmword [edi + edx*8], xmm4
movups xmmword [edi + edx*8 + 0x10], xmm5
movups xmmword [eax + edx*8 + 0x20], xmm7
movups xmmword [eax + edx*8 + 0x30], xmm0
movups xmmword [edi + edx*8 + 0x20], xmm2
movups xmmword [edi + edx*8 + 0x30], xmm3
add edx, 8
cmp edx, dword [ebp - 0xd8]
jb 0x52ce20
mov eax, dword [ebp - 0xd8]
mov esi, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0xc4]
lea edx, [eax + 1]
cmp edx, dword [ebp - 0x4c]
ja 0x52cf1c
mov edx, dword [ebx + 0x58]
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xc8], esi
mov dword [ebp - 0xc4], ecx
lea edi, [edx + eax*4]
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0xd4], edi
sub dword [ebp - 0x4c], eax
lea edi, [edx + eax*8]
mov edx, dword [ebp - 0xb8]
mov esi, edi
lea edi, [edx + eax*8]
mov edx, dword [ebx + 0x50]
mov ecx, edi
mov edi, dword [ebp - 0xd8]
lea eax, [edx + eax*4]
mov edx, dword [ebp - 0xd4]
pxor xmm0, xmm0
pxor xmm1, xmm1
cvtss2sd xmm0, dword [eax + edi*4]
cvtss2sd xmm1, dword [edx + edi*4]
movsd qword [esi + edi*8], xmm0
movsd qword [ecx + edi*8], xmm1
inc edi
cmp edi, dword [ebp - 0x4c]
jb 0x52ceee
mov esi, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0xc4]
mov eax, dword [ebx + 0x50]
pxor xmm0, xmm0
mov edx, dword [ebp - 0x14]
cmp dword [ebp - 0x50], 0
cvtss2sd xmm0, dword [eax + ecx*4 - 4]
movsd qword [edx + ecx*8 - 8], xmm0
jle 0x52d053
mov ecx, dword [ebx + 0x68]
cmp dword [ebp - 0x50], 8
jl 0x52d93c
mov eax, dword [ebp - 0x50]
xor edx, edx
and eax, 0xfffffff8
mov dword [ebp - 0xc8], esi
mov dword [ebp - 0xd8], eax
mov esi, dword [ebx + 0x60]
mov edi, dword [ebp - 0xb4]
nop dword [eax]
nop dword [eax]
movups xmm0, xmmword [esi + edx*4]
movups xmm6, xmmword [esi + edx*4 + 0x10]
cvtps2pd xmm1, xmm0
cvtps2pd xmm7, xmm6
movups xmm3, xmmword [ecx + edx*4]
movhlps xmm0, xmm0
mov eax, dword [ebp - 0x10]
cvtps2pd xmm2, xmm0
cvtps2pd xmm4, xmm3
movups xmmword [eax + edx*8], xmm1
movups xmm1, xmmword [ecx + edx*4 + 0x10]
movups xmmword [eax + edx*8 + 0x10], xmm2
movhlps xmm3, xmm3
movhlps xmm6, xmm6
cvtps2pd xmm2, xmm1
cvtps2pd xmm5, xmm3
cvtps2pd xmm0, xmm6
movhlps xmm1, xmm1
cvtps2pd xmm3, xmm1
movups xmmword [edi + edx*8], xmm4
movups xmmword [edi + edx*8 + 0x10], xmm5
movups xmmword [eax + edx*8 + 0x20], xmm7
movups xmmword [eax + edx*8 + 0x30], xmm0
movups xmmword [edi + edx*8 + 0x20], xmm2
movups xmmword [edi + edx*8 + 0x30], xmm3
add edx, 8
cmp edx, dword [ebp - 0xd8]
jb 0x52cf70
mov eax, dword [ebp - 0xd8]
mov esi, dword [ebp - 0xc8]
lea edx, [eax + 1]
cmp edx, dword [ebp - 0x50]
ja 0x52d053
mov edi, dword [ebp - 0xb4]
lea edx, [ecx + eax*4]
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0xd8], edx
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0xc8], esi
lea edx, [ecx + eax*8]
sub dword [ebp - 0x50], eax
lea ecx, [edi + eax*8]
mov edi, dword [ebx + 0x60]
mov esi, dword [ebp - 0xd8]
lea eax, [edi + eax*4]
mov edi, dword [ebp - 0xd4]
pxor xmm0, xmm0
pxor xmm1, xmm1
cvtss2sd xmm0, dword [eax + edi*4]
cvtss2sd xmm1, dword [esi + edi*4]
movsd qword [edx + edi*8], xmm0
movsd qword [ecx + edi*8], xmm1
inc edi
cmp edi, dword [ebp - 0x50]
jb 0x52d02b
mov esi, dword [ebp - 0xc8]
mov eax, dword [ebx + 0x60]
pxor xmm0, xmm0
mov edx, dword [ebp - 0x10]
cmp dword [ebp - 0xbc], 0
cvtss2sd xmm0, dword [eax + esi*4 - 4]
movsd qword [edx + esi*8 - 8], xmm0
jle 0x52d0d9
mov ecx, dword [ebx + 0x88]
cmp dword [ebp - 0xbc], 4
jl 0x52d935
mov eax, dword [ebp - 0xbc]
xor edx, edx
and eax, 0xfffffffc
movups xmm0, xmmword [ecx + edx*4]
cvtps2pd xmm1, xmm0
movhlps xmm0, xmm0
cvtps2pd xmm2, xmm0
movups xmmword [edx*8 + 0x7d14c0], xmm1
movups xmmword [edx*8 + 0x7d14d0], xmm2
add edx, 4
cmp edx, eax
jb 0x52d090
cmp eax, dword [ebp - 0xbc]
jae 0x52d0d9
mov edx, dword [ebp - 0xbc]
pxor xmm0, xmm0
cvtss2sd xmm0, dword [ecx + eax*4]
movsd qword [eax*8 + 0x7d14c0], xmm0
inc eax
cmp eax, edx
jb 0x52d0c2
mov eax, dword [ebp - 0xbc]
inc eax
mov dword [ebp - 0xbc], eax
test eax, eax
jle 0x52d188
mov esi, dword [ebx + 0x8c]
mov ecx, dword [ebx + 0x90]
cmp dword [ebp - 0xbc], 4
jl 0x52d92e
xor edx, edx
and eax, 0xfffffffc
nop dword [eax]
movups xmm0, xmmword [esi + edx*4]
movups xmm3, xmmword [ecx + edx*4]
cvtps2pd xmm1, xmm0
cvtps2pd xmm4, xmm3
movhlps xmm0, xmm0
movhlps xmm3, xmm3
cvtps2pd xmm2, xmm0
cvtps2pd xmm5, xmm3
movups xmmword [edx*8 + 0x7d1520], xmm1
movups xmmword [edx*8 + 0x7d1530], xmm2
movups xmmword [edx*8 + 0x7d1580], xmm4
movups xmmword [edx*8 + 0x7d1590], xmm5
add edx, 4
cmp edx, eax
jb 0x52d110
cmp eax, dword [ebp - 0xbc]
jae 0x52d188
mov edx, dword [ebp - 0xbc]
pxor xmm0, xmm0
pxor xmm1, xmm1
cvtss2sd xmm0, dword [esi + eax*4]
cvtss2sd xmm1, dword [ecx + eax*4]
movsd qword [eax*8 + 0x7d1520], xmm0
movsd qword [eax*8 + 0x7d1580], xmm1
inc eax
cmp eax, edx
jb 0x52d15f
cmp dword [ebp - 0x44], 0
jle 0x52d221
mov edx, dword [ebx + 0x9c]
cmp dword [ebp - 0x44], 8
jl 0x52d90a
mov ecx, dword [ebp - 0x44]
xor eax, eax
mov esi, dword [ebp - 0xb0]
and ecx, 0xfffffff8
movups xmm0, xmmword [edx + eax*4]
movups xmm3, xmmword [edx + eax*4 + 0x10]
cvtps2pd xmm1, xmm0
cvtps2pd xmm4, xmm3
movhlps xmm0, xmm0
movhlps xmm3, xmm3
cvtps2pd xmm2, xmm0
cvtps2pd xmm5, xmm3
movups xmmword [esi + eax*8], xmm1
movups xmmword [esi + eax*8 + 0x10], xmm2
movups xmmword [esi + eax*8 + 0x20], xmm4
movups xmmword [esi + eax*8 + 0x30], xmm5
add eax, 8
cmp eax, ecx
jb 0x52d1b0
lea eax, [ecx + 1]
cmp eax, dword [ebp - 0x44]
ja 0x52d213
mov esi, dword [ebp - 0xb0]
lea eax, [edx + ecx*4]
mov edx, dword [ebp - 0x44]
sub edx, ecx
lea ecx, [esi + ecx*8]
xor esi, esi
pxor xmm0, xmm0
cvtss2sd xmm0, dword [eax + esi*4]
movsd qword [ecx + esi*8], xmm0
inc esi
cmp esi, edx
jb 0x52d200
cmp dword [ebp - 0xc], 0
jle 0x52d8f9
xor eax, eax
jmp 0x52d270
cmp dword [ebp - 0xc], 0
jle 0x52d8f9
cmp dword [ebp - 0xc], 1
jbe 0x52d44d
cmp dword [ebp - 0xc], 2
jbe 0x52d44d
cmp dword [ebp - 0xc], 3
jbe 0x52d44d
cmp dword [ebp - 0xc], 4
jbe 0x52d44d
mov eax, 5
cmp dword [ebp - 0xc], 5
jbe 0x52d44d
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x44]
test ecx, ecx
jle 0x52d444
cmp dword [ebp - 0x44], 8
jl 0x52d91f
mov edx, dword [ebp - 0x18]
mov esi, dword [ebp - 0xc]
mov edi, dword [ebp - 0x44]
and edi, 0xfffffff8
lea ecx, [edx + eax*8]
mov dword [ebp - 0xd4], edi
mov edi, dword [ebx + 0xa0]
mov dword [ebp - 0xc8], ecx
lea ecx, [esi*4]
mov edx, edi
sub edx, ecx
lea edi, [edi + eax*4]
mov dword [ebp - 0xcc], edi
lea edi, [esi + esi*2]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0xd8], eax
lea edi, [edx + edi*4]
lea edi, [edi + eax*4]
mov dword [ebp - 0xc4], edi
lea edi, [esi + esi*4]
shl esi, 5
sub esi, ecx
lea edi, [edx + edi*4]
add edx, esi
lea edi, [edi + eax*4]
mov esi, dword [ebp - 0x50]
mov ecx, esi
mov dword [ebp - 0xc0], edi
lea edx, [edx + eax*4]
mov dword [ebp - 0xd0], edx
mov edx, dword [ebp - 0xc]
mov edi, dword [ebp - 0xcc]
add dword [ebp - 0x50], 8
lea eax, [edi + esi*4]
mov edi, dword [ebp - 0xc4]
movss xmm0, dword [eax + edx*4]
movss xmm1, dword [eax]
unpcklps xmm1, xmm0
lea edi, [edi + esi*4]
movlhps xmm1, xmm1
cvtps2pd xmm2, xmm1
mulpd xmm2, xmmword [0x72a060]
movss xmm3, dword [edi + edx*4]
movss xmm4, dword [edi]
mov edi, dword [ebp - 0xc0]
mov eax, dword [ebp - 0xc8]
unpcklps xmm4, xmm3
movlhps xmm4, xmm4
lea edi, [edi + esi*4]
movss xmm6, dword [edi + edx*4]
movss xmm7, dword [edi]
mov edi, dword [ebp - 0xd0]
movsd qword [ecx + eax], xmm2
movhpd qword [ecx + eax + 0x30], xmm2
unpcklps xmm7, xmm6
lea edi, [edi + esi*4]
movss xmm1, dword [edi + edx*4]
lea esi, [esi + edx*8]
movss xmm2, dword [edi]
unpcklps xmm2, xmm1
movlhps xmm7, xmm7
movlhps xmm2, xmm2
cvtps2pd xmm5, xmm4
cvtps2pd xmm0, xmm7
cvtps2pd xmm3, xmm2
mulpd xmm5, xmmword [0x72a060]
mulpd xmm0, xmmword [0x72a060]
mulpd xmm3, xmmword [0x72a060]
movsd qword [ecx + eax + 0x60], xmm5
movhpd qword [ecx + eax + 0x90], xmm5
movsd qword [ecx + eax + 0xc0], xmm0
movhpd qword [ecx + eax + 0xf0], xmm0
movsd qword [ecx + eax + 0x120], xmm3
movhpd qword [ecx + eax + 0x150], xmm3
add ecx, 0x180
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0xd4]
jb 0x52d2f2
mov eax, dword [ebp - 0xd8]
mov edx, dword [ebp - 0xd4]
mov ecx, dword [ebp - 0xc]
imul ecx, edx
lea esi, [edx + edx*2]
shl esi, 4
cmp edx, dword [ebp - 0x44]
jae 0x52d43e
mov edi, dword [ebp - 0x18]
mov edx, dword [ebx + 0xa0]
mov dword [ebp - 0xd8], eax
lea edi, [edi + eax*8]
lea edx, [edx + eax*4]
mov eax, dword [ebp - 0xd4]
pxor xmm0, xmm0
inc eax
cvtss2sd xmm0, dword [edx + ecx*4]
mulsd xmm0, qword [0x72a070]
movsd qword [esi + edi], xmm0
add esi, 0x30
add ecx, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x44]
jb 0x52d416
mov eax, dword [ebp - 0xd8]
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x44]
inc eax
cmp eax, edx
jb 0x52d268
mov eax, dword [ebx + 0x98]
cmp dword [ebp - 0xc], 6
mov dword [eax], 6
jge 0x52d544
mov edi, dword [ebp - 0xc]
xor eax, eax
mov esi, dword [ebp - 0x18]
mov edx, edi
neg edx
mov ecx, dword [ebp - 0x44]
add edx, 6
and ecx, 0xfffffff8
lea esi, [esi + edi*8]
mov dword [ebp - 0xcc], edx
mov dword [ebp - 0xd0], esi
mov dword [ebp - 0xd4], ecx
mov edx, dword [ebp - 0x44]
test edx, edx
jle 0x52d537
cmp edx, 8
jl 0x52d918
mov esi, dword [ebp - 0xd0]
xor edi, edi
mov ecx, dword [ebp - 0xd4]
mov edx, ecx
mov dword [ebp - 0xd8], eax
lea esi, [esi + eax*8]
mov eax, edi
pxor xmm0, xmm0
add edi, 8
movsd qword [eax + esi], xmm0
movhpd qword [eax + esi + 0x30], xmm0
movsd qword [eax + esi + 0x60], xmm0
movhpd qword [eax + esi + 0x90], xmm0
movsd qword [eax + esi + 0xc0], xmm0
movhpd qword [eax + esi + 0xf0], xmm0
movsd qword [eax + esi + 0x120], xmm0
movhpd qword [eax + esi + 0x150], xmm0
add eax, 0x180
cmp edi, edx
jb 0x52d4c0
mov eax, dword [ebp - 0xd8]
mov edx, dword [ebp - 0x44]
lea esi, [ecx + ecx*2]
shl esi, 4
cmp ecx, edx
jae 0x52d537
mov edi, dword [ebp - 0xd0]
pxor xmm0, xmm0
lea edi, [edi + eax*8]
inc ecx
movsd qword [esi + edi], xmm0
add esi, 0x30
cmp ecx, edx
jb 0x52d52a
inc eax
cmp eax, dword [ebp - 0xcc]
jb 0x52d490
mov eax, dword [ebx + 0xa4]
movsd xmm0, qword [ebp - 0x60]
mulsd xmm0, qword [0x72a070]
movsd xmm1, qword [eax]
movlhps xmm1, xmm1
cvtps2pd xmm2, xmm1
movsd qword [ebp - 0x60], xmm0
movups xmmword [0x7d15e0], xmm2
cmp dword [ebp - 0xbc], 0
jle 0x52d64e
cmp dword [ebp - 0xbc], 4
jl 0x52d911
mov eax, dword [ebp - 0xbc]
xor edx, edx
and eax, 0xfffffffc
nop dword [eax]
nop dword [eax]
movups xmm0, xmmword [edx*8 + 0x7d1520]
movups xmm2, xmmword [edx*8 + 0x7d1530]
movups xmm1, xmmword [edx*8 + 0x7d1580]
movups xmm3, xmmword [edx*8 + 0x7d1590]
mulpd xmm0, xmmword [0x72a060]
mulpd xmm1, xmmword [0x72a060]
mulpd xmm2, xmmword [0x72a060]
mulpd xmm3, xmmword [0x72a060]
movups xmmword [edx*8 + 0x7d1520], xmm0
movups xmmword [edx*8 + 0x7d1580], xmm1
movups xmmword [edx*8 + 0x7d1530], xmm2
movups xmmword [edx*8 + 0x7d1590], xmm3
add edx, 4
cmp edx, eax
jb 0x52d5a0
cmp eax, dword [ebp - 0xbc]
jae 0x52d64e
mov edx, dword [ebp - 0xbc]
movsd xmm0, qword [eax*8 + 0x7d1520]
movsd xmm1, qword [eax*8 + 0x7d1580]
mulsd xmm0, qword [0x72a070]
mulsd xmm1, qword [0x72a070]
movsd qword [eax*8 + 0x7d1520], xmm0
movsd qword [eax*8 + 0x7d1580], xmm1
inc eax
cmp eax, edx
jb 0x52d615
add esp, 0xffffff28
mov edi, dword [ebx + 8]
mov esi, dword [ebx + 0xc]
mov ecx, dword [ebx + 0x10]
mov edx, dword [ebx + 0x14]
mov dword [esp], edi
mov dword [esp + 4], esi
mov eax, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], 0x7d1380
mov dword [esp + 0x14], 0x7d1420
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edi
lea edi, [ebp - 0xa0]
mov dword [esp + 0x20], edi
lea edi, [ebp - 0x98]
mov dword [esp + 0x24], edi
lea edi, [ebp - 0x90]
mov dword [esp + 0x28], edi
lea edi, [ebp - 0x88]
mov dword [esp + 0x2c], edi
lea edi, [ebp - 0x80]
mov dword [esp + 0x30], edi
mov edi, dword [ebx + 0x3c]
mov dword [esp + 0x34], edi
mov edi, dword [ebp - 0xac]
mov eax, dword [ebx + 0x44]
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], eax
mov eax, dword [ebp - 0xa8]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 0x4c]
mov dword [esp + 0x44], eax
mov edi, dword [ebp - 0x14]
mov edx, dword [ebx + 0x54]
mov dword [esp + 0x48], edi
mov dword [esp + 0x4c], edx
mov edx, dword [ebp - 0xb8]
mov eax, dword [ebx + 0x5c]
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], eax
lea eax, [ebp - 0x78]
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebx + 0x64]
mov dword [esp + 0x58], edx
lea edx, [ebp - 0x70]
mov dword [esp + 0x5c], ecx
mov ecx, dword [eax - 0x3c]
mov esi, dword [ebx + 0x78]
mov dword [esp + 0x60], ecx
lea ecx, [ebp - 0x68]
mov dword [esp + 0x64], eax
lea eax, [ebp - 0x58]
mov dword [esp + 0x68], edx
mov edx, dword [ebx + 0x84]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], esi
lea esi, [ebp - 0x60]
mov dword [esp + 0x74], esi
mov dword [esp + 0x78], eax
mov ecx, dword [ebx + 0x94]
mov esi, dword [ebx + 0x98]
mov dword [esp + 0x7c], edx
lea edx, [ebp - 0x50]
mov dword [esp + 0x80], 0x7d14c0
mov dword [esp + 0x84], 0x7d1520
mov dword [esp + 0x88], 0x7d1580
mov dword [esp + 0x8c], ecx
lea ecx, [ebp - 0x48]
mov dword [esp + 0x90], esi
lea esi, [ebp - 0x40]
mov edi, dword [eax - 0x58]
mov dword [esp + 0x94], edi
lea edi, [ebp - 0x38]
mov eax, dword [ebp - 0x18]
mov dword [esp + 0x98], eax
lea eax, [ebp - 0x30]
mov dword [esp + 0x9c], 0x7d15e0
mov dword [esp + 0xa0], edx
lea edx, [ebp - 0x28]
mov dword [esp + 0xa4], ecx
lea ecx, [ebp - 0x20]
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], edi
mov esi, dword [ebx + 0xc4]
mov edi, dword [ebx + 0xc8]
mov dword [esp + 0xb0], eax
mov eax, dword [ebx + 0xcc]
mov dword [esp + 0xb4], edx
mov edx, 8
mov dword [esp + 0xb8], ecx
mov dword [esp + 0xbc], esi
mov dword [esp + 0xc0], edi
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], 0x20
mov dword [esp + 0xcc], edx
mov dword [esp + 0xd0], edx
mov dword [esp + 0xd4], 0x50
call fcn.0052d9e0
add esp, 0xd8
mov ecx, dword [ebx + 0xc4]
mov edx, dword [ebx + 0x98]
mov eax, dword [ebp - 0xc]
cmp dword [ecx], 0
mov dword [edx], eax
jne 0x52d8e7
movsd xmm0, qword [ebp - 0x50]
movsd xmm1, qword [ebp - 0x48]
cvtsd2ss xmm0, xmm0
cvtsd2ss xmm1, xmm1
mov edx, dword [ebx + 0xa8]
mov ecx, dword [ebx + 0xac]
movsd xmm2, qword [ebp - 0x38]
movsd xmm3, qword [ebp - 0x30]
movsd xmm4, qword [ebp - 0x28]
movsd xmm5, qword [ebp - 0x20]
movsd xmm6, qword [ebp - 0x40]
cvtsd2ss xmm2, xmm2
cvtsd2ss xmm3, xmm3
cvtsd2ss xmm4, xmm4
cvtsd2ss xmm5, xmm5
cvtsd2ss xmm6, xmm6
movss dword [edx], xmm0
movss dword [ecx], xmm1
mov eax, dword [ebx + 0xb0]
mov esi, dword [ebx + 0xb4]
mov edi, dword [ebx + 0xb8]
mov edx, dword [ebx + 0xbc]
mov ecx, dword [ebx + 0xc0]
movss dword [esi], xmm2
movss dword [edi], xmm3
movss dword [edx], xmm4
movss dword [ecx], xmm5
movss dword [eax], xmm6
mov eax, dword [ebp - 0xa4]
mov esp, eax
lea esp, [ebp - 8]
pop edi
pop esi
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, dword [ebx + 0x98]
mov dword [eax], 6
jmp 0x52d463
xor ecx, ecx
jmp 0x52d1e5
xor eax, eax
jmp 0x52d607
xor ecx, ecx
jmp 0x52d513
mov dword [ebp - 0xd4], 0
jmp 0x52d3e4
xor eax, eax
jmp 0x52d151
xor eax, eax
jmp 0x52d0b4
xor eax, eax
jmp 0x52cfe6
xor eax, eax
jmp 0x52ce9c
mov dword [ebp - 0xd8], 0
jmp 0x52cd19
push 0x80120
push 0x78e874
mov esi, dword [ebx + 0xc4]
lea edx, [ebp - 0xb8]
push edx
push 0x72a050
mov dword [esi], 3
lea esi, [ebp - 0xd8]
push 0x8384ff00
mov eax, dword [ebx + 0xc8]
push esi
mov dword [edx + 4], eax
mov dword [edx - 0x20], 0
mov dword [edx], 0x50
mov dword [edx + 8], 0x2b
mov dword [edx + 0xc], 0x72a0a4
call fcn.005dd880
add esp, 0x18
mov eax, dword [ebx + 0x84]
lea ecx, [ebp - 0xa8]
push ecx
push 0x72a058
mov edx, dword [eax]
push esi
mov dword [ecx], edx
call fcn.005df240
add esp, 0xc
jmp 0x52d8e7