Function at 0x4138f4
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x600
mov eax, dword [ebp + 0xc]
mov esi, dword [eax + 0x38]
mov dword [esp + 0x170], esi
mov edi, dword [eax + 0x3c]
mov dword [esp + 0x200], edi
mov ecx, dword [eax + 0x70]
mov dword [esp + 0x14c], ecx
mov edx, dword [eax + 0x74]
mov dword [esp + 0x1d8], edx
movdqu xmm6, xmmword [eax]
pshufd xmm0, xmm6, 0x55
movd xmm1, esi
movd xmm7, edi
movdqa xmmword [esp + 0x1b0], xmm7
punpcklqdq xmm7, xmm1
movd xmm1, ecx
movd xmm5, edx
movdqa xmmword [esp + 0x420], xmm5
punpcklqdq xmm5, xmm1
mov ecx, dword [eax + 0x78]
mov dword [esp + 0x144], ecx
movd xmm1, ecx
mov ecx, dword [eax + 0x7c]
mov dword [esp + 0x148], ecx
movd xmm2, ecx
punpcklqdq xmm2, xmm1
movdqa xmmword [esp + 0x320], xmm2
movdqu xmm3, xmmword [eax + 0x28]
movd dword [esp + 0x140], xmm0
pshufd xmm0, xmm3, 0x55
movd dword [esp + 0x10], xmm0
pshufd xmm0, xmm3, 0xff
movd dword [esp + 0x6c], xmm0
pshufd xmm0, xmm3, 0xee
movd dword [esp + 0x68], xmm0
movdqu xmm4, xmmword [eax + 0x48]
pshufd xmm0, xmm4, 0xff
movd dword [esp + 0xac], xmm0
pshufd xmm0, xmm4, 0xee
movd dword [esp + 0x1dc], xmm0
mov ecx, dword [eax + 0x10]
movd xmm1, dword [eax + 0x14]
movdqa xmmword [esp + 0x450], xmm1
movd xmm0, ecx
punpcklqdq xmm1, xmm0
movdqa xmmword [esp + 0x80], xmm1
mov esi, dword [eax + 0x18]
mov dword [esp + 0x120], esi
mov edx, dword [eax + 0x1c]
mov dword [esp + 0x134], edx
movd xmm0, esi
movd xmm1, edx
movdqa xmmword [esp + 0x550], xmm1
punpcklqdq xmm1, xmm0
movdqa xmmword [esp + 0x2e0], xmm1
mov edi, dword [eax + 0x40]
mov edx, dword [eax + 0x44]
mov dword [esp + 0x260], edx
movd xmm0, edi
mov dword [esp + 0x138], edi
movd xmm1, edx
movdqa xmmword [esp + 0x2d0], xmm1
punpcklqdq xmm1, xmm0
movdqa xmmword [esp + 0x220], xmm1
mov esi, dword [eax + 0x58]
mov dword [esp + 0xe0], esi
mov edx, dword [eax + 0x5c]
mov dword [esp + 0x30], edx
movd xmm0, esi
movd xmm1, edx
movdqa xmm2, xmm1
punpcklqdq xmm2, xmm0
movdqa xmmword [esp + 0x290], xmm2
mov ebx, dword [eax + 0x20]
mov edx, dword [eax + 0x24]
mov dword [esp + 0x13c], edx
movd xmm0, ebx
movd xmm2, edx
movdqa xmmword [esp + 0x300], xmm2
punpcklqdq xmm2, xmm0
movdqa xmmword [esp + 0x280], xmm2
movd xmm0, esi
punpcklqdq xmm1, xmm0
movdqa xmmword [esp + 0x3a0], xmm1
movsd xmm2, qword [eax + 0x20]
movaps xmm0, xmm2
movdqa xmm1, xmm7
movdqa xmmword [esp + 0x2f0], xmm7
shufps xmm0, xmm7, 0x24
movaps xmmword [esp + 0x460], xmm0
movdqa xmm7, xmm3
movdqa xmm0, xmm3
shufps xmm0, xmm5, 0x2e
movaps xmmword [esp + 0x360], xmm0
movaps xmm0, xmm2
movaps xmm3, xmmword [esp + 0x320]
shufps xmm0, xmm3, 0x24
movaps xmmword [esp + 0x270], xmm0
movdqa xmm0, xmm6
shufps xmm0, xmm1, 0x24
movaps xmmword [esp + 0x160], xmm0
shufps xmm2, xmm5, 0x24
movaps xmmword [esp + 0x3c0], xmm2
movaps xmmword [esp + 0x310], xmm5
movq xmm0, qword [eax + 0x40]
movdqa xmmword [esp + 0x250], xmm0
movdqa xmm1, xmm0
punpcklqdq xmm1, xmm4
movdqa xmmword [esp + 0x2b0], xmm1
movdqa xmm0, xmm6
shufps xmm0, xmmword [esp + 0x80], 0x24
movaps xmmword [esp + 0x390], xmm0
movsd xmm1, qword [eax + 0x18]
movaps xmmword [esp + 0x180], xmm1
movsd xmm0, qword [eax + 0x38]
movaps xmmword [esp + 0x3b0], xmm0
movlhps xmm0, xmm1
movaps xmmword [esp + 0x330], xmm0
movdqa xmm0, xmm6
movdqa xmm1, xmm4
movdqa xmmword [esp + 0x100], xmm4
movsd xmm0, xmm4
movapd xmmword [esp + 0x3d0], xmm0
movdqa xmm0, xmm7
shufps xmm0, xmmword [esp + 0x2e0], 0x2e
movaps xmmword [esp + 0x3f0], xmm0
movdqa xmm2, xmm6
movaps xmm0, xmmword [esp + 0x220]
shufps xmm2, xmm0, 0x24
movaps xmmword [esp + 0x430], xmm2
movdqa xmm2, xmm7
shufps xmm2, xmm3, 0x24
movaps xmmword [esp + 0x350], xmm2
movsd xmm2, qword [eax + 0x10]
movaps xmm3, xmm2
movaps xmmword [esp + 0xb0], xmm2
shufps xmm3, xmmword [esp + 0x290], 0x24
movaps xmmword [esp + 0x4c0], xmm3
movsd xmm4, qword [eax + 0x70]
movaps xmmword [esp + 0x480], xmm4
movaps xmm3, xmmword [esp + 0x280]
shufps xmm4, xmm3, 0x24
movaps xmmword [esp + 0x490], xmm4
movdqa xmm4, xmm1
shufps xmm4, xmm0, 0x24
movaps xmmword [esp + 0x4b0], xmm4
movdqa xmm0, xmm7
movsd xmm0, xmm6
movapd xmmword [esp + 0x4a0], xmm0
movsd xmm0, qword [eax + 0x58]
movaps xmmword [esp + 0x210], xmm0
shufps xmm0, xmm5, 0x24
movaps xmmword [esp + 0x380], xmm0
pshufd xmm0, xmm6, 0x4e
movdqa xmmword [esp + 0x230], xmm0
punpcklqdq xmm0, xmm1
movdqa xmmword [esp + 0x4d0], xmm0
movapd xmm0, xmm6
movaps xmmword [esp + 0xc0], xmm6
shufps xmm0, xmm3, 0x24
movaps xmmword [esp + 0x4e0], xmm0
movaps xmm5, xmmword [esp + 0x250]
shufps xmm5, xmmword [esp + 0x80], 0x24
movaps xmmword [esp + 0x4f0], xmm5
pshufd xmm3, xmm7, 0x4e
movdqa xmmword [esp + 0xf0], xmm3
movdqa xmmword [esp + 0x240], xmm7
movdqa xmm0, xmm1
movsd xmm0, xmm3
movapd xmmword [esp + 0x500], xmm0
movq xmm0, qword [eax + 0x78]
movdqa xmmword [esp + 0x340], xmm0
punpcklqdq xmm0, xmm1
movdqa xmmword [esp + 0x370], xmm0
shufps xmm2, xmmword [esp + 0x2f0], 0x24
movaps xmmword [esp + 0x530], xmm2
movaps xmm0, xmmword [esp + 0x3a0]
shufps xmm0, xmm6, 0x42
movaps xmmword [esp + 0x510], xmm0
movaps xmm0, xmmword [esp + 0x180]
shufps xmm0, xmmword [esp + 0x220], 0x24
movaps xmmword [esp + 0x520], xmm0
movdqu xmm0, xmmword [eax + 0x60]
movdqa xmmword [esp + 0x50], xmm0
pshufd xmm2, xmm0, 0xee
movdqa xmmword [esp + 0x70], xmm2
movsd xmm3, xmm2
movapd xmmword [esp + 0x470], xmm3
movsd xmm1, xmm0
movapd xmmword [esp + 0x440], xmm1
movd esi, xmm6
mov dword [esp + 0x1d4], esi
movd dword [esp], xmm7
movd xmm0, ecx
movdqa xmmword [esp + 0x410], xmm0
movss xmm0, dword [esp + 0x120]
movaps xmmword [esp + 0x540], xmm0
movd xmm0, ebx
mov dword [esp + 0x1d0], ebx
movdqa xmmword [esp + 0x560], xmm0
movss xmm0, dword [esp + 0x170]
movaps xmmword [esp + 0x2c0], xmm0
movd xmm0, edi
movdqa xmmword [esp + 0x400], xmm0
movss xmm0, dword [esp + 0x14c]
movaps xmmword [esp + 0x3e0], xmm0
lea edi, [esp + 0x578]
push 0x40
push dword [ebp + 8]
push edi
call fcn.0042bc88
add esp, 0xc
mov eax, dword [edi + 0x20]
add eax, esi
mov ecx, dword [edi + 0x24]
adc ecx, dword [esp + 0x140]
movd xmm0, ecx
movd xmm2, eax
punpckldq xmm2, xmm0
mov esi, edi
mov ecx, dword [edi + 0x2c]
mov dword [esp + 0xa8], ecx
mov eax, dword [edi + 0x28]
mov dword [esp + 0x2a0], eax
movd xmm0, eax
movd xmm3, ecx
punpcklqdq xmm3, xmm0
movups xmm1, xmmword [edi]
shufps xmm1, xmm3, 0x24
punpcklqdq xmm2, xmmword [esp + 0xb0]
paddq xmm1, xmm2
pshufd xmm0, xmm1, 0x55
movd dword [esp + 0x110], xmm0
mov eax, dword [edi + 0x30]
mov dword [esp + 0x20], eax
add ebx, eax
mov ecx, dword [edi + 0x34]
mov dword [esp + 0x1a0], ecx
mov eax, dword [esp + 0x13c]
adc eax, ecx
movss xmm0, dword [edi + 8]
movss xmm2, dword [edi + 0xc]
movlhps xmm2, xmm0
add ebx, dword [edi + 0x10]
movaps xmm7, xmmword [esp + 0xc0]
shufps xmm7, xmm2, 0x2e
adc eax, dword [edi + 0x14]
mov edx, dword [ebp + 8]
mov ecx, dword [edx + 0x54]
xor ecx, eax
mov dword [esp + 0xa4], ecx
mov ecx, dword [edx + 0x50]
xor ecx, ebx
mov dword [esp + 0xa0], ecx
add ebx, dword [esp]
mov dword [esp], ebx
adc eax, dword [esp + 0x10]
mov dword [esp + 0x4c], eax
mov edx, dword [edi + 0x38]
mov ecx, dword [esp + 0x68]
add ecx, edx
mov edi, dword [edi + 0x3c]
mov dword [esp + 0x10], edi
mov eax, dword [esp + 0x6c]
adc eax, edi
add ecx, dword [esi + 0x18]
adc eax, dword [esi + 0x1c]
mov esi, dword [ebp + 8]
mov edi, dword [esi + 0x5c]
xor edi, eax
mov ebx, dword [esi + 0x58]
xor ebx, ecx
xor edi, 0x5be0cd19
xor ebx, 0x137e2179
mov esi, edi
add esi, 0x5f1d36f1
mov dword [esp + 0x190], esi
mov dword [esp + 0xd0], ebx
adc dword [esp + 0xd0], 0xa54ff53a
xor edx, esi
mov esi, dword [esp + 0x10]
xor esi, dword [esp + 0xd0]
mov dword [esp + 0x10], esi
mov dword [esp + 0x150], edx
shld dword [esp + 0x150], esi, 8
movd dword [esp + 0x90], xmm1
paddq xmm7, xmm1
shld dword [esp + 0x10], edx, 8
add ecx, dword [esp + 0x170]
adc eax, dword [esp + 0x200]
mov esi, dword [ebp + 8]
mov edx, dword [esp + 0x110]
xor edx, dword [esi + 0x44]
mov dword [esp + 0x110], edx
mov edx, dword [esp + 0x90]
xor edx, dword [esi + 0x40]
mov dword [esp + 0x90], edx
movd xmm1, dword [esp + 0x90]
movd xmm2, dword [esp + 0x110]
punpckldq xmm1, xmm2
mov edx, dword [esp + 0x10]
add ecx, edx
mov esi, dword [esp + 0x150]
adc eax, esi
movd xmm2, eax
movdqa xmmword [esp + 0x1f0], xmm2
movd xmm3, ecx
movdqa xmmword [esp + 0x200], xmm3
punpckldq xmm3, xmm2
punpcklqdq xmm3, xmm1
movd xmm2, edi
movd xmm1, ebx
punpckldq xmm2, xmm1
mov eax, 0x510e527f
mov ecx, 0xade682d1
movd xmm1, eax
movd xmm4, ecx
punpckldq xmm4, xmm1
punpcklqdq xmm2, xmm4
pxor xmm2, xmm3
movdqa xmm1, xmm2
psllq xmm1, 0x30
movdqa xmm0, xmm2
movdqa xmm3, xmm2
psllq xmm2, 0x20
movsd xmm2, xmm1
psrlq xmm0, 0x10
movdqa xmmword [esp + 0x1e0], xmm0
psrlq xmm3, 0x20
movsd xmm3, xmm0
orpd xmm2, xmm3
movd xmm0, dword [esp + 0x190]
movd xmm1, dword [esp + 0xd0]
punpckldq xmm0, xmm1
mov eax, 0x6a09e667
mov ecx, 0xf3bcc908
movd xmm1, eax
movd xmm3, ecx
punpckldq xmm3, xmm1
punpcklqdq xmm0, xmm3
movd xmm1, esi
movd xmm3, edx
punpckldq xmm3, xmm1
lea eax, [esp + 0x578]
movdqu xmm1, xmmword [eax + 0x20]
punpcklqdq xmm3, xmm1
paddq xmm0, xmm2
pxor xmm3, xmm0
movdqa xmmword [esp + 0x150], xmm0
movdqa xmm1, xmm3
psrlq xmm1, 0x3f
movdqa xmm4, xmm3
psrlq xmm4, 0x18
movsd xmm4, xmm1
movdqa xmm5, xmm3
psllq xmm5, 0x28
paddq xmm3, xmm3
movsd xmm5, xmm3
orpd xmm5, xmm4
movapd xmmword [esp + 0x110], xmm5
mov eax, dword [ebp + 8]
movss xmm1, dword [eax + 0x48]
movss xmm4, dword [eax + 0x4c]
movlhps xmm4, xmm1
shufps xmm5, xmm4, 0x2e
movdqa xmm4, xmm7
paddq xmm4, xmm5
pxor xmm5, xmm7
movsd xmm5, xmm4
movapd xmm6, xmm2
unpckhpd xmm6, xmmword [0x438190]
xorpd xmm6, xmm5
movapd xmm5, xmm6
psrlq xmm5, 0x10
movapd xmm1, xmm6
psrlq xmm1, 0x20
movsd xmm1, xmm5
movapd xmm5, xmm6
psllq xmm5, 0x30
psllq xmm6, 0x20
movsd xmm6, xmm5
punpckhqdq xmm0, xmmword [0x4381a0]
orpd xmm6, xmm1
paddq xmm0, xmm6
movdqa xmmword [esp + 0x90], xmm0
pshufd xmm1, xmm0, 0xee
movd ecx, xmm1
pshufd xmm1, xmm0, 0xff
movd eax, xmm1
pshufd xmm1, xmm7, 0xff
movd edx, xmm1
pshufd xmm0, xmm7, 0xee
movd esi, xmm0
pshufd xmm0, xmm3, 0x55
movd dword [esp + 0x10], xmm0
pshufd xmm0, xmm4, 0x55
movd dword [esp + 0x190], xmm0
movd dword [esp + 0x1cc], xmm4
pshufd xmm0, xmm2, 0x55
movd dword [esp + 0xd0], xmm0
xor eax, dword [esp + 0xa8]
xor ecx, dword [esp + 0x2a0]
mov edi, ecx
shld edi, eax, 8
mov dword [esp + 0xa8], edi
shrd ecx, eax, 0x18
mov dword [esp + 0x170], ecx
add esi, dword [esp + 0x120]
adc edx, dword [esp + 0x134]
add esi, ecx
adc edx, edi
movd xmm0, dword [esp + 0xa4]
movd xmm1, dword [esp + 0xa0]
punpckldq xmm1, xmm0
movd xmm0, edx
movd xmm3, esi
punpckldq xmm3, xmm0
movdqa xmmword [esp + 0x2a0], xmm3
movdqa xmm2, xmm6
punpckhqdq xmm2, xmmword [0x4381b0]
movdqa xmm0, xmm3
punpcklqdq xmm0, xmm1
pxor xmm0, xmm2
movdqa xmm1, xmm0
psrlq xmm1, 0x10
movdqa xmm2, xmm0
psrlq xmm2, 0x20
shufps xmm1, xmm2, 0xe4
movdqa xmm3, xmm0
psllq xmm3, 0x30
psllq xmm0, 0x20
shufps xmm3, xmm0, 0xe4
orps xmm3, xmm1
pshufd xmm0, xmm0, 0xff
movd eax, xmm0
pshufd xmm0, xmm2, 0xee
movd ecx, xmm0
add ecx, 0xfe94f82b
mov dword [esp + 0xa0], ecx
adc eax, 0x3c6ef372
mov dword [esp + 0xa4], eax
movdqa xmm1, xmmword [esp + 0x50]
pshufd xmm0, xmm1, 0x55
movd edx, xmm0
mov ebx, dword [esp + 0x1a0]
xor ebx, eax
mov eax, dword [esp + 0x20]
xor eax, ecx
mov ecx, eax
shld ecx, ebx, 8
shrd eax, ebx, 0x18
mov dword [esp + 0x20], eax
mov edi, dword [esp]
add edi, eax
mov dword [esp], edi
mov ebx, dword [esp + 0x4c]
adc ebx, ecx
movdqa xmm0, xmmword [esp + 0x110]
movd esi, xmm0
add esi, edi
mov eax, dword [esp + 0x10]
adc eax, ebx
mov edi, ebx
movd ebx, xmm1
add ebx, esi
adc edx, eax
movd xmm0, edx
movd xmm7, ebx
punpckldq xmm7, xmm0
movd xmm0, edi
movd xmm1, dword [esp]
punpcklqdq xmm0, xmm1
movdqa xmm5, xmm7
shufps xmm5, xmm0, 0x24
xorps xmm5, xmm3
movaps xmm1, xmm5
psllq xmm1, 0x20
movaps xmm4, xmm5
movaps xmm0, xmm5
psllq xmm5, 0x30
movsd xmm5, xmm1
psrlq xmm4, 0x20
psrlq xmm0, 0x10
shufpd xmm4, xmm0, 2
orpd xmm5, xmm4
movapd xmm2, xmm5
unpcklpd xmm2, xmm3
paddq xmm2, xmmword [esp + 0x90]
movdqa xmmword [esp + 0x10], xmm2
pshufd xmm1, xmm2, 0xff
movd edx, xmm1
pshufd xmm1, xmm2, 0xee
movd ebx, xmm1
pshufd xmm1, xmm5, 0xff
movd edi, xmm1
pshufd xmm0, xmm0, 0xee
movd esi, xmm0
xor ebx, dword [esp + 0x170]
xor edx, dword [esp + 0xa8]
mov eax, edx
shld eax, ebx, 1
mov dword [esp + 0x4c], eax
shrd edx, ebx, 0x1f
add esi, dword [esp + 0xa0]
mov dword [esp + 0x1a0], esi
adc edi, dword [esp + 0xa4]
mov dword [esp], edi
xor ecx, edi
mov edi, dword [esp + 0x20]
xor edi, esi
mov ebx, ecx
shld ebx, edi, 1
mov dword [esp + 0x170], ebx
movdqa xmm0, xmmword [esp + 0x1e0]
movd ebx, xmm0
shld edi, ecx, 1
mov dword [esp + 0x20], edi
movd xmm0, edi
movd xmm1, dword [esp + 0x170]
punpcklqdq xmm1, xmm0
movaps xmm2, xmmword [esp + 0x100]
movaps xmm0, xmm2
shufps xmm0, xmm1, 0x24
mov edi, dword [esp + 0x1cc]
add edi, edx
mov esi, dword [esp + 0x190]
mov ecx, dword [esp + 0x4c]
adc esi, ecx
add edi, dword [esp + 0x138]
adc esi, dword [esp + 0x260]
movd xmm1, esi
movd xmm3, edi
punpckldq xmm3, xmm1
punpcklqdq xmm3, xmmword [esp + 0x2a0]
mov eax, dword [esp + 0xd0]
xor eax, esi
xor ebx, edi
movd xmm4, eax
add eax, dword [esp + 0x1a0]
mov dword [esp + 0xd0], eax
mov esi, dword [esp]
adc esi, ebx
paddq xmm3, xmm0
xor edx, eax
xor ecx, esi
mov edi, ecx
shld edi, edx, 8
shrd ecx, edx, 0x18
movd xmm1, edi
movd xmm0, ecx
punpcklqdq xmm0, xmm1
shufps xmm0, xmm2, 0xe2
paddq xmm0, xmm3
movd xmm2, ebx
punpcklqdq xmm2, xmm4
shufps xmm2, xmm6, 0x42
xorps xmm2, xmm0
movaps xmm1, xmm2
psrlq xmm1, 0x10
movaps xmm3, xmm2
psrlq xmm3, 0x20
movsd xmm3, xmm1
movaps xmm1, xmm2
psllq xmm1, 0x30
psllq xmm2, 0x20
movsd xmm2, xmm1
orpd xmm2, xmm3
pshufd xmm1, xmm2, 0x55
movd edx, xmm1
pshufd xmm6, xmm2, 0xee
paddq xmm6, xmmword [esp + 0x150]
pshufd xmm1, xmm6, 0x55
movd dword [esp], xmm1
movaps xmmword [esp + 0x1a0], xmm0
pshufd xmm1, xmm0, 0xff
movd dword [esp + 0x150], xmm1
pshufd xmm1, xmm0, 0xee
movd ebx, xmm1
movdqa xmm3, xmmword [esp + 0x10]
movdqa xmm0, xmm3
punpcklqdq xmm0, xmmword [esp + 0x90]
pxor xmm0, xmmword [esp + 0x110]
movdqa xmm1, xmm0
psrlq xmm1, 0x18
movdqa xmm4, xmm0
psrlq xmm4, 0x3f
movsd xmm4, xmm1
movdqa xmm1, xmm0
psllq xmm1, 0x28
paddq xmm0, xmm0
movsd xmm0, xmm1
orpd xmm0, xmm4
movaps xmm1, xmmword [esp + 0x1f0]
unpcklpd xmm1, xmmword [esp + 0x200]
shufps xmm7, xmm1, 0x24
movapd xmm1, xmmword [esp + 0x50]
unpckhpd xmm1, xmm0
paddq xmm7, xmm1
movapd xmm1, xmm0
shufps xmm1, xmmword [esp + 0x310], 0x24
paddq xmm1, xmm7
movdqa xmmword [esp + 0x90], xmm1
pxor xmm5, xmm1
movdqa xmm1, xmm5
psrlq xmm1, 0x10
movdqa xmm4, xmm5
psrlq xmm4, 0x20
movsd xmm4, xmm1
movdqa xmm1, xmm5
psllq xmm1, 0x30
psllq xmm5, 0x20
movsd xmm5, xmm1
orpd xmm5, xmm4
movdqa xmm1, xmm3
paddq xmm1, xmm5
movdqa xmmword [esp + 0x10], xmm1
xorpd xmm0, xmm1
movapd xmm1, xmm0
psrlq xmm1, 0x3f
movapd xmm4, xmm0
psrlq xmm4, 0x18
movsd xmm4, xmm1
movapd xmm1, xmm0
psllq xmm1, 0x28
paddq xmm0, xmm0
shufpd xmm0, xmm1, 2
movd eax, xmm2
add eax, dword [esp + 0xd0]
mov dword [esp + 0x1e0], eax
adc edx, esi
mov dword [esp + 0x1f0], edx
orpd xmm0, xmm4
xor ecx, edx
mov esi, edi
xor esi, eax
mov edi, esi
shld edi, ecx, 1
mov dword [esp + 0x4c], edi
shrd esi, ecx, 0x1f
movd ecx, xmm6
xor ecx, dword [esp + 0x20]
mov edx, dword [esp]
xor edx, dword [esp + 0x170]
mov eax, ecx
shld eax, edx, 8
mov dword [esp + 0x190], eax
shld edx, ecx, 8
mov dword [esp], edx
add ebx, dword [esp + 0xe0]
mov ecx, dword [esp + 0x150]
adc ecx, dword [esp + 0x30]
add ebx, edx
adc ecx, eax
movd xmm1, edi
movd xmm7, esi
mov edi, esi
punpcklqdq xmm7, xmm1
movd xmm1, ebx
movd xmm4, ecx
movdqa xmm3, xmm4
punpcklqdq xmm3, xmm1
shufps xmm7, xmmword [esp + 0x90], 0xe2
paddq xmm7, xmmword [esp + 0x270]
shufps xmm3, xmm0, 0xe2
paddq xmm3, xmm7
movaps xmm1, xmm0
paddq xmm1, xmmword [esp + 0x70]
pshufd xmm7, xmm3, 0xee
paddq xmm7, xmm1
movdqa xmmword [esp + 0x20], xmm7
movd xmm1, ebx
punpcklqdq xmm4, xmm1
movdqa xmm1, xmm7
shufps xmm1, xmm4, 0x24
xorps xmm1, xmm2
movaps xmm2, xmm1
psrlq xmm2, 0x20
movaps xmm4, xmm1
psrlq xmm4, 0x10
movsd xmm4, xmm2
movaps xmm2, xmm1
psllq xmm2, 0x20
psllq xmm1, 0x30
movsd xmm1, xmm2
orpd xmm1, xmm4
pshufd xmm7, xmm1, 0xee
paddq xmm7, xmm6
pxor xmm5, xmm3
movdqa xmm2, xmm5
psrlq xmm2, 0x20
movdqa xmm4, xmm5
psrlq xmm4, 0x10
movsd xmm4, xmm2
movdqa xmm2, xmm5
psllq xmm2, 0x20
psllq xmm5, 0x30
movsd xmm5, xmm2
orpd xmm5, xmm4
movapd xmm4, xmm5
movsd xmm4, xmm1
movd edx, xmm7
pshufd xmm2, xmm7, 0x55
movdqa xmmword [esp + 0x150], xmm2
shufpd xmm7, xmmword [esp + 0x10], 2
paddq xmm7, xmm4
xorps xmm0, xmm7
movaps xmm4, xmm0
psrlq xmm4, 0x18
movaps xmm6, xmm0
psrlq xmm6, 0x3f
movsd xmm6, xmm4
movaps xmm4, xmm0
psllq xmm4, 0x28
paddq xmm0, xmm0
movsd xmm0, xmm4
orpd xmm0, xmm6
movdqa xmm2, xmmword [esp + 0x20]
punpcklqdq xmm2, xmmword [esp + 0x1a0]
paddq xmm2, xmmword [esp + 0x360]
paddq xmm2, xmm0
movdqa xmmword [esp + 0x20], xmm2
pxor xmm1, xmm2
movdqa xmm4, xmm1
psrlq xmm4, 0x10
movdqa xmm6, xmm1
psrlq xmm6, 0x20
movsd xmm6, xmm4
movdqa xmm4, xmm1
psllq xmm4, 0x30
psllq xmm1, 0x20
movsd xmm1, xmm4
orpd xmm1, xmm6
movdqa xmm4, xmm7
punpcklqdq xmm4, xmmword [esp + 0x10]
paddq xmm4, xmm1
movdqa xmmword [esp + 0x110], xmm4
movdqa xmm2, xmm1
movaps xmmword [esp + 0xd0], xmm1
pxor xmm0, xmm4
movdqa xmm4, xmm0
psrlq xmm4, 0x3f
movdqa xmm6, xmm0
psrlq xmm6, 0x18
movsd xmm6, xmm4
movdqa xmm1, xmm0
psllq xmm1, 0x28
paddq xmm0, xmm0
movsd xmm1, xmm0
orpd xmm1, xmm6
movapd xmmword [esp + 0x1a0], xmm1
movdqa xmm4, xmmword [esp + 0x20]
paddq xmm4, xmmword [esp + 0x100]
paddq xmm4, xmm1
movdqa xmmword [esp + 0x170], xmm4
pxor xmm4, xmm2
pshufd xmm6, xmm4, 0xee
movd eax, xmm6
pshufd xmm4, xmm4, 0xff
movd ecx, xmm4
mov ebx, ecx
shld ebx, eax, 0x10
mov dword [esp + 0x200], ebx
shld eax, ecx, 0x10
movdqa xmm1, xmmword [esp + 0x150]
movd esi, xmm1
movd xmm2, ebx
movd xmm4, eax
movdqa xmmword [esp + 0x150], xmm4
punpcklqdq xmm4, xmm2
shufps xmm4, xmm5, 0x42
movlps xmm7, qword [esp + 0x118]
paddq xmm7, xmm4
pshufd xmm2, xmm7, 0xff
movd ecx, xmm2
xor edx, dword [esp]
mov eax, esi
xor eax, dword [esp + 0x190]
mov ebx, eax
shld ebx, edx, 1
pshufd xmm2, xmm7, 0xee
movd esi, xmm2
shrd eax, edx, 0x1f
mov dword [esp + 0x10], eax
movd xmm2, eax
movd xmm4, ebx
punpcklqdq xmm4, xmm2
shufps xmm3, xmm4, 0x24
xor esi, dword [esp + 0x4c]
xor ecx, edi
mov edx, ecx
shld edx, esi, 8
paddq xmm3, xmmword [esp + 0x2b0]
shrd ecx, esi, 0x18
movd xmm2, ecx
movd xmm1, edx
punpckldq xmm1, xmm2
movdqa xmmword [esp + 0x2b0], xmm1
punpcklqdq xmm1, xmmword [esp + 0x90]
paddq xmm1, xmm3
xorps xmm5, xmm1
movaps xmm2, xmm5
psrlq xmm2, 0x10
movaps xmm3, xmm5
psrlq xmm3, 0x20
shufps xmm2, xmm3, 0xe4
movaps xmm6, xmm5
psllq xmm6, 0x30
psllq xmm5, 0x20
shufps xmm6, xmm5, 0xe4
orps xmm6, xmm2
pshufd xmm2, xmm5, 0xff
movd eax, xmm2
pshufd xmm2, xmm3, 0xee
movd ecx, xmm2
movdqa xmmword [esp + 0x90], xmm1
pshufd xmm2, xmm1, 0xff
movd edx, xmm2
pshufd xmm2, xmm1, 0xee
movd edi, xmm2
add ecx, dword [esp + 0x1e0]
mov dword [esp + 0x4c], ecx
adc eax, dword [esp + 0x1f0]
mov dword [esp + 0x1e0], eax
pshufd xmm0, xmm0, 0x55
movd esi, xmm0
xor ebx, eax
mov eax, dword [esp + 0x10]
xor eax, ecx
mov ecx, eax
shld ecx, ebx, 8
mov dword [esp + 0x1f0], ecx
shrd eax, ebx, 0x18
mov dword [esp + 0x10], eax
add edi, dword [esp + 0x144]
adc edx, dword [esp + 0x148]
add edi, eax
adc edx, ecx
movd xmm0, edi
add edi, dword [esp + 0xe0]
movd xmm5, edx
adc edx, dword [esp + 0x30]
movdqa xmm4, xmmword [esp + 0x1a0]
movd ebx, xmm4
add ebx, edi
adc esi, edx
movd xmm2, esi
movd xmm3, ebx
punpckldq xmm3, xmm2
punpcklqdq xmm5, xmm0
movdqa xmm0, xmm3
shufps xmm0, xmm5, 0x24
xorps xmm0, xmm6
movaps xmm1, xmm0
psllq xmm1, 0x20
movaps xmm5, xmm0
movaps xmm2, xmm0
psllq xmm0, 0x30
movsd xmm0, xmm1
psrlq xmm5, 0x20
psrlq xmm2, 0x10
shufpd xmm5, xmm2, 2
orpd xmm0, xmm5
movapd xmm1, xmm0
unpcklpd xmm1, xmm6
pshufd xmm5, xmm0, 0xff
movd ecx, xmm5
pshufd xmm2, xmm2, 0xee
movd edi, xmm2
paddq xmm1, xmm7
movdqa xmmword [esp + 0x190], xmm1
movdqa xmm6, xmm1
punpcklqdq xmm6, xmm7
pxor xmm6, xmm4
movdqa xmm2, xmm6
psrlq xmm2, 0x18
movdqa xmm5, xmm6
psrlq xmm5, 0x3f
movsd xmm5, xmm2
movdqa xmm2, xmm6
psllq xmm2, 0x28
paddq xmm6, xmm6
movsd xmm6, xmm2
orpd xmm6, xmm5
punpcklqdq xmm3, xmmword [esp + 0x20]
movaps xmm2, xmmword [esp + 0x1b0]
unpcklpd xmm2, xmmword [esp + 0x2c0]
movaps xmmword [esp + 0x1b0], xmm2
shufps xmm2, xmm6, 0xe2
paddq xmm2, xmm3
movapd xmm1, xmmword [esp + 0xf0]
movsd xmm1, xmm6
paddq xmm1, xmm2
pxor xmm0, xmm1
movdqa xmm5, xmm1
movdqa xmm2, xmm0
psrlq xmm2, 0x10
movdqa xmm3, xmm0
psrlq xmm3, 0x20
movsd xmm3, xmm2
movdqa xmm2, xmm0
psllq xmm2, 0x30
psllq xmm0, 0x20
movsd xmm0, xmm2
orpd xmm0, xmm3
movapd xmm2, xmm0
movapd xmm1, xmm0
movapd xmmword [esp], xmm0
movdqa xmm4, xmmword [esp + 0x190]
paddq xmm2, xmm4
movdqa xmmword [esp + 0x20], xmm2
xorps xmm6, xmm2
movaps xmm2, xmm6
psrlq xmm2, 0x3f
movaps xmm3, xmm6
psrlq xmm3, 0x18
movsd xmm3, xmm2
movaps xmm2, xmm6
psllq xmm2, 0x28
paddq xmm6, xmm6
shufpd xmm6, xmm2, 2
orpd xmm6, xmm3
pshufd xmm2, xmm5, 0xff
movd eax, xmm2
pshufd xmm2, xmm5, 0xee
movdqa xmmword [esp + 0x2c0], xmm5
movd ebx, xmm2
add edi, dword [esp + 0x4c]
adc ecx, dword [esp + 0x1e0]
add ebx, dword [esp + 0x120]
adc eax, dword [esp + 0x134]
movd xmm2, eax
movd xmm3, ebx
punpcklqdq xmm2, xmm3
movaps xmm0, xmmword [esp + 0x340]
shufps xmm0, xmm2, 0x24
paddq xmm0, xmm6
movdqa xmmword [esp + 0x120], xmm0
movdqa xmm2, xmm0
pxor xmm2, xmm1
pshufd xmm3, xmm2, 0xff
movd esi, xmm3
pshufd xmm2, xmm2, 0xee
movd eax, xmm2
pshufd xmm2, xmm5, 0x55
movd edx, xmm2
movd xmm7, ecx
movd xmm2, edi
movdqa xmm5, xmm7
punpcklqdq xmm5, xmm2
movdqa xmm0, xmm4
shufps xmm0, xmm5, 0x2e
movss xmm2, dword [esp + 0x10]
movss xmm5, dword [esp + 0x1f0]
movlhps xmm5, xmm2
movaps xmm3, xmmword [esp + 0x2b0]
shufps xmm3, xmm5, 0x24
xorps xmm3, xmm0
movaps xmm0, xmm3
psrlq xmm0, 0x3f
paddq xmm3, xmm3
por xmm3, xmm0
movdqa xmm2, xmmword [esp + 0x230]
movdqa xmm0, xmm2
punpcklqdq xmm0, xmmword [esp + 0x90]
movdqa xmm4, xmmword [esp + 0x170]
punpckhqdq xmm4, xmm2
paddq xmm4, xmm0
movss xmm0, dword [esp + 0x200]
movaps xmm2, xmmword [esp + 0x150]
movlhps xmm2, xmm0
movaps xmm1, xmmword [esp + 0xd0]
shufps xmm1, xmm2, 0x81
paddq xmm4, xmm3
pshufd xmm0, xmm4, 0xb1
xorps xmm1, xmm0
movd xmm0, edi
punpcklqdq xmm7, xmm0
shufps xmm7, xmmword [esp + 0x110], 0x42
paddq xmm7, xmm1
pxor xmm3, xmm7
movdqa xmmword [esp + 0x90], xmm7
movdqa xmm0, xmm3
psrlq xmm0, 0x18
psllq xmm3, 0x28
por xmm3, xmm0
movaps xmm0, xmmword [esp + 0x50]
shufps xmm0, xmmword [esp + 0x80], 0x24
movaps xmmword [esp + 0x110], xmm0
paddq xmm4, xmm0
paddq xmm4, xmm3
pshufd xmm0, xmm4, 0x55
movd ecx, xmm0
mov edi, eax
shld edi, esi, 0x10
shld esi, eax, 0x10
pxor xmm1, xmm4
movdqa xmm0, xmm1
psrlq xmm0, 0x10
psllq xmm1, 0x30
por xmm1, xmm0
movdqa xmmword [esp + 0xd0], xmm1
movd xmm0, esi
movdqa xmmword [esp + 0x10], xmm0
movd xmm2, edi
movdqa xmmword [esp + 0x80], xmm2
punpckldq xmm0, xmm2
punpcklqdq xmm0, xmm1
pshufd xmm5, xmmword [esp + 0x20], 0xee
punpcklqdq xmm5, xmm7
paddq xmm5, xmm0
pshufd xmm0, xmm6, 0xee
punpcklqdq xmm0, xmm3
pxor xmm0, xmm5
movdqa xmm2, xmm0
psrlq xmm2, 0x3f
paddq xmm0, xmm0
por xmm0, xmm2
movd eax, xmm4
add eax, dword [esp + 0xe0]
adc ecx, dword [esp + 0x30]
movd xmm2, ecx
movd xmm7, eax
punpcklqdq xmm2, xmm7
movaps xmm1, xmmword [esp + 0x120]
movaps xmm7, xmm1
shufps xmm7, xmm2, 0x2e
movlhps xmm1, xmm0
paddq xmm1, xmm7
movdqa xmmword [esp + 0x120], xmm1
movdqa xmm7, xmm1
movdqa xmm1, xmmword [esp + 0xd0]
pxor xmm7, xmm1
paddq xmm1, xmmword [esp + 0x90]
pxor xmm3, xmm1
pshufd xmm2, xmm3, 0xee
movd ecx, xmm2
pshufd xmm2, xmm3, 0xff
movd eax, xmm2
mov esi, eax
shld esi, ecx, 1
shld ecx, eax, 1
movdqa xmm2, xmmword [esp + 0x2c0]
movd eax, xmm2
add eax, ecx
adc edx, esi
movd xmm2, edx
movd xmm3, eax
punpcklqdq xmm2, xmm3
shufps xmm4, xmm2, 0x2e
pshufd xmm3, xmm0, 0xee
paddq xmm3, xmmword [esp + 0x50]
shufpd xmm3, xmmword [esp + 0xf0], 2
paddq xmm3, xmm4
pshufd xmm4, xmm1, 0xee
punpcklqdq xmm4, xmmword [esp + 0x20]
movaps xmm1, xmmword [esp + 0x80]
unpcklpd xmm1, xmmword [esp + 0x10]
movaps xmm2, xmmword [esp]
shufps xmm2, xmm1, 0x81
pshufd xmm1, xmm3, 0xb1
xorps xmm2, xmm1
pshufd xmm7, xmm7, 0xb1
movdqa xmmword [esp + 0x30], xmm7
paddq xmm5, xmm2
paddq xmm4, xmm7
movdqa xmmword [esp + 0x10], xmm4
shufps xmm4, xmm5, 0x4e
xorps xmm4, xmm0
pshufd xmm0, xmm5, 0xee
movd edx, xmm0
pshufd xmm0, xmm5, 0xff
movd eax, xmm0
xor eax, esi
xor edx, ecx
movaps xmm0, xmm4
psrlq xmm0, 0x18
psllq xmm4, 0x28
mov ecx, edx
shld ecx, eax, 8
por xmm4, xmm0
shrd edx, eax, 0x18
mov dword [esp + 0x80], edx
movd xmm0, edx
movd xmm1, ecx
punpcklqdq xmm1, xmm0
movdqa xmm7, xmm4
shufps xmm7, xmm1, 0x2e
paddq xmm3, xmmword [esp + 0x390]
paddq xmm7, xmm3
movdqa xmm1, xmm2
pxor xmm1, xmm7
movdqa xmm0, xmm1
psrlq xmm0, 0x10
psllq xmm1, 0x30
por xmm1, xmm0
movdqa xmmword [esp], xmm1
movdqa xmm3, xmmword [esp + 0x10]
pxor xmm6, xmm3
movd edi, xmm6
pshufd xmm0, xmm6, 0x55
movd edx, xmm0
paddq xmm5, xmm1
movdqa xmmword [esp + 0x20], xmm5
mov eax, edx
shld eax, edi, 8
pshufd xmm0, xmm5, 0xee
movd dword [esp + 0xe0], xmm0
shld edi, edx, 8
pshufd xmm0, xmm5, 0xff
movd ebx, xmm0
movd xmm0, edi
movd xmm2, eax
punpckldq xmm2, xmm0
pshufd xmm0, xmm4, 0x4e
movdqa xmm1, xmmword [esp + 0x50]
punpckhqdq xmm1, xmm0
paddq xmm1, xmmword [esp + 0x120]
punpcklqdq xmm2, xmmword [esp + 0x250]
paddq xmm1, xmm2
movdqa xmm2, xmmword [esp + 0x30]
pxor xmm2, xmm1
movdqa xmm0, xmm2
psrlq xmm0, 0x10
psllq xmm2, 0x30
por xmm2, xmm0
movdqa xmmword [esp + 0x30], xmm2
paddq xmm3, xmm2
pshufd xmm0, xmm3, 0x55
movd esi, xmm0
movd edx, xmm3
movdqa xmm5, xmm3
xor edx, eax
xor esi, edi
mov eax, esi
shld eax, edx, 1
mov dword [esp + 0x120], eax
shrd esi, edx, 0x1f
movdqa xmm6, xmm3
shufpd xmm6, xmmword [esp + 0x20], 1
xorpd xmm6, xmm4
movapd xmm0, xmm6
psrlq xmm0, 0x3f
paddq xmm6, xmm6
por xmm6, xmm0
movd xmm0, esi
movd xmm2, eax
punpcklqdq xmm2, xmm0
movaps xmm3, xmmword [esp + 0x180]
shufps xmm3, xmm2, 0x24
paddq xmm3, xmm7
xor ebx, ecx
mov eax, dword [esp + 0xe0]
xor eax, dword [esp + 0x80]
mov edi, eax
shld edi, ebx, 1
shrd eax, ebx, 0x1f
mov dword [esp + 0xe0], eax
movd xmm2, eax
movd xmm0, edi
punpckldq xmm0, xmm2
punpcklqdq xmm0, xmmword [esp + 0x3b0]
paddq xmm0, xmm3
movaps xmm7, xmmword [esp + 0x30]
shufps xmm7, xmmword [esp], 0x1b
pshufd xmm2, xmm0, 0xb1
xorps xmm7, xmm2
paddq xmm5, xmm7
movdqa xmmword [esp + 0x10], xmm5
pshufd xmm2, xmm5, 0x55
movd ecx, xmm2
pshufd xmm2, xmm5, 0xee
movd ebx, xmm2
pshufd xmm2, xmm5, 0xff
movd edx, xmm2
movd eax, xmm5
xor eax, edi
xor ecx, dword [esp + 0xe0]
mov edi, ecx
shld edi, eax, 8
shrd ecx, eax, 0x18
movd xmm2, edi
movd xmm3, ecx
punpcklqdq xmm3, xmm2
xor edx, dword [esp + 0x120]
xor ebx, esi
mov eax, ebx
shld eax, edx, 8
movdqa xmm2, xmm3
shufps xmm2, xmmword [esp + 0xc0], 0xe2
paddq xmm2, xmm0
shrd ebx, edx, 0x18
movd xmm4, ebx
movd xmm0, eax
punpcklqdq xmm0, xmm4
movaps xmm5, xmmword [esp + 0x240]
shufps xmm5, xmm0, 0x2e
paddq xmm5, xmm2
pxor xmm7, xmm5
movdqa xmm2, xmm7
psrlq xmm2, 0x10
psllq xmm7, 0x30
por xmm7, xmm2
shufps xmm3, xmm0, 0x22
movdqa xmm0, xmmword [esp + 0x10]
paddq xmm0, xmm7
movdqa xmmword [esp + 0x10], xmm0
xorps xmm3, xmm0
movaps xmm0, xmm3
psrlq xmm0, 0x3f
paddq xmm3, xmm3
por xmm3, xmm0
pshufd xmm0, xmmword [esp + 0x30], 0x44
movdqa xmm2, xmmword [esp]
punpckhqdq xmm2, xmm0
paddq xmm1, xmmword [esp + 0x100]
paddq xmm1, xmm6
pshufd xmm0, xmm2, 0xb1
pshufd xmm2, xmm1, 0xb1
pxor xmm0, xmm2
movdqa xmm2, xmmword [esp + 0x20]
paddq xmm2, xmm0
pxor xmm6, xmm2
movdqa xmm4, xmm2
movdqa xmm2, xmm6
psrlq xmm2, 0x18
psllq xmm6, 0x28
por xmm6, xmm2
paddq xmm1, xmmword [esp + 0x3c0]
paddq xmm1, xmm6
pxor xmm0, xmm1
movdqa xmm2, xmm0
psrlq xmm2, 0x10
psllq xmm0, 0x30
por xmm0, xmm2
paddq xmm4, xmm0
movdqa xmmword [esp + 0x20], xmm4
pxor xmm6, xmm4
movdqa xmm2, xmm6
psrlq xmm2, 0x3f
paddq xmm6, xmm6
por xmm6, xmm2
pshufd xmm2, xmm1, 0x44
movdqa xmm4, xmmword [esp + 0x50]
punpckhqdq xmm4, xmm2
movdqa xmm2, xmm6
punpcklqdq xmm2, xmm5
shufps xmm5, xmmword [esp + 0x290], 0x2e
paddq xmm5, xmm4
punpckhqdq xmm1, xmm6
paddq xmm1, xmmword [esp + 0x330]
paddq xmm1, xmm2
movdqa xmm2, xmm1
paddq xmm5, xmm3
pxor xmm0, xmm5
pshufd xmm1, xmm0, 0xb1
movdqa xmmword [esp], xmm1
pxor xmm7, xmm2
pshufd xmm0, xmm7, 0x11
punpckhqdq xmm1, xmm0
paddq xmm1, xmmword [esp + 0x10]
movdqa xmmword [esp + 0x10], xmm1
paddq xmm2, xmmword [esp + 0x3d0]
pshufd xmm4, xmm7, 0xb1
movdqa xmm0, xmm4
movdqa xmm1, xmmword [esp + 0x20]
punpckhqdq xmm0, xmm1
punpcklqdq xmm1, xmmword [esp]
paddq xmm1, xmm0
movdqa xmmword [esp + 0x20], xmm1
pshufd xmm0, xmmword [esp + 0x10], 0x4e
movdqa xmm7, xmm1
punpckhqdq xmm7, xmm0
punpcklqdq xmm0, xmm1
pxor xmm0, xmm6
movdqa xmm6, xmm0
psrlq xmm6, 0x18
psllq xmm0, 0x28
por xmm0, xmm6
movdqa xmm1, xmm2
paddq xmm1, xmm0
pxor xmm4, xmm1
movdqa xmm6, xmm4
psrlq xmm6, 0x10
psllq xmm4, 0x30
por xmm4, xmm6
pxor xmm7, xmm3
movdqa xmm3, xmm7
psrlq xmm3, 0x18
psllq xmm7, 0x28
por xmm7, xmm3
movdqa xmm3, xmm7
shufps xmm3, xmmword [esp + 0x310], 0x24
paddq xmm3, xmm5
movdqa xmm2, xmm7
movlps xmm2, qword [esp + 0x50]
paddq xmm2, xmm3
movdqa xmmword [esp + 0x80], xmm2
movdqa xmm5, xmmword [esp]
pxor xmm5, xmm2
movdqa xmm3, xmm5
psrlq xmm3, 0x10
psllq xmm5, 0x30
por xmm5, xmm3
movdqa xmmword [esp], xmm5
pshufd xmm3, xmm4, 0x44
movdqa xmm6, xmm5
punpckhqdq xmm6, xmm3
paddq xmm6, xmmword [esp + 0x10]
movdqa xmm2, xmm4
shufps xmm2, xmm5, 0x4e
paddq xmm2, xmmword [esp + 0x20]
movdqa xmm5, xmm2
movdqa xmmword [esp + 0xe0], xmm2
pshufd xmm2, xmm6, 0x4e
movdqa xmm3, xmm5
punpckhqdq xmm3, xmm2
punpcklqdq xmm2, xmm5
pxor xmm2, xmm0
movdqa xmm0, xmm2
psrlq xmm0, 0x3f
paddq xmm2, xmm2
por xmm2, xmm0
pxor xmm3, xmm7
movdqa xmm0, xmm3
psrlq xmm0, 0x3f
paddq xmm3, xmm3
por xmm3, xmm0
movdqa xmm5, xmmword [esp + 0x80]
pshufd xmm0, xmm5, 0x55
movd eax, xmm0
pshufd xmm0, xmm3, 0xff
movd ecx, xmm0
pshufd xmm0, xmm3, 0xee
movd edx, xmm0
pshufd xmm7, xmm2, 0xee
paddq xmm7, xmm1
shufps xmm7, xmm1, 0xe4
movdqa xmm0, xmmword [esp + 0xb0]
punpcklqdq xmm0, xmm3
paddq xmm0, xmm7
movd esi, xmm5
add esi, dword [esp + 0x1d0]
adc eax, dword [esp + 0x13c]
add edx, esi
adc ecx, eax
movd xmm1, ecx
movd xmm7, edx
punpcklqdq xmm1, xmm7
movdqa xmm7, xmm0
paddq xmm7, xmmword [esp + 0xf0]
movdqa xmmword [esp + 0x20], xmm7
shufps xmm7, xmm1, 0x8b
pshufd xmm1, xmm4, 0xb1
pxor xmm1, xmm7
movdqa xmmword [esp + 0x10], xmm1
paddq xmm6, xmm1
movdqa xmmword [esp + 0x30], xmm6
pxor xmm3, xmm6
movdqa xmm1, xmm3
psrlq xmm1, 0x18
psllq xmm3, 0x28
por xmm3, xmm1
pshufd xmm1, xmm3, 0xff
movd esi, xmm1
pshufd xmm1, xmm3, 0xee
movd eax, xmm1
add eax, edx
adc esi, ecx
pshufd xmm1, xmmword [esp + 0x80], 0xee
paddq xmm1, xmm2
pshufd xmm4, xmm1, 0x55
movd edx, xmm4
add eax, dword [esp + 0x1d4]
adc esi, dword [esp + 0x140]
movd ecx, xmm1
add ecx, dword [esp + 0x144]
adc edx, dword [esp + 0x148]
movd xmm1, ecx
movd xmm4, edx
punpcklqdq xmm4, xmm1
shufps xmm4, xmm0, 0x18
pshufd xmm0, xmmword [esp], 0xb1
pxor xmm0, xmm4
movdqa xmmword [esp + 0x80], xmm0
movdqa xmm6, xmmword [esp + 0xe0]
paddq xmm6, xmm0
pxor xmm2, xmm6
movdqa xmm1, xmm2
psrlq xmm1, 0x18
psllq xmm2, 0x28
por xmm2, xmm1
movdqa xmm0, xmm2
punpckhqdq xmm0, xmmword [esp + 0x100]
paddq xmm0, xmmword [esp + 0x20]
movd xmm5, esi
movdqa xmmword [esp + 0x20], xmm5
movd xmm4, eax
punpcklqdq xmm5, xmm4
movdqa xmmword [esp], xmm5
pshufd xmm4, xmm2, 0x55
movd esi, xmm4
add ecx, dword [esp + 0x138]
mov edi, dword [esp + 0x260]
adc edi, edx
movd edx, xmm1
add edx, ecx
adc esi, edi
movd xmm4, edx
movd xmm1, esi
movdqa xmm7, xmm1
punpcklqdq xmm7, xmm4
movdqa xmm5, xmmword [esp + 0x100]
punpcklqdq xmm5, xmm3
paddq xmm5, xmm0
shufps xmm7, xmm0, 0x42
xorps xmm7, xmmword [esp + 0x80]
movaps xmm0, xmm7
psrlq xmm0, 0x10
psllq xmm7, 0x30
por xmm7, xmm0
paddq xmm6, xmm7
movdqa xmmword [esp + 0xe0], xmm6
pxor xmm2, xmm6
movdqa xmm0, xmm2
psrlq xmm0, 0x3f
paddq xmm2, xmm2
por xmm2, xmm0
movdqa xmm0, xmm2
paddq xmm0, xmmword [esp + 0xf0]
movsd xmm0, xmm2
paddq xmm0, xmm5
shufps xmm5, xmmword [esp], 0x2e
xorps xmm5, xmmword [esp + 0x10]
movaps xmm4, xmm5
psrlq xmm4, 0x10
psllq xmm5, 0x30
por xmm5, xmm4
movdqa xmm4, xmmword [esp + 0x30]
paddq xmm4, xmm5
movdqa xmmword [esp + 0x30], xmm4
pxor xmm3, xmm4
movdqa xmm4, xmm3
psrlq xmm4, 0x3f
paddq xmm3, xmm3
por xmm3, xmm4
movd xmm4, edx
punpcklqdq xmm1, xmm4
movaps xmm4, xmmword [esp + 0xb0]
shufps xmm4, xmm1, 0x24
movd xmm1, eax
movdqa xmm6, xmmword [esp + 0x20]
punpcklqdq xmm6, xmm1
shufps xmm6, xmmword [esp + 0x100], 0xe2
paddq xmm6, xmm4
movdqa xmmword [esp + 0x20], xmm6
movdqa xmm4, xmmword [esp + 0xe0]
pshufd xmm1, xmm4, 0xee
movdqa xmm6, xmmword [esp + 0x30]
punpcklqdq xmm1, xmm6
movdqa xmmword [esp + 0x10], xmm1
pshufd xmm1, xmm6, 0xee
punpcklqdq xmm1, xmm4
movdqa xmm6, xmmword [esp + 0x160]
paddq xmm6, xmm0
pxor xmm0, xmm5
pshufd xmm4, xmm0, 0xb1
paddq xmm1, xmm4
pxor xmm2, xmm1
movdqa xmm0, xmm2
psrlq xmm0, 0x18
psllq xmm2, 0x28
por xmm2, xmm0
movdqa xmm0, xmm6
paddq xmm0, xmm2
movdqa xmmword [esp + 0x160], xmm0
pxor xmm4, xmm0
movdqa xmm0, xmm4
psrlq xmm0, 0x10
psllq xmm4, 0x30
por xmm4, xmm0
movdqa xmm6, xmmword [esp + 0x20]
paddq xmm6, xmm3
pxor xmm7, xmm6
pshufd xmm5, xmm7, 0xb1
movdqa xmm0, xmmword [esp + 0x10]
paddq xmm0, xmm5
pxor xmm3, xmm0
movdqa xmm7, xmm0
movdqa xmm0, xmm3
psrlq xmm0, 0x18
psllq xmm3, 0x28
por xmm3, xmm0
paddq xmm6, xmmword [esp + 0x270]
paddq xmm6, xmm3
movdqa xmmword [esp + 0x20], xmm6
pxor xmm5, xmm6
movdqa xmm0, xmm5
psrlq xmm0, 0x10
psllq xmm5, 0x30
por xmm5, xmm0
movdqa xmm6, xmm1
paddq xmm6, xmm4
movdqa xmmword [esp], xmm6
paddq xmm7, xmm5
movdqa xmm1, xmm7
shufps xmm6, xmm3, 0x4e
pshufd xmm7, xmm3, 0xee
punpcklqdq xmm7, xmm2
movdqa xmm0, xmm2
movdqa xmm3, xmm1
movdqa xmmword [esp + 0x10], xmm1
shufps xmm0, xmm1, 0x4e
xorps xmm0, xmm6
movaps xmm2, xmm0
psrlq xmm2, 0x3f
paddq xmm0, xmm0
por xmm0, xmm2
pshufd xmm2, xmmword [esp], 0x44
punpckhqdq xmm3, xmm2
pxor xmm7, xmm3
movdqa xmm2, xmm7
psrlq xmm2, 0x3f
paddq xmm7, xmm7
por xmm7, xmm2
movdqa xmm2, xmm0
shufps xmm2, xmmword [esp + 0x290], 0x24
paddq xmm2, xmmword [esp + 0x160]
movaps xmm6, xmmword [esp + 0x420]
unpcklpd xmm6, xmmword [esp + 0x3e0]
shufps xmm6, xmm0, 0xe2
paddq xmm6, xmm2
pshufd xmm1, xmm4, 0x4e
movdqa xmm2, xmm5
punpckhqdq xmm2, xmm1
pshufd xmm2, xmm2, 0xb1
pshufd xmm3, xmm6, 0xb1
pxor xmm2, xmm3
movdqa xmm3, xmmword [esp + 0x10]
paddq xmm3, xmm2
movdqa xmmword [esp + 0x10], xmm3
pxor xmm0, xmm3
movdqa xmm3, xmm0
psrlq xmm3, 0x18
psllq xmm0, 0x28
por xmm0, xmm3
movdqa xmm3, xmmword [esp + 0x230]
punpcklqdq xmm3, xmmword [esp + 0x50]
paddq xmm3, xmm6
paddq xmm3, xmm0
pxor xmm2, xmm3
pshufd xmm6, xmm2, 0x55
movd edx, xmm6
pshufd xmm6, xmm2, 0xee
movd esi, xmm6
movd ecx, xmm2
pshufd xmm2, xmm2, 0xff
movd eax, xmm2
movdqa xmm6, xmmword [esp + 0x20]
paddq xmm6, xmmword [esp + 0x3f0]
punpcklqdq xmm1, xmm5
paddq xmm6, xmm7
pshufd xmm2, xmm1, 0xb1
pshufd xmm1, xmm6, 0xb1
pxor xmm2, xmm1
movdqa xmm4, xmmword [esp]
paddq xmm4, xmm2
pxor xmm7, xmm4
movdqa xmm1, xmm7
psrlq xmm1, 0x18
psllq xmm7, 0x28
por xmm7, xmm1
movaps xmm5, xmmword [esp + 0x2d0]
unpcklpd xmm5, xmmword [esp + 0x400]
movaps xmmword [esp + 0x2d0], xmm5
mov edi, ecx
shld edi, edx, 0x10
mov dword [esp + 0x90], edi
shufps xmm5, xmmword [esp + 0x50], 0xe2
paddq xmm5, xmm6
shld edx, ecx, 0x10
mov dword [esp + 0x160], edx
paddq xmm5, xmm7
movdqa xmmword [esp + 0x20], xmm5
pxor xmm2, xmm5
movdqa xmm1, xmm2
psrlq xmm1, 0x10
psllq xmm2, 0x30
por xmm2, xmm1
movd xmm1, edx
movd xmm6, edi
punpcklqdq xmm6, xmm1
pshufd xmm5, xmm4, 0x4e
shufps xmm4, xmm6, 0x2e
movdqa xmm6, xmm2
movaps xmm1, xmmword [esp + 0x10]
shufps xmm6, xmm1, 0x4e
paddq xmm6, xmm4
movdqa xmmword [esp + 0x260], xmm6
movdqa xmm4, xmm7
shufps xmm4, xmm0, 0x4e
pxor xmm4, xmm6
movdqa xmm6, xmm4
psrlq xmm6, 0x3f
paddq xmm4, xmm4
por xmm4, xmm6
movaps xmm6, xmmword [esp + 0x450]
unpcklpd xmm6, xmmword [esp + 0x410]
shufps xmm6, xmm4, 0xe2
paddq xmm6, xmm3
mov ecx, eax
shld ecx, esi, 0x10
mov dword [esp + 0x80], ecx
movapd xmm3, xmmword [esp + 0x240]
movsd xmm3, xmm4
paddq xmm3, xmm6
movdqa xmmword [esp], xmm3
shld esi, eax, 0x10
mov dword [esp + 0x120], esi
movd xmm3, ecx
movd xmm6, esi
punpcklqdq xmm6, xmm3
unpckhpd xmm1, xmm5
shufps xmm6, xmm2, 0x42
paddq xmm1, xmm6
movdqa xmm3, xmm1
pshufd xmm1, xmm7, 0x44
punpckhqdq xmm0, xmm1
movdqa xmm5, xmmword [esp + 0x20]
paddq xmm5, xmmword [esp + 0x430]
pshufd xmm6, xmm2, 0xb1
pxor xmm0, xmm3
movdqa xmm1, xmm0
psrlq xmm1, 0x3f
paddq xmm0, xmm0
por xmm1, xmm0
paddq xmm5, xmm1
movdqa xmmword [esp + 0x20], xmm5
movdqa xmm7, xmmword [esp]
pshufd xmm2, xmm7, 0xee
punpcklqdq xmm2, xmm5
pshufd xmm2, xmm2, 0xb1
pxor xmm6, xmm2
movdqa xmmword [esp + 0x30], xmm6
movdqa xmm2, xmm6
movdqa xmm6, xmmword [esp + 0x260]
paddq xmm2, xmm6
movdqa xmmword [esp + 0xe0], xmm2
pshufd xmm2, xmm2, 0xee
pxor xmm2, xmm1
movd edi, xmm2
pshufd xmm2, xmm2, 0x55
movd ecx, xmm2
pshufd xmm2, xmm5, 0xff
movd ebx, xmm2
pshufd xmm2, xmm5, 0xee
movd esi, xmm2
pshufd xmm2, xmm3, 0x55
movd eax, xmm2
mov edx, ecx
shld edx, edi, 8
mov dword [esp + 0xd0], edx
mov edx, edi
pshufd xmm1, xmm1, 0xee
movd edi, xmm1
shld edx, ecx, 8
mov dword [esp + 0x270], edx
pshufd xmm0, xmm0, 0xff
movd edx, xmm0
xor esi, dword [esp + 0x160]
mov ecx, ebx
xor ecx, dword [esp + 0x90]
movd ebx, xmm3
add ebx, ecx
mov dword [esp + 0x10], ebx
adc eax, esi
mov dword [esp + 0x160], eax
pshufd xmm0, xmm7, 0x55
movd eax, xmm0
xor eax, dword [esp + 0x120]
movd ebx, xmm7
movdqa xmm2, xmm7
xor ebx, dword [esp + 0x80]
movd xmm1, ebx
movd xmm0, eax
punpckldq xmm0, xmm1
pshufd xmm5, xmm3, 0xee
punpcklqdq xmm5, xmm6
movd xmm3, esi
movd xmm1, ecx
punpckldq xmm1, xmm3
punpcklqdq xmm1, xmm0
punpcklqdq xmm0, xmmword [esp + 0x30]
paddq xmm5, xmm0
pxor xmm4, xmm5
movdqa xmm0, xmm4
psrlq xmm0, 0x18
psllq xmm4, 0x28
por xmm4, xmm0
paddq xmm2, xmmword [esp + 0x440]
movd xmm6, dword [esp + 0x270]
movd xmm3, dword [esp + 0xd0]
movdqa xmmword [esp + 0x80], xmm3
punpckldq xmm3, xmm6
punpcklqdq xmm3, xmmword [esp + 0x180]
xor edi, dword [esp + 0x10]
xor edx, dword [esp + 0x160]
mov eax, edi
shld eax, edx, 8
mov dword [esp + 0x180], eax
shld edx, edi, 8
movd xmm0, edx
movd xmm7, eax
punpcklqdq xmm7, xmm0
movaps xmm0, xmmword [esp + 0x210]
shufps xmm0, xmm7, 0x24
paddq xmm0, xmmword [esp + 0x20]
paddq xmm0, xmm3
paddq xmm2, xmm4
movdqa xmmword [esp], xmm2
movdqa xmm3, xmm2
shufps xmm3, xmm0, 0x4e
movdqa xmmword [esp + 0x210], xmm0
xorps xmm3, xmmword [esp + 0x30]
punpcklqdq xmm6, xmmword [esp + 0x80]
pshufd xmm2, xmm2, 0x44
punpckhqdq xmm0, xmm2
pxor xmm0, xmm1
movaps xmm2, xmmword [esp + 0xe0]
movhlps xmm2, xmm5
movdqa xmm7, xmm0
psrlq xmm7, 0x10
psllq xmm0, 0x30
por xmm0, xmm7
pshufd xmm1, xmm0, 0xee
paddq xmm1, xmm5
movdqa xmmword [esp + 0x30], xmm1
pxor xmm1, xmm4
shufps xmm4, xmm6, 0x2e
movd eax, xmm1
pshufd xmm1, xmm1, 0x55
movd ecx, xmm1
movaps xmm1, xmm3
psrlq xmm1, 0x10
psllq xmm3, 0x30
por xmm3, xmm1
movaps xmm5, xmm2
paddq xmm5, xmm3
xorps xmm4, xmm5
movaps xmm1, xmm4
psrlq xmm1, 0x3f
paddq xmm4, xmm4
por xmm4, xmm1
pshufd xmm1, xmm0, 0x55
movd edi, xmm1
movd esi, xmm7
mov ebx, ecx
shld ebx, eax, 1
shld eax, ecx, 1
movdqa xmm6, xmmword [esp]
paddq xmm6, xmmword [esp + 0x460]
add esi, dword [esp + 0x10]
adc edi, dword [esp + 0x160]
movd xmm2, edi
mov ecx, edi
movd xmm1, esi
mov edi, esi
punpcklqdq xmm2, xmm1
movaps xmm1, xmmword [esp + 0x30]
movlhps xmm1, xmm5
movaps xmmword [esp + 0x30], xmm1
movaps xmm1, xmm5
shufps xmm1, xmm2, 0x2e
movdqa xmm5, xmm6
paddq xmm5, xmm4
pxor xmm0, xmm5
pshufd xmm2, xmm0, 0xb1
paddq xmm1, xmm2
movdqa xmmword [esp + 0x20], xmm1
pxor xmm4, xmm1
movdqa xmm0, xmm4
psrlq xmm0, 0x18
psllq xmm4, 0x28
por xmm4, xmm0
mov esi, dword [esp + 0x180]
xor esi, ecx
xor edx, edi
mov ecx, edx
shld ecx, esi, 1
movdqa xmm0, xmm5
paddq xmm0, xmmword [esp + 0x470]
shrd edx, esi, 0x1f
paddq xmm0, xmm4
movdqa xmmword [esp], xmm0
pxor xmm2, xmm0
movdqa xmm0, xmm2
psrlq xmm0, 0x10
psllq xmm2, 0x30
por xmm2, xmm0
movd xmm0, ecx
movd xmm1, edx
punpcklqdq xmm1, xmm0
shufps xmm1, xmmword [esp + 0xc0], 0xe2
paddq xmm1, xmmword [esp + 0x210]
mov edi, eax
movd xmm0, eax
mov eax, ebx
movd xmm6, ebx
punpcklqdq xmm6, xmm0
movaps xmm7, xmmword [esp + 0x340]
shufps xmm7, xmm6, 0x24
paddq xmm7, xmm1
pxor xmm3, xmm7
pshufd xmm6, xmm3, 0xb1
movdqa xmm1, xmmword [esp + 0x30]
paddq xmm1, xmm6
pshufd xmm0, xmm1, 0xff
movd esi, xmm0
pshufd xmm0, xmm1, 0xee
movd ebx, xmm0
xor ebx, edi
xor esi, eax
mov eax, esi
shld eax, ebx, 8
pshufd xmm0, xmm1, 0x55
movdqa xmm5, xmm1
movdqa xmmword [esp + 0x30], xmm1
movd edi, xmm0
shrd esi, ebx, 0x18
movd xmm0, eax
movd xmm1, esi
movdqa xmm3, xmm1
punpcklqdq xmm3, xmm0
movaps xmm0, xmmword [esp + 0x480]
shufps xmm0, xmm3, 0x24
movd esi, xmm5
xor esi, ecx
xor edi, edx
mov ecx, esi
shld ecx, edi, 8
shld edi, esi, 8
paddq xmm0, xmm7
movdqa xmm3, xmm0
movd xmm5, edi
movdqa xmmword [esp + 0x210], xmm5
movd xmm0, ecx
movdqa xmmword [esp + 0x160], xmm0
punpckldq xmm5, xmm0
punpcklqdq xmm5, xmmword [esp + 0x100]
paddq xmm5, xmm3
pxor xmm6, xmm5
movdqa xmm3, xmm6
psrlq xmm3, 0x10
psllq xmm6, 0x30
por xmm6, xmm3
movdqa xmm0, xmmword [esp + 0x20]
paddq xmm0, xmm2
movdqa xmmword [esp + 0x20], xmm0
movdqa xmm7, xmmword [esp + 0x30]
paddq xmm7, xmm6
movdqa xmmword [esp + 0x30], xmm7
pshufd xmm3, xmm0, 0x44
punpckhqdq xmm7, xmm3
movd xmm3, eax
punpcklqdq xmm1, xmm3
shufps xmm1, xmm4, 0x42
xorps xmm1, xmm7
movaps xmm3, xmm1
psrlq xmm3, 0x3f
paddq xmm1, xmm1
por xmm1, xmm3
movapd xmm3, xmmword [esp + 0xc0]
movapd xmm0, xmmword [esp]
movsd xmm3, xmm0
movdqa xmm7, xmm1
movlps xmm7, qword [esp + 0x50]
paddq xmm7, xmm3
movsd xmm0, xmm1
paddq xmm0, xmm7
movdqa xmm7, xmm0
pshufd xmm3, xmm2, 0xee
punpcklqdq xmm3, xmm6
pshufd xmm0, xmm3, 0xb1
pshufd xmm3, xmm7, 0xb1
pxor xmm0, xmm3
movdqa xmm3, xmm0
paddq xmm3, xmmword [esp + 0x30]
movdqa xmmword [esp + 0x10], xmm3
pxor xmm1, xmm3
movdqa xmm3, xmm1
psrlq xmm3, 0x18
psllq xmm1, 0x28
por xmm1, xmm3
movdqa xmm3, xmm7
paddq xmm3, xmmword [esp + 0x350]
paddq xmm3, xmm1
movdqa xmmword [esp], xmm3
pxor xmm0, xmm3
movdqa xmm7, xmm0
movdqa xmm3, xmm0
psrlq xmm3, 0x10
psllq xmm7, 0x30
por xmm7, xmm3
movdqa xmmword [esp + 0x180], xmm7
movdqa xmm0, xmmword [esp + 0x10]
paddq xmm0, xmm7
movdqa xmmword [esp + 0x10], xmm0
movdqa xmm3, xmm1
pxor xmm3, xmm0
movd eax, xmm3
pshufd xmm3, xmm3, 0x55
movd ecx, xmm3
movapd xmm0, xmmword [esp + 0x20]
movapd xmm3, xmm0
shufpd xmm3, xmmword [esp + 0x30], 1
movaps xmm7, xmmword [esp + 0x160]
unpcklpd xmm7, xmmword [esp + 0x210]
shufps xmm4, xmm7, 0x2e
xorps xmm4, xmm3
movaps xmm3, xmm4
psrlq xmm3, 0x3f
paddq xmm4, xmm4
por xmm4, xmm3
paddq xmm5, xmmword [esp + 0x490]
lea ebx, [esp + 0x578]
movq qword [ebx + 0x78], xmm2
shufps xmm6, xmm2, 0x1b
paddq xmm5, xmm4
pshufd xmm2, xmm5, 0xb1
xorps xmm6, xmm2
movapd xmm3, xmm0
movupd xmmword [ebx + 0x50], xmm0
paddq xmm3, xmm6
pshufd xmm2, xmm4, 0xee
pxor xmm4, xmm3
movdqa xmm7, xmm3
movdqa xmm3, xmm4
psrlq xmm3, 0x18
psllq xmm4, 0x28
por xmm4, xmm3
movapd xmm0, xmmword [esp + 0x70]
shufpd xmm0, xmmword [esp + 0x100], 2
paddq xmm0, xmm5
paddq xmm0, xmm4
movdqa xmmword [esp + 0x70], xmm0
pxor xmm6, xmm0
movdqa xmm0, xmm6
psrlq xmm0, 0x10
psllq xmm6, 0x30
por xmm6, xmm0
mov edx, ecx
shld edx, eax, 1
movdqa xmm5, xmm7
paddq xmm5, xmm6
shufps xmm1, xmm4, 0x4e
pxor xmm4, xmm5
pshufd xmm0, xmm4, 0xff
movd esi, xmm0
shld eax, ecx, 1
pshufd xmm0, xmm4, 0xee
movd ecx, xmm0
movaps xmm4, xmmword [esp + 0x180]
movlps qword [ebx + 0x60], xmm4
mov dword [ebx + 0x20], eax
mov dword [ebx + 0x24], edx
movaps xmm7, xmmword [esp + 0x10]
movups xmmword [ebx + 0x40], xmm7
mov edi, ecx
shld edi, esi, 1
movq qword [ebx + 0x38], xmm2
shld esi, ecx, 1
movd xmm0, esi
movd xmm2, edi
punpckldq xmm2, xmm0
movd xmm0, edx
movd xmm3, eax
punpckldq xmm3, xmm0
punpcklqdq xmm2, xmm3
movaps xmm0, xmm7
shufps xmm0, xmm5, 0x4e
xorps xmm0, xmm1
movaps xmm1, xmm0
psrlq xmm1, 0x3f
paddq xmm0, xmm0
por xmm0, xmm1
movdqa xmm3, xmmword [esp]
paddq xmm3, xmmword [esp + 0x4a0]
movaps xmm1, xmm4
movaps xmm7, xmm4
shufps xmm7, xmm6, 0x4e
shufps xmm6, xmm4, 0x1b
paddq xmm3, xmm0
movdqa xmmword [esp], xmm3
pshufd xmm1, xmm3, 0xb1
xorps xmm6, xmm1
paddq xmm5, xmm6
pxor xmm0, xmm5
movdqa xmm4, xmm5
movdqa xmm1, xmm0
psrlq xmm1, 0x18
psllq xmm0, 0x28
por xmm0, xmm1
movdqa xmm3, xmmword [esp + 0x70]
paddq xmm3, xmmword [esp + 0x4b0]
movups xmmword [ebx + 0x68], xmm7
paddq xmm3, xmm2
shufps xmm7, xmm7, 0xb1
pshufd xmm1, xmm3, 0xb1
xorps xmm7, xmm1
movdqa xmm5, xmmword [esp + 0x10]
paddq xmm5, xmm7
pxor xmm2, xmm5
movdqa xmm1, xmm2
psrlq xmm1, 0x18
psllq xmm2, 0x28
por xmm2, xmm1
paddq xmm3, xmmword [esp + 0x4c0]
paddq xmm3, xmm2
movdqa xmmword [esp + 0x70], xmm3
pxor xmm7, xmm3
movdqa xmm1, xmm7
psrlq xmm1, 0x10
psllq xmm7, 0x30
por xmm7, xmm1
movdqa xmm1, xmmword [esp]
paddq xmm1, xmmword [esp + 0x330]
paddq xmm1, xmm0
movdqa xmmword [esp], xmm1
pxor xmm6, xmm1
movdqa xmm1, xmm6
psrlq xmm1, 0x10
movdqa xmmword [esp + 0x10], xmm1
psllq xmm6, 0x30
por xmm6, xmm1
movdqa xmm1, xmm4
paddq xmm1, xmm6
movdqa xmmword [esp + 0x20], xmm1
paddq xmm5, xmm7
pshufd xmm3, xmm1, 0x4e
movdqa xmm4, xmm2
punpckhqdq xmm4, xmm3
movdqa xmm1, xmm5
shufps xmm1, xmm0, 0x4e
pxor xmm1, xmm4
movdqa xmm4, xmm1
psrlq xmm4, 0x3f
paddq xmm1, xmm1
por xmm1, xmm4
punpcklqdq xmm3, xmm2
shufps xmm0, xmm5, 0x4e
pxor xmm0, xmm3
movdqa xmm2, xmm0
psrlq xmm2, 0x3f
paddq xmm0, xmm0
por xmm0, xmm2
movq qword [ebx + 0x78], xmm6
movaps xmm2, xmmword [esp + 0x20]
movups xmmword [ebx + 0x50], xmm2
movdqa xmm2, xmm1
shufps xmm2, xmm0, 0x4e
movups xmmword [ebx + 0x28], xmm2
pshufd xmm2, xmm0, 0xee
movq qword [ebx + 0x38], xmm2
movaps xmm4, xmmword [esp + 0x50]
shufps xmm4, xmmword [esp + 0x2f0], 0x2e
paddq xmm4, xmmword [esp]
pshufd xmm2, xmm7, 0x4e
movdqa xmm3, xmm6
punpckhqdq xmm3, xmm2
paddq xmm4, xmm1
movdqa xmmword [esp], xmm4
pshufd xmm3, xmm3, 0xb1
pshufd xmm2, xmm4, 0xb1
pxor xmm3, xmm2
movss xmm2, dword [ebx + 0x28]
movss xmm4, dword [ebx + 0x2c]
movlhps xmm4, xmm2
shufps xmm1, xmm4, 0x24
paddq xmm5, xmm3
xorps xmm1, xmm5
movaps xmm2, xmm1
psrlq xmm2, 0x18
psllq xmm1, 0x28
por xmm1, xmm2
movdqa xmm2, xmmword [esp]
paddq xmm2, xmmword [esp + 0x380]
paddq xmm2, xmm1
movdqa xmmword [esp], xmm2
pxor xmm3, xmm2
movdqa xmm2, xmm3
psrlq xmm2, 0x10
psllq xmm3, 0x30
por xmm3, xmm2
paddq xmm5, xmm3
movdqa xmm2, xmm1
pxor xmm2, xmm5
movd eax, xmm2
pshufd xmm2, xmm2, 0x55
movd edx, xmm2
mov ecx, edx
shld ecx, eax, 1
shld eax, edx, 1
movq qword [ebx + 0x60], xmm3
mov dword [ebx + 0x20], eax
mov dword [ebx + 0x24], ecx
pshufd xmm2, xmm3, 0xee
movq qword [ebx + 0x68], xmm2
movaps xmm4, xmmword [esp + 0x50]
shufps xmm4, xmmword [esp + 0x2e0], 0x24
paddq xmm4, xmmword [esp + 0x70]
paddq xmm4, xmm0
shufps xmm6, xmmword [esp + 0x10], 0xc5
shufps xmm7, xmm6, 0x8b
pshufd xmm0, xmm4, 0xb1
xorps xmm7, xmm0
movdqu xmmword [ebx + 0x40], xmm5
movdqa xmm6, xmm5
movdqa xmm5, xmmword [esp + 0x20]
paddq xmm5, xmm7
movdqu xmm0, xmmword [ebx + 0x30]
pxor xmm0, xmm5
movdqa xmm2, xmm0
psrlq xmm2, 0x18
psllq xmm0, 0x28
por xmm0, xmm2
paddq xmm4, xmmword [esp + 0x4d0]
paddq xmm4, xmm0
movdqa xmmword [esp + 0x30], xmm4
pxor xmm7, xmm4
movdqa xmm2, xmm7
psrlq xmm2, 0x10
psllq xmm7, 0x30
por xmm7, xmm2
paddq xmm5, xmm7
pshufd xmm4, xmm5, 0x44
movdqa xmm2, xmm6
punpckhqdq xmm2, xmm4
shufps xmm1, xmm0, 0x4e
pxor xmm2, xmm1
movdqa xmm1, xmm2
psrlq xmm1, 0x3f
paddq xmm2, xmm2
por xmm2, xmm1
pxor xmm0, xmm5
pshufd xmm1, xmm0, 0xff
movd edx, xmm1
pshufd xmm0, xmm0, 0xee
movd esi, xmm0
movdqa xmm1, xmmword [esp]
paddq xmm1, xmmword [esp + 0x350]
movq qword [ebx + 0x70], xmm7
shufps xmm7, xmm3, 0x1b
paddq xmm1, xmm2
pshufd xmm0, xmm1, 0xb1
xorps xmm7, xmm0
paddq xmm5, xmm7
movdqa xmmword [esp + 0x20], xmm5
pxor xmm2, xmm5
movdqa xmm0, xmm2
psrlq xmm0, 0x18
psllq xmm2, 0x28
por xmm2, xmm0
paddq xmm1, xmmword [esp + 0x4e0]
movdqa xmmword [esp], xmm1
mov edi, esi
shld edi, edx, 1
shld edx, esi, 1
movd xmm0, ecx
movd xmm3, eax
punpckldq xmm3, xmm0
movd xmm0, edx
movd xmm1, edi
punpckldq xmm1, xmm0
punpcklqdq xmm1, xmm3
movdqa xmm3, xmmword [esp + 0x30]
paddq xmm3, xmmword [esp + 0x4f0]
paddq xmm3, xmm1
movdqu xmm0, xmmword [ebx + 0x68]
pxor xmm0, xmm3
pshufd xmm4, xmm0, 0xb1
paddq xmm6, xmm4
pxor xmm1, xmm6
movdqa xmm5, xmm6
movdqa xmm0, xmm1
psrlq xmm0, 0x18
psllq xmm1, 0x28
por xmm1, xmm0
paddq xmm3, xmmword [esp + 0x500]
paddq xmm3, xmm1
movdqa xmmword [esp + 0x30], xmm3
pxor xmm4, xmm3
movdqa xmm0, xmm4
psrlq xmm0, 0x10
psllq xmm4, 0x30
por xmm4, xmm0
movdqa xmmword [esp + 0x70], xmm4
movdqa xmm6, xmmword [esp]
paddq xmm6, xmm2
paddq xmm5, xmm4
movdqa xmm3, xmm5
movdqa xmmword [esp + 0x10], xmm5
movdqa xmm4, xmm1
shufps xmm4, xmm2, 0x4e
pxor xmm7, xmm6
movdqa xmm0, xmm7
psrlq xmm0, 0x10
movdqa xmmword [esp + 0x180], xmm0
psllq xmm7, 0x30
por xmm7, xmm0
movdqa xmm5, xmmword [esp + 0x20]
paddq xmm5, xmm7
movdqa xmmword [esp + 0x20], xmm5
pshufd xmm3, xmm3, 0x4e
movdqa xmm0, xmm5
punpckhqdq xmm0, xmm3
punpcklqdq xmm3, xmm5
pxor xmm3, xmm4
movdqa xmm4, xmm3
psrlq xmm4, 0x3f
paddq xmm3, xmm3
por xmm3, xmm4
paddq xmm6, xmmword [esp + 0x360]
pshufd xmm4, xmmword [esp + 0x70], 0x4e
movdqa xmm5, xmm7
punpckhqdq xmm5, xmm4
paddq xmm6, xmm3
pshufd xmm4, xmm5, 0xb1
pshufd xmm5, xmm6, 0xb1
pxor xmm4, xmm5
shufps xmm2, xmm1, 0x4e
pxor xmm0, xmm2
movdqa xmm1, xmm0
psrlq xmm1, 0x3f
paddq xmm0, xmm0
por xmm0, xmm1
movq qword [ebx + 0x78], xmm7
movaps xmm1, xmmword [esp + 0x20]
movups xmmword [ebx + 0x50], xmm1
movdqa xmm1, xmm3
shufps xmm1, xmm0, 0x4e
movups xmmword [ebx + 0x28], xmm1
movss xmm1, dword [ebx + 0x28]
movss xmm2, dword [ebx + 0x2c]
movlhps xmm2, xmm1
shufps xmm3, xmm2, 0x24
movdqa xmm2, xmmword [esp + 0x10]
paddq xmm2, xmm4
xorps xmm3, xmm2
movaps xmm1, xmm3
psrlq xmm1, 0x18
psllq xmm3, 0x28
por xmm3, xmm1
paddq xmm6, xmmword [esp + 0x370]
paddq xmm6, xmm3
movdqa xmmword [esp], xmm6
pxor xmm4, xmm6
movdqa xmm1, xmm4
psrlq xmm1, 0x10
psllq xmm4, 0x30
por xmm4, xmm1
paddq xmm2, xmm4
movdqa xmm1, xmm3
pxor xmm1, xmm2
movd edx, xmm1
pshufd xmm1, xmm1, 0x55
movd ecx, xmm1
mov eax, edx
shld eax, ecx, 1
shld ecx, edx, 1
movq qword [ebx + 0x60], xmm4
mov dword [ebx + 0x24], ecx
mov dword [ebx + 0x20], eax
movdqu xmmword [ebx + 0x40], xmm2
movdqa xmmword [esp + 0x10], xmm2
pshufd xmm1, xmm0, 0xee
movq qword [ebx + 0x38], xmm1
movdqa xmm1, xmmword [esp + 0x30]
paddq xmm1, xmmword [esp + 0x510]
paddq xmm1, xmm0
shufps xmm7, xmmword [esp + 0x180], 0xc5
movaps xmm6, xmmword [esp + 0x70]
shufps xmm6, xmm7, 0x8b
pshufd xmm0, xmm1, 0xb1
movdqa xmm7, xmm1
xorps xmm6, xmm0
movdqa xmm5, xmmword [esp + 0x20]
paddq xmm5, xmm6
movdqu xmm0, xmmword [ebx + 0x30]
pxor xmm0, xmm5
movdqa xmm1, xmm0
psrlq xmm1, 0x18
psllq xmm0, 0x28
por xmm0, xmm1
movdqa xmm1, xmm7
paddq xmm1, xmmword [esp + 0x520]
paddq xmm1, xmm0
movdqa xmmword [esp + 0x30], xmm1
pxor xmm6, xmm1
movdqa xmm1, xmm6
psrlq xmm1, 0x10
psllq xmm6, 0x30
por xmm6, xmm1
paddq xmm5, xmm6
movdqa xmm7, xmm6
shufps xmm3, xmm0, 0x4e
pxor xmm0, xmm5
pshufd xmm1, xmm0, 0xff
movd edx, xmm1
pshufd xmm0, xmm0, 0xee
movd esi, xmm0
movdqa xmm6, xmm2
shufps xmm6, xmm5, 0x4e
xorps xmm6, xmm3
movaps xmm0, xmm6
psrlq xmm0, 0x3f
paddq xmm6, xmm6
por xmm6, xmm0
movdqa xmm1, xmm4
shufps xmm1, xmm7, 0x4e
shufps xmm7, xmm4, 0x1b
movdqa xmm2, xmmword [esp]
paddq xmm2, xmmword [esp + 0x50]
paddq xmm2, xmm6
pshufd xmm0, xmm2, 0xb1
xorps xmm7, xmm0
paddq xmm5, xmm7
movdqa xmmword [esp + 0x20], xmm5
pxor xmm6, xmm5
movdqa xmm0, xmm6
psrlq xmm0, 0x18
psllq xmm6, 0x28
por xmm6, xmm0
paddq xmm2, xmmword [esp + 0x530]
movdqa xmmword [esp], xmm2
mov edi, esi
shld edi, edx, 1
shld edx, esi, 1
movd xmm0, ecx
movd xmm4, eax
punpckldq xmm4, xmm0
movd xmm0, edx
movd xmm2, edi
punpckldq xmm2, xmm0
punpcklqdq xmm2, xmm4
movaps xmm3, xmmword [esp + 0x100]
movaps xmm0, xmm3
movlps xmm0, qword [esp + 0x230]
paddq xmm0, xmmword [esp + 0x30]
shufps xmm3, xmmword [esp + 0x220], 0x2e
movaps xmmword [esp + 0x30], xmm3
movups xmmword [ebx + 0x68], xmm1
paddq xmm0, xmm2
shufps xmm1, xmm1, 0xb1
pshufd xmm4, xmm0, 0xb1
xorps xmm1, xmm4
movdqa xmm5, xmmword [esp + 0x10]
paddq xmm5, xmm1
pxor xmm2, xmm5
movdqa xmm4, xmm2
psrlq xmm4, 0x18
psllq xmm2, 0x28
por xmm2, xmm4
movaps xmm3, xmmword [esp + 0x280]
movaps xmm4, xmmword [esp + 0xb0]
shufps xmm4, xmm3, 0x24
movaps xmmword [esp + 0xb0], xmm4
shufps xmm3, xmmword [esp + 0x240], 0x42
paddq xmm3, xmm0
paddq xmm3, xmm2
movdqa xmmword [esp + 0x280], xmm3
pxor xmm1, xmm3
movdqa xmm0, xmm1
psrlq xmm0, 0x10
psllq xmm1, 0x30
por xmm1, xmm0
movdqa xmmword [esp + 0x70], xmm1
movdqa xmm3, xmmword [esp]
paddq xmm3, xmm6
movdqa xmmword [esp], xmm3
movdqa xmm0, xmm7
pxor xmm0, xmm3
movdqa xmm3, xmm0
psrlq xmm3, 0x10
movdqa xmmword [esp + 0x220], xmm3
psllq xmm0, 0x30
por xmm0, xmm3
movdqa xmm3, xmmword [esp + 0x20]
paddq xmm3, xmm0
movdqa xmm7, xmm5
paddq xmm7, xmm1
pshufd xmm4, xmm3, 0x4e
movdqa xmmword [esp + 0x20], xmm3
movdqa xmm5, xmm2
punpckhqdq xmm5, xmm4
movdqa xmm1, xmm7
shufps xmm1, xmm6, 0x4e
pxor xmm1, xmm5
movdqa xmm5, xmm1
psrlq xmm5, 0x3f
paddq xmm1, xmm1
por xmm1, xmm5
punpcklqdq xmm4, xmm2
shufps xmm6, xmm7, 0x4e
pxor xmm6, xmm4
movdqa xmm2, xmm6
psrlq xmm2, 0x3f
paddq xmm6, xmm6
por xmm6, xmm2
movq qword [ebx + 0x78], xmm0
movdqu xmmword [ebx + 0x50], xmm3
movdqa xmm2, xmm1
shufps xmm2, xmm6, 0x4e
movups xmmword [ebx + 0x28], xmm2
pshufd xmm2, xmm6, 0xee
movq qword [ebx + 0x38], xmm2
movdqa xmm3, xmmword [esp + 0x30]
paddq xmm3, xmmword [esp]
pshufd xmm2, xmmword [esp + 0x70], 0x4e
movdqa xmm4, xmm0
punpckhqdq xmm4, xmm2
paddq xmm3, xmm1
pshufd xmm4, xmm4, 0xb1
pshufd xmm2, xmm3, 0xb1
pxor xmm4, xmm2
movss xmm2, dword [ebx + 0x28]
movss xmm5, dword [ebx + 0x2c]
movlhps xmm5, xmm2
shufps xmm1, xmm5, 0x24
paddq xmm7, xmm4
xorps xmm1, xmm7
movaps xmm2, xmm1
psrlq xmm2, 0x18
psllq xmm1, 0x28
por xmm1, xmm2
movdqa xmm2, xmm3
paddq xmm2, xmmword [esp + 0xb0]
paddq xmm2, xmm1
movdqa xmmword [esp + 0x30], xmm2
pxor xmm4, xmm2
movdqa xmm2, xmm4
psrlq xmm2, 0x10
psllq xmm4, 0x30
por xmm4, xmm2
paddq xmm7, xmm4
movdqa xmm2, xmm1
pxor xmm2, xmm7
movd edx, xmm2
pshufd xmm2, xmm2, 0x55
movd ecx, xmm2
mov eax, edx
shld eax, ecx, 1
shld ecx, edx, 1
movq qword [ebx + 0x60], xmm4
mov dword [ebx + 0x24], ecx
mov dword [ebx + 0x20], eax
pshufd xmm2, xmm4, 0xee
movq qword [ebx + 0x68], xmm2
movaps xmm5, xmmword [esp + 0x1b0]
shufps xmm5, xmmword [esp + 0xc0], 0xe2
paddq xmm5, xmmword [esp + 0x280]
paddq xmm5, xmm6
shufps xmm0, xmmword [esp + 0x220], 0xc5
movaps xmm6, xmmword [esp + 0x70]
shufps xmm6, xmm0, 0x8b
pshufd xmm0, xmm5, 0xb1
xorps xmm6, xmm0
movdqu xmmword [ebx + 0x40], xmm7
movdqa xmmword [esp + 0x10], xmm7
movdqa xmm3, xmmword [esp + 0x20]
paddq xmm3, xmm6
movdqu xmm0, xmmword [ebx + 0x30]
pxor xmm0, xmm3
movdqa xmm2, xmm0
psrlq xmm2, 0x18
psllq xmm0, 0x28
por xmm0, xmm2
paddq xmm5, xmmword [esp + 0xf0]
paddq xmm5, xmm0
movdqa xmmword [esp + 0x1b0], xmm5
pxor xmm6, xmm5
movdqa xmm2, xmm6
psrlq xmm2, 0x10
psllq xmm6, 0x30
por xmm6, xmm2
paddq xmm3, xmm6
movdqa xmm5, xmm6
pshufd xmm6, xmm3, 0x44
movdqa xmm2, xmm7
punpckhqdq xmm2, xmm6
shufps xmm1, xmm0, 0x4e
pxor xmm2, xmm1
movdqa xmm1, xmm2
psrlq xmm1, 0x3f
paddq xmm2, xmm2
por xmm2, xmm1
pxor xmm0, xmm3
pshufd xmm1, xmm0, 0xff
movd edx, xmm1
pshufd xmm0, xmm0, 0xee
movd esi, xmm0
movdqa xmm1, xmmword [esp + 0x30]
paddq xmm1, xmmword [esp + 0x370]
movq qword [ebx + 0x70], xmm5
shufps xmm5, xmm4, 0x1b
paddq xmm1, xmm2
pshufd xmm0, xmm1, 0xb1
xorps xmm5, xmm0
paddq xmm3, xmm5
movdqa xmmword [esp + 0x20], xmm3
pxor xmm2, xmm3
movdqa xmm0, xmm2
psrlq xmm0, 0x18
psllq xmm2, 0x28
por xmm2, xmm0
paddq xmm1, xmmword [esp + 0x380]
movdqa xmmword [esp + 0x30], xmm1
movaps xmm7, xmmword [esp + 0x550]
unpcklpd xmm7, xmmword [esp + 0x540]
mov edi, esi
shld edi, edx, 1
movd xmm0, ecx
movd xmm4, eax
punpckldq xmm4, xmm0
shld edx, esi, 1
movd xmm0, edx
movd xmm1, edi
punpckldq xmm1, xmm0
punpcklqdq xmm1, xmm4
movaps xmm3, xmmword [esp + 0x50]
movaps xmm4, xmm7
shufps xmm4, xmm3, 0xe2
paddq xmm4, xmmword [esp + 0x1b0]
paddq xmm4, xmm1
movdqu xmm0, xmmword [ebx + 0x68]
pxor xmm0, xmm4
movdqa xmm6, xmm4
pshufd xmm4, xmm0, 0xb1
movdqa xmm7, xmmword [esp + 0x10]
paddq xmm7, xmm4
pxor xmm1, xmm7
movdqa xmm0, xmm1
psrlq xmm0, 0x18
psllq xmm1, 0x28
por xmm1, xmm0
movapd xmm0, xmmword [esp + 0x230]
movsd xmm0, xmm3
paddq xmm0, xmm6
paddq xmm0, xmm1
movdqa xmmword [esp + 0xb0], xmm0
pxor xmm4, xmm0
movdqa xmm0, xmm4
psrlq xmm0, 0x10
psllq xmm4, 0x30
por xmm4, xmm0
movdqa xmm0, xmmword [esp + 0x30]
paddq xmm0, xmm2
movdqa xmmword [esp + 0x30], xmm0
paddq xmm7, xmm4
movdqa xmmword [esp + 0x10], xmm7
movdqa xmm3, xmm1
shufps xmm3, xmm2, 0x4e
movaps xmmword [esp], xmm3
pxor xmm5, xmm0
movdqa xmm0, xmm5
psrlq xmm0, 0x10
movdqa xmmword [esp + 0xf0], xmm0
psllq xmm5, 0x30
por xmm5, xmm0
movdqa xmmword [esp + 0x70], xmm5
movdqa xmm3, xmmword [esp + 0x20]
paddq xmm3, xmm5
movdqa xmmword [esp + 0x20], xmm3
pshufd xmm5, xmm7, 0x4e
movdqa xmm0, xmm3
punpckhqdq xmm0, xmm5
movdqa xmm7, xmm5
punpcklqdq xmm7, xmm3
pxor xmm7, xmmword [esp]
movdqa xmm5, xmm7
psrlq xmm5, 0x3f
paddq xmm7, xmm7
por xmm7, xmm5
movdqa xmm6, xmmword [esp + 0x30]
paddq xmm6, xmmword [esp + 0x390]
pshufd xmm3, xmm4, 0x4e
movdqa xmmword [esp], xmm3
movdqa xmm5, xmmword [esp + 0x70]
movdqa xmm3, xmm5
punpckhqdq xmm3, xmmword [esp]
paddq xmm6, xmm7
movdqa xmmword [esp + 0x30], xmm6
pshufd xmm3, xmm3, 0xb1
movdqa xmmword [esp], xmm3
pshufd xmm3, xmm6, 0xb1
movdqa xmm6, xmmword [esp]
pxor xmm6, xmm3
movaps xmm3, xmmword [esp + 0xc0]
shufps xmm3, xmmword [esp + 0x2e0], 0x2e
shufps xmm2, xmm1, 0x4e
pxor xmm0, xmm2
movdqa xmm1, xmm0
psrlq xmm1, 0x3f
paddq xmm0, xmm0
por xmm0, xmm1
movq qword [ebx + 0x78], xmm5
movaps xmm1, xmmword [esp + 0x20]
movups xmmword [ebx + 0x50], xmm1
movdqa xmm1, xmm7
shufps xmm1, xmm0, 0x4e
movups xmmword [ebx + 0x28], xmm1
movss xmm1, dword [ebx + 0x28]
movss xmm2, dword [ebx + 0x2c]
movlhps xmm2, xmm1
shufps xmm7, xmm2, 0x24
movdqa xmm1, xmmword [esp + 0x10]
paddq xmm1, xmm6
xorps xmm7, xmm1
movdqa xmm2, xmm1
movaps xmm1, xmm7
psrlq xmm1, 0x18
psllq xmm7, 0x28
por xmm7, xmm1
movaps xmm1, xmm3
paddq xmm1, xmmword [esp + 0x30]
paddq xmm1, xmm7
movdqa xmmword [esp + 0xc0], xmm1
pxor xmm6, xmm1
movdqa xmm1, xmm6
psrlq xmm1, 0x10
psllq xmm6, 0x30
por xmm6, xmm1
paddq xmm2, xmm6
movdqa xmmword [esp], xmm6
movdqa xmm1, xmm7
pxor xmm1, xmm2
movdqa xmmword [esp + 0x10], xmm2
movd eax, xmm1
pshufd xmm1, xmm1, 0x55
movd ecx, xmm1
mov edx, eax
shld edx, ecx, 1
shld ecx, eax, 1
movq qword [ebx + 0x60], xmm6
mov dword [ebx + 0x24], ecx
mov dword [ebx + 0x20], edx
movdqu xmmword [ebx + 0x40], xmm2
pshufd xmm1, xmm0, 0xee
movq qword [ebx + 0x38], xmm1
movaps xmm2, xmmword [esp + 0x300]
unpcklpd xmm2, xmmword [esp + 0x560]
movaps xmmword [esp + 0x300], xmm2
movaps xmm3, xmmword [esp + 0x240]
shufps xmm2, xmm3, 0xe2
paddq xmm2, xmmword [esp + 0xb0]
paddq xmm2, xmm0
movaps xmm0, xmmword [esp + 0x70]
shufps xmm0, xmmword [esp + 0xf0], 0xc5
shufps xmm4, xmm0, 0x8b
pshufd xmm0, xmm2, 0xb1
xorps xmm4, xmm0
movdqa xmm5, xmmword [esp + 0x20]
paddq xmm5, xmm4
movdqu xmm0, xmmword [ebx + 0x30]
pxor xmm0, xmm5
movdqa xmm1, xmm0
psrlq xmm1, 0x18
psllq xmm0, 0x28
por xmm0, xmm1
movaps xmm1, xmm3
shufps xmm1, xmmword [esp + 0x2f0], 0x24
paddq xmm1, xmm2
paddq xmm1, xmm0
pxor xmm4, xmm1
movdqa xmm2, xmm4
psrlq xmm2, 0x10
psllq xmm4, 0x30
por xmm4, xmm2
pshufd xmm3, xmm7, 0xee
paddq xmm5, xmm4
punpcklqdq xmm3, xmm0
pshufd xmm2, xmmword [esp + 0x10], 0xee
punpcklqdq xmm2, xmm5
pxor xmm2, xmm3
movdqa xmm3, xmm2
psrlq xmm3, 0x3f
paddq xmm2, xmm2
por xmm2, xmm3
pxor xmm0, xmm5
pshufd xmm3, xmm0, 0xff
movd eax, xmm3
pshufd xmm0, xmm0, 0xee
movd esi, xmm0
movaps xmm6, xmmword [esp + 0x2d0]
movaps xmm7, xmmword [esp + 0x100]
shufps xmm6, xmm7, 0xe2
paddq xmm6, xmmword [esp + 0xc0]
movaps xmm0, xmmword [esp]
movaps xmm3, xmm0
shufps xmm3, xmm4, 0x4e
shufps xmm4, xmm0, 0x1b
paddq xmm6, xmm2
pshufd xmm0, xmm6, 0xb1
xorps xmm4, xmm0
paddq xmm5, xmm4
movdqa xmmword [esp + 0x20], xmm5
pxor xmm2, xmm5
movdqa xmm0, xmm2
psrlq xmm0, 0x18
psllq xmm2, 0x28
por xmm2, xmm0
shufps xmm7, xmmword [esp + 0x290], 0x24
paddq xmm7, xmm6
paddq xmm7, xmm2
movdqa xmmword [esp + 0x70], xmm7
pxor xmm4, xmm7
movdqa xmm0, xmm4
psrlq xmm0, 0x10
movdqa xmmword [esp + 0xf0], xmm0
psllq xmm4, 0x30
por xmm4, xmm0
movdqa xmmword [esp + 0x30], xmm4
pshufd xmm5, xmm4, 0x55
movd dword [esp], xmm5
movaps xmm7, xmmword [esp + 0x50]
shufps xmm7, xmmword [esp + 0x310], 0x24
mov edi, esi
shld edi, eax, 1
shld eax, esi, 1
movd xmm5, ecx
movd xmm0, edx
punpckldq xmm0, xmm5
movd xmm6, eax
movd xmm5, edi
punpckldq xmm5, xmm6
punpcklqdq xmm5, xmm0
paddq xmm7, xmm1
movups xmmword [ebx + 0x68], xmm3
paddq xmm7, xmm5
shufps xmm3, xmm3, 0xb1
pshufd xmm0, xmm7, 0xb1
xorps xmm3, xmm0
movdqa xmm4, xmmword [esp + 0x10]
paddq xmm4, xmm3
pxor xmm5, xmm4
movdqa xmm0, xmm5
psrlq xmm0, 0x18
psllq xmm5, 0x28
por xmm5, xmm0
movaps xmm1, xmmword [esp + 0x50]
shufps xmm1, xmmword [esp + 0x320], 0x2e
paddq xmm1, xmm7
paddq xmm1, xmm5
pxor xmm3, xmm1
movdqa xmm0, xmm3
psrlq xmm0, 0x10
psllq xmm3, 0x30
por xmm3, xmm0
paddq xmm4, xmm3
pshufd xmm0, xmm4, 0x55
movd dword [esp + 0xb0], xmm0
pshufd xmm7, xmm2, 0x4e
punpcklqdq xmm7, xmm5
pxor xmm5, xmm4
pshufd xmm0, xmm5, 0xee
movd edi, xmm0
pshufd xmm0, xmm5, 0xff
movd ecx, xmm0
movdqa xmm6, xmmword [esp + 0x70]
pshufd xmm0, xmm6, 0x55
movd esi, xmm0
movdqa xmm0, xmmword [esp + 0x30]
movq qword [ebx + 0x78], xmm0
movdqa xmm5, xmmword [esp + 0x20]
paddq xmm5, xmm0
movdqa xmmword [esp + 0x20], xmm5
mov ebx, ecx
shld ebx, edi, 1
pshufd xmm0, xmm0, 0xff
movd eax, xmm0
shld edi, ecx, 1
mov ecx, dword [esp + 0x14c]
add ecx, edi
mov edx, dword [esp + 0x1d8]
adc edx, ebx
movd dword [esp + 0xc0], xmm6
add dword [esp + 0xc0], ecx
adc esi, edx
mov dword [esp + 0x1b0], esi
movdqa xmm0, xmmword [esp + 0xf0]
movd dword [esp + 0x30], xmm0
pshufd xmm0, xmm0, 0xee
movd ecx, xmm0
xor eax, esi
mov dword [esp + 0xf0], eax
xor ecx, dword [esp + 0xc0]
movdqa xmm0, xmm4
movdqa xmmword [esp + 0x10], xmm4
movd edx, xmm4
add edx, eax
mov eax, dword [esp + 0xb0]
adc eax, ecx
mov dword [esp + 0xb0], eax
xor edi, edx
xor ebx, eax
mov esi, ebx
shld esi, edi, 8
shrd ebx, edi, 0x18
pshufd xmm4, xmm5, 0x4e
punpcklqdq xmm4, xmm0
pxor xmm4, xmm7
movdqa xmm0, xmm4
psrlq xmm0, 0x3f
paddq xmm4, xmm4
por xmm4, xmm0
movd xmm0, esi
movd xmm5, ebx
punpcklqdq xmm5, xmm0
add esi, dword [esp + 0x1dc]
mov eax, dword [esp + 0xac]
adc eax, ebx
add esi, dword [esp + 0xc0]
adc eax, dword [esp + 0x1b0]
mov dword [esp + 0xac], eax
movd xmm0, esi
movdqa xmmword [esp + 0xc0], xmm0
xor esi, dword [esp + 0xf0]
xor ecx, eax
mov eax, ecx
shld eax, esi, 0x10
shufps xmm5, xmm2, 0x42
shld esi, ecx, 0x10
add edx, eax
mov ecx, eax
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0xb0]
adc eax, esi
movd xmm6, edx
movd xmm2, eax
mov edi, eax
punpcklqdq xmm2, xmm6
lea eax, [esp + 0x578]
movaps xmm0, xmmword [esp + 0x20]
movups xmmword [eax + 0x50], xmm0
shufps xmm2, xmm0, 0x42
xorps xmm2, xmm5
movaps xmm5, xmm2
psrlq xmm5, 0x3f
paddq xmm2, xmm2
por xmm2, xmm5
movdqu xmmword [eax + 0x30], xmm4
mov dword [eax + 0x64], esi
mov dword [eax + 0x60], ecx
mov dword [eax + 0x40], edx
mov dword [eax + 0x44], edi
movdqu xmmword [eax + 0x20], xmm2
mov edi, eax
shufpd xmm2, xmmword [esp + 0x100], 1
movaps xmm6, xmmword [esp + 0x300]
shufps xmm6, xmm4, 0x42
pshufd xmm5, xmmword [esp + 0x70], 0xee
punpcklqdq xmm5, xmm1
paddq xmm5, xmm6
paddq xmm5, xmm2
movss xmm2, dword [eax + 0x50]
movss xmm6, dword [eax + 0x54]
movlhps xmm6, xmm2
movaps xmm0, xmmword [esp + 0x10]
shufps xmm0, xmm6, 0x2e
pxor xmm3, xmm5
pshufd xmm3, xmm3, 0xb1
paddq xmm0, xmm3
movdqu xmm2, xmmword [eax + 0x28]
pxor xmm2, xmm0
movdqa xmm6, xmm2
psrlq xmm6, 0x18
psllq xmm2, 0x28
por xmm2, xmm6
movaps xmm7, xmmword [esp + 0x250]
shufps xmm7, xmmword [esp + 0x320], 0x24
paddq xmm7, xmm5
paddq xmm7, xmm2
pxor xmm3, xmm7
movdqa xmm6, xmm7
movdqa xmmword [esp + 0x250], xmm7
movdqa xmm5, xmm3
psrlq xmm5, 0x10
psllq xmm3, 0x30
por xmm3, xmm5
paddq xmm1, xmmword [esp + 0x50]
paddq xmm1, xmm4
pshufd xmm4, xmm1, 0xff
movd edx, xmm4
mov dword [esp + 0x100], edx
pshufd xmm1, xmm1, 0xee
movd eax, xmm1
mov dword [esp + 0x10], eax
paddq xmm0, xmm3
movq qword [edi + 0x48], xmm0
movdqu xmmword [edi + 0x68], xmm3
pxor xmm2, xmm0
movdqa xmm7, xmm0
movdqa xmm1, xmm2
psrlq xmm1, 0x3f
mov ecx, dword [esp + 0x30]
xor ecx, eax
mov dword [esp + 0x30], ecx
mov eax, dword [esp]
xor eax, edx
mov dword [esp], eax
mov edx, dword [edi + 0x58]
add edx, eax
mov dword [esp + 0x20], edx
mov ebx, dword [edi + 0x5c]
adc ebx, ecx
mov dword [esp + 0x50], ebx
paddq xmm2, xmm2
mov eax, dword [edi + 0x3c]
xor eax, ebx
mov ebx, dword [edi + 0x38]
xor ebx, edx
mov edx, ebx
shld edx, eax, 8
mov dword [esp + 0xb0], edx
por xmm2, xmm1
shrd ebx, eax, 0x18
movss xmm1, dword [esp + 0xac]
unpcklpd xmm1, xmmword [esp + 0xc0]
mov ecx, dword [esp + 0x68]
add ecx, ebx
mov eax, dword [esp + 0x6c]
adc eax, edx
add ecx, dword [esp + 0x10]
mov dword [esp + 0x68], ecx
adc eax, dword [esp + 0x100]
mov dword [esp + 0x6c], eax
shufps xmm1, xmm6, 0x42
paddq xmm1, xmmword [esp + 0x230]
mov edx, dword [esp + 0x30]
xor edx, eax
mov eax, dword [esp]
xor eax, ecx
mov ecx, dword [ebp + 8]
mov edi, eax
shld edi, edx, 0x10
movd xmm0, esi
movd xmm4, dword [esp + 0xf0]
punpckldq xmm4, xmm0
shrd eax, edx, 0x10
movd xmm0, edi
movd xmm5, eax
punpckldq xmm5, xmm0
punpcklqdq xmm5, xmm4
paddq xmm1, xmm2
pshufd xmm0, xmm5, 0xb1
pshufd xmm4, xmm1, 0xb1
pxor xmm0, xmm4
mov esi, dword [esp + 0x20]
add esi, eax
mov eax, dword [esp + 0x50]
adc eax, edi
movd xmm4, eax
mov edi, eax
movd xmm5, esi
mov eax, esi
punpcklqdq xmm4, xmm5
shufps xmm7, xmm4, 0x2e
paddq xmm7, xmm0
pxor xmm2, xmm7
movdqa xmm4, xmm2
psrlq xmm4, 0x18
psllq xmm2, 0x28
por xmm2, xmm4
paddq xmm1, xmmword [esp + 0x110]
mov edx, dword [esp + 0xb0]
xor edx, edi
xor ebx, esi
mov eax, ebx
shld eax, edx, 1
mov esi, edx
paddq xmm1, xmm2
lea edx, [esp + 0x578]
movdqu xmmword [edx], xmm1
pxor xmm1, xmm0
movdqa xmm0, xmm1
psrlq xmm0, 0x10
psllq xmm1, 0x30
por xmm1, xmm0
shrd ebx, esi, 0x1f
movaps xmm6, xmmword [esp + 0x3a0]
shufps xmm6, xmmword [esp + 0x240], 0x42
movd xmm4, ebx
movd xmm0, eax
punpckldq xmm0, xmm4
mov eax, edx
movq qword [edx + 0x78], xmm1
paddq xmm7, xmm1
movdqu xmmword [edx + 0x50], xmm7
movdqu xmm4, xmmword [edx + 0x20]
punpcklqdq xmm0, xmm4
movss xmm4, dword [esp + 0x6c]
movss xmm5, dword [esp + 0x68]
movlhps xmm4, xmm5
movaps xmm5, xmmword [esp + 0x250]
shufps xmm5, xmm4, 0x2e
movaps xmm4, xmm6
paddq xmm4, xmm0
paddq xmm5, xmm4
pxor xmm3, xmm5
movdqa xmm6, xmm5
pshufd xmm4, xmm3, 0xb1
movdqu xmm3, xmmword [edx + 0x40]
paddq xmm3, xmm4
pxor xmm0, xmm3
movdqa xmm5, xmm0
psrlq xmm5, 0x18
psllq xmm0, 0x28
por xmm0, xmm5
movdqa xmm5, xmm6
paddq xmm5, xmmword [esp + 0x330]
paddq xmm5, xmm0
movdqu xmmword [edx + 0x10], xmm5
pxor xmm5, xmm4
movdqa xmm4, xmm5
psrlq xmm4, 0x10
psllq xmm5, 0x30
por xmm5, xmm4
shufps xmm1, xmm5, 0x4e
movups xmmword [edx + 0x60], xmm1
paddq xmm3, xmm5
movdqa xmm1, xmm2
shufps xmm1, xmm0, 0x4e
movdqa xmm4, xmm7
shufps xmm4, xmm3, 0x4e
xorps xmm4, xmm1
movaps xmm1, xmm4
psrlq xmm1, 0x3f
paddq xmm4, xmm4
por xmm4, xmm1
movdqu xmmword [edx + 0x30], xmm4
pshufd xmm1, xmm5, 0xee
movq qword [edx + 0x70], xmm1
shufps xmm0, xmm2, 0x4e
movdqu xmmword [edx + 0x40], xmm3
shufps xmm3, xmm7, 0x4e
xorps xmm3, xmm0
movaps xmm0, xmm3
psrlq xmm0, 0x3f
paddq xmm3, xmm3
por xmm3, xmm0
movdqu xmmword [edx + 0x20], xmm3
mov eax, 0xffffffc0
movdqu xmm0, xmmword [ecx + eax + 0x40]
movdqu xmm1, xmmword [esp + eax + 0x5b8]
pxor xmm1, xmm0
movdqu xmm0, xmmword [esp + eax + 0x5f8]
pxor xmm0, xmm1
movdqu xmmword [ecx + eax + 0x40], xmm0
add eax, 0x10
jne 0x4171d6
xor eax, eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret