// File: /workspace/github_c_makefile_star2_O1/mjosaarinen[P]brutus/crypto_aead/pi64cipher256v2wideblock2KB/optimized_nonSSE/encrypt.c
// Function: crypto_aead_decrypt
int crypto_aead_decrypt(
unsigned char *m,unsigned long long *mlen,
unsigned char *nsec,
const unsigned char *c,unsigned long long clen,
const unsigned char *ad,unsigned long long adlen,
const unsigned char *npub,
const unsigned char *k
)
{
 //...
 //... the code for the cipher implementation goes here,
 //... generating a plaintext m[0],m[1],...,m[*mlen-1]
 //... and secret message number nsec[0],nsec[1],...
 //... from a ciphertext c[0],c[1],...,c[clen-1]
 //... and associated data ad[0],ad[1],...,ad[adlen-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;
 // an array for storing some temporal values for the Tag computation
 u_int64_t  tempTag[CRYPTO_ABYTES/W] = {0};
 // counter ctr is a 64-bit variable in all variants of PiCipher
 u_int64_t  ctr = 0x0000000000000000ull;
 // 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
	IS[0] = k64[0];
	IS[1] = k64[1];
	IS[2] = k64[2];
	IS[3] = k64[3];
	
 // injection of the nonce (public message number - PMN)
	IS[4]  = npub64[0];
	IS[5]  = npub64[1];
	IS[6]  = npub64[2];
	IS[7]  = npub64[3];
	IS[8]  = npub64[4];
	IS[9]  = npub64[5];
	IS[10] = npub64[6];
	IS[11] = npub64[7];
	
 // appending a single 1 to the concatenated value of the key and PMN
	InternalState8[96] = 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 < NTag; 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];
		 i1++;
		 if( i1 % (RATE_OUT) == 0 ) i1 += RATE_OUT;
	 }
	 // padding with 10*
	 InternalState8[i1] = InternalState8[i1] ^ 0x01;
	 pi();
	 //updating the tag
	 jj = 0;
	 for ( i = 0; i < NTag; i+=2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
			tempTag[jj] = tempTag[jj] + IS[i*WORDS_CHUNK+i1];
			jj++;
		}
	 }
 }
 // if the AD is full blocks we still need to append 10* and it is done in an additional block
 else{
	for ( i = 0; i < IS_SIZE; i++ ) {
		IS[i] = CIS[i];
	}
	ctr++;
	IS[0] = IS[0] ^ ctr;
	pi();
	// padding with 10*
	InternalState8[0] = InternalState8[0] ^ 0x01;
	pi();
	//updating the tag
	jj = 0;
	for ( i = 0; i < NTag; 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 < NTag; 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 message number
 if ( CRYPTO_NSECBYTES > 0 ) {
	for ( i = 0; i < IS_SIZE; i++ ) {
		IS[i] = CIS[i];
	}
	ctr++;
	IS[0] = IS[0] ^ ctr;
	pi();
	// decrypt the SMN
	// Inject the SMN
	i1 = 0;
	for ( i = 0; i < CRYPTO_NSECBYTES; i++ ) {
		 nsec[i] = InternalState8[i1] ^ c[i];
	 	 InternalState8[i1] = c[i];
		 i1++;
		 if( i1 % (RATE_OUT) == 0 ) i1 += RATE_OUT;
	 }
	 // padding with 10*
	 InternalState8[CRYPTO_NSECBYTES] = InternalState8[CRYPTO_NSECBYTES] ^ 0x01;
	 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 < NTag; i+=2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
			tempTag[jj] = tempTag[jj] + IS[i*WORDS_CHUNK+i1];
			jj++;
		}
	}
 }

 //phase 4: Processing the ciphertext
 b = 0;
 for ( j = 0; j < (clen-CRYPTO_ABYTES-CRYPTO_NSECBYTES)/RATE; j ++ ) {
	for ( i = 0; i < IS_SIZE; i++ ) {
		IS[i] = CIS[i];
	}
	ctr ++;
	IS[0] = IS[0] ^ ctr;
	pi();
	// decrypt the ciphertext c
	for ( i = 0; i < N; i+=2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
	        // XOR the IS_bitrate (InternalState[0], InternalSate[2], ...) with the c to obtain m
			m64[b] = IS[i*WORDS_CHUNK+i1] ^ c64[bSMN+b];
			// in order to proceed for tag computation, put the ciphertext data in the InternalState
			IS[i*WORDS_CHUNK+i1] = c64[bSMN+b];
			b++;
		}
	}
	pi();
	// Collect the tag from this decryption and update the tempTag
	jj = 0;
	for ( i = 0; i < NTag; i+=2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
			tempTag[jj] = tempTag[jj] + IS[i*WORDS_CHUNK+i1];
			jj++;
		}
	}
 }
 // if the last ciphertext block is not the full block, we process it byte by byte
 LastMessageChunkLength = (clen-CRYPTO_ABYTES-CRYPTO_NSECBYTES) % 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++ ) {
	 	 m[b+i] = InternalState8[i1] ^ c[CRYPTO_NSECBYTES+b+i];
	 	 InternalState8[i1] = c[CRYPTO_NSECBYTES+b+i];
		 i1++;
		 if( i1 % (RATE_OUT) == 0 ) i1 += RATE_OUT;
	 }
	 // padding with 10*
	 InternalState8[i1] = InternalState8[i1] ^ 0x01;
	 pi();
	 // updating the tag
	 jj = 0;
	 for ( i = 0; i < NTag; i+=2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
			tempTag[jj] = tempTag[jj] + IS[i*WORDS_CHUNK+i1];
			jj++;
		}
	 }
 }
 // if the message is full blocks we still need to append 10* and it is done in to an additional block
 else{
	for ( i = 0; i < IS_SIZE; i++ ) {
		IS[i] = CIS[i];
	}
	ctr++;
	IS[0] = IS[0] ^ ctr;
	pi();
	// padding with 10*
	InternalState8[0] = InternalState8[0] ^ 0x01;
	pi();
	//updating the tag
	jj = 0;
	for ( i = 0; i < NTag; i+=2 ) {
		for ( i1 = 0; i1 < WORDS_CHUNK; i1++ ) {
			tempTag[jj] = tempTag[jj] + IS[i*WORDS_CHUNK+i1];
			jj++;
		}
	}
 }

 //updating the length of the message
 *mlen = clen-CRYPTO_ABYTES-CRYPTO_NSECBYTES;

 // tag verification
 for ( ii = (*mlen + CRYPTO_NSECBYTES); ii < clen; ii ++ ) {
	 if ( c[ii] != tempTag8[ii-(*mlen + CRYPTO_NSECBYTES)] )
		return -1;
 }

 return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x3088, %rsp           # imm = 0x3088
movq %r9, 0x18(%rsp)
movq %r8, 0x40(%rsp)
movq %rcx, 0x10(%rsp)
movq %rdx, 0x20(%rsp)
movq %rsi, 0x98(%rsp)
movq %rdi, 0x48(%rsp)
movq 0x30c8(%rsp), %r15
movq 0x30d0(%rsp), %rbp
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
movabsq $-0x5c636566696a6c72, %r13 # imm = 0xA39C9A999695938E
leaq 0x1080(%rsp), %rdi
xorl %r14d, %r14d
movl $0x2000, %edx           # imm = 0x2000
xorl %esi, %esi
callq 0x1030
leaq 0xc0(%rsp), %rdi
movl $0xfc0, %edx            # imm = 0xFC0
xorl %esi, %esi
callq 0x1030
movq 0x922b(%rip), %r12      # 0x10ff8
movl $0x1000, %edx           # imm = 0x1000
movq %r12, %rdi
xorl %esi, %esi
callq 0x1030
movq (%rbp), %rax
movq %rax, (%r12)
movq 0x10(%rbp), %rcx
vmovdqu 0x8(%rbp), %xmm0
movq 0x8(%rbp), %rdx
addq %rax, %rdx
vmovdqu %xmm0, 0x8(%r12)
movq 0x18(%rbp), %rsi
movq %rsi, 0x18(%r12)
movq (%r15), %rdi
movq %rdi, 0x20(%r12)
movq 0x8(%r15), %rdi
movq %rdi, 0x28(%r12)
movq 0x10(%r15), %rdi
movq %rdi, 0x30(%r12)
movq 0x18(%r15), %rdi
movq %rdi, 0x38(%r12)
movq 0x20(%r15), %rdi
movq %rdi, 0x40(%r12)
movq 0x28(%r15), %rdi
movq %rdi, 0x48(%r12)
movq 0x30(%r15), %rdi
movq %rdi, 0x50(%r12)
movq 0x38(%r15), %rdi
movq %rdi, 0x58(%r12)
addq %rsi, %rcx
vpinsrq $0x1, %rdx, %xmm0, %xmm1
vpinsrq $0x0, %rcx, %xmm0, %xmm0
vpaddq %xmm0, %xmm1, %xmm2
vpaddq 0x719a(%rip), %xmm2, %xmm2 # 0xf000
vprolvq 0x71a0(%rip), %xmm2, %xmm2 # 0xf010
vpinsrq $0x0, %rax, %xmm1, %xmm1
movb $0x1, 0x60(%r12)
vpinsrq $0x1, %rsi, %xmm0, %xmm0
vpaddq %xmm0, %xmm1, %xmm0
vpaddq 0x7192(%rip), %xmm0, %xmm0 # 0xf020
vprolvq 0x7198(%rip), %xmm0, %xmm0 # 0xf030
vpxor %xmm2, %xmm0, %xmm1
vpermq $0x41, %ymm1, %ymm1     # ymm1 = ymm1[1,0,0,1]
vpshufd $0x4e, %xmm2, %xmm2     # xmm2 = xmm2[2,3,0,1]
vinserti128 $0x1, %xmm2, %ymm0, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vpaddq 0x7247(%rip), %ymm0, %ymm0 # 0xf100
vmovdqu %ymm0, (%r12)
movq 0x912a(%rip), %rbp      # 0x10ff0
movq (%r12,%r14), %rcx
movq 0x8(%r12,%r14), %rdx
movq 0x10(%r12,%r14), %rax
movq 0x18(%r12,%r14), %rsi
leaq (%rdx,%rcx), %rdi
leaq (%rsi,%rax), %r8
movabsq $-0xf171b1d1e272b2e, %r9 # imm = 0xF0E8E4E2E1D8D4D2
addq %r9, %rax
addq %rdi, %rax
rorxq $0x39, %rax, %r9
movabsq $-0x2e333536393a3c48, %rax # imm = 0xD1CCCAC9C6C5C3B8
addq %rax, %rsi
addq %rdi, %rsi
rorxq $0x2d, %rsi, %rax
addq %rbx, %rcx
addq %r8, %rcx
rorxq $0x21, %rcx, %rdi
addq %r13, %rdx
addq %r8, %rdx
rorxq $0xb, %rdx, %rcx
movq %r9, %rsi
xorq %rax, %rsi
movq %rdi, %rdx
xorq %rcx, %rdx
xorq %rsi, %rcx
xorq %rdi, %rsi
xorq %rdx, %rax
xorq %r9, %rdx
movq 0x20(%r12,%r14), %rdi
movq 0x28(%r12,%r14), %r8
movq 0x30(%r12,%r14), %r9
movq 0x38(%r12,%r14), %r10
leaq (%r10,%r9), %r11
leaq (%r8,%rdi), %r15
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 %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 %r13, %r11
xorq %rdi, %r11
xorq %r10, %rdi
xorq %r13, %r10
movabsq $-0x5c636566696a6c72, %r13 # imm = 0xA39C9A999695938E
xorq %r11, %r9
xorq %r8, %r11
movq %rcx, (%rbp,%r14)
movq %rsi, 0x8(%rbp,%r14)
addq %rsi, %r10
movq %r10, 0x20(%r12,%r14)
movq %rax, 0x10(%rbp,%r14)
addq %rax, %r9
movq %r9, 0x28(%r12,%r14)
movq %rdx, 0x18(%rbp,%r14)
addq %rdx, %r11
movq %r11, 0x30(%r12,%r14)
addq %rcx, %rdi
movq %rdi, 0x38(%r12,%r14)
addq $0x20, %r14
cmpq $0xfe0, %r14            # imm = 0xFE0
jne 0x7ec6
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x6fd8(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x6fde(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x6fd6(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x6fdc(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpmovsxbq 0x7159(%rip), %ymm8 # 0xf200
vpermt2q %ymm0, %ymm8, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x7079(%rip), %ymm0, %ymm0 # 0xf140
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
vmovdqa 0x6fa5(%rip), %xmm4     # 0xf080
vpmovsxbq 0x7134(%rip), %xmm5 # 0xf218
vmovdqa 0x6fb4(%rip), %xmm6     # 0xf0a0
vpmovsxbq 0x7125(%rip), %xmm7 # 0xf21a
vpmovsxbq 0x7106(%rip), %ymm9 # 0xf204
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%rbp), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%rbp,%rax), %rdi
leaq 0xff8(%rbp,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm4, %xmm2, %xmm2
vprolvq %xmm5, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm6, %xmm0, %xmm0
vprolvq %xmm7, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm9, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%rbp,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
vpxor %xmm1, %xmm1, %xmm1
kxnorw %k0, %k0, %k1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0x80fe
movq (%r12), %rax
movq 0x8(%r12), %rcx
movq 0x10(%r12), %rdx
movq 0x18(%r12), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
vmovq %rax, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x6e52(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0x6e58(%rip), %xmm2, %xmm2 # 0xf090
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x6e50(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0x6e56(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm8, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0xe9, %ymm0, %ymm1     # ymm1 = ymm0[1,2,2,3]
vpermq $0xe3, %ymm0, %ymm2     # ymm2 = ymm0[3,0,2,3]
vmovdqa %xmm2, (%rbp)
vmovdqa %xmm1, 0x10(%rbp)
vpaddq 0x6ef4(%rip), %ymm0, %ymm0 # 0xf180
vmovdqu %ymm0, (%r12)
movl $0x20, %eax
movq -0x20(%r12,%rax), %rcx
movq -0x18(%r12,%rax), %rdx
movq -0x10(%r12,%rax), %rsi
movq -0x8(%r12,%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x6d65(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x6d6b(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x6d63(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x6d69(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm8, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, -0x20(%rbp,%rax)
vpermq $0x39, (%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%r12,%rax)
addq $0x20, %rax
cmpq $0x1000, %rax           # imm = 0x1000
jne 0x8297
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x6ca7(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x6cad(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x6ca5(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x6cab(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm8, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x6db1(%rip), %ymm0, %ymm0 # 0xf1a0
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%rbp), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%rbp,%rax), %rdi
leaq 0xff8(%rbp,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm4, %xmm2, %xmm2
vprolvq %xmm5, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm6, %xmm0, %xmm0
vprolvq %xmm7, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm9, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%rbp,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0x83fb
vmovups (%r12), %ymm0
vmovups %ymm0, 0xa0(%rsp)
vmovdqu 0x20(%r12), %ymm0
vmovdqu %ymm0, 0x50(%rsp)
movq 0x20(%r12), %rax
movq %rax, (%rsp)
leaq 0x40(%r12), %rsi
leaq 0xc0(%rsp), %rdi
movl $0xfc0, %edx            # imm = 0xFC0
movq %rsi, 0x8(%rsp)
vzeroupper
callq 0x1070
movq 0x30c0(%rsp), %rax
cmpq $0x800, %rax            # imm = 0x800
jae 0x8544
xorl %r14d, %r14d
jmp 0x9265
shrq $0xb, %rax
movq %rax, 0x28(%rsp)
vmovdqu 0x1080(%rsp), %ymm0
xorl %r15d, %r15d
xorl %eax, %eax
movq %rax, 0x30(%rsp)
vmovdqu %ymm0, 0x70(%rsp)
vmovups 0xa0(%rsp), %ymm0
vmovups %ymm0, (%r12)
vmovups 0x50(%rsp), %ymm0
vmovups %ymm0, 0x20(%r12)
movl $0xfc0, %edx            # imm = 0xFC0
movq 0x8(%rsp), %rdi
leaq 0xc0(%rsp), %rsi
vzeroupper
callq 0x1070
vmovdqa 0x6b5c(%rip), %ymm15    # 0xf100
movq (%rsp), %rdx
incq %rdx
movq 0x18(%r12), %rax
movq (%r12), %rcx
movq %rdx, (%rsp)
xorq %rdx, %rcx
movq %rcx, (%r12)
vmovdqu 0x8(%r12), %xmm0
vmovq %rcx, %xmm1
vpinsrq $0x1, %rax, %xmm1, %xmm2
vpaddq %xmm2, %xmm0, %xmm2
vpunpcklqdq %xmm2, %xmm1, %xmm1 # xmm1 = xmm1[0],xmm2[0]
vpunpckhqdq %xmm0, %xmm2, %xmm3 # xmm3 = xmm2[1],xmm0[1]
vpaddq %xmm3, %xmm1, %xmm1
vpaddq 0x6ad7(%rip), %xmm1, %xmm1 # 0xf0c0
vprolvq 0x6add(%rip), %xmm1, %xmm1 # 0xf0d0
vpinsrq $0x1, %rax, %xmm3, %xmm3
vpunpcklqdq %xmm2, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm2[0]
vpaddq %xmm3, %xmm0, %xmm0
vpaddq 0x6ad7(%rip), %xmm0, %xmm0 # 0xf0e0
vprolvq 0x6add(%rip), %xmm0, %xmm0 # 0xf0f0
vpxor %xmm0, %xmm1, %xmm2
vpmovsxbq 0x6be8(%rip), %ymm3 # 0xf208
vpermt2q %ymm0, %ymm3, %ymm1
vpermq $0x41, %ymm2, %ymm0     # ymm0 = ymm2[1,0,0,1]
vpxor %ymm1, %ymm0, %ymm0
vpaddq %ymm0, %ymm15, %ymm0
vmovdqu %ymm0, (%r12)
xorl %eax, %eax
movq (%r12,%rax), %rdx
movq 0x8(%r12,%rax), %rsi
movq 0x10(%r12,%rax), %rcx
movq 0x18(%r12,%rax), %rdi
leaq (%rsi,%rdx), %r8
leaq (%rdi,%rcx), %r9
movabsq $-0xf171b1d1e272b2e, %r10 # imm = 0xF0E8E4E2E1D8D4D2
addq %r10, %rcx
addq %r8, %rcx
rorxq $0x39, %rcx, %r10
movabsq $-0x2e333536393a3c48, %rcx # imm = 0xD1CCCAC9C6C5C3B8
addq %rcx, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %rcx
addq %rbx, %rdx
addq %r9, %rdx
rorxq $0x21, %rdx, %r8
addq %r13, %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(%r12,%rax), %r8
movq 0x28(%r12,%rax), %r9
movq 0x30(%r12,%rax), %r10
movq 0x38(%r12,%rax), %r11
leaq (%r11,%r10), %r14
leaq (%r9,%r8), %r13
movabsq $-0x727478878b8d8e94, %rbx # imm = 0x8D8B87787472716C
addq %rbx, %r8
addq %r14, %r8
rorxq $0x35, %r8, %rbx
movabsq $0x6a696665635c5a59, %r8 # imm = 0x6A696665635C5A59
addq %r8, %r9
addq %r14, %r9
rorxq $0x29, %r9, %r8
movabsq $0x5655534e4d4b473c, %r9 # imm = 0x5655534E4D4B473C
addq %r9, %r10
addq %r13, %r10
rorxq $0x1b, %r10, %r9
movabsq $0x3a393635332e2d2b, %r10 # imm = 0x3A393635332E2D2B
addq %r10, %r11
addq %r13, %r11
movabsq $-0x5c636566696a6c72, %r13 # imm = 0xA39C9A999695938E
rorxq $0x5, %r11, %r10
movq %r9, %r11
xorq %r10, %r11
movq %rbx, %r14
xorq %r8, %r14
xorq %r11, %r8
xorq %rbx, %r11
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
xorq %r14, %r10
xorq %r9, %r14
movq %rdx, (%rbp,%rax)
movq %rdi, 0x8(%rbp,%rax)
addq %rdi, %r11
movq %r11, 0x20(%r12,%rax)
movq %rcx, 0x10(%rbp,%rax)
addq %rcx, %r10
movq %r10, 0x28(%r12,%rax)
movq %rsi, 0x18(%rbp,%rax)
addq %rsi, %r14
movq %r14, 0x30(%r12,%rax)
addq %rdx, %r8
movq %r8, 0x38(%r12,%rax)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0x863c
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vmovdqa 0x6859(%rip), %xmm10    # 0xf040
vpaddq %xmm2, %xmm10, %xmm2
vpmovsxbq 0x6a28(%rip), %xmm11 # 0xf21c
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vmovdqa 0x684e(%rip), %xmm12    # 0xf060
vpaddq %xmm0, %xmm12, %xmm0
vpmovsxbq 0x69ff(%rip), %xmm13 # 0xf21e
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpmovsxbq 0x69c8(%rip), %ymm14 # 0xf200
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vmovdqa64 0x68e6(%rip), %ymm16 # 0xf140
vpaddq %ymm16, %ymm0, %ymm0
vmovdqu %ymm0, 0xfe0(%r12)
movl $0xff8, %eax            # imm = 0xFF8
vmovdqa 0x6809(%rip), %xmm6     # 0xf080
vpmovsxbq 0x6998(%rip), %xmm7 # 0xf218
vmovdqa 0x6818(%rip), %xmm8     # 0xf0a0
vpmovsxbq 0x6989(%rip), %xmm9 # 0xf21a
vmovdqa64 0x68e5(%rip), %ymm17 # 0xf180
movq -0x18(%r12,%rax), %rcx
movq -0x10(%r12,%rax), %rdx
movq -0x8(%r12,%rax), %rsi
movq (%r12,%rax), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rax)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rax)
vpermq $0x39, -0x38(%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%r12,%rax)
addq $-0x20, %rax
cmpq $0x18, %rax
jne 0x889b
movq (%r12), %rax
movq 0x8(%r12), %rcx
movq 0x10(%r12), %rdx
movq 0x18(%r12), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
vmovq %rax, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vprolvq %xmm7, %xmm2, %xmm2
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0xe9, %ymm0, %ymm1     # ymm1 = ymm0[1,2,2,3]
vpermq $0xe3, %ymm0, %ymm2     # ymm2 = ymm0[3,0,2,3]
vmovdqa %xmm2, (%rbp)
vmovdqa %xmm1, 0x10(%rbp)
vpaddq %ymm17, %ymm0, %ymm0
vmovdqu %ymm0, (%r12)
movl $0x20, %eax
vmovdqa64 0x679b(%rip), %ymm18 # 0xf1a0
movq -0x20(%r12,%rax), %rcx
movq -0x18(%r12,%rax), %rdx
movq -0x10(%r12,%rax), %rsi
movq -0x8(%r12,%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, -0x20(%rbp,%rax)
vpermq $0x39, (%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%r12,%rax)
addq $0x20, %rax
cmpq $0x1000, %rax           # imm = 0x1000
jne 0x8a05
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq %ymm18, %ymm0, %ymm0
vmovdqu %ymm0, 0xfe0(%r12)
movl $0xff8, %eax            # imm = 0xFF8
movq -0x18(%r12,%rax), %rcx
movq -0x10(%r12,%rax), %rdx
movq -0x8(%r12,%rax), %rsi
movq (%r12,%rax), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rax)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rax)
vpermq $0x39, -0x38(%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%r12,%rax)
addq $-0x20, %rax
cmpq $0x18, %rax
jne 0x8b4a
movq %r12, %rdx
xorl %esi, %esi
movq 0x18(%rsp), %r9
movq %r15, %rax
leaq (,%r15,8), %r14
leaq (%r9,%r15,8), %rdi
xorl %ecx, %ecx
movq (%rdi,%rcx,8), %r8
xorq %r8, (%rdx,%rcx,8)
incq %rcx
addq $0x8, %r14
cmpq $0x4, %rcx
jne 0x8c2b
leaq 0x2(%rsi), %rdi
addq $0x40, %rdx
leaq (%rax,%rcx), %r15
cmpq $0x7e, %rsi
movq %rdi, %rsi
jb 0x8c1a
movq (%r12), %rdx
movq 0x18(%r12), %rsi
vmovdqu 0x8(%r12), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpaddq %ymm0, %ymm15, %ymm0
vmovdqu %ymm0, (%r12)
movq %rax, %r15
addq %rcx, %r15
xorl %eax, %eax
movq (%r12,%rax), %rdx
movq 0x8(%r12,%rax), %rsi
movq 0x10(%r12,%rax), %rcx
movq 0x18(%r12,%rax), %rdi
leaq (%rsi,%rdx), %r8
leaq (%rdi,%rcx), %r9
movabsq $-0xf171b1d1e272b2e, %r10 # imm = 0xF0E8E4E2E1D8D4D2
addq %r10, %rcx
addq %r8, %rcx
rorxq $0x39, %rcx, %r10
movabsq $-0x2e333536393a3c48, %rcx # imm = 0xD1CCCAC9C6C5C3B8
addq %rcx, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %rcx
addq %rbx, %rdx
addq %r9, %rdx
rorxq $0x21, %rdx, %r8
addq %r13, %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(%r12,%rax), %r8
movq 0x28(%r12,%rax), %r9
movq 0x30(%r12,%rax), %r10
movq 0x38(%r12,%rax), %r11
leaq (%r11,%r10), %rbx
leaq (%r9,%r8), %r13
movabsq $-0x727478878b8d8e94, %rbp # imm = 0x8D8B87787472716C
addq %rbp, %r8
addq %rbx, %r8
rorxq $0x35, %r8, %rbp
movabsq $0x6a696665635c5a59, %r8 # imm = 0x6A696665635C5A59
addq %r8, %r9
addq %rbx, %r9
rorxq $0x29, %r9, %r8
movabsq $0x5655534e4d4b473c, %r9 # imm = 0x5655534E4D4B473C
addq %r9, %r10
addq %r13, %r10
rorxq $0x1b, %r10, %r9
movabsq $0x3a393635332e2d2b, %r10 # imm = 0x3A393635332E2D2B
addq %r10, %r11
addq %r13, %r11
movabsq $-0x5c636566696a6c72, %r13 # imm = 0xA39C9A999695938E
rorxq $0x5, %r11, %r10
movq %r9, %r11
xorq %r10, %r11
movq %rbp, %rbx
xorq %r8, %rbx
xorq %r11, %r8
xorq %rbp, %r11
movq 0x8215(%rip), %rbp      # 0x10ff0
xorq %rbx, %r10
xorq %r9, %rbx
movq %rdx, (%rbp,%rax)
movq %rdi, 0x8(%rbp,%rax)
addq %rdi, %r11
movq %r11, 0x20(%r12,%rax)
movq %rcx, 0x10(%rbp,%rax)
addq %rcx, %r10
movq %r10, 0x28(%r12,%rax)
movq %rsi, 0x18(%rbp,%rax)
addq %rsi, %rbx
movq %rbx, 0x30(%r12,%rax)
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
addq %rdx, %r8
movq %r8, 0x38(%r12,%rax)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0x8ccd
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq %ymm16, %ymm0, %ymm0
vmovdqu %ymm0, 0xfe0(%r12)
movl $0xff8, %eax            # imm = 0xFF8
movq -0x18(%r12,%rax), %rcx
movq -0x10(%r12,%rax), %rdx
movq -0x8(%r12,%rax), %rsi
movq (%r12,%rax), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rax)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rax)
vpermq $0x39, -0x38(%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%r12,%rax)
addq $-0x20, %rax
cmpq $0x18, %rax
jne 0x8ed2
movq (%r12), %rax
movq 0x8(%r12), %rcx
movq 0x10(%r12), %rdx
movq 0x18(%r12), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
vmovq %rax, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vprolvq %xmm7, %xmm2, %xmm2
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0xe9, %ymm0, %ymm1     # ymm1 = ymm0[1,2,2,3]
vpermq $0xe3, %ymm0, %ymm2     # ymm2 = ymm0[3,0,2,3]
vmovdqa %xmm2, (%rbp)
vmovdqa %xmm1, 0x10(%rbp)
vpaddq %ymm17, %ymm0, %ymm0
vmovdqu %ymm0, (%r12)
movl $0x20, %eax
movq -0x20(%r12,%rax), %rcx
movq -0x18(%r12,%rax), %rdx
movq -0x10(%r12,%rax), %rsi
movq -0x8(%r12,%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, -0x20(%rbp,%rax)
vpermq $0x39, (%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%r12,%rax)
addq $0x20, %rax
cmpq $0x1000, %rax           # imm = 0x1000
jne 0x9032
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq %ymm18, %ymm0, %ymm0
vmovdqu %ymm0, 0xfe0(%r12)
movl $0xff8, %eax            # imm = 0xFF8
movq -0x18(%r12,%rax), %rcx
movq -0x10(%r12,%rax), %rdx
movq -0x8(%r12,%rax), %rsi
movq (%r12,%rax), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rax)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rax)
vpermq $0x39, -0x38(%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%r12,%rax)
addq $-0x20, %rax
cmpq $0x18, %rax
jne 0x9177
vmovdqu 0x70(%rsp), %ymm0
vpaddq (%r12), %ymm0, %ymm0
movq 0x30(%rsp), %rax
incq %rax
cmpq 0x28(%rsp), %rax
jne 0x855b
vmovdqu %ymm0, 0x1080(%rsp)
movabsq $-0x2e333536393a3c48, %r15 # imm = 0xD1CCCAC9C6C5C3B8
movq 0x7d82(%rip), %r12      # 0x10ff8
vmovups 0xa0(%rsp), %ymm0
vmovups %ymm0, (%r12)
vmovups 0x50(%rsp), %ymm0
vmovups %ymm0, 0x20(%r12)
leaq 0x40(%r12), %rdi
leaq 0xc0(%rsp), %rsi
movl $0xfc0, %edx            # imm = 0xFC0
movq %rdi, 0x8(%rsp)
vzeroupper
callq 0x1070
movq (%rsp), %rax
incq %rax
xorq (%r12), %rax
movq 0x18(%r12), %rcx
movq %rax, (%r12)
vmovdqu 0x8(%r12), %xmm0
vmovq %rax, %xmm1
vpinsrq $0x1, %rcx, %xmm1, %xmm2
vpaddq %xmm2, %xmm0, %xmm2
vpunpcklqdq %xmm2, %xmm1, %xmm1 # xmm1 = xmm1[0],xmm2[0]
vpunpckhqdq %xmm0, %xmm2, %xmm3 # xmm3 = xmm2[1],xmm0[1]
vpaddq %xmm3, %xmm1, %xmm1
vpaddq 0x5dd1(%rip), %xmm1, %xmm1 # 0xf0c0
vprolvq 0x5dd7(%rip), %xmm1, %xmm1 # 0xf0d0
vpunpcklqdq %xmm2, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm2[0]
vpinsrq $0x1, %rcx, %xmm3, %xmm2
vpaddq %xmm2, %xmm0, %xmm0
vpaddq 0x5dd1(%rip), %xmm0, %xmm0 # 0xf0e0
vprolvq 0x5dd7(%rip), %xmm0, %xmm0 # 0xf0f0
vpxor %xmm0, %xmm1, %xmm2
vpermq $0x41, %ymm2, %ymm2     # ymm2 = ymm2[1,0,0,1]
vpmovsxbq 0x5edc(%rip), %ymm3 # 0xf208
vpermt2q %ymm0, %ymm3, %ymm1
vpxor %ymm1, %ymm2, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, (%r12)
movq 0x30c0(%rsp), %rax
andq $0x7ff, %rax            # imm = 0x7FF
je 0xa0c4
movq %rax, 0x70(%rsp)
vpbroadcastq (%r12), %ymm1
vpblendd $0xc0, %ymm1, %ymm0, %ymm0 # ymm0 = ymm0[0,1,2,3,4,5],ymm1[6,7]
vpaddq 0x5d91(%rip), %ymm0, %ymm0 # 0xf100
vmovdqu %ymm0, (%r12)
xorl %eax, %eax
vmovdqa 0x5d01(%rip), %xmm6     # 0xf080
vpmovsxbq 0x5e90(%rip), %xmm7 # 0xf218
vmovdqa 0x5d10(%rip), %xmm8     # 0xf0a0
vpmovsxbq 0x5e81(%rip), %xmm9 # 0xf21a
movabsq $-0xf171b1d1e272b2e, %r11 # imm = 0xF0E8E4E2E1D8D4D2
vmovdqa 0x5c95(%rip), %xmm10    # 0xf040
vpmovsxbq 0x5e68(%rip), %xmm11 # 0xf21c
vmovdqa 0x5ca4(%rip), %xmm12    # 0xf060
vpmovsxbq 0x5e59(%rip), %xmm13 # 0xf21e
vpmovsxbq 0x5e32(%rip), %ymm14 # 0xf200
vpmovsxbq 0x5e2d(%rip), %ymm15 # 0xf204
movq (%r12,%rax), %rcx
movq 0x8(%r12,%rax), %rdx
movq 0x10(%r12,%rax), %rsi
movq 0x18(%r12,%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm15, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%rbp,%rax)
movq 0x20(%r12,%rax), %rcx
movq 0x38(%r12,%rax), %rdx
vmovdqu 0x28(%r12,%rax), %xmm1
vmovq %rdx, %xmm2
vmovq %rcx, %xmm3
vpunpcklqdq %xmm2, %xmm3, %xmm2 # xmm2 = xmm3[0],xmm2[0]
vpaddq %xmm2, %xmm1, %xmm2
vpinsrq $0x1, %rcx, %xmm2, %xmm3
vpunpckhqdq %xmm2, %xmm1, %xmm4 # xmm4 = xmm1[1],xmm2[1]
vpaddq %xmm4, %xmm3, %xmm3
vpaddq %xmm6, %xmm3, %xmm3
vprolvq %xmm7, %xmm3, %xmm3
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpinsrq $0x0, %rdx, %xmm4, %xmm2
vpaddq %xmm2, %xmm1, %xmm1
vpaddq %xmm1, %xmm8, %xmm1
vprolvq %xmm9, %xmm1, %xmm1
vpxor %xmm1, %xmm3, %xmm2
vpermq $0x50, %ymm2, %ymm2     # ymm2 = ymm2[0,0,1,1]
vpermt2q %ymm3, %ymm15, %ymm1
vpxor %ymm1, %ymm2, %ymm1
vpaddq %ymm0, %ymm1, %ymm0
vpermq $0x39, %ymm0, %ymm0     # ymm0 = ymm0[1,2,3,0]
vmovdqu %ymm0, 0x20(%r12,%rax)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0x93d7
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
addq %r11, %rdx
addq %rdi, %rdx
rorxq $0x39, %rdx, %rdx
addq %r15, %rsi
addq %rdi, %rsi
rorxq $0x2d, %rsi, %rsi
addq %rbx, %rax
addq %r8, %rax
rorxq $0x21, %rax, %rax
addq %r13, %rcx
addq %r8, %rcx
rorxq $0xb, %rcx, %rcx
movq %rdx, %rdi
xorq %rsi, %rdi
movq %rax, %r8
xorq %rcx, %r8
xorq %rdi, %rcx
movq %rcx, 0xfe0(%rbp)
xorq %rax, %rdi
movq %rdi, 0xfe8(%rbp)
xorq %r8, %rsi
movq %rsi, 0xff0(%rbp)
xorq %rdx, %r8
movq %r8, 0xff8(%rbp)
vmovq %r8, %xmm0
vmovq %rcx, %xmm1
vpunpcklqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm1[0]
vmovq %rsi, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
vpaddq 0x5bb2(%rip), %ymm0, %ymm0 # 0xf140
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
movabsq $0x5655534e4d4b473c, %r10 # imm = 0x5655534E4D4B473C
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%rbp), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%rbp,%rax), %rdi
leaq 0xff8(%rbp,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm15, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%rbp,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0x95a4
movq (%r12), %rax
movq 0x8(%r12), %rcx
movq 0x10(%r12), %rdx
movq 0x18(%r12), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
movabsq $-0x727478878b8d8e94, %r9 # imm = 0x8D8B87787472716C
addq %r9, %rax
addq %rdi, %rax
rorxq $0x35, %rax, %rax
movabsq $0x6a696665635c5a59, %r9 # imm = 0x6A696665635C5A59
addq %r9, %rcx
addq %rdi, %rcx
rorxq $0x29, %rcx, %rcx
addq %r10, %rdx
addq %r8, %rdx
rorxq $0x1b, %rdx, %rdx
movabsq $0x3a393635332e2d2b, %rdi # imm = 0x3A393635332E2D2B
addq %rdi, %rsi
addq %r8, %rsi
rorxq $0x5, %rsi, %rsi
movq %rdx, %rdi
xorq %rsi, %rdi
movq %rax, %r8
xorq %rcx, %r8
xorq %rdi, %rcx
movq %rcx, (%rbp)
xorq %rax, %rdi
movq %rdi, 0x8(%rbp)
xorq %r8, %rsi
movq %rsi, 0x10(%rbp)
xorq %rdx, %r8
movq %r8, 0x18(%rbp)
vmovq %r8, %xmm0
vmovq %rcx, %xmm1
vpunpcklqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm1[0]
vmovq %rsi, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
vpaddq 0x5a34(%rip), %ymm0, %ymm0 # 0xf180
vmovdqu %ymm0, (%r12)
xorl %eax, %eax
movq (%rax,%r12), %rcx
movq 0x8(%rax,%r12), %rdx
movq 0x10(%rax,%r12), %rsi
movq 0x18(%rax,%r12), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
leaq (%rbp,%rax), %r10
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm15, %ymm0
vpxor %ymm0, %ymm1, %ymm0
leaq 0x28(%rbp,%rax), %rcx
vmovdqu %ymm0, -0x28(%rcx)
leaq 0x30(%rbp,%rax), %rdx
leaq 0x38(%rbp,%rax), %rsi
vmovq %r10, %xmm0
vmovq %rsi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdx, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq -0x30(%rsi), %ymm1, %ymm0
vmovdqu %ymm0, 0x20(%rax,%r12)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0x9754
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
addq %r11, %rdx
addq %rdi, %rdx
rorxq $0x39, %rdx, %rdx
addq %r15, %rsi
addq %rdi, %rsi
rorxq $0x2d, %rsi, %rsi
addq %rbx, %rax
addq %r8, %rax
rorxq $0x21, %rax, %rax
addq %r13, %rcx
addq %r8, %rcx
rorxq $0xb, %rcx, %rcx
movq %rdx, %rdi
xorq %rsi, %rdi
movq %rax, %r8
xorq %rcx, %r8
xorq %rdi, %rcx
movq %rcx, 0xfe0(%rbp)
xorq %rax, %rdi
movq %rdi, 0xfe8(%rbp)
xorq %r8, %rsi
movq %rsi, 0xff0(%rbp)
xorq %rdx, %r8
movq %r8, 0xff8(%rbp)
vmovq %r8, %xmm0
vmovq %rcx, %xmm1
vpunpcklqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm1[0]
vmovq %rsi, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
vpaddq 0x58b9(%rip), %ymm0, %ymm0 # 0xf1a0
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%rbp), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%rbp,%rax), %rdi
leaq 0xff8(%rbp,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm15, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%rbp,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0x98f3
movq 0x18(%rsp), %rsi
addq %r14, %rsi
xorl %eax, %eax
xorl %ecx, %ecx
movq 0x70(%rsp), %rdi
movb (%rsi,%rcx), %dl
xorb %dl, (%r12,%rax)
leaq 0x1(%rax), %rdx
addq $0x21, %rax
testb $0x1f, %dl
cmovneq %rdx, %rax
incq %rcx
cmpq %rcx, %rdi
jne 0x99f1
xorb $0x1, (%r12,%rax)
movq (%r12), %rax
movq 0x18(%r12), %rcx
vmovdqu 0x8(%r12), %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 0x5634(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0x563a(%rip), %xmm2, %xmm2 # 0xf090
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rcx, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x5634(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0x563a(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm15, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%r12)
vpmovsxbq 0x5773(%rip), %ymm1 # 0xf20c
vpermi2q (%r12){1to4}, %ymm0, %ymm1
vpaddq 0x5658(%rip), %ymm1, %ymm0 # 0xf100
vmovdqu %ymm0, (%r12)
xorl %eax, %eax
movabsq $0x3a393635332e2d2b, %r10 # imm = 0x3A393635332E2D2B
movabsq $0x6a696665635c5a59, %r14 # imm = 0x6A696665635C5A59
movq (%r12,%rax), %rcx
movq 0x8(%r12,%rax), %rdx
movq 0x10(%r12,%rax), %rsi
movq 0x18(%r12,%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm15, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%rbp,%rax)
movq 0x20(%r12,%rax), %rcx
movq 0x38(%r12,%rax), %rdx
vmovdqu 0x28(%r12,%rax), %xmm1
vmovq %rdx, %xmm2
vmovq %rcx, %xmm3
vpunpcklqdq %xmm2, %xmm3, %xmm2 # xmm2 = xmm3[0],xmm2[0]
vpaddq %xmm2, %xmm1, %xmm2
vpinsrq $0x1, %rcx, %xmm2, %xmm3
vpunpckhqdq %xmm2, %xmm1, %xmm4 # xmm4 = xmm1[1],xmm2[1]
vpaddq %xmm4, %xmm3, %xmm3
vpaddq %xmm6, %xmm3, %xmm3
vprolvq %xmm7, %xmm3, %xmm3
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpinsrq $0x0, %rdx, %xmm4, %xmm2
vpaddq %xmm2, %xmm1, %xmm1
vpaddq %xmm1, %xmm8, %xmm1
vprolvq %xmm9, %xmm1, %xmm1
vpxor %xmm1, %xmm3, %xmm2
vpermq $0x50, %ymm2, %ymm2     # ymm2 = ymm2[0,0,1,1]
vpermt2q %ymm3, %ymm15, %ymm1
vpxor %ymm1, %ymm2, %ymm1
vpaddq %ymm0, %ymm1, %ymm0
vpermq $0x39, %ymm0, %ymm0     # ymm0 = ymm0[1,2,3,0]
vmovdqu %ymm0, 0x20(%r12,%rax)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0x9ac4
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
addq %r11, %rdx
addq %rdi, %rdx
rorxq $0x39, %rdx, %rdx
addq %r15, %rsi
addq %rdi, %rsi
rorxq $0x2d, %rsi, %rsi
addq %rbx, %rax
addq %r8, %rax
rorxq $0x21, %rax, %rax
addq %r13, %rcx
addq %r8, %rcx
rorxq $0xb, %rcx, %rcx
movq %rdx, %rdi
xorq %rsi, %rdi
movq %rax, %r8
xorq %rcx, %r8
xorq %rdi, %rcx
movq %rcx, 0xfe0(%rbp)
xorq %rax, %rdi
movq %rdi, 0xfe8(%rbp)
xorq %r8, %rsi
movq %rsi, 0xff0(%rbp)
xorq %rdx, %r8
movq %r8, 0xff8(%rbp)
vmovq %r8, %xmm0
vmovq %rcx, %xmm1
vpunpcklqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm1[0]
vmovq %rsi, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
vpaddq 0x54c5(%rip), %ymm0, %ymm0 # 0xf140
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%rbp), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%rbp,%rax), %rdi
leaq 0xff8(%rbp,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm15, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%rbp,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0x9c87
movq (%r12), %rax
movq 0x8(%r12), %rcx
movq 0x10(%r12), %rdx
movq 0x18(%r12), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
movabsq $-0x727478878b8d8e94, %r9 # imm = 0x8D8B87787472716C
addq %r9, %rax
addq %rdi, %rax
rorxq $0x35, %rax, %rax
addq %r14, %rcx
addq %rdi, %rcx
rorxq $0x29, %rcx, %rcx
movabsq $0x5655534e4d4b473c, %rdi # imm = 0x5655534E4D4B473C
addq %rdi, %rdx
addq %r8, %rdx
rorxq $0x1b, %rdx, %rdx
addq %r10, %rsi
addq %r8, %rsi
rorxq $0x5, %rsi, %rsi
movq %rdx, %rdi
xorq %rsi, %rdi
movq %rax, %r8
xorq %rcx, %r8
xorq %rdi, %rcx
movq %rcx, (%rbp)
xorq %rax, %rdi
movq %rdi, 0x8(%rbp)
xorq %r8, %rsi
movq %rsi, 0x10(%rbp)
xorq %rdx, %r8
movq %r8, 0x18(%rbp)
vmovq %r8, %xmm0
vmovq %rcx, %xmm1
vpunpcklqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm1[0]
vmovq %rsi, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
vpaddq 0x535b(%rip), %ymm0, %ymm0 # 0xf180
vmovdqu %ymm0, (%r12)
xorl %eax, %eax
movq (%rax,%r12), %rcx
movq 0x8(%rax,%r12), %rdx
movq 0x10(%rax,%r12), %rsi
movq 0x18(%rax,%r12), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
leaq (%rbp,%rax), %r10
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm15, %ymm0
vpxor %ymm0, %ymm1, %ymm0
leaq 0x28(%rbp,%rax), %rcx
vmovdqu %ymm0, -0x28(%rcx)
leaq 0x30(%rbp,%rax), %rdx
leaq 0x38(%rbp,%rax), %rsi
vmovq %r10, %xmm0
vmovq %rsi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdx, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq -0x30(%rsi), %ymm1, %ymm0
vmovdqu %ymm0, 0x20(%rax,%r12)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0x9e2d
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
addq %r11, %rdx
addq %rdi, %rdx
rorxq $0x39, %rdx, %rdx
addq %r15, %rsi
addq %rdi, %rsi
rorxq $0x2d, %rsi, %rsi
addq %rbx, %rax
addq %r8, %rax
rorxq $0x21, %rax, %rax
addq %r13, %rcx
addq %r8, %rcx
rorxq $0xb, %rcx, %rcx
movq %rdx, %rdi
xorq %rsi, %rdi
movq %rax, %r8
xorq %rcx, %r8
xorq %rdi, %rcx
movq %rcx, 0xfe0(%rbp)
xorq %rax, %rdi
movq %rdi, 0xfe8(%rbp)
xorq %r8, %rsi
movq %rsi, 0xff0(%rbp)
xorq %rdx, %r8
movq %r8, 0xff8(%rbp)
vmovq %r8, %xmm0
vmovq %rcx, %xmm1
vpunpcklqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm1[0]
vmovq %rsi, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
vpaddq 0x51e0(%rip), %ymm0, %ymm0 # 0xf1a0
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%rbp), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%rbp,%rax), %rdi
leaq 0xff8(%rbp,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm15, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%rbp,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0x9fcc
vmovdqu (%r12), %ymm0
jmp 0xacd8
vpaddq 0x5034(%rip), %ymm0, %ymm0 # 0xf100
movq 0x6f25(%rip), %rax      # 0x10ff8
vmovdqu %ymm0, (%rax)
xorl %ecx, %ecx
vmovdqa 0x4f9f(%rip), %xmm6     # 0xf080
vpmovsxbq 0x512e(%rip), %xmm7 # 0xf218
vmovdqa 0x4fae(%rip), %xmm8     # 0xf0a0
vpmovsxbq 0x511f(%rip), %xmm9 # 0xf21a
movabsq $-0xf171b1d1e272b2e, %r11 # imm = 0xF0E8E4E2E1D8D4D2
vpmovsxbq 0x50f2(%rip), %ymm14 # 0xf200
vpmovsxbq 0x50ed(%rip), %ymm15 # 0xf204
movq (%rax,%rcx), %rsi
movq 0x8(%rax,%rcx), %rdi
movq 0x10(%rax,%rcx), %rdx
movq 0x18(%rax,%rcx), %r8
leaq (%rdi,%rsi), %r9
leaq (%r8,%rdx), %r10
addq %r11, %rdx
addq %r9, %rdx
rorxq $0x39, %rdx, %r11
addq %r15, %r8
addq %r9, %r8
rorxq $0x2d, %r8, %rdx
addq %rbx, %rsi
addq %r10, %rsi
rorxq $0x21, %rsi, %r9
addq %r13, %rdi
addq %r10, %rdi
rorxq $0xb, %rdi, %rsi
movq %r11, %r8
xorq %rdx, %r8
movq %r9, %rdi
xorq %rsi, %rdi
xorq %r8, %rsi
xorq %r9, %r8
xorq %rdi, %rdx
xorq %r11, %rdi
movq 0x20(%rax,%rcx), %r9
movq 0x28(%rax,%rcx), %r10
movq 0x30(%rax,%rcx), %r11
movq 0x38(%rax,%rcx), %rbx
leaq (%rbx,%r11), %r14
leaq (%r10,%r9), %r15
movabsq $-0x727478878b8d8e94, %r13 # imm = 0x8D8B87787472716C
addq %r13, %r9
addq %r14, %r9
rorxq $0x35, %r9, %r13
movabsq $0x6a696665635c5a59, %r9 # imm = 0x6A696665635C5A59
addq %r9, %r10
addq %r14, %r10
rorxq $0x29, %r10, %r9
movabsq $0x5655534e4d4b473c, %r10 # imm = 0x5655534E4D4B473C
addq %r10, %r11
addq %r15, %r11
rorxq $0x1b, %r11, %r10
movabsq $0x3a393635332e2d2b, %r11 # imm = 0x3A393635332E2D2B
addq %r11, %rbx
addq %r15, %rbx
movabsq $-0x2e333536393a3c48, %r15 # imm = 0xD1CCCAC9C6C5C3B8
rorxq $0x5, %rbx, %r11
movq %r10, %rbx
xorq %r11, %rbx
movq %r13, %r14
xorq %r9, %r14
xorq %rbx, %r9
xorq %r13, %rbx
movabsq $-0x5c636566696a6c72, %r13 # imm = 0xA39C9A999695938E
xorq %r14, %r11
xorq %r10, %r14
movq %rsi, (%rbp,%rcx)
movq %r8, 0x8(%rbp,%rcx)
addq %r8, %rbx
movq %rbx, 0x20(%rax,%rcx)
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
movq %rdx, 0x10(%rbp,%rcx)
addq %rdx, %r11
movq %r11, 0x28(%rax,%rcx)
movabsq $-0xf171b1d1e272b2e, %r11 # imm = 0xF0E8E4E2E1D8D4D2
movq %rdi, 0x18(%rbp,%rcx)
addq %rdi, %r14
movq %r14, 0x30(%rax,%rcx)
addq %rsi, %r9
movq %r9, 0x38(%rax,%rcx)
addq $0x20, %rcx
cmpq $0xfe0, %rcx            # imm = 0xFE0
jne 0xa117
movq 0xfe0(%rax), %rcx
movq 0xfe8(%rax), %rdx
movq 0xff0(%rax), %rsi
movq 0xff8(%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x4d81(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x4d87(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x4d7f(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x4d85(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x4e2b(%rip), %ymm0, %ymm0 # 0xf140
vmovdqu %ymm0, 0xfe0(%rax)
movl $0xff8, %ecx            # imm = 0xFF8
vmovdqa 0x4d16(%rip), %xmm10    # 0xf040
vpmovsxbq 0x4ee9(%rip), %xmm11 # 0xf21c
vmovdqa 0x4d25(%rip), %xmm12    # 0xf060
vpmovsxbq 0x4eda(%rip), %xmm13 # 0xf21e
movq -0x18(%rax,%rcx), %rdx
movq -0x10(%rax,%rcx), %rsi
movq -0x8(%rax,%rcx), %rdi
movq (%rax,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm0
vmovq %r10, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rsi, %xmm0, %xmm0
vpinsrq $0x0, %r8, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rcx)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rcx)
vpermq $0x39, -0x38(%rbp,%rcx), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%rax,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0xa344
movq (%rax), %rcx
movq 0x8(%rax), %rdx
movq 0x10(%rax), %rsi
movq 0x18(%rax), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x4c38(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0x4c3e(%rip), %xmm2, %xmm2 # 0xf090
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x4c36(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0x4c3c(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0xe9, %ymm0, %ymm1     # ymm1 = ymm0[1,2,2,3]
vpermq $0xe3, %ymm0, %ymm2     # ymm2 = ymm0[3,0,2,3]
vmovdqa %xmm2, (%rbp)
vmovdqa %xmm1, 0x10(%rbp)
vpaddq 0x4cda(%rip), %ymm0, %ymm0 # 0xf180
vmovdqu %ymm0, (%rax)
movl $0x20, %ecx
movq -0x20(%rax,%rcx), %rdx
movq -0x18(%rax,%rcx), %rsi
movq -0x10(%rax,%rcx), %rdi
movq -0x8(%rax,%rcx), %r8
leaq (%rsi,%rdx), %r9
leaq (%r8,%rdi), %r10
vmovq %rdx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r10, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rsi, %xmm0, %xmm0
vpinsrq $0x0, %r8, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, -0x20(%rbp,%rcx)
vpermq $0x39, (%rbp,%rcx), %ymm1 # ymm1 = mem[1,2,3,0]
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%rax,%rcx)
addq $0x20, %rcx
cmpq $0x1000, %rcx           # imm = 0x1000
jne 0xa4af
movq 0xfe0(%rax), %rcx
movq 0xfe8(%rax), %rdx
movq 0xff0(%rax), %rsi
movq 0xff8(%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x4aa3(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x4aa9(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x4aa1(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x4aa7(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x4bad(%rip), %ymm0, %ymm0 # 0xf1a0
vmovdqu %ymm0, 0xfe0(%rax)
movl $0xff8, %ecx            # imm = 0xFF8
movq -0x18(%rax,%rcx), %rdx
movq -0x10(%rax,%rcx), %rsi
movq -0x8(%rax,%rcx), %rdi
movq (%rax,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm0
vmovq %r10, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rsi, %xmm0, %xmm0
vpinsrq $0x0, %r8, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rcx)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rcx)
vpermq $0x39, -0x38(%rbp,%rcx), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%rax,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0xa600
xorb $0x1, (%rax)
movq (%rax), %rcx
movq 0x18(%rax), %rdx
vmovdqu 0x8(%rax), %xmm0
vmovq %rdx, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
vpinsrq $0x1, %rcx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq 0x4984(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0x498a(%rip), %xmm2, %xmm2 # 0xf090
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rdx, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x4984(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0x498a(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpaddq 0x49be(%rip), %ymm0, %ymm0 # 0xf100
vmovdqu %ymm0, (%rax)
xorl %ecx, %ecx
movq (%rax,%rcx), %rsi
movq 0x8(%rax,%rcx), %rdi
movq 0x10(%rax,%rcx), %rdx
movq 0x18(%rax,%rcx), %r8
leaq (%rdi,%rsi), %r9
leaq (%r8,%rdx), %r10
addq %r11, %rdx
addq %r9, %rdx
rorxq $0x39, %rdx, %r11
addq %r15, %r8
addq %r9, %r8
rorxq $0x2d, %r8, %rdx
addq %rbx, %rsi
addq %r10, %rsi
rorxq $0x21, %rsi, %r9
addq %r13, %rdi
addq %r10, %rdi
rorxq $0xb, %rdi, %rsi
movq %r11, %r8
xorq %rdx, %r8
movq %r9, %rdi
xorq %rsi, %rdi
xorq %r8, %rsi
xorq %r9, %r8
xorq %rdi, %rdx
xorq %r11, %rdi
movq 0x20(%rax,%rcx), %r9
movq 0x28(%rax,%rcx), %r10
movq 0x30(%rax,%rcx), %r11
movq 0x38(%rax,%rcx), %rbx
leaq (%rbx,%r11), %r14
leaq (%r10,%r9), %r15
movabsq $-0x727478878b8d8e94, %r13 # imm = 0x8D8B87787472716C
addq %r13, %r9
addq %r14, %r9
rorxq $0x35, %r9, %r13
movabsq $0x6a696665635c5a59, %r9 # imm = 0x6A696665635C5A59
addq %r9, %r10
addq %r14, %r10
rorxq $0x29, %r10, %r9
movabsq $0x5655534e4d4b473c, %r10 # imm = 0x5655534E4D4B473C
addq %r10, %r11
addq %r15, %r11
rorxq $0x1b, %r11, %r10
movabsq $0x3a393635332e2d2b, %r11 # imm = 0x3A393635332E2D2B
addq %r11, %rbx
addq %r15, %rbx
movabsq $-0x2e333536393a3c48, %r15 # imm = 0xD1CCCAC9C6C5C3B8
rorxq $0x5, %rbx, %r11
movq %r10, %rbx
xorq %r11, %rbx
movq %r13, %r14
xorq %r9, %r14
xorq %rbx, %r9
xorq %r13, %rbx
movabsq $-0x5c636566696a6c72, %r13 # imm = 0xA39C9A999695938E
xorq %r14, %r11
xorq %r10, %r14
movq %rsi, (%rbp,%rcx)
movq %r8, 0x8(%rbp,%rcx)
addq %r8, %rbx
movq %rbx, 0x20(%rax,%rcx)
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
movq %rdx, 0x10(%rbp,%rcx)
addq %rdx, %r11
movq %r11, 0x28(%rax,%rcx)
movabsq $-0xf171b1d1e272b2e, %r11 # imm = 0xF0E8E4E2E1D8D4D2
movq %rdi, 0x18(%rbp,%rcx)
addq %rdi, %r14
movq %r14, 0x30(%rax,%rcx)
addq %rsi, %r9
movq %r9, 0x38(%rax,%rcx)
addq $0x20, %rcx
cmpq $0xfe0, %rcx            # imm = 0xFE0
jne 0xa748
movq 0xfe0(%rax), %rcx
movq 0xfe8(%rax), %rdx
movq 0xff0(%rax), %rsi
movq 0xff8(%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x4750(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x4756(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x474e(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x4754(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x47fa(%rip), %ymm0, %ymm0 # 0xf140
vmovdqu %ymm0, 0xfe0(%rax)
movl $0xff8, %ecx            # imm = 0xFF8
movq -0x18(%rax,%rcx), %rdx
movq -0x10(%rax,%rcx), %rsi
movq -0x8(%rax,%rcx), %rdi
movq (%rax,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm0
vmovq %r10, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rsi, %xmm0, %xmm0
vpinsrq $0x0, %r8, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rcx)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rcx)
vpermq $0x39, -0x38(%rbp,%rcx), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%rax,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0xa953
movq (%rax), %rcx
movq 0x8(%rax), %rdx
movq 0x10(%rax), %rsi
movq 0x18(%rax), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x4629(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0x462f(%rip), %xmm2, %xmm2 # 0xf090
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x4627(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0x462d(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0xe9, %ymm0, %ymm1     # ymm1 = ymm0[1,2,2,3]
vpermq $0xe3, %ymm0, %ymm2     # ymm2 = ymm0[3,0,2,3]
vmovdqa %xmm2, (%rbp)
vmovdqa %xmm1, 0x10(%rbp)
vpaddq 0x46cb(%rip), %ymm0, %ymm0 # 0xf180
vmovdqu %ymm0, (%rax)
movl $0x20, %ecx
movq -0x20(%rax,%rcx), %rdx
movq -0x18(%rax,%rcx), %rsi
movq -0x10(%rax,%rcx), %rdi
movq -0x8(%rax,%rcx), %r8
leaq (%rsi,%rdx), %r9
leaq (%r8,%rdi), %r10
vmovq %rdx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r10, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rsi, %xmm0, %xmm0
vpinsrq $0x0, %r8, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, -0x20(%rbp,%rcx)
vpermq $0x39, (%rbp,%rcx), %ymm1 # ymm1 = mem[1,2,3,0]
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%rax,%rcx)
addq $0x20, %rcx
cmpq $0x1000, %rcx           # imm = 0x1000
jne 0xaabe
movq 0xfe0(%rax), %rcx
movq 0xfe8(%rax), %rdx
movq 0xff0(%rax), %rsi
movq 0xff8(%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x4494(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x449a(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x4492(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x4498(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x459e(%rip), %ymm0, %ymm0 # 0xf1a0
vmovdqu %ymm0, 0xfe0(%rax)
movl $0xff8, %ecx            # imm = 0xFF8
movq -0x18(%rax,%rcx), %rdx
movq -0x10(%rax,%rcx), %rsi
movq -0x8(%rax,%rcx), %rdi
movq (%rax,%rcx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rdx), %r10
vmovq %rdx, %xmm0
vmovq %r10, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rsi, %xmm0, %xmm0
vpinsrq $0x0, %r8, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rcx)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rcx)
vpermq $0x39, -0x38(%rbp,%rcx), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%rax,%rcx)
addq $-0x20, %rcx
cmpq $0x18, %rcx
jne 0xac0f
vmovdqu (%rax), %ymm0
vpaddq 0x1080(%rsp), %ymm0, %ymm0
vmovdqu %ymm0, 0x1080(%rsp)
vpxor 0xa0(%rsp), %ymm0, %ymm0
vmovdqu %ymm0, (%r12)
vmovups 0x50(%rsp), %ymm0
vmovups %ymm0, 0x20(%r12)
movq (%r12), %rax
movq 0x18(%r12), %rcx
vmovdqu 0x8(%r12), %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 0x4342(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0x4348(%rip), %xmm2, %xmm2 # 0xf090
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rcx, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x4342(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0x4348(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpaddq 0x437c(%rip), %ymm0, %ymm0 # 0xf100
vmovdqu %ymm0, (%r12)
xorl %eax, %eax
movq (%r12,%rax), %rdx
movq 0x8(%r12,%rax), %rsi
movq 0x10(%r12,%rax), %rcx
movq 0x18(%r12,%rax), %rdi
leaq (%rsi,%rdx), %r8
leaq (%rdi,%rcx), %r9
addq %r11, %rcx
addq %r8, %rcx
rorxq $0x39, %rcx, %r10
addq %r15, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %rcx
addq %rbx, %rdx
addq %r9, %rdx
rorxq $0x21, %rdx, %r8
addq %r13, %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(%r12,%rax), %r8
movq 0x28(%r12,%rax), %r9
movq 0x30(%r12,%rax), %r10
movq 0x38(%r12,%rax), %r11
leaq (%r11,%r10), %rbx
leaq (%r9,%r8), %r14
movabsq $-0x727478878b8d8e94, %r15 # imm = 0x8D8B87787472716C
addq %r15, %r8
addq %rbx, %r8
rorxq $0x35, %r8, %r15
movabsq $0x6a696665635c5a59, %r8 # imm = 0x6A696665635C5A59
addq %r8, %r9
addq %rbx, %r9
rorxq $0x29, %r9, %r8
movabsq $0x5655534e4d4b473c, %r9 # imm = 0x5655534E4D4B473C
addq %r9, %r10
addq %r14, %r10
rorxq $0x1b, %r10, %r9
movabsq $0x3a393635332e2d2b, %r10 # imm = 0x3A393635332E2D2B
addq %r10, %r11
addq %r14, %r11
rorxq $0x5, %r11, %r10
movq %r9, %r11
xorq %r10, %r11
movq %r15, %rbx
xorq %r8, %rbx
xorq %r11, %r8
xorq %r15, %r11
movabsq $-0x2e333536393a3c48, %r15 # imm = 0xD1CCCAC9C6C5C3B8
xorq %rbx, %r10
xorq %r9, %rbx
movq %rdx, (%rbp,%rax)
movq %rdi, 0x8(%rbp,%rax)
addq %rdi, %r11
movq %r11, 0x20(%r12,%rax)
movabsq $-0xf171b1d1e272b2e, %r11 # imm = 0xF0E8E4E2E1D8D4D2
movq %rcx, 0x10(%rbp,%rax)
addq %rcx, %r10
movq %r10, 0x28(%r12,%rax)
movq %rsi, 0x18(%rbp,%rax)
addq %rsi, %rbx
movq %rbx, 0x30(%r12,%rax)
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
addq %rdx, %r8
movq %r8, 0x38(%r12,%rax)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0xad8c
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x4113(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x4119(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x4111(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x4117(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x41bd(%rip), %ymm0, %ymm0 # 0xf140
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%rbp), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%rbp,%rax), %rdi
leaq 0xff8(%rbp,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm15, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%rbp,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0xaf8f
movq (%r12), %rax
movq 0x8(%r12), %rcx
movq 0x10(%r12), %rdx
movq 0x18(%r12), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
vmovq %rax, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x3fc1(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0x3fc7(%rip), %xmm2, %xmm2 # 0xf090
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x3fbf(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0x3fc5(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0xe9, %ymm0, %ymm1     # ymm1 = ymm0[1,2,2,3]
vpermq $0xe3, %ymm0, %ymm2     # ymm2 = ymm0[3,0,2,3]
vmovdqa %xmm2, (%rbp)
vmovdqa %xmm1, 0x10(%rbp)
vpaddq 0x4063(%rip), %ymm0, %ymm0 # 0xf180
vmovdqu %ymm0, (%r12)
movl $0x20, %eax
movq -0x20(%r12,%rax), %rcx
movq -0x18(%r12,%rax), %rdx
movq -0x10(%r12,%rax), %rsi
movq -0x8(%r12,%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, -0x20(%rbp,%rax)
vpermq $0x39, (%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%r12,%rax)
addq $0x20, %rax
cmpq $0x1000, %rax           # imm = 0x1000
jne 0xb128
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x3e26(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x3e2c(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x3e24(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x3e2a(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x3f30(%rip), %ymm0, %ymm0 # 0xf1a0
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%rbp), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%rbp,%rax), %rdi
leaq 0xff8(%rbp,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm15, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%rbp,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0xb27c
leaq 0xc0(%rsp), %rdi
movl $0xfc0, %edx            # imm = 0xFC0
movq 0x8(%rsp), %rsi
vzeroupper
callq 0x1070
movq (%rsp), %rdx
addq $0x2, %rdx
movq 0x18(%r12), %rax
movq (%r12), %rcx
movq %rdx, (%rsp)
xorq %rdx, %rcx
movq %rcx, (%r12)
vmovdqu 0x8(%r12), %xmm0
vmovq %rcx, %xmm1
vpinsrq $0x1, %rax, %xmm1, %xmm2
vpaddq %xmm2, %xmm0, %xmm2
vpunpcklqdq %xmm2, %xmm1, %xmm1 # xmm1 = xmm1[0],xmm2[0]
vpunpckhqdq %xmm0, %xmm2, %xmm3 # xmm3 = xmm2[1],xmm0[1]
vpaddq %xmm3, %xmm1, %xmm1
vpaddq 0x3cf7(%rip), %xmm1, %xmm1 # 0xf0c0
vprolvq 0x3cfd(%rip), %xmm1, %xmm1 # 0xf0d0
vpunpcklqdq %xmm2, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm2[0]
vpinsrq $0x1, %rax, %xmm3, %xmm2
vpaddq %xmm2, %xmm0, %xmm0
vpaddq 0x3cf7(%rip), %xmm0, %xmm0 # 0xf0e0
vprolvq 0x3cfd(%rip), %xmm0, %xmm0 # 0xf0f0
vpxor %xmm0, %xmm1, %xmm2
vpermq $0x41, %ymm2, %ymm2     # ymm2 = ymm2[1,0,0,1]
vpmovsxbq 0x3e02(%rip), %ymm3 # 0xf208
vpermt2q %ymm0, %ymm3, %ymm1
vpxor %ymm1, %ymm2, %ymm0
vpaddq 0x3ce8(%rip), %ymm0, %ymm0 # 0xf100
vmovdqu %ymm0, (%r12)
xorl %eax, %eax
movq (%r12,%rax), %rdx
movq 0x8(%r12,%rax), %rsi
movq 0x10(%r12,%rax), %rcx
movq 0x18(%r12,%rax), %rdi
leaq (%rsi,%rdx), %r8
leaq (%rdi,%rcx), %r9
movabsq $-0xf171b1d1e272b2e, %r10 # imm = 0xF0E8E4E2E1D8D4D2
addq %r10, %rcx
addq %r8, %rcx
rorxq $0x39, %rcx, %r10
addq %r15, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %rcx
addq %rbx, %rdx
addq %r9, %rdx
rorxq $0x21, %rdx, %r8
addq %r13, %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(%r12,%rax), %r8
movq 0x28(%r12,%rax), %r9
movq 0x30(%r12,%rax), %r10
movq 0x38(%r12,%rax), %r11
leaq (%r11,%r10), %rbx
leaq (%r9,%r8), %r14
movabsq $-0x727478878b8d8e94, %r15 # imm = 0x8D8B87787472716C
addq %r15, %r8
addq %rbx, %r8
rorxq $0x35, %r8, %r15
movabsq $0x6a696665635c5a59, %r8 # imm = 0x6A696665635C5A59
addq %r8, %r9
addq %rbx, %r9
rorxq $0x29, %r9, %r8
movabsq $0x5655534e4d4b473c, %r9 # imm = 0x5655534E4D4B473C
addq %r9, %r10
addq %r14, %r10
rorxq $0x1b, %r10, %r9
movabsq $0x3a393635332e2d2b, %r10 # imm = 0x3A393635332E2D2B
addq %r10, %r11
addq %r14, %r11
rorxq $0x5, %r11, %r10
movq %r9, %r11
xorq %r10, %r11
movq %r15, %rbx
xorq %r8, %rbx
xorq %r11, %r8
xorq %r15, %r11
movabsq $-0x2e333536393a3c48, %r15 # imm = 0xD1CCCAC9C6C5C3B8
xorq %rbx, %r10
xorq %r9, %rbx
movq %rdx, (%rbp,%rax)
movq %rdi, 0x8(%rbp,%rax)
addq %rdi, %r11
movq %r11, 0x20(%r12,%rax)
movq %rcx, 0x10(%rbp,%rax)
addq %rcx, %r10
movq %r10, 0x28(%r12,%rax)
movq %rsi, 0x18(%rbp,%rax)
addq %rsi, %rbx
movq %rbx, 0x30(%r12,%rax)
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
addq %rdx, %r8
movq %r8, 0x38(%r12,%rax)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0xb420
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x3a7f(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x3a85(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x3a7d(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x3a83(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpmovsxbq 0x3c00(%rip), %ymm12 # 0xf200
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x3b20(%rip), %ymm0, %ymm0 # 0xf140
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
vmovdqa 0x3a4c(%rip), %xmm4     # 0xf080
vpmovsxbq 0x3bdb(%rip), %xmm5 # 0xf218
vmovdqa 0x3a5b(%rip), %xmm6     # 0xf0a0
vpmovsxbq 0x3bcc(%rip), %xmm7 # 0xf21a
vmovdqa 0x39ea(%rip), %xmm8     # 0xf040
vpmovsxbq 0x3bbd(%rip), %xmm9 # 0xf21c
vmovdqa 0x39f9(%rip), %xmm10    # 0xf060
vpmovsxbq 0x3bae(%rip), %xmm11 # 0xf21e
vpmovsxbq 0x3b8b(%rip), %ymm13 # 0xf204
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%rbp), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%rbp,%rax), %rdi
leaq 0xff8(%rbp,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm4, %xmm2, %xmm2
vprolvq %xmm5, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm6, %xmm0, %xmm0
vprolvq %xmm7, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm13, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%rbp,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0xb679
movq (%r12), %rax
movq 0x8(%r12), %rcx
movq 0x10(%r12), %rdx
movq 0x18(%r12), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
vmovq %rax, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x38d7(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0x38dd(%rip), %xmm2, %xmm2 # 0xf090
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x38d5(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0x38db(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0xe9, %ymm0, %ymm1     # ymm1 = ymm0[1,2,2,3]
vpermq $0xe3, %ymm0, %ymm2     # ymm2 = ymm0[3,0,2,3]
vmovdqa %xmm2, (%rbp)
vmovdqa %xmm1, 0x10(%rbp)
vpaddq 0x3979(%rip), %ymm0, %ymm0 # 0xf180
vmovdqu %ymm0, (%r12)
movl $0x20, %eax
movq -0x20(%r12,%rax), %rcx
movq -0x18(%r12,%rax), %rdx
movq -0x10(%r12,%rax), %rsi
movq -0x8(%r12,%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm8, %xmm2
vprolvq %xmm9, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm10, %xmm0
vprolvq %xmm11, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, -0x20(%rbp,%rax)
vpermq $0x39, (%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%r12,%rax)
addq $0x20, %rax
cmpq $0x1000, %rax           # imm = 0x1000
jne 0xb812
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x373c(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x3742(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x373a(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x3740(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x3846(%rip), %ymm0, %ymm0 # 0xf1a0
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%rbp), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%rbp,%rax), %rdi
leaq 0xff8(%rbp,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm4, %xmm2, %xmm2
vprolvq %xmm5, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm6, %xmm0, %xmm0
vprolvq %xmm7, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm13, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%rbp,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0xb966
xorl %eax, %eax
xorl %ecx, %ecx
movq 0x10(%rsp), %rsi
movq 0x20(%rsp), %rdi
movb (%rsi,%rcx), %dl
xorb (%r12,%rax), %dl
movb %dl, (%rdi,%rcx)
movb (%rsi,%rcx), %dl
movb %dl, (%r12,%rax)
leaq 0x1(%rax), %rdx
addq $0x21, %rax
testb $0x1f, %dl
cmovneq %rdx, %rax
incq %rcx
cmpq $0x20, %rcx
jne 0xba61
xorb $0x1, 0x20(%r12)
movq (%r12), %rax
movq 0x18(%r12), %rcx
vmovdqu 0x8(%r12), %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 0x35b8(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0x35be(%rip), %xmm2, %xmm2 # 0xf090
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rcx, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x35b8(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0x35be(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpaddq 0x35f2(%rip), %ymm0, %ymm0 # 0xf100
vmovdqu %ymm0, (%r12)
xorl %eax, %eax
movq (%r12,%rax), %rdx
movq 0x8(%r12,%rax), %rsi
movq 0x10(%r12,%rax), %rcx
movq 0x18(%r12,%rax), %rdi
leaq (%rsi,%rdx), %r8
leaq (%rdi,%rcx), %r9
movabsq $-0xf171b1d1e272b2e, %r10 # imm = 0xF0E8E4E2E1D8D4D2
addq %r10, %rcx
addq %r8, %rcx
rorxq $0x39, %rcx, %r10
addq %r15, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %rcx
addq %rbx, %rdx
addq %r9, %rdx
rorxq $0x21, %rdx, %r8
addq %r13, %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(%r12,%rax), %r8
movq 0x28(%r12,%rax), %r9
movq 0x30(%r12,%rax), %r10
movq 0x38(%r12,%rax), %r11
leaq (%r11,%r10), %rbx
leaq (%r9,%r8), %r14
movabsq $-0x727478878b8d8e94, %r15 # imm = 0x8D8B87787472716C
addq %r15, %r8
addq %rbx, %r8
rorxq $0x35, %r8, %r15
movabsq $0x6a696665635c5a59, %r8 # imm = 0x6A696665635C5A59
addq %r8, %r9
addq %rbx, %r9
rorxq $0x29, %r9, %r8
movabsq $0x5655534e4d4b473c, %r9 # imm = 0x5655534E4D4B473C
addq %r9, %r10
addq %r14, %r10
rorxq $0x1b, %r10, %r9
movabsq $0x3a393635332e2d2b, %r10 # imm = 0x3A393635332E2D2B
addq %r10, %r11
addq %r14, %r11
rorxq $0x5, %r11, %r10
movq %r9, %r11
xorq %r10, %r11
movq %r15, %rbx
xorq %r8, %rbx
xorq %r11, %r8
xorq %r15, %r11
movabsq $-0x2e333536393a3c48, %r15 # imm = 0xD1CCCAC9C6C5C3B8
xorq %rbx, %r10
xorq %r9, %rbx
movq %rdx, (%rbp,%rax)
movq %rdi, 0x8(%rbp,%rax)
addq %rdi, %r11
movq %r11, 0x20(%r12,%rax)
movq %rcx, 0x10(%rbp,%rax)
addq %rcx, %r10
movq %r10, 0x28(%r12,%rax)
movq %rsi, 0x18(%rbp,%rax)
addq %rsi, %rbx
movq %rbx, 0x30(%r12,%rax)
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
addq %rdx, %r8
movq %r8, 0x38(%r12,%rax)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0xbb16
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x3389(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x338f(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x3387(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x338d(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x3433(%rip), %ymm0, %ymm0 # 0xf140
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%rbp), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%rbp,%rax), %rdi
leaq 0xff8(%rbp,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm4, %xmm2, %xmm2
vprolvq %xmm5, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm6, %xmm0, %xmm0
vprolvq %xmm7, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm13, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%rbp,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0xbd19
movq (%r12), %rax
movq 0x8(%r12), %rcx
movq 0x10(%r12), %rdx
movq 0x18(%r12), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
vmovq %rax, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x3237(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0x323d(%rip), %xmm2, %xmm2 # 0xf090
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x3235(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0x323b(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0xe9, %ymm0, %ymm1     # ymm1 = ymm0[1,2,2,3]
vpermq $0xe3, %ymm0, %ymm2     # ymm2 = ymm0[3,0,2,3]
vmovdqa %xmm2, (%rbp)
vmovdqa %xmm1, 0x10(%rbp)
vpaddq 0x32d9(%rip), %ymm0, %ymm0 # 0xf180
vmovdqu %ymm0, (%r12)
movl $0x20, %eax
movq -0x20(%r12,%rax), %rcx
movq -0x18(%r12,%rax), %rdx
movq -0x10(%r12,%rax), %rsi
movq -0x8(%r12,%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm8, %xmm2
vprolvq %xmm9, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm10, %xmm0
vprolvq %xmm11, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, -0x20(%rbp,%rax)
vpermq $0x39, (%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%r12,%rax)
addq $0x20, %rax
cmpq $0x1000, %rax           # imm = 0x1000
jne 0xbeb2
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x309c(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x30a2(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x309a(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x30a0(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x31a6(%rip), %ymm0, %ymm0 # 0xf1a0
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%rbp), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%rbp,%rax), %rdi
leaq 0xff8(%rbp,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm4, %xmm2, %xmm2
vprolvq %xmm5, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm6, %xmm0, %xmm0
vprolvq %xmm7, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm13, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%rbp,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
vpxor %xmm1, %xmm1, %xmm1
kxnorw %k0, %k0, %k1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0xc006
vmovups (%r12), %ymm0
vmovups %ymm0, 0x50(%rsp)
vmovups 0x20(%r12), %ymm0
vmovups %ymm0, 0xa0(%rsp)
leaq 0xc0(%rsp), %rdi
movl $0xfc0, %edx            # imm = 0xFC0
movq 0x8(%rsp), %rsi
vzeroupper
callq 0x1070
vmovdqu 0x50(%rsp), %ymm0
vpaddq 0x1080(%rsp), %ymm0, %ymm0
vmovdqu %ymm0, 0x1080(%rsp)
movq 0x40(%rsp), %rax
addq $-0x2020, %rax          # imm = 0xDFE0
cmpq $0x800, %rax            # imm = 0x800
movq %rax, 0x38(%rsp)
jae 0xc161
xorl %r14d, %r14d
jmp 0xcecc
shrq $0xb, %rax
cmpq $0x1, %rax
adcq $0x0, %rax
movq %rax, 0x18(%rsp)
vmovdqu 0x1080(%rsp), %ymm0
movq 0x10(%rsp), %rax
addq $0x20, %rax
movq %rax, 0x28(%rsp)
xorl %r15d, %r15d
xorl %eax, %eax
movq %rax, 0x30(%rsp)
vmovdqu %ymm0, 0x70(%rsp)
vmovups 0x50(%rsp), %ymm0
vmovups %ymm0, (%r12)
vmovups 0xa0(%rsp), %ymm0
vmovups %ymm0, 0x20(%r12)
movl $0xfc0, %edx            # imm = 0xFC0
movq 0x8(%rsp), %rdi
leaq 0xc0(%rsp), %rsi
vzeroupper
callq 0x1070
vmovdqa 0x2f29(%rip), %ymm15    # 0xf100
movq (%rsp), %rdx
incq %rdx
movq 0x18(%r12), %rax
movq (%r12), %rcx
movq %rdx, (%rsp)
xorq %rdx, %rcx
movq %rcx, (%r12)
vmovdqu 0x8(%r12), %xmm0
vmovq %rcx, %xmm1
vpinsrq $0x1, %rax, %xmm1, %xmm2
vpaddq %xmm2, %xmm0, %xmm2
vpunpcklqdq %xmm2, %xmm1, %xmm1 # xmm1 = xmm1[0],xmm2[0]
vpunpckhqdq %xmm0, %xmm2, %xmm3 # xmm3 = xmm2[1],xmm0[1]
vpaddq %xmm3, %xmm1, %xmm1
vpaddq 0x2ea4(%rip), %xmm1, %xmm1 # 0xf0c0
vprolvq 0x2eaa(%rip), %xmm1, %xmm1 # 0xf0d0
vpinsrq $0x1, %rax, %xmm3, %xmm3
vpunpcklqdq %xmm2, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm2[0]
vpaddq %xmm3, %xmm0, %xmm0
vpaddq 0x2ea4(%rip), %xmm0, %xmm0 # 0xf0e0
vprolvq 0x2eaa(%rip), %xmm0, %xmm0 # 0xf0f0
vpxor %xmm0, %xmm1, %xmm2
vpermq $0x41, %ymm2, %ymm2     # ymm2 = ymm2[1,0,0,1]
vpmovsxbq 0x2faf(%rip), %ymm3 # 0xf208
vpermt2q %ymm0, %ymm3, %ymm1
vpxor %ymm1, %ymm2, %ymm0
vpaddq %ymm0, %ymm15, %ymm0
vmovdqu %ymm0, (%r12)
xorl %eax, %eax
movq (%r12,%rax), %rdx
movq 0x8(%r12,%rax), %rsi
movq 0x10(%r12,%rax), %rcx
movq 0x18(%r12,%rax), %rdi
leaq (%rsi,%rdx), %r8
leaq (%rdi,%rcx), %r9
movabsq $-0xf171b1d1e272b2e, %r10 # imm = 0xF0E8E4E2E1D8D4D2
addq %r10, %rcx
addq %r8, %rcx
rorxq $0x39, %rcx, %r10
movabsq $-0x2e333536393a3c48, %rcx # imm = 0xD1CCCAC9C6C5C3B8
addq %rcx, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %rcx
addq %rbx, %rdx
addq %r9, %rdx
rorxq $0x21, %rdx, %r8
addq %r13, %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(%r12,%rax), %r8
movq 0x28(%r12,%rax), %r9
movq 0x30(%r12,%rax), %r10
movq 0x38(%r12,%rax), %r11
leaq (%r11,%r10), %rbx
leaq (%r9,%r8), %r13
movabsq $-0x727478878b8d8e94, %r14 # imm = 0x8D8B87787472716C
addq %r14, %r8
addq %rbx, %r8
rorxq $0x35, %r8, %rbp
movabsq $0x6a696665635c5a59, %r8 # imm = 0x6A696665635C5A59
addq %r8, %r9
addq %rbx, %r9
rorxq $0x29, %r9, %r8
movabsq $0x5655534e4d4b473c, %r9 # imm = 0x5655534E4D4B473C
addq %r9, %r10
addq %r13, %r10
rorxq $0x1b, %r10, %r9
movabsq $0x3a393635332e2d2b, %r10 # imm = 0x3A393635332E2D2B
addq %r10, %r11
addq %r13, %r11
movabsq $-0x5c636566696a6c72, %r13 # imm = 0xA39C9A999695938E
rorxq $0x5, %r11, %r10
movq %r9, %r11
xorq %r10, %r11
movq %rbp, %rbx
xorq %r8, %rbx
xorq %r11, %r8
xorq %rbp, %r11
movq 0x4c73(%rip), %r14      # 0x10ff0
xorq %rbx, %r10
xorq %r9, %rbx
movq %rdx, (%r14,%rax)
movq %rdi, 0x8(%r14,%rax)
addq %rdi, %r11
movq %r11, 0x20(%r12,%rax)
movq %rcx, 0x10(%r14,%rax)
addq %rcx, %r10
movq %r10, 0x28(%r12,%rax)
movq %rsi, 0x18(%r14,%rax)
addq %rsi, %rbx
movq %rbx, 0x30(%r12,%rax)
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
addq %rdx, %r8
movq %r8, 0x38(%r12,%rax)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0xc26f
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vmovdqa 0x2c20(%rip), %xmm10    # 0xf040
vpaddq %xmm2, %xmm10, %xmm2
vpmovsxbq 0x2def(%rip), %xmm11 # 0xf21c
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vmovdqa 0x2c15(%rip), %xmm12    # 0xf060
vpaddq %xmm0, %xmm12, %xmm0
vpmovsxbq 0x2dc6(%rip), %xmm13 # 0xf21e
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpmovsxbq 0x2d8f(%rip), %ymm14 # 0xf200
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%r14)
vmovdqa64 0x2cac(%rip), %ymm16 # 0xf140
vpaddq %ymm16, %ymm0, %ymm0
vmovdqu %ymm0, 0xfe0(%r12)
movl $0xff8, %eax            # imm = 0xFF8
vmovdqa 0x2bcf(%rip), %xmm6     # 0xf080
vpmovsxbq 0x2d5e(%rip), %xmm7 # 0xf218
vmovdqa 0x2bde(%rip), %xmm8     # 0xf0a0
vpmovsxbq 0x2d4f(%rip), %xmm9 # 0xf21a
vmovdqa64 0x2cab(%rip), %ymm17 # 0xf180
movq -0x18(%r12,%rax), %rcx
movq -0x10(%r12,%rax), %rdx
movq -0x8(%r12,%rax), %rsi
movq (%r12,%rax), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%r14,%rax)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%r14,%rax)
vpermq $0x39, -0x38(%r14,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%r12,%rax)
addq $-0x20, %rax
cmpq $0x18, %rax
jne 0xc4d5
movq (%r12), %rax
movq 0x8(%r12), %rcx
movq 0x10(%r12), %rdx
movq 0x18(%r12), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
vmovq %rax, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vprolvq %xmm7, %xmm2, %xmm2
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0xe9, %ymm0, %ymm1     # ymm1 = ymm0[1,2,2,3]
vpermq $0xe3, %ymm0, %ymm2     # ymm2 = ymm0[3,0,2,3]
vmovdqa %xmm2, (%r14)
vmovdqa %xmm1, 0x10(%r14)
vpaddq %ymm17, %ymm0, %ymm0
vmovdqu %ymm0, (%r12)
movl $0x20, %eax
movq 0x28(%rsp), %r10
vmovdqa64 0x2b59(%rip), %ymm18 # 0xf1a0
movq -0x20(%r12,%rax), %rcx
movq -0x18(%r12,%rax), %rdx
movq -0x10(%r12,%rax), %rsi
movq -0x8(%r12,%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, -0x20(%r14,%rax)
vpermq $0x39, (%r14,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%r12,%rax)
addq $0x20, %rax
cmpq $0x1000, %rax           # imm = 0x1000
jne 0xc647
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%r14)
vpaddq %ymm18, %ymm0, %ymm0
vmovdqu %ymm0, 0xfe0(%r12)
movl $0xff8, %eax            # imm = 0xFF8
movq -0x18(%r12,%rax), %rcx
movq -0x10(%r12,%rax), %rdx
movq -0x8(%r12,%rax), %rsi
movq (%r12,%rax), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%r14,%rax)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%r14,%rax)
vpermq $0x39, -0x38(%r14,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%r12,%rax)
addq $-0x20, %rax
cmpq $0x18, %rax
jne 0xc78d
movq %r12, %rdx
xorl %esi, %esi
movq 0x48(%rsp), %rax
movq %r15, %r11
leaq (%rax,%r15,8), %rdi
leaq (%r10,%r15,8), %r8
xorl %ecx, %ecx
movq (%r8,%rcx), %r9
xorq (%rdx,%rcx), %r9
movq %r9, (%rdi,%rcx)
movq (%r8,%rcx), %r9
movq %r9, (%rdx,%rcx)
incq %r15
addq $0x8, %rcx
cmpq $0x20, %rcx
jne 0xc86c
leaq 0x2(%rsi), %rdi
addq $0x40, %rdx
cmpq $0x7e, %rsi
movq %rdi, %rsi
jb 0xc85f
movq %r11, 0x20(%rsp)
movq (%r12), %rdx
movq 0x18(%r12), %rsi
vmovdqu 0x8(%r12), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x0, %rsi, %xmm3, %xmm3
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpaddq %xmm3, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpaddq %ymm0, %ymm15, %ymm0
vmovdqu %ymm0, (%r12)
xorl %edx, %edx
movq (%r12,%rdx), %rdi
movq 0x8(%r12,%rdx), %r8
movq 0x10(%r12,%rdx), %rsi
movq 0x18(%r12,%rdx), %r9
leaq (%r8,%rdi), %r10
leaq (%r9,%rsi), %r11
movabsq $-0xf171b1d1e272b2e, %rax # imm = 0xF0E8E4E2E1D8D4D2
addq %rax, %rsi
addq %r10, %rsi
rorxq $0x39, %rsi, %rbx
movabsq $-0x2e333536393a3c48, %rax # imm = 0xD1CCCAC9C6C5C3B8
addq %rax, %r9
addq %r10, %r9
rorxq $0x2d, %r9, %rsi
movabsq $-0x4b4d4e535556595b, %rax # imm = 0xB4B2B1ACAAA9A6A5
addq %rax, %rdi
addq %r11, %rdi
rorxq $0x21, %rdi, %r10
addq %r13, %r8
addq %r11, %r8
rorxq $0xb, %r8, %rdi
movq %rbx, %r9
xorq %rsi, %r9
movq %r10, %r8
xorq %rdi, %r8
xorq %r9, %rdi
xorq %r10, %r9
xorq %r8, %rsi
xorq %rbx, %r8
movq 0x20(%r12,%rdx), %r10
movq 0x28(%r12,%rdx), %r11
movq 0x30(%r12,%rdx), %rbx
movq 0x38(%r12,%rdx), %r13
leaq (%rbx,%r13), %rbp
leaq (%r11,%r10), %r14
movabsq $-0x727478878b8d8e94, %rax # imm = 0x8D8B87787472716C
addq %rax, %r10
addq %rbp, %r10
rorxq $0x35, %r10, %rax
movabsq $0x6a696665635c5a59, %r10 # imm = 0x6A696665635C5A59
addq %r10, %r11
addq %rbp, %r11
movq 0x4611(%rip), %rbp      # 0x10ff0
rorxq $0x29, %r11, %r10
movabsq $0x5655534e4d4b473c, %r11 # imm = 0x5655534E4D4B473C
addq %r11, %rbx
addq %r14, %rbx
rorxq $0x1b, %rbx, %r11
movabsq $0x3a393635332e2d2b, %rbx # imm = 0x3A393635332E2D2B
addq %rbx, %r13
addq %r14, %r13
rorxq $0x5, %r13, %rbx
movq %r11, %r14
xorq %rbx, %r14
movq %rax, %r13
xorq %r10, %r13
xorq %r14, %r10
xorq %rax, %r14
xorq %r13, %rbx
xorq %r11, %r13
movq %rdi, (%rbp,%rdx)
movq %r9, 0x8(%rbp,%rdx)
addq %r9, %r14
movq %r14, 0x20(%r12,%rdx)
movq %rsi, 0x10(%rbp,%rdx)
addq %rsi, %rbx
movq %rbx, 0x28(%r12,%rdx)
movq %r8, 0x18(%rbp,%rdx)
addq %r8, %r13
movq %r13, 0x30(%r12,%rdx)
movabsq $-0x5c636566696a6c72, %r13 # imm = 0xA39C9A999695938E
addq %rdi, %r10
movq %r10, 0x38(%r12,%rdx)
addq $0x20, %rdx
cmpq $0xfe0, %rdx            # imm = 0xFE0
jne 0xc915
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rdx
movq 0xff0(%r12), %rsi
movq 0xff8(%r12), %rdi
leaq (%rdx,%rax), %r8
leaq (%rdi,%rsi), %r9
vmovq %rax, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq %ymm16, %ymm0, %ymm0
vmovdqu %ymm0, 0xfe0(%r12)
movl $0xff8, %edx            # imm = 0xFF8
movq -0x18(%r12,%rdx), %rax
movq -0x10(%r12,%rdx), %rsi
movq -0x8(%r12,%rdx), %rdi
movq (%r12,%rdx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rax), %r10
vmovq %rax, %xmm0
vmovq %r10, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rsi, %xmm0, %xmm0
vpinsrq $0x0, %r8, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rdx)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rdx)
vpermq $0x39, -0x38(%rbp,%rdx), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%r12,%rdx)
addq $-0x20, %rdx
cmpq $0x18, %rdx
jne 0xcb1b
movq (%r12), %rax
movq 0x8(%r12), %rdx
movq 0x10(%r12), %rsi
movq 0x18(%r12), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rax), %r9
vmovq %rax, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vprolvq %xmm7, %xmm2, %xmm2
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0xe9, %ymm0, %ymm1     # ymm1 = ymm0[1,2,2,3]
vpermq $0xe3, %ymm0, %ymm2     # ymm2 = ymm0[3,0,2,3]
vmovdqa %xmm2, (%rbp)
vmovdqa %xmm1, 0x10(%rbp)
vpaddq %ymm17, %ymm0, %ymm0
vmovdqu %ymm0, (%r12)
movl $0x20, %edx
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
movq -0x20(%r12,%rdx), %rax
movq -0x18(%r12,%rdx), %rsi
movq -0x10(%r12,%rdx), %rdi
movq -0x8(%r12,%rdx), %r8
leaq (%rsi,%rax), %r9
leaq (%r8,%rdi), %r10
vmovq %rax, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r10, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rsi, %xmm0, %xmm0
vpinsrq $0x0, %r8, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, -0x20(%rbp,%rdx)
vpermq $0x39, (%rbp,%rdx), %ymm1 # ymm1 = mem[1,2,3,0]
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%r12,%rdx)
addq $0x20, %rdx
cmpq $0x1000, %rdx           # imm = 0x1000
jne 0xcc85
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rdx
movq 0xff0(%r12), %rsi
movq 0xff8(%r12), %rdi
leaq (%rdx,%rax), %r8
leaq (%rdi,%rsi), %r9
vmovq %rax, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq %ymm18, %ymm0, %ymm0
vmovdqu %ymm0, 0xfe0(%r12)
movl $0xff8, %edx            # imm = 0xFF8
movq -0x18(%r12,%rdx), %rax
movq -0x10(%r12,%rdx), %rsi
movq -0x8(%r12,%rdx), %rdi
movq (%r12,%rdx), %r8
leaq (%r8,%rdi), %r9
leaq (%rsi,%rax), %r10
vmovq %rax, %xmm0
vmovq %r10, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rsi, %xmm0, %xmm0
vpinsrq $0x0, %r8, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rdx)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rdx)
vpermq $0x39, -0x38(%rbp,%rdx), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%r12,%rdx)
addq $-0x20, %rdx
cmpq $0x18, %rdx
jne 0xcdcb
vmovdqu 0x70(%rsp), %ymm0
vpaddq (%r12), %ymm0, %ymm0
movq 0x30(%rsp), %rax
incq %rax
cmpq 0x18(%rsp), %rax
jne 0xc18e
vmovdqu %ymm0, 0x1080(%rsp)
movq 0x20(%rsp), %rax
leaq (%rcx,%rax,8), %r14
movabsq $-0x2e333536393a3c48, %r15 # imm = 0xD1CCCAC9C6C5C3B8
movq 0x4125(%rip), %r12      # 0x10ff8
vmovups 0x50(%rsp), %ymm0
vmovups %ymm0, (%r12)
vmovups 0xa0(%rsp), %ymm0
vmovups %ymm0, 0x20(%r12)
leaq 0x40(%r12), %rdi
leaq 0xc0(%rsp), %rsi
movl $0xfc0, %edx            # imm = 0xFC0
vzeroupper
callq 0x1070
movq (%rsp), %rcx
incq %rcx
xorq (%r12), %rcx
movq 0x18(%r12), %rax
movq %rcx, (%r12)
vmovdqu 0x8(%r12), %xmm0
vmovq %rcx, %xmm1
vpinsrq $0x1, %rax, %xmm1, %xmm2
vpaddq %xmm2, %xmm0, %xmm2
vpunpcklqdq %xmm2, %xmm1, %xmm1 # xmm1 = xmm1[0],xmm2[0]
vpunpckhqdq %xmm0, %xmm2, %xmm3 # xmm3 = xmm2[1],xmm0[1]
vpaddq %xmm3, %xmm1, %xmm1
vpaddq 0x2179(%rip), %xmm1, %xmm1 # 0xf0c0
vprolvq 0x217f(%rip), %xmm1, %xmm1 # 0xf0d0
vpunpcklqdq %xmm2, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm2[0]
vpinsrq $0x1, %rax, %xmm3, %xmm2
vpaddq %xmm2, %xmm0, %xmm0
vpaddq 0x2179(%rip), %xmm0, %xmm0 # 0xf0e0
movq 0x38(%rsp), %rax
vprolvq 0x217a(%rip), %xmm0, %xmm0 # 0xf0f0
vpxor %xmm0, %xmm1, %xmm2
vpermq $0x41, %ymm2, %ymm2     # ymm2 = ymm2[1,0,0,1]
vpmovsxbq 0x227f(%rip), %ymm3 # 0xf208
vpermi2q %ymm0, %ymm1, %ymm3
vpxor %ymm3, %ymm2, %ymm0
vpaddq 0x2165(%rip), %ymm0, %ymm0 # 0xf100
vmovdqu %ymm0, (%r12)
andq $0x7ff, %rax            # imm = 0x7FF
je 0xdd4a
movq %rax, 0x70(%rsp)
movq %r14, (%rsp)
xorl %ecx, %ecx
vmovdqa 0x20c0(%rip), %xmm4     # 0xf080
vpmovsxbq 0x224f(%rip), %xmm5 # 0xf218
vmovdqa 0x20cf(%rip), %xmm6     # 0xf0a0
vpmovsxbq 0x2240(%rip), %xmm7 # 0xf21a
movabsq $-0x5c636566696a6c72, %r14 # imm = 0xA39C9A999695938E
movabsq $-0xf171b1d1e272b2e, %r11 # imm = 0xF0E8E4E2E1D8D4D2
movabsq $-0x727478878b8d8e94, %rax # imm = 0x8D8B87787472716C
vmovdqa 0x2040(%rip), %xmm8     # 0xf040
vpmovsxbq 0x2213(%rip), %xmm9 # 0xf21c
vmovdqa 0x204f(%rip), %xmm10    # 0xf060
vpmovsxbq 0x2204(%rip), %xmm11 # 0xf21e
vpmovsxbq 0x21dd(%rip), %ymm12 # 0xf200
movq (%r12,%rcx), %rsi
movq 0x8(%r12,%rcx), %rdi
movq 0x10(%r12,%rcx), %rdx
movq 0x18(%r12,%rcx), %r8
leaq (%rdi,%rsi), %r9
leaq (%r8,%rdx), %r10
addq %r11, %rdx
addq %r9, %rdx
rorxq $0x39, %rdx, %r11
addq %r15, %r8
addq %r9, %r8
rorxq $0x2d, %r8, %rdx
addq %rbx, %rsi
addq %r10, %rsi
rorxq $0x21, %rsi, %r9
addq %r14, %rdi
addq %r10, %rdi
rorxq $0xb, %rdi, %rsi
movq %r11, %r8
xorq %rdx, %r8
movq %r9, %rdi
xorq %rsi, %rdi
xorq %r8, %rsi
xorq %r9, %r8
xorq %rdi, %rdx
xorq %r11, %rdi
movq 0x20(%r12,%rcx), %r9
movq 0x28(%r12,%rcx), %r10
movq 0x30(%r12,%rcx), %r11
movq 0x38(%r12,%rcx), %rbx
leaq (%rbx,%r11), %r15
leaq (%r10,%r9), %r13
addq %rax, %r9
addq %r15, %r9
rorxq $0x35, %r9, %rbp
movabsq $0x6a696665635c5a59, %r9 # imm = 0x6A696665635C5A59
addq %r9, %r10
addq %r15, %r10
rorxq $0x29, %r10, %r9
movabsq $0x5655534e4d4b473c, %r10 # imm = 0x5655534E4D4B473C
addq %r10, %r11
addq %r13, %r11
rorxq $0x1b, %r11, %r10
movabsq $0x3a393635332e2d2b, %r11 # imm = 0x3A393635332E2D2B
addq %r11, %rbx
addq %r13, %rbx
rorxq $0x5, %rbx, %r11
movq %r10, %rbx
xorq %r11, %rbx
movq %rbp, %r15
xorq %r9, %r15
xorq %rbx, %r9
xorq %rbp, %rbx
movq 0x3ee7(%rip), %r13      # 0x10ff0
xorq %r15, %r11
xorq %r10, %r15
movq %rsi, (%r13,%rcx)
movq %r8, 0x8(%r13,%rcx)
addq %r8, %rbx
movq %rbx, 0x20(%r12,%rcx)
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
movq %rdx, 0x10(%r13,%rcx)
addq %rdx, %r11
movq %r11, 0x28(%r12,%rcx)
movabsq $-0xf171b1d1e272b2e, %r11 # imm = 0xF0E8E4E2E1D8D4D2
movq %rdi, 0x18(%r13,%rcx)
addq %rdi, %r15
movq %r15, 0x30(%r12,%rcx)
movabsq $-0x2e333536393a3c48, %r15 # imm = 0xD1CCCAC9C6C5C3B8
addq %rsi, %r9
movq %r9, 0x38(%r12,%rcx)
addq $0x20, %rcx
cmpq $0xfe0, %rcx            # imm = 0xFE0
jne 0xd023
movq 0xfe0(%r12), %rcx
movq 0xfe8(%r12), %rdx
movq 0xff0(%r12), %rsi
movq 0xff8(%r12), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x1e7e(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x1e84(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x1e7c(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x1e82(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%r13)
vpaddq 0x1f27(%rip), %ymm0, %ymm0 # 0xf140
vmovdqu %ymm0, 0xfe0(%r12)
xorl %ecx, %ecx
vpmovsxbq 0x1fd6(%rip), %ymm13 # 0xf204
movq 0xfe0(%r12,%rcx), %rsi
movq 0xff8(%r12,%rcx), %rdi
leaq (%rcx,%r13), %rdx
addq $0xfe8, %rdx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rcx), %xmm0
vmovq %rdi, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%r13,%rcx), %r8
leaq 0xff8(%r13,%rcx), %r9
vpinsrq $0x1, %rsi, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm4, %xmm2, %xmm2
vprolvq %xmm5, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rdi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm6, %xmm0, %xmm0
vprolvq %xmm7, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm13, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r9)
leaq 0xfc0(%r13,%rcx), %rsi
vmovq %rsi, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
vpxor %xmm1, %xmm1, %xmm1
kxnorw %k0, %k0, %k1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rsi), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rcx)
addq $-0x20, %rcx
cmpq $-0xfe0, %rcx           # imm = 0xF020
jne 0xd22e
movq (%r12), %rcx
movq 0x8(%r12), %rdx
movq 0x10(%r12), %rsi
movq 0x18(%r12), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x1d21(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0x1d27(%rip), %xmm2, %xmm2 # 0xf090
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x1d1f(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0x1d25(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0xe9, %ymm0, %ymm1     # ymm1 = ymm0[1,2,2,3]
vpermq $0xe3, %ymm0, %ymm2     # ymm2 = ymm0[3,0,2,3]
vmovdqa %xmm2, (%r13)
vmovdqa %xmm1, 0x10(%r13)
vpaddq 0x1dc1(%rip), %ymm0, %ymm0 # 0xf180
vmovdqu %ymm0, (%r12)
movl $0x20, %ecx
movq 0x48(%rsp), %rax
movq (%rsp), %r14
movq -0x20(%r12,%rcx), %rdx
movq -0x18(%r12,%rcx), %rsi
movq -0x10(%r12,%rcx), %rdi
movq -0x8(%r12,%rcx), %r8
leaq (%rsi,%rdx), %r9
leaq (%r8,%rdi), %r10
vmovq %rdx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r10, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm8, %xmm2
vprolvq %xmm9, %xmm2, %xmm2
vpinsrq $0x1, %rsi, %xmm0, %xmm0
vpinsrq $0x0, %r8, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm10, %xmm0
vprolvq %xmm11, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, -0x20(%r13,%rcx)
vpermq $0x39, (%r13,%rcx), %ymm1 # ymm1 = mem[1,2,3,0]
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%r12,%rcx)
addq $0x20, %rcx
cmpq $0x1000, %rcx           # imm = 0x1000
jne 0xd3d3
movq 0xfe0(%r12), %rcx
movq 0xfe8(%r12), %rdx
movq 0xff0(%r12), %rsi
movq 0xff8(%r12), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x1b79(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x1b7f(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x1b77(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x1b7d(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%r13)
vpaddq 0x1c82(%rip), %ymm0, %ymm0 # 0xf1a0
vmovdqu %ymm0, 0xfe0(%r12)
xorl %ecx, %ecx
movq 0xfe0(%r12,%rcx), %rsi
movq 0xff8(%r12,%rcx), %rdi
leaq (%rcx,%r13), %rdx
addq $0xfe8, %rdx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rcx), %xmm0
vmovq %rdi, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%r13,%rcx), %r8
leaq 0xff8(%r13,%rcx), %r9
vpinsrq $0x1, %rsi, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm4, %xmm2, %xmm2
vprolvq %xmm5, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rdi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm6, %xmm0, %xmm0
vprolvq %xmm7, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm13, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r9)
leaq 0xfc0(%r13,%rcx), %rsi
vmovq %rsi, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rsi), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rcx)
addq $-0x20, %rcx
cmpq $-0xfe0, %rcx           # imm = 0xF020
jne 0xd52a
movq 0x10(%rsp), %rcx
addq %r14, %rcx
addq $0x20, %rcx
addq %r14, %rax
xorl %edx, %edx
xorl %esi, %esi
movq 0x70(%rsp), %r8
movb (%rcx,%rsi), %dil
xorb (%r12,%rdx), %dil
movb %dil, (%rax,%rsi)
movb (%rcx,%rsi), %dil
movb %dil, (%r12,%rdx)
leaq 0x1(%rdx), %rdi
addq $0x21, %rdx
testb $0x1f, %dil
cmovneq %rdi, %rdx
incq %rsi
cmpq %rsi, %r8
jne 0xd630
xorb $0x1, (%r12,%rdx)
movq (%r12), %rax
movq 0x18(%r12), %rcx
vmovdqu 0x8(%r12), %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 0x19e7(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0x19ed(%rip), %xmm2, %xmm2 # 0xf090
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rcx, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x19e7(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0x19ed(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm12, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpaddq 0x1a21(%rip), %ymm0, %ymm0 # 0xf100
vmovdqu %ymm0, (%r12)
xorl %eax, %eax
movabsq $-0x5c636566696a6c72, %rbp # imm = 0xA39C9A999695938E
movq (%r12,%rax), %rdx
movq 0x8(%r12,%rax), %rsi
movq 0x10(%r12,%rax), %rcx
movq 0x18(%r12,%rax), %rdi
leaq (%rsi,%rdx), %r8
leaq (%rdi,%rcx), %r9
addq %r11, %rcx
addq %r8, %rcx
rorxq $0x39, %rcx, %r10
addq %r15, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %rcx
addq %rbx, %rdx
addq %r9, %rdx
rorxq $0x21, %rdx, %r8
addq %rbp, %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(%r12,%rax), %r8
movq 0x28(%r12,%rax), %r9
movq 0x30(%r12,%rax), %r10
movq 0x38(%r12,%rax), %r11
leaq (%r11,%r10), %rbx
leaq (%r9,%r8), %r14
movabsq $-0x727478878b8d8e94, %r15 # imm = 0x8D8B87787472716C
addq %r15, %r8
addq %rbx, %r8
rorxq $0x35, %r8, %r15
movabsq $0x6a696665635c5a59, %r8 # imm = 0x6A696665635C5A59
addq %r8, %r9
addq %rbx, %r9
rorxq $0x29, %r9, %r8
movabsq $0x5655534e4d4b473c, %r9 # imm = 0x5655534E4D4B473C
addq %r9, %r10
addq %r14, %r10
rorxq $0x1b, %r10, %r9
movabsq $0x3a393635332e2d2b, %r10 # imm = 0x3A393635332E2D2B
addq %r10, %r11
addq %r14, %r11
rorxq $0x5, %r11, %r10
movq %r9, %r11
xorq %r10, %r11
movq %r15, %rbx
xorq %r8, %rbx
xorq %r11, %r8
xorq %r15, %r11
movabsq $-0x2e333536393a3c48, %r15 # imm = 0xD1CCCAC9C6C5C3B8
xorq %rbx, %r10
xorq %r9, %rbx
movq %rdx, (%r13,%rax)
movq %rdi, 0x8(%r13,%rax)
addq %rdi, %r11
movq %r11, 0x20(%r12,%rax)
movabsq $-0xf171b1d1e272b2e, %r11 # imm = 0xF0E8E4E2E1D8D4D2
movq %rcx, 0x10(%r13,%rax)
addq %rcx, %r10
movq %r10, 0x28(%r12,%rax)
movq %rsi, 0x18(%r13,%rax)
addq %rsi, %rbx
movq %rbx, 0x30(%r12,%rax)
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
addq %rdx, %r8
movq %r8, 0x38(%r12,%rax)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0xd6f1
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x17ae(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x17b4(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x17ac(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x17b2(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermi2q %ymm0, %ymm2, %ymm12
vpxor %ymm1, %ymm12, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%r13)
vpaddq 0x1857(%rip), %ymm0, %ymm0 # 0xf140
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%r13), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%r13,%rax), %rdi
leaq 0xff8(%r13,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm4, %xmm2, %xmm2
vprolvq %xmm5, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm6, %xmm0, %xmm0
vprolvq %xmm7, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm13, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%r13,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0xd8f5
movq (%r12), %rax
movq 0x8(%r12), %rcx
movq 0x10(%r12), %rdx
movq 0x18(%r12), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
movabsq $-0x727478878b8d8e94, %r9 # imm = 0x8D8B87787472716C
addq %rax, %r9
addq %rdi, %r9
rorxq $0x35, %r9, %rax
movabsq $0x6a696665635c5a59, %r9 # imm = 0x6A696665635C5A59
addq %rcx, %r9
addq %rdi, %r9
rorxq $0x29, %r9, %rcx
movabsq $0x5655534e4d4b473c, %rdi # imm = 0x5655534E4D4B473C
addq %rdx, %rdi
addq %r8, %rdi
rorxq $0x1b, %rdi, %rdx
movabsq $0x3a393635332e2d2b, %rdi # imm = 0x3A393635332E2D2B
addq %rsi, %rdi
addq %r8, %rdi
rorxq $0x5, %rdi, %rsi
movq %rdx, %rdi
xorq %rsi, %rdi
movq %rax, %r8
xorq %rcx, %r8
xorq %rdi, %rcx
movq %rcx, (%r13)
xorq %rax, %rdi
movq %rdi, 0x8(%r13)
xorq %r8, %rsi
movq %rsi, 0x10(%r13)
xorq %rdx, %r8
movq %r8, 0x18(%r13)
vmovq %r8, %xmm0
vmovq %rcx, %xmm1
vpunpcklqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm1[0]
vmovq %rsi, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
vpaddq 0x16d9(%rip), %ymm0, %ymm0 # 0xf180
vmovdqu %ymm0, (%r12)
xorl %eax, %eax
movq (%rax,%r12), %rcx
movq 0x8(%rax,%r12), %rdx
movq 0x10(%rax,%r12), %rsi
movq 0x18(%rax,%r12), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
leaq (%r13,%rax), %r10
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm8, %xmm2
vprolvq %xmm9, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm10, %xmm0
vprolvq %xmm11, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm13, %ymm0
vpxor %ymm0, %ymm1, %ymm0
leaq 0x28(%r13,%rax), %rcx
vmovdqu %ymm0, -0x28(%rcx)
leaq 0x30(%r13,%rax), %rdx
leaq 0x38(%r13,%rax), %rsi
vmovq %r10, %xmm0
vmovq %rsi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdx, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq -0x30(%rsi), %ymm1, %ymm0
vmovdqu %ymm0, 0x20(%rax,%r12)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0xdaaf
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
addq %rdx, %r11
addq %rdi, %r11
rorxq $0x39, %r11, %rdx
addq %rsi, %r15
addq %rdi, %r15
rorxq $0x2d, %r15, %rsi
addq %rax, %rbx
addq %r8, %rbx
rorxq $0x21, %rbx, %rax
movabsq $-0x5c636566696a6c72, %rdi # imm = 0xA39C9A999695938E
addq %rcx, %rdi
addq %r8, %rdi
rorxq $0xb, %rdi, %rcx
movq %rdx, %rdi
xorq %rsi, %rdi
movq %rax, %r8
xorq %rcx, %r8
xorq %rdi, %rcx
movq %rcx, 0xfe0(%r13)
xorq %rax, %rdi
movq %rdi, 0xfe8(%r13)
xorq %r8, %rsi
movq %rsi, 0xff0(%r13)
xorq %rdx, %r8
movq %r8, 0xff8(%r13)
vmovq %r8, %xmm0
vmovq %rcx, %xmm1
vpunpcklqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm1[0]
vmovq %rsi, %xmm1
vmovq %rdi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
vpaddq 0x1554(%rip), %ymm0, %ymm0 # 0xf1a0
vmovdqu %ymm0, 0xfe0(%r12)
xorl %eax, %eax
movq 0xfe0(%r12,%rax), %rdx
movq 0xff8(%r12,%rax), %rsi
leaq (%rax,%r13), %rcx
addq $0xfe8, %rcx            # imm = 0xFE8
vmovdqu 0xfe8(%r12,%rax), %xmm0
vmovq %rsi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm1
leaq 0xff0(%r13,%rax), %rdi
leaq 0xff8(%r13,%rax), %r8
vpinsrq $0x1, %rdx, %xmm1, %xmm2
vpunpckhqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[1],xmm1[1]
vpaddq %xmm3, %xmm2, %xmm2
vpaddq %xmm4, %xmm2, %xmm2
vprolvq %xmm5, %xmm2, %xmm2
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rsi, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm6, %xmm0, %xmm0
vprolvq %xmm7, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x50, %ymm1, %ymm1     # ymm1 = ymm1[0,0,1,1]
vpermt2q %ymm2, %ymm13, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x18(%r8)
leaq 0xfc0(%r13,%rax), %rdx
vmovq %rdx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rcx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vinserti128 $0x1, %xmm0, %ymm1, %ymm0
kxnorw %k0, %k0, %k1
vpxor %xmm1, %xmm1, %xmm1
vpgatherqq (,%ymm0), %ymm1 {%k1}
vpaddq 0x8(%rdx), %ymm1, %ymm0
vmovdqu %ymm0, 0xfc0(%r12,%rax)
addq $-0x20, %rax
cmpq $-0xfe0, %rax           # imm = 0xF020
jne 0xdc58
jmp 0xe96c
xorl %eax, %eax
vmovdqa 0x132c(%rip), %xmm6     # 0xf080
vpmovsxbq 0x14bb(%rip), %xmm7 # 0xf218
vmovdqa 0x133b(%rip), %xmm8     # 0xf0a0
vpmovsxbq 0x14ac(%rip), %xmm9 # 0xf21a
movabsq $-0x5c636566696a6c72, %r11 # imm = 0xA39C9A999695938E
movabsq $-0xf171b1d1e272b2e, %r13 # imm = 0xF0E8E4E2E1D8D4D2
vmovdqa 0x12b6(%rip), %xmm10    # 0xf040
vpmovsxbq 0x1489(%rip), %xmm11 # 0xf21c
vmovdqa 0x12c5(%rip), %xmm12    # 0xf060
vpmovsxbq 0x147a(%rip), %xmm13 # 0xf21e
vpmovsxbq 0x1453(%rip), %ymm14 # 0xf200
movq (%r12,%rax), %rdx
movq 0x8(%r12,%rax), %rsi
movq 0x10(%r12,%rax), %rcx
movq 0x18(%r12,%rax), %rdi
leaq (%rsi,%rdx), %r8
leaq (%rdi,%rcx), %r9
addq %r13, %rcx
addq %r8, %rcx
rorxq $0x39, %rcx, %r10
addq %r15, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %rcx
addq %rbx, %rdx
addq %r9, %rdx
rorxq $0x21, %rdx, %r8
addq %r11, %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(%r12,%rax), %r8
movq 0x28(%r12,%rax), %r9
movq 0x30(%r12,%rax), %r10
movq 0x38(%r12,%rax), %r11
leaq (%r11,%r10), %rbx
leaq (%r9,%r8), %r14
movabsq $-0x727478878b8d8e94, %r15 # imm = 0x8D8B87787472716C
addq %r15, %r8
addq %rbx, %r8
rorxq $0x35, %r8, %r15
movabsq $0x6a696665635c5a59, %r8 # imm = 0x6A696665635C5A59
addq %r8, %r9
addq %rbx, %r9
rorxq $0x29, %r9, %r8
movabsq $0x5655534e4d4b473c, %r9 # imm = 0x5655534E4D4B473C
addq %r9, %r10
addq %r14, %r10
rorxq $0x1b, %r10, %r9
movabsq $0x3a393635332e2d2b, %r10 # imm = 0x3A393635332E2D2B
addq %r10, %r11
addq %r14, %r11
rorxq $0x5, %r11, %r10
movq %r9, %r11
xorq %r10, %r11
movq %r15, %rbx
xorq %r8, %rbx
xorq %r11, %r8
xorq %r15, %r11
movabsq $-0x2e333536393a3c48, %r15 # imm = 0xD1CCCAC9C6C5C3B8
xorq %rbx, %r10
xorq %r9, %rbx
movq %rdx, (%rbp,%rax)
movq %rdi, 0x8(%rbp,%rax)
addq %rdi, %r11
movq %r11, 0x20(%r12,%rax)
movabsq $-0x5c636566696a6c72, %r11 # imm = 0xA39C9A999695938E
movq %rcx, 0x10(%rbp,%rax)
addq %rcx, %r10
movq %r10, 0x28(%r12,%rax)
movq %rsi, 0x18(%rbp,%rax)
addq %rsi, %rbx
movq %rbx, 0x30(%r12,%rax)
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
addq %rdx, %r8
movq %r8, 0x38(%r12,%rax)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0xddad
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x10f2(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x10f8(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x10f0(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x10f6(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x119c(%rip), %ymm0, %ymm0 # 0xf140
vmovdqu %ymm0, 0xfe0(%r12)
movl $0xff8, %eax            # imm = 0xFF8
movq -0x18(%r12,%rax), %rcx
movq -0x10(%r12,%rax), %rdx
movq -0x8(%r12,%rax), %rsi
movq (%r12,%rax), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rax)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rax)
vpermq $0x39, -0x38(%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%r12,%rax)
addq $-0x20, %rax
cmpq $0x18, %rax
jne 0xdfb3
movq (%r12), %rax
movq 0x8(%r12), %rcx
movq 0x10(%r12), %rdx
movq 0x18(%r12), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
vmovq %rax, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0xfc4(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0xfca(%rip), %xmm2, %xmm2 # 0xf090
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0xfc2(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0xfc8(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0xe9, %ymm0, %ymm1     # ymm1 = ymm0[1,2,2,3]
vpermq $0xe3, %ymm0, %ymm2     # ymm2 = ymm0[3,0,2,3]
vmovdqa %xmm2, (%rbp)
vmovdqa %xmm1, 0x10(%rbp)
vpaddq 0x1066(%rip), %ymm0, %ymm0 # 0xf180
vmovdqu %ymm0, (%r12)
movl $0x20, %eax
movq -0x20(%r12,%rax), %rcx
movq -0x18(%r12,%rax), %rdx
movq -0x10(%r12,%rax), %rsi
movq -0x8(%r12,%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, -0x20(%rbp,%rax)
vpermq $0x39, (%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%r12,%rax)
addq $0x20, %rax
cmpq $0x1000, %rax           # imm = 0x1000
jne 0xe125
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0xe29(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0xe2f(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0xe27(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0xe2d(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0xf33(%rip), %ymm0, %ymm0 # 0xf1a0
vmovdqu %ymm0, 0xfe0(%r12)
movl $0xff8, %eax            # imm = 0xFF8
movq -0x18(%r12,%rax), %rcx
movq -0x10(%r12,%rax), %rdx
movq -0x8(%r12,%rax), %rsi
movq (%r12,%rax), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rax)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rax)
vpermq $0x39, -0x38(%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%r12,%rax)
addq $-0x20, %rax
cmpq $0x18, %rax
jne 0xe27c
xorb $0x1, (%r12)
movq (%r12), %rax
movq 0x18(%r12), %rcx
vmovdqu 0x8(%r12), %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 0xd01(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0xd07(%rip), %xmm2, %xmm2 # 0xf090
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vpinsrq $0x0, %rcx, %xmm3, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0xd01(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0xd07(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpaddq 0xd3b(%rip), %ymm0, %ymm0 # 0xf100
vmovdqu %ymm0, (%r12)
xorl %eax, %eax
movabsq $-0x727478878b8d8e94, %r13 # imm = 0x8D8B87787472716C
movq (%r12,%rax), %rdx
movq 0x8(%r12,%rax), %rsi
movq 0x10(%r12,%rax), %rcx
movq 0x18(%r12,%rax), %rdi
leaq (%rsi,%rdx), %r8
leaq (%rdi,%rcx), %r9
movabsq $-0xf171b1d1e272b2e, %r10 # imm = 0xF0E8E4E2E1D8D4D2
addq %r10, %rcx
addq %r8, %rcx
rorxq $0x39, %rcx, %r10
addq %r15, %rdi
addq %r8, %rdi
rorxq $0x2d, %rdi, %rcx
addq %rbx, %rdx
addq %r9, %rdx
rorxq $0x21, %rdx, %r8
addq %r11, %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(%r12,%rax), %r8
movq 0x28(%r12,%rax), %r9
movq 0x30(%r12,%rax), %r10
movq 0x38(%r12,%rax), %r11
leaq (%r11,%r10), %rbx
leaq (%r9,%r8), %r14
addq %r13, %r8
addq %rbx, %r8
rorxq $0x35, %r8, %r15
movabsq $0x6a696665635c5a59, %r8 # imm = 0x6A696665635C5A59
addq %r8, %r9
addq %rbx, %r9
rorxq $0x29, %r9, %r8
movabsq $0x5655534e4d4b473c, %r9 # imm = 0x5655534E4D4B473C
addq %r9, %r10
addq %r14, %r10
rorxq $0x1b, %r10, %r9
movabsq $0x3a393635332e2d2b, %r10 # imm = 0x3A393635332E2D2B
addq %r10, %r11
addq %r14, %r11
rorxq $0x5, %r11, %r10
movq %r9, %r11
xorq %r10, %r11
movq %r15, %rbx
xorq %r8, %rbx
xorq %r11, %r8
xorq %r15, %r11
movabsq $-0x2e333536393a3c48, %r15 # imm = 0xD1CCCAC9C6C5C3B8
xorq %rbx, %r10
xorq %r9, %rbx
movq %rdx, (%rbp,%rax)
movq %rdi, 0x8(%rbp,%rax)
addq %rdi, %r11
movq %r11, 0x20(%r12,%rax)
movabsq $-0x5c636566696a6c72, %r11 # imm = 0xA39C9A999695938E
movq %rcx, 0x10(%rbp,%rax)
addq %rcx, %r10
movq %r10, 0x28(%r12,%rax)
movq %rsi, 0x18(%rbp,%rax)
addq %rsi, %rbx
movq %rbx, 0x30(%r12,%rax)
movabsq $-0x4b4d4e535556595b, %rbx # imm = 0xB4B2B1ACAAA9A6A5
addq %rdx, %r8
movq %r8, 0x38(%r12,%rax)
addq $0x20, %rax
cmpq $0xfe0, %rax            # imm = 0xFE0
jne 0xe3d7
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0xac8(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0xace(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0xac6(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0xacc(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0xb72(%rip), %ymm0, %ymm0 # 0xf140
vmovdqu %ymm0, 0xfe0(%r12)
movl $0xff8, %eax            # imm = 0xFF8
movq -0x18(%r12,%rax), %rcx
movq -0x10(%r12,%rax), %rdx
movq -0x8(%r12,%rax), %rsi
movq (%r12,%rax), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rax)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rax)
vpermq $0x39, -0x38(%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%r12,%rax)
addq $-0x20, %rax
cmpq $0x18, %rax
jne 0xe5dd
movq (%r12), %rax
movq 0x8(%r12), %rcx
movq 0x10(%r12), %rdx
movq 0x18(%r12), %rsi
leaq (%rsi,%rdx), %rdi
leaq (%rcx,%rax), %r8
vmovq %rax, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %rdi, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x99a(%rip), %xmm2, %xmm2 # 0xf080
vprolvq 0x9a0(%rip), %xmm2, %xmm2 # 0xf090
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x998(%rip), %xmm0, %xmm0 # 0xf0a0
vprolvq 0x99e(%rip), %xmm0, %xmm0 # 0xf0b0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0xe9, %ymm0, %ymm1     # ymm1 = ymm0[1,2,2,3]
vpermq $0xe3, %ymm0, %ymm2     # ymm2 = ymm0[3,0,2,3]
vmovdqa %xmm2, (%rbp)
vmovdqa %xmm1, 0x10(%rbp)
vpaddq 0xa3c(%rip), %ymm0, %ymm0 # 0xf180
vmovdqu %ymm0, (%r12)
movl $0x20, %eax
movq -0x20(%r12,%rax), %rcx
movq -0x18(%r12,%rax), %rdx
movq -0x10(%r12,%rax), %rsi
movq -0x8(%r12,%rax), %rdi
leaq (%rdx,%rcx), %r8
leaq (%rdi,%rsi), %r9
vmovq %rcx, %xmm0
vmovq %r8, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r9, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm2, %xmm10, %xmm2
vprolvq %xmm11, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm12, %xmm0
vprolvq %xmm13, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermt2q %ymm0, %ymm14, %ymm2
vpxor %ymm2, %ymm1, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, -0x20(%rbp,%rax)
vpermq $0x39, (%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, (%r12,%rax)
addq $0x20, %rax
cmpq $0x1000, %rax           # imm = 0x1000
jne 0xe74f
movq 0xfe0(%r12), %rax
movq 0xfe8(%r12), %rcx
movq 0xff0(%r12), %rdx
movq 0xff8(%r12), %rsi
leaq (%rcx,%rax), %rdi
leaq (%rsi,%rdx), %r8
vmovq %rax, %xmm0
vmovq %rdi, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rdx, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq 0x7ff(%rip), %xmm2, %xmm2 # 0xf040
vprolvq 0x805(%rip), %xmm2, %xmm2 # 0xf050
vpinsrq $0x1, %rcx, %xmm0, %xmm0
vpinsrq $0x0, %rsi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq 0x7fd(%rip), %xmm0, %xmm0 # 0xf060
vprolvq 0x803(%rip), %xmm0, %xmm0 # 0xf070
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm1     # ymm1 = ymm1[0,1,1,0]
vpermi2q %ymm0, %ymm2, %ymm14
vpxor %ymm1, %ymm14, %ymm0
vpermq $0x93, %ymm0, %ymm1     # ymm1 = ymm0[3,0,1,2]
vmovdqu %ymm1, 0xfe0(%rbp)
vpaddq 0x909(%rip), %ymm0, %ymm0 # 0xf1a0
vmovdqu %ymm0, 0xfe0(%r12)
movl $0xff8, %eax            # imm = 0xFF8
movq -0x18(%r12,%rax), %rcx
movq -0x10(%r12,%rax), %rdx
movq -0x8(%r12,%rax), %rsi
movq (%r12,%rax), %rdi
leaq (%rdi,%rsi), %r8
leaq (%rdx,%rcx), %r9
vmovq %rcx, %xmm0
vmovq %r9, %xmm1
vpunpcklqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[0],xmm0[0]
vmovq %r8, %xmm1
vmovq %rsi, %xmm2
vpunpcklqdq %xmm1, %xmm2, %xmm1 # xmm1 = xmm2[0],xmm1[0]
vpaddq %xmm1, %xmm0, %xmm2
vpaddq %xmm6, %xmm2, %xmm2
vprolvq %xmm7, %xmm2, %xmm2
vpinsrq $0x1, %rdx, %xmm0, %xmm0
vpinsrq $0x0, %rdi, %xmm1, %xmm1
vpaddq %xmm1, %xmm0, %xmm0
vpaddq %xmm0, %xmm8, %xmm0
vprolvq %xmm9, %xmm0, %xmm0
vpxor %xmm0, %xmm2, %xmm1
vpermq $0x14, %ymm1, %ymm3     # ymm3 = ymm1[0,1,1,0]
vpblendd $0xc, %xmm0, %xmm2, %xmm4 # xmm4 = xmm2[0,1],xmm0[2,3]
vpalignr $0x8, %xmm2, %xmm0, %xmm0 # xmm0 = xmm2[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpxor %xmm0, %xmm1, %xmm1
vextracti128 $0x1, %ymm3, %xmm2
vpxor %xmm4, %xmm2, %xmm2
vpalignr $0x8, %xmm2, %xmm1, %xmm5 # xmm5 = xmm2[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vmovdqa %xmm5, -0x18(%rbp,%rax)
vinserti128 $0x1, %xmm4, %ymm0, %ymm0
vpalignr $0x8, %xmm1, %xmm2, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm2[0,1,2,3,4,5,6,7]
vmovdqa %xmm1, -0x8(%rbp,%rax)
vpermq $0x39, -0x38(%rbp,%rax), %ymm1 # ymm1 = mem[1,2,3,0]
vpxor %ymm0, %ymm3, %ymm0
vpaddq %ymm0, %ymm1, %ymm0
vmovdqu %ymm0, -0x38(%r12,%rax)
addq $-0x20, %rax
cmpq $0x18, %rax
jne 0xe8a6
vmovdqu (%r12), %ymm0
vpaddq 0x1080(%rsp), %ymm0, %ymm0
vmovdqu %ymm0, 0x1080(%rsp)
movq 0x98(%rsp), %rax
movq 0x38(%rsp), %rcx
movq %rcx, (%rax)
xorl %eax, %eax
movq 0x40(%rsp), %rsi
cmpq $0x2000, %rsi           # imm = 0x2000
movq 0x10(%rsp), %rdi
leaq 0x1080(%rsp), %r8
jb 0xe9d2
leaq -0x2000(%rsi), %rcx
movb (%rdi,%rcx), %dl
cmpb (%r8), %dl
jne 0xe9cd
incq %rcx
incq %r8
cmpq %rsi, %rcx
jb 0xe9b8
jmp 0xe9d2
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
addq $0x3088, %rsp           # imm = 0x3088
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
vzeroupper
retq
nop