// File: /workspace/github_c_makefile_star2_O1/mjosaarinen[P]brutus/crypto_aead/pi64cipher256v1tworounds/ref/encrypt.c
// Function: crypto_aead_encrypt
int crypto_aead_encrypt(
unsigned char *c,unsigned long long *clen,
const unsigned char *m,unsigned long long mlen,
const unsigned char *ad,unsigned long long adlen,
const unsigned char *nsec,
const unsigned char *npub,
const unsigned char *k
)
{
 //...
 //... the code for the cipher implementation goes here,
 //... generating a ciphertext c[0],c[1],...,c[*clen-1]
 //... from a plaintext m[0],m[1],...,m[mlen-1]
 //... and associated data ad[0],ad[1],...,ad[adlen-1]
 //... and secret message number nsec[0],nsec[1],...
 //... and public message number npub[0],npub[1],...
 //... and secret key k[0],k[1],...
 //...

 // some 64-bit temp variables
 u_int64_t  t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13;
 // more 64-bit temp variables
 u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
 // pointers to 64-bit variables
 u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
 // counter ctr is a 64-bit variable in all variants of PiCipher
 u_int64_t  ctr = 0x0000000000000000ull;
 // an array for storing some temporal values for the Tag computation
 u_int64_t  tempTag[CRYPTO_ABYTES/W] = {0};
 // an array for the Common Internal State
 u_int64_t  CIS[IS_SIZE] = {0};
 // pointers that look at the used data arrays as arrays of bytes
 u_int8_t   *InternalState8, *CommonInternalState8, *tempTag8;
 // variables for dealing with various lengths of the plaintext and associated data
 int        LastMessageChunkLength, LastADChunkLength;
 // different iterator variables
 unsigned long long i, j, jj, ii, b, i1, j1, a;

 c64    = (u_int64_t *) c;
 m64    = (u_int64_t *) m;
 ad64   = (u_int64_t *) ad;
 nsec64 = (u_int64_t *) nsec;
 npub64 = (u_int64_t *) npub;
 k64    = (u_int64_t *) k;
 InternalState8       = (u_int8_t *) IS;
 CommonInternalState8 = (u_int8_t *) CIS;
 tempTag8             = (u_int8_t *) tempTag;

 // phase 1: Initialization
 for (i = 0; i < IS_SIZE; i++ ) {
	 IS[i] = 0;
 }
 // injection of the key
 for ( i = 0; i < CRYPTO_KEYBYTES; i++ ) {
	 InternalState8[i] = k[i];
 }
 // injection of the nonce (public message number - PMN)
 for ( j = 0; j < CRYPTO_NPUBBYTES; j++ ) {
	 InternalState8[i++] = npub[j];
 }
 // appending a single 1 to the concatenated value of the key and PMN
 InternalState8[i] = 0x01;

 // applying the permutation function pi
 pi();

 // initialization of the Common Internal State (CIS), common for all parallel invocations of pi() with different ctrs
 for ( i = 0; i < IS_SIZE; i++ ) {
	CIS[i] = IS[i];
 }

 // initialization of the ctr obtained from the first 64 bits of the capacity of CIS
 ctr = CIS[4];

 // phase 2: Processing the associated data
 b = 0;
 a = adlen/RATE;
 for ( j = 0; j < a; j ++ ) {
	 // IS for the triplex component is initialized by the CIS for every AD block
	for ( i = 0; i < IS_SIZE; i++ ) {
		IS[i] = CIS[i];
	}
	ctr ++;
	// Inject ctr + j in IS
	IS[0] = IS[0] ^ ctr;
	pi();
	// process the AD block
	// Inject the AD block
	for ( i = 0; i < N; i += 2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
			IS[i*WORDS_CHUNK+i1] = IS[i*WORDS_CHUNK+i1] ^ ad64[b];
			b++;
		}
	}
	pi();
	// Collect the tag for this block
	// Sum of the tags componentwise, where the length of one component is W
	jj = 0;
	for ( i = 0; i < N; i+=2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
			tempTag[jj] = tempTag[jj] + IS[i*WORDS_CHUNK+i1];
			jj++;
		}
	}
 }
 // if the last AD block is not the full block, we process it byte by byte
 LastADChunkLength = adlen % RATE;
 if ( LastADChunkLength ) {
	 b = b * W;
	 i1 = 0;
	 for ( i = 0; i < IS_SIZE; i++ ) {
		IS[i] = CIS[i];
	 }
	 ctr++;
	 IS[0] = IS[0] ^ ctr;
	 pi();
	 for ( i = 0; i < LastADChunkLength; i++ ) {
		 InternalState8[i1] = InternalState8[i1++] ^ ad[b+i];
		 if( i1 % (WORDS_CHUNK*W) == 0 ) i1 += WORDS_CHUNK*W;
	 }
	 // padding with 10*
	 InternalState8[LastADChunkLength] = InternalState8[LastADChunkLength] ^ 0x01;
	 pi();
	 //updating the tag
	 jj = 0;
	 for ( i = 0; i < N; i+=2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
			tempTag[jj] = tempTag[jj] + IS[i*WORDS_CHUNK+i1];
			jj++;
		}
	 }
 }

 // updating the Common Internal State by injection of the tag (tempTag) obtained from the associated data
 jj = 0;
 for ( i = 0; i < N; i+=2 ) {
	for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
		IS[i*WORDS_CHUNK+i1] = CIS[i*WORDS_CHUNK+i1] ^ tempTag[jj];
		IS[(i+1)*WORDS_CHUNK+i1] = CIS[(i+1)*WORDS_CHUNK+i1];
		jj++;
	}
 }
 pi();
 for ( i = 0; i < IS_SIZE; i++ ) {
	CIS[i] = IS[i];
 }

 // phase 3: Processing the secret messge number
 if ( CRYPTO_NSECBYTES > 0 ) {
	for ( i = 0; i < IS_SIZE; i++ ) {
		IS[i] = CIS[i];
	}
	ctr++;
	IS[0] = IS[0] ^ ctr;
	pi();
	// encrypt the SMN
	// Inject the SMN
	b = 0;
	for ( i = 0; i < N; i+=2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
			c64[b] = IS[i*WORDS_CHUNK+i1] = IS[i*WORDS_CHUNK+i1] ^ nsec64[b];
			b++;
		}
	}
	pi();

	// updating the Common Internal State from the encrypted SMN
	for ( i = 0; i < IS_SIZE; i++ ) {
		CIS[i] = IS[i];
	}
	// Collect the tag from this encryption and update the tempTag
	jj = 0;
	for ( i = 0; i < N; i+=2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
			tempTag[jj] = tempTag[jj] + IS[i*WORDS_CHUNK+i1];
			jj++;
		}
	}
 }

 //phase 4: Processing the message
 b = 0;
 for ( j = 0; j < mlen/RATE ; j ++ ) {
	for ( i = 0; i < IS_SIZE; i++ ) {
		IS[i] = CIS[i];
	}
	ctr++;
	IS[0] = IS[0] ^ ctr;
	pi();
	// encrypt the message m
	// Inject a block of m
	for ( i = 0; i < N; i+=2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
			c64[bSMN+b] = IS[i*WORDS_CHUNK+i1] = IS[i*WORDS_CHUNK+i1] ^ m64[b];
			b++;
		}
	}
	pi();
	// Collect the tag from this encryption and update the tempTag
	jj = 0;
	for ( i = 0; i < N; i += 2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
			tempTag[jj] = tempTag[jj] + IS[i*WORDS_CHUNK+i1];
			jj++;
		}
	}
 }
 // if the last message block is not the full block, we process it byte by byte
 LastMessageChunkLength = mlen % RATE;
 if ( LastMessageChunkLength ) {
	 b = b * W;
	 i1 = 0;
	 for ( i = 0; i < IS_SIZE; i++ ) {
		IS[i] = CIS[i];
	 }
	 ctr++;
	 IS[0] = IS[0] ^ ctr;
	 pi();
	 for ( i = 0; i < LastMessageChunkLength; i++ ) {
		 c[CRYPTO_NSECBYTES+b+i] = InternalState8[i1] = InternalState8[i1++] ^ m[b+i];
		 if( i1 % (WORDS_CHUNK*W) == 0 ) i1 += WORDS_CHUNK*W;
	 }
	 // padding with 10*
	 InternalState8[LastMessageChunkLength] = InternalState8[LastMessageChunkLength] ^ 0x01;
	 pi();
	 // updating the tag
	 jj = 0;
	 for ( i = 0; i < N; i+=2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
			tempTag[jj] = tempTag[jj] + IS[i*WORDS_CHUNK+i1];
			jj++;
		}
	 }
 }

 // concatenation of the tag T to the ciphertext c
 for ( jj = 0; jj < CRYPTO_ABYTES; jj++ ) {
	c[CRYPTO_NSECBYTES+mlen+jj] = tempTag8[jj];
 }

 //updating the lenght of the ciphertext
 *clen = mlen + CRYPTO_ABYTES + CRYPTO_NSECBYTES;

  return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x20e8, %rsp           # imm = 0x20E8
movq %r9, 0x28(%rsp)
movq %r8, 0x30(%rsp)
movq %rcx, 0x38(%rsp)
movq %rdx, 0x48(%rsp)
movq %rsi, 0xd8(%rsp)
movq %rdi, 0x20(%rsp)
movq 0x2130(%rsp), %r15
movq 0x2128(%rsp), %r14
leaq 0xe0(%rsp), %rdi
xorl %r12d, %r12d
movl $0x2000, %edx           # imm = 0x2000
xorl %esi, %esi
callq 0x1030
vxorps %xmm0, %xmm0, %xmm0
vmovups %ymm0, 0xb0(%rsp)
vmovups %ymm0, 0x90(%rsp)
vmovups %ymm0, 0x70(%rsp)
vmovups %ymm0, 0x50(%rsp)
movq 0xce1a(%rip), %rbx      # 0xdff8
vmovups %ymm0, (%rbx)
vmovups %ymm0, 0x20(%rbx)
vmovups %ymm0, 0x40(%rbx)
vmovups %ymm0, 0x60(%rbx)
movb (%r15,%r12), %al
movb %al, (%rbx,%r12)
incq %r12
cmpq $0x20, %r12
jne 0x11f1
xorl %eax, %eax
movb (%r14,%rax), %cl
movb %cl, 0x20(%rbx,%rax)
incq %rax
cmpq $0x10, %rax
jne 0x1204
movabsq $-0x2e333536393a3c48, %r11 # imm = 0xD1CCCAC9C6C5C3B8
movabsq $0x3a393635332e2d2b, %rbp # imm = 0x3A393635332E2D2B
movb $0x1, 0x30(%rbx)
movq (%rbx), %rax
movq 0x18(%rbx), %rcx
vmovdqu 0x8(%rbx), %xmm0
vmovq %rcx, %xmm1
vmovq %rax, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
vpinsrq $0x1, %rax, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq 0xad9f(%rip), %xmm2, %xmm2 # 0xc000
vprolvq 0xada5(%rip), %xmm2, %xmm2 # 0xc010
vpinsrq $0x0, %rcx, %xmm3, %xmm3
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpaddq %xmm3, %xmm0, %xmm0
vpaddq 0xad9f(%rip), %xmm0, %xmm0 # 0xc020
vprolvq 0xada5(%rip), %xmm0, %xmm1 # 0xc030
vpxor %xmm1, %xmm2, %xmm0
vpermq $0x14, %ymm0, %ymm3     # ymm3 = ymm0[0,1,1,0]
vpmovsxbq 0xaee2(%rip), %ymm0 # 0xc180
vpermt2q %ymm1, %ymm0, %ymm2
vpxor %ymm2, %ymm3, %ymm1
vpaddq 0xae30(%rip), %ymm1, %ymm1 # 0xc0e0
vmovdqu %ymm1, (%rbx)
xorl %r14d, %r14d
movq 0xcd32(%rip), %rax      # 0xdff0
movq (%rbx,%r14), %rcx
movq 0x8(%rbx,%r14), %rdx
movq 0x10(%rbx,%r14), %rsi
movq 0x18(%rbx,%r14), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r12
movabsq $-0xf171b1d1e272b2e, %r9 # imm = 0xF0E8E4E2E1D8D4D2
addq %r9, %rsi
addq %r8, %rsi
rorxq $0x39, %rsi, %r13
addq %r11, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %r15
movabsq $-0x4b4d4e535556595b, %rsi # imm = 0xB4B2B1ACAAA9A6A5
addq %rsi, %rcx
addq %r12, %rcx
rorxq $0x21, %rcx, %rdi
movabsq $-0x5c636566696a6c72, %rcx # imm = 0xA39C9A999695938E
addq %rcx, %rdx
addq %r12, %rdx
rorxq $0xb, %rdx, %rcx
movq %r13, %rsi
xorq %r15, %rsi
movq %rdi, %rdx
xorq %rcx, %rdx
xorq %rsi, %rcx
xorq %rdi, %rsi
xorq %rdx, %r15
xorq %r13, %rdx
movq 0x20(%rbx,%r14), %rdi
movq 0x28(%rbx,%r14), %r8
movq 0x30(%rbx,%r14), %r12
movq 0x38(%rbx,%r14), %r13
leaq (%r12,%r13), %r9
leaq (%r8,%rdi), %r10
movabsq $-0x727478878b8d8e94, %r11 # imm = 0x8D8B87787472716C
addq %r11, %rdi
addq %r9, %rdi
rorxq $0x35, %rdi, %r11
movabsq $0x6a696665635c5a59, %rdi # imm = 0x6A696665635C5A59
addq %rdi, %r8
addq %r9, %r8
rorxq $0x29, %r8, %rdi
movabsq $0x5655534e4d4b473c, %r8 # imm = 0x5655534E4D4B473C
addq %r8, %r12
addq %r10, %r12
rorxq $0x1b, %r12, %r8
addq %rbp, %r13
addq %r10, %r13
rorxq $0x5, %r13, %r9
movq %r8, %r10
xorq %r9, %r10
movq %r11, %r12
xorq %rdi, %r12
xorq %r10, %rdi
xorq %r11, %r10
movabsq $-0x2e333536393a3c48, %r11 # imm = 0xD1CCCAC9C6C5C3B8
xorq %r12, %r9
xorq %r8, %r12
movq %rcx, (%rax,%r14)
movq %rsi, 0x8(%rax,%r14)
addq %rsi, %r10
movq %r10, 0x20(%rbx,%r14)
movq %r15, 0x10(%rax,%r14)
addq %r15, %r9
movq %r9, 0x28(%rbx,%r14)
movq %rdx, 0x18(%rax,%r14)
addq %rdx, %r12
movq %r12, 0x30(%rbx,%r14)
addq %rcx, %rdi
movq %rdi, 0x38(%rbx,%r14)
addq $0x20, %r14
cmpq $0x60, %r14
jne 0x12be
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm1
vmovq %r8, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vmovq %r9, %xmm2
vmovq %rsi, %xmm3
vpunpcklqdq %xmm2, %xmm3, %xmm2 # xmm2 = xmm3[0],xmm2[0]
vpaddq %xmm2, %xmm1, %xmm3
vpaddq 0xabf4(%rip), %xmm3, %xmm3 # 0xc040
vprolvq 0xabfa(%rip), %xmm3, %xmm3 # 0xc050
vpinsrq $0x1, %rdx, %xmm1, %xmm1
vpinsrq $0x0, %rdi, %xmm2, %xmm2
vpaddq %xmm2, %xmm1, %xmm1
vpaddq 0xabf2(%rip), %xmm1, %xmm1 # 0xc060
vprolvq 0xabf8(%rip), %xmm1, %xmm1 # 0xc070
vpxor %xmm1, %xmm3, %xmm2
vpermq $0x14, %ymm2, %ymm2     # ymm2 = ymm2[0,1,1,0]
vpermt2q %ymm1, %ymm0, %ymm3
vpxor %ymm3, %ymm2, %ymm1
vpermq $0x93, %ymm1, %ymm2     # ymm2 = ymm1[3,0,1,2]
vmovdqu %ymm2, 0x60(%rax)
vpaddq 0xac61(%rip), %ymm1, %ymm1 # 0xc100
vmovdqu %ymm1, 0x60(%rbx)
movl $0x78, %ecx
vmovdqa 0xab4f(%rip), %xmm1     # 0xc000
vpmovsxbq 0xacd6(%rip), %xmm2 # 0xc190
vmovdqa 0xab5e(%rip), %xmm3     # 0xc020
vpmovsxbq 0xacc7(%rip), %xmm4 # 0xc192
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm5
vmovq %r10, %xmm6
vpunpcklqdq %xmm5, %xmm6, %xmm5 # xmm5 = xmm6[0],xmm5[0]
vmovq %r9, %xmm6
vmovq %rdi, %xmm7
vpunpcklqdq %xmm6, %xmm7, %xmm6 # xmm6 = xmm7[0],xmm6[0]
vpaddq %xmm6, %xmm5, %xmm7
vpaddq %xmm1, %xmm7, %xmm7
vprolvq %xmm2, %xmm7, %xmm7
vpinsrq $0x1, %rsi, %xmm5, %xmm5
vpinsrq $0x0, %r8, %xmm6, %xmm6
vpaddq %xmm6, %xmm5, %xmm5
vpaddq %xmm3, %xmm5, %xmm5
vprolvq %xmm4, %xmm5, %xmm5
vpxor %xmm5, %xmm7, %xmm6
vpermq $0x14, %ymm6, %ymm8     # ymm8 = ymm6[0,1,1,0]
vpblendd $0xc, %xmm5, %xmm7, %xmm9 # xmm9 = xmm7[0,1],xmm5[2,3]
vpalignr $0x8, %xmm7, %xmm5, %xmm5 # xmm5 = xmm7[8,9,10,11,12,13,14,15],xmm5[0,1,2,3,4,5,6,7]
vpxor %xmm5, %xmm6, %xmm6
vextracti128 $0x1, %ymm8, %xmm7
vpxor %xmm7, %xmm9, %xmm7
vpalignr $0x8, %xmm7, %xmm6, %xmm10 # xmm10 = xmm7[8,9,10,11,12,13,14,15],xmm6[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm9, %ymm5, %ymm5
vpalignr $0x8, %xmm6, %xmm7, %xmm6 # xmm6 = xmm6[8,9,10,11,12,13,14,15],xmm7[0,1,2,3,4,5,6,7]
vmovdqa %xmm6, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm6 # ymm6 = mem[1,2,3,0]
vpxor %ymm5, %ymm8, %ymm5
vpaddq %ymm5, %ymm6, %ymm5
vmovdqu %ymm5, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x14cb
movq (%rbx), %rcx
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rsi
movq 0x18(%rbx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm5
vmovq %r9, %xmm6
vpunpcklqdq %xmm5, %xmm6, %xmm5 # xmm5 = xmm6[0],xmm5[0]
vmovq %r8, %xmm6
vmovq %rsi, %xmm7
vpunpcklqdq %xmm6, %xmm7, %xmm6 # xmm6 = xmm7[0],xmm6[0]
vpaddq %xmm6, %xmm5, %xmm7
vpaddq 0xaa31(%rip), %xmm7, %xmm7 # 0xc000
vprolvq 0xaa37(%rip), %xmm7, %xmm7 # 0xc010
vpinsrq $0x1, %rdx, %xmm5, %xmm5
vpinsrq $0x0, %rdi, %xmm6, %xmm6
vpaddq %xmm6, %xmm5, %xmm5
vpaddq 0xaa2f(%rip), %xmm5, %xmm5 # 0xc020
vprolvq 0xaa35(%rip), %xmm5, %xmm5 # 0xc030
vpxor %xmm5, %xmm7, %xmm6
vpermq $0x14, %ymm6, %ymm6     # ymm6 = ymm6[0,1,1,0]
vpermt2q %ymm5, %ymm0, %ymm7
vpxor %ymm7, %ymm6, %ymm5
vpermq $0xe9, %ymm5, %ymm6     # ymm6 = ymm5[1,2,2,3]
vpermq $0xe3, %ymm5, %ymm7     # ymm7 = ymm5[3,0,2,3]
vmovdqa %xmm7, (%rax)
vmovdqa %xmm6, 0x10(%rax)
vpaddq 0xaaf4(%rip), %ymm5, %ymm5 # 0xc120
vmovdqu %ymm5, (%rbx)
movl $0x20, %ecx
vmovdqa 0xaa03(%rip), %xmm5     # 0xc040
vpmovsxbq 0xab4e(%rip), %xmm6 # 0xc194
vmovdqa 0xaa12(%rip), %xmm7     # 0xc060
vpmovsxbq 0xab3f(%rip), %xmm8 # 0xc196
movabsq $-0xf171b1d1e272b2e, %r14 # imm = 0xF0E8E4E2E1D8D4D2
movq -0x20(%rbx,%rcx), %rdx
movq -0x18(%rbx,%rcx), %rsi
movq -0x10(%rbx,%rcx), %rdi
movq -0x8(%rbx,%rcx), %r8
leaq (%rsi,%rdx), %r9
leaq (%r8,%rdi), %r10
vmovq %rdx, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r10, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm5, %xmm11, %xmm11
vprolvq %xmm6, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm7, %xmm9, %xmm9
vprolvq %xmm8, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, -0x20(%rax,%rcx)
vpermq $0x39, (%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, (%rbx,%rcx)
addq $0x20, %rcx
cmpq $0x80, %rcx
jne 0x1661
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0xa8f4(%rip), %xmm11, %xmm11 # 0xc040
vprolvq 0xa8fa(%rip), %xmm11, %xmm11 # 0xc050
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0xa8f1(%rip), %xmm9, %xmm9 # 0xc060
vprolvq 0xa8f7(%rip), %xmm9, %xmm9 # 0xc070
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%rax)
vpaddq 0xa99e(%rip), %ymm9, %ymm9 # 0xc140
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm9
vmovq %r10, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm12   # ymm12 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm13 # xmm13 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti128 $0x1, %ymm12, %xmm11
vpxor %xmm13, %xmm11, %xmm11
vpalignr $0x8, %xmm11, %xmm10, %xmm14 # xmm14 = xmm11[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vmovdqa %xmm14, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm13, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm12, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x17ac
vmovdqu (%rbx), %ymm9
vmovdqu 0x20(%rbx), %ymm10
vmovdqu 0x40(%rbx), %ymm11
vmovdqu 0x60(%rbx), %ymm12
vmovdqu %ymm10, 0x70(%rsp)
vmovdqu %ymm12, 0xb0(%rsp)
vmovdqu %ymm11, 0x90(%rsp)
vmovdqu %ymm9, 0x50(%rsp)
movq 0x70(%rsp), %rcx
movq %rcx, 0x8(%rsp)
movq 0x28(%rsp), %rcx
cmpq $0x40, %rcx
jae 0x18c8
xorl %r13d, %r13d
jmp 0x2607
shrq $0x6, %rcx
movq %rcx, 0x40(%rsp)
vmovdqa64 0xa7a5(%rip), %xmm22 # 0xc080
vpmovsxbq 0xa8b3(%rip), %xmm23 # 0xc198
vmovdqa64 0xa7b1(%rip), %xmm24 # 0xc0a0
vpmovsxbq 0xa8a1(%rip), %xmm25 # 0xc19a
vpmovsxbq 0xa881(%rip), %ymm26 # 0xc184
vmovdqa 0xa7d5(%rip), %ymm14    # 0xc0e0
vmovdqa 0xa7ed(%rip), %ymm15    # 0xc100
movq $0x0, 0x10(%rsp)
vmovdqa64 0xa7fa(%rip), %ymm16 # 0xc120
vmovdqa64 0xa810(%rip), %ymm17 # 0xc140
xorl %ecx, %ecx
movq %rcx, 0x18(%rsp)
vmovups 0x50(%rsp), %ymm18
vmovups 0x70(%rsp), %ymm19
vmovups 0x90(%rsp), %ymm20
vmovups 0xb0(%rsp), %ymm21
vmovups %ymm18, (%rbx)
vmovups %ymm21, 0x60(%rbx)
vmovups %ymm20, 0x40(%rbx)
vmovups %ymm19, 0x20(%rbx)
movq 0x8(%rsp), %rsi
incq %rsi
movq 0x18(%rbx), %rcx
movq (%rbx), %rdx
movq %rsi, 0x8(%rsp)
xorq %rsi, %rdx
movq %rdx, (%rbx)
vmovdqu64 0x8(%rbx), %xmm18
vmovq %rdx, %xmm19
vpinsrq $0x1, %rcx, %xmm19, %xmm20
vpaddq %xmm20, %xmm18, %xmm20
vpunpcklqdq %xmm20, %xmm19, %xmm19 # xmm19 = xmm19[0],xmm20[0]
vpunpckhqdq %xmm18, %xmm20, %xmm21 # xmm21 = xmm20[1],xmm18[1]
vpaddq %xmm21, %xmm19, %xmm19
vpaddq %xmm22, %xmm19, %xmm19
vprolvq %xmm23, %xmm19, %xmm19
vpinsrq $0x1, %rcx, %xmm21, %xmm21
vpunpcklqdq %xmm20, %xmm18, %xmm18 # xmm18 = xmm18[0],xmm20[0]
vpaddq %xmm21, %xmm18, %xmm18
vpaddq %xmm24, %xmm18, %xmm18
vprolvq %xmm25, %xmm18, %xmm18
vpxorq %xmm18, %xmm19, %xmm20
vpermt2q %ymm18, %ymm26, %ymm19
vpermq $0x41, %ymm20, %ymm18   # ymm18 = ymm20[1,0,0,1]
vpxorq %ymm19, %ymm18, %ymm18
vpaddq %ymm14, %ymm18, %ymm18
vmovdqu64 %ymm18, (%rbx)
xorl %r12d, %r12d
movq (%rbx,%r12), %rcx
movq 0x8(%rbx,%r12), %rdx
movq 0x10(%rbx,%r12), %rsi
movq 0x18(%rbx,%r12), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
addq %r14, %rsi
addq %r8, %rsi
rorxq $0x39, %rsi, %r10
addq %r11, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %r13
movabsq $-0x4b4d4e535556595b, %rsi # imm = 0xB4B2B1ACAAA9A6A5
addq %rsi, %rcx
addq %r9, %rcx
rorxq $0x21, %rcx, %rdi
movabsq $-0x5c636566696a6c72, %rcx # imm = 0xA39C9A999695938E
addq %rcx, %rdx
addq %r9, %rdx
rorxq $0xb, %rdx, %rcx
movq %r10, %rsi
xorq %r13, %rsi
movq %rdi, %rdx
xorq %rcx, %rdx
xorq %rsi, %rcx
xorq %rdi, %rsi
xorq %rdx, %r13
xorq %r10, %rdx
movq 0x20(%rbx,%r12), %rdi
movq 0x28(%rbx,%r12), %r8
movq 0x30(%rbx,%r12), %r9
movq 0x38(%rbx,%r12), %r10
leaq (%r10,%r9), %r11
leaq (%r8,%rdi), %r15
movabsq $-0x727478878b8d8e94, %rbp # imm = 0x8D8B87787472716C
addq %rbp, %rdi
addq %r11, %rdi
rorxq $0x35, %rdi, %rbp
movabsq $0x6a696665635c5a59, %rdi # imm = 0x6A696665635C5A59
addq %rdi, %r8
addq %r11, %r8
rorxq $0x29, %r8, %rdi
movabsq $0x5655534e4d4b473c, %r8 # imm = 0x5655534E4D4B473C
addq %r8, %r9
addq %r15, %r9
rorxq $0x1b, %r9, %r8
movabsq $0x3a393635332e2d2b, %r9 # imm = 0x3A393635332E2D2B
addq %r9, %r10
addq %r15, %r10
rorxq $0x5, %r10, %r9
movq %r8, %r10
xorq %r9, %r10
movq %rbp, %r11
xorq %rdi, %r11
xorq %r10, %rdi
xorq %rbp, %r10
xorq %r11, %r9
xorq %r8, %r11
movq %rcx, (%rax,%r12)
movq %rsi, 0x8(%rax,%r12)
addq %rsi, %r10
movq %r10, 0x20(%rbx,%r12)
movq %r13, 0x10(%rax,%r12)
addq %r13, %r9
movq %r9, 0x28(%rbx,%r12)
movq %rdx, 0x18(%rax,%r12)
addq %rdx, %r11
movq %r11, 0x30(%rbx,%r12)
movabsq $-0x2e333536393a3c48, %r11 # imm = 0xD1CCCAC9C6C5C3B8
addq %rcx, %rdi
movq %rdi, 0x38(%rbx,%r12)
addq $0x20, %r12
cmpq $0x60, %r12
jne 0x1a1a
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm18
vmovq %r8, %xmm19
vpunpcklqdq %xmm18, %xmm19, %xmm18 # xmm18 = xmm19[0],xmm18[0]
vmovq %r9, %xmm19
vmovq %rsi, %xmm20
vpunpcklqdq %xmm19, %xmm20, %xmm19 # xmm19 = xmm20[0],xmm19[0]
vpaddq %xmm19, %xmm18, %xmm20
vpaddq %xmm5, %xmm20, %xmm20
vprolvq %xmm6, %xmm20, %xmm20
vpinsrq $0x1, %rdx, %xmm18, %xmm18
vpinsrq $0x0, %rdi, %xmm19, %xmm19
vpaddq %xmm19, %xmm18, %xmm18
vpaddq %xmm7, %xmm18, %xmm18
vprolvq %xmm8, %xmm18, %xmm18
vpxorq %xmm18, %xmm20, %xmm19
vpermq $0x14, %ymm19, %ymm19   # ymm19 = ymm19[0,1,1,0]
vpermt2q %ymm18, %ymm0, %ymm20
vpxorq %ymm20, %ymm19, %ymm18
vpermq $0x93, %ymm18, %ymm19   # ymm19 = ymm18[3,0,1,2]
vmovdqu64 %ymm19, 0x60(%rax)
vpaddq %ymm15, %ymm18, %ymm18
vmovdqu64 %ymm18, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm18
vmovq %r10, %xmm19
vpunpcklqdq %xmm18, %xmm19, %xmm18 # xmm18 = xmm19[0],xmm18[0]
vmovq %r9, %xmm19
vmovq %rdi, %xmm20
vpunpcklqdq %xmm19, %xmm20, %xmm19 # xmm19 = xmm20[0],xmm19[0]
vpaddq %xmm19, %xmm18, %xmm20
vpaddq %xmm1, %xmm20, %xmm20
vprolvq %xmm2, %xmm20, %xmm9
vpinsrq $0x1, %rsi, %xmm18, %xmm18
vpinsrq $0x0, %r8, %xmm19, %xmm19
vpaddq %xmm19, %xmm18, %xmm18
vpaddq %xmm3, %xmm18, %xmm18
vprolvq %xmm4, %xmm18, %xmm10
vpxorq %xmm10, %xmm9, %xmm18
vpermq $0x14, %ymm18, %ymm19   # ymm19 = ymm18[0,1,1,0]
vpblendd $0xc, %xmm10, %xmm9, %xmm11 # xmm11 = xmm9[0,1],xmm10[2,3]
vpalignr $0x8, %xmm9, %xmm10, %xmm9 # xmm9 = xmm9[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vpxorq %xmm9, %xmm18, %xmm10
vextracti32x4 $0x1, %ymm19, %xmm18
vpxorq %xmm11, %xmm18, %xmm18
valignq $0x1, %xmm18, %xmm10, %xmm20 # xmm20 = xmm18[1],xmm10[0]
vmovdqa64 %xmm20, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm11, %ymm9, %ymm9
valignq $0x1, %xmm10, %xmm18, %xmm10 # xmm10 = xmm10[1],xmm18[0]
vmovdqa %xmm10, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxorq %ymm9, %ymm19, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x1c0f
movq (%rbx), %rcx
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rsi
movq 0x18(%rbx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r8, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vprolvq %xmm2, %xmm11, %xmm11
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0xe9, %ymm9, %ymm10    # ymm10 = ymm9[1,2,2,3]
vpermq $0xe3, %ymm9, %ymm11    # ymm11 = ymm9[3,0,2,3]
vmovdqa %xmm11, (%rax)
vmovdqa %xmm10, 0x10(%rax)
vpaddq %ymm16, %ymm9, %ymm9
vmovdqu %ymm9, (%rbx)
movl $0x20, %ecx
movq -0x20(%rbx,%rcx), %rdx
movq -0x18(%rbx,%rcx), %rsi
movq -0x10(%rbx,%rcx), %rdi
movq -0x8(%rbx,%rcx), %r8
leaq (%rsi,%rdx), %r9
leaq (%r8,%rdi), %r10
vmovq %rdx, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r10, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm5, %xmm11, %xmm11
vprolvq %xmm6, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm7, %xmm9, %xmm9
vprolvq %xmm8, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, -0x20(%rax,%rcx)
vpermq $0x39, (%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, (%rbx,%rcx)
addq $0x20, %rcx
cmpq $0x80, %rcx
jne 0x1d91
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm5, %xmm11, %xmm11
vprolvq %xmm6, %xmm11, %xmm11
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm7, %xmm9, %xmm9
vprolvq %xmm8, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%rax)
vpaddq %ymm17, %ymm9, %ymm9
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm9
vmovq %r10, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm18   # ymm18 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm12 # xmm12 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti32x4 $0x1, %ymm18, %xmm11
vpxor %xmm12, %xmm11, %xmm11
valignq $0x1, %xmm11, %xmm10, %xmm19 # xmm19 = xmm11[1],xmm10[0]
vmovdqa64 %xmm19, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm12, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxorq %ymm9, %ymm18, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x1eca
movq %rbx, %rsi
xorl %edi, %edi
movq 0x30(%rsp), %rax
movq 0x10(%rsp), %r9
movq %r9, %rcx
leaq (,%r9,8), %r13
leaq (%rax,%r9,8), %r8
xorl %edx, %edx
movq (%r8,%rdx,8), %r9
xorq %r9, (%rsi,%rdx,8)
incq %rdx
addq $0x8, %r13
cmpq $0x4, %rdx
jne 0x1fc1
leaq 0x2(%rdi), %r8
addq $0x40, %rsi
leaq (%rcx,%rdx), %r9
testq %rdi, %rdi
movq %r8, %rdi
je 0x1fb0
movq (%rbx), %rsi
movq 0x18(%rbx), %rdi
vmovdqu 0x8(%rbx), %xmm9
vmovq %rdi, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm10
vpinsrq $0x1, %rsi, %xmm10, %xmm11
vpunpckhqdq %xmm10, %xmm9, %xmm12 # xmm12 = xmm9[1],xmm10[1]
vpaddq %xmm12, %xmm11, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vpinsrq $0x0, %rdi, %xmm12, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpaddq %ymm14, %ymm9, %ymm9
vmovdqu %ymm9, (%rbx)
addq %rdx, %rcx
movq %rcx, 0x10(%rsp)
xorl %r12d, %r12d
movq (%rbx,%r12), %rcx
movq 0x8(%rbx,%r12), %rdx
movq 0x10(%rbx,%r12), %rsi
movq 0x18(%rbx,%r12), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
addq %r14, %rsi
addq %r8, %rsi
rorxq $0x39, %rsi, %r10
addq %r11, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %r15
movabsq $-0x4b4d4e535556595b, %rax # imm = 0xB4B2B1ACAAA9A6A5
addq %rax, %rcx
addq %r9, %rcx
rorxq $0x21, %rcx, %rdi
movabsq $-0x5c636566696a6c72, %rax # imm = 0xA39C9A999695938E
addq %rax, %rdx
addq %r9, %rdx
rorxq $0xb, %rdx, %rcx
movq %r10, %rsi
xorq %r15, %rsi
movq %rdi, %rdx
xorq %rcx, %rdx
xorq %rsi, %rcx
xorq %rdi, %rsi
xorq %rdx, %r15
xorq %r10, %rdx
movq 0x20(%rbx,%r12), %rdi
movq 0x28(%rbx,%r12), %r8
movq 0x30(%rbx,%r12), %r9
movq 0x38(%rbx,%r12), %r10
leaq (%r10,%r9), %r11
leaq (%r8,%rdi), %rbp
movabsq $-0x727478878b8d8e94, %rax # imm = 0x8D8B87787472716C
addq %rax, %rdi
addq %r11, %rdi
rorxq $0x35, %rdi, %r14
movabsq $0x6a696665635c5a59, %rax # imm = 0x6A696665635C5A59
addq %rax, %r8
addq %r11, %r8
rorxq $0x29, %r8, %rdi
movabsq $0x5655534e4d4b473c, %rax # imm = 0x5655534E4D4B473C
addq %rax, %r9
addq %rbp, %r9
rorxq $0x1b, %r9, %r8
movabsq $0x3a393635332e2d2b, %rax # imm = 0x3A393635332E2D2B
addq %rax, %r10
addq %rbp, %r10
rorxq $0x5, %r10, %r9
movq %r8, %r10
xorq %r9, %r10
movq %r14, %r11
xorq %rdi, %r11
xorq %r10, %rdi
xorq %r14, %r10
movabsq $-0xf171b1d1e272b2e, %r14 # imm = 0xF0E8E4E2E1D8D4D2
movq 0xbe7a(%rip), %rax      # 0xdff0
xorq %r11, %r9
xorq %r8, %r11
movq %rcx, (%rax,%r12)
movq %rsi, 0x8(%rax,%r12)
addq %rsi, %r10
movq %r10, 0x20(%rbx,%r12)
movq %r15, 0x10(%rax,%r12)
addq %r15, %r9
movq %r9, 0x28(%rbx,%r12)
movq %rdx, 0x18(%rax,%r12)
addq %rdx, %r11
movq %r11, 0x30(%rbx,%r12)
movabsq $-0x2e333536393a3c48, %r11 # imm = 0xD1CCCAC9C6C5C3B8
addq %rcx, %rdi
movq %rdi, 0x38(%rbx,%r12)
addq $0x20, %r12
cmpq $0x60, %r12
jne 0x2068
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm5, %xmm11, %xmm11
vprolvq %xmm6, %xmm11, %xmm11
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm7, %xmm9, %xmm9
vprolvq %xmm8, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%rax)
vpaddq %ymm15, %ymm9, %ymm9
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm9
vmovq %r10, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm12   # ymm12 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm13 # xmm13 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti128 $0x1, %ymm12, %xmm11
vpxor %xmm13, %xmm11, %xmm11
valignq $0x1, %xmm11, %xmm10, %xmm18 # xmm18 = xmm11[1],xmm10[0]
vmovdqa64 %xmm18, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm13, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm12, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x2257
movq (%rbx), %rcx
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rsi
movq 0x18(%rbx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r8, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vprolvq %xmm2, %xmm11, %xmm11
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0xe9, %ymm9, %ymm10    # ymm10 = ymm9[1,2,2,3]
vpermq $0xe3, %ymm9, %ymm11    # ymm11 = ymm9[3,0,2,3]
vmovdqa %xmm11, (%rax)
vmovdqa %xmm10, 0x10(%rax)
vpaddq %ymm16, %ymm9, %ymm9
vmovdqu %ymm9, (%rbx)
movl $0x20, %ecx
movq -0x20(%rbx,%rcx), %rdx
movq -0x18(%rbx,%rcx), %rsi
movq -0x10(%rbx,%rcx), %rdi
movq -0x8(%rbx,%rcx), %r8
leaq (%rsi,%rdx), %r9
leaq (%r8,%rdi), %r10
vmovq %rdx, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r10, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm5, %xmm11, %xmm11
vprolvq %xmm6, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm7, %xmm9, %xmm9
vprolvq %xmm8, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, -0x20(%rax,%rcx)
vpermq $0x39, (%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, (%rbx,%rcx)
addq $0x20, %rcx
cmpq $0x80, %rcx
jne 0x23c4
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm5, %xmm11, %xmm11
vprolvq %xmm6, %xmm11, %xmm11
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm7, %xmm9, %xmm9
vprolvq %xmm8, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%rax)
vpaddq %ymm17, %ymm9, %ymm9
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm9
vmovq %r10, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm12   # ymm12 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm13 # xmm13 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti128 $0x1, %ymm12, %xmm11
vpxor %xmm13, %xmm11, %xmm11
valignq $0x1, %xmm11, %xmm10, %xmm18 # xmm18 = xmm11[1],xmm10[0]
vmovdqa64 %xmm18, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm13, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm12, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x24fd
xorl %ecx, %ecx
vmovdqu (%rbx,%rcx,2), %ymm9
vpaddq 0xe0(%rsp,%rcx), %ymm9, %ymm9
vmovdqu %ymm9, 0xe0(%rsp,%rcx)
addq $0x20, %rcx
cmpq $0x20, %rcx
je 0x25d3
movq 0x18(%rsp), %rcx
incq %rcx
cmpq 0x40(%rsp), %rcx
jne 0x1932
movq 0x28(%rsp), %rcx
andq $0x3f, %rcx
je 0x32fa
movq %rcx, 0x28(%rsp)
vmovups 0x50(%rsp), %ymm9
vmovups 0x70(%rsp), %ymm10
vmovups 0x90(%rsp), %ymm11
vmovups 0xb0(%rsp), %ymm12
movq 0xb9b8(%rip), %rbx      # 0xdff8
vmovups %ymm9, (%rbx)
vmovups %ymm12, 0x60(%rbx)
vmovups %ymm11, 0x40(%rbx)
vmovups %ymm10, 0x20(%rbx)
movq 0x8(%rsp), %rsi
incq %rsi
movq 0x18(%rbx), %rcx
movq (%rbx), %rdx
movq %rsi, 0x8(%rsp)
xorq %rsi, %rdx
movq %rdx, (%rbx)
vmovdqu 0x8(%rbx), %xmm9
vmovq %rdx, %xmm10
vpinsrq $0x1, %rcx, %xmm10, %xmm11
vpaddq %xmm11, %xmm9, %xmm11
vpunpcklqdq %xmm11, %xmm10, %xmm10 # xmm10 = xmm10[0],xmm11[0]
vpunpckhqdq %xmm9, %xmm11, %xmm12 # xmm12 = xmm11[1],xmm9[1]
vpaddq %xmm12, %xmm10, %xmm10
vpaddq 0x99e7(%rip), %xmm10, %xmm10 # 0xc080
vprolvq 0x99ed(%rip), %xmm10, %xmm10 # 0xc090
vpinsrq $0x1, %rcx, %xmm12, %xmm12
vpunpcklqdq %xmm11, %xmm9, %xmm9 # xmm9 = xmm9[0],xmm11[0]
vpaddq %xmm12, %xmm9, %xmm9
vpaddq 0x99e5(%rip), %xmm9, %xmm9 # 0xc0a0
vprolvq 0x99eb(%rip), %xmm9, %xmm9 # 0xc0b0
vpxor %xmm9, %xmm10, %xmm11
vpermq $0x41, %ymm11, %ymm11   # ymm11 = ymm11[1,0,0,1]
vpmovsxbq 0x9aab(%rip), %ymm12 # 0xc184
vpermi2q %ymm9, %ymm10, %ymm12
vpxor %ymm12, %ymm11, %ymm9
vpaddq 0x99f4(%rip), %ymm9, %ymm9 # 0xc0e0
vmovdqu %ymm9, (%rbx)
xorl %r14d, %r14d
movq (%rbx,%r14), %rcx
movq 0x8(%rbx,%r14), %rdx
movq 0x10(%rbx,%r14), %rsi
movq 0x18(%rbx,%r14), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
movabsq $-0xf171b1d1e272b2e, %r10 # imm = 0xF0E8E4E2E1D8D4D2
addq %r10, %rsi
addq %r8, %rsi
rorxq $0x39, %rsi, %r10
addq %r11, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %r15
movabsq $-0x4b4d4e535556595b, %rsi # imm = 0xB4B2B1ACAAA9A6A5
addq %rsi, %rcx
addq %r9, %rcx
rorxq $0x21, %rcx, %rdi
movabsq $-0x5c636566696a6c72, %rcx # imm = 0xA39C9A999695938E
addq %rcx, %rdx
addq %r9, %rdx
rorxq $0xb, %rdx, %rcx
movq %r10, %rsi
xorq %r15, %rsi
movq %rdi, %rdx
xorq %rcx, %rdx
xorq %rsi, %rcx
xorq %rdi, %rsi
xorq %rdx, %r15
xorq %r10, %rdx
movq 0x20(%rbx,%r14), %rdi
movq 0x28(%rbx,%r14), %r8
movq 0x30(%rbx,%r14), %r9
movq 0x38(%rbx,%r14), %r10
leaq (%r10,%r9), %r11
leaq (%r8,%rdi), %r12
movabsq $-0x727478878b8d8e94, %rbp # imm = 0x8D8B87787472716C
addq %rbp, %rdi
addq %r11, %rdi
rorxq $0x35, %rdi, %rbp
movabsq $0x6a696665635c5a59, %rdi # imm = 0x6A696665635C5A59
addq %rdi, %r8
addq %r11, %r8
rorxq $0x29, %r8, %rdi
movabsq $0x5655534e4d4b473c, %r8 # imm = 0x5655534E4D4B473C
addq %r8, %r9
addq %r12, %r9
rorxq $0x1b, %r9, %r8
movabsq $0x3a393635332e2d2b, %r9 # imm = 0x3A393635332E2D2B
addq %r9, %r10
addq %r12, %r10
rorxq $0x5, %r10, %r9
movq %r8, %r10
xorq %r9, %r10
movq %rbp, %r11
xorq %rdi, %r11
xorq %r10, %rdi
xorq %rbp, %r10
xorq %r11, %r9
xorq %r8, %r11
movq %rcx, (%rax,%r14)
movq %rsi, 0x8(%rax,%r14)
addq %rsi, %r10
movq %r10, 0x20(%rbx,%r14)
movq %r15, 0x10(%rax,%r14)
addq %r15, %r9
movq %r9, 0x28(%rbx,%r14)
movq %rdx, 0x18(%rax,%r14)
addq %rdx, %r11
movq %r11, 0x30(%rbx,%r14)
movabsq $-0x2e333536393a3c48, %r11 # imm = 0xD1CCCAC9C6C5C3B8
addq %rcx, %rdi
movq %rdi, 0x38(%rbx,%r14)
addq $0x20, %r14
cmpq $0x60, %r14
jne 0x26f3
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x97b2(%rip), %xmm11, %xmm11 # 0xc040
vprolvq 0x97b8(%rip), %xmm11, %xmm11 # 0xc050
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x97af(%rip), %xmm9, %xmm9 # 0xc060
vprolvq 0x97b5(%rip), %xmm9, %xmm9 # 0xc070
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%rax)
vpaddq 0x981c(%rip), %ymm9, %ymm9 # 0xc100
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm9
vmovq %r10, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm12   # ymm12 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm13 # xmm13 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti128 $0x1, %ymm12, %xmm11
vpxor %xmm13, %xmm11, %xmm11
vpalignr $0x8, %xmm11, %xmm10, %xmm14 # xmm14 = xmm11[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vmovdqa %xmm14, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm13, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm12, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x28ee
movq (%rbx), %rcx
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rsi
movq 0x18(%rbx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r8, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x9602(%rip), %xmm11, %xmm11 # 0xc000
vprolvq 0x9608(%rip), %xmm11, %xmm11 # 0xc010
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x95ff(%rip), %xmm9, %xmm9 # 0xc020
vprolvq 0x9605(%rip), %xmm9, %xmm9 # 0xc030
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0xe9, %ymm9, %ymm10    # ymm10 = ymm9[1,2,2,3]
vpermq $0xe3, %ymm9, %ymm11    # ymm11 = ymm9[3,0,2,3]
vmovdqa %xmm11, (%rax)
vmovdqa %xmm10, 0x10(%rax)
vpaddq 0x96c2(%rip), %ymm9, %ymm9 # 0xc120
vmovdqu %ymm9, (%rbx)
movl $0x20, %ecx
movq -0x20(%rbx,%rcx), %rdx
movq -0x18(%rbx,%rcx), %rsi
movq -0x10(%rbx,%rcx), %rdi
movq -0x8(%rbx,%rcx), %r8
leaq (%rsi,%rdx), %r9
leaq (%r8,%rdi), %r10
vmovq %rdx, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r10, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm5, %xmm11, %xmm11
vprolvq %xmm6, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm7, %xmm9, %xmm9
vprolvq %xmm8, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, -0x20(%rax,%rcx)
vpermq $0x39, (%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, (%rbx,%rcx)
addq $0x20, %rcx
cmpq $0x80, %rcx
jne 0x2a67
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x94ee(%rip), %xmm11, %xmm11 # 0xc040
vprolvq 0x94f4(%rip), %xmm11, %xmm11 # 0xc050
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x94eb(%rip), %xmm9, %xmm9 # 0xc060
vprolvq 0x94f1(%rip), %xmm9, %xmm9 # 0xc070
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%rax)
vpaddq 0x9598(%rip), %ymm9, %ymm9 # 0xc140
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm9
vmovq %r10, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm12   # ymm12 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm13 # xmm13 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti128 $0x1, %ymm12, %xmm11
vpxor %xmm13, %xmm11, %xmm11
vpalignr $0x8, %xmm11, %xmm10, %xmm14 # xmm14 = xmm11[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vmovdqa %xmm14, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm13, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm12, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x2bb2
movq 0x30(%rsp), %r8
addq %r13, %r8
xorl %ecx, %ecx
xorl %edx, %edx
movq 0x28(%rsp), %rax
leaq 0x1(%rcx), %rsi
movb (%r8,%rdx), %dil
xorb (%rbx,%rcx), %dil
movb %dil, 0x1(%rbx,%rcx)
addq $0x21, %rcx
testb $0x1f, %sil
cmovneq %rsi, %rcx
incq %rdx
cmpq %rdx, %rax
jne 0x2c91
xorb $0x1, (%rbx,%rax)
movq (%rbx), %rcx
movq 0x18(%rbx), %rdx
vmovdqu 0x8(%rbx), %xmm9
vmovq %rdx, %xmm10
vmovq %rcx, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm10
vpinsrq $0x1, %rcx, %xmm10, %xmm11
vpunpckhqdq %xmm10, %xmm9, %xmm12 # xmm12 = xmm9[1],xmm10[1]
vpaddq %xmm12, %xmm11, %xmm11
vpaddq 0x930e(%rip), %xmm11, %xmm11 # 0xc000
vprolvq 0x9314(%rip), %xmm11, %xmm11 # 0xc010
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vpinsrq $0x0, %rdx, %xmm12, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x930c(%rip), %xmm9, %xmm9 # 0xc020
vprolvq 0x9312(%rip), %xmm9, %xmm9 # 0xc030
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpaddq 0x93a4(%rip), %ymm9, %ymm9 # 0xc0e0
vmovdqu %ymm9, (%rbx)
xorl %r14d, %r14d
movq 0xb2a6(%rip), %rax      # 0xdff0
movabsq $0x3a393635332e2d2b, %rbp # imm = 0x3A393635332E2D2B
movq (%rbx,%r14), %rcx
movq 0x8(%rbx,%r14), %rdx
movq 0x10(%rbx,%r14), %rsi
movq 0x18(%rbx,%r14), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
movabsq $-0xf171b1d1e272b2e, %r10 # imm = 0xF0E8E4E2E1D8D4D2
addq %r10, %rsi
addq %r8, %rsi
rorxq $0x39, %rsi, %r10
addq %r11, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %r15
movabsq $-0x4b4d4e535556595b, %rsi # imm = 0xB4B2B1ACAAA9A6A5
addq %rsi, %rcx
addq %r9, %rcx
rorxq $0x21, %rcx, %rdi
movabsq $-0x5c636566696a6c72, %rcx # imm = 0xA39C9A999695938E
addq %rcx, %rdx
addq %r9, %rdx
rorxq $0xb, %rdx, %rcx
movq %r10, %rsi
xorq %r15, %rsi
movq %rdi, %rdx
xorq %rcx, %rdx
xorq %rsi, %rcx
xorq %rdi, %rsi
xorq %rdx, %r15
xorq %r10, %rdx
movq 0x20(%rbx,%r14), %rdi
movq 0x28(%rbx,%r14), %r8
movq 0x30(%rbx,%r14), %r9
movq 0x38(%rbx,%r14), %r10
leaq (%r10,%r9), %r11
leaq (%r8,%rdi), %r12
movabsq $-0x727478878b8d8e94, %r13 # imm = 0x8D8B87787472716C
addq %r13, %rdi
addq %r11, %rdi
rorxq $0x35, %rdi, %r13
movabsq $0x6a696665635c5a59, %rdi # imm = 0x6A696665635C5A59
addq %rdi, %r8
addq %r11, %r8
rorxq $0x29, %r8, %rdi
movabsq $0x5655534e4d4b473c, %r8 # imm = 0x5655534E4D4B473C
addq %r8, %r9
addq %r12, %r9
rorxq $0x1b, %r9, %r8
addq %rbp, %r10
addq %r12, %r10
rorxq $0x5, %r10, %r9
movq %r8, %r10
xorq %r9, %r10
movq %r13, %r11
xorq %rdi, %r11
xorq %r10, %rdi
xorq %r13, %r10
xorq %r11, %r9
xorq %r8, %r11
movq %rcx, (%rax,%r14)
movq %rsi, 0x8(%rax,%r14)
addq %rsi, %r10
movq %r10, 0x20(%rbx,%r14)
movq %r15, 0x10(%rax,%r14)
addq %r15, %r9
movq %r9, 0x28(%rbx,%r14)
movq %rdx, 0x18(%rax,%r14)
addq %rdx, %r11
movq %r11, 0x30(%rbx,%r14)
movabsq $-0x2e333536393a3c48, %r11 # imm = 0xD1CCCAC9C6C5C3B8
addq %rcx, %rdi
movq %rdi, 0x38(%rbx,%r14)
addq $0x20, %r14
cmpq $0x60, %r14
jne 0x2d54
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x915b(%rip), %xmm11, %xmm11 # 0xc040
vprolvq 0x9161(%rip), %xmm11, %xmm11 # 0xc050
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x9158(%rip), %xmm9, %xmm9 # 0xc060
vprolvq 0x915e(%rip), %xmm9, %xmm9 # 0xc070
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%rax)
vpaddq 0x91c5(%rip), %ymm9, %ymm9 # 0xc100
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm9
vmovq %r10, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm12   # ymm12 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm13 # xmm13 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti128 $0x1, %ymm12, %xmm11
vpxor %xmm13, %xmm11, %xmm11
vpalignr $0x8, %xmm11, %xmm10, %xmm14 # xmm14 = xmm11[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vmovdqa %xmm14, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm13, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm12, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x2f45
movq (%rbx), %rcx
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rsi
movq 0x18(%rbx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r8, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x8fab(%rip), %xmm11, %xmm11 # 0xc000
vprolvq 0x8fb1(%rip), %xmm11, %xmm11 # 0xc010
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x8fa8(%rip), %xmm9, %xmm9 # 0xc020
vprolvq 0x8fae(%rip), %xmm9, %xmm9 # 0xc030
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0xe9, %ymm9, %ymm10    # ymm10 = ymm9[1,2,2,3]
vpermq $0xe3, %ymm9, %ymm11    # ymm11 = ymm9[3,0,2,3]
vmovdqa %xmm11, (%rax)
vmovdqa %xmm10, 0x10(%rax)
vpaddq 0x906b(%rip), %ymm9, %ymm9 # 0xc120
vmovdqu %ymm9, (%rbx)
movl $0x20, %ecx
movq -0x20(%rbx,%rcx), %rdx
movq -0x18(%rbx,%rcx), %rsi
movq -0x10(%rbx,%rcx), %rdi
movq -0x8(%rbx,%rcx), %r8
leaq (%rsi,%rdx), %r9
leaq (%r8,%rdi), %r10
vmovq %rdx, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r10, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm5, %xmm11, %xmm11
vprolvq %xmm6, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm7, %xmm9, %xmm9
vprolvq %xmm8, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, -0x20(%rax,%rcx)
vpermq $0x39, (%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, (%rbx,%rcx)
addq $0x20, %rcx
cmpq $0x80, %rcx
jne 0x30be
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x8e97(%rip), %xmm11, %xmm11 # 0xc040
vprolvq 0x8e9d(%rip), %xmm11, %xmm11 # 0xc050
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x8e94(%rip), %xmm9, %xmm9 # 0xc060
vprolvq 0x8e9a(%rip), %xmm9, %xmm9 # 0xc070
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%rax)
vpaddq 0x8f41(%rip), %ymm9, %ymm9 # 0xc140
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm9
vmovq %r10, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm12   # ymm12 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm13 # xmm13 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti128 $0x1, %ymm12, %xmm11
vpxor %xmm13, %xmm11, %xmm11
vpalignr $0x8, %xmm11, %xmm10, %xmm14 # xmm14 = xmm11[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vmovdqa %xmm14, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm13, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm12, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x3209
xorl %ecx, %ecx
vmovdqu (%rbx,%rcx,2), %ymm9
vpaddq 0xe0(%rsp,%rcx), %ymm9, %ymm9
vmovdqu %ymm9, 0xe0(%rsp,%rcx)
addq $0x20, %rcx
cmpq $0x20, %rcx
je 0x32d9
xorl %ecx, %ecx
movq 0xacf5(%rip), %rbx      # 0xdff8
vmovups 0xe0(%rsp,%rcx), %ymm9
vxorps 0x50(%rsp,%rcx,2), %ymm9, %ymm9
vmovups %ymm9, (%rbx,%rcx,2)
vmovdqu 0x70(%rsp,%rcx,2), %ymm9
vmovdqu %ymm9, 0x20(%rbx,%rcx,2)
addq $0x20, %rcx
cmpq $0x20, %rcx
je 0x3303
movq (%rbx), %rcx
movq 0x18(%rbx), %rdx
vmovdqu 0x8(%rbx), %xmm9
vmovq %rdx, %xmm10
vmovq %rcx, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm10
vpinsrq $0x1, %rcx, %xmm10, %xmm11
vpunpckhqdq %xmm10, %xmm9, %xmm12 # xmm12 = xmm9[1],xmm10[1]
vpaddq %xmm12, %xmm11, %xmm11
vpaddq 0x8c9b(%rip), %xmm11, %xmm11 # 0xc000
vprolvq 0x8ca1(%rip), %xmm11, %xmm11 # 0xc010
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vpinsrq $0x0, %rdx, %xmm12, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x8c99(%rip), %xmm9, %xmm9 # 0xc020
vprolvq 0x8c9f(%rip), %xmm9, %xmm9 # 0xc030
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpaddq 0x8d31(%rip), %ymm9, %ymm9 # 0xc0e0
vmovdqu %ymm9, (%rbx)
xorl %r14d, %r14d
movq 0xac33(%rip), %rax      # 0xdff0
movabsq $0x3a393635332e2d2b, %rbp # imm = 0x3A393635332E2D2B
movq (%rbx,%r14), %rcx
movq 0x8(%rbx,%r14), %rdx
movq 0x10(%rbx,%r14), %rsi
movq 0x18(%rbx,%r14), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
movabsq $-0xf171b1d1e272b2e, %r10 # imm = 0xF0E8E4E2E1D8D4D2
addq %r10, %rsi
addq %r8, %rsi
rorxq $0x39, %rsi, %r10
addq %r11, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %r15
movabsq $-0x4b4d4e535556595b, %rsi # imm = 0xB4B2B1ACAAA9A6A5
addq %rsi, %rcx
addq %r9, %rcx
rorxq $0x21, %rcx, %rdi
movabsq $-0x5c636566696a6c72, %rcx # imm = 0xA39C9A999695938E
addq %rcx, %rdx
addq %r9, %rdx
rorxq $0xb, %rdx, %rcx
movq %r10, %rsi
xorq %r15, %rsi
movq %rdi, %rdx
xorq %rcx, %rdx
xorq %rsi, %rcx
xorq %rdi, %rsi
xorq %rdx, %r15
xorq %r10, %rdx
movq 0x20(%rbx,%r14), %rdi
movq 0x28(%rbx,%r14), %r8
movq 0x30(%rbx,%r14), %r9
movq 0x38(%rbx,%r14), %r10
leaq (%r10,%r9), %r11
leaq (%r8,%rdi), %r12
movabsq $-0x727478878b8d8e94, %r13 # imm = 0x8D8B87787472716C
addq %r13, %rdi
addq %r11, %rdi
rorxq $0x35, %rdi, %r13
movabsq $0x6a696665635c5a59, %rdi # imm = 0x6A696665635C5A59
addq %rdi, %r8
addq %r11, %r8
rorxq $0x29, %r8, %rdi
movabsq $0x5655534e4d4b473c, %r8 # imm = 0x5655534E4D4B473C
addq %r8, %r9
addq %r12, %r9
rorxq $0x1b, %r9, %r8
addq %rbp, %r10
addq %r12, %r10
rorxq $0x5, %r10, %r9
movq %r8, %r10
xorq %r9, %r10
movq %r13, %r11
xorq %rdi, %r11
xorq %r10, %rdi
xorq %r13, %r10
xorq %r11, %r9
xorq %r8, %r11
movq %rcx, (%rax,%r14)
movq %rsi, 0x8(%rax,%r14)
addq %rsi, %r10
movq %r10, 0x20(%rbx,%r14)
movq %r15, 0x10(%rax,%r14)
addq %r15, %r9
movq %r9, 0x28(%rbx,%r14)
movq %rdx, 0x18(%rax,%r14)
addq %rdx, %r11
movq %r11, 0x30(%rbx,%r14)
movabsq $-0x2e333536393a3c48, %r11 # imm = 0xD1CCCAC9C6C5C3B8
addq %rcx, %rdi
movq %rdi, 0x38(%rbx,%r14)
addq $0x20, %r14
cmpq $0x60, %r14
jne 0x33c7
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x8ae8(%rip), %xmm11, %xmm11 # 0xc040
vprolvq 0x8aee(%rip), %xmm11, %xmm11 # 0xc050
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x8ae5(%rip), %xmm9, %xmm9 # 0xc060
vprolvq 0x8aeb(%rip), %xmm9, %xmm9 # 0xc070
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%rax)
vpaddq 0x8b52(%rip), %ymm9, %ymm9 # 0xc100
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm9
vmovq %r10, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm12   # ymm12 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm13 # xmm13 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti128 $0x1, %ymm12, %xmm11
vpxor %xmm13, %xmm11, %xmm11
vpalignr $0x8, %xmm11, %xmm10, %xmm14 # xmm14 = xmm11[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vmovdqa %xmm14, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm13, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm12, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x35b8
movq (%rbx), %rcx
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rsi
movq 0x18(%rbx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r8, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x8938(%rip), %xmm11, %xmm11 # 0xc000
vprolvq 0x893e(%rip), %xmm11, %xmm11 # 0xc010
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x8935(%rip), %xmm9, %xmm9 # 0xc020
vprolvq 0x893b(%rip), %xmm9, %xmm9 # 0xc030
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0xe9, %ymm9, %ymm10    # ymm10 = ymm9[1,2,2,3]
vpermq $0xe3, %ymm9, %ymm11    # ymm11 = ymm9[3,0,2,3]
vmovdqa %xmm11, (%rax)
vmovdqa %xmm10, 0x10(%rax)
vpaddq 0x89f8(%rip), %ymm9, %ymm9 # 0xc120
vmovdqu %ymm9, (%rbx)
movl $0x20, %ecx
movq -0x20(%rbx,%rcx), %rdx
movq -0x18(%rbx,%rcx), %rsi
movq -0x10(%rbx,%rcx), %rdi
movq -0x8(%rbx,%rcx), %r8
leaq (%rsi,%rdx), %r9
leaq (%r8,%rdi), %r10
vmovq %rdx, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r10, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm5, %xmm11, %xmm11
vprolvq %xmm6, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm7, %xmm9, %xmm9
vprolvq %xmm8, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, -0x20(%rax,%rcx)
vpermq $0x39, (%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, (%rbx,%rcx)
addq $0x20, %rcx
cmpq $0x80, %rcx
jne 0x3731
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x8824(%rip), %xmm11, %xmm11 # 0xc040
vprolvq 0x882a(%rip), %xmm11, %xmm11 # 0xc050
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x8821(%rip), %xmm9, %xmm9 # 0xc060
vprolvq 0x8827(%rip), %xmm9, %xmm9 # 0xc070
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%rax)
vpaddq 0x88ce(%rip), %ymm9, %ymm9 # 0xc140
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm9
vmovq %r10, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rsi, %xmm9, %xmm9
vpinsrq $0x0, %r8, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm12   # ymm12 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm13 # xmm13 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti128 $0x1, %ymm12, %xmm11
vpxor %xmm13, %xmm11, %xmm11
vpalignr $0x8, %xmm11, %xmm10, %xmm14 # xmm14 = xmm11[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vmovdqa %xmm14, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm13, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm12, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x387c
vmovups 0x60(%rbx), %ymm9
vmovups %ymm9, 0xb0(%rsp)
vmovups 0x40(%rbx), %ymm9
vmovups %ymm9, 0x90(%rsp)
vmovups 0x20(%rbx), %ymm9
vmovups %ymm9, 0x70(%rsp)
vmovups (%rbx), %ymm9
vmovups %ymm9, 0x50(%rsp)
movq 0x8(%rsp), %rsi
incq %rsi
movq 0x18(%rbx), %rcx
movq (%rbx), %rdx
movq %rsi, 0x8(%rsp)
xorq %rsi, %rdx
movq %rdx, (%rbx)
vmovdqu 0x8(%rbx), %xmm9
vmovq %rdx, %xmm10
vpinsrq $0x1, %rcx, %xmm10, %xmm11
vpaddq %xmm11, %xmm9, %xmm11
vpunpcklqdq %xmm11, %xmm10, %xmm10 # xmm10 = xmm10[0],xmm11[0]
vpunpckhqdq %xmm9, %xmm11, %xmm12 # xmm12 = xmm11[1],xmm9[1]
vpaddq %xmm12, %xmm10, %xmm10
vpaddq 0x86bf(%rip), %xmm10, %xmm10 # 0xc080
vprolvq 0x86c5(%rip), %xmm10, %xmm10 # 0xc090
vpinsrq $0x1, %rcx, %xmm12, %xmm12
vpunpcklqdq %xmm11, %xmm9, %xmm9 # xmm9 = xmm9[0],xmm11[0]
vpaddq %xmm12, %xmm9, %xmm9
vpaddq 0x86bd(%rip), %xmm9, %xmm9 # 0xc0a0
vprolvq 0x86c3(%rip), %xmm9, %xmm11 # 0xc0b0
vpxor %xmm11, %xmm10, %xmm9
vpermq $0x41, %ymm9, %ymm12    # ymm12 = ymm9[1,0,0,1]
vpmovsxbq 0x8782(%rip), %ymm26 # 0xc184
vpermt2q %ymm11, %ymm26, %ymm10
vpxor %ymm10, %ymm12, %ymm10
vpaddq 0x86cb(%rip), %ymm10, %ymm10 # 0xc0e0
vmovdqu %ymm10, (%rbx)
xorl %r14d, %r14d
movq %r11, %rbp
movq (%rbx,%r14), %rcx
movq 0x8(%rbx,%r14), %rdx
movq 0x10(%rbx,%r14), %rsi
movq 0x18(%rbx,%r14), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
movabsq $-0xf171b1d1e272b2e, %r10 # imm = 0xF0E8E4E2E1D8D4D2
addq %r10, %rsi
addq %r8, %rsi
rorxq $0x39, %rsi, %r10
addq %rbp, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %r15
movabsq $-0x4b4d4e535556595b, %rsi # imm = 0xB4B2B1ACAAA9A6A5
addq %rsi, %rcx
addq %r9, %rcx
rorxq $0x21, %rcx, %rdi
movabsq $-0x5c636566696a6c72, %rcx # imm = 0xA39C9A999695938E
addq %rcx, %rdx
addq %r9, %rdx
rorxq $0xb, %rdx, %rcx
movq %r10, %rsi
xorq %r15, %rsi
movq %rdi, %rdx
xorq %rcx, %rdx
xorq %rsi, %rcx
xorq %rdi, %rsi
xorq %rdx, %r15
xorq %r10, %rdx
movq 0x20(%rbx,%r14), %rdi
movq 0x28(%rbx,%r14), %r8
movq 0x30(%rbx,%r14), %r9
movq 0x38(%rbx,%r14), %r10
leaq (%r10,%r9), %r11
leaq (%r8,%rdi), %r12
movabsq $-0x727478878b8d8e94, %r13 # imm = 0x8D8B87787472716C
addq %r13, %rdi
addq %r11, %rdi
rorxq $0x35, %rdi, %r13
movabsq $0x6a696665635c5a59, %rdi # imm = 0x6A696665635C5A59
addq %rdi, %r8
addq %r11, %r8
rorxq $0x29, %r8, %rdi
movabsq $0x5655534e4d4b473c, %r8 # imm = 0x5655534E4D4B473C
addq %r8, %r9
addq %r12, %r9
rorxq $0x1b, %r9, %r8
movabsq $0x3a393635332e2d2b, %r9 # imm = 0x3A393635332E2D2B
addq %r9, %r10
addq %r12, %r10
rorxq $0x5, %r10, %r9
movq %r8, %r10
xorq %r9, %r10
movq %r13, %r11
xorq %rdi, %r11
xorq %r10, %rdi
xorq %r13, %r10
xorq %r11, %r9
xorq %r8, %r11
movq %rcx, (%rax,%r14)
movq %rsi, 0x8(%rax,%r14)
addq %rsi, %r10
movq %r10, 0x20(%rbx,%r14)
movq %r15, 0x10(%rax,%r14)
addq %r15, %r9
movq %r9, 0x28(%rbx,%r14)
movq %rdx, 0x18(%rax,%r14)
addq %rdx, %r11
movq %r11, 0x30(%rbx,%r14)
addq %rcx, %rdi
movq %rdi, 0x38(%rbx,%r14)
addq $0x20, %r14
cmpq $0x60, %r14
jne 0x3a1f
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm10
vmovq %r8, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r9, %xmm11
vmovq %rsi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq 0x8490(%rip), %xmm12, %xmm12 # 0xc040
vprolvq 0x8496(%rip), %xmm12, %xmm12 # 0xc050
vpinsrq $0x1, %rdx, %xmm10, %xmm10
vpinsrq $0x0, %rdi, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq 0x848d(%rip), %xmm10, %xmm10 # 0xc060
vprolvq 0x8493(%rip), %xmm10, %xmm10 # 0xc070
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpermq $0x93, %ymm10, %ymm11   # ymm11 = ymm10[3,0,1,2]
vmovdqu %ymm11, 0x60(%rax)
vpaddq 0x84fa(%rip), %ymm10, %ymm10 # 0xc100
vmovdqu %ymm10, 0x60(%rbx)
movl $0x78, %ecx
movq %rax, %r11
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm10
vmovq %r10, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r9, %xmm11
vmovq %rdi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq %xmm1, %xmm12, %xmm12
vprolvq %xmm2, %xmm12, %xmm12
vpinsrq $0x1, %rsi, %xmm10, %xmm10
vpinsrq $0x0, %r8, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq %xmm3, %xmm10, %xmm10
vprolvq %xmm4, %xmm10, %xmm10
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm13   # ymm13 = ymm11[0,1,1,0]
vpblendd $0xc, %xmm10, %xmm12, %xmm14 # xmm14 = xmm12[0,1],xmm10[2,3]
vpalignr $0x8, %xmm12, %xmm10, %xmm10 # xmm10 = xmm12[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vpxor %xmm10, %xmm11, %xmm11
vextracti128 $0x1, %ymm13, %xmm12
vpxor %xmm14, %xmm12, %xmm12
vpalignr $0x8, %xmm12, %xmm11, %xmm15 # xmm15 = xmm12[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm15, -0x18(%r11,%rcx)
vinserti128 $0x1, %xmm14, %ymm10, %ymm10
vpalignr $0x8, %xmm11, %xmm12, %xmm11 # xmm11 = xmm11[8,9,10,11,12,13,14,15],xmm12[0,1,2,3,4,5,6,7]
vmovdqa %xmm11, -0x8(%r11,%rcx)
vpermq $0x39, -0x38(%r11,%rcx), %ymm11 # ymm11 = mem[1,2,3,0]
vpxor %ymm10, %ymm13, %ymm10
vpaddq %ymm10, %ymm11, %ymm10
vmovdqu %ymm10, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x3c13
movq (%rbx), %rcx
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rsi
movq 0x18(%rbx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm10
vmovq %r9, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r8, %xmm11
vmovq %rsi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq 0x82db(%rip), %xmm12, %xmm12 # 0xc000
vprolvq 0x82e1(%rip), %xmm12, %xmm12 # 0xc010
vpinsrq $0x1, %rdx, %xmm10, %xmm10
vpinsrq $0x0, %rdi, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq 0x82d8(%rip), %xmm10, %xmm10 # 0xc020
vprolvq 0x82de(%rip), %xmm10, %xmm10 # 0xc030
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpermq $0xe9, %ymm10, %ymm11   # ymm11 = ymm10[1,2,2,3]
vpermq $0xe3, %ymm10, %ymm12   # ymm12 = ymm10[3,0,2,3]
vmovdqa %xmm12, (%r11)
vmovdqa %xmm11, 0x10(%r11)
vpaddq 0x8399(%rip), %ymm10, %ymm10 # 0xc120
vmovdqu %ymm10, (%rbx)
movl $0x20, %ecx
movq 0x20(%rsp), %rax
movq -0x20(%rbx,%rcx), %rdx
movq -0x18(%rbx,%rcx), %rsi
movq -0x10(%rbx,%rcx), %rdi
movq -0x8(%rbx,%rcx), %r8
leaq (%rsi,%rdx), %r9
leaq (%r8,%rdi), %r10
vmovq %rdx, %xmm10
vmovq %r9, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r10, %xmm11
vmovq %rdi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq %xmm5, %xmm12, %xmm12
vprolvq %xmm6, %xmm12, %xmm12
vpinsrq $0x1, %rsi, %xmm10, %xmm10
vpinsrq $0x0, %r8, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq %xmm7, %xmm10, %xmm10
vprolvq %xmm8, %xmm10, %xmm10
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpermq $0x93, %ymm10, %ymm11   # ymm11 = ymm10[3,0,1,2]
vmovdqu %ymm11, -0x20(%r11,%rcx)
vpermq $0x39, (%r11,%rcx), %ymm11 # ymm11 = mem[1,2,3,0]
vpaddq %ymm10, %ymm11, %ymm10
vmovdqu %ymm10, (%rbx,%rcx)
addq $0x20, %rcx
cmpq $0x80, %rcx
jne 0x3d95
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm10
vmovq %r8, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r9, %xmm11
vmovq %rsi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq 0x81bf(%rip), %xmm12, %xmm12 # 0xc040
vprolvq 0x81c5(%rip), %xmm12, %xmm12 # 0xc050
vpinsrq $0x1, %rdx, %xmm10, %xmm10
vpinsrq $0x0, %rdi, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq 0x81bc(%rip), %xmm10, %xmm10 # 0xc060
vprolvq 0x81c2(%rip), %xmm10, %xmm10 # 0xc070
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpermq $0x93, %ymm10, %ymm11   # ymm11 = ymm10[3,0,1,2]
vmovdqu %ymm11, 0x60(%r11)
vpaddq 0x8268(%rip), %ymm10, %ymm10 # 0xc140
vmovdqu %ymm10, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm10
vmovq %r10, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r9, %xmm11
vmovq %rdi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq %xmm1, %xmm12, %xmm12
vprolvq %xmm2, %xmm12, %xmm12
vpinsrq $0x1, %rsi, %xmm10, %xmm10
vpinsrq $0x0, %r8, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq %xmm3, %xmm10, %xmm10
vprolvq %xmm4, %xmm10, %xmm10
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm13   # ymm13 = ymm11[0,1,1,0]
vpblendd $0xc, %xmm10, %xmm12, %xmm14 # xmm14 = xmm12[0,1],xmm10[2,3]
vpalignr $0x8, %xmm12, %xmm10, %xmm10 # xmm10 = xmm12[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vpxor %xmm10, %xmm11, %xmm11
vextracti128 $0x1, %ymm13, %xmm12
vpxor %xmm14, %xmm12, %xmm12
vpalignr $0x8, %xmm12, %xmm11, %xmm15 # xmm15 = xmm12[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm15, -0x18(%r11,%rcx)
vinserti128 $0x1, %xmm14, %ymm10, %ymm10
vpalignr $0x8, %xmm11, %xmm12, %xmm11 # xmm11 = xmm11[8,9,10,11,12,13,14,15],xmm12[0,1,2,3,4,5,6,7]
vmovdqa %xmm11, -0x8(%r11,%rcx)
vpermq $0x39, -0x38(%r11,%rcx), %ymm11 # ymm11 = mem[1,2,3,0]
vpxor %ymm10, %ymm13, %ymm10
vpaddq %ymm10, %ymm11, %ymm10
vmovdqu %ymm10, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x3ee2
xorl %ecx, %ecx
xorl %edx, %edx
movq 0x2120(%rsp), %r10
leaq (%r10,%rcx,8), %rdi
leaq (%rax,%rcx,8), %r8
xorl %esi, %esi
movq (%rdi,%rsi,8), %r9
xorq (%rbx,%rsi,8), %r9
movq %r9, (%rbx,%rsi,8)
movq %r9, (%r8,%rsi,8)
incq %rsi
cmpq $0x4, %rsi
jne 0x3fc8
leaq 0x2(%rdx), %rdi
addq $0x40, %rbx
addq %rsi, %rcx
testq %rdx, %rdx
movq %rdi, %rdx
je 0x3fbe
movq 0x9ffd(%rip), %rbx      # 0xdff8
movq (%rbx), %rcx
movq 0x18(%rbx), %rdx
vmovdqu 0x8(%rbx), %xmm10
vmovq %rdx, %xmm11
vmovq %rcx, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm11
vpinsrq $0x1, %rcx, %xmm11, %xmm12
vpunpckhqdq %xmm11, %xmm10, %xmm13 # xmm13 = xmm10[1],xmm11[1]
vpaddq %xmm13, %xmm12, %xmm12
vpaddq 0x7fcd(%rip), %xmm12, %xmm12 # 0xc000
vprolvq 0x7fd3(%rip), %xmm12, %xmm12 # 0xc010
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpinsrq $0x0, %rdx, %xmm13, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq 0x7fcb(%rip), %xmm10, %xmm10 # 0xc020
vprolvq 0x7fd1(%rip), %xmm10, %xmm10 # 0xc030
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpaddq 0x8063(%rip), %ymm10, %ymm10 # 0xc0e0
vmovdqu %ymm10, (%rbx)
movq %r11, %rax
xorl %r14d, %r14d
movabsq $-0x2e333536393a3c48, %rbp # imm = 0xD1CCCAC9C6C5C3B8
movq (%rbx,%r14), %rcx
movq 0x8(%rbx,%r14), %rdx
movq 0x10(%rbx,%r14), %rsi
movq 0x18(%rbx,%r14), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
movabsq $-0xf171b1d1e272b2e, %r10 # imm = 0xF0E8E4E2E1D8D4D2
addq %r10, %rsi
addq %r8, %rsi
rorxq $0x39, %rsi, %r10
addq %rbp, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %r15
movabsq $-0x4b4d4e535556595b, %rsi # imm = 0xB4B2B1ACAAA9A6A5
addq %rsi, %rcx
addq %r9, %rcx
rorxq $0x21, %rcx, %rdi
movabsq $-0x5c636566696a6c72, %rcx # imm = 0xA39C9A999695938E
addq %rcx, %rdx
addq %r9, %rdx
rorxq $0xb, %rdx, %rcx
movq %r10, %rsi
xorq %r15, %rsi
movq %rdi, %rdx
xorq %rcx, %rdx
xorq %rsi, %rcx
xorq %rdi, %rsi
xorq %rdx, %r15
xorq %r10, %rdx
movq 0x20(%rbx,%r14), %rdi
movq 0x28(%rbx,%r14), %r8
movq 0x30(%rbx,%r14), %r9
movq 0x38(%rbx,%r14), %r10
leaq (%r10,%r9), %r11
leaq (%r8,%rdi), %r12
movabsq $-0x727478878b8d8e94, %r13 # imm = 0x8D8B87787472716C
addq %r13, %rdi
addq %r11, %rdi
rorxq $0x35, %rdi, %r13
movabsq $0x6a696665635c5a59, %rdi # imm = 0x6A696665635C5A59
addq %rdi, %r8
addq %r11, %r8
rorxq $0x29, %r8, %rdi
movabsq $0x5655534e4d4b473c, %r8 # imm = 0x5655534E4D4B473C
addq %r8, %r9
addq %r12, %r9
rorxq $0x1b, %r9, %r8
movabsq $0x3a393635332e2d2b, %r9 # imm = 0x3A393635332E2D2B
addq %r9, %r10
addq %r12, %r10
rorxq $0x5, %r10, %r9
movq %r8, %r10
xorq %r9, %r10
movq %r13, %r11
xorq %rdi, %r11
xorq %r10, %rdi
xorq %r13, %r10
xorq %r11, %r9
xorq %r8, %r11
movq %rcx, (%rax,%r14)
movq %rsi, 0x8(%rax,%r14)
addq %rsi, %r10
movq %r10, 0x20(%rbx,%r14)
movq %r15, 0x10(%rax,%r14)
addq %r15, %r9
movq %r9, 0x28(%rbx,%r14)
movq %rdx, 0x18(%rax,%r14)
addq %rdx, %r11
movq %r11, 0x30(%rbx,%r14)
addq %rcx, %rdi
movq %rdi, 0x38(%rbx,%r14)
addq $0x20, %r14
cmpq $0x60, %r14
jne 0x4091
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm10
vmovq %r8, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r9, %xmm11
vmovq %rsi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq 0x7e1e(%rip), %xmm12, %xmm12 # 0xc040
vprolvq 0x7e24(%rip), %xmm12, %xmm12 # 0xc050
vpinsrq $0x1, %rdx, %xmm10, %xmm10
vpinsrq $0x0, %rdi, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq 0x7e1b(%rip), %xmm10, %xmm10 # 0xc060
vprolvq 0x7e21(%rip), %xmm10, %xmm10 # 0xc070
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpermq $0x93, %ymm10, %ymm11   # ymm11 = ymm10[3,0,1,2]
vmovdqu %ymm11, 0x60(%rax)
vpaddq 0x7e88(%rip), %ymm10, %ymm10 # 0xc100
vmovdqu %ymm10, 0x60(%rbx)
movl $0x78, %ecx
movq %rax, %r14
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm10
vmovq %r10, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r9, %xmm11
vmovq %rdi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq %xmm1, %xmm12, %xmm12
vprolvq %xmm2, %xmm12, %xmm12
vpinsrq $0x1, %rsi, %xmm10, %xmm10
vpinsrq $0x0, %r8, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq %xmm3, %xmm10, %xmm10
vprolvq %xmm4, %xmm10, %xmm10
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm13   # ymm13 = ymm11[0,1,1,0]
vpblendd $0xc, %xmm10, %xmm12, %xmm14 # xmm14 = xmm12[0,1],xmm10[2,3]
vpalignr $0x8, %xmm12, %xmm10, %xmm10 # xmm10 = xmm12[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vpxor %xmm10, %xmm11, %xmm11
vextracti128 $0x1, %ymm13, %xmm12
vpxor %xmm14, %xmm12, %xmm12
vpalignr $0x8, %xmm12, %xmm11, %xmm15 # xmm15 = xmm12[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm15, -0x18(%r14,%rcx)
vinserti128 $0x1, %xmm14, %ymm10, %ymm10
vpalignr $0x8, %xmm11, %xmm12, %xmm11 # xmm11 = xmm11[8,9,10,11,12,13,14,15],xmm12[0,1,2,3,4,5,6,7]
vmovdqa %xmm11, -0x8(%r14,%rcx)
vpermq $0x39, -0x38(%r14,%rcx), %ymm11 # ymm11 = mem[1,2,3,0]
vpxor %ymm10, %ymm13, %ymm10
vpaddq %ymm10, %ymm11, %ymm10
vmovdqu %ymm10, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x4285
movq (%rbx), %rcx
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rsi
movq 0x18(%rbx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm10
vmovq %r9, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r8, %xmm11
vmovq %rsi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq 0x7c69(%rip), %xmm12, %xmm12 # 0xc000
vprolvq 0x7c6f(%rip), %xmm12, %xmm12 # 0xc010
vpinsrq $0x1, %rdx, %xmm10, %xmm10
vpinsrq $0x0, %rdi, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq 0x7c66(%rip), %xmm10, %xmm10 # 0xc020
vprolvq 0x7c6c(%rip), %xmm10, %xmm10 # 0xc030
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpermq $0xe9, %ymm10, %ymm11   # ymm11 = ymm10[1,2,2,3]
vpermq $0xe3, %ymm10, %ymm12   # ymm12 = ymm10[3,0,2,3]
vmovdqa %xmm12, (%r14)
vmovdqa %xmm11, 0x10(%r14)
vpaddq 0x7d27(%rip), %ymm10, %ymm10 # 0xc120
vmovdqu %ymm10, (%rbx)
movl $0x20, %ecx
movq 0x38(%rsp), %r15
movq -0x20(%rbx,%rcx), %rdx
movq -0x18(%rbx,%rcx), %rsi
movq -0x10(%rbx,%rcx), %rdi
movq -0x8(%rbx,%rcx), %r8
leaq (%rsi,%rdx), %r9
leaq (%r8,%rdi), %r10
vmovq %rdx, %xmm10
vmovq %r9, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r10, %xmm11
vmovq %rdi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq %xmm5, %xmm12, %xmm12
vprolvq %xmm6, %xmm12, %xmm12
vpinsrq $0x1, %rsi, %xmm10, %xmm10
vpinsrq $0x0, %r8, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq %xmm7, %xmm10, %xmm10
vprolvq %xmm8, %xmm10, %xmm10
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpermq $0x93, %ymm10, %ymm11   # ymm11 = ymm10[3,0,1,2]
vmovdqu %ymm11, -0x20(%r14,%rcx)
vpermq $0x39, (%r14,%rcx), %ymm11 # ymm11 = mem[1,2,3,0]
vpaddq %ymm10, %ymm11, %ymm10
vmovdqu %ymm10, (%rbx,%rcx)
addq $0x20, %rcx
cmpq $0x80, %rcx
jne 0x4407
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm10
vmovq %r8, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r9, %xmm11
vmovq %rsi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq 0x7b4d(%rip), %xmm12, %xmm12 # 0xc040
vprolvq 0x7b53(%rip), %xmm12, %xmm12 # 0xc050
vpinsrq $0x1, %rdx, %xmm10, %xmm10
vpinsrq $0x0, %rdi, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq 0x7b4a(%rip), %xmm10, %xmm10 # 0xc060
vprolvq 0x7b50(%rip), %xmm10, %xmm10 # 0xc070
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpermq $0x93, %ymm10, %ymm11   # ymm11 = ymm10[3,0,1,2]
vmovdqu %ymm11, 0x60(%r14)
vpaddq 0x7bf6(%rip), %ymm10, %ymm10 # 0xc140
vmovdqu %ymm10, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm10
vmovq %r10, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r9, %xmm11
vmovq %rdi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq %xmm1, %xmm12, %xmm12
vprolvq %xmm2, %xmm12, %xmm12
vpinsrq $0x1, %rsi, %xmm10, %xmm10
vpinsrq $0x0, %r8, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq %xmm3, %xmm10, %xmm10
vprolvq %xmm4, %xmm10, %xmm10
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm13   # ymm13 = ymm11[0,1,1,0]
vpblendd $0xc, %xmm10, %xmm12, %xmm14 # xmm14 = xmm12[0,1],xmm10[2,3]
vpalignr $0x8, %xmm12, %xmm10, %xmm10 # xmm10 = xmm12[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vpxor %xmm10, %xmm11, %xmm11
vextracti128 $0x1, %ymm13, %xmm12
vpxor %xmm14, %xmm12, %xmm12
vpalignr $0x8, %xmm12, %xmm11, %xmm15 # xmm15 = xmm12[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm15, -0x18(%r14,%rcx)
vinserti128 $0x1, %xmm14, %ymm10, %ymm10
vpalignr $0x8, %xmm11, %xmm12, %xmm11 # xmm11 = xmm11[8,9,10,11,12,13,14,15],xmm12[0,1,2,3,4,5,6,7]
vmovdqa %xmm11, -0x8(%r14,%rcx)
vpermq $0x39, -0x38(%r14,%rcx), %ymm11 # ymm11 = mem[1,2,3,0]
vpxor %ymm10, %ymm13, %ymm10
vpaddq %ymm10, %ymm11, %ymm10
vmovdqu %ymm10, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x4554
vmovdqu (%rbx), %ymm10
vmovdqu 0x20(%rbx), %ymm11
vmovdqu 0x40(%rbx), %ymm12
vmovdqu 0x60(%rbx), %ymm13
vmovdqu %ymm13, 0xb0(%rsp)
vmovdqu %ymm12, 0x90(%rsp)
vmovdqu %ymm11, 0x70(%rsp)
vmovdqu %ymm10, 0x50(%rsp)
xorl %ecx, %ecx
vmovdqu (%rbx,%rcx,2), %ymm10
vpaddq 0xe0(%rsp,%rcx), %ymm10, %ymm10
vmovdqu %ymm10, 0xe0(%rsp,%rcx)
addq $0x20, %rcx
cmpq $0x20, %rcx
je 0x4657
cmpq $0x40, %r15
jae 0x4685
xorl %ecx, %ecx
jmp 0x53e4
movq %r15, %rax
shrq $0x6, %rax
movq %rax, 0x18(%rsp)
movq 0x20(%rsp), %rax
addq $0x40, %rax
movq %rax, 0x30(%rsp)
vmovdqa64 0x79d7(%rip), %xmm22 # 0xc080
vpmovsxbq 0x7ae5(%rip), %xmm23 # 0xc198
vmovdqa64 0x79e3(%rip), %xmm24 # 0xc0a0
vpmovsxbq 0x7ad3(%rip), %xmm25 # 0xc19a
vmovdqa 0x7a11(%rip), %ymm14    # 0xc0e0
vmovdqa 0x7a29(%rip), %ymm15    # 0xc100
xorl %ebp, %ebp
vmovdqa64 0x7a3d(%rip), %ymm16 # 0xc120
vmovdqa64 0x7a53(%rip), %ymm17 # 0xc140
xorl %eax, %eax
movq %rax, 0x10(%rsp)
vmovups 0x50(%rsp), %ymm18
vmovups 0x70(%rsp), %ymm19
vmovups 0x90(%rsp), %ymm20
vmovups 0xb0(%rsp), %ymm21
vmovups %ymm18, (%rbx)
vmovups %ymm21, 0x60(%rbx)
vmovups %ymm20, 0x40(%rbx)
vmovups %ymm19, 0x20(%rbx)
movq 0x8(%rsp), %rax
incq %rax
movq 0x18(%rbx), %rcx
movq (%rbx), %rdx
movq %rax, 0x8(%rsp)
xorq %rax, %rdx
movq %rdx, (%rbx)
vmovdqu64 0x8(%rbx), %xmm18
vmovq %rdx, %xmm19
vpinsrq $0x1, %rcx, %xmm19, %xmm20
vpaddq %xmm20, %xmm18, %xmm20
vpunpcklqdq %xmm20, %xmm19, %xmm19 # xmm19 = xmm19[0],xmm20[0]
vpunpckhqdq %xmm18, %xmm20, %xmm21 # xmm21 = xmm20[1],xmm18[1]
vpaddq %xmm21, %xmm19, %xmm19
vpaddq %xmm22, %xmm19, %xmm19
vprolvq %xmm23, %xmm19, %xmm19
vpinsrq $0x1, %rcx, %xmm21, %xmm21
vpunpcklqdq %xmm20, %xmm18, %xmm18 # xmm18 = xmm18[0],xmm20[0]
vpaddq %xmm21, %xmm18, %xmm18
vpaddq %xmm24, %xmm18, %xmm18
vprolvq %xmm25, %xmm18, %xmm18
vpxorq %xmm18, %xmm19, %xmm20
vpermq $0x41, %ymm20, %ymm20   # ymm20 = ymm20[1,0,0,1]
vpermt2q %ymm18, %ymm26, %ymm19
vpxorq %ymm19, %ymm20, %ymm18
vpaddq %ymm14, %ymm18, %ymm18
vmovdqu64 %ymm18, (%rbx)
movq %r14, %rax
xorl %r14d, %r14d
movq (%rbx,%r14), %rcx
movq 0x8(%rbx,%r14), %rdx
movq 0x10(%rbx,%r14), %rsi
movq 0x18(%rbx,%r14), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
movabsq $-0xf171b1d1e272b2e, %r10 # imm = 0xF0E8E4E2E1D8D4D2
addq %r10, %rsi
addq %r8, %rsi
rorxq $0x39, %rsi, %r10
movabsq $-0x2e333536393a3c48, %rsi # imm = 0xD1CCCAC9C6C5C3B8
addq %rsi, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %r15
movabsq $-0x4b4d4e535556595b, %rsi # imm = 0xB4B2B1ACAAA9A6A5
addq %rsi, %rcx
addq %r9, %rcx
rorxq $0x21, %rcx, %rdi
movabsq $-0x5c636566696a6c72, %rcx # imm = 0xA39C9A999695938E
addq %rcx, %rdx
addq %r9, %rdx
rorxq $0xb, %rdx, %rcx
movq %r10, %rsi
xorq %r15, %rsi
movq %rdi, %rdx
xorq %rcx, %rdx
xorq %rsi, %rcx
xorq %rdi, %rsi
xorq %rdx, %r15
xorq %r10, %rdx
movq 0x20(%rbx,%r14), %rdi
movq 0x28(%rbx,%r14), %r8
movq 0x30(%rbx,%r14), %r9
movq 0x38(%rbx,%r14), %r10
leaq (%r10,%r9), %r11
leaq (%r8,%rdi), %r12
movabsq $-0x727478878b8d8e94, %r13 # imm = 0x8D8B87787472716C
addq %r13, %rdi
addq %r11, %rdi
rorxq $0x35, %rdi, %r13
movabsq $0x6a696665635c5a59, %rdi # imm = 0x6A696665635C5A59
addq %rdi, %r8
addq %r11, %r8
rorxq $0x29, %r8, %rdi
movabsq $0x5655534e4d4b473c, %r8 # imm = 0x5655534E4D4B473C
addq %r8, %r9
addq %r12, %r9
rorxq $0x1b, %r9, %r8
movabsq $0x3a393635332e2d2b, %r9 # imm = 0x3A393635332E2D2B
addq %r9, %r10
addq %r12, %r10
rorxq $0x5, %r10, %r9
movq %r8, %r10
xorq %r9, %r10
movq %r13, %r11
xorq %rdi, %r11
xorq %r10, %rdi
xorq %r13, %r10
xorq %r11, %r9
xorq %r8, %r11
movq %rcx, (%rax,%r14)
movq %rsi, 0x8(%rax,%r14)
addq %rsi, %r10
movq %r10, 0x20(%rbx,%r14)
movq %r15, 0x10(%rax,%r14)
addq %r15, %r9
movq %r9, 0x28(%rbx,%r14)
movq %rdx, 0x18(%rax,%r14)
addq %rdx, %r11
movq %r11, 0x30(%rbx,%r14)
addq %rcx, %rdi
movq %rdi, 0x38(%rbx,%r14)
addq $0x20, %r14
cmpq $0x60, %r14
jne 0x47da
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm18
vmovq %r8, %xmm19
vpunpcklqdq %xmm18, %xmm19, %xmm18 # xmm18 = xmm19[0],xmm18[0]
vmovq %r9, %xmm19
vmovq %rsi, %xmm20
vpunpcklqdq %xmm19, %xmm20, %xmm19 # xmm19 = xmm20[0],xmm19[0]
vpaddq %xmm19, %xmm18, %xmm20
vpaddq %xmm5, %xmm20, %xmm20
vprolvq %xmm6, %xmm20, %xmm20
vpinsrq $0x1, %rdx, %xmm18, %xmm18
vpinsrq $0x0, %rdi, %xmm19, %xmm19
vpaddq %xmm19, %xmm18, %xmm18
vpaddq %xmm7, %xmm18, %xmm18
vprolvq %xmm8, %xmm18, %xmm18
vpxorq %xmm18, %xmm20, %xmm19
vpermq $0x14, %ymm19, %ymm19   # ymm19 = ymm19[0,1,1,0]
vpermt2q %ymm18, %ymm0, %ymm20
vpxorq %ymm20, %ymm19, %ymm18
vpermq $0x93, %ymm18, %ymm19   # ymm19 = ymm18[3,0,1,2]
vmovdqu64 %ymm19, 0x60(%rax)
vpaddq %ymm15, %ymm18, %ymm18
vmovdqu64 %ymm18, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm18
vmovq %r10, %xmm19
vpunpcklqdq %xmm18, %xmm19, %xmm18 # xmm18 = xmm19[0],xmm18[0]
vmovq %r9, %xmm19
vmovq %rdi, %xmm20
vpunpcklqdq %xmm19, %xmm20, %xmm19 # xmm19 = xmm20[0],xmm19[0]
vpaddq %xmm19, %xmm18, %xmm20
vpaddq %xmm1, %xmm20, %xmm20
vprolvq %xmm2, %xmm20, %xmm10
vpinsrq $0x1, %rsi, %xmm18, %xmm18
vpinsrq $0x0, %r8, %xmm19, %xmm19
vpaddq %xmm19, %xmm18, %xmm18
vpaddq %xmm3, %xmm18, %xmm18
vprolvq %xmm4, %xmm18, %xmm11
vpxorq %xmm11, %xmm10, %xmm18
vpermq $0x14, %ymm18, %ymm19   # ymm19 = ymm18[0,1,1,0]
vpblendd $0xc, %xmm11, %xmm10, %xmm12 # xmm12 = xmm10[0,1],xmm11[2,3]
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vpxorq %xmm10, %xmm18, %xmm11
vextracti32x4 $0x1, %ymm19, %xmm18
vpxorq %xmm12, %xmm18, %xmm18
valignq $0x1, %xmm18, %xmm11, %xmm20 # xmm20 = xmm18[1],xmm11[0]
vmovdqa64 %xmm20, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm12, %ymm10, %ymm10
valignq $0x1, %xmm11, %xmm18, %xmm11 # xmm11 = xmm11[1],xmm18[0]
vmovdqa %xmm11, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm11 # ymm11 = mem[1,2,3,0]
vpxorq %ymm10, %ymm19, %ymm10
vpaddq %ymm10, %ymm11, %ymm10
vmovdqu %ymm10, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x49d9
movq (%rbx), %rcx
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rsi
movq 0x18(%rbx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm10
vmovq %r9, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r8, %xmm11
vmovq %rsi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq %xmm1, %xmm12, %xmm12
vpinsrq $0x1, %rdx, %xmm10, %xmm10
vpinsrq $0x0, %rdi, %xmm11, %xmm11
vprolvq %xmm2, %xmm12, %xmm12
vpaddq %xmm11, %xmm10, %xmm10
vpaddq %xmm3, %xmm10, %xmm10
vprolvq %xmm4, %xmm10, %xmm10
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpermq $0xe9, %ymm10, %ymm11   # ymm11 = ymm10[1,2,2,3]
vpermq $0xe3, %ymm10, %ymm12   # ymm12 = ymm10[3,0,2,3]
vmovdqa %xmm12, (%rax)
vmovdqa %xmm11, 0x10(%rax)
vpaddq %ymm16, %ymm10, %ymm10
vmovdqu %ymm10, (%rbx)
movl $0x20, %ecx
movq -0x20(%rbx,%rcx), %rdx
movq -0x18(%rbx,%rcx), %rsi
movq -0x10(%rbx,%rcx), %rdi
movq -0x8(%rbx,%rcx), %r8
leaq (%rsi,%rdx), %r9
leaq (%r8,%rdi), %r10
vmovq %rdx, %xmm10
vmovq %r9, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r10, %xmm11
vmovq %rdi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq %xmm5, %xmm12, %xmm12
vprolvq %xmm6, %xmm12, %xmm12
vpinsrq $0x1, %rsi, %xmm10, %xmm10
vpinsrq $0x0, %r8, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq %xmm7, %xmm10, %xmm10
vprolvq %xmm8, %xmm10, %xmm10
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpermq $0x93, %ymm10, %ymm11   # ymm11 = ymm10[3,0,1,2]
vmovdqu %ymm11, -0x20(%rax,%rcx)
vpermq $0x39, (%rax,%rcx), %ymm11 # ymm11 = mem[1,2,3,0]
vpaddq %ymm10, %ymm11, %ymm10
vmovdqu %ymm10, (%rbx,%rcx)
addq $0x20, %rcx
cmpq $0x80, %rcx
jne 0x4b5b
movq 0x60(%rbx), %rcx
movq 0x68(%rbx), %rdx
movq 0x70(%rbx), %rsi
movq 0x78(%rbx), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm10
vmovq %r8, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r9, %xmm11
vmovq %rsi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq %xmm5, %xmm12, %xmm12
vprolvq %xmm6, %xmm12, %xmm12
vpinsrq $0x1, %rdx, %xmm10, %xmm10
vpinsrq $0x0, %rdi, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq %xmm7, %xmm10, %xmm10
vprolvq %xmm8, %xmm10, %xmm10
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpermq $0x93, %ymm10, %ymm11   # ymm11 = ymm10[3,0,1,2]
vmovdqu %ymm11, 0x60(%rax)
vpaddq %ymm17, %ymm10, %ymm10
vmovdqu %ymm10, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
movq (%rbx,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm10
vmovq %r10, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r9, %xmm11
vmovq %rdi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq %xmm1, %xmm12, %xmm12
vprolvq %xmm2, %xmm12, %xmm12
vpinsrq $0x1, %rsi, %xmm10, %xmm10
vpinsrq $0x0, %r8, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq %xmm3, %xmm10, %xmm10
vprolvq %xmm4, %xmm10, %xmm10
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm18   # ymm18 = ymm11[0,1,1,0]
vpblendd $0xc, %xmm10, %xmm12, %xmm13 # xmm13 = xmm12[0,1],xmm10[2,3]
vpalignr $0x8, %xmm12, %xmm10, %xmm10 # xmm10 = xmm12[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vpxor %xmm10, %xmm11, %xmm11
vextracti32x4 $0x1, %ymm18, %xmm12
vpxor %xmm13, %xmm12, %xmm12
valignq $0x1, %xmm12, %xmm11, %xmm19 # xmm19 = xmm12[1],xmm11[0]
vmovdqa64 %xmm19, -0x18(%rax,%rcx)
vinserti128 $0x1, %xmm13, %ymm10, %ymm10
vpalignr $0x8, %xmm11, %xmm12, %xmm11 # xmm11 = xmm11[8,9,10,11,12,13,14,15],xmm12[0,1,2,3,4,5,6,7]
vmovdqa %xmm11, -0x8(%rax,%rcx)
vpermq $0x39, -0x38(%rax,%rcx), %ymm11 # ymm11 = mem[1,2,3,0]
vpxorq %ymm10, %ymm18, %ymm10
vpaddq %ymm10, %ymm11, %ymm10
vmovdqu %ymm10, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x4c94
movq %rbx, %rcx
xorl %edx, %edx
movq 0x48(%rsp), %rax
movq 0x30(%rsp), %r9
movq %rbp, %r10
leaq (%rax,%rbp,8), %rsi
leaq (%r9,%rbp,8), %rdi
xorl %r12d, %r12d
movq (%rsi,%r12), %r8
xorq (%rcx,%r12), %r8
movq %r8, (%rcx,%r12)
movq %r8, (%rdi,%r12)
incq %rbp
addq $0x8, %r12
cmpq $0x20, %r12
jne 0x4d88
leaq 0x2(%rdx), %rsi
addq $0x40, %rcx
testq %rdx, %rdx
movq %rsi, %rdx
je 0x4d7a
movq %r10, 0x40(%rsp)
movq (%rbx), %rcx
movq 0x18(%rbx), %rdx
vmovdqu 0x8(%rbx), %xmm10
vmovq %rdx, %xmm11
vmovq %rcx, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm11
vpinsrq $0x1, %rcx, %xmm11, %xmm12
vpunpckhqdq %xmm11, %xmm10, %xmm13 # xmm13 = xmm10[1],xmm11[1]
vpaddq %xmm13, %xmm12, %xmm12
vpaddq %xmm1, %xmm12, %xmm12
vprolvq %xmm2, %xmm12, %xmm12
vpinsrq $0x0, %rdx, %xmm13, %xmm13
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm13, %xmm10, %xmm10
vpaddq %xmm3, %xmm10, %xmm10
vprolvq %xmm4, %xmm10, %xmm10
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpaddq %ymm14, %ymm10, %ymm10
vmovdqu %ymm10, (%rbx)
xorl %r15d, %r15d
movq (%rbx,%r15), %rdx
movq 0x8(%rbx,%r15), %rsi
movq 0x10(%rbx,%r15), %rcx
movq 0x18(%rbx,%r15), %rdi
leaq (%rsi,%rdx), %r8
leaq (%rdi,%rcx), %r9
movabsq $-0xf171b1d1e272b2e, %rax # imm = 0xF0E8E4E2E1D8D4D2
addq %rax, %rcx
addq %r8, %rcx
rorxq $0x39, %rcx, %r10
movabsq $-0x2e333536393a3c48, %rax # imm = 0xD1CCCAC9C6C5C3B8
addq %rax, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %rcx
movabsq $-0x4b4d4e535556595b, %rax # imm = 0xB4B2B1ACAAA9A6A5
addq %rax, %rdx
addq %r9, %rdx
rorxq $0x21, %rdx, %r8
movabsq $-0x5c636566696a6c72, %rax # imm = 0xA39C9A999695938E
addq %rax, %rsi
addq %r9, %rsi
rorxq $0xb, %rsi, %rdx
movq %r10, %rdi
xorq %rcx, %rdi
movq %r8, %rsi
xorq %rdx, %rsi
xorq %rdi, %rdx
xorq %r8, %rdi
xorq %rsi, %rcx
xorq %r10, %rsi
movq 0x20(%rbx,%r15), %r8
movq 0x28(%rbx,%r15), %r9
movq 0x30(%rbx,%r15), %r10
movq 0x38(%rbx,%r15), %r11
leaq (%r11,%r10), %r13
leaq (%r9,%r8), %rax
movabsq $-0x727478878b8d8e94, %r14 # imm = 0x8D8B87787472716C
addq %r14, %r8
addq %r13, %r8
rorxq $0x35, %r8, %r14
movabsq $0x6a696665635c5a59, %r8 # imm = 0x6A696665635C5A59
addq %r8, %r9
addq %r13, %r9
rorxq $0x29, %r9, %r8
movabsq $0x5655534e4d4b473c, %r9 # imm = 0x5655534E4D4B473C
addq %r9, %r10
addq %rax, %r10
rorxq $0x1b, %r10, %r9
movabsq $0x3a393635332e2d2b, %r10 # imm = 0x3A393635332E2D2B
addq %r10, %r11
addq %rax, %r11
rorxq $0x5, %r11, %rax
movq %r9, %r10
xorq %rax, %r10
movq %r14, %r11
xorq %r8, %r11
xorq %r10, %r8
xorq %r14, %r10
movq 0x90a8(%rip), %r14      # 0xdff0
xorq %r11, %rax
xorq %r9, %r11
movq %rdx, (%r14,%r15)
movq %rdi, 0x8(%r14,%r15)
addq %rdi, %r10
movq %r10, 0x20(%rbx,%r15)
movq %rcx, 0x10(%r14,%r15)
addq %rcx, %rax
movq %rax, 0x28(%rbx,%r15)
movq %rsi, 0x18(%r14,%r15)
addq %rsi, %r11
movq %r11, 0x30(%rbx,%r15)
addq %rdx, %r8
movq %r8, 0x38(%rbx,%r15)
addq $0x20, %r15
cmpq $0x60, %r15
jne 0x4e30
movq 0x60(%rbx), %rax
movq 0x68(%rbx), %rcx
movq 0x70(%rbx), %rdx
movq 0x78(%rbx), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm10
vmovq %rdi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r8, %xmm11
vmovq %rdx, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq %xmm5, %xmm12, %xmm12
vprolvq %xmm6, %xmm12, %xmm12
vpinsrq $0x1, %rcx, %xmm10, %xmm10
vpinsrq $0x0, %rsi, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq %xmm7, %xmm10, %xmm10
vprolvq %xmm8, %xmm10, %xmm10
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm11   # ymm11 = ymm11[0,1,1,0]
vpermt2q %ymm10, %ymm0, %ymm12
vpxor %ymm12, %ymm11, %ymm10
vpermq $0x93, %ymm10, %ymm11   # ymm11 = ymm10[3,0,1,2]
vmovdqu %ymm11, 0x60(%r14)
vpaddq %ymm15, %ymm10, %ymm10
vmovdqu %ymm10, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rax
movq -0x10(%rbx,%rcx), %rdx
movq -0x8(%rbx,%rcx), %rsi
movq (%rbx,%rcx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rax), %r9
vmovq %rax, %xmm10
vmovq %r9, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vmovq %r8, %xmm11
vmovq %rsi, %xmm12
vpunpcklqdq %xmm11, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm11[0]
vpaddq %xmm11, %xmm10, %xmm12
vpaddq %xmm1, %xmm12, %xmm12
vprolvq %xmm2, %xmm12, %xmm12
vpinsrq $0x1, %rdx, %xmm10, %xmm10
vpinsrq $0x0, %rdi, %xmm11, %xmm11
vpaddq %xmm11, %xmm10, %xmm10
vpaddq %xmm3, %xmm10, %xmm10
vprolvq %xmm4, %xmm10, %xmm10
vpxor %xmm10, %xmm12, %xmm11
vpermq $0x14, %ymm11, %ymm13   # ymm13 = ymm11[0,1,1,0]
vpblendd $0xc, %xmm10, %xmm12, %xmm9 # xmm9 = xmm12[0,1],xmm10[2,3]
vpalignr $0x8, %xmm12, %xmm10, %xmm10 # xmm10 = xmm12[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vpxor %xmm10, %xmm11, %xmm11
vextracti128 $0x1, %ymm13, %xmm12
vpxor %xmm9, %xmm12, %xmm12
valignq $0x1, %xmm12, %xmm11, %xmm18 # xmm18 = xmm12[1],xmm11[0]
vmovdqa64 %xmm18, -0x18(%r14,%rcx)
vinserti128 $0x1, %xmm9, %ymm10, %ymm9
vpalignr $0x8, %xmm11, %xmm12, %xmm10 # xmm10 = xmm11[8,9,10,11,12,13,14,15],xmm12[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%r14,%rcx)
vpermq $0x39, -0x38(%r14,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm13, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x5020
movq (%rbx), %rax
movq 0x8(%rbx), %rcx
movq 0x10(%rbx), %rdx
movq 0x18(%rbx), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
vmovq %rax, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %rdi, %xmm10
vmovq %rdx, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vpinsrq $0x1, %rcx, %xmm9, %xmm9
vpinsrq $0x0, %rsi, %xmm10, %xmm10
vprolvq %xmm2, %xmm11, %xmm11
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0xe9, %ymm9, %ymm10    # ymm10 = ymm9[1,2,2,3]
vpermq $0xe3, %ymm9, %ymm11    # ymm11 = ymm9[3,0,2,3]
vmovdqa %xmm11, (%r14)
vmovdqa %xmm10, 0x10(%r14)
vpaddq %ymm16, %ymm9, %ymm9
vmovdqu %ymm9, (%rbx)
movl $0x20, %ecx
movq -0x20(%rbx,%rcx), %rax
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
leaq (%rdx,%rax), %r8
leaq (%rdi,%rsi), %r9
vmovq %rax, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm5, %xmm11, %xmm11
vprolvq %xmm6, %xmm11, %xmm11
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm7, %xmm9, %xmm9
vprolvq %xmm8, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, -0x20(%r14,%rcx)
vpermq $0x39, (%r14,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, (%rbx,%rcx)
addq $0x20, %rcx
cmpq $0x80, %rcx
jne 0x5190
movq 0x60(%rbx), %rax
movq 0x68(%rbx), %rcx
movq 0x70(%rbx), %rdx
movq 0x78(%rbx), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm9
vmovq %rdi, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r8, %xmm10
vmovq %rdx, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm5, %xmm11, %xmm11
vprolvq %xmm6, %xmm11, %xmm11
vpinsrq $0x1, %rcx, %xmm9, %xmm9
vpinsrq $0x0, %rsi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm7, %xmm9, %xmm9
vprolvq %xmm8, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%r14)
vpaddq %ymm17, %ymm9, %ymm9
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rax
movq -0x10(%rbx,%rcx), %rdx
movq -0x8(%rbx,%rcx), %rsi
movq (%rbx,%rcx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rax), %r9
vmovq %rax, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r8, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm12   # ymm12 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm13 # xmm13 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti128 $0x1, %ymm12, %xmm11
vpxor %xmm13, %xmm11, %xmm11
valignq $0x1, %xmm11, %xmm10, %xmm18 # xmm18 = xmm11[1],xmm10[0]
vmovdqa64 %xmm18, -0x18(%r14,%rcx)
vinserti128 $0x1, %xmm13, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%r14,%rcx)
vpermq $0x39, -0x38(%r14,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm12, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x52cb
xorl %ecx, %ecx
vmovdqu (%rbx,%rcx,2), %ymm9
vpaddq 0xe0(%rsp,%rcx), %ymm9, %ymm9
vmovdqu %ymm9, 0xe0(%rsp,%rcx)
addq $0x20, %rcx
cmpq $0x20, %rcx
je 0x53a2
movq 0x10(%rsp), %rax
incq %rax
cmpq 0x18(%rsp), %rax
jne 0x46ef
movq 0x40(%rsp), %rax
leaq (%r12,%rax,8), %rcx
movq 0x38(%rsp), %r15
movq %r15, %rax
andq $0x3f, %rax
je 0x60eb
movq %rcx, 0x18(%rsp)
movq %rax, 0x10(%rsp)
vmovups 0x50(%rsp), %ymm9
vmovups 0x70(%rsp), %ymm10
vmovups 0x90(%rsp), %ymm11
vmovups 0xb0(%rsp), %ymm12
movq 0x8bd8(%rip), %rbx      # 0xdff8
vmovups %ymm9, (%rbx)
vmovups %ymm12, 0x60(%rbx)
vmovups %ymm11, 0x40(%rbx)
vmovups %ymm10, 0x20(%rbx)
movq 0x8(%rsp), %rcx
incq %rcx
movq 0x18(%rbx), %rax
xorq (%rbx), %rcx
movq %rcx, (%rbx)
vmovdqu 0x8(%rbx), %xmm9
vmovq %rcx, %xmm10
vpinsrq $0x1, %rax, %xmm10, %xmm11
vpaddq %xmm11, %xmm9, %xmm11
vpunpcklqdq %xmm11, %xmm10, %xmm10 # xmm10 = xmm10[0],xmm11[0]
vpunpckhqdq %xmm9, %xmm11, %xmm12 # xmm12 = xmm11[1],xmm9[1]
vpaddq %xmm12, %xmm10, %xmm10
vpaddq 0x6c0f(%rip), %xmm10, %xmm10 # 0xc080
vprolvq 0x6c15(%rip), %xmm10, %xmm10 # 0xc090
vpunpcklqdq %xmm11, %xmm9, %xmm9 # xmm9 = xmm9[0],xmm11[0]
vpinsrq $0x1, %rax, %xmm12, %xmm11
vpaddq %xmm11, %xmm9, %xmm9
vpaddq 0x6c0d(%rip), %xmm9, %xmm9 # 0xc0a0
vprolvq 0x6c13(%rip), %xmm9, %xmm9 # 0xc0b0
vpxor %xmm9, %xmm10, %xmm11
vpermq $0x41, %ymm11, %ymm11   # ymm11 = ymm11[1,0,0,1]
vpermi2q %ymm9, %ymm10, %ymm26
vpxorq %ymm26, %ymm11, %ymm9
vpaddq 0x6c24(%rip), %ymm9, %ymm9 # 0xc0e0
vmovdqu %ymm9, (%rbx)
xorl %r12d, %r12d
movq 0x8b26(%rip), %rbp      # 0xdff0
movabsq $-0x2e333536393a3c48, %r14 # imm = 0xD1CCCAC9C6C5C3B8
movq (%rbx,%r12), %rax
movq 0x8(%rbx,%r12), %rdx
movq 0x10(%rbx,%r12), %rcx
movq 0x18(%rbx,%r12), %rsi
leaq (%rdx,%rax), %rdi
leaq (%rsi,%rcx), %r8
movabsq $-0xf171b1d1e272b2e, %r9 # imm = 0xF0E8E4E2E1D8D4D2
addq %r9, %rcx
addq %rdi, %rcx
rorxq $0x39, %rcx, %r9
addq %r14, %rsi
addq %rdi, %rsi
rorxq $0x2d, %rsi, %rcx
movabsq $-0x4b4d4e535556595b, %rsi # imm = 0xB4B2B1ACAAA9A6A5
addq %rsi, %rax
addq %r8, %rax
rorxq $0x21, %rax, %rax
movabsq $-0x5c636566696a6c72, %rsi # imm = 0xA39C9A999695938E
addq %rsi, %rdx
addq %r8, %rdx
rorxq $0xb, %rdx, %rdx
movq %r9, %rdi
xorq %rcx, %rdi
movq %rax, %rsi
xorq %rdx, %rsi
xorq %rdi, %rdx
xorq %rax, %rdi
xorq %rsi, %rcx
xorq %r9, %rsi
movq 0x20(%rbx,%r12), %rax
movq 0x28(%rbx,%r12), %r8
movq 0x30(%rbx,%r12), %r9
movq 0x38(%rbx,%r12), %r10
leaq (%r10,%r9), %r11
leaq (%r8,%rax), %r13
movabsq $-0x727478878b8d8e94, %r15 # imm = 0x8D8B87787472716C
addq %r15, %rax
addq %r11, %rax
rorxq $0x35, %rax, %rax
movabsq $0x6a696665635c5a59, %r15 # imm = 0x6A696665635C5A59
addq %r15, %r8
addq %r11, %r8
rorxq $0x29, %r8, %r8
movabsq $0x5655534e4d4b473c, %r11 # imm = 0x5655534E4D4B473C
addq %r11, %r9
addq %r13, %r9
rorxq $0x1b, %r9, %r9
movabsq $0x3a393635332e2d2b, %r11 # imm = 0x3A393635332E2D2B
addq %r11, %r10
addq %r13, %r10
rorxq $0x5, %r10, %r10
movq %r9, %r11
xorq %r10, %r11
movq %rax, %r13
xorq %r8, %r13
xorq %r11, %r8
xorq %rax, %r11
xorq %r13, %r10
xorq %r9, %r13
movq %rdx, (%rbp,%r12)
movq %rdi, 0x8(%rbp,%r12)
addq %rdi, %r11
movq %r11, 0x20(%rbx,%r12)
movq %rcx, 0x10(%rbp,%r12)
addq %rcx, %r10
movq %r10, 0x28(%rbx,%r12)
movq %rsi, 0x18(%rbp,%r12)
addq %rsi, %r13
movq %r13, 0x30(%rbx,%r12)
addq %rdx, %r8
movq %r8, 0x38(%rbx,%r12)
addq $0x20, %r12
cmpq $0x60, %r12
jne 0x54d4
movq 0x60(%rbx), %rax
movq 0x68(%rbx), %rcx
movq 0x70(%rbx), %rdx
movq 0x78(%rbx), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm9
vmovq %rdi, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r8, %xmm10
vmovq %rdx, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x69da(%rip), %xmm11, %xmm11 # 0xc040
vprolvq 0x69e0(%rip), %xmm11, %xmm11 # 0xc050
vpinsrq $0x1, %rcx, %xmm9, %xmm9
vpinsrq $0x0, %rsi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x69d7(%rip), %xmm9, %xmm9 # 0xc060
vprolvq 0x69dd(%rip), %xmm9, %xmm9 # 0xc070
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%rbp)
vpaddq 0x6a44(%rip), %ymm9, %ymm9 # 0xc100
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rax
movq -0x10(%rbx,%rcx), %rdx
movq -0x8(%rbx,%rcx), %rsi
movq (%rbx,%rcx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rax), %r9
vmovq %rax, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r8, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm12   # ymm12 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm13 # xmm13 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti128 $0x1, %ymm12, %xmm11
vpxor %xmm13, %xmm11, %xmm11
vpalignr $0x8, %xmm11, %xmm10, %xmm14 # xmm14 = xmm11[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vmovdqa %xmm14, -0x18(%rbp,%rcx)
vinserti128 $0x1, %xmm13, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%rbp,%rcx)
vpermq $0x39, -0x38(%rbp,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm12, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x56c6
movq (%rbx), %rax
movq 0x8(%rbx), %rcx
movq 0x10(%rbx), %rdx
movq 0x18(%rbx), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
vmovq %rax, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %rdi, %xmm10
vmovq %rdx, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x682a(%rip), %xmm11, %xmm11 # 0xc000
vprolvq 0x6830(%rip), %xmm11, %xmm11 # 0xc010
vpinsrq $0x1, %rcx, %xmm9, %xmm9
vpinsrq $0x0, %rsi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x6827(%rip), %xmm9, %xmm9 # 0xc020
vprolvq 0x682d(%rip), %xmm9, %xmm9 # 0xc030
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0xe9, %ymm9, %ymm10    # ymm10 = ymm9[1,2,2,3]
vpermq $0xe3, %ymm9, %ymm11    # ymm11 = ymm9[3,0,2,3]
vmovdqa %xmm11, (%rbp)
vmovdqa %xmm10, 0x10(%rbp)
vpaddq 0x68e9(%rip), %ymm9, %ymm9 # 0xc120
vmovdqu %ymm9, (%rbx)
movl $0x20, %ecx
movq -0x20(%rbx,%rcx), %rax
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
leaq (%rdx,%rax), %r8
leaq (%rdi,%rsi), %r9
vmovq %rax, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm5, %xmm11, %xmm11
vprolvq %xmm6, %xmm11, %xmm11
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm7, %xmm9, %xmm9
vprolvq %xmm8, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, -0x20(%rbp,%rcx)
vpermq $0x39, (%rbp,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, (%rbx,%rcx)
addq $0x20, %rcx
cmpq $0x80, %rcx
jne 0x5840
movq 0x60(%rbx), %rax
movq 0x68(%rbx), %rcx
movq 0x70(%rbx), %rdx
movq 0x78(%rbx), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm9
vmovq %rdi, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r8, %xmm10
vmovq %rdx, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x6714(%rip), %xmm11, %xmm11 # 0xc040
vprolvq 0x671a(%rip), %xmm11, %xmm11 # 0xc050
vpinsrq $0x1, %rcx, %xmm9, %xmm9
vpinsrq $0x0, %rsi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x6711(%rip), %xmm9, %xmm9 # 0xc060
vprolvq 0x6717(%rip), %xmm9, %xmm9 # 0xc070
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%rbp)
vpaddq 0x67be(%rip), %ymm9, %ymm9 # 0xc140
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rax
movq -0x10(%rbx,%rcx), %rdx
movq -0x8(%rbx,%rcx), %rsi
movq (%rbx,%rcx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rax), %r9
vmovq %rax, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r8, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm12   # ymm12 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm13 # xmm13 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti128 $0x1, %ymm12, %xmm11
vpxor %xmm13, %xmm11, %xmm11
vpalignr $0x8, %xmm11, %xmm10, %xmm14 # xmm14 = xmm11[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vmovdqa %xmm14, -0x18(%rbp,%rcx)
vinserti128 $0x1, %xmm13, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%rbp,%rcx)
vpermq $0x39, -0x38(%rbp,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm12, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x598c
movq 0x48(%rsp), %r8
movq 0x18(%rsp), %rcx
addq %rcx, %r8
movq 0x20(%rsp), %rax
addq %rax, %rcx
addq $0x40, %rcx
xorl %edx, %edx
xorl %esi, %esi
movq 0x10(%rsp), %r9
leaq 0x1(%rdx), %rax
movb (%r8,%rsi), %dil
xorb (%rbx,%rdx), %dil
movb %dil, 0x1(%rbx,%rdx)
movb %dil, (%rcx,%rsi)
addq $0x21, %rdx
testb $0x1f, %al
cmovneq %rax, %rdx
incq %rsi
cmpq %rsi, %r9
jne 0x5a7c
xorb $0x1, (%rbx,%r9)
movq (%rbx), %rax
movq 0x18(%rbx), %rcx
vmovdqu 0x8(%rbx), %xmm9
vmovq %rcx, %xmm10
vmovq %rax, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm10
vpinsrq $0x1, %rax, %xmm10, %xmm11
vpunpckhqdq %xmm10, %xmm9, %xmm12 # xmm12 = xmm9[1],xmm10[1]
vpaddq %xmm12, %xmm11, %xmm11
vpaddq 0x6520(%rip), %xmm11, %xmm11 # 0xc000
vprolvq 0x6526(%rip), %xmm11, %xmm11 # 0xc010
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vpinsrq $0x0, %rcx, %xmm12, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x651e(%rip), %xmm9, %xmm9 # 0xc020
vprolvq 0x6524(%rip), %xmm9, %xmm9 # 0xc030
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpaddq 0x65b6(%rip), %ymm9, %ymm9 # 0xc0e0
vmovdqu %ymm9, (%rbx)
xorl %r14d, %r14d
movq 0x84b8(%rip), %r13      # 0xdff0
movabsq $-0x2e333536393a3c48, %r12 # imm = 0xD1CCCAC9C6C5C3B8
movq (%rbx,%r14), %rax
movq 0x8(%rbx,%r14), %rdx
movq 0x10(%rbx,%r14), %rcx
movq 0x18(%rbx,%r14), %rsi
leaq (%rdx,%rax), %rdi
leaq (%rsi,%rcx), %r8
movabsq $-0xf171b1d1e272b2e, %r9 # imm = 0xF0E8E4E2E1D8D4D2
addq %r9, %rcx
addq %rdi, %rcx
rorxq $0x39, %rcx, %r9
addq %r12, %rsi
addq %rdi, %rsi
rorxq $0x2d, %rsi, %rcx
movabsq $-0x4b4d4e535556595b, %rsi # imm = 0xB4B2B1ACAAA9A6A5
addq %rsi, %rax
addq %r8, %rax
rorxq $0x21, %rax, %rax
movabsq $-0x5c636566696a6c72, %rsi # imm = 0xA39C9A999695938E
addq %rsi, %rdx
addq %r8, %rdx
rorxq $0xb, %rdx, %rdx
movq %r9, %rdi
xorq %rcx, %rdi
movq %rax, %rsi
xorq %rdx, %rsi
xorq %rdi, %rdx
xorq %rax, %rdi
xorq %rsi, %rcx
xorq %r9, %rsi
movq 0x20(%rbx,%r14), %rax
movq 0x28(%rbx,%r14), %r8
movq 0x30(%rbx,%r14), %r9
movq 0x38(%rbx,%r14), %r10
leaq (%r10,%r9), %r11
leaq (%r8,%rax), %r15
movabsq $-0x727478878b8d8e94, %rbp # imm = 0x8D8B87787472716C
addq %rbp, %rax
addq %r11, %rax
rorxq $0x35, %rax, %rax
movabsq $0x6a696665635c5a59, %rbp # imm = 0x6A696665635C5A59
addq %rbp, %r8
addq %r11, %r8
rorxq $0x29, %r8, %r8
movabsq $0x5655534e4d4b473c, %r11 # imm = 0x5655534E4D4B473C
addq %r11, %r9
addq %r15, %r9
rorxq $0x1b, %r9, %r9
movabsq $0x3a393635332e2d2b, %r11 # imm = 0x3A393635332E2D2B
addq %r11, %r10
addq %r15, %r10
rorxq $0x5, %r10, %r10
movq %r9, %r11
xorq %r10, %r11
movq %rax, %r15
xorq %r8, %r15
xorq %r11, %r8
xorq %rax, %r11
xorq %r15, %r10
xorq %r9, %r15
movq %rdx, (%r13,%r14)
movq %rdi, 0x8(%r13,%r14)
addq %rdi, %r11
movq %r11, 0x20(%rbx,%r14)
movq %rcx, 0x10(%r13,%r14)
addq %rcx, %r10
movq %r10, 0x28(%rbx,%r14)
movq %rsi, 0x18(%r13,%r14)
addq %rsi, %r15
movq %r15, 0x30(%rbx,%r14)
addq %rdx, %r8
movq %r8, 0x38(%rbx,%r14)
addq $0x20, %r14
cmpq $0x60, %r14
jne 0x5b42
movq 0x60(%rbx), %rax
movq 0x68(%rbx), %rcx
movq 0x70(%rbx), %rdx
movq 0x78(%rbx), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm9
vmovq %rdi, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r8, %xmm10
vmovq %rdx, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x636c(%rip), %xmm11, %xmm11 # 0xc040
vprolvq 0x6372(%rip), %xmm11, %xmm11 # 0xc050
vpinsrq $0x1, %rcx, %xmm9, %xmm9
vpinsrq $0x0, %rsi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x6369(%rip), %xmm9, %xmm9 # 0xc060
vprolvq 0x636f(%rip), %xmm9, %xmm9 # 0xc070
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, 0x60(%r13)
vpaddq 0x63d5(%rip), %ymm9, %ymm9 # 0xc100
vmovdqu %ymm9, 0x60(%rbx)
movl $0x78, %ecx
movq %r13, %r10
movq -0x18(%rbx,%rcx), %rax
movq -0x10(%rbx,%rcx), %rdx
movq -0x8(%rbx,%rcx), %rsi
movq (%rbx,%rcx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rax), %r9
vmovq %rax, %xmm9
vmovq %r9, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r8, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm1, %xmm11, %xmm11
vprolvq %xmm2, %xmm11, %xmm11
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm3, %xmm9, %xmm9
vprolvq %xmm4, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm12   # ymm12 = ymm10[0,1,1,0]
vpblendd $0xc, %xmm9, %xmm11, %xmm13 # xmm13 = xmm11[0,1],xmm9[2,3]
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpxor %xmm9, %xmm10, %xmm10
vextracti128 $0x1, %ymm12, %xmm11
vpxor %xmm13, %xmm11, %xmm11
vpalignr $0x8, %xmm11, %xmm10, %xmm14 # xmm14 = xmm11[8,9,10,11,12,13,14,15],xmm10[0,1,2,3,4,5,6,7]
vmovdqa %xmm14, -0x18(%r10,%rcx)
vinserti128 $0x1, %xmm13, %ymm9, %ymm9
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vmovdqa %xmm10, -0x8(%r10,%rcx)
vpermq $0x39, -0x38(%r10,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpxor %ymm9, %ymm12, %ymm9
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x5d38
movq (%rbx), %rax
movq 0x8(%rbx), %rcx
movq 0x10(%rbx), %rdx
movq 0x18(%rbx), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
vmovq %rax, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %rdi, %xmm10
vmovq %rdx, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq 0x61b6(%rip), %xmm11, %xmm11 # 0xc000
vprolvq 0x61bc(%rip), %xmm11, %xmm11 # 0xc010
vpinsrq $0x1, %rcx, %xmm9, %xmm9
vpinsrq $0x0, %rsi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq 0x61b3(%rip), %xmm9, %xmm9 # 0xc020
vprolvq 0x61b9(%rip), %xmm9, %xmm9 # 0xc030
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0xe9, %ymm9, %ymm10    # ymm10 = ymm9[1,2,2,3]
vpermq $0xe3, %ymm9, %ymm11    # ymm11 = ymm9[3,0,2,3]
vmovdqa %xmm11, (%r10)
vmovdqa %xmm10, 0x10(%r10)
vpaddq 0x6274(%rip), %ymm9, %ymm9 # 0xc120
vmovdqu %ymm9, (%rbx)
movl $0x20, %ecx
movq 0x38(%rsp), %r15
movq -0x20(%rbx,%rcx), %rax
movq -0x18(%rbx,%rcx), %rdx
movq -0x10(%rbx,%rcx), %rsi
movq -0x8(%rbx,%rcx), %rdi
leaq (%rdx,%rax), %r8
leaq (%rdi,%rsi), %r9
vmovq %rax, %xmm9
vmovq %r8, %xmm10
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vmovq %r9, %xmm10
vmovq %rsi, %xmm11
vpunpcklqdq %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[0],xmm10[0]
vpaddq %xmm10, %xmm9, %xmm11
vpaddq %xmm5, %xmm11, %xmm11
vprolvq %xmm6, %xmm11, %xmm11
vpinsrq $0x1, %rdx, %xmm9, %xmm9
vpinsrq $0x0, %rdi, %xmm10, %xmm10
vpaddq %xmm10, %xmm9, %xmm9
vpaddq %xmm7, %xmm9, %xmm9
vprolvq %xmm8, %xmm9, %xmm9
vpxor %xmm9, %xmm11, %xmm10
vpermq $0x14, %ymm10, %ymm10   # ymm10 = ymm10[0,1,1,0]
vpermt2q %ymm9, %ymm0, %ymm11
vpxor %ymm11, %ymm10, %ymm9
vpermq $0x93, %ymm9, %ymm10    # ymm10 = ymm9[3,0,1,2]
vmovdqu %ymm10, -0x20(%r10,%rcx)
vpermq $0x39, (%r10,%rcx), %ymm10 # ymm10 = mem[1,2,3,0]
vpaddq %ymm9, %ymm10, %ymm9
vmovdqu %ymm9, (%rbx,%rcx)
addq $0x20, %rcx
cmpq $0x80, %rcx
jne 0x5eba
movq 0x60(%rbx), %rax
movq 0x68(%rbx), %rcx
movq 0x70(%rbx), %rdx
movq 0x78(%rbx), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm5
vmovq %rdi, %xmm6
vpunpcklqdq %xmm5, %xmm6, %xmm5 # xmm5 = xmm6[0],xmm5[0]
vmovq %r8, %xmm6
vmovq %rdx, %xmm7
vpunpcklqdq %xmm6, %xmm7, %xmm6 # xmm6 = xmm7[0],xmm6[0]
vpaddq %xmm6, %xmm5, %xmm7
vpaddq 0x609d(%rip), %xmm7, %xmm7 # 0xc040
vprolvq 0x60a3(%rip), %xmm7, %xmm7 # 0xc050
vpinsrq $0x1, %rcx, %xmm5, %xmm5
vpinsrq $0x0, %rsi, %xmm6, %xmm6
vpaddq %xmm6, %xmm5, %xmm5
vpaddq 0x609b(%rip), %xmm5, %xmm5 # 0xc060
vprolvq 0x60a1(%rip), %xmm5, %xmm5 # 0xc070
vpxor %xmm5, %xmm7, %xmm6
vpermq $0x14, %ymm6, %ymm6     # ymm6 = ymm6[0,1,1,0]
vpermi2q %ymm5, %ymm7, %ymm0
vpxor %ymm0, %ymm6, %ymm0
vpermq $0x93, %ymm0, %ymm5     # ymm5 = ymm0[3,0,1,2]
vmovdqu %ymm5, 0x60(%r10)
vpaddq 0x6149(%rip), %ymm0, %ymm0 # 0xc140
vmovdqu %ymm0, 0x60(%rbx)
movl $0x78, %ecx
movq -0x18(%rbx,%rcx), %rax
movq -0x10(%rbx,%rcx), %rdx
movq -0x8(%rbx,%rcx), %rsi
movq (%rbx,%rcx), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rax), %r9
vmovq %rax, %xmm0
vmovq %r9, %xmm5
vpunpcklqdq %xmm0, %xmm5, %xmm0 # xmm0 = xmm5[0],xmm0[0]
vmovq %r8, %xmm5
vmovq %rsi, %xmm6
vpunpcklqdq %xmm5, %xmm6, %xmm5 # xmm5 = xmm6[0],xmm5[0]
vpaddq %xmm5, %xmm0, %xmm6
vpaddq %xmm1, %xmm6, %xmm6
vprolvq %xmm2, %xmm6, %xmm6
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm5, %xmm5
vpaddq %xmm5, %xmm0, %xmm0
vpaddq %xmm3, %xmm0, %xmm0
vprolvq %xmm4, %xmm0, %xmm0
vpxor %xmm0, %xmm6, %xmm5
vpermq $0x14, %ymm5, %ymm7     # ymm7 = ymm5[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm6, %xmm8 # xmm8 = xmm6[0,1],xmm0[2,3]
vpalignr $0x8, %xmm6, %xmm0, %xmm0 # xmm0 = xmm6[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm5, %xmm5
vextracti128 $0x1, %ymm7, %xmm6
vpxor %xmm6, %xmm8, %xmm6
vpalignr $0x8, %xmm6, %xmm5, %xmm9 # xmm9 = xmm6[8,9,10,11,12,13,14,15],xmm5[0,1,2,3,4,5,6,7]
vmovdqa %xmm9, -0x18(%r10,%rcx)
vinserti128 $0x1, %xmm8, %ymm0, %ymm0
vpalignr $0x8, %xmm5, %xmm6, %xmm5 # xmm5 = xmm5[8,9,10,11,12,13,14,15],xmm6[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x8(%r10,%rcx)
vpermq $0x39, -0x38(%r10,%rcx), %ymm5 # ymm5 = mem[1,2,3,0]
vpxor %ymm0, %ymm7, %ymm0
vpaddq %ymm0, %ymm5, %ymm0
vmovdqu %ymm0, -0x38(%rbx,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0x6001
xorl %eax, %eax
vmovdqu (%rbx,%rax,2), %ymm0
vpaddq 0xe0(%rsp,%rax), %ymm0, %ymm0
vmovdqu %ymm0, 0xe0(%rsp,%rax)
addq $0x20, %rax
cmpq $0x20, %rax
je 0x60ca
movq 0x20(%rsp), %rax
leaq (%rax,%r15), %rdi
addq $0x40, %rdi
leaq 0xe0(%rsp), %rsi
movl $0x2000, %edx           # imm = 0x2000
vzeroupper
callq 0x1070
addq $0x2040, %r15           # imm = 0x2040
movq 0xd8(%rsp), %rax
movq %r15, (%rax)
xorl %eax, %eax
addq $0x20e8, %rsp           # imm = 0x20E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq