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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x4c0
movzx eax, byte [0x714e19]
mov edi, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
cmp al, 1
je 0x5d670b
movzx eax, al
cmp eax, 0xff
jne 0x5d671b
lea ecx, [esp + 0x49c]
call fcn.005e2290
lea ecx, [esp + 0x4ac]
call fcn.005e22c0
mov ebx, dword [esp + 0x4a4]
mov ecx, dword [esp + 0x4b0]
mov eax, ebx
not eax
test eax, 0xc000000
jne 0x5d66f4
mov dword [esp + 0x20], ecx
call fcn.005d3f00
mov ecx, dword [esp + 0x20]
not eax
test al, 6
sete al
jmp 0x5d66f6
xor eax, eax
mov edx, dword [ebp + 0xc]
shr cl, 5
shr ebx, 0x1c
and cl, al
and bl, cl
mov byte [0x714e19], bl
je 0x5d671b
mov ecx, esi
push edi
call fcn.005e22f0
add esp, 4
jmp 0x5e1f02
mov eax, dword [esi]
mov ecx, dword [esi + 0x18]
mov ebx, dword [esi + 0x3c]
movdqu xmm2, xmmword [esi + 8]
movdqu xmm1, xmmword [esi + 0x28]
test edi, edi
mov dword [esp + 0x28c], eax
mov eax, dword [esi + 4]
mov dword [esp + 0x3d4], ecx
mov ecx, dword [esi + 0x24]
mov dword [esp + 0x3d8], ebx
mov dword [esp + 0x288], eax
mov eax, dword [esi + 0x1c]
mov dword [esp + 0x2ec], ecx
mov ecx, dword [esi + 0x20]
mov esi, dword [esi + 0x38]
mov dword [esp + 0x39c], esi
mov dword [esp + 0x3dc], eax
je 0x5e1ea5
mov eax, 0x384f25e3
shl edi, 7
mov esi, ecx
mov dword [esp + 0x13c], edx
movd xmm0, eax
mov eax, 0xefbe4786
add edi, edx
movd xmm3, eax
mov eax, 0xe19b48a8
mov dword [esp + 0x410], edi
punpcklqdq xmm3, xmm0
movd xmm0, eax
mov eax, 0x34b0bcb5
movdqa xmmword [esp + 0x480], xmm3
movd xmm3, eax
mov eax, 0xca273ece
punpcklqdq xmm3, xmm0
movd xmm0, dword [0x6e6a20]
movdqa xmmword [esp + 0x470], xmm3
movd xmm3, eax
mov eax, 0xfc657e2a
punpcklqdq xmm3, xmm0
movd xmm0, eax
mov eax, 0x597f299c
movd xmm5, eax
mov eax, 0x6c44198c
movdqa xmmword [esp + 0x460], xmm3
punpcklqdq xmm5, xmm0
movd xmm0, eax
mov eax, 0x4a475817
movd xmm4, eax
movdqa xmmword [esp + 0x450], xmm5
punpckldq xmm4, xmm0
movdqa xmmword [esp + 0x440], xmm4
nop word cs:[eax + eax]
nop
mov edi, esi
mov dword [esp + 0x35c], esi
mov ecx, esi
mov esi, dword [esp + 0x2ec]
movdqa xmmword [esp + 0x420], xmm1
pshufd xmm0, xmm1, 0x55
movdqa xmmword [esp + 0x430], xmm2
mov eax, edi
pshufd xmm1, xmmword [esp + 0x420], 0xff
mov ebx, edi
shld ecx, esi, 0x12
shld eax, esi, 0xe
mov edx, esi
shld ebx, esi, 0x17
xor eax, ecx
mov ecx, esi
shld edx, edi, 0xe
shld ecx, edi, 0x12
xor edx, ecx
mov ecx, esi
movd ecx, xmm1
movdqa xmm1, xmmword [esp + 0x420]
xor ebx, edx
mov edx, esi
shld esi, edi, 0x17
movd edi, xmm0
pshufd xmm0, xmmword [esp + 0x420], 0xee
xor esi, eax
mov eax, ecx
mov dword [esp + 0x20], edi
xor eax, edi
and eax, edx
movd edx, xmm1
pshufd xmm1, xmm2, 0xff
xor eax, ecx
movd ecx, xmm0
mov dword [esp + 0x30], edx
pshufd xmm0, xmm2, 0xee
mov edi, ecx
xor edi, edx
mov edx, dword [esp + 0x28c]
and edi, dword [esp + 0x35c]
mov dword [esp + 0x10], edx
mov dword [esp + 0x28c], edx
xor edi, ecx
add ebx, dword [esp + 0x39c]
mov ecx, dword [esp + 0x13c]
adc esi, dword [esp + 0x3d8]
add ebx, edi
mov edi, dword [esp + 0x288]
adc esi, eax
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
bswap ecx
bswap eax
add ebx, ecx
mov dword [esp + 0x2c0], ecx
mov dword [esp + 0x2b0], eax
mov ecx, edx
adc esi, eax
add ebx, 0xd728ae22
mov eax, edi
adc esi, 0x428a2f98
shld ecx, edi, 4
shld eax, edx, 0x1e
mov dword [esp + 0x150], ebx
mov ebx, edi
xor eax, ecx
mov ecx, edi
mov edi, edx
mov dword [esp + 0x288], ebx
shld ecx, edx, 4
shld edi, ebx, 0x1e
xor edi, ecx
mov ecx, ebx
mov ebx, dword [esp + 0x10]
shld ebx, ecx, 0x19
xor ebx, edi
mov edi, ecx
movd ecx, xmm0
pshufd xmm0, xmm2, 0x55
shld edi, edx, 0x19
mov dword [esp + 0x10], ebx
mov ebx, edx
movd edx, xmm2
mov dword [esp + 0x40], ecx
movd xmm2, dword [esp + 0x150]
xor edi, eax
mov eax, ecx
mov dword [esp + 0x70], edx
xor eax, edx
mov edx, ecx
movd ecx, xmm0
movd xmm0, esi
mov esi, dword [esp + 0x28c]
and edx, dword [esp + 0x70]
and eax, ebx
mov dword [esp + 0x60], ecx
punpckldq xmm2, xmm0
pshufd xmm0, xmm2, 0x44
movd xmm2, dword [esp + 0x3d4]
movd xmm5, esi
xor edx, eax
movd eax, xmm1
mov dword [esp + 0x80], eax
xor eax, ecx
mov ecx, dword [esp + 0x80]
and eax, dword [esp + 0x288]
and ecx, dword [esp + 0x60]
xor ecx, eax
add edx, dword [esp + 0x10]
mov eax, dword [esp + 0x70]
adc ecx, edi
movd xmm1, edx
and eax, esi
mov edx, dword [esp + 0x288]
movd xmm3, ecx
mov ecx, dword [esp + 0x13c]
movd xmm4, eax
punpckldq xmm1, xmm3
movd xmm3, dword [esp + 0x3dc]
mov eax, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
punpckldq xmm2, xmm3
punpcklqdq xmm1, xmm2
paddq xmm1, xmm0
movdqa xmm0, xmm1
movdqa xmm2, xmm1
movdqa xmm3, xmm1
bswap eax
bswap ecx
psrlq xmm0, 0x1c
psrlq xmm2, 0xe
psllq xmm3, 0x32
mov dword [esp + 0x270], eax
mov dword [esp + 0x2a0], ecx
movsd xmm2, xmm0
movdqa xmm0, xmm1
psllq xmm0, 0x24
movsd xmm3, xmm0
movd xmm0, edx
orpd xmm3, xmm2
punpcklqdq xmm0, xmm5
movd xmm2, ecx
movd xmm5, eax
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x30]
punpcklqdq xmm5, xmm2
movdqa xmm2, xmm1
shufps xmm1, xmm5, 0x24
movdqa xmm5, xmm2
movdqa xmm6, xmm2
movdqa xmm7, xmm2
psrlq xmm5, 0x22
psrlq xmm6, 0x12
psllq xmm7, 0x2e
paddq xmm1, xmmword [esp + 0x420]
movsd xmm6, xmm5
movdqa xmm5, xmm2
and eax, edx
psllq xmm5, 0x1e
movsd xmm7, xmm5
movdqa xmm5, xmm2
orpd xmm7, xmm6
psrlq xmm5, 0x29
movdqa xmm6, xmm2
xorpd xmm7, xmm3
movdqa xmm3, xmm2
psllq xmm6, 0x19
psrlq xmm3, 0x27
movsd xmm5, xmm3
movdqa xmm3, xmm2
psllq xmm3, 0x17
movsd xmm3, xmm6
movd xmm6, eax
mov eax, ecx
xor eax, dword [esp + 0x35c]
orpd xmm3, xmm5
pshufd xmm5, xmm2, 0xee
movdqa xmmword [esp + 0x10], xmm6
pshufd xmm6, xmm2, 0xff
movd edx, xmm5
movdqa xmm5, xmm2
movaps xmm2, xmmword [0x6e69e0]
punpckldq xmm4, xmmword [esp + 0x10]
xorpd xmm3, xmm7
mov dword [esp + 0x50], edx
movdqa xmmword [esp + 0xc0], xmm5
and eax, edx
movd edx, xmm6
xor eax, ecx
mov ecx, dword [esp + 0x20]
shufps xmm0, xmm2, 0xe2
paddq xmm1, xmm2
mov dword [esp + 0xd0], edx
movd xmm6, eax
xorps xmm0, xmmword [esp + 0x430]
mov eax, ecx
xor eax, dword [esp + 0x2ec]
andps xmm0, xmm5
xorps xmm0, xmm4
and eax, edx
xor eax, ecx
movd xmm7, eax
punpcklqdq xmm7, xmm6
shufps xmm4, xmm7, 0x24
paddq xmm1, xmm4
movsd xmm1, xmm0
paddq xmm1, xmm3
pshufd xmm0, xmm1, 0xee
pshufd xmm3, xmm1, 0xff
movd esi, xmm0
movd edi, xmm3
paddq xmm1, xmm0
add esi, dword [esp + 0x40]
pshufd xmm0, xmm1, 0x55
movdqa xmm2, xmm1
adc edi, dword [esp + 0x80]
mov eax, esi
mov edx, esi
mov ebx, esi
mov dword [esp + 0x140], esi
shld eax, edi, 0x12
shld edx, edi, 0xe
mov ecx, edi
shld ebx, edi, 0x17
mov dword [esp + 0x10], edi
xor edx, eax
mov eax, edi
shld ecx, esi, 0xe
shld eax, esi, 0x12
xor ecx, eax
xor ebx, ecx
mov ecx, edi
mov edi, dword [esp + 0x35c]
shld ecx, esi, 0x17
mov esi, dword [esp + 0x13c]
xor ecx, edx
mov edx, dword [esp + 0x50]
mov eax, dword [esi + 0x10]
xor edx, edi
and edx, dword [esp + 0x140]
bswap eax
mov dword [esp + 0xe0], eax
mov eax, dword [esi + 0x14]
mov esi, dword [esp + 0xd0]
xor edx, edi
mov edi, dword [esp + 0x20]
bswap eax
mov dword [esp + 0x260], eax
mov eax, dword [esp + 0x2ec]
xor esi, eax
and esi, dword [esp + 0x10]
xor esi, eax
mov eax, dword [esp + 0x30]
add eax, dword [esp + 0x260]
adc edi, dword [esp + 0xe0]
add eax, edx
adc edi, esi
add eax, ebx
movd esi, xmm0
movd ebx, xmm5
pshufd xmm0, xmm5, 0x55
adc edi, ecx
add eax, 0xec4d3b2f
mov edx, esi
mov dword [esp + 0x150], esi
mov dword [esp + 0x90], ebx
adc edi, 0xb5c0fbcf
mov dword [esp + 0x30], eax
mov dword [esp + 0x20], edi
movd edi, xmm1
movd xmm5, dword [esp + 0x30]
mov eax, edi
shld edx, edi, 0x1e
mov ecx, edi
mov dword [esp + 0xb0], edi
movd xmm4, dword [esp + 0x20]
shld eax, esi, 4
shld ecx, esi, 0x1e
xor edx, eax
mov eax, esi
shld eax, edi, 4
xor ecx, eax
mov eax, edi
punpckldq xmm5, xmm4
shld eax, esi, 0x19
pshufd xmm4, xmm5, 0x44
xor eax, ecx
mov ecx, esi
mov esi, edi
shld ecx, edi, 0x19
mov edi, dword [esp + 0x28c]
xor ecx, edx
mov edx, ebx
xor edx, edi
and edx, esi
mov esi, ebx
mov ebx, dword [esp + 0x288]
and esi, edi
movd edi, xmm0
movdqa xmm0, xmmword [esp + 0xc0]
mov dword [esp + 0xc], edi
xor esi, edx
mov edx, dword [esp + 0xc]
xor edi, ebx
and edi, dword [esp + 0x150]
and edx, ebx
xor edx, edi
add esi, eax
mov eax, dword [esp + 0x10]
adc edx, ecx
movd xmm3, esi
mov ecx, dword [esp + 0x140]
mov esi, dword [esp + 0x2ec]
movd xmm1, edx
mov edx, dword [esp + 0x35c]
punpcklqdq xmm1, xmm3
shufps xmm1, xmmword [esp + 0x430], 0x42
xor eax, dword [esp + 0xd0]
xor ecx, dword [esp + 0x50]
add edx, 0x8189dbbc
adc esi, 0xe9b5dba5
paddq xmm1, xmm4
movd xmm6, esi
movdqa xmm3, xmm1
movdqa xmm4, xmm1
movdqa xmm5, xmm1
movdqa xmm7, xmm1
movdqa xmmword [esp + 0x180], xmm1
psrlq xmm3, 0x1c
psrlq xmm4, 0xe
psllq xmm5, 0x32
psllq xmm7, 0x1e
movsd xmm4, xmm3
movdqa xmm3, xmm1
psllq xmm3, 0x24
movsd xmm5, xmm3
movdqa xmm3, xmm1
orpd xmm5, xmm4
movdqa xmm4, xmm1
psrlq xmm3, 0x22
psrlq xmm4, 0x12
movsd xmm4, xmm3
movdqa xmm3, xmm1
psllq xmm3, 0x2e
movsd xmm3, xmm7
movdqa xmm7, xmm1
orpd xmm3, xmm4
movdqa xmm4, xmm1
psllq xmm7, 0x19
xorpd xmm3, xmm5
movdqa xmm5, xmm1
psrlq xmm4, 0x27
psrlq xmm5, 0x29
movsd xmm5, xmm4
movdqa xmm4, xmm1
psllq xmm4, 0x17
movsd xmm4, xmm7
movd xmm7, edx
orpd xmm4, xmm5
pshufd xmm5, xmm1, 0xee
punpcklqdq xmm6, xmm7
movd edx, xmm5
pshufd xmm5, xmm1, 0xff
xorpd xmm4, xmm3
movdqa xmm3, xmm1
mov dword [esp + 0x70], edx
and ecx, edx
mov edx, dword [esp + 0x13c]
movd edi, xmm5
shufps xmm3, xmm6, 0x24
movd xmm5, ecx
and eax, edi
mov dword [esp + 0x40], edi
mov ecx, dword [edx + 0x1c]
mov edx, dword [edx + 0x18]
bswap ecx
bswap edx
movd xmm6, edx
movd xmm7, ecx
mov dword [esp + 0x230], ecx
mov dword [esp + 0x340], edx
punpckldq xmm7, xmm6
movd xmm6, eax
pshufd xmm7, xmm7, 0x44
punpcklqdq xmm6, xmm5
paddq xmm7, xmm3
movdqa xmm3, xmm2
pxor xmm2, xmm0
movdqa xmm5, xmm3
pand xmm2, xmm1
movdqa xmm1, xmm3
movdqa xmm3, xmm5
movdqa xmm5, xmm1
shufps xmm3, xmm6, 0x24
pand xmm5, xmm0
xorps xmm3, xmm0
pxor xmm5, xmm2
movdqa xmm0, xmmword [esp + 0x180]
paddq xmm3, xmm7
movsd xmm3, xmm5
paddq xmm3, xmm4
pshufd xmm2, xmm3, 0xee
pshufd xmm4, xmm3, 0xff
movd edi, xmm2
movd eax, xmm4
paddq xmm3, xmm2
add edi, dword [esp + 0x28c]
pshufd xmm2, xmm3, 0x55
adc eax, ebx
mov ecx, edi
mov edx, edi
mov dword [esp + 0x60], edi
shld ecx, eax, 0x12
shld edx, eax, 0xe
mov esi, eax
mov ebx, eax
mov dword [esp + 0x20], eax
xor edx, ecx
mov ecx, eax
shld esi, edi, 0xe
shld ecx, edi, 0x12
xor esi, ecx
mov ecx, edi
shld ecx, eax, 0x17
xor ecx, esi
mov esi, dword [esp + 0x70]
mov dword [esp + 0x30], ecx
mov ecx, eax
shld ecx, edi, 0x17
xor ecx, edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0x13c]
mov eax, dword [ecx + 0x20]
bswap eax
mov dword [esp + 0x360], eax
mov eax, dword [ecx + 0x24]
mov ecx, dword [esp + 0x140]
bswap eax
xor esi, ecx
mov dword [esp + 0x110], eax
mov eax, dword [esp + 0x10]
and esi, edi
movd edi, xmm3
xor esi, ecx
mov ecx, edi
mov dword [esp + 0xc0], edi
xor edx, eax
and edx, ebx
mov ebx, dword [esp + 0xd0]
xor edx, eax
mov eax, dword [esp + 0x50]
add eax, dword [esp + 0x110]
adc ebx, dword [esp + 0x360]
add eax, esi
movd esi, xmm2
movdqa xmm2, xmm0
pxor xmm2, xmm1
pand xmm1, xmm0
mov dword [esp + 0x100], esi
pand xmm2, xmm3
pxor xmm1, xmm2
pxor xmm2, xmm2
adc ebx, edx
add eax, dword [esp + 0x30]
mov edx, esi
adc ebx, dword [esp + 0x80]
add eax, 0xf348b538
mov dword [esp + 0x50], eax
mov eax, edi
adc ebx, 0x3956c25b
shld eax, esi, 4
shld edx, edi, 0x1e
shld ecx, esi, 0x1e
xor edx, eax
mov eax, esi
shld eax, edi, 4
xor ecx, eax
mov eax, edi
shld eax, esi, 0x19
xor eax, ecx
mov ecx, esi
mov esi, dword [esp + 0x60]
shld ecx, edi, 0x19
mov edi, dword [esp + 0x50]
xor ecx, edx
movd edx, xmm1
pshufd xmm1, xmm1, 0x55
add edx, eax
movd eax, xmm1
movdqa xmm1, xmm3
pand xmm3, xmm0
adc eax, ecx
pxor xmm1, xmm0
add edx, edi
adc eax, ebx
add edi, dword [esp + 0x90]
mov dword [esp + 0x80], edx
mov dword [esp + 0x30], eax
adc ebx, dword [esp + 0xc]
mov eax, edi
mov edx, edi
mov dword [esp + 0x50], edi
shld eax, ebx, 0x12
shld edx, ebx, 0xe
mov ecx, ebx
mov dword [esp + 0xd0], ebx
xor edx, eax
mov eax, ebx
shld ecx, edi, 0xe
shld eax, edi, 0x12
xor ecx, eax
mov eax, edi
shld eax, ebx, 0x17
xor eax, ecx
mov ecx, dword [esp + 0x13c]
mov dword [esp + 0xc], eax
mov eax, ebx
shld eax, edi, 0x17
xor eax, edx
mov edx, dword [esp + 0x20]
mov dword [esp + 0x90], eax
mov eax, dword [ecx + 0x28]
bswap eax
mov dword [esp + 0x2f0], eax
mov eax, dword [ecx + 0x2c]
mov ecx, dword [esp + 0x70]
bswap eax
xor esi, ecx
mov dword [esp + 0x1e0], eax
mov eax, dword [esp + 0x40]
and esi, edi
mov edi, dword [esp + 0x30]
xor esi, ecx
xor edx, eax
and edx, ebx
mov ebx, dword [esp + 0x140]
xor edx, eax
mov eax, dword [esp + 0x10]
add ebx, dword [esp + 0x1e0]
adc eax, dword [esp + 0x2f0]
add ebx, esi
mov esi, dword [esp + 0x80]
adc eax, edx
add ebx, dword [esp + 0xc]
mov edx, edi
mov ecx, esi
adc eax, dword [esp + 0x90]
add ebx, 0xb605d019
adc eax, 0x59f111f1
shld edx, esi, 0x1e
shld ecx, edi, 0x1e
mov dword [esp + 0x10], eax
mov eax, esi
shld eax, edi, 4
xor edx, eax
mov eax, edi
shld eax, esi, 4
xor ecx, eax
mov eax, esi
shld eax, edi, 0x19
xor eax, ecx
mov ecx, edi
shld ecx, esi, 0x19
xor ecx, edx
movd edx, xmm1
pshufd xmm1, xmm1, 0x55
and edx, esi
movd esi, xmm3
xor esi, edx
movd edx, xmm1
pshufd xmm1, xmm3, 0x55
and edx, edi
movd edi, xmm1
xor edi, edx
add esi, eax
mov eax, edi
mov edi, ebx
adc eax, ecx
add esi, ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x90], esi
mov esi, dword [esp + 0x50]
adc eax, ebx
add edi, dword [esp + 0xb0]
mov dword [esp + 0x120], eax
adc ebx, dword [esp + 0x150]
mov eax, edi
mov edx, edi
mov dword [esp + 0x140], edi
shld eax, ebx, 0x12
shld edx, ebx, 0xe
mov ecx, ebx
mov dword [esp + 0x10], ebx
xor edx, eax
mov eax, ebx
shld ecx, edi, 0xe
shld eax, edi, 0x12
xor ecx, eax
mov eax, edi
shld eax, ebx, 0x17
xor eax, ecx
mov ecx, dword [esp + 0x13c]
mov dword [esp + 0x150], eax
mov eax, ebx
shld eax, edi, 0x17
xor eax, edx
mov edx, dword [esp + 0xd0]
mov dword [esp + 0xc], eax
mov eax, dword [ecx + 0x30]
bswap eax
mov dword [esp + 0x170], eax
mov eax, dword [ecx + 0x34]
mov ecx, dword [esp + 0x60]
bswap eax
xor esi, ecx
mov dword [esp + 0x1d0], eax
mov eax, dword [esp + 0x20]
and esi, edi
mov edi, dword [esp + 0x100]
xor esi, ecx
mov ecx, dword [esp + 0x40]
xor edx, eax
and edx, ebx
mov ebx, dword [esp + 0x120]
xor edx, eax
mov eax, dword [esp + 0x70]
add eax, dword [esp + 0x1d0]
adc ecx, dword [esp + 0x170]
add eax, esi
mov esi, dword [esp + 0x90]
adc ecx, edx
add eax, dword [esp + 0x150]
mov edx, ebx
adc ecx, dword [esp + 0xc]
add eax, 0xaf194f9b
mov dword [esp + 0x70], eax
mov eax, esi
adc ecx, 0x923f82a4
shld eax, ebx, 4
shld edx, esi, 0x1e
mov dword [esp + 0x40], ecx
mov ecx, esi
xor edx, eax
mov eax, ebx
shld eax, esi, 4
shld ecx, ebx, 0x1e
xor ecx, eax
mov eax, esi
shld eax, ebx, 0x19
xor eax, ecx
mov ecx, ebx
shld ecx, esi, 0x19
mov esi, dword [esp + 0x30]
xor ecx, edx
mov edx, esi
xor edx, edi
and edx, ebx
mov ebx, esi
mov esi, dword [esp + 0x80]
and ebx, edi
mov edi, dword [esp + 0xc0]
xor ebx, edx
mov edx, esi
xor edx, edi
and esi, edi
mov edi, dword [esp + 0x40]
and edx, dword [esp + 0x90]
xor esi, edx
add esi, eax
movd eax, xmm0
pshufd xmm0, xmm0, 0x55
adc ebx, ecx
mov ecx, dword [esp + 0x70]
add esi, ecx
adc ebx, edi
add ecx, eax
movd eax, xmm0
mov dword [esp + 0xb0], esi
adc edi, eax
mov eax, ecx
mov edx, ecx
mov esi, ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x1a0], ebx
shld eax, edi, 0x12
shld edx, edi, 0xe
mov dword [esp + 0x40], edi
xor edx, eax
mov eax, edi
shld eax, ecx, 0x12
mov ecx, edi
shld ecx, esi, 0xe
xor ecx, eax
mov eax, esi
shld eax, edi, 0x17
shld edi, esi, 0x17
mov esi, dword [esp + 0x140]
xor eax, ecx
xor edi, edx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x150], eax
mov eax, dword [esp + 0x13c]
mov dword [esp + 0xc], edi
xor esi, ecx
mov edx, dword [eax + 0x38]
mov edi, dword [eax + 0x3c]
mov eax, dword [esp + 0xd0]
and esi, dword [esp + 0x70]
bswap edx
xor esi, ecx
mov ecx, dword [esp + 0x20]
bswap edi
mov dword [esp + 0x210], edx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x300], edi
xor edx, eax
and edx, dword [esp + 0x40]
xor edx, eax
mov eax, dword [esp + 0x60]
add eax, edi
mov edi, dword [esp + 0xb0]
adc ecx, dword [esp + 0x210]
add eax, esi
mov esi, ebx
adc ecx, edx
add eax, dword [esp + 0x150]
mov edx, ebx
adc ecx, dword [esp + 0xc]
add eax, 0xda6d8118
mov dword [esp + 0x60], eax
mov eax, edi
adc ecx, 0xab1c5ed5
shld eax, ebx, 4
shld edx, edi, 0x1e
mov dword [esp + 0x20], ecx
mov ecx, edi
xor edx, eax
mov eax, ebx
shld ecx, ebx, 0x1e
mov ebx, edi
shld eax, edi, 4
xor ecx, eax
shld ebx, esi, 0x19
mov eax, dword [esp + 0x120]
xor ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x30]
shld ecx, edi, 0x19
xor ecx, edx
mov edx, eax
mov edi, eax
mov eax, dword [esp + 0x80]
xor edx, esi
and edi, esi
mov esi, dword [esp + 0x90]
and edx, dword [esp + 0x1a0]
xor edi, edx
mov edx, esi
and esi, eax
xor edx, eax
and edx, dword [esp + 0xb0]
xor esi, edx
mov edx, dword [esp + 0x60]
add esi, ebx
mov ebx, dword [esp + 0x20]
adc edi, ecx
add esi, edx
adc edi, ebx
add edx, dword [esp + 0xc0]
mov dword [esp + 0x160], esi
mov dword [esp + 0x1b0], edi
adc ebx, dword [esp + 0x100]
mov ecx, edx
mov eax, edx
mov edi, edx
mov dword [esp + 0x60], edi
shld ecx, ebx, 0x12
shld eax, ebx, 0xe
mov dword [esp + 0x20], ebx
xor eax, ecx
mov ecx, ebx
shld ecx, edx, 0x12
mov edx, ebx
shld edx, edi, 0xe
xor edx, ecx
mov ecx, edi
shld edi, ebx, 0x17
xor edi, edx
mov edx, ebx
shld edx, ecx, 0x17
mov dword [esp + 0x370], edi
xor edx, eax
mov eax, esi
mov dword [esp + 0x3b0], edx
mov edx, dword [esp + 0x1b0]
mov ecx, edx
shld eax, edx, 4
mov ebx, edx
shld ecx, esi, 0x1e
mov edi, ebx
xor ecx, eax
mov eax, edx
mov edx, esi
shld edi, esi, 0x19
shld eax, esi, 4
shld edx, ebx, 0x1e
xor edi, ecx
xor edx, eax
mov eax, esi
shld eax, ebx, 0x19
xor eax, edx
mov edx, dword [esp + 0x1a0]
mov dword [esp + 0x150], eax
mov eax, esi
mov esi, dword [esp + 0x120]
mov ecx, edx
xor ecx, esi
and ecx, ebx
mov ebx, edx
mov edx, dword [esp + 0xb0]
and ebx, esi
mov esi, dword [esp + 0x90]
xor ebx, ecx
mov dword [esp + 0x200], ebx
mov ebx, dword [esp + 0x60]
mov ecx, edx
xor ecx, esi
and edx, esi
mov esi, dword [esp + 0x40]
and ecx, eax
mov eax, dword [esp + 0x70]
xor edx, ecx
mov ecx, dword [esp + 0x140]
mov dword [esp + 0x250], edx
mov edx, dword [esp + 0x10]
xor eax, ecx
and eax, ebx
xor esi, edx
xor eax, ecx
and esi, dword [esp + 0x20]
mov dword [esp + 0x2e8], eax
mov eax, dword [esp + 0x150]
xor esi, edx
add dword [esp + 0x250], eax
mov eax, dword [esp + 0x13c]
mov dword [esp + 0x3f0], esi
mov ecx, dword [eax + 0x54]
mov esi, dword [eax + 0x58]
adc dword [esp + 0x200], edi
mov edi, dword [esp + 0x160]
bswap ecx
bswap esi
mov dword [esp + 0x100], ecx
mov ecx, dword [eax + 0x50]
mov eax, dword [eax + 0x5c]
mov dword [esp + 0xc], esi
mov esi, edi
bswap eax
bswap ecx
mov dword [esp + 0x220], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x180], ecx
mov ecx, dword [esp + 0x1a0]
xor eax, dword [esp + 0x40]
mov dword [esp + 0x240], eax
mov eax, ebx
mov ebx, dword [esp + 0x70]
xor eax, ebx
mov dword [esp + 0x290], eax
mov eax, dword [esp + 0x1b0]
mov edx, eax
and eax, ecx
xor edx, ecx
mov dword [esp + 0x3a0], eax
mov eax, dword [esp + 0x100]
mov ecx, dword [esp + 0x13c]
mov dword [esp + 0x1c0], edx
mov edx, dword [esp + 0xb0]
movq xmm0, qword [ecx + 0x48]
movq xmm1, qword [ecx + 0x78]
xor esi, edx
and edi, edx
add eax, ebx
mov ebx, dword [esp + 0x180]
mov edx, dword [esp + 0x40]
mov dword [esp + 0x1f0], esi
mov esi, dword [esp + 0x220]
mov dword [esp + 0x3e0], edi
mov edi, dword [esp + 0x30]
punpcklbw xmm1, xmm2
punpcklbw xmm0, xmm2
adc ebx, edx
add eax, 0x4ee4b28c
pshufd xmm1, xmm1, 0x4e
pshufd xmm0, xmm0, 0x4e
adc ebx, 0x243185be
mov dword [esp + 0x380], eax
add esi, dword [esp + 0x60]
mov eax, dword [esp + 0xc]
pshuflw xmm1, xmm1, 0x1b
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm3, xmm1, 0x1b
pshufhw xmm7, xmm0, 0x1b
movq xmm1, qword [ecx + 0x70]
mov dword [esp + 0xac], ebx
mov ebx, dword [esp + 0x80]
packuswb xmm7, xmm3
movdqa xmmword [esp + 0x190], xmm3
pshufd xmm0, xmm7, 0x55
movdqa xmmword [esp + 0x150], xmm7
adc eax, dword [esp + 0x20]
mov dword [esp + 0x330], esi
mov esi, dword [esp + 0x240]
punpcklbw xmm1, xmm2
pshufd xmm1, xmm1, 0x4e
pshuflw xmm1, xmm1, 0x1b
mov dword [esp + 0x2d0], eax
movd eax, xmm7
pshufhw xmm1, xmm1, 0x1b
mov dword [esp + 0x320], eax
add dword [esp + 0x140], eax
movd eax, xmm0
movq xmm0, qword [ecx + 0x40]
movdqa xmmword [esp + 0xc0], xmm1
mov dword [esp + 0x310], eax
punpcklbw xmm0, xmm2
adc dword [esp + 0x10], eax
pshufd xmm0, xmm0, 0x4e
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm6, xmm0, 0x1b
packuswb xmm6, xmm1
movd eax, xmm6
pshufd xmm0, xmm6, 0x55
movdqa xmmword [esp + 0xf0], xmm6
add eax, dword [esp + 0x50]
movd ecx, xmm0
adc ecx, dword [esp + 0xd0]
add eax, dword [esp + 0x2e8]
adc ecx, dword [esp + 0x3f0]
add eax, dword [esp + 0x370]
adc ecx, dword [esp + 0x3b0]
add eax, 0xa3030242
adc ecx, 0xd807aa98
add ebx, eax
adc edi, ecx
mov dword [esp + 0x80], ebx
and esi, edi
mov dword [esp + 0x30], edi
xor esi, edx
mov edx, dword [esp + 0x290]
and edx, ebx
xor edx, dword [esp + 0x70]
add edx, dword [esp + 0x140]
adc esi, dword [esp + 0x10]
add eax, dword [esp + 0x250]
mov dword [esp + 0x290], edx
mov edx, ebx
mov dword [esp + 0x240], esi
mov esi, ebx
adc ecx, dword [esp + 0x200]
shld edx, edi, 0xe
shld esi, edi, 0x12
xor edx, esi
mov esi, edi
shld esi, ebx, 0x12
mov dword [esp + 0x70], esi
mov esi, edi
shld esi, ebx, 0xe
xor esi, dword [esp + 0x70]
mov dword [esp + 0x70], ebx
shld dword [esp + 0x70], edi, 0x17
shld edi, ebx, 0x17
mov ebx, eax
xor edi, edx
mov edx, eax
mov dword [esp + 0x50], edi
mov edi, ecx
shld edx, ecx, 4
shld ebx, edi, 0x1e
mov dword [esp + 0x40], edi
xor dword [esp + 0x70], esi
mov esi, ecx
shld ecx, eax, 4
xor ebx, ecx
mov ecx, eax
shld esi, eax, 0x1e
shld ecx, edi, 0x19
xor esi, edx
xor ecx, ebx
mov ebx, edi
shld ebx, eax, 0x19
xor ebx, esi
mov esi, dword [esp + 0x1c0]
and esi, edi
xor esi, dword [esp + 0x3a0]
mov edx, esi
mov esi, eax
mov eax, dword [esp + 0x1f0]
mov dword [esp + 0x10], esi
and eax, esi
xor eax, dword [esp + 0x3e0]
add eax, ecx
mov ecx, edi
mov dword [esp + 0x1f0], eax
mov eax, dword [esp + 0x30]
adc edx, ebx
mov ebx, dword [esp + 0x80]
mov dword [esp + 0x1c0], edx
mov edx, esi
movd xmm0, dword [esp + 0x1f0]
movd xmm3, dword [esp + 0x1c0]
xor eax, dword [esp + 0x20]
xor ebx, dword [esp + 0x60]
punpckldq xmm0, xmm3
movd xmm3, dword [esp + 0x90]
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0x1b0]
xor edi, eax
and ecx, eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x200], edi
mov edi, dword [esp + 0x160]
mov dword [esp + 0x250], ecx
mov ecx, dword [esp + 0x50]
xor edx, edi
and esi, edi
add eax, dword [esp + 0x290]
mov edi, dword [esp + 0x30]
mov dword [esp + 0x140], edx
mov edx, dword [esp + 0xd0]
movd xmm5, esi
adc ecx, dword [esp + 0x240]
add eax, 0x45706fbe
movd xmm2, eax
adc ecx, 0x12835b01
movd xmm1, ecx
mov ecx, dword [esp + 0x140]
punpckldq xmm2, xmm1
movd xmm1, dword [esp + 0x120]
pshufd xmm2, xmm2, 0x44
punpckldq xmm3, xmm1
punpcklqdq xmm0, xmm3
paddq xmm0, xmm2
movdqa xmm1, xmm0
movdqa xmm3, xmm0
movdqa xmm2, xmm0
movdqa xmm4, xmm0
movd eax, xmm0
movdqa xmmword [esp + 0x1c0], xmm0
psrlq xmm1, 0x1c
psrlq xmm3, 0xe
psllq xmm2, 0x32
psllq xmm4, 0x1e
and ecx, eax
mov dword [esp + 0x50], eax
movsd xmm3, xmm1
movdqa xmm1, xmm0
psllq xmm1, 0x24
movsd xmm2, xmm1
movdqa xmm1, xmm0
orpd xmm2, xmm3
movdqa xmm3, xmm0
psrlq xmm1, 0x22
psrlq xmm3, 0x12
movsd xmm3, xmm1
movdqa xmm1, xmm0
psllq xmm1, 0x2e
movsd xmm1, xmm4
movdqa xmm4, xmm0
orpd xmm1, xmm3
movdqa xmm3, xmm0
psllq xmm4, 0x19
xorpd xmm1, xmm2
movdqa xmm2, xmm0
psrlq xmm3, 0x29
psrlq xmm2, 0x27
movsd xmm3, xmm2
movdqa xmm2, xmm0
psllq xmm2, 0x17
movsd xmm2, xmm4
movss xmm4, dword [esp + 0x380]
orpd xmm2, xmm3
movd xmm3, ecx
mov ecx, dword [esp + 0x200]
xorpd xmm2, xmm1
pshufd xmm1, xmm0, 0x55
movd eax, xmm1
mov dword [esp + 0x140], eax
and ecx, eax
movd xmm1, ecx
punpckldq xmm3, xmm1
pshufd xmm1, xmm0, 0xff
movd eax, xmm1
pshufd xmm1, xmm0, 0xee
movdqa xmm0, xmmword [esp + 0x190]
movd ecx, xmm1
movss xmm1, dword [esp + 0xac]
and edx, eax
mov dword [esp + 0x370], eax
xor eax, edi
and ebx, ecx
xor edx, dword [esp + 0x20]
mov dword [esp + 0x3b0], ecx
xor ebx, dword [esp + 0x60]
packuswb xmm0, xmm0
movlhps xmm1, xmm4
movd xmm4, dword [esp + 0x250]
movdqa xmmword [esp + 0x190], xmm0
punpckldq xmm5, xmm4
movd xmm4, edx
pxor xmm5, xmm3
movd xmm3, ebx
mov ebx, ecx
mov ecx, dword [esp + 0x80]
punpcklqdq xmm4, xmm3
shufps xmm3, xmm1, 0x24
shufps xmm1, xmm4, 0x24
movdqa xmm4, xmm6
paddq xmm1, xmm3
movss xmm3, dword [esp + 0x1a0]
psrlq xmm4, 0x13
movsd xmm1, xmm5
movdqa xmm5, xmm6
xor ebx, ecx
paddq xmm1, xmm2
movss xmm2, dword [esp + 0xb0]
psllq xmm5, 0x38
movlhps xmm3, xmm2
pshufd xmm2, xmm1, 0xee
shufps xmm1, xmm3, 0x24
movdqa xmm3, xmm6
paddq xmm1, xmm2
movdqa xmm2, xmm6
psllq xmm3, 0x2d
psrlq xmm2, 1
movdqa xmmword [esp + 0x3a0], xmm1
movsd xmm4, xmm2
movdqa xmm2, xmm6
psllq xmm2, 0x3f
movsd xmm3, xmm2
movdqa xmm2, xmm6
orpd xmm3, xmm4
movdqa xmm4, xmm6
psrlq xmm2, 8
psrlq xmm4, 0x3d
movsd xmm4, xmm2
movdqa xmm2, xmm6
psllq xmm2, 3
movsd xmm2, xmm5
orpd xmm2, xmm4
movd xmm4, dword [esp + 0x160]
xorpd xmm2, xmm3
pshufd xmm3, xmm1, 0xff
movd edx, xmm3
pshufd xmm3, xmm1, 0xee
movd esi, xmm3
and eax, edx
mov dword [esp + 0x20], edx
pshufd xmm3, xmm7, 0xff
movdqa xmm7, xmmword [esp + 0xc0]
and ebx, esi
xor eax, edi
mov dword [esp + 0xd0], esi
movd dword [esp + 0x1a0], xmm3
pshufd xmm3, xmm6, 0xff
xor ebx, ecx
movd dword [esp + 0x3e0], xmm3
movdqa xmm3, xmm6
psrlq xmm6, 6
mov edx, ebx
mov ebx, ecx
psrlq xmm3, 7
add edx, dword [esp + 0x330]
packuswb xmm7, xmm7
movsd xmm6, xmm3
xorpd xmm6, xmm2
pshufd xmm2, xmm1, 0x55
movdqa xmmword [esp + 0xc0], xmm7
adc eax, dword [esp + 0x2d0]
mov dword [esp + 0xac], edx
mov dword [esp + 0x380], eax
mov eax, dword [esp + 0x13c]
mov ecx, dword [eax + 0x64]
mov edx, dword [eax + 0x60]
mov esi, dword [eax + 0x68]
mov eax, dword [eax + 0x6c]
bswap ecx
bswap edx
bswap eax
bswap esi
add ebx, ecx
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x270]
mov dword [esp + 0x1f0], eax
mov dword [esp + 0x240], esi
mov dword [esp + 0x120], edx
adc edi, edx
add eax, 0x3b1696b1
mov dword [esp + 0x80], ebx
mov ebx, dword [esp + 0x260]
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x2a0]
adc esi, 0x80deb1fe
mov dword [esp + 0xb0], eax
mov dword [esp + 0x2d0], esi
mov edx, ecx
mov eax, edi
mov esi, edi
shld edx, edi, 0x1f
shld eax, ecx, 0x1f
shld esi, ecx, 0x18
xor esi, eax
mov eax, ecx
shld eax, edi, 0x18
xor eax, edx
mov edx, ecx
shr ecx, 7
shld edx, edi, 0x19
xor ecx, esi
mov esi, ebx
xor edx, eax
mov eax, dword [esp + 0xe0]
add edx, dword [esp + 0x2c0]
adc ecx, dword [esp + 0x2b0]
shld esi, eax, 0x1f
mov dword [esp + 0x60], edx
mov edx, eax
shld edx, ebx, 0x1f
mov dword [esp + 0x70], ecx
mov ecx, ebx
shld ecx, eax, 0x18
xor ecx, esi
mov esi, eax
shld esi, ebx, 0x18
xor esi, edx
mov edx, eax
shr eax, 7
shld edx, ebx, 0x19
xor eax, ecx
xor edx, esi
add edx, edi
mov edi, dword [esp + 0x230]
adc eax, dword [esp + 0x270]
add edx, dword [esp + 0x100]
mov esi, edi
mov ecx, edi
adc eax, dword [esp + 0x180]
mov dword [esp + 0x270], edx
mov dword [esp + 0x2b0], eax
mov eax, dword [esp + 0x340]
shld esi, eax, 0x1f
shld ecx, eax, 0x18
mov edx, eax
xor ecx, esi
mov esi, eax
shld edx, edi, 0x1f
shld esi, edi, 0x18
xor esi, edx
mov edx, eax
shld edx, edi, 0x19
mov edi, eax
xor edx, esi
mov esi, eax
shr esi, 7
xor esi, ecx
add edx, ebx
mov ebx, dword [esp + 0x360]
adc esi, dword [esp + 0xe0]
add edx, dword [esp + 0x220]
mov dword [esp + 0x2c0], edx
mov edx, dword [esp + 0x110]
adc esi, dword [esp + 0xc]
mov eax, edx
mov ecx, edx
mov dword [esp + 0x330], esi
mov esi, ebx
shld eax, ebx, 0x1f
shld ecx, ebx, 0x18
shld esi, edx, 0x18
xor ecx, eax
mov eax, ebx
shld eax, edx, 0x1f
xor esi, eax
mov eax, ebx
shld eax, edx, 0x19
mov edx, ebx
shr edx, 7
xor eax, esi
xor edx, ecx
add eax, dword [esp + 0x230]
adc edx, edi
add eax, dword [esp + 0x90]
mov edi, dword [esp + 0x1e0]
adc edx, dword [esp + 0x120]
mov dword [esp + 0x200], eax
mov eax, edi
mov ecx, edi
mov dword [esp + 0x250], edx
mov edx, dword [esp + 0x2f0]
shld eax, edx, 0x1f
shld ecx, edx, 0x18
mov esi, edx
xor ecx, eax
mov eax, edx
shld esi, edi, 0x18
shld eax, edi, 0x1f
xor esi, eax
mov eax, edx
shld eax, edi, 0x19
mov edi, edx
xor eax, esi
mov esi, edx
mov edx, dword [esp + 0x1d0]
shr esi, 7
xor esi, ecx
add eax, dword [esp + 0x110]
mov ecx, edx
adc esi, ebx
add eax, dword [esp + 0x1f0]
mov ebx, dword [esp + 0x170]
adc esi, dword [esp + 0x240]
mov dword [esp + 0x290], eax
mov eax, edx
shld ecx, ebx, 0x18
shld eax, ebx, 0x1f
xor ecx, eax
mov eax, ebx
shld eax, edx, 0x1f
mov dword [esp + 0x230], esi
mov esi, ebx
shld esi, edx, 0x18
xor esi, eax
mov eax, ebx
shld eax, edx, 0x19
mov edx, dword [esp + 0x300]
xor eax, esi
mov esi, ebx
shr esi, 7
xor esi, ecx
add eax, dword [esp + 0x1e0]
mov ecx, edx
adc esi, edi
mov edi, dword [esp + 0x210]
mov ebx, eax
mov eax, edx
mov dword [esp + 0xe0], esi
shld eax, edi, 0x1f
shld ecx, edi, 0x18
mov esi, edi
xor ecx, eax
mov eax, edi
shld esi, edx, 0x18
shld eax, edx, 0x1f
xor esi, eax
mov eax, edi
shld eax, edx, 0x19
mov edx, edi
mov edi, dword [esp + 0xd0]
shr edx, 7
xor eax, esi
mov esi, dword [esp + 0x20]
xor edx, ecx
add eax, dword [esp + 0x1d0]
mov dword [esp + 0x110], eax
movd eax, xmm0
adc edx, dword [esp + 0x170]
movapd xmmword [esp + 0x170], xmm6
movaps xmm6, xmmword [esp + 0x1c0]
mov dword [esp + 0x2f0], eax
add eax, 0xcf692694
mov dword [esp + 0x260], eax
mov eax, dword [esp + 0x1a0]
mov dword [esp + 0x360], edx
mov edx, dword [esp + 0x3e0]
adc eax, 0xc19bf174
mov dword [esp + 0x2a0], eax
mov eax, dword [esp + 0x60]
add eax, dword [esp + 0x320]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x70]
adc eax, dword [esp + 0x310]
add dword [esp + 0x80], 0xf27b896f
movd xmm0, dword [esp + 0x80]
mov dword [esp + 0x70], eax
movd eax, xmm7
adc dword [esp + 0x30], 0x72be5d74
mov ecx, eax
add ecx, 0x25c71235
mov dword [esp + 0x340], ecx
mov ecx, edx
adc ecx, 0x9bdc06a7
add ebx, eax
mov eax, edi
mov dword [esp + 0x320], ecx
mov ecx, edi
adc dword [esp + 0xe0], edx
shld eax, esi, 0x12
mov edx, esi
mov dword [esp + 0x1d0], ebx
mov ebx, dword [esp + 0x50]
shld ecx, esi, 0xe
shld edx, edi, 0xe
xor ecx, eax
mov eax, esi
shld eax, edi, 0x12
xor edx, eax
mov eax, edi
shld eax, esi, 0x17
shld esi, edi, 0x17
xor eax, edx
xor esi, ecx
movd edx, xmm2
add eax, dword [esp + 0xac]
mov ecx, edx
mov dword [esp + 0x1e0], edx
adc esi, dword [esp + 0x380]
add eax, 0xd5ffb4e2
movd xmm2, eax
movd eax, xmm1
mov edi, eax
adc esi, 0x550c7dc3
xor ebx, dword [esp + 0x10]
shld ecx, eax, 0x1e
shld edi, edx, 0x1e
movd xmm3, esi
mov esi, eax
shld esi, edx, 4
punpckldq xmm2, xmm3
xor ecx, esi
mov esi, edx
pshufd xmm2, xmm2, 0x44
shld esi, eax, 4
and ebx, eax
xor edi, esi
mov esi, edx
mov edx, eax
shld esi, eax, 0x19
mov eax, dword [esp + 0x1e0]
xor esi, ecx
mov ecx, dword [esp + 0x140]
shld edx, eax, 0x19
xor edx, edi
mov edi, dword [esp + 0x40]
xor ecx, edi
and ecx, eax
mov eax, dword [esp + 0x50]
and eax, dword [esp + 0x10]
xor eax, ebx
mov ebx, dword [esp + 0x140]
and ebx, edi
xor ebx, ecx
add eax, edx
mov ecx, dword [esp + 0x3b0]
mov edx, dword [esp + 0x20]
adc ebx, esi
movd xmm7, eax
mov eax, dword [esp + 0x370]
mov esi, dword [esp + 0xd0]
movd xmm3, ebx
punpckldq xmm7, xmm3
movd xmm3, dword [esp + 0x1b0]
xor ecx, esi
xor eax, edx
punpckldq xmm4, xmm3
punpcklqdq xmm7, xmm4
paddq xmm7, xmm2
pshufd xmm2, xmm7, 0xee
movdqa xmm3, xmm7
movdqa xmm4, xmm7
movdqa xmm5, xmm7
movd ebx, xmm2
pshufd xmm2, xmm7, 0xff
psrlq xmm3, 0xe
psllq xmm4, 0x32
psllq xmm5, 0x2e
movd edi, xmm2
movdqa xmm2, xmm7
and ecx, ebx
xor esi, ebx
psrlq xmm2, 0x1c
and eax, edi
xor edx, edi
movsd xmm3, xmm2
movdqa xmm2, xmm7
psllq xmm2, 0x24
movsd xmm4, xmm2
movdqa xmm2, xmm7
orpd xmm4, xmm3
movdqa xmm3, xmm7
psrlq xmm2, 0x22
psrlq xmm3, 0x12
movsd xmm3, xmm2
movdqa xmm2, xmm7
psllq xmm2, 0x1e
movsd xmm5, xmm2
movdqa xmm2, xmm7
orpd xmm5, xmm3
psrlq xmm2, 0x27
movdqa xmm3, xmm7
xorpd xmm5, xmm4
movdqa xmm4, xmm7
psllq xmm3, 0x17
psrlq xmm4, 0x29
movsd xmm4, xmm2
movdqa xmm2, xmm7
psllq xmm2, 0x19
movsd xmm3, xmm2
pshufd xmm2, xmm7, 0x55
orpd xmm3, xmm4
movd dword [esp + 0x1e0], xmm2
movd xmm2, ecx
movd xmm4, eax
xorpd xmm3, xmm5
punpcklqdq xmm4, xmm2
movaps xmm5, xmm6
movdqa xmm2, xmm1
shufps xmm5, xmm4, 0x24
pxor xmm2, xmm6
movdqa xmm4, xmm1
pand xmm2, xmm7
pand xmm4, xmm6
xorps xmm5, xmm6
pxor xmm4, xmm2
movd xmm2, dword [esp + 0x30]
punpckldq xmm0, xmm2
movdqa xmm2, xmm6
pshufd xmm6, xmm0, 0x44
movss xmm0, dword [esp + 0x40]
paddq xmm6, xmm5
movsd xmm6, xmm4
paddq xmm6, xmm3
movss xmm3, dword [esp + 0x10]
movlhps xmm0, xmm3
pshufd xmm3, xmm6, 0xee
shufps xmm6, xmm0, 0x24
paddq xmm6, xmm3
pshufd xmm0, xmm6, 0xee
movdqa xmm3, xmm6
movdqa xmm5, xmm6
movdqa xmm4, xmm6
movdqa xmmword [esp + 0x40], xmm6
movd eax, xmm0
pshufd xmm0, xmm6, 0xff
psrlq xmm3, 0xe
psllq xmm5, 0x32
psllq xmm4, 0x2e
movd ecx, xmm0
movdqa xmm0, xmm6
and esi, eax
xor ebx, eax
mov dword [esp + 0x140], eax
psrlq xmm0, 0x1c
and edx, ecx
xor edi, ecx
mov dword [esp + 0x50], ecx
movsd xmm3, xmm0
movdqa xmm0, xmm6
psllq xmm0, 0x24
movsd xmm5, xmm0
movdqa xmm0, xmm6
orpd xmm5, xmm3
movdqa xmm3, xmm6
psrlq xmm0, 0x22
psrlq xmm3, 0x12
movsd xmm3, xmm0
movdqa xmm0, xmm6
psllq xmm0, 0x1e
movsd xmm4, xmm0
movdqa xmm0, xmm6
orpd xmm4, xmm3
psrlq xmm0, 0x27
movdqa xmm3, xmm6
xorpd xmm4, xmm5
movdqa xmm5, xmm6
psllq xmm3, 0x17
psrlq xmm5, 0x29
movsd xmm5, xmm0
movdqa xmm0, xmm6
psllq xmm0, 0x19
movsd xmm3, xmm0
movss xmm0, dword [esp + 0x2d0]
orpd xmm3, xmm5
movd xmm5, esi
xorpd xmm3, xmm4
movss xmm4, dword [esp + 0xb0]
movlhps xmm0, xmm4
movdqa xmm4, xmm6
shufps xmm4, xmm0, 0x24
movd xmm0, edx
punpcklqdq xmm0, xmm5
movdqa xmm5, xmm7
paddq xmm4, xmm2
shufps xmm5, xmm0, 0x24
movdqa xmm0, xmm7
pxor xmm0, xmm1
xorps xmm5, xmm1
pand xmm0, xmm6
movdqa xmm6, xmm7
paddq xmm5, xmm4
pand xmm6, xmm1
movaps xmm1, xmmword [esp + 0x40]
pxor xmm6, xmm0
movsd xmm5, xmm6
paddq xmm5, xmm3
pshufd xmm0, xmm5, 0xee
punpcklqdq xmm5, xmm2
paddq xmm5, xmm0
pshufd xmm0, xmm5, 0xee
movdqa xmm4, xmm5
movdqa xmm3, xmm5
movdqa xmm6, xmm5
movdqa xmm2, xmm5
movd edx, xmm0
pshufd xmm0, xmm5, 0xff
psrlq xmm4, 0xe
psllq xmm3, 0x32
psllq xmm6, 0x1e
movd esi, xmm0
movdqa xmm0, xmm5
and ebx, edx
mov eax, edx
mov dword [esp + 0x160], edx
psrlq xmm0, 0x1c
and edi, esi
mov dword [esp + 0xb0], esi
xor eax, dword [esp + 0x140]
movsd xmm4, xmm0
movdqa xmm0, xmm5
mov ecx, dword [esp + 0xb0]
psllq xmm0, 0x24
movsd xmm3, xmm0
movdqa xmm0, xmm5
orpd xmm3, xmm4
movdqa xmm4, xmm5
psrlq xmm0, 0x22
psrlq xmm4, 0x12
xor ecx, dword [esp + 0x50]
movsd xmm4, xmm0
movdqa xmm0, xmm5
psllq xmm0, 0x2e
movsd xmm0, xmm6
movdqa xmm6, xmm5
orpd xmm0, xmm4
movdqa xmm4, xmm5
psllq xmm6, 0x19
xorpd xmm0, xmm3
movdqa xmm3, xmm5
psrlq xmm4, 0x29
psrlq xmm3, 0x27
movsd xmm4, xmm3
movdqa xmm3, xmm5
psllq xmm3, 0x17
movsd xmm3, xmm6
movd xmm6, edi
orpd xmm3, xmm4
movss xmm4, dword [esp + 0x340]
xorpd xmm3, xmm0
movss xmm0, dword [esp + 0x320]
movlhps xmm0, xmm4
movdqa xmm4, xmm5
movaps xmm5, xmm1
shufps xmm4, xmm0, 0x24
movd xmm0, ebx
punpcklqdq xmm6, xmm0
movdqa xmm0, xmm2
shufps xmm5, xmm6, 0x24
movaps xmm6, xmm1
movdqa xmmword [esp + 0x1b0], xmm0
xorps xmm6, xmm7
xorps xmm5, xmm7
andps xmm6, xmm2
movaps xmm2, xmm1
movdqa xmm1, xmmword [esp + 0x3a0]
andps xmm2, xmm7
xorps xmm2, xmm6
movdqa xmm6, xmm0
paddq xmm4, xmm1
paddq xmm5, xmm4
movsd xmm5, xmm2
paddq xmm5, xmm3
pshufd xmm2, xmm5, 0xee
punpcklqdq xmm5, xmm1
paddq xmm5, xmm2
pshufd xmm1, xmm5, 0xee
movdqa xmm2, xmm5
movdqa xmm3, xmm5
movdqa xmm4, xmm5
movd edx, xmm1
pshufd xmm1, xmm5, 0xff
psrlq xmm2, 0xe
psllq xmm3, 0x24
psrlq xmm4, 0x12
movd esi, xmm1
pshufd xmm1, xmm0, 0x55
and eax, edx
mov dword [esp + 0x30], edx
movd dword [esp + 0x2d0], xmm1
movdqa xmm1, xmm5
and ecx, esi
mov dword [esp + 0x20], esi
psrlq xmm1, 0x1c
movsd xmm2, xmm1
movdqa xmm1, xmm5
psllq xmm1, 0x32
movsd xmm1, xmm3
movdqa xmm3, xmm5
orpd xmm1, xmm2
movdqa xmm2, xmm5
psllq xmm3, 0x2e
psrlq xmm2, 0x22
movsd xmm4, xmm2
movdqa xmm2, xmm5
psllq xmm2, 0x1e
movsd xmm3, xmm2
movdqa xmm2, xmm5
orpd xmm3, xmm4
psrlq xmm2, 0x29
movdqa xmm4, xmm5
xorpd xmm3, xmm1
movdqa xmm1, xmm5
psllq xmm4, 0x19
psrlq xmm1, 0x27
movsd xmm2, xmm1
movdqa xmm1, xmm5
psllq xmm1, 0x17
movsd xmm1, xmm4
movd xmm4, ecx
movd ecx, xmm7
orpd xmm1, xmm2
movd xmm2, eax
xorpd xmm1, xmm3
punpcklqdq xmm4, xmm2
movdqa xmm3, xmm5
movss xmm2, dword [esp + 0x2a0]
shufps xmm3, xmm4, 0x24
movss xmm4, dword [esp + 0x260]
movlhps xmm2, xmm4
movdqa xmm4, xmm0
shufps xmm4, xmm2, 0x24
movdqa xmm2, xmm0
movdqa xmm0, xmmword [esp + 0x40]
paddq xmm4, xmm7
pxor xmm2, xmm0
xorps xmm3, xmm0
pand xmm6, xmm0
movd xmm0, dword [esp + 0x300]
pand xmm2, xmm5
paddq xmm4, xmm3
pxor xmm6, xmm2
movd xmm2, dword [esp + 0x60]
movsd xmm4, xmm6
paddq xmm4, xmm1
pshufd xmm1, xmm4, 0xff
movd esi, xmm1
pshufd xmm1, xmm4, 0xee
paddq xmm4, xmm1
movd eax, xmm1
pshufd xmm1, xmm4, 0x55
add eax, ecx
movd dword [esp + 0x2a0], xmm1
movd xmm1, dword [esp + 0x70]
adc esi, dword [esp + 0x1e0]
mov dword [esp + 0xd0], eax
punpckldq xmm2, xmm1
movd xmm1, dword [esp + 0x210]
punpckldq xmm0, xmm1
punpcklqdq xmm0, xmm2
paddq xmm0, xmmword [esp + 0x170]
movdqa xmm3, xmm0
movdqa xmm0, xmmword [esp + 0x150]
movdqa xmmword [esp + 0x260], xmm3
movdqa xmm1, xmm0
movdqa xmm2, xmm0
movdqa xmm6, xmm0
movdqa xmm7, xmm0
psrlq xmm1, 1
psrlq xmm2, 0x13
psllq xmm6, 0x3f
psllq xmm7, 3
movsd xmm2, xmm1
movdqa xmm1, xmm0
psllq xmm1, 0x2d
movsd xmm1, xmm6
movdqa xmm6, xmm0
orpd xmm1, xmm2
movdqa xmm2, xmm0
psrlq xmm6, 0x3d
psrlq xmm2, 8
movsd xmm6, xmm2
movdqa xmm2, xmm0
psllq xmm2, 0x38
movsd xmm7, xmm2
movdqa xmm2, xmm0
orpd xmm7, xmm6
psrlq xmm2, 6
movss xmm6, dword [esp + 0x270]
xorpd xmm7, xmm1
movdqa xmm1, xmm0
movaps xmm0, xmmword [esp + 0xf0]
psrlq xmm1, 7
movsd xmm2, xmm1
movss xmm1, dword [esp + 0x2b0]
xorpd xmm2, xmm7
movlhps xmm1, xmm6
movdqa xmm6, xmm3
shufps xmm0, xmm1, 0x24
paddq xmm0, xmm2
movdqa xmm2, xmm5
pshufd xmm1, xmm0, 0xff
movdqa xmmword [esp + 0x270], xmm0
movd ebx, xmm1
pshufd xmm1, xmm3, 0xff
movdqa xmm3, xmmword [esp + 0x1b0]
movd dword [esp + 0x60], xmm1
pshufd xmm1, xmm5, 0x55
mov edx, ebx
mov dword [esp + 0x320], ebx
movd dword [esp + 0x310], xmm1
movdqa xmm1, xmm5
pxor xmm1, xmm3
pand xmm2, xmm3
movdqa xmm3, xmm0
pand xmm1, xmm4
pxor xmm2, xmm1
pshufd xmm1, xmm2, 0x55
movd dword [esp + 0x170], xmm2
movd dword [esp + 0x70], xmm1
pshufd xmm1, xmm0, 0xee
pshufd xmm0, xmm6, 0xee
movd edi, xmm1
movdqa xmmword [esp + 0x1e0], xmm0
movdqa xmmword [esp + 0x300], xmm1
mov ecx, edi
shld edx, edi, 3
mov eax, edi
mov dword [esp + 0x340], edi
shld ecx, ebx, 0xd
shld eax, ebx, 3
xor edx, ecx
mov ecx, ebx
shld ecx, edi, 0xd
xor eax, ecx
mov ecx, ebx
shr ebx, 6
shld ecx, edi, 0x1a
mov edi, dword [esp + 0xd0]
xor ebx, edx
mov edx, esi
xor ecx, eax
mov dword [esp + 0x10], ebx
mov dword [esp + 0x80], ecx
mov eax, edi
mov ecx, edi
shld eax, esi, 0x12
shld ecx, edx, 0xe
mov esi, edi
mov edi, edx
mov ebx, edi
xor ecx, eax
mov eax, edx
mov edx, esi
mov dword [esp + 0x1c0], edi
shld eax, esi, 0x12
shld ebx, esi, 0xe
shld esi, edi, 0x17
xor ebx, eax
mov eax, dword [esp + 0xb0]
xor esi, ebx
mov ebx, edi
shld ebx, edx, 0x17
mov edx, dword [esp + 0x20]
xor ebx, ecx
mov ecx, dword [esp + 0x30]
xor edx, eax
and edx, edi
mov edi, dword [esp + 0xd0]
xor edx, eax
mov eax, dword [esp + 0x160]
xor ecx, eax
and ecx, edi
mov edi, dword [esp + 0x60]
xor ecx, eax
movd eax, xmm0
add eax, dword [esp + 0x140]
adc edi, dword [esp + 0x50]
add eax, ecx
movd dword [esp + 0xac], xmm5
adc edi, edx
add eax, esi
adc edi, ebx
mov ebx, dword [esp + 0x2a0]
add eax, 0x9ef14ad2
movd xmm2, eax
movd eax, xmm4
adc edi, 0xe49b69c1
mov ecx, eax
mov esi, eax
movd xmm1, edi
punpckldq xmm2, xmm1
mov edx, ebx
shld ecx, ebx, 4
shld esi, ebx, 0x1e
pshufd xmm2, xmm2, 0x44
shld edx, eax, 0x1e
xor edx, ecx
mov ecx, ebx
shld ecx, eax, 4
xor esi, ecx
mov ecx, eax
shld ecx, ebx, 0x19
shld ebx, eax, 0x19
mov eax, dword [esp + 0x70]
xor ebx, edx
mov edx, dword [esp + 0x170]
xor ecx, esi
add edx, ecx
mov ecx, dword [esp + 0x1c0]
adc eax, ebx
movd xmm6, edx
mov edx, dword [esp + 0xd0]
movd xmm0, eax
punpcklqdq xmm0, xmm6
shufps xmm0, xmmword [esp + 0x40], 0x42
xor ecx, dword [esp + 0x20]
xor edx, dword [esp + 0x30]
paddq xmm0, xmm2
pshufd xmm2, xmm0, 0xee
movdqa xmm6, xmm0
movdqa xmm7, xmm0
movdqa xmm1, xmm0
movd dword [esp + 0x2a0], xmm0
movd eax, xmm2
pshufd xmm2, xmm0, 0xff
psrlq xmm6, 0xe
psllq xmm7, 0x32
psllq xmm1, 0x2e
movd esi, xmm2
movdqa xmm2, xmm0
and edx, eax
mov dword [esp + 0xb0], eax
psrlq xmm2, 0x1c
and ecx, esi
mov dword [esp + 0x140], esi
movsd xmm6, xmm2
movdqa xmm2, xmm0
psllq xmm2, 0x24
movsd xmm7, xmm2
movdqa xmm2, xmm0
orpd xmm7, xmm6
movdqa xmm6, xmm0
psrlq xmm2, 0x22
psrlq xmm6, 0x12
movsd xmm6, xmm2
movdqa xmm2, xmm0
psllq xmm2, 0x1e
movsd xmm1, xmm2
movdqa xmm2, xmm0
orpd xmm1, xmm6
psrlq xmm2, 0x27
movdqa xmm6, xmm0
xorpd xmm1, xmm7
movdqa xmm7, xmm0
psllq xmm6, 0x17
psrlq xmm7, 0x29
movsd xmm7, xmm2
movdqa xmm2, xmm0
psllq xmm2, 0x19
movsd xmm6, xmm2
movdqa xmm2, xmmword [esp + 0x1b0]
orpd xmm6, xmm7
movd xmm7, ecx
xorpd xmm6, xmm1
movdqa xmm1, xmm4
shufps xmm1, xmmword [esp + 0x480], 0x24
movd ebx, xmm2
paddq xmm2, xmm3
paddq xmm2, xmm1
movd xmm1, edx
movdqa xmm3, xmm2
punpcklqdq xmm7, xmm1
movdqa xmm2, xmm4
movdqa xmm1, xmm4
shufps xmm2, xmm7, 0x24
pxor xmm1, xmm5
movdqa xmm7, xmm4
xorps xmm2, xmm5
pand xmm1, xmm0
pand xmm7, xmm5
pxor xmm7, xmm1
paddq xmm2, xmm3
movsd xmm2, xmm7
movss xmm7, dword [esp + 0x120]
paddq xmm2, xmm6
pshufd xmm1, xmm2, 0xff
movd esi, xmm1
pshufd xmm1, xmm2, 0xee
paddq xmm2, xmm1
movd eax, xmm1
pshufd xmm1, xmm2, 0x55
movdqa xmm5, xmm2
movd dword [esp + 0x40], xmm2
add eax, ebx
movd dword [esp + 0x70], xmm1
pshufd xmm1, xmm0, 0x55
pxor xmm5, xmm0
adc esi, dword [esp + 0x2d0]
mov edx, eax
mov ecx, eax
mov edi, eax
movd dword [esp + 0x2b0], xmm1
movdqa xmm1, xmm0
movd dword [esp + 0x210], xmm5
pxor xmm1, xmm4
pand xmm1, xmm2
pand xmm2, xmm0
pand xmm0, xmm4
pxor xmm0, xmm1
movd dword [esp + 0x370], xmm2
shld edx, esi, 0x12
shld ecx, esi, 0xe
mov ebx, esi
mov dword [esp + 0x120], esi
shld edi, esi, 0x17
pshufd xmm1, xmm0, 0x55
movd dword [esp + 0x60], xmm0
pshufd xmm0, xmm5, 0x55
xor ecx, edx
mov edx, esi
shld esi, eax, 0x17
shld ebx, eax, 0x12
movss xmm5, dword [esp + 0x180]
movd dword [esp + 0x160], xmm0
pshufd xmm0, xmm2, 0x55
movd dword [esp + 0x50], xmm1
movss xmm1, dword [esp + 0x290]
movss xmm2, dword [esp + 0x220]
shld edx, eax, 0xe
xor esi, ecx
movd dword [esp + 0x3b0], xmm0
movss xmm0, dword [esp + 0x230]
xor edx, ebx
mov dword [esp + 0x3e0], esi
mov esi, dword [esp + 0x40]
xor edi, edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0x2d0], edi
unpcklps xmm1, xmm0
movss xmm0, dword [esp + 0xc]
mov edi, esi
mov ecx, edx
mov ebx, edx
shld ecx, esi, 0x1e
shld edi, ebx, 0x19
unpcklps xmm2, xmm0
movss xmm0, dword [esp + 0x240]
movlhps xmm2, xmm1
movss xmm1, dword [esp + 0x1f0]
movaps xmmword [esp + 0x3a0], xmm2
unpcklps xmm1, xmm0
movss xmm0, dword [esp + 0xe0]
mov dword [esp + 0xe0], eax
mov eax, esi
shld eax, edx, 4
movaps xmm2, xmm1
movaps xmmword [esp + 0x170], xmm1
movss xmm1, dword [esp + 0x1d0]
xor ecx, eax
mov eax, edx
mov edx, esi
shld eax, esi, 4
shld edx, ebx, 0x1e
xor edx, eax
mov eax, dword [esp + 0xb0]
xor edi, edx
mov edx, ebx
mov ebx, dword [esp + 0x120]
unpcklps xmm1, xmm0
movss xmm0, dword [esp + 0x90]
shld edx, esi, 0x19
mov esi, dword [esp + 0x1c0]
xor edx, ecx
mov ecx, dword [esp + 0xe0]
xor eax, dword [esp + 0xd0]
unpcklps xmm0, xmm7
movlhps xmm0, xmm1
movaps xmmword [esp + 0x380], xmm0
mov dword [esp + 0x1d0], eax
mov eax, dword [esp + 0x140]
xor eax, esi
and eax, ebx
mov dword [esp + 0x230], eax
mov eax, dword [esp + 0x1d0]
xor dword [esp + 0x230], esi
and eax, ecx
xor eax, dword [esp + 0xd0]
add dword [esp + 0x60], edi
adc dword [esp + 0x50], edx
mov dword [esp + 0x1d0], eax
xor ecx, dword [esp + 0xb0]
mov eax, dword [esp + 0x110]
xor ebx, dword [esp + 0x140]
mov dword [esp + 0x290], ecx
add eax, dword [esp + 0x2f0]
mov ecx, dword [esp + 0x360]
mov dword [esp + 0x240], ebx
mov ebx, dword [esp + 0x220]
adc ecx, dword [esp + 0x1a0]
movd xmm1, eax
mov eax, dword [esp + 0xc]
mov edx, ebx
movd xmm0, ecx
mov esi, eax
mov ecx, eax
mov edi, eax
shld edx, eax, 0x18
punpcklqdq xmm0, xmm1
movss xmm1, dword [esp + 0x100]
shld esi, ebx, 0x1f
shld ecx, ebx, 0x18
shld edi, ebx, 0x19
shld ebx, eax, 0x1f
shr eax, 7
shufps xmm2, xmm0, 0x24
xor ecx, esi
xor edx, ebx
mov ebx, dword [esp + 0x30]
movaps xmmword [esp + 0x1f0], xmm2
movaps xmm2, xmmword [esp + 0x260]
xor edi, ecx
xor eax, edx
mov ecx, dword [esp + 0x50]
add edi, dword [esp + 0x100]
movlhps xmm5, xmm1
shufps xmm5, xmm2, 0xe2
movaps xmm1, xmm2
movaps xmm3, xmm2
movaps xmm0, xmm5
psrlq xmm1, 0x13
movaps xmm6, xmm5
psllq xmm3, 3
adc eax, dword [esp + 0x180]
psrlq xmm0, 1
psllq xmm6, 0x3f
shufps xmm0, xmm1, 0xe4
movaps xmm1, xmm2
psllq xmm1, 0x2d
shufps xmm6, xmm1, 0xe4
movaps xmm1, xmm5
mov dword [esp + 0xc], eax
orps xmm6, xmm0
movaps xmm0, xmm2
psrlq xmm1, 8
psrlq xmm0, 0x3d
shufps xmm1, xmm0, 0xe4
movaps xmm0, xmm5
psrlq xmm5, 7
psllq xmm0, 0x38
shufps xmm0, xmm3, 0xe4
orps xmm0, xmm1
movaps xmm1, xmm2
paddq xmm2, xmmword [esp + 0x1e0]
psrlq xmm1, 6
xorps xmm0, xmm6
shufps xmm5, xmm1, 0xe4
movss xmm1, dword [esp + 0x2c0]
xorps xmm5, xmm0
movss xmm0, dword [esp + 0x330]
mov dword [esp + 0x330], edi
movlhps xmm0, xmm1
movaps xmm1, xmmword [esp + 0x150]
shufps xmm1, xmm0, 0x24
paddq xmm1, xmm5
pshufd xmm0, xmm1, 0xff
movdqa xmm5, xmm1
movdqa xmmword [esp + 0x1a0], xmm1
movd dword [esp + 0x1b0], xmm0
movss xmm0, dword [esp + 0x90]
psllq xmm5, 0x2d
movlhps xmm7, xmm0
movdqa xmm0, xmm1
shufps xmm7, xmm1, 0xe2
psrlq xmm0, 0x13
movaps xmm3, xmm7
movaps xmm6, xmm7
psrlq xmm3, 1
psllq xmm6, 0x38
shufps xmm3, xmm0, 0xe4
movaps xmm0, xmm7
psllq xmm0, 0x3f
shufps xmm0, xmm5, 0xe4
movaps xmm5, xmm7
psrlq xmm7, 7
orps xmm0, xmm3
movdqa xmm3, xmm1
psrlq xmm5, 8
psrlq xmm3, 0x3d
shufps xmm5, xmm3, 0xe4
movdqa xmm3, xmm1
psllq xmm3, 3
shufps xmm6, xmm3, 0xe4
orps xmm6, xmm5
xorps xmm6, xmm0
pshufd xmm0, xmm1, 0xee
psrlq xmm1, 6
shufps xmm7, xmm1, 0xe4
movdqa xmm1, xmmword [esp + 0xc0]
movdqa xmmword [esp + 0x110], xmm0
xorps xmm7, xmm6
movdqa xmm6, xmmword [esp + 0xf0]
paddq xmm7, xmmword [esp + 0x3a0]
punpcklqdq xmm1, xmm2
movdqa xmmword [esp + 0xc0], xmm1
punpckhqdq xmm6, xmm7
pshufd xmm0, xmm7, 0xff
movdqa xmm2, xmm7
movdqa xmmword [esp + 0x2f0], xmm7
movdqa xmm1, xmm6
movd dword [esp + 0x2c0], xmm0
movdqa xmm0, xmm7
psllq xmm2, 0x2d
movdqa xmm3, xmm6
psrlq xmm0, 0x13
psrlq xmm1, 1
psllq xmm3, 0x38
shufps xmm1, xmm0, 0xe4
movdqa xmm0, xmm6
psllq xmm0, 0x3f
shufps xmm0, xmm2, 0xe4
movdqa xmm2, xmm6
psrlq xmm6, 7
orps xmm0, xmm1
movdqa xmm1, xmm7
psrlq xmm2, 8
psrlq xmm1, 0x3d
shufps xmm2, xmm1, 0xe4
movdqa xmm1, xmm7
psllq xmm1, 3
shufps xmm3, xmm1, 0xe4
orps xmm3, xmm2
xorps xmm3, xmm0
movdqa xmm0, xmm7
psrlq xmm0, 6
shufps xmm6, xmm0, 0xe4
xorps xmm6, xmm3
paddq xmm6, xmmword [esp + 0x1f0]
pshufd xmm0, xmm6, 0xff
movdqa xmmword [esp + 0xf0], xmm6
movd dword [esp + 0x360], xmm0
movdqa xmm0, xmmword [esp + 0x110]
movd eax, xmm0
pshufd xmm0, xmm7, 0xee
pshufd xmm7, xmm6, 0xee
mov dword [esp + 0x1f0], eax
add ebx, eax
mov eax, dword [esp + 0x20]
adc eax, dword [esp + 0x1b0]
add ebx, dword [esp + 0x1d0]
movdqa xmmword [esp + 0x1d0], xmm0
adc eax, dword [esp + 0x230]
add ebx, dword [esp + 0x2d0]
adc eax, dword [esp + 0x3e0]
add ebx, 0x8b8cd5b5
adc eax, 0xfc19dc6
add dword [esp + 0x60], ebx
adc ecx, eax
add ebx, dword [esp + 0xac]
mov dword [esp + 0x50], ecx
adc eax, dword [esp + 0x310]
mov esi, ebx
mov edx, ebx
mov dword [esp + 0x30], ebx
shld esi, eax, 0x12
shld edx, eax, 0xe
mov edi, eax
mov dword [esp + 0x20], eax
xor edx, esi
mov esi, eax
shld edi, ebx, 0x12
shld esi, ebx, 0xe
xor esi, edi
mov edi, ebx
shld edi, eax, 0x17
shld eax, ebx, 0x17
xor eax, edx
xor edi, esi
mov esi, ecx
mov edx, ecx
mov dword [esp + 0x230], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x310], edi
mov edi, eax
shld esi, eax, 0x1e
mov ebx, eax
shld edi, ecx, 4
shld ecx, eax, 4
shld ebx, edx, 0x19
xor esi, edi
mov edi, eax
shld edi, edx, 0x1e
xor edi, ecx
mov ecx, dword [esp + 0x290]
xor ebx, edi
mov edi, edx
shld edi, eax, 0x19
xor edi, esi
mov esi, dword [esp + 0x160]
and ecx, dword [esp + 0x30]
and esi, edx
mov edx, dword [esp + 0x210]
xor esi, dword [esp + 0x3b0]
xor ecx, dword [esp + 0xb0]
and edx, eax
mov eax, dword [esp + 0x240]
xor edx, dword [esp + 0x370]
mov dword [esp + 0x290], ecx
and eax, dword [esp + 0x20]
xor eax, dword [esp + 0x140]
add edx, ebx
mov ebx, dword [esp + 0x1f0]
adc esi, edi
mov dword [esp + 0x210], edx
mov dword [esp + 0x160], esi
movd xmm1, dword [esp + 0x210]
mov dword [esp + 0x240], eax
mov eax, dword [esp + 0x1b0]
mov edx, ebx
mov esi, ebx
shld edx, eax, 0x1f
shld esi, eax, 0x18
mov edi, eax
xor esi, edx
mov edx, eax
shld edi, ebx, 0x18
shld edx, ebx, 0x1f
shrd ebx, eax, 7
shr eax, 7
xor edi, edx
xor eax, esi
mov edx, dword [esp + 0x50]
mov esi, dword [esp + 0x60]
xor ebx, edi
mov edi, eax
mov eax, dword [esp + 0x20]
mov ecx, edx
mov dword [esp + 0x90], esi
xor eax, dword [esp + 0x120]
mov dword [esp + 0x180], eax
mov eax, dword [esp + 0x30]
xor eax, dword [esp + 0xe0]
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0x70]
xor ecx, eax
and edx, eax
movd eax, xmm0
mov dword [esp + 0x2d0], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x220], edx
mov edx, dword [esp + 0x1c0]
and esi, ecx
xor dword [esp + 0x90], ecx
add ebx, dword [esp + 0x340]
mov ecx, dword [esp + 0x80]
mov dword [esp + 0xac], esi
movd xmm5, dword [esp + 0xac]
adc edi, dword [esp + 0x320]
mov dword [esp + 0x1f0], ebx
add eax, dword [esp + 0xb0]
mov ebx, dword [esp + 0x2c0]
adc ebx, dword [esp + 0x140]
add eax, 0x592b0275
mov dword [esp + 0x1b0], edi
mov edi, dword [esp + 0xd0]
movdqa xmmword [esp + 0x140], xmm7
mov dword [esp + 0xb0], eax
movd eax, xmm7
adc ebx, 0x2de92c6f
add eax, dword [esp + 0x30]
mov dword [esp + 0x320], eax
mov eax, dword [esp + 0x20]
adc dword [esp + 0x360], eax
add ecx, dword [esp + 0x200]
mov eax, dword [esp + 0x10]
adc eax, dword [esp + 0x250]
add edi, ecx
mov dword [esp + 0x80], ecx
adc edx, eax
add edi, dword [esp + 0x290]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x2d0]
adc edx, dword [esp + 0x240]
add edi, dword [esp + 0x310]
adc edx, dword [esp + 0x230]
add edi, 0x77ac9c65
movd xmm2, edi
adc edx, 0x240ca1cc
movd xmm0, edx
mov edx, dword [esp + 0x90]
punpckldq xmm2, xmm0
movd xmm0, dword [esp + 0x160]
punpckldq xmm1, xmm0
pshufd xmm0, xmm2, 0x44
punpcklqdq xmm1, xmm4
paddq xmm1, xmm0
pshufd xmm0, xmm1, 0xff
movdqa xmm2, xmm1
movdqa xmm3, xmm1
movdqa xmm4, xmm1
movdqa xmmword [esp + 0x250], xmm1
movd ecx, xmm0
pshufd xmm0, xmm1, 0xee
psrlq xmm2, 0xe
psllq xmm3, 0x32
psllq xmm4, 0x2e
movd esi, xmm0
movdqa xmm0, xmm1
mov dword [esp + 0x230], ecx
psrlq xmm0, 0x1c
mov dword [esp + 0x240], esi
movsd xmm2, xmm0
movdqa xmm0, xmm1
psllq xmm0, 0x24
movsd xmm3, xmm0
movdqa xmm0, xmm1
orpd xmm3, xmm2
movdqa xmm2, xmm1
psrlq xmm0, 0x22
psrlq xmm2, 0x12
movsd xmm2, xmm0
movdqa xmm0, xmm1
psllq xmm0, 0x1e
movsd xmm4, xmm0
movdqa xmm0, xmm1
orpd xmm4, xmm2
movdqa xmm2, xmm1
psrlq xmm0, 0x27
psrlq xmm2, 0x29
xorpd xmm4, xmm3
movdqa xmm3, xmm1
movsd xmm2, xmm0
movdqa xmm0, xmm1
psllq xmm3, 0x19
psllq xmm0, 0x17
movsd xmm0, xmm3
orpd xmm0, xmm2
pshufd xmm2, xmm1, 0x55
movd edi, xmm2
xorpd xmm0, xmm4
movd xmm4, dword [esp + 0xb0]
and eax, edi
mov dword [esp + 0x310], edi
movd edi, xmm1
and edx, edi
movd xmm3, eax
mov dword [esp + 0x2d0], edi
mov edi, esi
movd xmm2, edx
mov edx, ecx
punpckldq xmm2, xmm3
movd xmm3, ebx
mov ebx, dword [esp + 0x100]
punpcklqdq xmm3, xmm4
movd xmm4, dword [esp + 0x220]
and ebx, esi
mov esi, dword [esp + 0x180]
xor ebx, dword [esp + 0xe0]
punpckldq xmm5, xmm4
pxor xmm5, xmm2
and esi, ecx
mov ecx, dword [esp + 0x80]
xor esi, dword [esp + 0x120]
movd xmm2, ebx
movd xmm4, esi
punpcklqdq xmm4, xmm2
shufps xmm2, xmm3, 0x24
shufps xmm1, xmm4, 0x24
paddq xmm1, xmm2
movd xmm2, dword [esp + 0x10]
movsd xmm1, xmm5
paddq xmm1, xmm0
pshufd xmm0, xmm1, 0xff
movdqa xmmword [esp + 0x100], xmm1
movaps xmm1, xmmword [esp + 0x170]
movd dword [esp + 0x90], xmm0
movd xmm0, ecx
movdqa xmmword [esp + 0x220], xmm2
movdqa xmmword [esp + 0x290], xmm0
punpcklqdq xmm2, xmm0
mov ebx, dword [esp + 0x90]
movaps xmm0, xmm1
movaps xmm3, xmm1
movaps xmm4, xmm1
movaps xmm5, xmm1
shufps xmm0, xmm2, 0x24
psrlq xmm3, 1
psllq xmm4, 0x3f
psllq xmm5, 0x38
movaps xmm2, xmm0
psrlq xmm2, 0x13
shufps xmm3, xmm2, 0xe4
movaps xmm2, xmm0
psllq xmm2, 0x2d
shufps xmm4, xmm2, 0xe4
movaps xmm2, xmm0
orps xmm4, xmm3
movaps xmm3, xmm1
psrlq xmm2, 0x3d
psrlq xmm1, 7
psrlq xmm3, 8
shufps xmm3, xmm2, 0xe4
movaps xmm2, xmm0
psrlq xmm0, 6
psllq xmm2, 3
shufps xmm1, xmm0, 0xe4
shufps xmm5, xmm2, 0xe4
orps xmm5, xmm3
movdqa xmm3, xmm6
xorps xmm5, xmm4
psllq xmm3, 0x2d
xorps xmm1, xmm5
movdqa xmm5, xmmword [esp + 0x260]
paddq xmm1, xmmword [esp + 0x380]
punpckhqdq xmm5, xmm6
pshufd xmm0, xmm1, 0xff
movdqa xmm2, xmm5
movdqa xmm4, xmm5
movdqa xmmword [esp + 0x170], xmm1
movdqa xmm1, xmmword [esp + 0x110]
movd dword [esp + 0x180], xmm0
movdqa xmm0, xmm6
psrlq xmm2, 1
psllq xmm4, 0x38
psrlq xmm0, 0x13
shufps xmm2, xmm0, 0xe4
movdqa xmm0, xmm5
psllq xmm0, 0x3f
shufps xmm0, xmm3, 0xe4
movdqa xmm3, xmm5
orps xmm0, xmm2
movdqa xmm2, xmm6
psrlq xmm3, 8
psrlq xmm2, 0x3d
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm6
psllq xmm2, 3
shufps xmm4, xmm2, 0xe4
movdqa xmm2, xmm5
movdqa xmm5, xmmword [esp + 0x150]
orps xmm4, xmm3
psrlq xmm2, 7
xorps xmm4, xmm0
movdqa xmm0, xmm6
paddq xmm6, xmm7
psrlq xmm0, 6
shufps xmm2, xmm0, 0xe4
movdqa xmm0, xmmword [esp + 0x300]
xorps xmm2, xmm4
movaps xmm3, xmm2
movdqa xmm2, xmmword [esp + 0x190]
paddq xmm0, xmmword [esp + 0x270]
punpcklqdq xmm2, xmm0
paddq xmm2, xmm3
movdqa xmm3, xmmword [esp + 0x1d0]
pshufd xmm0, xmm2, 0xff
movdqa xmmword [esp + 0x190], xmm2
movd dword [esp + 0x200], xmm0
pshufd xmm0, xmm2, 0xee
movd dword [esp + 0x300], xmm0
paddq xmm0, xmm2
movdqa xmm2, xmmword [esp + 0x100]
punpcklqdq xmm7, xmm0
movdqa xmm0, xmmword [esp + 0x1a0]
movdqa xmm4, xmm3
punpcklqdq xmm4, xmm6
movdqa xmmword [esp + 0x2c0], xmm7
movdqa xmmword [esp + 0x340], xmm4
movdqa xmm4, xmmword [esp + 0x170]
paddq xmm0, xmm1
movdqa xmmword [esp + 0x1a0], xmm0
movdqa xmm0, xmmword [esp + 0x2f0]
punpckhqdq xmm5, xmm4
paddq xmm0, xmm3
movdqa xmm3, xmm4
punpcklqdq xmm1, xmm0
pshufd xmm0, xmm2, 0xee
psllq xmm3, 0x2d
movdqa xmmword [esp + 0x110], xmm1
movdqa xmm1, xmmword [esp + 0x250]
paddq xmm2, xmm0
movd esi, xmm0
pshufd xmm0, xmm2, 0x55
movdqa xmmword [esp + 0x100], xmm2
movd dword [esp + 0xb0], xmm0
movdqa xmm0, xmm2
pxor xmm0, xmm1
movd dword [esp + 0x160], xmm0
pshufd xmm0, xmm0, 0x55
movd dword [esp + 0xd0], xmm0
movdqa xmm0, xmm2
movdqa xmm2, xmm5
pand xmm0, xmm1
psrlq xmm2, 1
movdqa xmm1, xmm4
movd dword [esp + 0x380], xmm0
pshufd xmm0, xmm0, 0x55
movd dword [esp + 0xac], xmm0
movdqa xmm0, xmm4
psrlq xmm0, 0x13
shufps xmm2, xmm0, 0xe4
movdqa xmm0, xmm5
psllq xmm0, 0x3f
shufps xmm0, xmm3, 0xe4
movdqa xmm3, xmm5
orps xmm0, xmm2
movdqa xmm2, xmm4
psrlq xmm3, 8
psrlq xmm2, 0x3d
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm4
movdqa xmm4, xmm5
psllq xmm2, 3
psllq xmm4, 0x38
shufps xmm4, xmm2, 0xe4
movdqa xmm2, xmm5
movdqa xmm5, xmmword [esp + 0x270]
orps xmm4, xmm3
psrlq xmm2, 7
xorps xmm4, xmm0
movdqa xmm0, xmm1
psrlq xmm0, 6
shufps xmm2, xmm0, 0xe4
xorps xmm2, xmm4
paddq xmm2, xmmword [esp + 0xc0]
pshufd xmm0, xmm2, 0xff
punpckhqdq xmm5, xmm2
movdqa xmm6, xmm2
movd dword [esp + 0x1c0], xmm0
movdqa xmm0, xmm2
movdqa xmm2, xmm5
movdqa xmm3, xmm6
movdqa xmm4, xmm5
movdqa xmm7, xmm6
movdqa xmmword [esp + 0x150], xmm6
psrlq xmm0, 0x13
psrlq xmm2, 1
psllq xmm3, 0x2d
psllq xmm4, 0x38
shufps xmm2, xmm0, 0xe4
movdqa xmm0, xmm5
psllq xmm0, 0x3f
shufps xmm0, xmm3, 0xe4
movdqa xmm3, xmm5
orps xmm0, xmm2
movdqa xmm2, xmm6
psrlq xmm3, 8
psrlq xmm2, 0x3d
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm6
psllq xmm2, 3
shufps xmm4, xmm2, 0xe4
movdqa xmm2, xmm5
orps xmm4, xmm3
psrlq xmm2, 7
xorps xmm4, xmm0
movdqa xmm0, xmm6
movdqa xmm6, xmmword [esp + 0x220]
psrlq xmm0, 6
shufps xmm2, xmm0, 0xe4
movdqa xmm0, xmm1
pshufd xmm1, xmm1, 0xee
xorps xmm2, xmm4
movdqa xmm4, xmmword [esp + 0x1e0]
paddq xmm0, xmm1
punpcklqdq xmm4, xmmword [esp + 0x1a0]
movdqa xmmword [esp + 0x1a0], xmm1
paddq xmm4, xmm2
movdqa xmm2, xmmword [esp + 0x290]
movdqa xmm3, xmm4
movdqa xmm5, xmm4
psllq xmm3, 0x2d
movdqa xmmword [esp + 0x1e0], xmm5
punpckldq xmm2, xmm6
punpcklqdq xmm2, xmm0
movd xmm0, ecx
mov ecx, edi
mov edi, edx
xor ecx, dword [esp + 0x30]
xor edi, dword [esp + 0x20]
add esi, dword [esp + 0x2a0]
punpcklqdq xmm6, xmm0
movdqa xmm0, xmm4
movdqa xmmword [esp + 0x290], xmm2
shufps xmm6, xmm4, 0xe2
psrlq xmm0, 0x13
movaps xmm2, xmm6
psrlq xmm2, 1
adc ebx, dword [esp + 0x2b0]
mov eax, esi
mov edx, esi
shufps xmm2, xmm0, 0xe4
movaps xmm0, xmm6
mov dword [esp + 0xc0], esi
psllq xmm0, 0x3f
shufps xmm0, xmm3, 0xe4
movaps xmm3, xmm6
orps xmm0, xmm2
movdqa xmm2, xmm4
psrlq xmm3, 8
shld eax, ebx, 0x12
shld edx, ebx, 0xe
mov dword [esp + 0x90], ebx
psrlq xmm2, 0x3d
xor edx, eax
mov eax, ebx
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm4
movaps xmm4, xmm6
psrlq xmm6, 7
shld eax, esi, 0x12
mov esi, ebx
mov ebx, dword [esp + 0xc0]
psllq xmm2, 3
psllq xmm4, 0x38
shufps xmm4, xmm2, 0xe4
orps xmm4, xmm3
movd xmm3, dword [esp + 0x60]
xorps xmm4, xmm0
movdqa xmm0, xmm5
shld esi, ebx, 0xe
mov ebx, dword [esp + 0xc0]
psrlq xmm0, 6
xor esi, eax
mov eax, dword [esp + 0x90]
shufps xmm6, xmm0, 0xe4
pshufd xmm0, xmm5, 0xff
xorps xmm6, xmm4
movd dword [esp + 0x210], xmm0
movdqa xmm0, xmmword [esp + 0x100]
paddq xmm6, xmmword [esp + 0x110]
shld ebx, eax, 0x17
and edi, eax
xor ebx, esi
mov esi, eax
xor eax, dword [esp + 0x230]
xor edi, dword [esp + 0x20]
mov dword [esp + 0x110], ebx
mov ebx, dword [esp + 0xc0]
movdqa xmmword [esp + 0x220], xmm6
mov dword [esp + 0x270], eax
movd eax, xmm1
shld esi, ebx, 0x17
mov ebx, dword [esp + 0x200]
xor esi, edx
mov edx, dword [esp + 0xc0]
and ecx, edx
xor edx, dword [esp + 0x240]
xor ecx, dword [esp + 0x30]
add eax, dword [esp + 0xe0]
mov dword [esp + 0x260], edx
mov edx, dword [esp + 0x180]
adc edx, dword [esp + 0x120]
add eax, ecx
mov ecx, dword [esp + 0x40]
adc edx, edi
add eax, dword [esp + 0x110]
adc edx, esi
add eax, 0x6ea6e483
adc edx, 0x4a7484aa
add ecx, eax
mov esi, edx
mov dword [esp + 0x180], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0x40], ecx
adc edx, esi
mov esi, dword [esp + 0x270]
mov dword [esp + 0x70], edx
and esi, edx
mov edx, dword [esp + 0x260]
xor esi, dword [esp + 0x230]
and edx, ecx
mov ecx, dword [esp + 0x300]
xor edx, dword [esp + 0x240]
mov edi, ecx
add edx, dword [esp + 0x320]
adc esi, dword [esp + 0x360]
shld edi, ebx, 0xd
mov dword [esp + 0x260], edx
mov edx, ebx
shld edx, ecx, 0xd
mov dword [esp + 0x270], esi
mov esi, ebx
shld esi, ecx, 3
xor esi, edi
mov edi, ecx
shld edi, ebx, 3
xor edi, edx
mov edx, ebx
shld edx, ecx, 0x1a
xor edx, edi
movd edi, xmm0
pshufd xmm0, xmm7, 0xee
mov dword [esp + 0x370], edx
mov edx, ebx
mov dword [esp + 0x30], edi
movdqa xmmword [esp + 0x110], xmm0
shr edx, 6
xor edx, esi
add ecx, 0xee66dfab
mov dword [esp + 0xe0], ecx
mov ecx, dword [esp + 0x80]
adc ebx, 0x983e5152
mov dword [esp + 0x3b0], edx
mov edx, dword [esp + 0xb0]
mov dword [esp + 0x320], ebx
mov ebx, edi
add ecx, dword [esp + 0x330]
mov esi, edx
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0xc]
adc dword [esp + 0x10], ecx
mov ecx, edi
shld esi, edi, 0x1e
shld ebx, edx, 0x1e
shld ecx, edx, 4
xor esi, ecx
mov ecx, edx
shld ecx, edi, 4
xor ebx, ecx
mov ecx, edi
shld ecx, edx, 0x19
xor ecx, ebx
mov ebx, edx
mov edx, dword [esp + 0x60]
shld ebx, edi, 0x19
mov edi, dword [esp + 0x2d0]
xor ebx, esi
mov esi, edi
and edi, edx
xor esi, edx
mov edx, dword [esp + 0x50]
and esi, dword [esp + 0x30]
xor esi, edi
mov edi, dword [esp + 0x310]
mov dword [esp + 0x20], edi
xor dword [esp + 0x20], edx
and edi, edx
mov edx, dword [esp + 0x20]
and edx, dword [esp + 0xb0]
xor edx, edi
add esi, ecx
mov ecx, dword [esp + 0x40]
mov edi, dword [esp + 0x70]
adc edx, ebx
add esi, eax
adc edx, dword [esp + 0x180]
mov eax, ecx
mov ebx, edi
shld eax, edi, 0xe
shld ebx, ecx, 0xe
mov dword [esp + 0x20], edx
mov edx, ecx
shld edx, edi, 0x12
xor eax, edx
mov edx, edi
shld edx, ecx, 0x12
xor ebx, edx
mov edx, ecx
shld edx, edi, 0x17
xor edx, ebx
mov dword [esp + 0x2b0], edx
mov edx, edi
mov edi, esi
shld edx, ecx, 0x17
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x120], edi
xor edx, eax
mov eax, edi
mov ebx, ecx
shld esi, ecx, 4
shld eax, ecx, 0x1e
shld ebx, edi, 0x1e
xor ebx, esi
mov esi, ecx
shld esi, edi, 4
xor eax, esi
mov esi, edi
shld esi, ecx, 0x19
xor esi, eax
mov eax, ecx
shld eax, edi, 0x19
xor eax, ebx
mov ebx, dword [esp + 0xd0]
and ebx, ecx
xor ebx, dword [esp + 0xac]
mov dword [esp + 0xd0], ebx
mov ebx, dword [esp + 0x160]
and ebx, edi
xor ebx, dword [esp + 0x380]
add ebx, esi
mov esi, ecx
adc dword [esp + 0xd0], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x160], ebx
movd ebx, xmm0
pshufd xmm0, xmm5, 0xee
movd xmm6, dword [esp + 0x160]
xor eax, dword [esp + 0x90]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x40]
xor eax, dword [esp + 0xc0]
add ebx, dword [esp + 0x240]
movdqa xmmword [esp + 0x240], xmm0
mov dword [esp + 0x330], eax
mov eax, dword [esp + 0x1c0]
adc eax, dword [esp + 0x230]
add ebx, 0x831153b5
mov dword [esp + 0x310], ebx
mov ebx, ecx
mov ecx, edi
adc eax, 0x76f988da
mov dword [esp + 0x1c0], eax
mov eax, dword [esp + 0xb0]
xor ebx, eax
and eax, esi
mov dword [esp + 0x2a0], ebx
mov ebx, dword [esp + 0x30]
mov dword [esp + 0xb0], eax
xor edi, ebx
and ebx, ecx
mov dword [esp + 0x30], ebx
movd ebx, xmm0
mov dword [esp + 0x2d0], edi
mov edi, dword [esp + 0x210]
mov eax, ebx
mov esi, ebx
movd xmm5, dword [esp + 0x30]
add eax, dword [esp + 0x40]
mov ecx, edi
adc ecx, dword [esp + 0x70]
add eax, 0x2db43210
mov dword [esp + 0x180], eax
mov eax, ebx
adc ecx, 0xa831c66d
shld eax, edi, 0x1f
shld esi, edi, 0x18
mov dword [esp + 0x230], ecx
mov ecx, ebx
mov ebx, edi
xor esi, eax
mov eax, edi
shld ebx, ecx, 0x1f
shld eax, ecx, 0x18
xor eax, ebx
mov ebx, ecx
shrd ebx, edi, 7
shr edi, 7
xor ebx, eax
mov eax, dword [esp + 0x2b0]
xor edi, esi
mov dword [esp + 0x210], edi
mov edi, dword [esp + 0x2a0]
mov dword [esp + 0x360], ebx
mov ebx, dword [esp + 0x2d0]
add eax, dword [esp + 0x260]
adc edx, dword [esp + 0x270]
add eax, 0xbd41fbd4
movd xmm2, eax
adc edx, 0x5cb0a9dc
movd xmm0, edx
punpckldq xmm2, xmm0
movd xmm0, dword [esp + 0xd0]
punpckldq xmm6, xmm0
movd xmm0, dword [esp + 0x50]
punpckldq xmm3, xmm0
pshufd xmm0, xmm2, 0x44
punpcklqdq xmm6, xmm3
paddq xmm6, xmm0
pshufd xmm0, xmm6, 0xff
movdqa xmm2, xmm6
movdqa xmm3, xmm6
movdqa xmm4, xmm6
movdqa xmm7, xmm6
movd eax, xmm0
pshufd xmm0, xmm6, 0xee
psrlq xmm2, 0xe
psllq xmm3, 0x32
psllq xmm4, 0x2e
movd ecx, xmm0
movdqa xmm0, xmm6
mov dword [esp + 0xd0], eax
psrlq xmm0, 0x1c
mov dword [esp + 0x60], ecx
movsd xmm2, xmm0
movdqa xmm0, xmm6
psllq xmm0, 0x24
movsd xmm3, xmm0
movdqa xmm0, xmm6
orpd xmm3, xmm2
movdqa xmm2, xmm6
psrlq xmm0, 0x22
psrlq xmm2, 0x12
movsd xmm2, xmm0
movdqa xmm0, xmm6
psllq xmm0, 0x1e
movsd xmm4, xmm0
movdqa xmm0, xmm6
orpd xmm4, xmm2
movdqa xmm2, xmm6
psrlq xmm0, 0x27
psrlq xmm2, 0x29
xorpd xmm4, xmm3
movdqa xmm3, xmm6
movsd xmm2, xmm0
movdqa xmm0, xmm6
psllq xmm3, 0x17
psllq xmm0, 0x19
movsd xmm3, xmm0
pshufd xmm0, xmm6, 0x55
movd edx, xmm0
orpd xmm3, xmm2
and edi, edx
mov esi, edx
mov dword [esp + 0x2b0], edx
movd edx, xmm6
xorpd xmm3, xmm4
movss xmm4, dword [esp + 0x310]
and ebx, edx
movd xmm2, edi
mov dword [esp + 0x2a0], edx
movd xmm0, ebx
mov ebx, dword [esp + 0x330]
punpckldq xmm0, xmm2
movss xmm2, dword [esp + 0x1c0]
and ebx, ecx
mov ecx, dword [esp + 0xc]
movlhps xmm2, xmm4
movd xmm4, dword [esp + 0xb0]
and ecx, eax
mov eax, dword [esp + 0x90]
punpckldq xmm5, xmm4
pxor xmm5, xmm0
xor ecx, eax
mov edi, ecx
mov ecx, dword [esp + 0xc0]
movd xmm4, edi
mov edi, dword [esp + 0x70]
xor ebx, ecx
movd xmm0, ebx
punpcklqdq xmm4, xmm0
shufps xmm0, xmm2, 0x24
shufps xmm2, xmm4, 0x24
paddq xmm2, xmm0
movsd xmm2, xmm5
paddq xmm2, xmm3
pshufd xmm0, xmm2, 0xee
punpcklqdq xmm2, xmmword [esp + 0x250]
paddq xmm2, xmm0
pshufd xmm0, xmm2, 0xee
movdqa xmm1, xmm2
movdqa xmm3, xmm2
movdqa xmm4, xmm2
movd dword [esp + 0x310], xmm2
movd dword [esp + 0x50], xmm0
pshufd xmm0, xmm2, 0xff
psrlq xmm1, 0xe
psllq xmm3, 0x32
psrlq xmm4, 0x12
movd ebx, xmm0
movdqa xmm0, xmm2
psrlq xmm0, 0x1c
mov dword [esp + 0xc], ebx
movsd xmm1, xmm0
movdqa xmm0, xmm2
psllq xmm0, 0x24
movsd xmm3, xmm0
movdqa xmm0, xmm2
psrlq xmm0, 0x22
orpd xmm3, xmm1
movdqa xmm1, xmm2
movsd xmm4, xmm0
movdqa xmm0, xmm2
psllq xmm1, 0x2e
psllq xmm0, 0x1e
movsd xmm1, xmm0
movdqa xmm0, xmm2
orpd xmm1, xmm4
movdqa xmm4, xmm2
psrlq xmm0, 0x27
psrlq xmm4, 0x29
xorpd xmm1, xmm3
movdqa xmm3, xmm2
movsd xmm4, xmm0
movdqa xmm0, xmm2
psllq xmm3, 0x17
psllq xmm0, 0x19
movsd xmm3, xmm0
movd xmm0, eax
mov eax, esi
mov esi, dword [esp + 0x20]
orpd xmm3, xmm4
movdqa xmm4, xmm2
xorpd xmm3, xmm1
movd xmm1, ecx
mov ecx, edx
mov edx, dword [esp + 0x120]
punpcklqdq xmm0, xmm1
movss xmm1, dword [esp + 0xe0]
xor eax, esi
shufps xmm4, xmm0, 0x24
movd xmm0, eax
xor ecx, edx
movd xmm5, ecx
mov ecx, dword [esp + 0x40]
punpckldq xmm5, xmm0
movss xmm0, dword [esp + 0x320]
movlhps xmm0, xmm1
movdqa xmm1, xmm2
pand xmm1, xmm5
shufps xmm5, xmm0, 0x24
movd xmm0, edi
paddq xmm5, xmm4
movd xmm4, ecx
movdqa xmmword [esp + 0x30], xmm1
punpcklqdq xmm0, xmm4
movd xmm4, esi
mov esi, dword [esp + 0x60]
shufps xmm7, xmm0, 0x24
movd xmm0, edx
mov edx, dword [esp + 0xd0]
punpckldq xmm0, xmm4
mov eax, esi
xor eax, ecx
mov ecx, edx
and eax, dword [esp + 0x50]
xor ecx, edi
and ecx, ebx
movd xmm1, ecx
movd xmm4, eax
mov eax, dword [esp + 0x50]
punpcklqdq xmm1, xmm4
movdqa xmm4, xmm6
pand xmm4, xmm0
shufps xmm0, xmm1, 0x24
pxor xmm4, xmmword [esp + 0x30]
xorps xmm0, xmm7
movdqa xmm7, xmm6
paddq xmm0, xmm5
xor eax, esi
mov esi, dword [esp + 0xc]
shufps xmm4, xmm0, 0xe4
paddq xmm4, xmm3
mov ecx, esi
pshufd xmm0, xmm4, 0xee
punpcklqdq xmm4, xmmword [esp + 0x100]
xor ecx, edx
paddq xmm4, xmm0
pshufd xmm0, xmm4, 0xee
movdqa xmm1, xmm4
movdqa xmm3, xmm4
movdqa xmm5, xmm4
movd dword [esp + 0x2d0], xmm4
movd edi, xmm0
pshufd xmm0, xmm4, 0xff
psrlq xmm1, 0xe
psllq xmm3, 0x24
psrlq xmm5, 0x12
movd ebx, xmm0
movdqa xmm0, xmm4
and eax, edi
mov dword [esp + 0x270], edi
xor edi, dword [esp + 0x50]
psrlq xmm0, 0x1c
and ecx, ebx
mov dword [esp + 0xe0], ebx
xor ebx, esi
movsd xmm1, xmm0
movdqa xmm0, xmm4
mov esi, ebx
psllq xmm0, 0x32
movsd xmm0, xmm3
movdqa xmm3, xmm4
mov dword [esp + 0x40], edi
orpd xmm0, xmm1
pshufd xmm1, xmm2, 0x55
psllq xmm3, 0x2e
movd dword [esp + 0x320], xmm1
pshufd xmm1, xmm4, 0x55
movd dword [esp + 0x330], xmm1
movdqa xmm1, xmm4
psrlq xmm1, 0x22
movsd xmm5, xmm1
movdqa xmm1, xmm4
psllq xmm1, 0x1e
movsd xmm3, xmm1
movdqa xmm1, xmm4
orpd xmm3, xmm5
movdqa xmm5, xmm4
psllq xmm1, 0x17
xorpd xmm3, xmm0
movdqa xmm0, xmm4
psrlq xmm5, 0x29
psrlq xmm0, 0x27
movsd xmm5, xmm0
movdqa xmm0, xmm4
psllq xmm0, 0x19
movsd xmm1, xmm0
movd xmm0, eax
orpd xmm1, xmm5
movdqa xmm5, xmm2
xorpd xmm1, xmm3
movd xmm3, ecx
pxor xmm5, xmm6
punpcklqdq xmm3, xmm0
movdqa xmm0, xmm4
pand xmm5, xmm4
shufps xmm7, xmm3, 0x24
movdqa xmm3, xmm4
pxor xmm0, xmm2
pand xmm3, xmm2
pand xmm2, xmm6
xorps xmm7, xmm6
movd xmm6, dword [esp + 0x180]
pxor xmm2, xmm5
movd xmm5, dword [esp + 0x230]
punpckldq xmm6, xmm5
pshufd xmm5, xmm6, 0x44
movdqa xmm6, xmmword [esp + 0x1a0]
paddq xmm5, xmm7
movsd xmm5, xmm2
paddq xmm5, xmm1
pshufd xmm1, xmm5, 0xff
movdqa xmm7, xmm6
movdqa xmm2, xmm6
movd edx, xmm1
pshufd xmm1, xmm5, 0xee
psrlq xmm2, 1
paddq xmm5, xmm1
movd eax, xmm1
mov ebx, edx
pand xmm0, xmm5
pshufd xmm1, xmm5, 0x55
add eax, dword [esp + 0x120]
pxor xmm0, xmm3
movd dword [esp + 0xc0], xmm1
pshufd xmm1, xmm0, 0x55
movd dword [esp + 0x100], xmm0
movdqa xmm0, xmm5
movd dword [esp + 0x90], xmm1
movdqa xmm1, xmmword [esp + 0x150]
pxor xmm0, xmm4
pand xmm4, xmm5
movd dword [esp + 0x70], xmm0
pshufd xmm0, xmm0, 0x55
movd dword [esp + 0x380], xmm4
adc ebx, dword [esp + 0x20]
mov edx, eax
mov edi, eax
mov dword [esp + 0x160], eax
movd dword [esp + 0x180], xmm0
pshufd xmm0, xmm4, 0x55
movdqa xmm4, xmmword [esp + 0x220]
movd dword [esp + 0xac], xmm0
movdqa xmm0, xmmword [esp + 0x170]
paddq xmm1, xmmword [esp + 0x110]
shld edx, ebx, 0x12
shld edi, ebx, 0xe
mov ecx, ebx
mov dword [esp + 0x170], ebx
movdqa xmm3, xmm4
xor edi, edx
mov edx, ebx
shld ecx, eax, 0x12
psllq xmm3, 0x2d
psrldq xmm0, 9
shld edx, eax, 0xe
punpcklqdq xmm7, xmm1
pshufd xmm1, xmm4, 0xff
xor edx, ecx
mov ecx, eax
movd dword [esp + 0x250], xmm1
movdqa xmm1, xmm4
shld ecx, ebx, 0x17
psrlq xmm1, 0x13
xor ecx, edx
shufps xmm2, xmm1, 0xe4
movdqa xmm1, xmm6
psllq xmm1, 0x3f
shufps xmm1, xmm3, 0xe4
movdqa xmm3, xmm6
orps xmm1, xmm2
movdqa xmm2, xmm4
psllq xmm3, 0x38
psrlq xmm2, 0x3d
shufps xmm0, xmm2, 0xe4
movdqa xmm2, xmm4
psllq xmm2, 3
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm6
orps xmm3, xmm0
psrlq xmm2, 7
movdqa xmm0, xmm4
pshufd xmm0, xmm4, 0xee
xorps xmm3, xmm1
movdqa xmm1, xmm4
movdqa xmmword [esp + 0x120], xmm0
movdqa xmm4, xmmword [esp + 0x1d0]
psrlq xmm1, 6
shufps xmm2, xmm1, 0xe4
xorps xmm2, xmm3
paddq xmm2, xmmword [esp + 0x340]
mov dword [esp + 0x340], ecx
mov ecx, ebx
movdqa xmm3, xmm4
shld ecx, eax, 0x17
movd eax, xmm5
psrlq xmm3, 1
xor ecx, edi
mov ebx, eax
mov dword [esp + 0x260], eax
mov dword [esp + 0x3e0], ecx
mov ecx, dword [esp + 0xc0]
movdqa xmmword [esp + 0x1a0], xmm2
mov edi, ecx
shld ebx, ecx, 4
mov edx, ecx
shld edi, eax, 0x1e
shld edx, eax, 4
xor edi, ebx
mov ebx, eax
shld ebx, ecx, 0x1e
xor ebx, edx
mov edx, eax
shld edx, ecx, 0x19
xor edx, ebx
mov ebx, ecx
mov ecx, dword [esp + 0x170]
shld ebx, eax, 0x19
mov eax, esi
mov esi, dword [esp + 0x160]
xor ebx, edi
mov edi, dword [esp + 0x40]
and eax, ecx
xor eax, dword [esp + 0xc]
and edi, esi
xor edi, dword [esp + 0x50]
add dword [esp + 0x100], edx
mov dword [esp + 0x3a0], eax
mov eax, dword [esp + 0x300]
adc dword [esp + 0x90], ebx
xor ecx, dword [esp + 0xe0]
xor esi, dword [esp + 0x270]
mov ebx, dword [esp + 0x80]
mov dword [esp + 0x40], edi
add dword [esp + 0x360], eax
mov eax, dword [esp + 0x200]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x30], esi
adc dword [esp + 0x210], eax
movd eax, xmm0
add eax, dword [esp + 0x50]
mov dword [esp + 0x200], eax
mov eax, dword [esp + 0xc]
adc dword [esp + 0x250], eax
add ebx, dword [esp + 0x370]
mov eax, dword [esp + 0x10]
adc eax, dword [esp + 0x3b0]
movd xmm0, ebx
mov dword [esp + 0x80], ebx
movdqa xmmword [esp + 0x230], xmm0
movd xmm2, eax
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x60]
movdqa xmmword [esp + 0x1c0], xmm2
punpcklqdq xmm2, xmm0
movdqa xmm0, xmmword [esp + 0x2f0]
add eax, ebx
mov ebx, dword [esp + 0xd0]
movdqa xmm1, xmm0
psrldq xmm0, 9
shufps xmm1, xmm2, 0x2e
movaps xmm2, xmm1
movaps xmm6, xmm1
adc ebx, dword [esp + 0x10]
add eax, dword [esp + 0x40]
psrlq xmm2, 0x13
psllq xmm6, 0x2d
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm4
psllq xmm2, 0x3f
shufps xmm2, xmm6, 0xe4
movdqa xmm6, xmm4
psrlq xmm4, 7
adc ebx, dword [esp + 0x3a0]
add eax, dword [esp + 0x340]
orps xmm2, xmm3
movaps xmm3, xmm1
psllq xmm6, 0x38
psrlq xmm3, 0x3d
shufps xmm0, xmm3, 0xe4
movaps xmm3, xmm1
psrlq xmm1, 6
psllq xmm3, 3
shufps xmm4, xmm1, 0xe4
adc ebx, dword [esp + 0x3e0]
add eax, 0x98fb213f
shufps xmm6, xmm3, 0xe4
orps xmm6, xmm0
movdqa xmm0, xmmword [esp + 0xf0]
xorps xmm6, xmm2
xorps xmm4, xmm6
movdqa xmm6, xmmword [esp + 0x140]
adc ebx, 0xb00327c8
add dword [esp + 0x100], eax
paddq xmm4, xmmword [esp + 0x290]
mov edi, dword [esp + 0x100]
psrldq xmm0, 9
movdqa xmm2, xmm6
adc dword [esp + 0x90], ebx
add eax, dword [esp + 0x2a0]
movdqa xmm1, xmm4
psrlq xmm2, 1
movdqa xmm3, xmm4
movdqa xmmword [esp + 0x1d0], xmm4
mov dword [esp + 0x100], edi
psrlq xmm1, 0x13
psllq xmm3, 0x2d
shufps xmm2, xmm1, 0xe4
movdqa xmm1, xmm6
psllq xmm1, 0x3f
adc ebx, dword [esp + 0x2b0]
mov ecx, eax
mov edx, eax
mov dword [esp + 0x60], eax
shufps xmm1, xmm3, 0xe4
movdqa xmm3, xmm6
orps xmm1, xmm2
movdqa xmm2, xmm4
psllq xmm3, 0x38
psrlq xmm2, 0x3d
shufps xmm0, xmm2, 0xe4
movdqa xmm2, xmm4
shld ecx, ebx, 0x12
shld edx, ebx, 0xe
mov esi, ebx
mov dword [esp + 0xd0], ebx
psllq xmm2, 3
xor edx, ecx
mov ecx, ebx
shld esi, eax, 0x12
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm6
movdqa xmm6, xmmword [esp + 0x150]
shld ecx, eax, 0xe
orps xmm3, xmm0
psrlq xmm2, 7
pshufd xmm0, xmm4, 0xff
xor ecx, esi
mov esi, eax
xorps xmm3, xmm1
movdqa xmm1, xmm4
movd dword [esp + 0xc], xmm0
shld esi, ebx, 0x17
shld ebx, eax, 0x17
mov eax, dword [esp + 0x90]
psrlq xmm1, 6
xor esi, ecx
xor ebx, edx
mov edx, edi
mov ecx, edi
shufps xmm2, xmm1, 0xe4
movdqa xmm1, xmmword [esp + 0x230]
mov dword [esp + 0x2f0], esi
xorps xmm2, xmm3
paddq xmm2, xmm7
mov esi, eax
shld edx, eax, 4
pshufd xmm0, xmm2, 0xff
movdqa xmm7, xmm2
movdqa xmmword [esp + 0x140], xmm2
pshufd xmm2, xmm4, 0xee
shld esi, edi, 0x1e
punpckldq xmm1, xmmword [esp + 0x1c0]
paddq xmm4, xmm2
movd dword [esp + 0x290], xmm0
movdqa xmmword [esp + 0xb0], xmm2
xor esi, edx
mov edx, eax
shld edx, edi, 4
shld edi, eax, 0x1e
xor edi, edx
mov edx, ecx
shld edx, eax, 0x19
punpcklqdq xmm1, xmm4
movdqa xmm4, xmmword [esp + 0x1a0]
xor edx, edi
mov edi, eax
movdqa xmmword [esp + 0x230], xmm1
shld edi, ecx, 0x19
xor edi, esi
mov esi, dword [esp + 0x180]
punpckhqdq xmm6, xmm4
pshufd xmm0, xmm4, 0xff
movdqa xmm2, xmm4
movdqa xmm1, xmm6
movd dword [esp + 0x370], xmm0
movdqa xmm0, xmm4
psllq xmm2, 0x2d
movdqa xmm3, xmm6
psrlq xmm0, 0x13
psrlq xmm1, 1
psllq xmm3, 0x38
and esi, eax
mov eax, dword [esp + 0x70]
shufps xmm1, xmm0, 0xe4
movdqa xmm0, xmm6
xor esi, dword [esp + 0xac]
psllq xmm0, 0x3f
shufps xmm0, xmm2, 0xe4
movdqa xmm2, xmm6
orps xmm0, xmm1
movdqa xmm1, xmm4
psrlq xmm2, 8
and eax, ecx
mov ecx, dword [esp + 0x20]
psrlq xmm1, 0x3d
xor eax, dword [esp + 0x380]
shufps xmm2, xmm1, 0xe4
movdqa xmm1, xmm4
psllq xmm1, 3
shufps xmm3, xmm1, 0xe4
movdqa xmm1, xmm6
and ecx, dword [esp + 0xd0]
orps xmm3, xmm2
psrlq xmm1, 7
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x30]
xorps xmm3, xmm0
movdqa xmm0, xmm4
psrlq xmm0, 6
shufps xmm1, xmm0, 0xe4
xor ecx, dword [esp + 0xe0]
xorps xmm1, xmm3
and eax, dword [esp + 0x60]
paddq xmm1, xmmword [esp + 0x2c0]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xd0]
xor eax, dword [esp + 0x270]
add dword [esp + 0x70], edx
mov edx, dword [esp + 0xc0]
movdqa xmmword [esp + 0x150], xmm1
adc esi, edi
xor ecx, dword [esp + 0x170]
mov edi, dword [esp + 0x260]
mov dword [esp + 0x180], esi
mov dword [esp + 0xf0], ecx
mov ecx, dword [esp + 0x60]
xor ecx, dword [esp + 0x160]
mov dword [esp + 0x300], ecx
mov ecx, dword [esp + 0x90]
mov esi, ecx
xor esi, edx
and edx, ecx
mov dword [esp + 0x40], esi
mov esi, dword [esp + 0x100]
mov dword [esp + 0xc0], edx
mov edx, dword [esp + 0x80]
mov dword [esp + 0x50], esi
xor dword [esp + 0x50], edi
and edi, esi
movd xmm0, edx
add edx, dword [esp + 0x1f0]
mov dword [esp + 0x260], edi
mov edi, dword [esp + 0x20]
movdqa xmmword [esp + 0x2a0], xmm0
movdqa xmm0, xmmword [esp + 0xb0]
mov dword [esp + 0x80], edx
mov edx, dword [esp + 0x10]
adc edx, dword [esp + 0x1b0]
add eax, dword [esp + 0x200]
adc edi, dword [esp + 0x250]
add eax, dword [esp + 0x2f0]
mov dword [esp + 0x10], edx
adc edi, ebx
add eax, 0xbeef0ee4
adc edi, 0xbf597fc7
add dword [esp + 0x70], eax
adc dword [esp + 0x180], edi
add eax, dword [esp + 0x310]
adc edi, dword [esp + 0x320]
mov edx, eax
mov ecx, eax
mov dword [esp + 0x30], eax
shld edx, edi, 0x12
shld ecx, edi, 0xe
mov ebx, edi
mov dword [esp + 0x20], edi
xor ecx, edx
mov edx, edi
shld ebx, eax, 0x12
shld edx, eax, 0xe
xor edx, ebx
mov ebx, eax
shld ebx, edi, 0x17
xor ebx, edx
mov edx, edi
mov edi, dword [esp + 0x180]
mov dword [esp + 0x200], ebx
mov ebx, dword [esp + 0x70]
shld edx, eax, 0x17
xor edx, ecx
mov dword [esp + 0x250], edx
mov ecx, edi
mov edx, edi
mov eax, ebx
shld ecx, ebx, 0x1e
mov esi, ebx
shld edx, ebx, 4
shld eax, edi, 4
shld esi, edi, 0x19
xor ecx, eax
mov eax, ebx
shld eax, edi, 0x1e
xor eax, edx
mov edx, edi
xor esi, eax
mov eax, dword [esp + 0x40]
shld edx, ebx, 0x19
xor edx, ecx
mov ecx, dword [esp + 0x50]
and eax, edi
xor eax, dword [esp + 0xc0]
and ecx, ebx
xor ecx, dword [esp + 0x260]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x20]
and dword [esp + 0xf0], eax
mov eax, dword [esp + 0x300]
mov ebx, dword [esp + 0xf0]
and eax, dword [esp + 0x30]
xor ebx, dword [esp + 0x170]
xor eax, dword [esp + 0x160]
add ecx, esi
mov esi, dword [esp + 0x40]
mov dword [esp + 0xf0], ebx
mov dword [esp + 0x50], ecx
mov ebx, dword [esp + 0x30]
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x300], eax
mov eax, dword [esp + 0x20]
adc esi, edx
mov edx, dword [esp + 0x70]
xor ebx, dword [esp + 0x60]
xor eax, dword [esp + 0xd0]
mov dword [esp + 0x1f0], ebx
mov ebx, edx
mov dword [esp + 0x2f0], eax
mov eax, edi
and edi, ecx
xor eax, ecx
movd ecx, xmm0
mov dword [esp + 0x260], edi
pshufd xmm0, xmm7, 0xee
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x100]
xor ebx, eax
and edx, eax
add ecx, dword [esp + 0x270]
mov eax, dword [esp + 0xc]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [esp + 0x50]
mov dword [esp + 0x2c0], edx
adc eax, dword [esp + 0xe0]
add ecx, dword [esp + 0x300]
adc eax, dword [esp + 0xf0]
add ecx, dword [esp + 0x200]
adc eax, dword [esp + 0x250]
add ecx, 0x3da88fc2
adc eax, 0xc6e00bf3
add ebx, ecx
adc esi, eax
add ecx, dword [esp + 0x2d0]
mov dword [esp + 0x50], ebx
mov dword [esp + 0x40], esi
adc eax, dword [esp + 0x330]
mov edx, ecx
mov esi, ecx
mov dword [esp + 0xe0], ecx
shld edx, eax, 0x12
shld esi, eax, 0xe
mov edi, eax
mov dword [esp + 0xc], eax
xor esi, edx
mov edx, eax
shld edi, ecx, 0xe
shld edx, ecx, 0x12
xor edi, edx
mov edx, ecx
shld edx, eax, 0x17
xor edx, edi
mov dword [esp + 0x200], edx
mov edx, eax
mov eax, dword [esp + 0x40]
shld edx, ecx, 0x17
mov ecx, ebx
xor edx, esi
mov dword [esp + 0x270], edx
mov edx, ebx
mov esi, eax
shld ecx, eax, 4
mov edi, eax
mov ebx, edx
shld esi, edx, 0x1e
shld ebx, edi, 0x19
xor esi, ecx
mov ecx, eax
mov eax, edx
shld ecx, edx, 4
shld eax, edi, 0x1e
xor eax, ecx
mov ecx, edi
shld edi, edx, 0x19
xor ebx, eax
mov eax, dword [esp + 0xc0]
xor edi, esi
mov esi, dword [esp + 0xc]
and eax, ecx
mov ecx, dword [esp + 0x2f0]
xor eax, dword [esp + 0x260]
movdqa xmmword [esp + 0x260], xmm0
and ecx, esi
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x1b0]
xor ecx, dword [esp + 0xd0]
and eax, edx
mov edx, dword [esp + 0xe0]
mov dword [esp + 0x2f0], ecx
movd ecx, xmm0
pshufd xmm0, xmm4, 0xee
movdqa xmm4, xmmword [esp + 0x150]
xor eax, dword [esp + 0x2c0]
mov dword [esp + 0x1b0], eax
mov eax, dword [esp + 0x1f0]
and eax, edx
xor eax, dword [esp + 0x60]
add dword [esp + 0x1b0], ebx
mov ebx, dword [esp + 0xc0]
movdqa xmmword [esp + 0xc0], xmm0
movd xmm7, dword [esp + 0x1b0]
mov dword [esp + 0x1f0], eax
mov eax, esi
adc ebx, edi
xor edx, dword [esp + 0x30]
mov edi, dword [esp + 0x40]
xor eax, dword [esp + 0x20]
add ecx, dword [esp + 0x60]
movd xmm3, ebx
punpckldq xmm7, xmm3
punpcklqdq xmm7, xmm5
mov dword [esp + 0x300], edx
mov edx, dword [esp + 0x50]
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0x290]
mov esi, edx
adc eax, dword [esp + 0xd0]
add ecx, 0xe003826f
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x180]
adc eax, 0x6ca6351
mov dword [esp + 0x290], eax
mov eax, edi
and edi, ecx
xor eax, ecx
mov ecx, dword [esp + 0x370]
mov dword [esp + 0x250], eax
mov eax, dword [esp + 0x70]
mov ebx, dword [esp + 0x250]
and edx, eax
xor esi, eax
movd eax, xmm0
add eax, dword [esp + 0x160]
mov dword [esp + 0xd0], edx
movd xmm0, dword [esp + 0xd0]
adc ecx, dword [esp + 0x170]
add eax, dword [esp + 0x1f0]
adc ecx, dword [esp + 0x2f0]
add eax, dword [esp + 0x200]
adc ecx, dword [esp + 0x270]
add eax, 0x930aa725
movd xmm2, eax
adc ecx, 0xd5a79147
movd xmm1, ecx
punpckldq xmm2, xmm1
pshufd xmm2, xmm2, 0x44
paddq xmm7, xmm2
pshufd xmm2, xmm7, 0xff
movdqa xmm3, xmm7
movdqa xmm5, xmm7
movdqa xmm6, xmm7
movd edx, xmm2
pshufd xmm2, xmm7, 0xee
psrlq xmm3, 0xe
psllq xmm5, 0x32
psllq xmm6, 0x2e
movd ecx, xmm2
movdqa xmm2, xmm7
mov dword [esp + 0x270], edx
psrlq xmm2, 0x1c
mov dword [esp + 0x310], ecx
movsd xmm3, xmm2
movdqa xmm2, xmm7
psllq xmm2, 0x24
movsd xmm5, xmm2
movdqa xmm2, xmm7
orpd xmm5, xmm3
movdqa xmm3, xmm7
psrlq xmm2, 0x22
psrlq xmm3, 0x12
movsd xmm3, xmm2
movdqa xmm2, xmm7
psllq xmm2, 0x1e
movsd xmm6, xmm2
movdqa xmm2, xmm7
orpd xmm6, xmm3
psrlq xmm2, 0x27
movdqa xmm3, xmm7
xorpd xmm6, xmm5
movdqa xmm5, xmm7
psllq xmm3, 0x17
psrlq xmm5, 0x29
movsd xmm5, xmm2
movdqa xmm2, xmm7
psllq xmm2, 0x19
movsd xmm3, xmm2
pshufd xmm2, xmm7, 0x55
movd eax, xmm2
orpd xmm3, xmm5
and ebx, eax
mov dword [esp + 0x170], eax
movd eax, xmm7
xorpd xmm3, xmm6
movss xmm6, dword [esp + 0x60]
and esi, eax
movd xmm5, ebx
mov dword [esp + 0x2b0], eax
mov eax, dword [esp + 0xf0]
mov ebx, ecx
movd xmm2, esi
punpckldq xmm2, xmm5
movss xmm5, dword [esp + 0x290]
and eax, edx
xor eax, dword [esp + 0x20]
movlhps xmm5, xmm6
movd xmm6, edi
mov edi, dword [esp + 0x300]
punpckldq xmm0, xmm6
shufps xmm5, xmm5, 0x24
pxor xmm0, xmm2
movd xmm6, eax
and edi, ecx
xor edi, dword [esp + 0x30]
movd xmm2, edi
punpcklqdq xmm6, xmm2
movdqa xmm2, xmmword [esp + 0xc0]
shufps xmm1, xmm6, 0x24
paddq xmm1, xmm5
movdqa xmm5, xmmword [esp + 0x120]
movsd xmm1, xmm0
paddq xmm1, xmm3
movdqa xmm3, xmmword [esp + 0x140]
pshufd xmm0, xmm1, 0xff
movd edi, xmm0
pshufd xmm0, xmm1, 0xee
paddq xmm1, xmm0
movd esi, xmm0
pshufd xmm0, xmm1, 0x55
movdqa xmmword [esp + 0x2c0], xmm1
add esi, dword [esp + 0x100]
movd dword [esp + 0x1b0], xmm0
pshufd xmm0, xmm4, 0xff
movd dword [esp + 0x250], xmm0
movdqa xmm0, xmm1
pxor xmm0, xmm7
movd dword [esp + 0x340], xmm0
pshufd xmm0, xmm0, 0x55
adc edi, dword [esp + 0x90]
mov eax, esi
mov ecx, esi
mov dword [esp + 0xd0], esi
movd dword [esp + 0x2f0], xmm0
movdqa xmm0, xmm1
movdqa xmm1, xmm5
pand xmm0, xmm7
movd dword [esp + 0x290], xmm0
pshufd xmm0, xmm0, 0x55
movd dword [esp + 0x300], xmm0
movdqa xmm0, xmmword [esp + 0x1a0]
shld eax, edi, 0x12
shld ecx, edi, 0xe
mov edx, edi
mov dword [esp + 0x90], edi
xor ecx, eax
mov eax, edi
shld edx, esi, 0xe
shld eax, esi, 0x12
xor edx, eax
mov eax, esi
paddq xmm0, xmm2
shld eax, edi, 0x17
punpcklqdq xmm1, xmm0
movdqa xmm0, xmm3
xor eax, edx
mov edx, edi
movdqa xmmword [esp + 0x200], xmm1
paddq xmm0, xmmword [esp + 0x260]
movdqa xmm1, xmmword [esp + 0xb0]
shld edx, esi, 0x17
mov esi, dword [esp + 0x270]
xor edx, ecx
mov ecx, ebx
mov ebx, dword [esp + 0xe0]
punpcklqdq xmm1, xmm0
pshufd xmm0, xmm4, 0xee
xor esi, dword [esp + 0xc]
movdqa xmmword [esp + 0x320], xmm1
movdqa xmm1, xmm4
movd dword [esp + 0xf0], xmm0
paddq xmm0, xmm4
movdqa xmm1, xmm2
movdqa xmm4, xmmword [esp + 0x1e0]
movdqa xmm2, xmm3
xor ecx, ebx
punpcklqdq xmm1, xmm0
movdqa xmm0, xmmword [esp + 0x220]
and ecx, dword [esp + 0xd0]
movdqa xmmword [esp + 0x330], xmm1
movdqa xmm1, xmmword [esp + 0x240]
and esi, edi
mov edi, dword [esp + 0x20]
xor esi, dword [esp + 0xc]
paddq xmm0, xmm5
xor ecx, ebx
mov ebx, dword [esp + 0x30]
paddq xmm4, xmm1
punpcklqdq xmm1, xmm0
movdqa xmm0, xmm3
movdqa xmmword [esp + 0x240], xmm1
movdqa xmm1, xmmword [esp + 0x190]
psrlq xmm0, 0x13
add ebx, dword [esp + 0xf0]
punpckhqdq xmm1, xmm3
movdqa xmm5, xmm1
movdqa xmm6, xmm1
psrlq xmm5, 1
psllq xmm6, 0x38
adc edi, dword [esp + 0x250]
add ebx, ecx
shufps xmm5, xmm0, 0xe4
movdqa xmm0, xmm3
movdqa xmm3, xmm1
psllq xmm0, 0x2d
psllq xmm3, 0x3f
shufps xmm3, xmm0, 0xe4
movdqa xmm0, xmm2
orps xmm3, xmm5
movdqa xmm5, xmm1
psrlq xmm0, 0x3d
psrlq xmm1, 7
adc edi, esi
mov esi, ebx
psrlq xmm5, 8
add esi, eax
shufps xmm5, xmm0, 0xe4
movdqa xmm0, xmm2
psrlq xmm2, 6
adc edi, edx
add esi, 0xa0e6e70
psllq xmm0, 3
shufps xmm1, xmm2, 0xe4
movaps xmm2, xmmword [esp + 0x1c0]
adc edi, 0x14292967
shufps xmm6, xmm0, 0xe4
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x1b0]
orps xmm6, xmm5
xorps xmm6, xmm3
xorps xmm1, xmm6
unpcklpd xmm2, xmmword [esp + 0x2a0]
movaps xmm0, xmm1
movdqa xmm1, xmmword [esp + 0x110]
mov ecx, edi
punpcklqdq xmm1, xmm4
paddq xmm1, xmm0
shufps xmm2, xmm1, 0xe2
movdqa xmm0, xmm1
movdqa xmm5, xmm1
movaps xmmword [esp + 0x110], xmm1
movaps xmm3, xmm2
psrlq xmm0, 0x13
psllq xmm5, 0x2d
movaps xmm6, xmm2
psrlq xmm3, 1
psllq xmm6, 0x38
shufps xmm3, xmm0, 0xe4
movaps xmm0, xmm2
psllq xmm0, 0x3f
shufps xmm0, xmm5, 0xe4
movaps xmm5, xmm2
psrlq xmm2, 7
orps xmm0, xmm3
movdqa xmm3, xmm1
psrlq xmm5, 8
psrlq xmm3, 0x3d
shufps xmm5, xmm3, 0xe4
movdqa xmm3, xmm1
psllq xmm3, 3
shufps xmm6, xmm3, 0xe4
movdqa xmm3, xmmword [esp + 0x120]
orps xmm6, xmm5
xorps xmm6, xmm0
movdqa xmm0, xmm1
psrlq xmm0, 6
shufps xmm2, xmm0, 0xe4
pshufd xmm0, xmm1, 0xff
movd dword [esp + 0x160], xmm0
movdqa xmm0, xmmword [esp + 0x2c0]
xorps xmm2, xmm6
movdqa xmm6, xmm3
paddq xmm2, xmmword [esp + 0x240]
psrlq xmm6, 1
movd ebx, xmm0
pshufd xmm0, xmm1, 0xee
movdqa xmm1, xmm3
mov eax, ebx
shld ecx, ebx, 0x1e
mov edx, ebx
mov dword [esp + 0x190], ebx
movdqa xmmword [esp + 0x1c0], xmm2
movdqa xmm2, xmmword [esp + 0x220]
psllq xmm1, 0x3f
shld eax, edi, 4
shld edx, edi, 0x1e
xor ecx, eax
mov eax, edi
shld eax, ebx, 4
xor edx, eax
mov eax, ebx
shld eax, edi, 0x19
xor eax, edx
mov edx, edi
mov edi, dword [esp + 0x2b0]
shld edx, ebx, 0x19
xor edx, ecx
mov ecx, edi
and edi, dword [esp + 0x50]
xor ecx, dword [esp + 0x50]
and ecx, ebx
mov ebx, dword [esp + 0x170]
xor edi, ecx
mov ecx, dword [esp + 0x170]
and ebx, dword [esp + 0x40]
xor ecx, dword [esp + 0x40]
and ecx, dword [esp + 0x1b0]
xor ebx, ecx
add edi, eax
mov eax, dword [esp + 0x20]
adc ebx, edx
add edi, esi
mov edx, dword [esp + 0xf0]
mov dword [esp + 0x1e0], edi
adc ebx, eax
add esi, dword [esp + 0x70]
mov dword [esp + 0x60], ebx
mov ebx, dword [esp + 0x250]
adc eax, dword [esp + 0x180]
mov dword [esp + 0x30], esi
mov ecx, ebx
shld ecx, edx, 3
mov dword [esp + 0x20], eax
mov eax, edx
shld eax, ebx, 0xd
xor ecx, eax
mov eax, ebx
shld eax, edx, 0xd
mov edx, dword [esp + 0xf0]
mov dword [esp + 0x70], ecx
mov ecx, dword [esp + 0xf0]
shld edx, ebx, 3
xor edx, eax
mov eax, ebx
shld eax, ecx, 0x1a
xor eax, edx
mov edx, dword [esp + 0x20]
mov dword [esp + 0x1f0], eax
mov eax, ebx
mov ebx, esi
shr eax, 6
xor eax, dword [esp + 0x70]
shld ebx, edx, 0xe
mov ecx, edx
shld ecx, esi, 0xe
mov dword [esp + 0x100], eax
mov eax, esi
shld eax, edx, 0x12
xor ebx, eax
mov eax, edx
shld eax, esi, 0x12
xor ecx, eax
mov eax, esi
shld eax, edx, 0x17
xor eax, ecx
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x180], eax
mov eax, edx
shld eax, esi, 0x17
xor eax, ebx
mov dword [esp + 0x2d0], eax
mov eax, dword [esp + 0x270]
movdqa xmmword [esp + 0x270], xmm0
xor ecx, eax
and ecx, edx
mov edx, dword [esp + 0xd0]
xor ecx, eax
mov eax, dword [esp + 0x310]
mov dword [esp + 0x2a0], ecx
xor edx, eax
and edx, esi
mov esi, edi
xor edx, eax
mov eax, dword [esp + 0x60]
mov ecx, eax
shld edi, eax, 4
mov ebx, eax
mov eax, esi
shld ecx, esi, 0x1e
shld ebx, esi, 4
xor ecx, edi
mov edi, dword [esp + 0x60]
shld eax, edi, 0x1e
mov edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x60]
shld edi, ebx, 0x19
xor edi, eax
mov eax, dword [esp + 0x60]
shld eax, esi, 0x19
xor eax, ecx
mov ecx, dword [esp + 0x340]
and ecx, esi
xor dword [esp + 0x290], ecx
mov ecx, dword [esp + 0x60]
and dword [esp + 0x2f0], ecx
mov ecx, dword [esp + 0x2f0]
xor dword [esp + 0x300], ecx
add dword [esp + 0x290], edi
mov ecx, dword [esp + 0x1b0]
mov edi, esi
adc dword [esp + 0x300], eax
mov eax, dword [esp + 0x20]
xor eax, dword [esp + 0x90]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x30]
xor eax, dword [esp + 0xd0]
mov dword [esp + 0x340], eax
mov eax, dword [esp + 0x60]
xor eax, ecx
and ecx, dword [esp + 0x60]
mov dword [esp + 0x240], eax
mov eax, dword [esp + 0x190]
mov dword [esp + 0x1b0], ecx
mov ecx, dword [esp + 0xc]
xor edi, eax
and eax, esi
mov esi, dword [esp + 0xe0]
mov dword [esp + 0x310], edi
mov edi, dword [esp + 0x160]
mov dword [esp + 0x190], eax
movd eax, xmm0
movd xmm4, dword [esp + 0x190]
add esi, eax
adc ecx, edi
add esi, edx
mov edx, eax
adc ecx, dword [esp + 0x2a0]
shld edx, edi, 0x1f
mov dword [esp + 0xe0], esi
mov esi, edi
shld esi, eax, 0x1f
mov dword [esp + 0xc], ecx
mov ecx, eax
shld ecx, edi, 0x18
xor ecx, edx
mov edx, edi
shld edx, eax, 0x18
shrd eax, edi, 7
shr edi, 7
xor edx, esi
xor edi, ecx
mov ecx, dword [esp + 0x100]
mov esi, dword [esp + 0xc]
xor eax, edx
mov edx, dword [esp + 0xe0]
mov dword [esp + 0x160], edi
mov dword [esp + 0x2f0], eax
mov eax, dword [esp + 0x1f0]
add eax, dword [esp + 0x80]
adc ecx, dword [esp + 0x10]
movd xmm0, eax
add edx, dword [esp + 0x180]
mov dword [esp + 0x1f0], eax
movd xmm5, ecx
adc esi, dword [esp + 0x2d0]
add edx, 0x46d22ffc
mov dword [esp + 0x100], ecx
movdqa xmmword [esp + 0x2a0], xmm5
punpcklqdq xmm5, xmm0
movdqa xmm0, xmm2
psrldq xmm2, 9
shufps xmm0, xmm5, 0x2e
movaps xmm5, xmm0
psrlq xmm5, 0x13
adc esi, 0x27b70a85
add eax, 0x5c26c926
shufps xmm6, xmm5, 0xe4
movaps xmm5, xmm0
adc ecx, 0x2e1b2138
psllq xmm5, 0x2d
shufps xmm1, xmm5, 0xe4
movaps xmm5, xmm0
psrlq xmm5, 0x3d
orps xmm1, xmm6
movdqa xmm6, xmm3
psrlq xmm3, 7
shufps xmm2, xmm5, 0xe4
movaps xmm5, xmm0
psllq xmm6, 0x38
psrlq xmm0, 6
psllq xmm5, 3
shufps xmm3, xmm0, 0xe4
movd xmm0, esi
shufps xmm6, xmm5, 0xe4
movd xmm5, dword [esp + 0x50]
orps xmm6, xmm2
xorps xmm6, xmm1
movd xmm1, edx
xorps xmm3, xmm6
punpckldq xmm1, xmm0
movd xmm0, dword [esp + 0x300]
paddq xmm3, xmmword [esp + 0x230]
movdqa xmmword [esp + 0x120], xmm3
movd xmm3, dword [esp + 0x290]
punpckldq xmm3, xmm0
movd xmm0, dword [esp + 0x40]
punpckldq xmm5, xmm0
pshufd xmm0, xmm1, 0x44
punpcklqdq xmm3, xmm5
paddq xmm3, xmm0
pshufd xmm0, xmm3, 0xff
movdqa xmm1, xmm3
movdqa xmm5, xmm3
movdqa xmm6, xmm3
movd edx, xmm0
pshufd xmm0, xmm3, 0xee
psrlq xmm1, 0xe
psllq xmm5, 0x32
psllq xmm6, 0x1e
movd esi, xmm0
movdqa xmm0, xmm3
mov dword [esp + 0x50], edx
psrlq xmm0, 0x1c
mov dword [esp + 0x180], esi
movsd xmm1, xmm0
movdqa xmm0, xmm3
psllq xmm0, 0x24
movsd xmm5, xmm0
movdqa xmm0, xmm3
orpd xmm5, xmm1
movdqa xmm1, xmm3
psrlq xmm0, 0x22
psrlq xmm1, 0x12
movsd xmm1, xmm0
movdqa xmm0, xmm3
psllq xmm0, 0x2e
movsd xmm0, xmm6
movdqa xmm6, xmm3
orpd xmm0, xmm1
movdqa xmm1, xmm3
psrlq xmm6, 0x29
psrlq xmm1, 0x27
xorpd xmm0, xmm5
movdqa xmm5, xmm3
movsd xmm6, xmm1
movdqa xmm1, xmm3
psllq xmm5, 0x17
psllq xmm1, 0x19
movsd xmm5, xmm1
movd xmm1, dword [esp + 0x240]
orpd xmm5, xmm6
movd xmm6, eax
mov eax, dword [esp + 0x70]
xorpd xmm5, xmm0
movd xmm0, dword [esp + 0x310]
and eax, edx
punpckldq xmm0, xmm1
movd xmm1, ecx
mov ecx, dword [esp + 0x340]
xor eax, dword [esp + 0x90]
punpcklqdq xmm1, xmm6
movdqa xmm6, xmm3
pand xmm6, xmm0
shufps xmm0, xmm1, 0x24
movd xmm1, dword [esp + 0x1b0]
paddq xmm0, xmm7
movdqa xmm7, xmmword [esp + 0x1c0]
and ecx, esi
xor ecx, dword [esp + 0xd0]
punpckldq xmm4, xmm1
pxor xmm4, xmm6
movd xmm6, eax
movdqa xmmword [esp + 0x340], xmm7
movd xmm1, ecx
punpcklqdq xmm6, xmm1
movdqa xmm1, xmmword [esp + 0x1d0]
shufps xmm2, xmm6, 0x24
movdqa xmm6, xmmword [esp + 0xb0]
paddq xmm2, xmm0
movsd xmm2, xmm4
paddq xmm2, xmm5
movdqa xmm5, xmm7
psrldq xmm1, 9
pshufd xmm0, xmm2, 0xff
movdqa xmm4, xmm6
psllq xmm5, 0x2d
movd eax, xmm0
pshufd xmm0, xmm2, 0xee
psrlq xmm4, 1
movd edi, xmm0
paddq xmm2, xmm0
add edi, dword [esp + 0x2b0]
pshufd xmm0, xmm2, 0x55
movdqa xmmword [esp + 0x230], xmm2
movd ebx, xmm0
pshufd xmm0, xmm3, 0x55
mov dword [esp + 0xc], ebx
movd dword [esp + 0x80], xmm0
pshufd xmm0, xmm7, 0xff
movd dword [esp + 0x290], xmm0
movdqa xmm0, xmm7
adc eax, dword [esp + 0x170]
mov ecx, edi
mov edx, edi
mov dword [esp + 0x70], edi
psrlq xmm0, 0x13
shufps xmm4, xmm0, 0xe4
movdqa xmm0, xmm6
psllq xmm0, 0x3f
shufps xmm0, xmm5, 0xe4
movdqa xmm5, xmm6
shld ecx, eax, 0x12
shld edx, eax, 0xe
mov esi, eax
mov dword [esp + 0x40], eax
orps xmm0, xmm4
movdqa xmm4, xmm7
psllq xmm5, 0x38
xor edx, ecx
mov ecx, eax
shld esi, edi, 0xe
psrlq xmm4, 0x3d
shld ecx, edi, 0x12
shufps xmm1, xmm4, 0xe4
movdqa xmm4, xmm7
xor esi, ecx
mov ecx, edi
psllq xmm4, 3
shld ecx, eax, 0x17
shufps xmm5, xmm4, 0xe4
xor ecx, esi
mov esi, ebx
orps xmm5, xmm1
pshufd xmm1, xmm7, 0xee
mov dword [esp + 0x220], ecx
mov ecx, eax
xorps xmm5, xmm0
movdqa xmm0, xmm7
movdqa xmm7, xmmword [esp + 0x120]
movdqa xmmword [esp + 0x300], xmm1
shld ecx, edi, 0x17
movd edi, xmm3
psrlq xmm0, 6
xor ecx, edx
mov dword [esp + 0x10], edi
xor edi, dword [esp + 0x1e0]
movdqa xmm4, xmm0
movdqa xmm0, xmm6
mov dword [esp + 0xe0], ecx
movd ecx, xmm2
psrlq xmm0, 7
mov edx, ecx
shld esi, ecx, 0x1e
mov eax, ecx
shufps xmm0, xmm4, 0xe4
shld edx, ebx, 4
shld eax, ebx, 0x1e
xorps xmm0, xmm5
xor esi, edx
mov edx, ebx
shld ebx, ecx, 0x19
and edi, ecx
paddq xmm0, xmmword [esp + 0x200]
shld edx, ecx, 4
xor ebx, esi
mov esi, dword [esp + 0x80]
xor eax, edx
mov edx, ecx
mov ecx, dword [esp + 0xc]
movdqa xmmword [esp + 0xb0], xmm0
pshufd xmm0, xmm7, 0xff
movd dword [esp + 0x200], xmm0
shld edx, ecx, 0x19
mov ecx, dword [esp + 0x60]
xor edx, eax
mov eax, esi
and esi, dword [esp + 0x60]
xor eax, ecx
mov ecx, dword [esp + 0x10]
and eax, dword [esp + 0xc]
and ecx, dword [esp + 0x1e0]
xor esi, eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x80], esi
mov esi, dword [esp + 0x20]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x180]
xor dword [esp + 0x10], edi
mov edi, dword [esp + 0x40]
xor eax, esi
xor ecx, dword [esp + 0x30]
and eax, edi
xor eax, esi
and ecx, dword [esp + 0x70]
xor ecx, dword [esp + 0x30]
add dword [esp + 0x10], edx
mov edx, dword [esp + 0x70]
adc dword [esp + 0x80], ebx
xor edx, dword [esp + 0x180]
xor edi, dword [esp + 0x50]
movd xmm5, dword [esp + 0x80]
mov dword [esp + 0x1b0], edx
mov edx, dword [esp + 0x1f0]
mov dword [esp + 0xc], edi
movd edi, xmm1
pshufd xmm1, xmm7, 0xee
mov ebx, edi
mov dword [esp + 0x190], edi
add dword [esp + 0x360], edx
mov edx, dword [esp + 0x100]
adc dword [esp + 0x210], edx
mov edx, dword [esp + 0xf0]
add dword [esp + 0x2f0], edx
mov edx, dword [esp + 0x250]
adc dword [esp + 0x160], edx
mov edx, dword [esp + 0x290]
add dword [esp + 0xd0], edi
adc dword [esp + 0x90], edx
shld ebx, edx, 0x1f
shld edi, edx, 0x18
mov esi, edx
xor edi, ebx
mov ebx, dword [esp + 0x190]
shld esi, ebx, 0x1f
mov ebx, edx
mov dword [esp + 0xf0], esi
mov esi, dword [esp + 0x190]
shld ebx, esi, 0x18
mov esi, dword [esp + 0x190]
xor ebx, dword [esp + 0xf0]
shrd esi, edx, 7
shr edx, 7
xor edx, edi
xor esi, ebx
mov dword [esp + 0x290], edx
mov edx, dword [esp + 0xd0]
mov dword [esp + 0x190], esi
movdqa xmmword [esp + 0xd0], xmm1
add edx, ecx
mov ecx, dword [esp + 0x90]
adc ecx, eax
add edx, dword [esp + 0x220]
movd eax, xmm1
movdqa xmm1, xmmword [esp + 0x230]
adc ecx, dword [esp + 0xe0]
add edx, 0x5ac42aed
movd xmm4, edx
adc ecx, 0x4d2c6dfc
movd xmm0, ecx
mov ecx, dword [esp + 0x200]
punpckldq xmm4, xmm0
movd xmm0, dword [esp + 0x10]
pshufd xmm2, xmm4, 0x44
punpckldq xmm0, xmm5
punpcklqdq xmm0, xmmword [esp + 0x2c0]
mov dword [esp + 0x2c0], eax
add eax, 0x9d95b3df
adc ecx, 0x53380d13
paddq xmm0, xmm2
pshufd xmm2, xmm0, 0xee
movdqa xmm4, xmm0
movdqa xmm5, xmm0
movdqa xmm6, xmm0
movdqa xmmword [esp + 0x1d0], xmm0
movd edx, xmm2
pshufd xmm2, xmm0, 0xff
psrlq xmm4, 0xe
psllq xmm5, 0x32
psllq xmm6, 0x2e
movd esi, xmm2
movdqa xmm2, xmm0
mov dword [esp + 0x10], edx
psrlq xmm2, 0x1c
mov dword [esp + 0x80], esi
movsd xmm4, xmm2
movdqa xmm2, xmm0
psllq xmm2, 0x24
movsd xmm5, xmm2
movdqa xmm2, xmm0
orpd xmm5, xmm4
movdqa xmm4, xmm0
psrlq xmm2, 0x22
psrlq xmm4, 0x12
movsd xmm4, xmm2
movdqa xmm2, xmm0
psllq xmm2, 0x1e
movsd xmm6, xmm2
movdqa xmm2, xmm0
orpd xmm6, xmm4
movdqa xmm4, xmm0
psrlq xmm2, 0x27
psrlq xmm4, 0x29
xorpd xmm6, xmm5
movdqa xmm5, xmm0
movsd xmm4, xmm2
movdqa xmm2, xmm0
psllq xmm5, 0x19
psllq xmm2, 0x17
movsd xmm2, xmm5
movss xmm5, dword [esp + 0x30]
orpd xmm2, xmm4
movss xmm4, dword [esp + 0x20]
xorpd xmm2, xmm6
movd xmm6, eax
mov eax, dword [esp + 0xc]
movlhps xmm4, xmm5
movdqa xmm5, xmm0
shufps xmm5, xmm4, 0x24
movd xmm4, ecx
mov ecx, dword [esp + 0x1b0]
and eax, esi
punpckldq xmm6, xmm4
xor eax, dword [esp + 0x50]
movdqa xmm4, xmm1
pshufd xmm6, xmm6, 0x44
pand xmm4, xmm3
paddq xmm6, xmm5
movdqa xmm5, xmm1
and ecx, edx
pxor xmm5, xmm3
xor ecx, dword [esp + 0x180]
pand xmm5, xmm0
pxor xmm5, xmm4
movd xmm4, eax
movd xmm7, ecx
punpckldq xmm7, xmm4
pshufd xmm4, xmm7, 0x44
movdqa xmm7, xmmword [esp + 0x120]
paddq xmm4, xmm6
movsd xmm4, xmm5
paddq xmm4, xmm2
pshufd xmm2, xmm4, 0xff
movdqa xmm6, xmm7
movd eax, xmm2
pshufd xmm2, xmm4, 0xee
psllq xmm6, 0x2d
paddq xmm4, xmm2
movd ebx, xmm2
pshufd xmm2, xmm4, 0x55
add ebx, dword [esp + 0x1e0]
movd edx, xmm2
pshufd xmm2, xmm0, 0x55
movd dword [esp + 0x2b0], xmm2
movdqa xmm2, xmm0
pand xmm0, xmm1
mov dword [esp + 0x30], edx
pxor xmm2, xmm1
movdqa xmm1, xmmword [esp + 0x1a0]
pand xmm2, xmm4
adc eax, dword [esp + 0x60]
mov ecx, ebx
mov esi, ebx
mov dword [esp + 0xe0], ebx
pxor xmm0, xmm2
pshufd xmm2, xmm0, 0x55
movd dword [esp + 0xf0], xmm0
movdqa xmm0, xmmword [esp + 0xc0]
movd dword [esp + 0x20], xmm2
movdqa xmm2, xmm7
psrldq xmm1, 9
paddq xmm2, xmmword [esp + 0xd0]
shld ecx, eax, 0x12
shld esi, eax, 0xe
mov edi, eax
mov dword [esp + 0x90], eax
xor esi, ecx
mov ecx, eax
shld edi, ebx, 0xe
shld ecx, ebx, 0x12
xor edi, ecx
mov ecx, ebx
shld ebx, eax, 0x17
pshufd xmm5, xmm2, 0x55
movd dword [esp + 0x380], xmm2
movdqa xmm2, xmm7
shld eax, ecx, 0x17
movd ecx, xmm4
xor ebx, edi
mov edi, edx
movd dword [esp + 0x2d0], xmm5
movdqa xmm5, xmm0
psrlq xmm2, 0x13
xor eax, esi
mov esi, ecx
shld edi, ecx, 0x1e
mov dword [esp + 0x1a0], ecx
psrlq xmm5, 1
shld esi, edx, 4
mov dword [esp + 0x60], eax
mov eax, edx
mov eax, ecx
shufps xmm5, xmm2, 0xe4
movdqa xmm2, xmm0
xor edi, esi
mov esi, edx
shld eax, edx, 0x1e
psllq xmm2, 0x3f
shld esi, ecx, 4
shufps xmm2, xmm6, 0xe4
movdqa xmm6, xmm0
psrlq xmm0, 7
xor eax, esi
mov esi, ecx
orps xmm2, xmm5
movdqa xmm5, xmm7
psllq xmm6, 0x38
shld esi, edx, 0x19
mov edx, dword [esp + 0x30]
psrlq xmm5, 0x3d
xor esi, eax
shufps xmm1, xmm5, 0xe4
movdqa xmm5, xmm7
psllq xmm5, 3
shufps xmm6, xmm5, 0xe4
shld edx, ecx, 0x19
mov ecx, dword [esp + 0xe0]
orps xmm6, xmm1
movdqa xmm1, xmmword [esp + 0x140]
xor edx, edi
mov edi, dword [esp + 0x10]
xorps xmm6, xmm2
movdqa xmm2, xmm7
movdqa xmm7, xmmword [esp + 0xb0]
psrlq xmm2, 6
shufps xmm0, xmm2, 0xe4
xorps xmm0, xmm6
xor edi, dword [esp + 0x70]
pshufd xmm2, xmm7, 0xff
punpckhqdq xmm1, xmm7
movdqa xmm6, xmm7
paddq xmm0, xmmword [esp + 0x320]
movdqa xmm5, xmm1
movd dword [esp + 0xc], xmm2
movdqa xmm2, xmm7
psllq xmm6, 0x2d
psrlq xmm2, 0x13
psrlq xmm5, 1
shufps xmm5, xmm2, 0xe4
movdqa xmm2, xmm1
and edi, ecx
psllq xmm2, 0x3f
movdqa xmmword [esp + 0xc0], xmm0
movdqa xmm0, xmm7
xor edi, dword [esp + 0x70]
shufps xmm2, xmm6, 0xe4
movdqa xmm6, xmm1
orps xmm2, xmm5
movdqa xmm5, xmm7
psrlq xmm6, 8
psrlq xmm5, 0x3d
shufps xmm6, xmm5, 0xe4
movdqa xmm5, xmm7
movdqa xmm7, xmm1
psrlq xmm1, 7
psllq xmm5, 3
psllq xmm7, 0x38
shufps xmm7, xmm5, 0xe4
orps xmm7, xmm6
xorps xmm7, xmm2
movdqa xmm2, xmm0
movdqa xmm0, xmmword [esp + 0x150]
mov dword [esp + 0x150], ebx
mov ebx, dword [esp + 0x80]
psrlq xmm2, 6
shufps xmm1, xmm2, 0xe4
xorps xmm1, xmm7
paddq xmm1, xmmword [esp + 0x330]
mov eax, ebx
xor eax, dword [esp + 0x40]
movdqa xmmword [esp + 0x140], xmm1
movdqa xmm1, xmmword [esp + 0xc0]
and eax, dword [esp + 0x90]
punpckhqdq xmm0, xmm1
pshufd xmm2, xmm1, 0xff
movdqa xmm6, xmm1
movdqa xmm5, xmm0
movd dword [esp + 0x250], xmm2
movdqa xmm2, xmm1
psllq xmm6, 0x2d
movdqa xmm7, xmm0
xor eax, dword [esp + 0x40]
add dword [esp + 0xf0], esi
mov esi, dword [esp + 0x90]
psrlq xmm2, 0x13
psrlq xmm5, 1
psllq xmm7, 0x38
shufps xmm5, xmm2, 0xe4
movdqa xmm2, xmm0
psllq xmm2, 0x3f
shufps xmm2, xmm6, 0xe4
movdqa xmm6, xmm0
psrlq xmm0, 7
adc dword [esp + 0x20], edx
mov edx, ecx
mov ecx, dword [esp + 0x1f0]
xor esi, ebx
mov ebx, dword [esp + 0x180]
orps xmm2, xmm5
movdqa xmm5, xmm1
psrlq xmm6, 8
xor edx, dword [esp + 0x10]
psrlq xmm5, 0x3d
shufps xmm6, xmm5, 0xe4
movdqa xmm5, xmm1
psrlq xmm1, 6
psllq xmm5, 3
shufps xmm0, xmm1, 0xe4
movdqa xmm1, xmmword [esp + 0x260]
add dword [esp + 0x190], ecx
mov ecx, dword [esp + 0x100]
shufps xmm7, xmm5, 0xe4
orps xmm7, xmm6
movd xmm6, dword [esp + 0x20]
xorps xmm7, xmm2
xorps xmm0, xmm7
adc dword [esp + 0x290], ecx
movaps xmm5, xmm0
movdqa xmm0, xmmword [esp + 0x110]
paddq xmm0, xmmword [esp + 0x270]
punpcklqdq xmm1, xmm0
pshufd xmm0, xmmword [esp + 0xc0], 0xee
paddq xmm1, xmm5
movdqa xmmword [esp + 0x260], xmm1
pshufd xmm1, xmmword [esp + 0xb0], 0xee
movdqa xmmword [esp + 0x320], xmm0
movd ecx, xmm1
movdqa xmmword [esp + 0x220], xmm1
movdqa xmm1, xmmword [esp + 0x230]
mov dword [esp + 0x1b0], ecx
add ebx, ecx
mov ecx, dword [esp + 0x50]
adc ecx, dword [esp + 0xc]
add ebx, edi
adc ecx, eax
add ebx, dword [esp + 0x150]
movd eax, xmm0
movdqa xmm0, xmmword [esp + 0x1d0]
mov dword [esp + 0x330], eax
adc ecx, dword [esp + 0x60]
add ebx, 0x8baf63de
movd dword [esp + 0x50], xmm0
movd xmm5, ebx
adc ecx, 0x650a7354
add eax, 0x3c77b2a8
movd xmm2, ecx
mov ecx, dword [esp + 0x250]
punpckldq xmm5, xmm2
movd xmm2, dword [esp + 0xf0]
adc ecx, 0x766a0abb
punpckldq xmm2, xmm6
punpcklqdq xmm2, xmm3
pshufd xmm3, xmm5, 0x44
paddq xmm2, xmm3
pshufd xmm3, xmm2, 0xee
movdqa xmm6, xmm2
movdqa xmm5, xmm2
movdqa xmm7, xmm2
movd dword [esp + 0x180], xmm2
movd edi, xmm3
pshufd xmm3, xmm2, 0xff
psrlq xmm6, 0xe
psllq xmm5, 0x32
psrlq xmm7, 0x12
movd ebx, xmm3
movdqa xmm3, xmm2
and edx, edi
mov dword [esp + 0xf0], edi
psrlq xmm3, 0x1c
and esi, ebx
xor edx, dword [esp + 0x10]
mov dword [esp + 0x240], ebx
movsd xmm6, xmm3
movdqa xmm3, xmm2
xor esi, dword [esp + 0x80]
psllq xmm3, 0x24
movsd xmm5, xmm3
movdqa xmm3, xmm2
psrlq xmm3, 0x22
orpd xmm5, xmm6
movdqa xmm6, xmm2
movsd xmm7, xmm3
movdqa xmm3, xmm2
psllq xmm6, 0x2e
psllq xmm3, 0x1e
movsd xmm6, xmm3
movdqa xmm3, xmm2
orpd xmm6, xmm7
movdqa xmm7, xmm2
psrlq xmm3, 0x27
psrlq xmm7, 0x29
xorpd xmm6, xmm5
movdqa xmm5, xmm2
movsd xmm7, xmm3
movdqa xmm3, xmm2
psllq xmm5, 0x17
psllq xmm3, 0x19
movsd xmm5, xmm3
movss xmm3, dword [esp + 0x40]
orpd xmm5, xmm7
movdqa xmm7, xmm2
xorpd xmm5, xmm6
movss xmm6, dword [esp + 0x70]
movlhps xmm3, xmm6
movd xmm6, eax
mov eax, ebx
shufps xmm7, xmm3, 0x24
movd xmm3, ecx
punpckldq xmm6, xmm3
pshufd xmm3, xmm6, 0x44
movdqa xmm6, xmm4
pxor xmm6, xmm0
pand xmm0, xmm4
paddq xmm3, xmm7
movd xmm7, edx
pand xmm6, xmm2
pxor xmm6, xmm0
movd xmm0, esi
punpckldq xmm7, xmm0
pshufd xmm0, xmm7, 0x44
movdqa xmm7, xmmword [esp + 0x300]
paddq xmm0, xmm3
movsd xmm0, xmm6
movdqa xmm6, xmmword [esp + 0x140]
paddq xmm0, xmm5
pshufd xmm3, xmm0, 0xee
paddq xmm1, xmm3
paddq xmm0, xmm3
movd ecx, xmm1
pshufd xmm1, xmm1, 0x55
pshufd xmm5, xmm0, 0x55
movd dword [esp + 0x40], xmm0
movd esi, xmm1
pshufd xmm1, xmm6, 0xff
movd dword [esp + 0x20], xmm5
movaps xmm5, xmmword [esp + 0x2a0]
mov edx, ecx
mov edi, ecx
mov dword [esp + 0x1d0], ecx
movd dword [esp + 0x1c0], xmm1
pshufd xmm1, xmm2, 0x55
shld edx, esi, 0x12
shld edi, esi, 0xe
mov ebx, esi
mov dword [esp + 0x170], esi
movd dword [esp + 0x100], xmm1
movdqa xmm1, xmm2
xor edi, edx
mov edx, esi
shld ebx, ecx, 0xe
pxor xmm1, xmm4
pand xmm4, xmm2
shld edx, ecx, 0x12
pand xmm1, xmm0
xor ebx, edx
mov edx, ecx
pxor xmm4, xmm1
shld edx, esi, 0x17
pshufd xmm1, xmm4, 0x55
movd dword [esp + 0x70], xmm4
movdqa xmm4, xmmword [esp + 0x260]
xor edx, ebx
mov ebx, esi
mov esi, dword [esp + 0x90]
movd dword [esp + 0x60], xmm1
shld ebx, ecx, 0x17
mov ecx, dword [esp + 0xf0]
xor ebx, edi
mov edi, eax
mov eax, dword [esp + 0xe0]
pshufd xmm1, xmm4, 0xff
xor edi, esi
movd dword [esp + 0x230], xmm1
movdqa xmm1, xmm0
pand xmm0, xmm2
and edi, dword [esp + 0x170]
movd dword [esp + 0x110], xmm0
pshufd xmm0, xmm0, 0x55
pxor xmm1, xmm2
movdqa xmm2, xmm4
xor ecx, eax
movd dword [esp + 0x1e0], xmm0
movss xmm0, dword [esp + 0x1f0]
movd dword [esp + 0x3f0], xmm1
pshufd xmm1, xmm1, 0x55
psllq xmm2, 0x2d
and ecx, dword [esp + 0x1d0]
movd dword [esp + 0x2e8], xmm1
xor edi, esi
mov esi, dword [esp + 0x10]
movlhps xmm5, xmm0
movdqa xmm0, xmm4
xor ecx, eax
mov eax, dword [esp + 0x80]
shufps xmm5, xmm4, 0xe2
psrlq xmm0, 0x13
movaps xmm1, xmm5
movaps xmm3, xmm5
psrlq xmm1, 1
psllq xmm3, 0x38
shufps xmm1, xmm0, 0xe4
movaps xmm0, xmm5
psllq xmm0, 0x3f
shufps xmm0, xmm2, 0xe4
movaps xmm2, xmm5
psrlq xmm5, 7
orps xmm0, xmm1
movdqa xmm1, xmm4
psrlq xmm2, 8
psrlq xmm1, 0x3d
shufps xmm2, xmm1, 0xe4
movdqa xmm1, xmm4
psllq xmm1, 3
shufps xmm3, xmm1, 0xe4
orps xmm3, xmm2
xorps xmm3, xmm0
movdqa xmm0, xmm4
psrlq xmm0, 6
shufps xmm5, xmm0, 0xe4
movdqa xmm0, xmmword [esp + 0xc0]
xorps xmm5, xmm3
paddq xmm0, xmmword [esp + 0x320]
pshufd xmm1, xmm0, 0x55
movd dword [esp + 0x3a0], xmm0
pshufd xmm0, xmm6, 0xee
movd dword [esp + 0x150], xmm0
movd dword [esp + 0x3e0], xmm1
movdqa xmm1, xmm6
movdqa xmm6, xmmword [esp + 0x270]
add esi, dword [esp + 0x150]
paddq xmm1, xmm0
pshufd xmm0, xmm4, 0xee
movd dword [esp + 0x1f0], xmm0
movdqa xmmword [esp + 0x140], xmm1
movdqa xmm1, xmm4
movdqa xmm4, xmmword [esp + 0xd0]
paddq xmm1, xmm0
pshufd xmm0, xmm1, 0x55
movd dword [esp + 0x370], xmm1
adc eax, dword [esp + 0x1c0]
add esi, ecx
movd dword [esp + 0xac], xmm0
movdqa xmm0, xmmword [esp + 0x340]
movdqa xmm1, xmm4
psrlq xmm1, 1
adc eax, edi
add esi, edx
mov edi, dword [esp + 0x20]
paddq xmm0, xmm7
adc eax, ebx
mov ebx, dword [esp + 0x40]
add esi, 0x47edaee6
punpcklqdq xmm6, xmm0
adc eax, 0x81c2c92e
paddq xmm6, xmm5
movdqa xmm0, xmm6
movdqa xmm2, xmm6
movdqa xmm5, xmm6
movdqa xmmword [esp + 0x270], xmm6
mov ecx, edi
psrlq xmm0, 0x13
psllq xmm2, 0x2d
mov edx, ebx
shld ecx, ebx, 0x1e
shufps xmm1, xmm0, 0xe4
movdqa xmm0, xmm4
shld edx, edi, 4
psllq xmm0, 0x3f
xor ecx, edx
mov edx, dword [esp + 0x20]
shufps xmm0, xmm2, 0xe4
movdqa xmm2, xmmword [esp + 0x120]
mov dword [esp + 0x10], ecx
mov ecx, edi
mov edi, ebx
orps xmm0, xmm1
movdqa xmm1, xmm6
shld ecx, ebx, 4
psrlq xmm1, 0x3d
shld edi, edx, 0x1e
mov edx, ebx
psrldq xmm2, 9
xor edi, ecx
mov ecx, dword [esp + 0x20]
shufps xmm2, xmm1, 0xe4
movdqa xmm1, xmm6
movaps xmm3, xmm2
movdqa xmm2, xmm4
psllq xmm1, 3
psrlq xmm4, 7
psllq xmm2, 0x38
shufps xmm2, xmm1, 0xe4
shld edx, ecx, 0x19
mov ecx, dword [esp + 0x60]
orps xmm2, xmm3
xor edx, edi
mov edi, dword [esp + 0x20]
xorps xmm2, xmm0
movdqa xmm0, xmm6
psrlq xmm0, 6
shufps xmm4, xmm0, 0xe4
pshufd xmm0, xmm6, 0xff
movd dword [esp + 0x310], xmm0
pshufd xmm0, xmm6, 0xee
xorps xmm4, xmm2
shld edi, ebx, 0x19
mov ebx, dword [esp + 0x70]
paddq xmm5, xmm0
movdqa xmmword [esp + 0xd0], xmm0
xor edi, dword [esp + 0x10]
pshufd xmm1, xmm5, 0x55
movd dword [esp + 0x3b0], xmm1
add ebx, edx
adc ecx, edi
add ebx, esi
adc ecx, eax
add esi, dword [esp + 0x50]
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 0x170]
mov dword [esp + 0x60], ecx
adc eax, dword [esp + 0x2b0]
mov edx, esi
mov ecx, esi
xor ebx, dword [esp + 0x240]
mov dword [esp + 0x10], esi
shld edx, eax, 0x12
shld ecx, eax, 0xe
mov edi, eax
and ebx, eax
mov dword [esp + 0x80], eax
xor ecx, edx
mov edx, eax
shld edi, esi, 0xe
xor ebx, dword [esp + 0x240]
shld edx, esi, 0x12
xor edi, edx
mov edx, esi
shld edx, eax, 0x17
xor edx, edi
mov edi, eax
mov eax, dword [esp + 0x90]
shld edi, esi, 0x17
xor edi, ecx
mov ecx, dword [esp + 0x1d0]
xor ecx, dword [esp + 0xf0]
and ecx, esi
mov esi, dword [esp + 0xe0]
xor ecx, dword [esp + 0xf0]
add esi, dword [esp + 0x1f0]
adc eax, dword [esp + 0x230]
add esi, ecx
adc eax, ebx
add esi, edx
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x3f0]
adc eax, edi
add esi, 0x1482353b
mov dword [esp + 0xe0], esi
mov esi, dword [esp + 0x60]
adc eax, 0x92722c85
mov dword [esp + 0x90], eax
mov eax, edx
mov edi, edx
and ebx, edx
mov ecx, esi
shld eax, esi, 4
shld edi, esi, 0x1e
shld ecx, edx, 0x1e
xor ecx, eax
mov eax, esi
shld eax, edx, 4
xor edi, eax
mov eax, edx
shld eax, esi, 0x19
xor eax, edi
mov edi, esi
shld edi, edx, 0x19
mov edx, dword [esp + 0x1e0]
xor edi, ecx
mov ecx, dword [esp + 0x110]
xor ecx, ebx
mov ebx, dword [esp + 0x2e8]
and ebx, esi
mov esi, dword [esp + 0x30]
xor edx, ebx
add ecx, eax
adc edx, edi
mov edi, dword [esp + 0x1a0]
mov dword [esp + 0x110], ecx
mov dword [esp + 0x1e0], edx
add edi, dword [esp + 0xe0]
adc esi, dword [esp + 0x90]
mov edx, dword [esp + 0x150]
mov ebx, dword [esp + 0x1c0]
mov dword [esp + 0x1a0], edi
mov eax, edx
mov ecx, ebx
mov dword [esp + 0x30], esi
shld eax, ebx, 0xd
shld ecx, edx, 3
xor ecx, eax
mov eax, ebx
shld eax, edx, 0xd
mov edx, dword [esp + 0x150]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x150]
shld edx, ebx, 3
xor edx, eax
mov eax, ebx
shld eax, ecx, 0x1a
mov ecx, edi
xor eax, edx
shld ecx, esi, 0xe
mov edx, esi
mov dword [esp + 0x2b0], eax
mov eax, ebx
shld edx, edi, 0xe
mov ebx, dword [esp + 0x10]
shr eax, 6
xor eax, dword [esp + 0x50]
mov dword [esp + 0x2a0], eax
mov eax, edi
shld eax, esi, 0x12
xor ecx, eax
mov eax, esi
shld eax, edi, 0x12
xor edx, eax
mov eax, edi
shld eax, esi, 0x17
shld esi, edi, 0x17
mov edi, dword [esp + 0x1b0]
xor esi, ecx
xor eax, edx
mov dword [esp + 0x418], esi
mov esi, dword [esp + 0xc]
mov dword [esp + 0x41c], eax
mov eax, edi
mov ecx, edi
shld eax, esi, 0x1f
shld ecx, esi, 0x18
mov edx, esi
xor ecx, eax
mov eax, esi
shld edx, edi, 0x18
shld eax, edi, 0x1f
shrd edi, esi, 7
shr esi, 7
xor edx, eax
xor esi, ecx
mov ecx, dword [esp + 0x170]
mov eax, dword [esp + 0x1d0]
xor edi, edx
mov edx, dword [esp + 0x80]
mov dword [esp + 0xc], esi
mov esi, dword [esp + 0x40]
mov dword [esp + 0x1b0], edi
mov edi, dword [esp + 0x20]
xor ebx, eax
xor edx, ecx
and ebx, dword [esp + 0x1a0]
and edx, dword [esp + 0x30]
xor ebx, eax
xor edx, ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x3c8], edx
mov edx, dword [esp + 0x70]
mov eax, ecx
and ecx, edi
xor eax, edi
mov dword [esp + 0x3cc], ecx
mov ecx, dword [esp + 0x150]
mov dword [esp + 0x120], eax
mov eax, edx
and edx, esi
xor eax, esi
mov dword [esp + 0x3d0], edx
mov edx, dword [esp + 0x1c0]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x30]
mov edi, ecx
mov esi, ecx
xor eax, dword [esp + 0x80]
mov dword [esp + 0x414], eax
mov eax, dword [esp + 0x1a0]
xor eax, dword [esp + 0x10]
mov dword [esp + 0x400], eax
mov eax, dword [esp + 0x1b0]
add eax, dword [esp + 0x2c0]
mov dword [esp + 0x1b0], eax
mov eax, dword [esp + 0xc]
adc eax, dword [esp + 0x200]
shld edi, edx, 0x1f
shld esi, edx, 0x18
xor esi, edi
mov edi, edx
shld edi, ecx, 0x1f
mov dword [esp + 0xc], eax
mov eax, edx
shld eax, ecx, 0x18
mov ecx, edx
xor eax, edi
mov edi, dword [esp + 0x150]
shld ecx, edi, 0x19
mov edi, dword [esp + 0x230]
xor ecx, eax
mov eax, edx
shr eax, 7
xor eax, esi
add ecx, dword [esp + 0x330]
mov esi, dword [esp + 0x1f0]
mov edx, edi
mov dword [esp + 0x230], edi
adc eax, dword [esp + 0x250]
mov dword [esp + 0x2e8], ecx
mov ecx, esi
shld ecx, edi, 0x18
mov dword [esp + 0x3f0], eax
mov eax, esi
shld eax, edi, 0x1f
xor ecx, eax
mov eax, edi
shld edi, esi, 0x18
shld eax, esi, 0x1f
xor edi, eax
mov eax, edx
shld eax, esi, 0x19
xor eax, edi
mov edi, edx
mov edx, dword [esp + 0x2b0]
shr edi, 7
xor edi, ecx
add eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x2a0]
adc edi, dword [esp + 0x1c0]
add edx, dword [esp + 0x360]
mov dword [esp + 0x340], eax
adc ecx, dword [esp + 0x210]
mov eax, edx
mov dword [esp + 0x330], edi
mov edi, edx
mov dword [esp + 0x2b0], edx
mov esi, ecx
shld eax, ecx, 0xd
shld edi, ecx, 3
mov dword [esp + 0x2a0], ecx
shld esi, edx, 3
xor esi, eax
mov eax, ecx
shld eax, edx, 0xd
xor edi, eax
mov eax, ecx
shld eax, edx, 0x1a
xor eax, edi
mov edi, ecx
shr edi, 6
xor edi, esi
add eax, dword [esp + 0x380]
mov dword [esp + 0x1c0], eax
mov eax, dword [esp + 0xf0]
adc edi, dword [esp + 0x2d0]
movd dword [esp + 0x2d0], xmm5
movdqa xmm5, xmmword [esp + 0x270]
add eax, edx
mov edx, dword [esp + 0x240]
mov dword [esp + 0x260], edi
adc edx, ecx
add eax, ebx
mov ecx, dword [esp + 0x180]
adc edx, dword [esp + 0x3c8]
add eax, dword [esp + 0x41c]
adc edx, dword [esp + 0x418]
add eax, 0x4cf10364
mov dword [esp + 0xf0], eax
adc edx, 0xa2bfe8a1
add ecx, eax
mov eax, dword [esp + 0x100]
mov esi, ecx
mov dword [esp + 0x240], edx
mov ebx, esi
mov dword [esp + 0x180], esi
adc eax, edx
mov edx, esi
shld ecx, eax, 0x12
shld edx, eax, 0xe
mov dword [esp + 0x100], eax
xor edx, ecx
mov ecx, eax
shld ecx, esi, 0x12
mov esi, eax
shld esi, ebx, 0xe
xor esi, ecx
mov ecx, ebx
shld ecx, eax, 0x17
xor ecx, esi
mov esi, eax
shld esi, ebx, 0x17
xor esi, edx
mov edx, dword [esp + 0x414]
and edx, eax
mov eax, dword [esp + 0x400]
xor edx, dword [esp + 0x80]
and eax, ebx
xor eax, dword [esp + 0x10]
mov ebx, edx
movd edx, xmm0
mov dword [esp + 0x3c8], edx
mov edi, eax
mov eax, dword [esp + 0x1d0]
add eax, edx
mov edx, dword [esp + 0x170]
adc edx, dword [esp + 0x310]
add eax, edi
mov edi, dword [esp + 0x1a0]
adc edx, ebx
add eax, ecx
mov ecx, dword [esp + 0x40]
mov ebx, dword [esp + 0x20]
adc edx, esi
add eax, 0xbc423001
adc edx, 0xa81a664b
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x170], edx
add ecx, eax
mov eax, ecx
adc ebx, edx
mov dword [esp + 0x40], ecx
mov edx, eax
shld ecx, ebx, 0x12
mov esi, ebx
mov dword [esp + 0x20], ebx
shld edx, ebx, 0xe
shld esi, eax, 0xe
xor edx, ecx
mov ecx, ebx
shld ecx, eax, 0x12
xor esi, ecx
mov ecx, eax
shld ecx, ebx, 0x17
xor ecx, esi
mov esi, ebx
mov ebx, dword [esp + 0x180]
shld esi, eax, 0x17
xor esi, edx
mov edx, dword [esp + 0x100]
xor ebx, edi
and ebx, eax
mov eax, dword [esp + 0x10]
xor edx, dword [esp + 0x30]
xor ebx, edi
mov edi, dword [esp + 0x80]
and edx, dword [esp + 0x20]
xor edx, dword [esp + 0x30]
add eax, dword [esp + 0x1c0]
adc edi, dword [esp + 0x260]
add eax, ebx
mov ebx, edi
mov edi, dword [esp + 0x1c0]
adc ebx, edx
add eax, ecx
adc ebx, esi
add eax, 0xd0f89791
adc ebx, 0xc24b8b70
mov dword [esp + 0x10], eax
mov dword [esp + 0x80], ebx
mov ebx, dword [esp + 0x260]
mov ecx, edi
mov esi, edi
mov edx, ebx
shld ecx, ebx, 0xd
mov eax, ebx
shld esi, ebx, 3
shld edx, edi, 3
shld eax, edi, 0x1a
xor edx, ecx
mov ecx, ebx
shld ecx, edi, 0xd
xor esi, ecx
mov ecx, dword [esp + 0x190]
xor eax, esi
mov esi, ebx
mov dword [esp + 0x200], eax
mov eax, ebx
mov ebx, dword [esp + 0x2b0]
shr eax, 6
xor eax, edx
mov edx, dword [esp + 0x290]
mov dword [esp + 0x2c0], eax
mov eax, dword [esp + 0x20]
movd xmm0, ebx
xor eax, dword [esp + 0x100]
mov dword [esp + 0x360], eax
mov eax, dword [esp + 0x40]
xor eax, dword [esp + 0x180]
add dword [esp + 0x2f0], ebx
mov dword [esp + 0x250], eax
mov eax, dword [esp + 0x2a0]
adc dword [esp + 0x160], eax
add ecx, edi
movd xmm3, eax
mov edi, eax
adc edx, esi
movd xmm2, ecx
punpckldq xmm0, xmm3
mov ecx, eax
mov esi, ebx
shld edi, ebx, 0x1f
movd xmm1, edx
mov edx, ecx
mov eax, ecx
shld esi, ecx, 0x18
punpckldq xmm2, xmm1
shld edx, ebx, 0x18
shld eax, ebx, 0x19
shld ebx, ecx, 0x1f
shr ecx, 7
movdqa xmm1, xmmword [esp + 0xc0]
punpcklqdq xmm0, xmm2
xor edx, edi
xor esi, ebx
mov ebx, dword [esp + 0x1c0]
mov edi, dword [esp + 0x260]
movdqa xmmword [esp + 0x400], xmm0
movdqa xmm0, xmmword [esp + 0xb0]
xor eax, edx
xor ecx, esi
add eax, dword [esp + 0x1f0]
psrldq xmm1, 9
mov edx, ebx
mov esi, edi
paddq xmm0, xmmword [esp + 0x220]
adc ecx, dword [esp + 0x230]
shld edx, edi, 0x18
mov dword [esp + 0x2b0], eax
mov eax, edi
shld esi, ebx, 0x18
shld eax, ebx, 0x19
punpcklqdq xmm7, xmm0
paddq xmm7, xmm4
movdqa xmm4, xmmword [esp + 0x320]
mov dword [esp + 0x230], ecx
mov ecx, ebx
movdqa xmm2, xmm7
shld ecx, edi, 0x1f
movdqa xmm6, xmm7
psrlq xmm2, 0x13
xor edx, ecx
mov ecx, edi
shld ecx, ebx, 0x1f
movdqa xmm3, xmm4
movdqa xmm0, xmm4
xor esi, ecx
mov ecx, edi
mov edi, dword [esp + 0x30]
psrlq xmm3, 1
psllq xmm0, 0x3f
shr ecx, 7
xor eax, esi
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm7
xor ecx, edx
add eax, dword [esp + 0x3c8]
mov edx, dword [esp + 0x1a0]
psllq xmm2, 0x2d
shufps xmm0, xmm2, 0xe4
movdqa xmm2, xmm7
psrlq xmm2, 0x3d
orps xmm0, xmm3
movdqa xmm3, xmm4
psrlq xmm4, 7
shufps xmm1, xmm2, 0xe4
movdqa xmm2, xmm7
psllq xmm3, 0x38
mov dword [esp + 0x2a0], eax
adc ecx, dword [esp + 0x310]
mov eax, dword [esp + 0x10]
psllq xmm2, 3
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm7
orps xmm3, xmm1
psrlq xmm2, 6
xorps xmm3, xmm0
pshufd xmm0, xmm7, 0xff
mov dword [esp + 0x320], ecx
mov ecx, dword [esp + 0x80]
shufps xmm4, xmm2, 0xe4
movd dword [esp + 0x210], xmm0
pshufd xmm0, xmm7, 0xee
xorps xmm4, xmm3
mov ebx, dword [esp + 0x210]
movdqa xmm1, xmm0
paddq xmm6, xmm0
movdqa xmmword [esp + 0x150], xmm0
movd esi, xmm1
pshufd xmm0, xmm6, 0x55
movdqa xmmword [esp + 0x300], xmm6
movdqa xmm1, xmmword [esp + 0xd0]
add edx, esi
movd dword [esp + 0x380], xmm0
adc edi, ebx
add eax, dword [esp + 0x70]
mov dword [esp + 0x1a0], eax
adc ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x360]
and eax, ecx
mov dword [esp + 0x190], ecx
mov ecx, dword [esp + 0x250]
xor eax, dword [esp + 0x100]
and ecx, dword [esp + 0x1a0]
xor ecx, dword [esp + 0x180]
add ecx, edx
mov edx, esi
mov dword [esp + 0x250], ecx
mov ecx, esi
adc eax, edi
shld edx, ebx, 0x18
mov edi, dword [esp + 0x2c0]
shld ecx, ebx, 0x1f
mov dword [esp + 0x360], eax
mov eax, esi
xor edx, ecx
mov ecx, ebx
shld ecx, esi, 0x1f
mov esi, ebx
shld esi, eax, 0x18
xor esi, ecx
mov ecx, eax
shrd ecx, ebx, 7
shr ebx, 7
xor ecx, esi
xor ebx, edx
mov esi, dword [esp + 0x200]
add ecx, dword [esp + 0x1c0]
adc ebx, dword [esp + 0x260]
add esi, dword [esp + 0x3a0]
mov dword [esp + 0x290], ecx
adc edi, dword [esp + 0x3e0]
mov eax, esi
mov edx, esi
mov dword [esp + 0x200], esi
mov dword [esp + 0x210], ebx
mov ebx, dword [esp + 0x120]
mov ecx, edi
shld eax, edi, 0xd
shld edx, edi, 3
mov dword [esp + 0x2c0], edi
shld ecx, esi, 3
xor ecx, eax
mov eax, edi
shld eax, esi, 0xd
xor edx, eax
mov eax, edi
shld eax, esi, 0x1a
xor eax, edx
mov dword [esp + 0x1f0], eax
mov eax, edi
shr eax, 6
xor eax, ecx
add dword [esp + 0x180], esi
mov esi, dword [esp + 0x110]
mov dword [esp + 0x1c0], eax
adc dword [esp + 0x100], edi
add esi, dword [esp + 0xe0]
mov edi, dword [esp + 0x1e0]
adc edi, dword [esp + 0x90]
mov eax, esi
mov edx, esi
mov dword [esp + 0x110], esi
movd xmm3, dword [esp + 0x110]
mov ecx, edi
shld eax, edi, 4
shld edx, edi, 0x1e
and ebx, edi
mov dword [esp + 0x1e0], edi
shld ecx, esi, 0x1e
xor ebx, dword [esp + 0x3cc]
xor ecx, eax
mov eax, edi
shld eax, esi, 4
xor edx, eax
mov eax, esi
shld eax, edi, 0x19
xor eax, edx
mov edx, edi
shld edx, esi, 0x19
xor edx, ecx
mov ecx, dword [esp + 0x50]
and ecx, esi
xor ecx, dword [esp + 0x3d0]
add ecx, eax
mov eax, edi
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x60]
adc ebx, edx
mov edx, esi
xor eax, ecx
and ecx, edi
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x60], ecx
mov edi, dword [esp + 0xb0]
xor edx, eax
and eax, esi
mov esi, dword [esp + 0x50]
mov dword [esp + 0x70], eax
mov dword [esp + 0xc0], edx
add esi, dword [esp + 0xf0]
adc ebx, dword [esp + 0x240]
mov eax, esi
mov edx, esi
mov dword [esp + 0x50], esi
mov ecx, ebx
shld eax, ebx, 4
shld edx, ebx, 0x1e
and edi, ebx
mov dword [esp + 0x120], ebx
shld ecx, esi, 0x1e
xor edi, dword [esp + 0x60]
xor ecx, eax
mov eax, ebx
shld eax, esi, 4
xor edx, eax
mov eax, esi
shld eax, ebx, 0x19
xor eax, edx
mov edx, ebx
mov ebx, dword [esp + 0xc0]
shld edx, esi, 0x19
xor edx, ecx
and ebx, esi
xor ebx, dword [esp + 0x70]
add ebx, eax
adc edi, edx
add ebx, dword [esp + 0x1d0]
adc edi, dword [esp + 0x170]
mov eax, ebx
mov ecx, ebx
mov esi, ebx
mov dword [esp + 0xc0], ebx
mov edx, edi
shld eax, edi, 4
shld ecx, edi, 0x1e
shld esi, edi, 0x19
mov dword [esp + 0xb0], edi
shld edx, ebx, 0x1e
xor edx, eax
mov eax, edi
shld eax, ebx, 4
xor ecx, eax
mov eax, dword [esp + 0x120]
xor esi, ecx
mov ecx, edi
shld ecx, ebx, 0x19
mov ebx, dword [esp + 0x1e0]
xor ecx, edx
mov edx, eax
xor edx, ebx
and eax, ebx
mov ebx, dword [esp + 0x110]
and edx, edi
mov edi, dword [esp + 0x50]
xor eax, edx
mov edx, edi
and edi, ebx
xor edx, ebx
and edx, dword [esp + 0xc0]
xor edi, edx
mov edx, dword [esp + 0x190]
add edi, esi
adc eax, ecx
add edi, dword [esp + 0x10]
mov ebx, edx
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0x1a0]
adc eax, dword [esp + 0x80]
mov ecx, edi
mov esi, edi
shld ebx, edi, 0x12
mov dword [esp + 0xe0], eax
shld ecx, edx, 0x12
shld esi, edx, 0xe
xor esi, ecx
mov ecx, edx
shld ecx, edi, 0xe
xor ecx, ebx
mov ebx, edi
shld ebx, edx, 0x17
mov edx, dword [esp + 0x190]
xor ebx, ecx
mov ecx, eax
shld edx, edi, 0x17
mov edi, eax
xor edx, esi
mov esi, dword [esp + 0x10]
shld esi, eax, 4
mov eax, dword [esp + 0x10]
shld edi, eax, 0x1e
mov eax, ecx
xor edi, esi
mov esi, dword [esp + 0x10]
shld eax, esi, 4
mov esi, dword [esp + 0x10]
shld esi, ecx, 0x1e
xor esi, eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x30], eax
shld dword [esp + 0x30], ecx, 0x19
xor dword [esp + 0x30], esi
mov esi, ecx
shld esi, eax, 0x19
mov eax, dword [esp + 0xb0]
xor esi, edi
mov edi, dword [esp + 0xb0]
xor eax, dword [esp + 0x120]
and edi, dword [esp + 0x120]
and eax, ecx
mov ecx, dword [esp + 0xc0]
xor edi, eax
mov eax, dword [esp + 0xc0]
and ecx, dword [esp + 0x50]
xor eax, dword [esp + 0x50]
and eax, dword [esp + 0x10]
xor ecx, eax
mov eax, dword [esp + 0x190]
add ecx, dword [esp + 0x30]
adc edi, esi
xor eax, dword [esp + 0x20]
mov esi, dword [esp + 0x40]
movd xmm7, ecx
mov dword [esp + 0x1d0], eax
mov eax, dword [esp + 0x1a0]
xor eax, esi
add ebx, dword [esp + 0x250]
adc edx, dword [esp + 0x360]
add ebx, 0x654be30
movd xmm2, ebx
mov ebx, dword [esp + 0x200]
adc edx, 0xc76c51a3
movd xmm0, edx
mov edx, dword [esp + 0x2c0]
movd xmm6, ebx
punpckldq xmm2, xmm0
movd xmm0, edi
punpckldq xmm7, xmm0
movd xmm0, dword [esp + 0x1e0]
punpckldq xmm3, xmm0
pshufd xmm0, xmm2, 0x44
movdqa xmm2, xmmword [esp + 0x220]
punpcklqdq xmm7, xmm3
paddq xmm7, xmm0
pshufd xmm0, xmm7, 0xff
movdqa xmmword [esp + 0x170], xmm7
movd dword [esp + 0xf0], xmm0
pshufd xmm0, xmm7, 0xee
punpcklqdq xmm2, xmmword [esp + 0x140]
movd ecx, xmm0
movd xmm0, edx
and eax, ecx
mov dword [esp + 0x110], ecx
mov ecx, dword [esp + 0x1d0]
punpckldq xmm6, xmm0
xor eax, esi
movdqa xmmword [esp + 0x240], xmm6
paddq xmm2, xmm4
movdqa xmm4, xmm1
pshufd xmm0, xmm2, 0xff
movdqa xmmword [esp + 0x220], xmm2
psrlq xmm4, 1
and ecx, dword [esp + 0xf0]
movd edi, xmm0
pshufd xmm0, xmm2, 0xee
movdqa xmm2, xmm5
psrldq xmm5, 9
mov esi, edi
movdqa xmmword [esp + 0x60], xmm0
xor ecx, dword [esp + 0x20]
add eax, dword [esp + 0x180]
adc ecx, dword [esp + 0x100]
add dword [esp + 0x1b0], ebx
movd ebx, xmm0
mov dword [esp + 0x3cc], eax
mov eax, edi
mov dword [esp + 0x1d0], ecx
mov ecx, ebx
adc dword [esp + 0xc], edx
shld eax, ebx, 3
mov edx, ebx
shr esi, 6
shld ecx, edi, 0xd
shld edx, edi, 3
xor eax, ecx
mov ecx, edi
shld ecx, ebx, 0xd
xor esi, eax
xor edx, ecx
mov ecx, edi
shld ecx, ebx, 0x1a
xor ecx, edx
mov edx, edi
add ecx, dword [esp + 0x2f0]
adc esi, dword [esp + 0x160]
movd xmm0, ecx
add ebx, 0x5565a910
mov eax, ecx
mov dword [esp + 0x180], ecx
adc edx, 0xd6990624
add eax, 0x32bbd1b8
mov dword [esp + 0x3d0], edx
mov dword [esp + 0x2c0], eax
movd xmm3, esi
mov dword [esp + 0x160], esi
movdqa xmmword [esp + 0x140], xmm3
punpcklqdq xmm3, xmm0
mov edx, dword [esp + 0x160]
shufps xmm2, xmm3, 0x2e
movdqa xmm3, xmm1
movaps xmm0, xmm2
psllq xmm3, 0x3f
psrlq xmm0, 0x13
shufps xmm4, xmm0, 0xe4
movaps xmm0, xmm2
mov eax, edx
psllq xmm0, 0x2d
adc eax, 0x106aa070
add dword [esp + 0x340], ecx
shufps xmm3, xmm0, 0xe4
movaps xmm0, xmm2
mov dword [esp + 0x310], eax
psrlq xmm0, 0x3d
orps xmm3, xmm4
movdqa xmm4, xmm1
shufps xmm5, xmm0, 0xe4
movaps xmm0, xmm2
psllq xmm4, 0x38
psrlq xmm2, 6
psllq xmm0, 3
adc dword [esp + 0x330], edx
shufps xmm4, xmm0, 0xe4
orps xmm4, xmm5
movdqa xmm5, xmm1
psrlq xmm5, 7
xorps xmm4, xmm3
movdqa xmm3, xmm7
shufps xmm5, xmm2, 0xe4
movd xmm2, dword [esp + 0x50]
xorps xmm5, xmm4
paddq xmm5, xmmword [esp + 0x400]
mov dword [esp + 0x400], ebx
pshufd xmm0, xmm5, 0xff
movdqa xmmword [esp + 0xd0], xmm5
movd esi, xmm0
pshufd xmm0, xmm5, 0xee
movd edi, xmm0
mov eax, esi
movaps xmm0, xmmword [esp + 0x300]
mov ecx, edi
shld eax, edi, 3
mov edx, edi
shld ecx, esi, 0xd
shld edx, esi, 3
xor eax, ecx
mov ecx, esi
shld ecx, edi, 0xd
xor edx, ecx
mov ecx, esi
shld ecx, edi, 0x1a
xor ecx, edx
mov dword [esp + 0x260], ecx
mov ecx, esi
shr ecx, 6
xor ecx, eax
add edi, 0x5141ab53
adc esi, 0x1e376c08
mov dword [esp + 0x250], edi
mov edi, dword [esp + 0x1c0]
mov dword [esp + 0x360], ecx
mov dword [esp + 0x200], esi
mov esi, dword [esp + 0x1f0]
add esi, dword [esp + 0x370]
adc edi, dword [esp + 0xac]
mov eax, esi
mov ecx, esi
mov edx, esi
mov dword [esp + 0x1f0], esi
add eax, 0x5771202a
mov dword [esp + 0x3e0], eax
mov eax, edi
mov ebx, edi
mov dword [esp + 0x1c0], edi
adc eax, 0xf40e3585
shld ecx, edi, 0xd
shld edx, edi, 3
shld ebx, esi, 0x1a
mov dword [esp + 0x3a0], eax
mov eax, edi
shld eax, esi, 3
xor eax, ecx
mov ecx, edi
shld ecx, esi, 0xd
xor edx, ecx
mov ecx, dword [esp + 0x2e8]
xor ebx, edx
mov edx, edi
shr edx, 6
xor edx, eax
mov eax, dword [esp + 0x3f0]
movss dword [esp + 0x3f0], xmm0
add ecx, esi
movd xmm1, ecx
mov ecx, edx
adc eax, edi
add ebx, dword [esp + 0x2d0]
mov edi, dword [esp + 0x110]
movd xmm0, eax
punpcklqdq xmm0, xmm1
shufps xmm6, xmm0, 0x24
pshufd xmm0, xmm7, 0x55
adc ecx, dword [esp + 0x3b0]
mov eax, ebx
mov esi, ebx
movd dword [esp + 0x30], xmm0
mov dword [esp + 0x100], ebx
movaps xmmword [esp + 0x270], xmm6
mov edx, ecx
shld eax, ecx, 0xd
shld esi, ecx, 3
mov dword [esp + 0x1e0], ecx
shld edx, ebx, 3
xor edx, eax
mov eax, ecx
shld eax, ebx, 0xd
xor esi, eax
mov eax, ecx
shld eax, ebx, 0x1a
movd ebx, xmm7
xor eax, esi
mov esi, edi
mov dword [esp + 0x80], ebx
mov dword [esp + 0x70], eax
mov eax, ecx
mov ecx, dword [esp + 0xf0]
shr eax, 6
xor eax, edx
mov dword [esp + 0x90], eax
mov eax, edi
shld eax, ecx, 0x12
shld esi, ecx, 0xe
mov edx, ecx
xor esi, eax
mov eax, ecx
shld edx, edi, 0xe
shld eax, edi, 0x12
xor edx, eax
mov eax, edi
shld eax, ecx, 0x17
xor eax, edx
mov edx, ecx
mov ecx, dword [esp + 0x30]
shld edx, edi, 0x17
xor edx, esi
mov esi, ebx
mov edi, ecx
shld esi, ecx, 4
shld edi, ebx, 0x1e
xor edi, esi
mov esi, ecx
mov ecx, dword [esp + 0x30]
shld esi, ebx, 4
shld ebx, ecx, 0x1e
mov ecx, dword [esp + 0x30]
xor ebx, esi
mov esi, dword [esp + 0x80]
shld esi, ecx, 0x19
xor esi, ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x2f0], esi
mov esi, dword [esp + 0x80]
shld ecx, esi, 0x19
mov esi, dword [esp + 0x10]
xor ecx, edi
mov edi, dword [esp + 0xc0]
xor ebx, edi
and esi, edi
mov edi, dword [esp + 0xe0]
and ebx, dword [esp + 0x80]
and edi, dword [esp + 0xb0]
xor ebx, esi
mov esi, dword [esp + 0xe0]
xor esi, dword [esp + 0xb0]
and esi, dword [esp + 0x30]
xor esi, edi
add ebx, dword [esp + 0x2f0]
mov edi, dword [esp + 0x1e0]
adc esi, ecx
add eax, dword [esp + 0x3cc]
movd xmm4, ebx
adc edx, dword [esp + 0x1d0]
add eax, 0xd6ef5218
movd xmm1, eax
mov eax, edi
adc edx, 0xd192e819
movd xmm0, edx
mov edx, dword [esp + 0x100]
punpckldq xmm1, xmm0
movd xmm0, esi
punpckldq xmm4, xmm0
movd xmm0, dword [esp + 0x120]
mov esi, edx
punpckldq xmm2, xmm0
pshufd xmm0, xmm1, 0x44
movss xmm1, dword [esp + 0x3d0]
punpcklqdq xmm4, xmm2
movss xmm2, dword [esp + 0x1a0]
paddq xmm4, xmm0
pshufd xmm0, xmm4, 0xee
movdqa xmm5, xmm4
movdqa xmmword [esp + 0x370], xmm4
movd ebx, xmm0
pshufd xmm0, xmm4, 0xff
psllq xmm5, 0x1e
movd ecx, xmm0
add esi, ebx
movss xmm0, dword [esp + 0x190]
movaps xmmword [esp + 0x3b0], xmm2
mov dword [esp + 0xac], ebx
adc eax, ecx
add dword [esp + 0x2b0], edx
mov dword [esp + 0x120], ecx
mov ecx, edx
mov dword [esp + 0x1d0], esi
mov esi, edi
mov dword [esp + 0x2d0], eax
mov eax, edx
movaps xmmword [esp + 0x50], xmm0
movlhps xmm0, xmm2
adc dword [esp + 0x230], edi
shld eax, edi, 0x1f
shld ecx, edi, 0x18
shld esi, edx, 0x18
shufps xmm3, xmm0, 0x24
xor ecx, eax
mov eax, edi
shld eax, edx, 0x1f
xor esi, eax
mov eax, edi
shld eax, edx, 0x19
mov edx, dword [esp + 0x10]
xor eax, esi
mov esi, edi
mov edi, ebx
shr esi, 7
xor esi, ecx
add eax, dword [esp + 0x180]
mov ecx, dword [esp + 0xf0]
movd xmm2, edx
mov dword [esp + 0x2f0], eax
mov eax, dword [esp + 0x70]
adc esi, dword [esp + 0x160]
add eax, dword [esp + 0x3f0]
mov dword [esp + 0x300], esi
mov esi, dword [esp + 0x120]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x90]
adc eax, dword [esp + 0x380]
xor ecx, dword [esp + 0x190]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x110]
and ecx, esi
movd xmm6, ecx
mov ecx, dword [esp + 0xe0]
xor eax, dword [esp + 0x1a0]
movdqa xmmword [esp + 0x1a0], xmm2
and eax, ebx
movd xmm0, eax
mov eax, dword [esp + 0x30]
punpcklqdq xmm6, xmm0
movd xmm0, ecx
punpckldq xmm2, xmm0
movdqa xmmword [esp + 0x160], xmm0
movdqa xmm0, xmm4
pand xmm7, xmm2
shufps xmm2, xmm6, 0x24
psrlq xmm0, 0x1c
movdqa xmm6, xmm4
xorps xmm2, xmm3
movdqa xmm3, xmm4
psllq xmm6, 0x24
xor eax, ecx
mov ecx, dword [esp + 0x80]
psrlq xmm3, 0xe
movsd xmm3, xmm0
movdqa xmm0, xmm4
psllq xmm0, 0x32
movsd xmm0, xmm6
movdqa xmm6, xmm4
xor ecx, edx
mov edx, dword [esp + 0xf0]
orpd xmm0, xmm3
movdqa xmm3, xmm4
psrlq xmm6, 0x12
psrlq xmm3, 0x22
movsd xmm6, xmm3
movdqa xmm3, xmm4
psllq xmm3, 0x2e
xor edx, esi
movsd xmm3, xmm5
movdqa xmm5, xmm4
orpd xmm3, xmm6
psrlq xmm5, 0x29
movdqa xmm6, xmm4
xorpd xmm3, xmm0
movdqa xmm0, xmm4
psllq xmm6, 0x17
psrlq xmm0, 0x27
movsd xmm5, xmm0
movdqa xmm0, xmm4
psllq xmm0, 0x19
movsd xmm6, xmm0
movss xmm0, dword [esp + 0x20]
orpd xmm6, xmm5
movdqa xmm5, xmm4
xorpd xmm6, xmm3
movss xmm3, dword [esp + 0x40]
movlhps xmm0, xmm3
movd xmm3, eax
mov eax, dword [esp + 0x110]
shufps xmm5, xmm0, 0x24
movd xmm0, ecx
punpckldq xmm0, xmm3
movss xmm3, dword [esp + 0x400]
xor eax, edi
mov edi, dword [esp + 0x90]
movlhps xmm1, xmm3
movdqa xmm3, xmm4
pand xmm3, xmm0
shufps xmm0, xmm1, 0x24
movss xmm1, dword [esp + 0xc0]
paddq xmm0, xmm5
pxor xmm3, xmm7
paddq xmm0, xmm2
shufps xmm3, xmm0, 0xe4
movss xmm0, dword [esp + 0xb0]
paddq xmm3, xmm6
movlhps xmm0, xmm1
pshufd xmm1, xmm3, 0xee
shufps xmm3, xmm0, 0x24
paddq xmm3, xmm1
movdqa xmm1, xmm4
pshufd xmm0, xmm3, 0xee
movdqa xmm6, xmm3
movdqa xmm7, xmm3
movdqa xmm5, xmm3
movdqa xmmword [esp + 0x40], xmm3
movd ebx, xmm0
pshufd xmm0, xmm3, 0xff
psllq xmm6, 0x32
psllq xmm7, 0x2e
movd ecx, xmm0
and eax, ebx
mov dword [esp + 0xe0], ebx
and edx, ecx
movd xmm0, eax
mov dword [esp + 0x190], ecx
mov ecx, dword [esp + 0x70]
mov eax, dword [esp + 0x1f0]
movd xmm2, edx
mov edx, edi
punpcklqdq xmm2, xmm0
movdqa xmm0, xmm3
shufps xmm1, xmm2, 0x24
movdqa xmm2, xmm3
psrlq xmm0, 0x1c
psrlq xmm2, 0xe
movsd xmm2, xmm0
movdqa xmm0, xmm3
psllq xmm0, 0x24
movsd xmm6, xmm0
movdqa xmm0, xmm3
orpd xmm6, xmm2
movdqa xmm2, xmm3
psrlq xmm0, 0x22
psrlq xmm2, 0x12
movsd xmm2, xmm0
movdqa xmm0, xmm3
psllq xmm0, 0x1e
movsd xmm7, xmm0
movdqa xmm0, xmm3
orpd xmm7, xmm2
movdqa xmm2, xmm3
psrlq xmm0, 0x27
psrlq xmm2, 0x29
xorpd xmm7, xmm6
movdqa xmm6, xmm3
movsd xmm2, xmm0
movdqa xmm0, xmm3
psllq xmm6, 0x17
psllq xmm0, 0x19
movsd xmm6, xmm0
movss xmm0, dword [esp + 0x3a0]
orpd xmm6, xmm2
movss xmm2, dword [esp + 0x3e0]
xorpd xmm6, xmm7
movlhps xmm0, xmm2
movdqa xmm2, xmm3
movdqa xmm3, xmm4
shufps xmm2, xmm0, 0x24
movdqa xmm0, xmmword [esp + 0x3b0]
punpckldq xmm0, xmmword [esp + 0x50]
pshufd xmm0, xmm0, 0x44
paddq xmm0, xmm2
movaps xmm2, xmmword [esp + 0x170]
xorps xmm1, xmm2
pxor xmm3, xmm2
pand xmm4, xmm2
movd xmm2, ecx
paddq xmm0, xmm1
movaps xmm1, xmmword [esp + 0x160]
pand xmm3, xmm5
pxor xmm3, xmm4
shufps xmm3, xmm0, 0xe4
paddq xmm3, xmm6
unpcklpd xmm1, xmmword [esp + 0x1a0]
pshufd xmm0, xmm3, 0xee
shufps xmm3, xmm1, 0x24
movdqa xmm1, xmmword [esp + 0x240]
paddq xmm3, xmm0
pshufd xmm0, xmm3, 0xee
movd esi, xmm0
pshufd xmm0, xmm3, 0xff
movd dword [esp + 0x10], xmm0
movd xmm0, edi
movdqa xmm4, xmm1
movdqa xmm5, xmm1
movdqa xmm6, xmm1
movdqa xmm7, xmm1
mov dword [esp + 0x1a0], esi
movdqa xmmword [esp + 0x20], xmm0
punpcklqdq xmm0, xmm2
psrlq xmm5, 1
psllq xmm6, 0x3f
psllq xmm7, 0x38
shufps xmm4, xmm0, 0x24
punpckldq xmm2, xmmword [esp + 0x20]
movaps xmm0, xmm4
psrlq xmm0, 0x13
shufps xmm5, xmm0, 0xe4
movaps xmm0, xmm4
psllq xmm0, 0x2d
movdqa xmmword [esp + 0x240], xmm2
movdqa xmm2, xmmword [esp + 0x150]
shufps xmm6, xmm0, 0xe4
movaps xmm0, xmm4
orps xmm6, xmm5
movdqa xmm5, xmm1
psrlq xmm0, 0x3d
psrlq xmm1, 7
psrlq xmm5, 8
shufps xmm5, xmm0, 0xe4
movaps xmm0, xmm4
psrlq xmm4, 6
psllq xmm0, 3
shufps xmm1, xmm4, 0xe4
shufps xmm7, xmm0, 0xe4
movdqa xmm0, xmmword [esp + 0x220]
orps xmm7, xmm5
xorps xmm7, xmm6
xorps xmm1, xmm7
movdqa xmm7, xmm3
paddq xmm0, xmmword [esp + 0x60]
psllq xmm7, 0x2e
punpcklqdq xmm2, xmm0
movd xmm0, dword [esp + 0x1c0]
paddq xmm2, xmm1
movd xmm1, eax
movdqa xmmword [esp + 0x150], xmm2
punpckldq xmm1, xmm0
movdqa xmmword [esp + 0x50], xmm1
movd xmm1, eax
mov eax, ecx
add ecx, esi
mov dword [esp + 0x110], ecx
mov ecx, edi
mov edi, dword [esp + 0x10]
punpcklqdq xmm0, xmm1
movdqa xmm1, xmm2
shufps xmm0, xmm2, 0xe2
psrlq xmm1, 0x13
movaps xmm4, xmm0
movaps xmm5, xmm0
movaps xmm6, xmm0
psrlq xmm4, 1
psllq xmm5, 0x3f
psllq xmm6, 0x38
adc edx, edi
add eax, dword [esp + 0x2a0]
shufps xmm4, xmm1, 0xe4
movdqa xmm1, xmm2
psllq xmm1, 0x2d
mov dword [esp + 0x1f0], edx
mov edx, dword [esp + 0x10]
shufps xmm5, xmm1, 0xe4
movdqa xmm1, xmm2
orps xmm5, xmm4
movaps xmm4, xmm0
psrlq xmm1, 0x3d
psrlq xmm0, 7
mov dword [esp + 0x70], eax
adc ecx, dword [esp + 0x320]
mov eax, dword [esp + 0xac]
psrlq xmm4, 8
shufps xmm4, xmm1, 0xe4
movdqa xmm1, xmm2
psllq xmm1, 3
shufps xmm6, xmm1, 0xe4
movdqa xmm1, xmm2
xor eax, ebx
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x120]
mov ebx, dword [esp + 0x190]
psrlq xmm1, 6
orps xmm6, xmm4
shufps xmm0, xmm1, 0xe4
pshufd xmm1, xmm2, 0xff
movaps xmm2, xmmword [esp + 0x40]
and eax, esi
xorps xmm6, xmm5
mov esi, dword [esp + 0x1a0]
movd dword [esp + 0xb0], xmm1
movd xmm1, eax
xorps xmm0, xmm6
movdqa xmm6, xmm3
mov eax, dword [esp + 0xe0]
psllq xmm6, 0x32
movaps xmmword [esp + 0x160], xmm0
movdqa xmm0, xmm3
xor ecx, ebx
movdqa xmmword [esp + 0xc0], xmm0
and ecx, edi
movaps xmm4, xmm2
movd xmm5, ecx
punpcklqdq xmm5, xmm1
movdqa xmm1, xmm3
shufps xmm4, xmm5, 0x24
movdqa xmm5, xmm3
psrlq xmm1, 0x1c
psrlq xmm5, 0xe
movsd xmm5, xmm1
movdqa xmm1, xmm3
psllq xmm1, 0x24
movsd xmm6, xmm1
movdqa xmm1, xmm3
orpd xmm6, xmm5
movdqa xmm5, xmm3
psrlq xmm1, 0x22
psrlq xmm5, 0x12
movsd xmm5, xmm1
movdqa xmm1, xmm3
psllq xmm1, 0x1e
movsd xmm7, xmm1
movdqa xmm1, xmm3
orpd xmm7, xmm5
movdqa xmm5, xmm3
psrlq xmm1, 0x27
psrlq xmm5, 0x29
xorpd xmm7, xmm6
movdqa xmm6, xmm3
movsd xmm5, xmm1
movdqa xmm1, xmm3
psllq xmm6, 0x17
psllq xmm1, 0x19
movsd xmm6, xmm1
movss xmm1, dword [esp + 0x2c0]
orpd xmm6, xmm5
movss xmm5, dword [esp + 0x310]
xorpd xmm6, xmm7
movaps xmm7, xmm2
movlhps xmm5, xmm1
movaps xmm1, xmmword [esp + 0x370]
shufps xmm3, xmm5, 0x24
movaps xmm5, xmm2
paddq xmm3, xmmword [esp + 0x170]
xorps xmm5, xmm1
xorps xmm4, xmm1
andps xmm7, xmm1
andps xmm5, xmm0
xorps xmm5, xmm7
paddq xmm3, xmm4
movsd xmm3, xmm5
paddq xmm3, xmm6
pshufd xmm4, xmm3, 0xff
movd edi, xmm4
pshufd xmm4, xmm3, 0xee
movd ecx, xmm4
paddq xmm3, xmm4
add ecx, dword [esp + 0x80]
pshufd xmm4, xmm3, 0x55
movdqa xmmword [esp + 0x190], xmm3
adc edi, dword [esp + 0x30]
xor esi, eax
xor edx, ebx
mov dword [esp + 0x120], ecx
and esi, ecx
xor esi, eax
mov eax, ecx
and edx, edi
mov dword [esp + 0x20], edi
xor edx, ebx
add esi, dword [esp + 0x1d0]
mov ebx, ecx
adc edx, dword [esp + 0x2d0]
shld ebx, edi, 0x12
shld eax, edi, 0xe
xor eax, ebx
mov ebx, edi
mov dword [esp + 0x30], eax
mov eax, edi
shld ebx, ecx, 0xe
mov edi, ecx
shld eax, ecx, 0x12
xor ebx, eax
mov eax, dword [esp + 0x20]
shld edi, eax, 0x17
xor edi, ebx
mov ebx, dword [esp + 0x20]
shld ebx, ecx, 0x17
xor ebx, dword [esp + 0x30]
add edi, esi
adc ebx, edx
add edi, 0xb8d2d0c8
movd edx, xmm4
movaps xmm4, xmm0
adc ebx, 0x19a4c116
movd xmm6, edi
movd edi, xmm3
mov ecx, edx
xorps xmm4, xmm2
movd xmm5, ebx
mov ebx, edi
shld ecx, edi, 0x1e
mov eax, edi
andps xmm4, xmm3
punpckldq xmm6, xmm5
movaps xmm5, xmm0
shld ebx, edx, 4
shld eax, edx, 0x1e
andps xmm5, xmm2
xor ecx, ebx
mov ebx, edx
movaps xmm2, xmmword [esp + 0xc0]
xorps xmm5, xmm4
shld ebx, edi, 4
pshufd xmm4, xmm5, 0x55
xor eax, ebx
mov ebx, edi
movd esi, xmm5
movss xmm5, dword [esp + 0x2b0]
shld ebx, edx, 0x19
movd dword [esp + 0x30], xmm4
shld edx, edi, 0x19
xor ebx, eax
mov eax, dword [esp + 0x30]
xor edx, ecx
movaps xmm3, xmm2
add esi, ebx
mov ebx, dword [esp + 0xb0]
movd xmm7, esi
adc eax, edx
movd xmm4, eax
punpckldq xmm7, xmm4
pshufd xmm4, xmm6, 0x44
movss xmm6, dword [esp + 0x1e0]
punpcklqdq xmm7, xmm1
movaps xmm1, xmmword [esp + 0x50]
paddq xmm7, xmm4
pshufd xmm4, xmm7, 0xee
movd edi, xmm4
pshufd xmm4, xmm7, 0xff
movd edx, xmm4
movss xmm4, dword [esp + 0x230]
mov dword [esp + 0xf0], edi
mov esi, edx
mov dword [esp + 0x1d0], edx
unpcklps xmm5, xmm4
movss xmm4, dword [esp + 0x90]
movlhps xmm1, xmm5
movss xmm5, dword [esp + 0x70]
movaps xmmword [esp + 0x50], xmm1
movss xmm1, dword [esp + 0x100]
unpcklps xmm5, xmm4
unpcklps xmm1, xmm6
movss xmm6, dword [esp + 0x340]
movlhps xmm1, xmm5
movss xmm5, dword [esp + 0x330]
movaps xmmword [esp + 0x70], xmm1
movaps xmm1, xmmword [esp + 0x220]
movlhps xmm5, xmm6
movdqa xmm6, xmm7
shufps xmm1, xmm5, 0x2e
psrlq xmm6, 0xe
paddq xmm1, xmmword [esp + 0x160]
pshufd xmm0, xmm1, 0xff
movdqa xmmword [esp + 0x30], xmm1
movdqa xmm1, xmm7
movd dword [esp + 0x80], xmm0
pshufd xmm0, xmmword [esp + 0x150], 0xee
movdqa xmm4, xmm1
movdqa xmmword [esp + 0xe0], xmm4
movd eax, xmm0
movdqa xmmword [esp + 0x170], xmm0
mov ecx, eax
add ecx, edi
mov dword [esp + 0x340], ecx
mov ecx, ebx
adc ecx, edx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x330], ecx
mov ecx, dword [esp + 0x1a0]
xor edx, dword [esp + 0x20]
xor ecx, dword [esp + 0x120]
and edx, esi
and ecx, edi
movd xmm5, edx
mov edx, ebx
movd xmm0, ecx
mov ecx, eax
shld eax, ebx, 0x1f
punpcklqdq xmm5, xmm0
movdqa xmm0, xmm1
mov edi, ecx
shufps xmm3, xmm5, 0x24
movdqa xmm5, xmm7
psllq xmm0, 0x2e
shld edi, ebx, 0x18
psrlq xmm5, 0x1c
xor edi, eax
mov eax, ebx
shld ebx, ecx, 0x18
xorps xmm3, xmm2
movsd xmm6, xmm5
movdqa xmm5, xmm7
psllq xmm7, 0x32
shld eax, ecx, 0x1f
shrd ecx, edx, 7
psllq xmm5, 0x24
xor ebx, eax
mov eax, edx
mov edx, dword [esp + 0x120]
movsd xmm7, xmm5
movdqa xmm5, xmm1
shr eax, 7
xor ecx, ebx
orpd xmm7, xmm6
movdqa xmm6, xmm1
psrlq xmm5, 0x22
xor eax, edi
mov edi, dword [esp + 0xf0]
mov dword [esp + 0x160], ecx
mov ecx, dword [esp + 0x20]
psrlq xmm6, 0x12
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x1d0]
movsd xmm6, xmm5
movdqa xmm5, xmm1
psllq xmm5, 0x1e
movsd xmm0, xmm5
movdqa xmm5, xmm1
xor edi, edx
orpd xmm0, xmm6
movdqa xmm6, xmm1
psrlq xmm5, 0x27
xor eax, ecx
psrlq xmm6, 0x29
xorpd xmm0, xmm7
movdqa xmm7, xmm1
movsd xmm6, xmm5
movdqa xmm5, xmm1
psllq xmm7, 0x17
movaps xmm1, xmm2
psllq xmm5, 0x19
movsd xmm7, xmm5
movd xmm5, dword [esp + 0x250]
orpd xmm7, xmm6
movaps xmm6, xmmword [esp + 0x190]
xorpd xmm7, xmm0
movd xmm0, dword [esp + 0x200]
punpckldq xmm5, xmm0
movaps xmm0, xmm6
andps xmm6, xmm2
xorps xmm0, xmm2
movss xmm2, dword [esp + 0x1b0]
andps xmm0, xmm4
xorps xmm0, xmm6
pshufd xmm6, xmm5, 0x44
movdqa xmm5, xmmword [esp + 0x40]
paddq xmm6, xmm5
paddq xmm6, xmm3
movdqa xmm3, xmmword [esp + 0x190]
movsd xmm6, xmm0
paddq xmm6, xmm7
movdqa xmm7, xmmword [esp + 0x60]
pshufd xmm1, xmm6, 0xee
paddq xmm1, xmm5
movss xmm5, dword [esp + 0x360]
pshufd xmm0, xmm1, 0x55
movd ebx, xmm1
movdqa xmmword [esp + 0x2b0], xmm1
pshufd xmm1, xmmword [esp + 0x30], 0xee
movd esi, xmm0
and edi, ebx
movss xmm0, dword [esp + 0xc]
mov dword [esp + 0xc], ebx
and eax, esi
xor edi, edx
mov edx, ebx
mov dword [esp + 0x10], esi
xor eax, ecx
add edi, dword [esp + 0x110]
mov ecx, esi
movdqa xmmword [esp + 0x110], xmm1
movlhps xmm0, xmm2
movdqa xmm2, xmm6
shufps xmm2, xmm0, 0x24
movss xmm0, dword [esp + 0x260]
adc eax, dword [esp + 0x1f0]
shld ebx, esi, 0x12
mov esi, edx
shld esi, ecx, 0xe
xor esi, ebx
mov ebx, ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x1b0], esi
mov esi, dword [esp + 0x10]
shld ebx, edx, 0x12
movlhps xmm5, xmm0
shufps xmm6, xmm5, 0x2e
paddq xmm6, xmm2
movdqa xmm2, xmm4
shld ecx, edx, 0xe
pshufd xmm0, xmm6, 0x55
pand xmm2, xmm3
xor ecx, ebx
mov ebx, edx
movd dword [esp + 0x40], xmm0
movdqa xmm0, xmm4
shld ebx, esi, 0x17
mov esi, dword [esp + 0x40]
pxor xmm0, xmm3
movdqa xmm3, xmm7
xor ebx, ecx
mov ecx, dword [esp + 0x10]
pand xmm0, xmm6
psrlq xmm3, 1
pxor xmm0, xmm2
pshufd xmm2, xmm0, 0x55
movd dword [esp + 0x100], xmm0
movd dword [esp + 0x90], xmm2
shld ecx, edx, 0x17
mov edx, esi
xor ecx, dword [esp + 0x1b0]
add ebx, edi
adc ecx, eax
add ebx, 0xdf8eeb99
movd eax, xmm6
adc ecx, 0x2748774c
shld edx, eax, 0x1e
mov edi, eax
movd xmm2, ebx
movd xmm0, ecx
mov ecx, eax
shld edi, esi, 0x1e
shld ecx, esi, 4
punpckldq xmm2, xmm0
movdqa xmm0, xmmword [esp + 0x220]
xor edx, ecx
mov ecx, esi
pshufd xmm2, xmm2, 0x44
shld ecx, eax, 4
xor edi, ecx
mov ecx, eax
shld ecx, esi, 0x19
shld esi, eax, 0x19
mov eax, dword [esp + 0x90]
psrldq xmm0, 9
xor esi, edx
mov edx, dword [esp + 0x100]
xor ecx, edi
add edx, ecx
adc eax, esi
movd xmm4, edx
movd xmm5, eax
movd eax, xmm1
pshufd xmm1, xmm6, 0xee
punpckldq xmm4, xmm5
movdqa xmm5, xmm7
mov dword [esp + 0x100], eax
punpcklqdq xmm4, xmmword [esp + 0xc0]
psllq xmm5, 0x3f
paddq xmm4, xmm2
pshufd xmm2, xmm4, 0xee
movd ecx, xmm2
pshufd xmm2, xmm4, 0xff
movd esi, xmm2
movdqa xmm2, xmm6
add eax, ecx
mov dword [esp + 0x40], ecx
movd ecx, xmm1
psrlq xmm2, 0x13
mov dword [esp + 0x1b0], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0xc0], esi
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm6
psllq xmm2, 0x2d
shufps xmm5, xmm2, 0xe4
movdqa xmm2, xmm6
psrlq xmm2, 0x3d
orps xmm5, xmm3
movdqa xmm3, xmm7
adc eax, esi
add dword [esp + 0x290], ecx
psrlq xmm7, 7
mov esi, ecx
shufps xmm0, xmm2, 0xe4
movdqa xmm2, xmm6
psllq xmm3, 0x38
mov dword [esp + 0x1c0], eax
mov eax, ecx
psllq xmm2, 3
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm6
psrlq xmm2, 6
orps xmm3, xmm0
shufps xmm7, xmm2, 0xe4
pshufd xmm2, xmm6, 0xff
xorps xmm3, xmm5
movd edx, xmm2
xorps xmm7, xmm3
adc dword [esp + 0x210], edx
shld eax, edx, 0x1f
shld esi, edx, 0x18
paddq xmm7, xmmword [esp + 0x270]
mov edi, edx
movdqa xmmword [esp + 0x270], xmm1
xor esi, eax
mov eax, edx
shld edi, ecx, 0x18
shld eax, ecx, 0x1f
movd xmm2, esi
xor edi, eax
movd xmm1, edi
movdqa xmm5, xmm7
movdqa xmm0, xmm7
punpckldq xmm1, xmm2
pshufd xmm2, xmm7, 0xff
psllq xmm5, 0x2d
movdqa xmmword [esp + 0x60], xmm0
movdqa xmmword [esp + 0x230], xmm1
movd eax, xmm2
movss xmm2, dword [esp + 0x180]
movaps xmm1, xmmword [esp + 0x140]
movlhps xmm1, xmm2
movdqa xmm2, xmm7
shufps xmm1, xmm7, 0xe2
psrlq xmm2, 0x13
movaps xmm3, xmm1
psrlq xmm3, 1
shufps xmm3, xmm2, 0xe4
movaps xmm2, xmm1
psllq xmm2, 0x3f
shufps xmm2, xmm5, 0xe4
movaps xmm5, xmm1
orps xmm2, xmm3
movdqa xmm3, xmm7
psrlq xmm5, 8
psrlq xmm3, 0x3d
shufps xmm5, xmm3, 0xe4
movdqa xmm3, xmm7
movaps xmm7, xmm1
psrlq xmm1, 7
psllq xmm3, 3
psllq xmm7, 0x38
shufps xmm7, xmm3, 0xe4
orps xmm7, xmm5
xorps xmm7, xmm2
movdqa xmm2, xmm0
psrlq xmm2, 6
shufps xmm1, xmm2, 0xe4
movdqa xmm2, xmm0
pshufd xmm0, xmm0, 0xee
movd esi, xmm0
paddq xmm2, xmm0
movdqa xmmword [esp + 0x90], xmm0
xorps xmm1, xmm7
mov edi, esi
mov ebx, esi
pshufd xmm3, xmm2, 0x55
movd dword [esp + 0x360], xmm2
paddq xmm1, xmmword [esp + 0x50]
add edi, 0xe3418acb
movd dword [esp + 0x1f0], xmm3
mov dword [esp + 0x320], edi
mov edi, eax
adc edi, 0x4ed8aa4a
shld ebx, eax, 0x18
mov dword [esp + 0x2d0], edi
mov edi, esi
movdqa xmm5, xmm1
movdqa xmmword [esp + 0x140], xmm1
shld edi, eax, 0x1f
psllq xmm5, 0x2d
xor ebx, edi
mov edi, eax
shld eax, esi, 0x18
shld edi, esi, 0x1f
movd xmm2, ebx
mov ebx, dword [esp + 0xc0]
xor eax, edi
add dword [esp + 0x160], ecx
movd xmm0, eax
punpckldq xmm0, xmm2
pshufd xmm2, xmm1, 0xff
movdqa xmmword [esp + 0x260], xmm0
movdqa xmm0, xmmword [esp + 0xd0]
movd esi, xmm2
movdqa xmm2, xmm1
psrlq xmm2, 0x13
adc dword [esp + 0xb0], edx
mov edx, dword [esp + 0xf0]
punpckhqdq xmm0, xmm1
movdqa xmm3, xmm0
movdqa xmm7, xmm0
psrlq xmm3, 1
psllq xmm7, 0x38
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm0
psllq xmm2, 0x3f
shufps xmm2, xmm5, 0xe4
movdqa xmm5, xmm0
psrlq xmm0, 7
orps xmm2, xmm3
movdqa xmm3, xmm1
psrlq xmm5, 8
psrlq xmm3, 0x3d
shufps xmm5, xmm3, 0xe4
movdqa xmm3, xmm1
psllq xmm3, 3
shufps xmm7, xmm3, 0xe4
orps xmm7, xmm5
xorps xmm7, xmm2
movdqa xmm2, xmm1
psrlq xmm2, 6
shufps xmm0, xmm2, 0xe4
xorps xmm0, xmm7
paddq xmm0, xmmword [esp + 0x70]
pshufd xmm2, xmm0, 0xff
movdqa xmmword [esp + 0x180], xmm0
movd eax, xmm2
pshufd xmm2, xmm1, 0xee
movdqa xmm1, xmm4
movd ecx, xmm2
movdqa xmmword [esp + 0x70], xmm2
movdqa xmm5, xmm1
movdqa xmm7, xmm1
mov edi, eax
mov dword [esp + 0x1a0], eax
add ecx, 0xd6b2b8a3
psllq xmm5, 0x24
psllq xmm7, 0x1e
mov dword [esp + 0x250], ecx
mov ecx, dword [esp + 0x1d0]
adc esi, 0x682e6ff3
xor edx, dword [esp + 0xc]
mov dword [esp + 0x2a0], esi
xor ecx, dword [esp + 0x10]
and edx, dword [esp + 0x40]
and ecx, ebx
movd xmm2, edx
mov edx, eax
movd xmm3, ecx
punpcklqdq xmm3, xmm2
movdqa xmm2, xmm6
shufps xmm2, xmm3, 0x24
movdqa xmm3, xmm4
psrlq xmm4, 0xe
psrlq xmm3, 0x1c
movsd xmm4, xmm3
movdqa xmm3, xmm1
psllq xmm3, 0x32
movsd xmm3, xmm5
movdqa xmm5, xmm1
orpd xmm3, xmm4
movdqa xmm4, xmm1
psrlq xmm5, 0x12
psrlq xmm4, 0x22
movsd xmm5, xmm4
movdqa xmm4, xmm1
psllq xmm4, 0x2e
movsd xmm4, xmm7
movdqa xmm7, xmm1
orpd xmm4, xmm5
movdqa xmm5, xmm1
psllq xmm7, 0x19
xorpd xmm4, xmm3
movdqa xmm3, xmm1
psrlq xmm5, 0x29
psrlq xmm3, 0x27
movsd xmm5, xmm3
movdqa xmm3, xmm1
psllq xmm3, 0x17
movsd xmm3, xmm7
movdqa xmm7, xmm1
orpd xmm3, xmm5
movss xmm5, dword [esp + 0x120]
movdqa xmmword [esp + 0x1e0], xmm7
xorpd xmm3, xmm4
movss xmm4, dword [esp + 0x20]
movlhps xmm4, xmm5
movdqa xmm5, xmm1
movaps xmm1, xmmword [esp + 0xe0]
shufps xmm5, xmm4, 0x24
movaps xmm4, xmm1
xorps xmm2, xmm1
shufps xmm4, xmmword [esp + 0x470], 0x24
paddq xmm4, xmm6
paddq xmm5, xmm4
movdqa xmm4, xmm6
paddq xmm5, xmm2
movdqa xmm2, xmm6
pand xmm4, xmm1
pxor xmm2, xmm1
pand xmm2, xmm7
pxor xmm2, xmm4
shufps xmm2, xmm5, 0xe4
paddq xmm2, xmm3
pshufd xmm3, xmm2, 0xee
paddq xmm3, xmmword [esp + 0x190]
pshufd xmm1, xmm3, 0x55
movdqa xmmword [esp + 0x1d0], xmm3
movd dword [esp + 0x20], xmm1
pshufd xmm1, xmm7, 0x55
movd dword [esp + 0x190], xmm1
pshufd xmm1, xmm0, 0xee
movdqa xmm0, xmmword [esp + 0xd0]
movd ecx, xmm1
movdqa xmmword [esp + 0x310], xmm1
mov esi, ecx
shld edx, ecx, 0xd
shld edi, ecx, 3
mov dword [esp + 0x120], ecx
shld esi, eax, 3
xor esi, edx
mov edx, ecx
movdqa xmm4, xmm0
shld edx, eax, 0xd
punpckhqdq xmm4, xmm2
xor edi, edx
mov edx, eax
shr eax, 6
shld edx, ecx, 0x1a
xor eax, edi
mov edi, dword [esp + 0xc]
mov ecx, dword [esp + 0x20]
xor edx, esi
mov esi, dword [esp + 0x40]
mov dword [esp + 0x2c0], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x200], edx
mov edx, ebx
movd ebx, xmm3
mov dword [esp + 0x380], ebx
xor esi, edi
xor edx, eax
and esi, ebx
and edx, ecx
xor esi, edi
xor edx, eax
mov edi, ebx
add esi, dword [esp + 0x340]
mov eax, edi
adc edx, dword [esp + 0x330]
shld ebx, ecx, 0x12
shld eax, ecx, 0xe
xor dword [esp + 0x40], edi
xor eax, ebx
mov ebx, ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x20]
shld ebx, edi, 0x12
shld ecx, edi, 0xe
xor ecx, ebx
mov ebx, edi
shld ebx, eax, 0x17
mov eax, dword [esp + 0xc0]
xor ebx, ecx
mov ecx, dword [esp + 0x20]
xor eax, dword [esp + 0x20]
shld ecx, edi, 0x17
xor ecx, dword [esp + 0x10]
add ebx, esi
mov dword [esp + 0xc0], eax
adc ecx, edx
add ebx, 0xc5c95a63
adc ecx, 0x391c0cb3
movd xmm1, ebx
movd xmm3, ecx
punpckldq xmm1, xmm3
movdqa xmm3, xmm0
punpcklqdq xmm3, xmm2
pshufd xmm1, xmm1, 0x44
paddq xmm4, xmm3
movdqa xmm3, xmm7
pshufd xmm0, xmm4, 0xee
pshufd xmm2, xmm4, 0xff
pand xmm3, xmm6
movdqa xmmword [esp + 0x340], xmm4
movd ecx, xmm2
movd edx, xmm0
movdqa xmm2, xmm7
movdqa xmmword [esp + 0x10], xmm0
mov ebx, edx
mov edi, ecx
pxor xmm2, xmm6
mov eax, ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x50], edx
shld ebx, ecx, 4
shld edi, edx, 0x1e
pand xmm2, xmm0
shld eax, edx, 4
movdqa xmm0, xmmword [esp + 0x1e0]
xor edi, ebx
mov ebx, edx
pxor xmm2, xmm3
shld ebx, ecx, 0x1e
movd dword [esp + 0x220], xmm2
pshufd xmm3, xmm2, 0x55
xor ebx, eax
mov eax, edx
movd esi, xmm3
shld eax, ecx, 0x19
xor eax, ebx
mov ebx, ecx
mov ecx, dword [esp + 0x220]
shld ebx, edx, 0x19
mov edx, dword [esp + 0xc0]
xor ebx, edi
add ecx, eax
adc esi, ebx
movd xmm4, ecx
mov ecx, dword [esp + 0x40]
movd xmm2, esi
punpckldq xmm4, xmm2
punpcklqdq xmm4, xmmword [esp + 0xe0]
paddq xmm4, xmm1
pshufd xmm1, xmm4, 0xee
movdqa xmm3, xmm4
movdqa xmm5, xmm4
movdqa xmmword [esp + 0xf0], xmm4
movd esi, xmm1
pshufd xmm1, xmm4, 0xff
psrlq xmm3, 0xe
psllq xmm5, 0x1e
movd eax, xmm1
and ecx, esi
mov dword [esp + 0x220], esi
and edx, eax
movd xmm1, ecx
movd ecx, xmm0
mov dword [esp + 0x330], eax
mov edi, eax
mov eax, dword [esp + 0x20]
movd xmm2, edx
mov edx, dword [esp + 0x190]
xor ecx, dword [esp + 0x50]
punpcklqdq xmm2, xmm1
movdqa xmm1, xmm4
psrlq xmm1, 0x1c
shufps xmm7, xmm2, 0x24
movdqa xmm2, xmm4
movsd xmm3, xmm1
movdqa xmm1, xmm4
psllq xmm2, 0x32
xorps xmm7, xmm0
psllq xmm1, 0x24
xor edx, dword [esp + 0xc]
movsd xmm2, xmm1
movdqa xmm1, xmm4
orpd xmm2, xmm3
movdqa xmm3, xmm4
psrlq xmm1, 0x22
psrlq xmm3, 0x12
movsd xmm3, xmm1
movdqa xmm1, xmm4
psllq xmm1, 0x2e
movsd xmm1, xmm5
movdqa xmm5, xmm4
orpd xmm1, xmm3
movdqa xmm3, xmm4
psllq xmm5, 0x19
xorpd xmm1, xmm2
movdqa xmm2, xmm4
psrlq xmm3, 0x29
psrlq xmm2, 0x27
movsd xmm3, xmm2
movdqa xmm2, xmm4
psllq xmm2, 0x17
movsd xmm2, xmm5
movss xmm5, dword [esp + 0x2d0]
orpd xmm2, xmm3
movd xmm3, ecx
xorpd xmm2, xmm1
movd xmm1, edx
mov edx, esi
punpckldq xmm3, xmm1
movss xmm1, dword [esp + 0x320]
movlhps xmm5, xmm1
movdqa xmm1, xmm4
movdqa xmm4, xmmword [esp + 0x10]
pand xmm1, xmm3
shufps xmm3, xmm5, 0x24
pshufd xmm5, xmmword [esp + 0x2b0], 0x44
pand xmm4, xmm0
paddq xmm3, xmm5
pxor xmm1, xmm4
movss xmm4, dword [esp + 0x290]
paddq xmm3, xmm7
shufps xmm1, xmm3, 0xe4
paddq xmm1, xmm2
pshufd xmm0, xmm1, 0xee
paddq xmm0, xmm6
movdqa xmm6, xmmword [esp + 0xf0]
movdqa xmm3, xmm0
pshufd xmm2, xmm0, 0x55
movdqa xmmword [esp + 0x320], xmm0
movdqa xmm0, xmmword [esp + 0x90]
movd ebx, xmm3
movd ecx, xmm2
movdqa xmm2, xmmword [esp + 0x140]
add dword [esp + 0x120], ebx
mov dword [esp + 0x190], ebx
mov dword [esp + 0x10], ecx
paddq xmm2, xmmword [esp + 0x70]
adc dword [esp + 0x1a0], ecx
xor edi, eax
and edi, ecx
xor edi, eax
mov eax, dword [esp + 0x380]
punpcklqdq xmm0, xmm2
pshufd xmm2, xmm6, 0x55
movd dword [esp + 0xc0], xmm2
movdqa xmmword [esp + 0x90], xmm0
movaps xmm0, xmmword [esp + 0xd0]
xor edx, eax
and edx, ebx
mov ebx, dword [esp + 0x80]
xor edx, eax
add edx, dword [esp + 0x1b0]
mov eax, ebx
adc edi, dword [esp + 0x1c0]
mov dword [esp + 0x40], edi
mov edi, dword [esp + 0x100]
mov esi, edi
shld eax, edi, 0xd
mov ecx, edi
shld esi, ebx, 3
xor esi, eax
mov eax, edi
mov edi, ebx
shld edi, ecx, 3
shld eax, ebx, 0xd
shrd ecx, ebx, 6
shr ebx, 6
xor edi, eax
xor ecx, esi
xor ebx, edi
mov edi, dword [esp + 0x190]
mov dword [esp + 0x100], ecx
mov dword [esp + 0x80], ebx
mov ebx, dword [esp + 0x10]
mov eax, edi
mov esi, edi
mov ecx, edi
shld eax, ebx, 0x12
shld esi, ebx, 0xe
xor esi, eax
mov eax, ebx
shld eax, edi, 0x12
mov edi, ebx
mov ebx, ecx
shld edi, ecx, 0xe
xor edi, eax
mov eax, dword [esp + 0x10]
shld ebx, eax, 0x17
mov eax, dword [esp + 0x10]
xor ebx, edi
mov edi, ecx
xor dword [esp + 0x220], edi
mov edi, dword [esp + 0x330]
shld eax, ecx, 0x17
mov ecx, dword [esp + 0xc]
xor eax, esi
mov esi, dword [esp + 0xc0]
xor edi, dword [esp + 0x10]
xor esi, ecx
and ecx, dword [esp + 0xc0]
mov dword [esp + 0x1c0], esi
movd esi, xmm6
mov dword [esp + 0x20], esi
mov dword [esp + 0xe0], esi
mov esi, dword [esp + 0x50]
mov dword [esp + 0xc], ecx
xor dword [esp + 0xe0], esi
and esi, dword [esp + 0x20]
add dword [esp + 0x120], 0x43172f60
adc dword [esp + 0x1a0], 0x78a5636f
add ebx, edx
mov dword [esp + 0x50], esi
adc eax, dword [esp + 0x40]
add ebx, 0x7763e373
movd xmm2, ebx
adc eax, 0x5b9cca4f
movd xmm3, eax
punpckldq xmm2, xmm3
movss xmm3, dword [esp + 0x210]
movlhps xmm3, xmm4
shufps xmm0, xmm3, 0x2e
movaps xmmword [esp + 0xd0], xmm0
movdqa xmm0, xmmword [esp + 0x30]
movdqa xmm3, xmm0
movdqa xmm4, xmm0
pshufd xmm0, xmm2, 0x44
punpcklqdq xmm3, xmm1
punpckhqdq xmm4, xmm1
paddq xmm4, xmm3
pshufd xmm1, xmm4, 0xff
pshufd xmm7, xmm4, 0xee
movdqa xmmword [esp + 0x2b0], xmm4
movd esi, xmm7
movd ebx, xmm1
mov eax, esi
mov ecx, ebx
mov edx, esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x1b0], ebx
shld eax, ebx, 4
shld ecx, esi, 0x1e
shld edx, ebx, 0x1e
xor ecx, eax
mov eax, ebx
shld eax, esi, 4
xor edx, eax
mov eax, esi
shld eax, ebx, 0x19
xor eax, edx
mov edx, ebx
shld edx, esi, 0x19
xor edx, ecx
mov ecx, dword [esp + 0xe0]
and ecx, esi
xor ecx, dword [esp + 0x50]
mov esi, ecx
mov ecx, dword [esp + 0x1c0]
and ecx, ebx
xor ecx, dword [esp + 0xc]
add esi, eax
movd xmm3, esi
adc ecx, edx
mov edx, dword [esp + 0x220]
movd xmm1, ecx
punpckldq xmm3, xmm1
punpcklqdq xmm3, xmmword [esp + 0x1e0]
paddq xmm3, xmm0
pshufd xmm0, xmm3, 0xee
movdqa xmm4, xmm3
movdqa xmm5, xmm3
movdqa xmm2, xmm3
movdqa xmmword [esp + 0x330], xmm3
movd eax, xmm0
pshufd xmm0, xmm3, 0xff
psrlq xmm4, 0xe
psllq xmm5, 0x1e
movd ecx, xmm0
and edx, eax
mov dword [esp + 0x50], eax
and edi, ecx
movd xmm0, edx
mov edx, dword [esp + 0xc0]
mov dword [esp + 0x1c0], ecx
movd xmm1, edi
mov edi, dword [esp + 0x20]
punpcklqdq xmm1, xmm0
movdqa xmm0, xmm3
psrlq xmm0, 0x1c
shufps xmm6, xmm1, 0x24
movdqa xmm1, xmm3
movsd xmm4, xmm0
movdqa xmm0, xmm3
psllq xmm1, 0x32
xor edx, ebx
psllq xmm0, 0x24
xor edi, dword [esp + 0x40]
movsd xmm1, xmm0
movdqa xmm0, xmm3
orpd xmm1, xmm4
movdqa xmm4, xmm3
psrlq xmm0, 0x22
psrlq xmm4, 0x12
movsd xmm4, xmm0
movdqa xmm0, xmm3
psllq xmm0, 0x2e
movsd xmm0, xmm5
movdqa xmm5, xmm3
orpd xmm0, xmm4
movdqa xmm4, xmm3
psllq xmm5, 0x19
xorpd xmm0, xmm1
movdqa xmm1, xmm3
psrlq xmm4, 0x29
psrlq xmm1, 0x27
movsd xmm4, xmm1
movdqa xmm1, xmm3
movdqa xmm3, xmmword [esp + 0x240]
psllq xmm1, 0x17
movsd xmm1, xmm5
movss xmm5, dword [esp + 0x2a0]
orpd xmm1, xmm4
movd xmm4, edx
mov edx, dword [esp + 0x10]
xorpd xmm1, xmm0
movd xmm0, edi
punpckldq xmm0, xmm4
movss xmm4, dword [esp + 0x250]
pand xmm2, xmm0
xor edx, ecx
mov ecx, dword [esp + 0x190]
movlhps xmm5, xmm4
movdqa xmm4, xmmword [esp + 0xf0]
shufps xmm0, xmm5, 0x24
pshufd xmm5, xmmword [esp + 0x1d0], 0x44
xor ecx, eax
pand xmm7, xmm4
xorps xmm6, xmm4
paddq xmm0, xmm5
pxor xmm2, xmm7
movdqa xmm5, xmm3
paddq xmm0, xmm6
psrlq xmm5, 1
movdqa xmm6, xmm3
shufps xmm2, xmm0, 0xe4
movss xmm0, dword [esp + 0x100]
psllq xmm6, 0x38
paddq xmm2, xmm1
movss xmm1, dword [esp + 0x80]
movdqa xmmword [esp + 0x20], xmm2
movlhps xmm1, xmm0
shufps xmm1, xmm2, 0xe2
movdqa xmm2, xmm3
paddq xmm1, xmmword [esp + 0x340]
pshufd xmm0, xmm1, 0xff
punpcklqdq xmm2, xmm1
movdqa xmm7, xmm1
movdqa xmm1, xmm3
movd edi, xmm0
movdqa xmm0, xmm2
psllq xmm1, 0x3f
psrlq xmm0, 0x13
mov dword [esp + 0xc], edi
shufps xmm5, xmm0, 0xe4
movdqa xmm0, xmm2
psllq xmm0, 0x2d
shufps xmm1, xmm0, 0xe4
movdqa xmm0, xmm2
orps xmm1, xmm5
movdqa xmm5, xmm3
psrlq xmm0, 0x3d
psrlq xmm3, 7
psrlq xmm5, 8
shufps xmm5, xmm0, 0xe4
movdqa xmm0, xmm2
psrlq xmm2, 6
psllq xmm0, 3
shufps xmm3, xmm2, 0xe4
movd xmm2, edx
shufps xmm6, xmm0, 0xe4
movd xmm0, ecx
punpcklqdq xmm2, xmm0
orps xmm6, xmm5
pshufd xmm0, xmm7, 0xee
shufps xmm2, xmm2, 0x22
movd ecx, xmm0
xorps xmm6, xmm1
andps xmm2, xmm0
pshufd xmm0, xmmword [esp + 0x320], 0x44
xorps xmm3, xmm6
mov eax, ecx
mov edx, ecx
mov dword [esp + 0xe0], ecx
paddq xmm3, xmmword [esp + 0xd0]
shld eax, edi, 0x12
shld edx, edi, 0xe
xor edx, eax
mov eax, edi
shld edi, ecx, 0xe
mov dword [esp + 0x10], edx
shld eax, ecx, 0x12
xorps xmm2, xmm0
pshufd xmm0, xmm4, 0x4e
xor edi, eax
movdqa xmm4, xmm7
paddq xmm0, xmm7
movdqa xmmword [esp + 0x290], xmm3
paddq xmm2, xmm0
pshufd xmm0, xmm3, 0xff
movd ebx, xmm0
pshufd xmm0, xmm3, 0xee
paddq xmm2, xmmword [0x6e69f0]
movd edx, xmm0
mov esi, ebx
movdqa xmmword [esp + 0x2d0], xmm0
mov dword [esp + 0xc0], ebx
mov ecx, edx
shld esi, edx, 3
mov eax, edx
mov dword [esp + 0x190], edx
shld ecx, ebx, 0xd
shld eax, ebx, 3
xor esi, ecx
mov ecx, ebx
shld ecx, edx, 0xd
xor eax, ecx
mov ecx, ebx
shld ecx, edx, 0x1a
xor ecx, eax
mov eax, ebx
shr eax, 6
xor eax, esi
add ecx, dword [esp + 0x360]
adc eax, dword [esp + 0x1f0]
movd xmm1, ecx
mov dword [esp + 0x220], ecx
movdqa xmm0, xmm1
movdqa xmmword [esp + 0x360], xmm1
movd xmm3, eax
mov dword [esp + 0x100], eax
punpckldq xmm0, xmm3
movdqa xmmword [esp + 0x1f0], xmm0
movdqa xmm0, xmm3
movdqa xmm3, xmmword [esp + 0x110]
punpcklqdq xmm0, xmm1
movaps xmm1, xmmword [esp + 0x30]
movdqa xmm6, xmm3
movdqa xmm7, xmm3
movaps xmm5, xmm1
psrlq xmm6, 1
psllq xmm7, 0x3f
shufps xmm5, xmm0, 0x2e
movaps xmm0, xmm5
psrlq xmm0, 0x13
shufps xmm6, xmm0, 0xe4
movaps xmm0, xmm5
psllq xmm0, 0x2d
shufps xmm7, xmm0, 0xe4
movaps xmm0, xmm5
orps xmm7, xmm6
movaps xmm6, xmm1
psrlq xmm0, 0x3d
movaps xmm1, xmm5
psrlq xmm5, 6
psrldq xmm6, 9
psllq xmm1, 3
shufps xmm6, xmm0, 0xe4
movdqa xmm0, xmm3
psrlq xmm3, 7
psllq xmm0, 0x38
shufps xmm3, xmm5, 0xe4
movdqa xmm5, xmm4
shufps xmm0, xmm1, 0xe4
psrlq xmm5, 0x29
orps xmm0, xmm6
movd xmm6, edi
xorps xmm0, xmm7
movdqa xmm7, xmm4
xorps xmm3, xmm0
movdqa xmmword [esp + 0x250], xmm7
paddq xmm3, xmmword [esp + 0x90]
pshufd xmm0, xmm3, 0xff
movd edx, xmm0
pshufd xmm0, xmm3, 0xee
movdqa xmm1, xmm0
movd esi, xmm0
paddq xmm3, xmm0
mov ecx, edx
psllq xmm0, 0x2d
mov dword [esp + 0x1e0], edx
psrlq xmm1, 0x13
mov eax, esi
shld ecx, esi, 3
mov dword [esp + 0x1d0], esi
movdqa xmmword [esp + 0x110], xmm3
movsd xmm5, xmm1
movdqa xmm1, xmm4
shld eax, edx, 3
psllq xmm1, 0x17
movsd xmm1, xmm0
movd xmm0, ecx
mov ecx, edx
orpd xmm1, xmm5
movd xmm5, eax
mov eax, edx
shr ecx, 6
punpckldq xmm5, xmm0
movd xmm0, dword [esp + 0x10]
shld eax, esi, 0x1a
punpckldq xmm6, xmm0
movd xmm0, ecx
punpcklqdq xmm5, xmm6
movdqa xmm6, xmmword [esp + 0x70]
pxor xmm5, xmm1
movd xmm1, eax
punpckldq xmm1, xmm0
pshufd xmm0, xmm2, 0x44
movdqa xmm2, xmmword [esp + 0x170]
pxor xmm1, xmm5
paddq xmm0, xmm5
movss xmm5, dword [esp + 0x2c0]
shufps xmm1, xmm0, 0xe4
movaps xmmword [esp + 0x340], xmm1
movss xmm1, dword [esp + 0x200]
paddq xmm2, xmmword [esp + 0x150]
movlhps xmm5, xmm1
shufps xmm5, xmmword [esp + 0xf0], 0x42
movsd xmm0, xmm2
movdqa xmm2, xmmword [esp + 0x330]
paddq xmm5, xmm0
movd dword [esp + 0x10], xmm2
movd eax, xmm5
pshufd xmm0, xmm5, 0x55
movdqa xmmword [esp + 0xd0], xmm5
mov ecx, eax
movd esi, xmm0
movdqa xmm0, xmmword [esp + 0x20]
add ecx, dword [esp + 0xe0]
pshufd xmm1, xmm0, 0xee
mov dword [esp + 0x200], ecx
mov ecx, esi
paddq xmm1, xmm0
adc ecx, dword [esp + 0xc]
pshufd xmm0, xmm1, 0x55
movd edx, xmm1
movd edi, xmm0
pshufd xmm0, xmm2, 0x55
mov dword [esp + 0x170], edx
movd dword [esp + 0x20], xmm0
mov dword [esp + 0x210], edi
movdqa xmm0, xmm1
pand xmm1, xmm2
pxor xmm0, xmm2
movdqa xmmword [esp + 0x330], xmm1
movdqa xmm1, xmm5
movdqa xmm2, xmm5
mov dword [esp + 0x2c0], ecx
mov ecx, eax
movdqa xmmword [esp + 0x320], xmm0
pshufd xmm0, xmm5, 0xff
psrlq xmm1, 0x29
psllq xmm2, 0x2d
shld ecx, esi, 3
shld esi, eax, 3
mov eax, edx
movd dword [esp + 0x80], xmm0
pshufd xmm0, xmm5, 0xee
mov dword [esp + 0x370], ecx
mov ecx, edi
shld eax, edi, 4
mov dword [esp + 0x90], esi
mov esi, edx
movd ebx, xmm0
movdqa xmm0, xmm5
shld ecx, edx, 0x1e
shld esi, edi, 0x1e
psrlq xmm0, 0x13
movd xmm3, dword [esp + 0x370]
xor ecx, eax
mov eax, edi
movsd xmm1, xmm0
movdqa xmm0, xmm5
shld eax, edx, 4
psllq xmm0, 0x17
xor esi, eax
mov eax, edx
movsd xmm0, xmm2
shld eax, edi, 0x19
orpd xmm0, xmm1
xor eax, esi
mov esi, dword [esp + 0x10]
mov dword [esp + 0x380], eax
mov eax, edi
shld eax, edx, 0x19
xor eax, ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0xac], eax
mov eax, esi
xor eax, ecx
and ecx, esi
mov esi, dword [esp + 0xe0]
and eax, edx
mov edx, dword [esp + 0x20]
xor ecx, eax
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x1b0]
mov eax, edx
xor eax, ecx
and ecx, edx
mov edx, dword [esp + 0x190]
and eax, edi
mov edi, dword [esp + 0xc]
xor ecx, eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x1b0], ecx
mov ecx, dword [esp + 0x1c0]
xor esi, eax
xor edi, ecx
add edx, eax
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x2a0], edx
mov edx, ebx
mov dword [esp + 0xf0], edx
adc eax, ecx
mov ecx, edx
and esi, edx
mov dword [esp + 0x3b0], eax
mov eax, dword [esp + 0x80]
xor esi, dword [esp + 0x50]
shld ebx, eax, 0x12
shld ecx, eax, 0xe
mov dword [esp + 0x80], eax
xor ecx, ebx
mov ebx, eax
mov eax, dword [esp + 0x80]
shld ebx, edx, 0x12
movd xmm1, ecx
mov ecx, dword [esp + 0x80]
shld eax, edx, 0xe
xor eax, ebx
and edi, ecx
movd xmm2, eax
xor edi, dword [esp + 0x1c0]
punpckldq xmm2, xmm1
movd xmm1, dword [esp + 0x90]
punpckldq xmm3, xmm1
movss xmm1, dword [esp + 0x120]
punpcklqdq xmm3, xmm2
movd xmm2, edi
pxor xmm3, xmm0
movss xmm0, dword [esp + 0x1a0]
movlhps xmm0, xmm1
movdqa xmm1, xmm5
shufps xmm1, xmm0, 0x24
movd xmm0, esi
mov esi, ecx
mov ecx, dword [esp + 0xc]
punpcklqdq xmm2, xmm0
movaps xmm0, xmmword [0x6e6a00]
xor esi, ecx
shufps xmm0, xmm2, 0x24
paddq xmm0, xmm1
movdqa xmm1, xmm5
movdqa xmm5, xmm6
psrlq xmm1, 6
paddq xmm0, xmm3
psllq xmm5, 0x38
pxor xmm1, xmm3
movdqa xmmword [esp + 0x370], xmm0
movdqa xmm3, xmm6
shufps xmm1, xmm0, 0xe4
psrlq xmm3, 1
paddq xmm1, xmmword [esp + 0x2b0]
pshufd xmm0, xmm1, 0xff
movdqa xmm4, xmm1
movd edi, xmm0
pshufd xmm0, xmm1, 0xee
movdqa xmmword [esp + 0x1a0], xmm4
and esi, edi
movd eax, xmm0
mov dword [esp + 0x50], edi
pshufd xmm0, xmm7, 0x55
xor esi, ecx
mov ecx, edx
mov edx, dword [esp + 0xe0]
mov ebx, eax
mov dword [esp + 0x90], eax
movd dword [esp + 0x120], xmm0
xor ecx, edx
and ecx, eax
xor ecx, edx
mov edx, eax
add ecx, dword [esp + 0x2a0]
adc esi, dword [esp + 0x3b0]
shld edx, edi, 0x12
shld ebx, edi, 0xe
xor ebx, edx
mov edx, edi
mov edi, dword [esp + 0x50]
shld edx, eax, 0x12
shld edi, eax, 0xe
xor edi, edx
mov edx, eax
mov eax, dword [esp + 0x50]
shld edx, eax, 0x17
xor edx, edi
mov edi, dword [esp + 0x90]
shld eax, edi, 0x17
mov edi, dword [esp + 0x90]
xor eax, ebx
mov ebx, dword [esp + 0xf0]
xor edi, ebx
mov dword [esp + 0xe0], edi
mov edi, dword [esp + 0x50]
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x80]
xor dword [esp + 0xc], edi
add edx, ecx
mov ecx, dword [esp + 0x20]
adc eax, esi
mov esi, dword [esp + 0x10]
add edx, 0xa1f0ab72
adc eax, 0x84c87814
mov dword [esp + 0x2b0], edx
mov dword [esp + 0x2a0], eax
add esi, edx
mov edx, dword [esp + 0xc]
adc ecx, eax
mov eax, dword [esp + 0xe0]
mov dword [esp + 0x10], esi
mov dword [esp + 0x20], ecx
and edx, ecx
mov ecx, dword [esp + 0x2f0]
and eax, esi
xor edx, edi
mov esi, ebx
xor eax, ebx
mov ebx, dword [esp + 0x120]
add eax, dword [esp + 0x200]
adc edx, dword [esp + 0x2c0]
mov dword [esp + 0xe0], eax
movd eax, xmm7
add ecx, eax
movd xmm1, ecx
mov ecx, dword [esp + 0x100]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x300]
adc edx, ebx
shrd eax, ebx, 7
shr ebx, 7
mov dword [esp + 0x300], eax
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x120], ebx
mov ebx, dword [esp + 0x1d0]
movd xmm0, edx
punpcklqdq xmm0, xmm1
movaps xmm1, xmmword [esp + 0x30]
shrd dword [esp + 0x190], eax, 7
shr eax, 7
mov edx, ebx
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x220]
shufps xmm1, xmm0, 0x2e
movdqa xmm0, xmmword [esp + 0x290]
movaps xmmword [esp + 0x30], xmm1
movdqa xmm1, xmmword [esp + 0x2d0]
add esi, eax
adc edi, ecx
mov dword [esp + 0xf0], esi
add edx, dword [esp + 0x10]
mov esi, dword [esp + 0x1e0]
paddq xmm1, xmm0
punpcklqdq xmm7, xmm1
mov dword [esp + 0x80], edi
mov dword [esp + 0x200], edx
mov edx, esi
adc edx, dword [esp + 0x20]
mov dword [esp + 0x2c0], edx
mov edx, dword [esp + 0x160]
add edx, eax
mov eax, dword [esp + 0xb0]
movd xmm2, edx
mov edx, ebx
adc eax, ecx
shld edx, esi, 0x1f
movd xmm1, eax
mov eax, esi
mov esi, ebx
punpcklqdq xmm1, xmm2
shld esi, eax, 0x18
mov edi, eax
shufps xmm0, xmm1, 0x2e
movdqa xmm1, xmm6
xor esi, edx
mov edx, eax
shld edi, ebx, 0x18
movaps xmmword [esp + 0xb0], xmm0
movaps xmm0, xmmword [esp + 0x1f0]
punpcklqdq xmm1, xmm4
shld edx, ebx, 0x1f
movdqa xmm2, xmm1
xor edi, edx
mov edx, eax
psrlq xmm2, 0x13
shld edx, ebx, 0x19
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm1
xor edx, edi
mov edi, eax
unpcklpd xmm0, xmmword [esp + 0x110]
psllq xmm2, 0x2d
movaps xmmword [esp + 0x2f0], xmm0
movdqa xmm0, xmm4
movdqa xmm4, xmm6
psrlq xmm6, 7
psllq xmm4, 0x3f
shufps xmm4, xmm2, 0xe4
movdqa xmm2, xmm1
orps xmm4, xmm3
movdqa xmm3, xmmword [esp + 0x140]
psrlq xmm2, 0x3d
psrldq xmm3, 9
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm1
psrlq xmm1, 6
psllq xmm2, 3
shufps xmm6, xmm1, 0xe4
pshufd xmm1, xmm0, 0x55
movdqa xmm0, xmmword [esp + 0x310]
shufps xmm5, xmm2, 0xe4
movd dword [esp + 0x110], xmm1
orps xmm5, xmm3
xorps xmm5, xmm4
xorps xmm6, xmm5
movdqa xmm2, xmm0
movdqa xmm5, xmmword [esp + 0x180]
movdqa xmm3, xmm0
movdqa xmm4, xmm0
paddq xmm6, xmmword [esp + 0x30]
psrlq xmm2, 1
psllq xmm3, 0x3f
psllq xmm4, 0x38
pshufd xmm1, xmm6, 0xff
movdqa xmmword [esp + 0x70], xmm6
movd dword [esp + 0x1c0], xmm1
movdqa xmm1, xmm6
psrlq xmm1, 0x13
shufps xmm2, xmm1, 0xe4
movdqa xmm1, xmm6
psllq xmm1, 0x2d
shufps xmm3, xmm1, 0xe4
movdqa xmm1, xmm6
orps xmm3, xmm2
movdqa xmm2, xmm5
psrlq xmm1, 0x3d
psrldq xmm2, 9
shufps xmm2, xmm1, 0xe4
movdqa xmm1, xmm6
psllq xmm1, 3
shufps xmm4, xmm1, 0xe4
movdqa xmm1, xmm6
orps xmm4, xmm2
psrlq xmm1, 6
xorps xmm4, xmm3
movdqa xmm3, xmm0
psrlq xmm3, 7
shufps xmm3, xmm1, 0xe4
xorps xmm3, xmm4
paddq xmm3, xmm7
movdqa xmm7, xmmword [esp + 0xd0]
pshufd xmm0, xmm3, 0xff
movd dword [esp + 0x310], xmm0
pshufd xmm0, xmm3, 0xee
movd dword [esp + 0x2d0], xmm0
movdqa xmm0, xmm3
movdqa xmm1, xmm7
psrlq xmm0, 0x13
movdqa xmm2, xmm7
movdqa xmm4, xmm7
psrlq xmm1, 1
psllq xmm2, 0x3f
psllq xmm4, 0x38
shufps xmm1, xmm0, 0xe4
movdqa xmm0, xmm3
psllq xmm0, 0x2d
shufps xmm2, xmm0, 0xe4
movdqa xmm0, xmm3
orps xmm2, xmm1
movdqa xmm1, xmm7
psrlq xmm0, 0x3d
psrlq xmm7, 7
psrlq xmm1, 8
shufps xmm1, xmm0, 0xe4
movdqa xmm0, xmm3
psllq xmm0, 3
shufps xmm4, xmm0, 0xe4
pshufd xmm0, xmm3, 0x44
paddq xmm0, xmm3
orps xmm4, xmm1
movss xmm1, dword [esp + 0xac]
movdqa xmmword [esp + 0x3b0], xmm0
movdqa xmm0, xmm3
xorps xmm4, xmm2
movss xmm2, dword [esp + 0x1b0]
movdqa xmm3, xmm5
psrlq xmm0, 6
shufps xmm7, xmm0, 0xe4
movss xmm0, dword [esp + 0x380]
xorps xmm7, xmm4
paddq xmm7, xmmword [esp + 0xb0]
movlhps xmm1, xmm0
movdqa xmm0, xmm5
shufps xmm0, xmm1, 0x24
movss xmm1, dword [esp + 0x40]
movdqa xmmword [esp + 0x3e0], xmm7
movaps xmm7, xmmword [esp + 0x460]
movlhps xmm2, xmm1
movdqa xmm1, xmmword [esp + 0x320]
shufps xmm3, xmm2, 0x2e
movaps xmm2, xmmword [esp + 0x370]
paddq xmm3, xmm0
paddq xmm3, xmmword [esp + 0x340]
mov dword [esp + 0x340], edx
mov edx, eax
mov eax, dword [esp + 0x100]
shr edx, 7
xor edx, esi
movlps xmm2, qword [esp + 0x270]
mov dword [esp + 0x320], edx
pshufd xmm0, xmm3, 0xff
shrd dword [esp + 0x220], eax, 7
shr eax, 7
add ebx, 0x3ad6faec
movdqa xmmword [esp + 0x1b0], xmm3
movd dword [esp + 0x40], xmm0
pshufd xmm0, xmm3, 0xee
mov dword [esp + 0x100], eax
adc edi, 0x5fcb6fab
mov dword [esp + 0x1d0], ebx
mov ebx, dword [esp + 0x10]
pand xmm1, xmm0
movd ecx, xmm0
mov dword [esp + 0x1e0], edi
movaps xmm5, xmm2
pxor xmm1, xmmword [esp + 0x330]
mov dword [esp + 0x30], ecx
mov edx, ebx
mov edi, ebx
pshufd xmm0, xmm1, 0x55
movd dword [esp + 0x3f0], xmm1
movd dword [esp + 0x3a0], xmm0
movdqa xmm0, xmmword [esp + 0x1a0]
movd eax, xmm0
pshufd xmm0, xmm6, 0xee
movd xmm6, dword [esp + 0x2b0]
add eax, dword [esp + 0x90]
movdqa xmmword [esp + 0x380], xmm0
mov dword [esp + 0x160], eax
mov eax, dword [esp + 0x50]
adc dword [esp + 0x110], eax
mov eax, dword [esp + 0x20]
shld edx, eax, 0x12
shld edi, eax, 0xe
mov esi, eax
xor edi, edx
mov edx, eax
shld esi, ebx, 0xe
shld edx, ebx, 0x12
xor esi, edx
mov edx, ebx
shld edx, eax, 0x17
xor edx, esi
mov esi, eax
movd eax, xmm0
shld esi, ebx, 0x17
mov dword [esp + 0x330], eax
xor esi, edi
add edx, dword [esp + 0xe0]
adc esi, dword [esp + 0xc]
add edx, 0x1a6439ec
mov ebx, edx
adc esi, 0x8cc70208
add ebx, dword [esp + 0x170]
mov edi, esi
adc edi, dword [esp + 0x210]
add eax, ebx
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0x1c0]
mov dword [esp + 0xc], edi
adc eax, edi
mov edi, dword [esp + 0x40]
mov dword [esp + 0x370], eax
mov eax, ecx
mov ebx, edi
shld eax, edi, 4
shld ebx, ecx, 0x1e
mov ecx, edi
xor ebx, eax
mov eax, dword [esp + 0x30]
shld ecx, eax, 4
mov eax, dword [esp + 0x30]
shld eax, edi, 0x1e
xor eax, ecx
mov ecx, dword [esp + 0x30]
shld ecx, edi, 0x19
xor ecx, eax
mov eax, edi
mov edi, dword [esp + 0x30]
shld eax, edi, 0x19
mov edi, dword [esp + 0x3f0]
xor eax, ebx
add edi, ecx
mov ecx, dword [esp + 0x3a0]
movd xmm1, edi
adc ecx, eax
mov eax, dword [esp + 0x20]
movd xmm0, ecx
mov ecx, dword [esp + 0x50]
punpcklqdq xmm0, xmm1
movaps xmm1, xmmword [0x6e6a10]
xor eax, ecx
and eax, dword [esp + 0xc]
shufps xmm1, xmm0, 0x24
movaps xmm0, xmm2
movd xmm2, edx
mov edx, dword [esp + 0x90]
psrlq xmm5, xmm1
paddq xmm1, xmm0
pshufd xmm0, xmm1, 0xee
movd edi, xmm0
pshufd xmm0, xmm1, 0xff
movsd xmm1, xmm5
xor eax, ecx
mov ecx, dword [esp + 0x10]
movd ebx, xmm0
movd xmm0, esi
mov esi, edi
mov esi, dword [esp + 0x30]
mov dword [esp + 0x2e8], edi
punpcklqdq xmm0, xmm2
movaps xmm2, xmmword [esp + 0x60]
mov dword [esp + 0x270], ebx
xor ecx, edx
and ecx, dword [esp + 0xb0]
shufps xmm2, xmm0, 0x2e
movd xmm0, eax
mov eax, ebx
movaps xmmword [esp + 0x60], xmm2
shld eax, edi, 4
xor ecx, edx
mov edx, ebx
movd xmm2, ecx
mov ecx, edi
shld edx, edi, 0x1e
shld ecx, ebx, 0x1e
punpckldq xmm2, xmm0
xor ecx, eax
mov eax, edi
shld eax, ebx, 4
xor edx, eax
mov eax, ebx
shld eax, edi, 0x19
xor eax, edx
mov edx, edi
shld edx, ebx, 0x19
movd xmm3, eax
xor edx, ecx
mov ecx, dword [esp + 0x210]
movd xmm0, edx
mov edx, dword [esp + 0x40]
punpckldq xmm0, xmm3
punpcklqdq xmm0, xmm2
mov eax, edx
xor eax, ecx
and ecx, edx
mov edx, dword [esp + 0x170]
mov dword [esp + 0x170], edi
and eax, ebx
mov ebx, dword [esp + 0xc]
xor ecx, eax
mov eax, esi
movd xmm3, ecx
xor eax, edx
and edx, esi
mov esi, dword [esp + 0xb0]
and eax, edi
mov ecx, ebx
xor edx, eax
mov eax, ebx
movd xmm2, edx
shld eax, esi, 0x12
shld ecx, esi, 0xe
mov edx, esi
punpckldq xmm2, xmm3
xor ecx, eax
mov eax, esi
shld edx, ebx, 0xe
shld eax, ebx, 0x12
xor edx, eax
mov eax, ebx
shld ebx, esi, 0x17
shld esi, eax, 0x17
xor ebx, edx
mov edx, dword [esp + 0x40]
xor esi, ecx
mov ecx, dword [esp + 0x270]
mov eax, ecx
xor eax, edx
and edx, ecx
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x210], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0xc]
xor dword [esp + 0x170], eax
and eax, edi
mov edi, dword [esp + 0xf0]
xor edx, dword [esp + 0x20]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xb0]
xor eax, dword [esp + 0x10]
add edi, 0x23631e28
adc ecx, 0x90befffa
movd xmm4, edi
movd xmm3, ecx
punpckldq xmm4, xmm3
movd xmm3, esi
punpcklqdq xmm2, xmm4
paddq xmm2, xmm0
movd xmm0, ebx
punpckldq xmm3, xmm0
movd xmm0, dword [esp + 0x2a0]
punpckldq xmm6, xmm0
punpcklqdq xmm6, xmm3
paddq xmm6, xmm2
shufps xmm7, xmm6, 0xe2
paddq xmm7, xmmword [esp + 0x1b0]
pshufd xmm0, xmm7, 0xff
movd ebx, xmm0
pshufd xmm0, xmm7, 0xee
movd edi, xmm0
mov dword [esp + 0x50], ebx
movdqa xmmword [esp + 0x2b0], xmm0
mov ecx, edi
mov esi, edi
mov dword [esp + 0x90], edi
paddq xmm7, xmmword [esp + 0x2b0]
shld ecx, ebx, 0x12
shld esi, ebx, 0xe
xor esi, ecx
mov ecx, ebx
mov ebx, dword [esp + 0x50]
shld ecx, edi, 0x12
shld ebx, edi, 0xe
mov edi, dword [esp + 0x90]
xor ebx, ecx
mov ecx, dword [esp + 0x50]
shld edi, ecx, 0x17
mov ecx, dword [esp + 0x50]
xor edi, ebx
mov ebx, dword [esp + 0x90]
shld ecx, ebx, 0x17
and eax, ebx
mov ebx, dword [esp + 0x90]
xor ecx, esi
mov esi, dword [esp + 0x50]
xor eax, dword [esp + 0x10]
xor ebx, dword [esp + 0xb0]
and edx, esi
xor esi, dword [esp + 0xc]
xor edx, dword [esp + 0x20]
add eax, dword [esp + 0x160]
adc edx, dword [esp + 0x110]
add eax, edi
movd edi, xmm6
mov dword [esp + 0x110], edi
adc edx, ecx
add eax, 0xde82bde9
adc edx, 0xa4506ceb
movd xmm0, eax
movd xmm2, edx
movdqa xmmword [esp + 0x3f0], xmm0
movdqa xmmword [esp + 0x3a0], xmm2
punpcklqdq xmm2, xmm0
movapd xmm0, xmmword [esp + 0x230]
xorpd xmm5, xmm0
shufps xmm0, xmm2, 0x24
paddq xmm0, xmm1
pshufd xmm1, xmm0, 0xff
shufpd xmm5, xmm0, 2
movd ecx, xmm1
pshufd xmm1, xmm0, 0xee
movapd xmmword [esp + 0x10], xmm5
movd eax, xmm1
and esi, ecx
pshufd xmm1, xmm6, 0x55
mov dword [esp + 0xe0], ecx
and ebx, eax
xor esi, dword [esp + 0xc]
movd edx, xmm1
mov dword [esp + 0xf0], eax
mov eax, edi
xor ebx, dword [esp + 0xb0]
mov ecx, edx
mov dword [esp + 0x160], edx
add ebx, dword [esp + 0x200]
adc esi, dword [esp + 0x2c0]
shld eax, edx, 4
shld ecx, edi, 0x1e
xor ecx, eax
mov eax, edx
shld eax, edi, 4
mov dword [esp + 0x20], esi
mov esi, edi
shld edi, edx, 0x1e
xor edi, eax
mov eax, esi
shld eax, edx, 0x19
xor eax, edi
mov edi, edx
shld edi, esi, 0x19
xor edi, ecx
mov ecx, dword [esp + 0x170]
and ecx, esi
xor ecx, dword [esp + 0x30]
mov esi, ecx
mov ecx, dword [esp + 0x210]
and ecx, edx
xor ecx, dword [esp + 0x40]
add esi, eax
mov eax, edx
movd dword [esp + 0x40], xmm7
movd xmm2, esi
adc ecx, edi
mov edi, dword [esp + 0x270]
movd xmm1, ecx
mov ecx, dword [esp + 0x2e8]
punpcklqdq xmm1, xmm2
movaps xmm2, xmmword [0x6e6a10]
xor eax, edi
and edi, edx
mov edx, dword [esp + 0x110]
shufps xmm2, xmm1, 0x24
movdqa xmm1, xmmword [esp + 0x60]
movdqa xmm3, xmm1
psrlq xmm3, xmm2
paddq xmm2, xmm1
pshufd xmm1, xmm2, 0xee
movdqa xmm4, xmm2
movdqa xmmword [esp + 0x80], xmm3
movdqa xmm3, xmm2
movd dword [esp + 0x210], xmm1
pshufd xmm1, xmm2, 0xff
psrlq xmm4, 0x1c
psllq xmm3, 0x24
movd esi, xmm1
movdqa xmm1, xmm0
punpckhqdq xmm1, xmm2
and eax, esi
mov dword [esp + 0x400], esi
movdqa xmm0, xmm1
movdqa xmm5, xmm1
xor edi, eax
mov eax, edx
psrlq xmm0, 0xe
xor eax, ecx
psllq xmm5, 0x2e
and ecx, edx
movsd xmm4, xmm0
movdqa xmm0, xmm1
and eax, dword [esp + 0x210]
psllq xmm0, 0x32
movsd xmm3, xmm0
movdqa xmm0, xmm1
orpd xmm3, xmm4
movdqa xmm4, xmm2
psrlq xmm0, 0x12
psrlq xmm4, 0x22
xor ecx, eax
mov eax, esi
movsd xmm4, xmm0
movdqa xmm0, xmm2
psllq xmm0, 0x1e
movsd xmm0, xmm5
orpd xmm0, xmm4
movdqa xmm4, xmm2
xorpd xmm0, xmm3
movdqa xmm3, xmm1
psrlq xmm4, 0x27
psllq xmm1, 0x17
psrlq xmm3, 0x29
movsd xmm4, xmm3
movdqa xmm3, xmm2
psllq xmm2, 0x19
movsd xmm2, xmm1
movd xmm1, ecx
mov ecx, dword [esp + 0x160]
orpd xmm2, xmm4
xorpd xmm2, xmm0
movd xmm0, edi
mov edi, dword [esp + 0x210]
punpckldq xmm1, xmm0
xor esi, ecx
and ecx, eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x60], esi
mov dword [esp + 0x160], ecx
mov esi, edi
xor esi, edx
and edx, edi
add ebx, 0xb2c67915
adc eax, 0xbef9a3f7
movd xmm0, ebx
mov dword [esp + 0x110], edx
mov edx, dword [esp + 0xe0]
mov dword [esp + 0x30], esi
mov ebx, dword [esp + 0xf0]
movd xmm4, eax
mov eax, dword [esp + 0x50]
punpckldq xmm0, xmm4
movdqa xmm4, xmm6
movdqa xmm6, xmmword [esp + 0x10]
punpcklqdq xmm0, xmm1
paddq xmm0, xmm2
movdqa xmm2, xmmword [esp + 0x1b0]
paddq xmm4, xmm0
xor edx, eax
pshufd xmm1, xmm4, 0x55
movdqa xmmword [esp + 0x230], xmm4
movd esi, xmm1
and edx, esi
mov dword [esp + 0x170], esi
mov esi, dword [esp + 0x90]
pshufd xmm1, xmm2, 0x55
xor edx, eax
movd eax, xmm4
movd ecx, xmm1
mov dword [esp + 0xc], ecx
mov dword [esp + 0xb0], eax
xor ebx, esi
and ebx, eax
movd eax, xmm2
xor ebx, esi
mov esi, ecx
mov dword [esp + 0x270], eax
add ebx, dword [esp + 0xac]
adc edx, dword [esp + 0x370]
shr ecx, 6
shld esi, eax, 0x1a
mov eax, dword [esp + 0x310]
mov dword [esp + 0x2a0], ecx
mov ecx, dword [esp + 0x2d0]
mov dword [esp + 0x2c0], esi
add ecx, 0x21c0c207
adc eax, 0xd186b8c7
movd xmm2, ecx
movd xmm1, eax
punpcklqdq xmm1, xmm2
movaps xmm2, xmmword [esp + 0x240]
shufps xmm2, xmm1, 0x24
pshufd xmm1, xmm4, 0xff
movd edi, xmm1
pshufd xmm1, xmm4, 0xee
paddq xmm6, xmm2
movdqa xmm2, xmm4
movd eax, xmm1
mov ecx, edi
movdqa xmm1, xmm4
psrlq xmm2, 0x27
mov dword [esp + 0x10], edi
mov esi, eax
shld ecx, eax, 0x1e
mov dword [esp + 0x20], eax
psrlq xmm1, 0xe
shld esi, edi, 4
movsd xmm2, xmm1
movdqa xmm1, xmm4
psllq xmm4, 0x19
xor ecx, esi
mov esi, edi
psllq xmm1, 0x32
shld esi, eax, 4
mov eax, dword [esp + 0x20]
movsd xmm4, xmm1
movd xmm1, ecx
orpd xmm4, xmm2
shld eax, edi, 0x1e
xor eax, esi
mov esi, dword [esp + 0x170]
movd xmm2, eax
mov eax, dword [esp + 0xb0]
punpckldq xmm2, xmm1
mov edi, esi
mov ecx, eax
shld edi, eax, 0xe
shld ecx, esi, 0xe
movd xmm5, edi
mov edi, eax
movd xmm1, ecx
mov ecx, esi
shld edi, esi, 0x17
shld ecx, eax, 0x17
punpckldq xmm5, xmm1
mov eax, dword [esp + 0x30]
movd xmm1, ecx
mov ecx, dword [esp + 0x60]
punpcklqdq xmm5, xmm2
movd xmm2, edi
mov edi, dword [esp + 0x210]
movd dword [esp + 0x60], xmm0
pxor xmm5, xmm4
punpckldq xmm2, xmm1
pxor xmm2, xmm5
and eax, dword [esp + 0x20]
and ecx, dword [esp + 0x10]
xor eax, dword [esp + 0x110]
xor ecx, dword [esp + 0x160]
add ebx, 0xe372532b
adc edx, 0xc67178f2
movd xmm1, eax
movd xmm4, ecx
punpcklqdq xmm4, xmm1
shufps xmm1, xmm4, 0x24
movd xmm4, edx
paddq xmm1, xmm5
movdqa xmm5, xmmword [esp + 0x1b0]
movsd xmm1, xmm2
movd xmm2, ebx
punpckldq xmm2, xmm4
movdqa xmm4, xmmword [esp + 0x3f0]
punpckldq xmm4, xmmword [esp + 0x3a0]
punpcklqdq xmm2, xmm4
movdqa xmm4, xmm5
paddq xmm2, xmm1
psllq xmm4, 0x2d
pshufd xmm1, xmm2, 0xff
movd ecx, xmm1
pshufd xmm1, xmm2, 0xee
movd edx, xmm1
mov ebx, ecx
mov dword [esp + 0x90], ecx
pshufd xmm1, xmm0, 0x55
movapd xmm0, xmmword [esp + 0x260]
mov esi, edx
shld ebx, edx, 0x1e
mov eax, edx
mov dword [esp + 0x240], edx
movd dword [esp + 0x30], xmm1
movapd xmm1, xmmword [esp + 0x80]
shld esi, ecx, 4
shld eax, ecx, 0x1e
xor ebx, esi
mov esi, ecx
shld esi, edx, 4
xor eax, esi
mov esi, edx
movsd xmm3, xmm1
xorpd xmm1, xmm0
shld esi, ecx, 0x19
shld ecx, edx, 0x19
movapd xmmword [esp + 0x80], xmm1
movapd xmm1, xmm0
xor esi, eax
mov eax, dword [esp + 0x20]
xor ecx, ebx
unpcklpd xmm1, xmm2
paddq xmm1, xmm3
movdqa xmm3, xmm5
pshufd xmm0, xmm1, 0xff
movdqa xmmword [esp + 0x200], xmm1
psrlq xmm3, 0x13
movd dword [esp + 0x50], xmm0
pshufd xmm0, xmm1, 0xee
mov ebx, eax
movd dword [esp + 0x110], xmm0
pshufd xmm0, xmm7, 0x55
xor ebx, edi
movd dword [esp + 0x160], xmm0
and ebx, edx
mov edx, edi
mov edi, dword [esp + 0x10]
and edx, eax
mov eax, dword [esp + 0x400]
xor edx, ebx
mov ebx, edi
xor ebx, eax
and eax, edi
and ebx, dword [esp + 0x90]
xor eax, ebx
add edx, esi
mov ebx, dword [esp + 0x60]
adc eax, ecx
mov ecx, dword [esp + 0x30]
add ebx, edx
adc ecx, eax
mov eax, ebx
mov edx, ebx
mov dword [esp + 0x60], ebx
mov esi, ecx
shld eax, ecx, 4
mov edi, ecx
mov dword [esp + 0x30], ecx
shld esi, ebx, 0x1e
xor esi, eax
mov eax, ecx
shld eax, ebx, 4
shld ebx, ecx, 0x1e
mov ecx, edx
xor ebx, eax
mov eax, edi
shld ecx, edi, 0x19
mov edi, dword [esp + 0x20]
shld eax, edx, 0x19
xor ecx, ebx
xor eax, esi
mov esi, dword [esp + 0x240]
mov ebx, esi
xor ebx, edi
and ebx, edx
mov edx, esi
mov esi, dword [esp + 0x10]
and edx, edi
xor edx, ebx
mov ebx, dword [esp + 0x90]
mov edi, ebx
and ebx, esi
xor edi, esi
mov esi, dword [esp + 0x50]
and edi, dword [esp + 0x30]
xor ebx, edi
mov edi, dword [esp + 0x110]
add edx, ecx
adc ebx, eax
mov dword [esp + 0x210], edx
mov edx, esi
mov eax, edi
mov ecx, edi
shld edx, edi, 0x12
shld eax, esi, 0x12
shld ecx, esi, 0xe
xor ecx, eax
mov eax, edi
mov edi, esi
shld edi, eax, 0xe
xor edi, edx
mov edx, eax
shld edx, esi, 0x17
xor edx, edi
mov edi, esi
shld edi, eax, 0x17
xor edi, ecx
mov ecx, dword [esp + 0x170]
xor ecx, dword [esp + 0xe0]
and ecx, esi
mov esi, dword [esp + 0xb0]
xor ecx, dword [esp + 0xe0]
xor esi, dword [esp + 0xf0]
and esi, eax
mov eax, dword [esp + 0x160]
xor esi, dword [esp + 0xf0]
add dword [esp + 0x40], esi
adc eax, ecx
mov ecx, dword [esp + 0x40]
add ecx, edx
mov edx, dword [esp + 0x10]
adc eax, edi
mov dword [esp + 0x40], ecx
mov esi, eax
mov dword [esp + 0x160], eax
mov eax, dword [esp + 0x20]
add eax, ecx
adc edx, esi
movd xmm1, eax
mov edi, eax
mov dword [esp + 0x20], eax
movd xmm0, edx
mov ecx, edx
shld eax, edx, 0x17
mov dword [esp + 0x10], edx
punpcklqdq xmm0, xmm1
movdqa xmm1, xmm5
shld ecx, edi, 0x17
shufps xmm1, xmm0, 0x24
movaps xmm0, xmm1
psrlq xmm0, 0xe
shufps xmm3, xmm0, 0xe4
movaps xmm0, xmm1
psllq xmm0, 0x32
shufps xmm4, xmm0, 0xe4
movaps xmm0, xmm1
psllq xmm1, 0x2e
orps xmm4, xmm3
movdqa xmm3, xmm5
psrlq xmm0, 0x12
psrlq xmm3, 0x3d
shufps xmm3, xmm0, 0xe4
movdqa xmm0, xmm5
psllq xmm0, 3
shufps xmm0, xmm1, 0xe4
movd xmm1, ecx
mov ecx, dword [esp + 0x170]
orps xmm0, xmm3
movd xmm3, eax
mov eax, dword [esp + 0x50]
xorps xmm0, xmm4
punpckldq xmm3, xmm1
movd xmm1, dword [esp + 0x2c0]
movd xmm4, dword [esp + 0x2a0]
xor eax, ecx
and eax, edx
punpckldq xmm1, xmm4
xor eax, ecx
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0xb0]
movaps xmm7, xmmword [esp + 0xd0]
punpcklqdq xmm1, xmm3
pxor xmm1, xmm0
movd xmm3, eax
xor ecx, edx
and ecx, edi
mov edi, dword [esp + 0x60]
xor ecx, edx
mov edx, dword [esp + 0x30]
movd xmm0, ecx
punpcklqdq xmm3, xmm0
movd xmm0, ebx
shufps xmm7, xmm3, 0x24
movd xmm3, dword [esp + 0x210]
paddq xmm7, xmm6
paddq xmm7, xmm1
movdqa xmm1, xmmword [esp + 0x250]
punpcklqdq xmm0, xmm3
shufps xmm0, xmm7, 0xe2
paddq xmm0, xmm2
movdqa xmm2, xmm1
movdqa xmm4, xmm1
movdqa xmm6, xmm1
punpcklqdq xmm2, xmm0
psrlq xmm4, 1
psllq xmm6, 0x3f
movd ebx, xmm0
movdqa xmmword [esp + 0xf0], xmm0
movdqa xmm3, xmm2
mov eax, ebx
psrlq xmm3, 0x1c
shufps xmm4, xmm3, 0xe4
movdqa xmm3, xmm2
psllq xmm3, 0x24
shufps xmm6, xmm3, 0xe4
movdqa xmm3, xmm2
psllq xmm2, 0x1e
orps xmm6, xmm4
movdqa xmm4, xmm1
psllq xmm1, 0x38
psrlq xmm3, 0x22
shufps xmm1, xmm2, 0xe4
pshufd xmm2, xmm0, 0x55
psrlq xmm4, 8
movdqa xmm0, xmmword [esp + 0x290]
movd esi, xmm2
shufps xmm4, xmm3, 0xe4
mov ecx, esi
shld eax, esi, 0x19
orps xmm1, xmm4
movd xmm4, dword [esp + 0x120]
shld ecx, ebx, 0x19
movd xmm3, eax
mov eax, edx
xorps xmm1, xmm6
movd xmm2, ecx
mov ecx, dword [esp + 0x90]
punpckldq xmm3, xmm2
movd xmm2, dword [esp + 0x300]
xor eax, ecx
and ecx, edx
mov edx, dword [esp + 0x240]
and eax, esi
punpckldq xmm2, xmm4
xor ecx, eax
mov eax, edi
punpcklqdq xmm2, xmm3
pxor xmm2, xmm1
movaps xmm1, xmmword [esp + 0x140]
movd xmm4, ecx
xor eax, edx
and edx, edi
and eax, ebx
xor edx, eax
movd xmm3, edx
punpcklqdq xmm4, xmm3
movss xmm3, dword [esp + 0x40]
shufps xmm1, xmm4, 0x2e
movd xmm4, dword [esp + 0xc0]
paddq xmm1, xmm2
movss xmm2, dword [esp + 0x160]
movlhps xmm2, xmm3
shufps xmm5, xmm2, 0x24
paddq xmm5, xmm1
punpckhqdq xmm0, xmm5
movdqa xmm2, xmm5
pshufd xmm1, xmm5, 0xee
movdqa xmmword [esp + 0xe0], xmm5
movdqa xmm3, xmm0
psrlq xmm2, 0x1c
movdqa xmm6, xmm0
movd edx, xmm1
movdqa xmmword [esp + 0xb0], xmm1
psrlq xmm3, 1
psllq xmm6, 0x3f
mov eax, edx
mov dword [esp + 0x120], edx
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm5
psllq xmm2, 0x24
shufps xmm6, xmm2, 0xe4
movdqa xmm2, xmm5
orps xmm6, xmm3
movdqa xmm3, xmm0
psrlq xmm2, 0x22
psllq xmm0, 0x38
psrlq xmm3, 8
shufps xmm3, xmm2, 0xe4
movdqa xmm2, xmm5
psllq xmm2, 0x1e
shufps xmm0, xmm2, 0xe4
pshufd xmm2, xmm5, 0xff
movd edi, xmm2
orps xmm0, xmm3
movdqa xmm2, xmm1
mov ecx, edi
shld eax, edi, 0x19
xorps xmm0, xmm6
mov dword [esp + 0x90], edi
shld ecx, edx, 0x19
movd xmm6, eax
mov eax, ebx
movd xmm3, ecx
mov ecx, dword [esp + 0x60]
punpckldq xmm6, xmm3
movd xmm3, dword [esp + 0x190]
xor eax, ecx
and ebx, ecx
mov ecx, dword [esp + 0x30]
and eax, edx
punpckldq xmm3, xmm4
mov edx, dword [esp + 0x110]
xor ebx, eax
mov eax, esi
punpcklqdq xmm3, xmm6
pxor xmm3, xmm0
movaps xmm0, xmmword [esp + 0x180]
movd xmm4, ebx
xor eax, ecx
and esi, ecx
mov ecx, dword [esp + 0x10]
and eax, edi
mov edi, dword [esp + 0x20]
xor esi, eax
movd xmm6, esi
mov esi, dword [esp + 0x50]
punpcklqdq xmm6, xmm4
shufps xmm0, xmm6, 0x2e
xor edx, edi
paddq xmm0, xmm3
pshufd xmm3, xmm7, 0x55
paddq xmm0, xmm7
movd ebx, xmm3
xor esi, ecx
pshufd xmm3, xmm0, 0xff
pshufd xmm4, xmm0, 0xee
movdqa xmmword [esp + 0x180], xmm0
movdqa xmm0, xmmword [esp + 0xf0]
mov dword [esp + 0x2b0], ebx
movd dword [esp + 0x170], xmm3
movdqa xmm3, xmm4
movd eax, xmm4
psrlq xmm3, 0x1c
mov dword [esp + 0x260], eax
movdqa xmm6, xmm0
movdqa xmm1, xmm0
movdqa xmm5, xmm0
psrlq xmm6, 0xe
psllq xmm1, 0x32
psllq xmm5, 0x2e
movsd xmm6, xmm3
movdqa xmm3, xmm4
psllq xmm3, 0x24
movsd xmm1, xmm3
movdqa xmm3, xmm4
orpd xmm1, xmm6
movdqa xmm6, xmm0
psrlq xmm3, 0x22
psrlq xmm6, 0x12
movsd xmm6, xmm3
movdqa xmm3, xmm4
psllq xmm3, 0x1e
movsd xmm5, xmm3
movdqa xmm3, xmm2
movdqa xmm2, xmm0
orpd xmm5, xmm6
movdqa xmm6, xmm0
pxor xmm3, xmm0
xorpd xmm5, xmm1
movdqa xmm1, xmm4
psrlq xmm6, 0x29
pand xmm3, xmm4
psllq xmm4, 0x19
psrlq xmm1, 0x27
movsd xmm6, xmm1
movdqa xmm1, xmm0
movaps xmm0, xmmword [esp + 0xe0]
psllq xmm1, 0x17
movsd xmm1, xmm4
movd xmm4, esi
mov esi, ebx
orpd xmm1, xmm6
movaps xmm6, xmmword [esp + 0x200]
xorpd xmm1, xmm5
movd xmm5, edx
movd edx, xmm7
punpcklqdq xmm4, xmm5
movaps xmm5, xmm0
mov dword [esp + 0x160], edx
add edx, 0xcde0eb1e
shufps xmm5, xmm4, 0x2e
movaps xmm4, xmmword [esp + 0x80]
adc esi, 0xeada7dd6
andps xmm5, xmm2
movdqa xmm2, xmmword [esp + 0xb0]
xorps xmm5, xmm6
shufps xmm4, xmm6, 0xe4
movd xmm6, edx
movaps xmmword [esp + 0x80], xmm4
movd xmm4, esi
punpcklqdq xmm4, xmm6
movaps xmm6, xmm0
movdqa xmm0, xmmword [esp + 0xf0]
shufps xmm6, xmm4, 0x2e
pshufd xmm4, xmmword [esp + 0x230], 0x44
pand xmm2, xmm0
paddq xmm4, xmm6
pxor xmm2, xmm3
paddq xmm4, xmm5
shufps xmm2, xmm4, 0xe4
paddq xmm2, xmm1
pshufd xmm1, xmm2, 0xff
movdqa xmmword [esp + 0xb0], xmm2
movd dword [esp + 0x50], xmm1
pshufd xmm1, xmm2, 0xee
movaps xmm2, xmmword [esp + 0x150]
movd dword [esp + 0x40], xmm1
pshufd xmm1, xmm0, 0xff
movd ebx, xmm1
pshufd xmm1, xmm0, 0xee
movdqa xmm0, xmmword [esp + 0x3e0]
movd esi, xmm1
mov dword [esp + 0x210], ebx
mov dword [esp + 0x110], esi
xor esi, edi
mov edi, ebx
xor edi, ecx
mov dword [esp + 0x310], esi
mov esi, dword [esp + 0x170]
pshufd xmm3, xmm0, 0xee
pshufd xmm1, xmm0, 0xff
movd ebx, xmm3
movd edx, xmm1
add ebx, 0xee6ed178
adc edx, 0xf57d4f7f
movd xmm4, ebx
movd xmm1, edx
punpcklqdq xmm1, xmm4
shufps xmm2, xmm1, 0x2e
paddq xmm2, xmmword [esp + 0x80]
movdqa xmmword [esp + 0x150], xmm2
movdqa xmm2, xmmword [esp + 0x380]
paddq xmm2, xmmword [esp + 0x70]
pshufd xmm1, xmm2, 0x55
movd dword [esp + 0x2c0], xmm2
movdqa xmm2, xmm0
movd dword [esp + 0x200], xmm1
movdqa xmm1, xmm0
movdqa xmm0, xmmword [esp + 0x1a0]
psrlq xmm1, 0x13
movdqa xmm4, xmm0
movdqa xmm5, xmm0
movdqa xmm6, xmm0
psrlq xmm4, 1
psllq xmm5, 0x3f
psllq xmm6, 0x38
shufps xmm4, xmm1, 0xe4
movdqa xmm1, xmm2
psllq xmm1, 0x2d
shufps xmm5, xmm1, 0xe4
movdqa xmm1, xmm2
orps xmm5, xmm4
movdqa xmm4, xmm0
psrlq xmm1, 0x3d
psrlq xmm4, 8
shufps xmm4, xmm1, 0xe4
movdqa xmm1, xmm2
psllq xmm1, 3
shufps xmm6, xmm1, 0xe4
movdqa xmm1, xmm2
paddq xmm2, xmm3
movaps xmm3, xmm7
orps xmm6, xmm4
movdqa xmm4, xmm0
psrlq xmm1, 6
movd dword [esp + 0x290], xmm2
psrlq xmm4, 7
xorps xmm6, xmm5
movdqa xmm5, xmm0
shufps xmm4, xmm1, 0xe4
xorps xmm4, xmm6
movdqa xmm6, xmm7
paddq xmm4, xmmword [esp + 0x2f0]
psllq xmm6, 0x2d
pshufd xmm1, xmm4, 0xff
pshufd xmm0, xmm4, 0xee
movdqa xmmword [esp + 0x140], xmm4
movdqa xmm4, xmm7
movd edx, xmm1
movd ecx, xmm0
movdqa xmmword [esp + 0x2d0], xmm0
psrlq xmm4, 0x13
mov ebx, edx
mov dword [esp + 0x80], ecx
mov dword [esp + 0xc0], edx
shr edx, 6
shld ebx, ecx, 0x1a
mov ecx, esi
movd xmm1, edx
mov edx, eax
movd xmm0, ebx
mov ebx, dword [esp + 0x90]
punpckldq xmm0, xmm1
pshufd xmm1, xmm2, 0x55
movdqa xmm2, xmmword [esp + 0x2d0]
movdqa xmmword [esp + 0x190], xmm0
movd dword [esp + 0x240], xmm1
xor ecx, ebx
and ebx, esi
mov esi, dword [esp + 0x2b0]
mov dword [esp + 0x300], ecx
mov ecx, eax
mov eax, dword [esp + 0x120]
mov dword [esp + 0x90], ebx
mov ebx, dword [esp + 0x50]
shrd dword [esp + 0x160], esi, 6
shr esi, 6
xor ecx, eax
and eax, edx
mov dword [esp + 0x250], ecx
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x120], eax
mov eax, dword [esp + 0xc0]
mov edx, ecx
shld edx, eax, 3
mov dword [esp + 0x2b0], edx
mov edx, eax
shld edx, ecx, 3
add ecx, dword [esp + 0x110]
mov dword [esp + 0x2a0], edx
adc eax, dword [esp + 0x210]
add ecx, 0xa2c898a6
mov dword [esp + 0x80], ecx
adc eax, 0xa637dc5
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x40]
add eax, dword [esp + 0x60]
adc ebx, dword [esp + 0x30]
movd xmm0, eax
mov edx, eax
mov ecx, eax
mov dword [esp + 0x40], eax
movdqa xmmword [esp + 0x2f0], xmm0
movd xmm1, ebx
mov eax, ebx
mov dword [esp + 0x50], ebx
shld edx, ebx, 0x17
shld ebx, ecx, 0x17
movdqa xmmword [esp + 0x230], xmm1
punpcklqdq xmm1, xmm0
and edi, eax
mov eax, dword [esp + 0x310]
shufps xmm3, xmm1, 0x24
xor edi, dword [esp + 0x10]
movaps xmm1, xmm3
psrlq xmm1, 0xe
shufps xmm4, xmm1, 0xe4
movaps xmm1, xmm3
and eax, ecx
psllq xmm1, 0x32
xor eax, dword [esp + 0x20]
movd xmm0, edi
shufps xmm6, xmm1, 0xe4
movaps xmm1, xmm3
psllq xmm3, 0x2e
orps xmm6, xmm4
movdqa xmm4, xmm7
psllq xmm7, 3
psrlq xmm1, 0x12
psrlq xmm4, 0x3d
shufps xmm7, xmm3, 0xe4
movd xmm3, edx
shufps xmm4, xmm1, 0xe4
movd xmm1, ebx
punpckldq xmm3, xmm1
movd xmm1, dword [esp + 0x160]
orps xmm7, xmm4
movd xmm4, esi
xorps xmm7, xmm6
movdqa xmm6, xmm5
punpckldq xmm1, xmm4
movd xmm4, dword [esp + 0x2b0]
punpcklqdq xmm1, xmm3
movd xmm3, eax
punpcklqdq xmm0, xmm3
pxor xmm1, xmm7
movdqa xmm3, xmm2
shufps xmm6, xmm0, 0x24
paddq xmm6, xmmword [esp + 0x150]
paddq xmm6, xmm1
pshufd xmm0, xmm6, 0xee
movd eax, xmm6
paddq xmm0, xmmword [esp + 0xf0]
mov ecx, eax
mov esi, eax
pshufd xmm1, xmm0, 0x55
punpcklqdq xmm3, xmm0
movd ebx, xmm0
movdqa xmm0, xmm2
movd dword [esp + 0x30], xmm1
pshufd xmm1, xmm6, 0x55
psrlq xmm0, 0x13
mov dword [esp + 0x60], ebx
movd edi, xmm1
movdqa xmm1, xmm3
psllq xmm3, 0x17
mov edx, edi
shld ecx, edi, 0xd
shld esi, edi, 3
psrlq xmm1, 0x29
mov dword [esp + 0x150], edi
shld edx, eax, 3
shufps xmm0, xmm1, 0xe4
movdqa xmm1, xmmword [esp + 0x140]
xor edx, ecx
mov ecx, edi
shld ecx, eax, 0xd
xor esi, ecx
mov ecx, edi
shld ecx, eax, 0x1a
paddq xmm1, xmm2
xor ecx, esi
mov esi, edi
movdqa xmmword [esp + 0x140], xmm1
movdqa xmm1, xmm2
shr esi, 6
psllq xmm1, 0x2d
xor esi, edx
add ecx, dword [esp + 0x2c0]
shufps xmm1, xmm3, 0xe4
orps xmm1, xmm0
adc esi, dword [esp + 0x200]
mov dword [esp + 0xf0], ecx
mov ecx, ebx
mov edx, ecx
mov dword [esp + 0x160], esi
mov esi, dword [esp + 0x30]
shld ebx, esi, 0x12
shld edx, esi, 0xe
mov edi, esi
mov dword [esp + 0x30], esi
xor edx, ebx
mov ebx, esi
shld esi, ecx, 0xe
shld ebx, ecx, 0x12
movd xmm0, edx
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x210]
xor esi, ebx
movd xmm3, esi
mov esi, dword [esp + 0x110]
punpckldq xmm3, xmm0
movd xmm0, dword [esp + 0x2a0]
xor ecx, edx
and ecx, edi
xor ecx, edx
mov edx, dword [esp + 0x40]
punpckldq xmm4, xmm0
punpcklqdq xmm4, xmm3
pxor xmm4, xmm1
xor edx, esi
movdqa xmm2, xmm4
and edx, dword [esp + 0x60]
xor edx, esi
mov esi, dword [esp + 0x20]
add esi, eax
mov eax, dword [esp + 0x10]
adc eax, dword [esp + 0x150]
add esi, edx
adc eax, ecx
add esi, 0x72176fba
adc eax, 0x6f067aa
movd xmm1, esi
movd xmm0, eax
punpcklqdq xmm0, xmm1
movdqa xmm1, xmmword [esp + 0x190]
pxor xmm2, xmm1
shufps xmm1, xmm0, 0x24
paddq xmm1, xmm4
shufps xmm2, xmm1, 0xe4
movdqa xmm4, xmm1
paddq xmm2, xmmword [esp + 0xe0]
pshufd xmm0, xmm2, 0xff
movdqa xmm1, xmm2
movdqa xmm3, xmm2
movdqa xmmword [esp + 0x150], xmm2
movd edi, xmm0
pshufd xmm0, xmm2, 0xee
psrlq xmm1, 0x29
psllq xmm3, 0x17
movd edx, xmm0
movdqa xmm0, xmm2
mov dword [esp + 0x200], edi
mov eax, edx
mov ecx, edx
psrlq xmm0, 0x13
mov esi, edx
shld eax, edi, 0x12
shld ecx, edi, 0xe
movsd xmm1, xmm0
movdqa xmm0, xmm2
mov dword [esp + 0x110], esi
xor ecx, eax
mov eax, edi
psllq xmm0, 0x2d
shld eax, edx, 0x12
mov edx, edi
movsd xmm3, xmm0
pshufd xmm0, xmm2, 0x55
shld edx, esi, 0xe
orpd xmm3, xmm1
movd ebx, xmm0
movd xmm0, ecx
mov ecx, dword [esp + 0x50]
xor edx, eax
mov dword [esp + 0x210], ebx
movd xmm1, edx
movd edx, xmm2
mov eax, edx
punpckldq xmm1, xmm0
mov dword [esp + 0xe0], edx
shld eax, ebx, 3
shld ebx, edx, 3
mov edx, dword [esp + 0x40]
movd xmm7, eax
mov eax, dword [esp + 0x30]
movd xmm0, ebx
punpckldq xmm7, xmm0
movss xmm0, dword [esp + 0xc0]
punpcklqdq xmm7, xmm1
movss xmm1, dword [esp + 0x80]
pxor xmm7, xmm3
xor eax, ecx
and eax, edi
xor eax, ecx
mov ecx, dword [esp + 0x60]
movlhps xmm0, xmm1
movdqa xmm1, xmm2
psrlq xmm2, 6
movd xmm3, eax
shufps xmm1, xmm0, 0x24
mov eax, edi
mov edi, dword [esp + 0x30]
xor ecx, edx
and ecx, esi
xor eax, edi
xor ecx, edx
mov edx, dword [esp + 0x60]
movd xmm0, ecx
mov ecx, dword [esp + 0x110]
punpcklqdq xmm3, xmm0
movaps xmm0, xmmword [0x6e6a00]
xor ecx, edx
shufps xmm0, xmm3, 0x24
paddq xmm0, xmm1
movaps xmm1, xmmword [esp + 0xb0]
movsd xmm0, xmm2
pxor xmm2, xmm7
paddq xmm0, xmm7
shufps xmm2, xmm0, 0xe4
movdqa xmmword [esp + 0x80], xmm0
paddq xmm2, xmmword [esp + 0x180]
pshufd xmm0, xmm2, 0xff
movdqa xmmword [esp + 0x50], xmm2
movd ebx, xmm0
pshufd xmm0, xmm2, 0xee
and eax, ebx
movd esi, xmm0
mov dword [esp + 0x40], ebx
xor eax, edi
and ecx, esi
mov dword [esp + 0xc0], esi
movd xmm3, eax
mov eax, dword [esp + 0xf0]
xor ecx, edx
movd xmm0, ecx
mov ecx, ebx
punpcklqdq xmm3, xmm0
shufps xmm4, xmm3, 0x2e
add eax, 0xbef90dae
movaps xmmword [esp + 0x190], xmm4
movdqa xmm4, xmmword [esp + 0x1f0]
mov dword [esp + 0x180], eax
mov eax, dword [esp + 0x160]
movdqa xmm2, xmm4
adc eax, 0x113f9804
shld ecx, esi, 0x12
psrlq xmm2, 1
mov dword [esp + 0x2c0], eax
mov eax, esi
movd xmm0, ecx
shld eax, ebx, 0x12
movd xmm3, eax
mov eax, esi
shld eax, ebx, 0xe
punpcklqdq xmm3, xmm0
movaps xmm0, xmm1
shld ebx, esi, 0xe
shufps xmm0, xmm3, 0x24
movd xmm7, eax
movd xmm3, ebx
mov eax, dword [esp + 0x250]
punpcklqdq xmm7, xmm3
movaps xmm3, xmm0
shufps xmm1, xmm7, 0x2e
paddq xmm3, xmm1
xorps xmm1, xmm0
pshufd xmm0, xmm3, 0x55
movaps xmm5, xmm1
movdqa xmm1, xmm4
movd edi, xmm3
movd edx, xmm0
movdqa xmm0, xmm4
psllq xmm1, 0x3f
psrlq xmm4, 8
and eax, edi
mov ecx, edi
movsd xmm5, xmm3
punpcklqdq xmm0, xmm3
xor eax, dword [esp + 0x120]
mov ebx, edx
shld ecx, edx, 0x19
mov dword [esp + 0xb0], edx
movdqa xmm7, xmm0
shld ebx, edi, 0x19
psrlq xmm7, 0x1c
shufps xmm2, xmm7, 0xe4
movdqa xmm7, xmm0
psllq xmm7, 0x24
shufps xmm1, xmm7, 0xe4
orps xmm1, xmm2
movdqa xmm2, xmm0
psllq xmm0, 0x1e
psrlq xmm2, 0x22
shufps xmm4, xmm2, 0xe4
movdqa xmm2, xmmword [esp + 0x360]
psllq xmm2, 0x38
shufps xmm2, xmm0, 0xe4
movd xmm0, ebx
orps xmm2, xmm4
xorps xmm2, xmm1
movd xmm1, ecx
mov ecx, eax
mov eax, dword [esp + 0x300]
movaps xmm4, xmm2
punpckldq xmm1, xmm0
movd xmm0, dword [esp + 0x100]
movd xmm2, dword [esp + 0x220]
and eax, edx
punpckldq xmm2, xmm0
xor eax, dword [esp + 0x90]
movd xmm0, ecx
punpcklqdq xmm2, xmm1
pxor xmm2, xmm4
movaps xmm4, xmmword [esp + 0xd0]
movd xmm1, eax
punpcklqdq xmm1, xmm0
shufps xmm4, xmm1, 0x24
paddq xmm4, xmm2
movd xmm2, dword [esp + 0x180]
paddq xmm4, xmm6
pshufd xmm0, xmm4, 0xee
movdqa xmmword [esp + 0xd0], xmm4
movd esi, xmm0
pshufd xmm0, xmm4, 0xff
movd ecx, xmm0
mov eax, esi
mov dword [esp + 0x10], esi
mov edx, ecx
shld eax, ecx, 0x1e
mov ebx, ecx
mov dword [esp + 0x20], ecx
shld edx, esi, 4
shld ebx, esi, 0x1e
xor eax, edx
mov edx, esi
shld edx, ecx, 4
xor ebx, edx
mov edx, ecx
shld edx, esi, 0x19
shld esi, ecx, 0x19
mov ecx, dword [esp + 0x170]
xor esi, eax
xor edx, ebx
mov ebx, dword [esp + 0x260]
movd xmm1, esi
mov esi, dword [esp + 0xb0]
movd xmm0, edx
mov edx, dword [esp + 0x40]
punpckldq xmm1, xmm0
movd xmm0, dword [esp + 0x2c0]
mov eax, esi
xor eax, ecx
and ecx, esi
punpckldq xmm2, xmm0
and esi, dword [esp + 0x20]
and eax, dword [esp + 0x20]
punpcklqdq xmm1, xmm2
movss xmm2, dword [esp + 0x1e0]
xor eax, ecx
mov ecx, edi
xor ecx, ebx
and ebx, edi
movd xmm0, eax
mov eax, edx
and edi, dword [esp + 0x10]
and ecx, dword [esp + 0x10]
xor ecx, ebx
movd xmm6, ecx
mov ecx, dword [esp + 0xc0]
punpckldq xmm6, xmm0
movdqa xmm0, xmmword [esp + 0x2f0]
shld eax, ecx, 0x17
shld ecx, edx, 0x17
punpckldq xmm0, xmmword [esp + 0x230]
punpcklqdq xmm6, xmm0
paddq xmm6, xmmword [esp + 0x190]
paddq xmm6, xmm1
movd xmm1, eax
pshufd xmm0, xmm6, 0x55
movd dword [esp + 0x190], xmm0
movd xmm0, ecx
punpcklqdq xmm1, xmm0
movdqa xmm0, xmm4
shufps xmm0, xmm1, 0x2e
movd xmm1, edi
movd edi, xmm6
xorps xmm0, xmm5
movd xmm5, esi
mov dword [esp + 0x220], edi
punpcklqdq xmm5, xmm1
movss xmm1, dword [esp + 0x1d0]
shufps xmm5, xmm3, 0x42
movdqa xmm3, xmm6
pand xmm3, xmm0
paddq xmm0, xmm6
movlhps xmm2, xmm1
shufps xmm2, xmm0, 0xe2
movsd xmm0, xmm3
xorpd xmm3, xmm5
movaps xmmword [esp + 0xb0], xmm2
movdqa xmm2, xmmword [esp + 0x50]
paddq xmm5, xmm0
pshufd xmm0, xmm5, 0xff
movd edx, xmm0
pshufd xmm0, xmm5, 0xee
movd ebx, xmm0
mov dword [esp + 0x180], edx
pshufd xmm0, xmm2, 0x55
movdqa xmm1, xmm2
movdqa xmm4, xmm2
mov eax, ebx
mov ecx, ebx
mov dword [esp + 0x100], ebx
movd dword [esp + 0x1e0], xmm0
movdqa xmm0, xmm5
psrlq xmm1, 0x13
psllq xmm4, 0x2d
shld eax, edx, 0x12
shld ecx, edx, 0xe
psrlq xmm0, 0x29
xor ecx, eax
mov eax, edx
shld edx, ebx, 0xe
shufps xmm1, xmm0, 0xe4
movdqa xmm0, xmm5
psllq xmm5, 0x17
shld eax, ebx, 0x12
shufps xmm4, xmm5, 0xe4
xor edx, eax
movsd xmm0, xmm3
orps xmm4, xmm1
movd xmm1, ecx
mov ecx, dword [esp + 0x190]
movd xmm5, edx
mov edx, edi
punpckldq xmm5, xmm1
mov eax, ecx
shld edx, ecx, 0x1e
mov ebx, ecx
mov esi, ecx
shld eax, edi, 4
shld ebx, edi, 0x1e
xor edx, eax
mov eax, edi
shld eax, ecx, 4
xor ebx, eax
mov eax, ecx
mov ecx, edi
shld eax, edi, 0x19
shld ecx, esi, 0x19
mov esi, dword [esp + 0xc0]
mov edi, dword [esp + 0x1e0]
xor eax, ebx
xor ecx, edx
mov edx, dword [esp + 0x200]
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x120], eax
mov eax, dword [esp + 0xe0]
xor ebx, edx
and ebx, dword [esp + 0x180]
xor ebx, edx
mov edx, dword [esp + 0x110]
xor esi, edx
and esi, dword [esp + 0x100]
xor esi, edx
add eax, dword [esp + 0x60]
mov edx, dword [esp + 0x210]
adc edx, dword [esp + 0x30]
add eax, esi
adc edx, ebx
add eax, 0x131c471b
mov ebx, edi
mov dword [esp + 0xe0], eax
movd eax, xmm2
adc edx, 0x1b710b35
mov esi, eax
shld ebx, eax, 3
mov dword [esp + 0x170], eax
shld esi, edi, 3
movd xmm1, ebx
mov ebx, edi
movd xmm2, esi
mov esi, edi
shr ebx, 6
punpckldq xmm2, xmm1
shld esi, eax, 0x1a
movd xmm1, ebx
punpcklqdq xmm2, xmm5
movd xmm7, esi
pxor xmm2, xmm4
movd xmm4, dword [esp + 0xe0]
punpckldq xmm7, xmm1
movd xmm1, edx
movdqa xmm5, xmm2
pxor xmm5, xmm7
punpcklqdq xmm1, xmm4
movaps xmm4, xmmword [esp + 0x50]
shufps xmm7, xmm1, 0x24
paddq xmm7, xmm2
movss xmm2, dword [esp + 0x320]
shufps xmm5, xmm7, 0xe4
movdqa xmmword [esp + 0xc0], xmm7
movd xmm7, dword [esp + 0x120]
paddq xmm5, xmmword [esp + 0xd0]
pshufd xmm1, xmm5, 0xff
movd dword [esp + 0x90], xmm1
pshufd xmm1, xmm5, 0xee
movd dword [esp + 0x30], xmm1
movd xmm1, ecx
punpcklqdq xmm7, xmm1
movdqa xmm1, xmmword [esp + 0x80]
shufps xmm7, xmm4, 0xe2
paddq xmm3, xmm7
xorps xmm7, xmm0
shufps xmm3, xmm7, 0xe4
pand xmm7, xmm5
punpckhqdq xmm1, xmm5
pxor xmm7, xmm4
paddq xmm1, xmm3
pshufd xmm0, xmm1, 0x55
movd ebx, xmm1
movdqa xmm3, xmm1
movd ecx, xmm0
mov eax, ebx
mov edx, ebx
mov dword [esp + 0x210], ebx
pshufd xmm0, xmm5, 0x55
mov edi, ecx
mov esi, ecx
mov dword [esp + 0x120], ecx
shld eax, ecx, 4
shld edx, ecx, 0x1e
mov ecx, dword [esp + 0x220]
movd dword [esp + 0x40], xmm0
shld edi, ebx, 0x1e
shld esi, ebx, 4
xor edi, eax
mov eax, dword [esp + 0x10]
xor edx, esi
mov esi, ecx
xor esi, eax
and eax, ecx
mov ecx, dword [esp + 0x20]
and esi, ebx
xor eax, esi
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x190]
mov esi, eax
xor esi, ecx
and ecx, eax
mov eax, dword [esp + 0x160]
and esi, dword [esp + 0x120]
mov ebx, eax
xor ecx, esi
mov esi, dword [esp + 0xf0]
mov dword [esp + 0x20], ecx
mov ecx, eax
shld ecx, esi, 0x1a
mov esi, dword [esp + 0x90]
mov dword [esp + 0x60], ecx
mov ecx, eax
mov eax, dword [esp + 0x30]
shr ecx, 6
mov dword [esp + 0x260], ecx
mov ecx, dword [esp + 0x170]
xor eax, dword [esp + 0x100]
mov dword [esp + 0x110], eax
mov eax, esi
xor eax, dword [esp + 0x180]
add ecx, 0x40c72493
movd xmm1, ecx
movd ecx, xmm5
mov dword [esp + 0x1d0], eax
mov eax, dword [esp + 0x1e0]
adc eax, 0x32caab7b
movd xmm0, eax
mov eax, dword [esp + 0x40]
punpckldq xmm1, xmm0
movss xmm0, dword [esp + 0x340]
punpcklqdq xmm1, xmmword [esp + 0x1a0]
movlhps xmm2, xmm0
movaps xmm0, xmmword [esp + 0x70]
shufps xmm4, xmm2, 0x2e
paddq xmm4, xmm1
movdqa xmmword [esp + 0x1e0], xmm4
movdqa xmm4, xmm3
shufps xmm0, xmm3, 0x4e
movdqa xmmword [esp + 0x80], xmm4
movaps xmm1, xmm0
movaps xmm2, xmm0
psrlq xmm1, 1
psrlq xmm2, 0x27
movsd xmm2, xmm1
movaps xmm1, xmm0
psllq xmm0, 0x19
psllq xmm1, 0x3f
movsd xmm0, xmm1
movd xmm1, edi
orpd xmm0, xmm2
movd xmm2, edx
mov edx, eax
shld edx, ecx, 0x1a
punpckldq xmm2, xmm1
mov dword [esp + 0x1f0], edx
mov edx, eax
shr edx, 6
mov dword [esp + 0x170], edx
mov edx, dword [esp + 0xc]
shrd dword [esp + 0x270], edx, 7
shr edx, 7
add ecx, dword [esp + 0x30]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x1c0]
adc eax, esi
mov esi, dword [esp + 0x330]
mov dword [esp + 0x1a0], ecx
mov ecx, edx
mov dword [esp + 0x40], eax
mov eax, edx
shld eax, esi, 0x18
shld ecx, esi, 0x19
shld esi, edx, 0x18
shr edx, 7
movd xmm1, esi
movd xmm3, eax
punpckldq xmm3, xmm1
movd xmm1, edx
punpcklqdq xmm3, xmm2
movss xmm2, dword [esp + 0x20]
pxor xmm3, xmm0
movd xmm0, ecx
punpckldq xmm0, xmm1
movss xmm1, dword [esp + 0x10]
pxor xmm0, xmm3
movlhps xmm2, xmm1
shufps xmm1, xmm2, 0x24
movd xmm2, ebx
paddq xmm1, xmm3
movdqa xmm3, xmmword [esp + 0xb0]
movdqa xmmword [esp + 0x10], xmm2
movsd xmm1, xmm0
paddq xmm3, xmm1
pshufd xmm0, xmm3, 0xff
movdqa xmmword [esp + 0xb0], xmm3
movd edx, xmm0
movdqa xmm0, xmm4
pxor xmm0, xmm6
pand xmm6, xmm4
pshufd xmm4, xmm3, 0xee
mov ecx, edx
mov ebx, edx
mov dword [esp + 0xe0], edx
pand xmm0, xmm4
movdqa xmm1, xmm4
movd esi, xmm4
pxor xmm0, xmm6
movapd xmm6, xmmword [esp + 0x3b0]
psrlq xmm1, 0x1c
mov eax, esi
shld ecx, esi, 0x19
mov dword [esp + 0xd0], esi
shld eax, edx, 0x19
movsd xmm6, xmm0
movd xmm0, dword [esp + 0xf0]
movdqa xmmword [esp + 0x160], xmm0
punpcklqdq xmm2, xmm0
movdqa xmm0, xmm3
movdqa xmm3, xmm4
shufps xmm0, xmm2, 0x2e
psllq xmm3, 0x24
movaps xmm2, xmm0
psrlq xmm2, 0x13
movsd xmm2, xmm1
movaps xmm1, xmm0
psllq xmm1, 0x2d
movsd xmm1, xmm3
movaps xmm3, xmm0
psllq xmm0, 3
orpd xmm1, xmm2
movdqa xmm2, xmm4
psrlq xmm3, 0x3d
psrlq xmm2, 0x22
movsd xmm3, xmm2
movdqa xmm2, xmm4
pand xmm4, xmmword [esp + 0x80]
psllq xmm2, 0x1e
movsd xmm0, xmm2
movd xmm2, dword [esp + 0x60]
orpd xmm0, xmm3
movd xmm3, eax
xorpd xmm0, xmm1
movd xmm1, ecx
punpckldq xmm3, xmm1
movd xmm1, dword [esp + 0x260]
punpckldq xmm2, xmm1
movdqa xmm1, xmm5
punpcklqdq xmm3, xmm2
psrlq xmm1, 0xe
movdqa xmm2, xmm5
pxor xmm3, xmm0
psllq xmm2, 0x32
paddq xmm3, xmm6
movdqa xmm6, xmmword [esp + 0xc0]
pshufd xmm0, xmm3, 0xff
movdqa xmmword [esp + 0xf0], xmm3
movd esi, xmm0
pshufd xmm0, xmm3, 0xee
movd eax, xmm0
mov ecx, esi
mov edi, esi
punpckhqdq xmm6, xmmword [0x6e6a30]
mov edx, eax
shld ecx, eax, 3
shld edi, eax, 0xd
shld edx, esi, 0xd
xor ecx, edx
mov edx, esi
shld edx, eax, 0x1a
shld eax, esi, 3
shr esi, 6
paddq xmm6, xmm3
xor eax, edi
xor esi, ecx
movdqa xmm3, xmm5
mov ecx, dword [esp + 0x210]
mov edi, dword [esp + 0x1d0]
movdqa xmm0, xmm6
xor eax, edx
psllq xmm3, 0x2e
movdqa xmmword [esp + 0xc0], xmm6
psrlq xmm0, 0x1c
add eax, dword [esp + 0x290]
movsd xmm1, xmm0
movdqa xmm0, xmm6
psllq xmm0, 0x24
movsd xmm2, xmm0
movdqa xmm0, xmm6
orpd xmm2, xmm1
movdqa xmm1, xmm5
psrlq xmm0, 0x22
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x120]
adc esi, dword [esp + 0x240]
xor ecx, dword [esp + 0xd0]
psrlq xmm1, 0x12
movsd xmm1, xmm0
movdqa xmm0, xmm6
psllq xmm0, 0x1e
movsd xmm3, xmm0
movdqa xmm0, xmm6
xor eax, ebx
mov dword [esp + 0x50], esi
mov ebx, dword [esp + 0x110]
orpd xmm3, xmm1
movdqa xmm1, xmm5
psrlq xmm0, 0x27
psrlq xmm1, 0x29
xorpd xmm3, xmm2
movdqa xmm2, xmm5
movsd xmm1, xmm0
movdqa xmm0, xmm6
psllq xmm2, 0x17
psllq xmm0, 0x19
movsd xmm2, xmm0
movd xmm0, ecx
orpd xmm2, xmm1
movd xmm1, eax
punpcklqdq xmm1, xmm0
movaps xmm0, xmmword [esp + 0x150]
xorpd xmm2, xmm3
shufps xmm1, xmm0, 0xe2
paddq xmm7, xmm0
andps xmm1, xmm6
paddq xmm7, xmm6
pxor xmm4, xmm1
movsd xmm7, xmm4
paddq xmm7, xmm2
pshufd xmm0, xmm7, 0xff
movd edx, xmm0
pshufd xmm0, xmm7, 0xee
movd esi, xmm0
movdqa xmmword [esp + 0x20], xmm0
add esi, dword [esp + 0x220]
paddq xmm7, xmmword [esp + 0x20]
adc edx, dword [esp + 0x190]
movd xmm0, esi
mov eax, esi
and ebx, esi
mov dword [esp + 0x220], esi
movdqa xmmword [esp + 0x120], xmm7
movd xmm1, edx
mov ecx, edx
shld eax, edx, 0x17
and edi, edx
mov dword [esp + 0x190], edx
xor edx, dword [esp + 0x90]
punpcklqdq xmm1, xmm0
pshufd xmm0, xmm5, 0x44
shld ecx, esi, 0x17
shufps xmm1, xmm5, 0x42
movdqa xmm3, xmm0
movdqa xmm4, xmm0
movaps xmm2, xmm1
psrlq xmm3, 0x13
psllq xmm4, 0x2d
psrlq xmm2, 0xe
movsd xmm3, xmm2
movaps xmm2, xmm1
psllq xmm2, 0x32
movsd xmm4, xmm2
movaps xmm2, xmm1
psllq xmm1, 0x2e
orpd xmm4, xmm3
movdqa xmm3, xmm0
psllq xmm0, 3
psrlq xmm2, 0x12
psrlq xmm3, 0x3d
movsd xmm0, xmm1
movd xmm1, ecx
mov ecx, dword [esp + 0x180]
movsd xmm3, xmm2
movd xmm2, eax
mov eax, dword [esp + 0x100]
orpd xmm0, xmm3
punpckldq xmm2, xmm1
movd xmm1, dword [esp + 0x1f0]
movd xmm3, dword [esp + 0x170]
xorpd xmm0, xmm4
movaps xmm4, xmmword [esp + 0x80]
xor edi, ecx
xor ebx, eax
punpckldq xmm1, xmm3
punpcklqdq xmm2, xmm1
movd xmm1, ebx
mov ebx, esi
shufps xmm4, xmmword [esp + 0x450], 0x24
pxor xmm2, xmm0
movd xmm0, edi
xor ebx, dword [esp + 0x30]
add eax, dword [esp + 0x60]
punpckldq xmm1, xmm0
movdqa xmm0, xmmword [esp + 0x160]
adc ecx, dword [esp + 0x50]
add eax, 0x15c9bebc
punpckldq xmm0, xmmword [esp + 0x10]
mov dword [esp + 0x10], edx
adc ecx, 0x3c9ebe0a
punpcklqdq xmm1, xmm0
movd xmm0, eax
movd xmm5, ecx
mov eax, dword [esp + 0x10]
paddq xmm1, xmmword [esp + 0x1e0]
punpcklqdq xmm5, xmm0
shufps xmm5, xmmword [esp + 0x70], 0xe2
paddq xmm1, xmm2
paddq xmm4, xmm1
movdqa xmm6, xmm4
pshufd xmm0, xmm4, 0x55
punpcklqdq xmm6, xmmword [esp + 0x1b0]
movd edi, xmm0
movdqa xmm0, xmm4
psrlq xmm0, 0xe
mov esi, edi
and eax, edi
mov dword [esp + 0x100], edi
xor eax, dword [esp + 0x90]
movdqa xmm3, xmm6
movdqa xmm2, xmm6
psrlq xmm3, 1
psllq xmm2, 0x3f
movsd xmm3, xmm0
movdqa xmm0, xmm4
psllq xmm0, 0x32
movsd xmm2, xmm0
movdqa xmm0, xmm4
orpd xmm2, xmm3
movdqa xmm3, xmm4
movdqa xmm4, xmm6
psrlq xmm0, 0x12
psllq xmm6, 0x38
psrlq xmm4, 8
movd ecx, xmm3
movsd xmm4, xmm0
pshufd xmm0, xmm3, 0xee
mov edx, ecx
shld esi, ecx, 0x17
and ebx, ecx
mov dword [esp + 0x1e0], ecx
paddq xmm0, xmm3
shld edx, edi, 0x17
xor ebx, dword [esp + 0x30]
mov edi, dword [esp + 0x190]
movdqa xmmword [esp + 0x110], xmm0
movdqa xmm0, xmm3
movd xmm3, dword [esp + 0xc]
psllq xmm0, 0x2e
movsd xmm6, xmm0
movd xmm0, esi
mov esi, dword [esp + 0x220]
orpd xmm6, xmm4
movdqa xmm4, xmm7
xorpd xmm6, xmm2
movd xmm2, edx
mov edx, ecx
punpckldq xmm2, xmm0
movd xmm0, dword [esp + 0x270]
xor edx, esi
punpckldq xmm0, xmm3
movd xmm3, eax
mov eax, dword [esp + 0x100]
punpcklqdq xmm2, xmm0
movd xmm0, ebx
punpckldq xmm0, xmm3
movdqa xmm3, xmmword [esp + 0x150]
pxor xmm2, xmm6
pshufd xmm6, xmm1, 0xee
punpcklqdq xmm0, xmmword [esp + 0x440]
xor eax, edi
paddq xmm0, xmm5
movdqa xmm5, xmmword [esp + 0xc0]
paddq xmm0, xmm2
punpcklqdq xmm3, xmm0
paddq xmm3, xmmword [esp + 0xb0]
pand xmm4, xmm5
pshufd xmm2, xmm3, 0xff
movdqa xmmword [esp + 0x150], xmm3
movd dword [esp + 0x70], xmm2
pshufd xmm2, xmm3, 0xee
movdqa xmm3, xmmword [esp + 0x140]
movd dword [esp + 0x10], xmm2
and eax, dword [esp + 0x70]
and edx, dword [esp + 0x10]
pshufd xmm2, xmm3, 0x55
movd dword [esp + 0x140], xmm3
xor eax, edi
movd dword [esp + 0xb0], xmm2
pshufd xmm2, xmm7, 0x55
xor edx, esi
movd ebx, xmm2
pshufd xmm2, xmm5, 0x55
add edx, dword [esp + 0x1a0]
mov esi, ebx
mov dword [esp + 0x80], ebx
movd ecx, xmm2
movdqa xmmword [esp + 0x1a0], xmm1
adc eax, dword [esp + 0x40]
mov dword [esp + 0x30], edx
mov dword [esp + 0x40], eax
movd eax, xmm7
mov dword [esp + 0x20], eax
mov edx, eax
shld esi, eax, 0x1e
mov edi, dword [esp + 0x20]
shld edx, ebx, 4
xor esi, edx
mov edx, ebx
shld edx, eax, 4
shld eax, ebx, 0x1e
xor eax, edx
mov edx, ebx
shld edi, ebx, 0x19
mov ebx, dword [esp + 0x20]
xor edi, eax
shld edx, ebx, 0x19
xor edx, esi
movd esi, xmm5
mov eax, esi
and esi, dword [esp + 0xd0]
xor eax, dword [esp + 0xd0]
and eax, ebx
mov ebx, dword [esp + 0xe0]
xor esi, eax
mov eax, ecx
xor eax, ebx
and ecx, ebx
and eax, dword [esp + 0x80]
xor ecx, eax
add esi, edi
adc ecx, edx
movd xmm3, esi
movd xmm2, ecx
punpcklqdq xmm2, xmm3
shufps xmm2, xmmword [0x6e6a40], 0xe2
paddq xmm2, xmm1
pshufd xmm3, xmm2, 0x55
movd eax, xmm2
movdqa xmmword [esp + 0x210], xmm2
movd ebx, xmm3
mov edx, eax
movdqa xmm3, xmm7
mov edi, eax
mov dword [esp + 0xe0], eax
mov esi, ebx
shld edx, ebx, 4
pxor xmm3, xmm5
shld edi, ebx, 0x1e
mov dword [esp + 0xc], ebx
shld esi, eax, 0x1e
pand xmm3, xmm2
movdqa xmm2, xmm7
xor esi, edx
mov edx, ebx
pxor xmm4, xmm3
shld edx, eax, 4
pshufd xmm3, xmm4, 0x55
movd ecx, xmm4
xor edi, edx
mov edx, eax
movd dword [esp + 0xd0], xmm3
shld edx, ebx, 0x19
xor edx, edi
mov edi, ebx
mov ebx, dword [esp + 0x70]
shld edi, eax, 0x19
mov eax, dword [esp + 0xd0]
xor edi, esi
add ecx, edx
mov esi, dword [esp + 0x50]
movd xmm4, ecx
mov dword [esp + 0x70], ebx
adc eax, edi
mov edi, dword [esp + 0x60]
movd xmm3, eax
mov ecx, esi
mov edx, esi
punpcklqdq xmm3, xmm4
movdqa xmm4, xmm7
movdqa xmm7, xmm6
psllq xmm6, 0x2d
punpcklqdq xmm4, xmm5
movdqa xmm5, xmm1
psllq xmm1, 3
psrlq xmm7, 0x13
shufps xmm3, xmmword [esp + 0xf0], 0xe2
mov eax, edi
shld ecx, edi, 3
shld edx, edi, 0x1a
psrlq xmm5, 0x3d
shufps xmm6, xmm1, 0xe4
shld eax, esi, 0xd
shufps xmm7, xmm5, 0xe4
xor ecx, eax
mov eax, esi
orps xmm6, xmm7
movdqa xmm7, xmm2
movaps xmm2, xmmword [esp + 0x210]
shld eax, edi, 0xd
shld edi, esi, 3
shr esi, 6
pshufd xmm1, xmm6, 0xee
paddq xmm3, xmm0
xor edi, eax
xor esi, ecx
pxor xmm1, xmm6
pshufd xmm0, xmm3, 0x55
xor edi, edx
punpcklqdq xmm7, xmm1
add edi, dword [esp + 0x140]
adc esi, dword [esp + 0xb0]
mov eax, edi
mov edx, edi
mov ecx, esi
shld eax, esi, 0xd
shld edx, esi, 3
shld ecx, edi, 3
xor ecx, eax
mov eax, esi
shld eax, edi, 0xd
xor edx, eax
mov eax, esi
shld eax, edi, 0x1a
xor eax, edx
mov edx, ebx
mov dword [esp + 0x1d0], eax
mov eax, esi
shr eax, 6
xor eax, ecx
add edi, dword [esp + 0x220]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x170], eax
adc esi, dword [esp + 0x190]
mov eax, ecx
shld edx, ecx, 0xe
mov dword [esp + 0x60], edi
movd edi, xmm0
shld eax, ebx, 0x12
mov dword [esp + 0x90], edi
mov dword [esp + 0x50], esi
mov esi, ecx
shld esi, ebx, 0xe
xor esi, eax
mov eax, ebx
shld eax, ecx, 0x12
xor edx, eax
mov eax, ecx
shld eax, ebx, 0x17
xor eax, edx
mov edx, ebx
shld edx, ecx, 0x17
mov ecx, ebx
xor edx, esi
add eax, dword [esp + 0x30]
adc edx, dword [esp + 0x40]
add eax, 0x9c100d4c
movd xmm1, eax
mov eax, dword [esp + 0x100]
movdqa xmmword [esp + 0x180], xmm1
adc edx, 0x431d67c4
movd xmm5, edx
xor ecx, eax
movdqa xmmword [esp + 0x1b0], xmm5
punpcklqdq xmm5, xmm1
movaps xmm1, xmm2
shufps xmm1, xmm5, 0x24
paddq xmm1, xmm4
pshufd xmm4, xmm1, 0xff
movd edx, xmm4
pshufd xmm4, xmm1, 0xee
and ecx, edx
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x1e0]
movd esi, xmm4
movdqa xmm4, xmmword [esp + 0x110]
xor ecx, eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x40], esi
movd dword [esp + 0xd0], xmm4
pshufd xmm0, xmm4, 0x55
movdqa xmm4, xmmword [esp + 0x150]
xor eax, edx
movd dword [esp + 0x140], xmm0
and eax, esi
movd esi, xmm3
xor eax, edx
mov ebx, esi
mov edx, edi
add eax, dword [esp + 0x60]
mov dword [esp + 0x60], esi
movd dword [esp + 0xc0], xmm4
pshufd xmm0, xmm4, 0x55
movd dword [esp + 0xb0], xmm0
movdqa xmm0, xmmword [esp + 0x1a0]
adc ecx, dword [esp + 0x50]
shld ebx, edi, 4
shld edx, esi, 0x1e
xor edx, ebx
mov ebx, edi
psrlq xmm0, 6
mov dword [esp + 0x220], edx
mov edx, edi
mov edi, esi
movsd xmm0, xmm2
shld edi, ebx, 0x1e
mov ebx, dword [esp + 0x40]
shld edx, esi, 4
mov esi, dword [esp + 0x30]
pxor xmm7, xmm0
xor edi, edx
mov dword [esp + 0x50], edi
movd xmm5, dword [esp + 0x50]
mov edx, ebx
mov edi, ebx
shld edx, esi, 0x12
shld edi, esi, 0xe
xor edi, edx
mov edx, esi
mov esi, dword [esp + 0x30]
shld edx, ebx, 0x12
shld esi, ebx, 0xe
xor esi, edx
mov edx, ebx
mov ebx, dword [esp + 0x30]
shld edx, ebx, 0x17
mov ebx, dword [esp + 0x30]
xor edx, esi
mov esi, dword [esp + 0x40]
shld ebx, esi, 0x17
mov esi, dword [esp + 0x90]
xor ebx, edi
mov edi, dword [esp + 0x60]
shld edi, esi, 0x19
mov dword [esp + 0xf0], edi
mov edi, esi
mov esi, dword [esp + 0x60]
movd xmm6, dword [esp + 0xf0]
shld edi, esi, 0x19
mov esi, dword [esp + 0x20]
add edx, eax
mov dword [esp + 0x110], edi
mov edi, dword [esp + 0x80]
adc ebx, ecx
add edx, 0xcb3e42b6
adc ebx, 0x4cc5d4be
mov dword [esp + 0x100], edx
mov dword [esp + 0x190], ebx
add esi, edx
adc edi, ebx
mov eax, esi
mov ecx, esi
mov dword [esp + 0x20], esi
mov ebx, dword [esp + 0x70]
shld eax, edi, 0x12
shld ecx, edi, 0xe
mov edx, edi
mov dword [esp + 0x80], edi
xor ecx, eax
mov eax, edi
shld edx, esi, 0xe
shld eax, esi, 0x12
xor edx, eax
mov eax, esi
shld eax, edi, 0x17
xor eax, edx
mov edx, edi
shld edx, esi, 0x17
mov esi, dword [esp + 0x30]
xor edx, ecx
mov ecx, dword [esp + 0x40]
xor esi, ebx
xor ecx, dword [esp + 0x10]
and esi, edi
xor esi, ebx
mov ebx, dword [esp + 0xd0]
and ecx, dword [esp + 0x20]
xor ecx, dword [esp + 0x10]
add ebx, ecx
mov ecx, dword [esp + 0x140]
adc ecx, esi
mov esi, ebx
mov ebx, edi
mov edi, dword [esp + 0xe0]
add esi, eax
mov eax, dword [esp + 0x20]
adc ecx, edx
mov edx, dword [esp + 0xc0]
xor ebx, dword [esp + 0x30]
mov dword [esp + 0xd0], esi
mov dword [esp + 0x140], ecx
xor eax, dword [esp + 0x40]
add edx, dword [esp + 0x1d0]
mov dword [esp + 0x150], eax
mov eax, dword [esp + 0xb0]
adc eax, dword [esp + 0x170]
add edx, dword [esp + 0x10]
adc eax, dword [esp + 0x70]
add edi, esi
mov esi, dword [esp + 0xc]
mov dword [esp + 0xc0], edx
adc esi, ecx
mov ecx, edi
mov dword [esp + 0xb0], eax
mov eax, edi
shld eax, esi, 0x12
shld ecx, esi, 0xe
mov edx, esi
and ebx, esi
mov dword [esp + 0xc], esi
xor ecx, eax
mov eax, esi
shld edx, edi, 0xe
xor ebx, dword [esp + 0x30]
shld eax, edi, 0x12
xor edx, eax
mov eax, edi
shld eax, esi, 0x17
xor eax, edx
mov edx, esi
shld edx, edi, 0x17
xor edx, ecx
mov ecx, dword [esp + 0x150]
and ecx, edi
xor ecx, dword [esp + 0x40]
add ecx, dword [esp + 0xc0]
adc ebx, dword [esp + 0xb0]
add ecx, eax
mov eax, esi
mov esi, dword [esp + 0x80]
mov dword [esp + 0x150], ecx
adc ebx, edx
mov edx, dword [esp + 0x60]
mov dword [esp + 0xb0], ebx
add edx, ecx
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x60], edx
adc ecx, ebx
xor eax, esi
and eax, ecx
mov ebx, ecx
mov ecx, dword [esp + 0x20]
movd xmm0, eax
mov eax, edi
xor eax, ecx
and eax, edx
movd xmm4, eax
mov eax, ebx
punpckldq xmm4, xmm0
movd xmm0, dword [esp + 0x220]
shld eax, edx, 0x12
punpckldq xmm5, xmm0
movd xmm0, esi
mov esi, ebx
punpcklqdq xmm5, xmm4
movd xmm4, ecx
mov ecx, ebx
punpckldq xmm4, xmm0
movd xmm0, dword [esp + 0x110]
shld ecx, edx, 0xe
xor ecx, eax
mov eax, edx
mov dword [esp + 0x10], ecx
mov ecx, edx
shld eax, ebx, 0xe
shld ecx, ebx, 0x12
mov ebx, edx
punpckldq xmm6, xmm0
movaps xmm0, xmmword [esp + 0x120]
xor eax, ecx
mov ecx, edx
mov edx, esi
punpcklqdq xmm6, xmm4
movdqa xmm4, xmm3
shld ecx, esi, 0x17
shld edx, ebx, 0x17
pand xmm4, xmm7
paddq xmm7, xmm3
pxor xmm6, xmm5
xor ecx, dword [esp + 0x10]
xor edx, eax
paddq xmm7, xmm1
movd xmm1, esi
andps xmm0, xmm2
pxor xmm4, xmm0
movd xmm0, edx
movsd xmm7, xmm4
movd xmm5, ecx
movd xmm4, edi
paddq xmm7, xmm6
movdqa xmm6, xmmword [esp + 0x180]
punpckldq xmm5, xmm0
movd xmm0, dword [esp + 0xc]
punpckldq xmm6, xmmword [esp + 0x1b0]
punpckldq xmm4, xmm0
punpcklqdq xmm6, xmm5
paddq xmm6, xmm7
pshufd xmm5, xmm6, 0x55
movd ebx, xmm6
movdqa xmm7, xmm6
movd esi, xmm5
mov eax, ebx
mov edx, ebx
movdqa xmm5, xmm3
mov dword [esp + 0x10], ebx
pshufd xmm7, xmm7, 0xff
mov ecx, esi
shld eax, esi, 4
pxor xmm5, xmm2
shld edx, esi, 0x1e
pand xmm2, xmm3
mov dword [esp + 0x50], esi
shld ecx, ebx, 0x1e
pand xmm5, xmm6
xor ecx, eax
mov eax, esi
pxor xmm2, xmm5
shld eax, ebx, 4
movd edi, xmm2
pshufd xmm2, xmm2, 0x55
xor edx, eax
mov eax, ebx
shld eax, esi, 0x19
shld esi, ebx, 0x19
xor eax, edx
xor esi, ecx
movd ecx, xmm2
movdqa xmm2, xmm6
add edi, eax
pxor xmm2, xmm3
pand xmm3, xmm6
pshufd xmm6, xmm6, 0xee
mov eax, edi
adc ecx, esi
add eax, dword [esp + 0x100]
adc ecx, dword [esp + 0x190]
mov edi, eax
mov ebx, eax
mov dword [esp + 0x40], eax
mov esi, ecx
shld edi, ecx, 4
mov edx, ecx
mov dword [esp + 0x70], ecx
shld esi, eax, 0x1e
shld edx, eax, 4
xor esi, edi
mov edi, eax
shld edi, ecx, 0x1e
xor edi, edx
mov edx, eax
shld edx, ecx, 0x19
xor edx, edi
mov edi, ecx
shld edi, eax, 0x19
mov dword [esp + 0x30], edx
mov edx, ecx
movd ecx, xmm2
pshufd xmm2, xmm2, 0x55
xor edi, esi
movd esi, xmm2
and ecx, eax
movd eax, xmm3
pshufd xmm2, xmm3, 0x55
xor eax, ecx
and esi, edx
movd ecx, xmm2
xor ecx, esi
add eax, dword [esp + 0x30]
mov esi, edx
mov edx, dword [esp + 0x50]
adc ecx, edi
mov edi, ebx
mov ebx, dword [esp + 0x70]
xor esi, edx
xor edi, dword [esp + 0x10]
mov dword [esp + 0x30], ebx
and dword [esp + 0x30], edx
mov edx, dword [esp + 0x40]
and edx, dword [esp + 0x10]
add eax, dword [esp + 0xd0]
adc ecx, dword [esp + 0x140]
mov ebx, eax
mov dword [esp + 0xc], edx
and edi, eax
movd xmm5, eax
xor edi, dword [esp + 0xc]
mov edx, ecx
shld ebx, ecx, 4
and esi, ecx
movd xmm3, ecx
shld edx, eax, 0x1e
xor esi, dword [esp + 0x30]
mov dword [esp + 0x30], eax
punpckldq xmm5, xmm3
movdqa xmm3, xmmword [esp + 0x430]
xor edx, ebx
mov ebx, ecx
mov dword [esp + 0x140], edx
mov edx, eax
shld ebx, eax, 4
shld edx, ecx, 0x1e
xor edx, ebx
mov ebx, eax
shld ebx, ecx, 0x19
xor ebx, edx
mov edx, ecx
shld edx, eax, 0x19
xor edx, dword [esp + 0x140]
add edi, ebx
adc esi, edx
add edi, dword [esp + 0x150]
adc esi, dword [esp + 0xb0]
mov ebx, edi
movd xmm2, edi
mov edx, esi
shld ebx, esi, 4
shld edx, edi, 0x1e
xor edx, ebx
mov ebx, esi
mov dword [esp + 0x150], edx
mov edx, edi
shld ebx, edi, 4
shld edx, esi, 0x1e
xor edx, ebx
mov ebx, esi
mov dword [esp + 0x140], edx
mov edx, dword [esp + 0x30]
shld ebx, edi, 0x19
xor ebx, dword [esp + 0x150]
xor edx, dword [esp + 0x40]
mov dword [esp + 0x150], ebx
mov ebx, eax
movd eax, xmm6
movd xmm6, esi
punpckldq xmm2, xmm6
punpcklqdq xmm2, xmm5
mov dword [esp + 0x30], edx
and dword [esp + 0x30], edi
shld edi, esi, 0x19
mov edx, dword [esp + 0x70]
paddq xmm3, xmm2
xor edi, dword [esp + 0x140]
movdqa xmmword [esp + 0x430], xmm3
movdqa xmm2, xmmword [esp + 0x430]
mov dword [esp + 0x140], edi
mov edi, ecx
xor ecx, edx
and edi, edx
mov edx, dword [esp + 0x40]
and ecx, esi
mov esi, dword [esp + 0x10]
xor edi, ecx
movd ecx, xmm7
movd xmm7, dword [esp + 0x60]
and ebx, edx
xor ebx, dword [esp + 0x30]
punpckldq xmm7, xmm1
movdqa xmm1, xmmword [esp + 0x420]
punpcklqdq xmm7, xmm4
add ebx, dword [esp + 0x28c]
paddq xmm1, xmm7
adc edi, dword [esp + 0x288]
add ebx, dword [esp + 0x140]
adc edi, dword [esp + 0x150]
add ebx, eax
mov dword [esp + 0x28c], ebx
adc edi, ecx
add dword [esp + 0x3d4], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0x288], edi
adc dword [esp + 0x3dc], edx
add esi, dword [esp + 0x35c]
mov edx, dword [esp + 0x50]
adc edx, dword [esp + 0x2ec]
add esi, eax
mov eax, dword [esp + 0x39c]
mov dword [esp + 0x10], esi
adc edx, ecx
add eax, dword [esp + 0x20]
mov ecx, edx
mov ecx, dword [esp + 0x13c]
mov dword [esp + 0x2ec], edx
mov dword [esp + 0x39c], eax
mov eax, dword [esp + 0x80]
adc dword [esp + 0x3d8], eax
sub ecx, 0xffffff80
cmp ecx, dword [esp + 0x410]
mov dword [esp + 0x13c], ecx
jne 0x5d6830
jmp 0x5e1ebe
mov edx, dword [esp + 0x2ec]
mov ebx, dword [esp + 0x28c]
mov edi, dword [esp + 0x288]
mov dword [esp + 0x10], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x3d4]
mov esi, dword [esp + 0x3dc]
mov dword [eax + 4], edi
mov dword [eax], ebx
movdqu xmmword [eax + 8], xmm2
mov dword [eax + 0x1c], esi
mov dword [eax + 0x18], ecx
mov edi, dword [esp + 0x10]
mov dword [eax + 0x24], edx
mov esi, dword [esp + 0x39c]
mov edx, dword [esp + 0x3d8]
mov dword [eax + 0x20], edi
movdqu xmmword [eax + 0x28], xmm1
mov dword [eax + 0x38], esi
mov dword [eax + 0x3c], edx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret