// File: /workspace/github_c_makefile_star2_O1/mjosaarinen[P]brutus/crypto_aead/oceankeyakv2/KnightsLanding/KeccakP-1600-times8-SIMD512.c
// Function: KeccakP1600times8_PermuteAll_12rounds
void KeccakP1600times8_PermuteAll_12rounds(void *states)
{
    V512 *statesAsLanes = states;
	KeccakP_DeclareVars;
    #if (KeccakP1600times8_unrolling < 12)
    unsigned int i;
    #endif

    copyFromState(statesAsLanes);
	rounds12;
    copyToState(statesAsLanes);
}

// Assembly:
subq $0x188, %rsp            # imm = 0x188
vmovdqa64 (%rdi), %zmm28
vmovdqa64 0x40(%rdi), %zmm10
vmovdqa64 0x80(%rdi), %zmm8
vmovdqa64 0xc0(%rdi), %zmm5
vmovdqa64 0x100(%rdi), %zmm4
vmovdqa64 0x140(%rdi), %zmm7
vmovdqa64 0x180(%rdi), %zmm3
vmovdqa64 0x1c0(%rdi), %zmm13
vmovdqa64 0x200(%rdi), %zmm24
vmovdqu64 %zmm24, -0x40(%rsp)
vmovdqa64 0x240(%rdi), %zmm14
vmovdqa64 0x280(%rdi), %zmm19
vmovdqa64 0x2c0(%rdi), %zmm9
vmovdqa64 0x300(%rdi), %zmm16
vmovdqa64 0x340(%rdi), %zmm15
vmovdqa64 0x380(%rdi), %zmm1
vmovdqa64 0x3c0(%rdi), %zmm2
vmovdqa64 0x400(%rdi), %zmm22
vmovdqa64 0x440(%rdi), %zmm11
vmovdqa64 0x480(%rdi), %zmm21
vmovdqa64 0x4c0(%rdi), %zmm17
vmovdqa64 0x500(%rdi), %zmm20
vmovdqa64 0x540(%rdi), %zmm6
vmovdqa64 0x580(%rdi), %zmm23
vmovdqa64 0x5c0(%rdi), %zmm12
vmovdqa64 0x600(%rdi), %zmm25
vmovdqa64 %zmm10, %zmm0
vpternlogq $0x96, %zmm9, %zmm3, %zmm0
vpternlogq $0x96, %zmm6, %zmm22, %zmm0
vmovdqa64 %zmm4, %zmm27
vpternlogq $0x96, %zmm1, %zmm14, %zmm27
vpternlogq $0x96, %zmm25, %zmm17, %zmm27
vprolq $0x1, %zmm0, %zmm18
vpxorq %zmm18, %zmm27, %zmm18
vpxorq %zmm28, %zmm18, %zmm26
vpternlogq $0x96, %zmm19, %zmm7, %zmm28
vpternlogq $0x96, %zmm20, %zmm2, %zmm28
vmovdqa64 %zmm5, %zmm29
vpternlogq $0x96, %zmm15, %zmm24, %zmm29
vpternlogq $0x96, %zmm12, %zmm21, %zmm29
vprolq $0x1, %zmm29, %zmm24
vpxorq %zmm0, %zmm24, %zmm24
vpxorq %zmm8, %zmm24, %zmm30
vpternlogq $0x96, %zmm16, %zmm13, %zmm8
vpternlogq $0x96, %zmm23, %zmm11, %zmm8
vprolq $0x1, %zmm8, %zmm0
vprolq $0x1, %zmm27, %zmm31
vpxorq %zmm28, %zmm0, %zmm27
vprolq $0x1, %zmm28, %zmm0
vpxorq %zmm8, %zmm31, %zmm31
vpxorq %zmm0, %zmm29, %zmm0
vpxorq %zmm3, %zmm27, %zmm3
vpxorq %zmm16, %zmm24, %zmm8
vpxorq %zmm21, %zmm31, %zmm16
vpxorq %zmm25, %zmm0, %zmm25
vprolq $0x2c, %zmm3, %zmm28
vprolq $0x2b, %zmm8, %zmm3
vprolq $0x15, %zmm16, %zmm21
vprolq $0xe, %zmm25, %zmm8
vmovdqa64 %zmm26, %zmm25
vpternlogq $0xd2, %zmm3, %zmm28, %zmm25
vmovdqa64 %zmm28, %zmm16
vpternlogq $0xd2, %zmm21, %zmm3, %zmm16
vpternlogq $0xd2, %zmm8, %zmm21, %zmm3
vmovdqu64 %zmm3, -0x80(%rsp)
vpternlogq $0xd2, %zmm26, %zmm8, %zmm21
vpternlogq $0xd2, %zmm28, %zmm26, %zmm8
vpxorq 0x17824(%rip){1to8}, %zmm25, %zmm29 # 0x313a0
vpxorq %zmm19, %zmm18, %zmm19
vpxorq %zmm22, %zmm27, %zmm22
vpxorq %zmm23, %zmm24, %zmm23
vpxorq %zmm5, %zmm31, %zmm25
vpxorq %zmm14, %zmm0, %zmm14
vprolq $0x3, %zmm19, %zmm19
vprolq $0x2d, %zmm22, %zmm5
vprolq $0x3d, %zmm23, %zmm22
vprolq $0x1c, %zmm25, %zmm23
vprolq $0x14, %zmm14, %zmm26
vmovdqa64 %zmm23, %zmm14
vpternlogq $0xd2, %zmm19, %zmm26, %zmm14
vmovdqa64 %zmm26, %zmm25
vpternlogq $0xd2, %zmm5, %zmm19, %zmm25
vpternlogq $0xd2, %zmm22, %zmm5, %zmm19
vpternlogq $0xd2, %zmm23, %zmm22, %zmm5
vpternlogq $0xd2, %zmm26, %zmm23, %zmm22
vpxorq %zmm20, %zmm18, %zmm20
vpxorq %zmm10, %zmm27, %zmm23
vpxorq %zmm13, %zmm24, %zmm13
vpxorq %zmm15, %zmm31, %zmm15
vpxorq %zmm17, %zmm0, %zmm26
vprolq $0x12, %zmm20, %zmm10
vprolq $0x1, %zmm23, %zmm23
vprolq $0x6, %zmm13, %zmm28
vprolq $0x19, %zmm15, %zmm17
vprolq $0x8, %zmm26, %zmm13
vmovdqa64 %zmm23, %zmm15
vpternlogq $0xd2, %zmm17, %zmm28, %zmm15
vmovdqa64 %zmm28, %zmm20
vpternlogq $0xd2, %zmm13, %zmm17, %zmm20
vpternlogq $0xd2, %zmm10, %zmm13, %zmm17
vpternlogq $0xd2, %zmm23, %zmm10, %zmm13
vpternlogq $0xd2, %zmm28, %zmm23, %zmm10
vpxorq %zmm7, %zmm18, %zmm7
vpxorq %zmm9, %zmm27, %zmm9
vpxorq %zmm11, %zmm24, %zmm23
vpxorq %zmm12, %zmm31, %zmm12
vpxorq %zmm4, %zmm0, %zmm24
vprolq $0x24, %zmm7, %zmm26
vprolq $0xa, %zmm9, %zmm11
vprolq $0xf, %zmm23, %zmm7
vprolq $0x38, %zmm12, %zmm4
vprolq $0x1b, %zmm24, %zmm9
vmovdqa64 %zmm9, %zmm12
vpternlogq $0xd2, %zmm11, %zmm26, %zmm12
vmovdqa64 %zmm26, %zmm28
vpternlogq $0xd2, %zmm7, %zmm11, %zmm28
vpternlogq $0xd2, %zmm4, %zmm7, %zmm11
vpternlogq $0xd2, %zmm9, %zmm4, %zmm7
vpternlogq $0xd2, %zmm26, %zmm9, %zmm4
vpxorq %zmm2, %zmm18, %zmm2
vpxorq %zmm6, %zmm27, %zmm6
vpxorq -0x40(%rsp), %zmm31, %zmm9
vpxorq %zmm1, %zmm0, %zmm1
vprolq $0x29, %zmm2, %zmm24
vprolq $0x2, %zmm6, %zmm0
vprolq $0x3e, %zmm30, %zmm2
vprolq $0x37, %zmm9, %zmm6
vprolq $0x27, %zmm1, %zmm1
vmovdqa64 %zmm2, %zmm27
vpternlogq $0xd2, %zmm1, %zmm6, %zmm27
vmovdqa64 %zmm6, %zmm23
vpternlogq $0xd2, %zmm24, %zmm1, %zmm23
vpternlogq $0xd2, %zmm0, %zmm24, %zmm1
vpternlogq $0xd2, %zmm2, %zmm0, %zmm24
vpternlogq $0xd2, %zmm6, %zmm2, %zmm0
vmovdqa64 %zmm20, %zmm2
vpternlogq $0x96, %zmm28, %zmm16, %zmm2
vpternlogq $0x96, %zmm23, %zmm25, %zmm2
vmovdqa64 %zmm4, %zmm6
vpternlogq $0x96, %zmm0, %zmm22, %zmm6
vpternlogq $0x96, %zmm8, %zmm10, %zmm6
vprolq $0x1, %zmm2, %zmm9
vpxorq %zmm9, %zmm6, %zmm26
vpxorq %zmm29, %zmm26, %zmm18
vpternlogq $0x96, %zmm14, %zmm12, %zmm29
vpternlogq $0x96, %zmm15, %zmm27, %zmm29
vmovdqa64 %zmm5, %zmm9
vpternlogq $0x96, %zmm13, %zmm24, %zmm9
vpternlogq $0x96, %zmm7, %zmm21, %zmm9
vprolq $0x1, %zmm9, %zmm30
vpxorq %zmm2, %zmm30, %zmm30
vpxorq %zmm1, %zmm30, %zmm3
vpternlogq $0x96, -0x80(%rsp), %zmm17, %zmm1
vpternlogq $0x96, %zmm19, %zmm11, %zmm1
vprolq $0x1, %zmm1, %zmm2
vprolq $0x1, %zmm6, %zmm6
vpxorq %zmm29, %zmm2, %zmm31
vprolq $0x1, %zmm29, %zmm2
vpxorq %zmm1, %zmm6, %zmm1
vpxorq %zmm2, %zmm9, %zmm2
vpxorq %zmm25, %zmm31, %zmm6
vpxorq %zmm17, %zmm30, %zmm9
vpxorq %zmm7, %zmm1, %zmm7
vpxorq %zmm0, %zmm2, %zmm0
vprolq $0x2c, %zmm6, %zmm17
vprolq $0x2b, %zmm9, %zmm25
vprolq $0x15, %zmm7, %zmm9
vprolq $0xe, %zmm0, %zmm6
vmovdqa64 %zmm18, %zmm0
vpternlogq $0xd2, %zmm25, %zmm17, %zmm0
vmovdqa64 %zmm17, %zmm7
vpternlogq $0xd2, %zmm9, %zmm25, %zmm7
vpternlogq $0xd2, %zmm6, %zmm9, %zmm25
vmovdqu64 %zmm25, -0x40(%rsp)
vpternlogq $0xd2, %zmm18, %zmm6, %zmm9
vpternlogq $0xd2, %zmm17, %zmm18, %zmm6
vpxorq 0x17554(%rip){1to8}, %zmm0, %zmm0 # 0x313a8
vpxorq %zmm15, %zmm26, %zmm15
vpxorq %zmm28, %zmm31, %zmm17
vpxorq %zmm21, %zmm1, %zmm18
vpxorq %zmm22, %zmm2, %zmm22
vprolq $0x3, %zmm15, %zmm21
vprolq $0x2d, %zmm17, %zmm28
vprolq $0x3d, %zmm3, %zmm15
vprolq $0x1c, %zmm18, %zmm3
vprolq $0x14, %zmm22, %zmm17
vmovdqa64 %zmm3, %zmm18
vpternlogq $0xd2, %zmm21, %zmm17, %zmm18
vmovdqa64 %zmm18, %zmm25
vmovdqu64 %zmm18, 0x40(%rsp)
vmovdqa64 %zmm17, %zmm18
vpternlogq $0xd2, %zmm28, %zmm21, %zmm18
vpternlogq $0xd2, %zmm15, %zmm28, %zmm21
vpternlogq $0xd2, %zmm3, %zmm15, %zmm28
vpternlogq $0xd2, %zmm17, %zmm3, %zmm15
vpxorq %zmm27, %zmm26, %zmm3
vpxorq %zmm16, %zmm31, %zmm16
vpxorq %zmm19, %zmm30, %zmm17
vpxorq %zmm13, %zmm1, %zmm13
vpxorq %zmm4, %zmm2, %zmm19
vprolq $0x12, %zmm3, %zmm4
vprolq $0x1, %zmm16, %zmm3
vprolq $0x6, %zmm17, %zmm16
vprolq $0x19, %zmm13, %zmm27
vprolq $0x8, %zmm19, %zmm17
vmovdqa64 %zmm3, %zmm22
vpternlogq $0xd2, %zmm27, %zmm16, %zmm22
vmovdqa64 %zmm16, %zmm13
vpternlogq $0xd2, %zmm17, %zmm27, %zmm13
vpternlogq $0xd2, %zmm4, %zmm17, %zmm27
vpternlogq $0xd2, %zmm3, %zmm4, %zmm17
vpternlogq $0xd2, %zmm16, %zmm3, %zmm4
vpxorq %zmm14, %zmm26, %zmm3
vpxorq %zmm20, %zmm31, %zmm14
vpxorq %zmm11, %zmm30, %zmm11
vpxorq %zmm24, %zmm1, %zmm19
vpxorq %zmm8, %zmm2, %zmm20
vprolq $0x24, %zmm3, %zmm3
vprolq $0xa, %zmm14, %zmm16
vprolq $0xf, %zmm11, %zmm8
vprolq $0x38, %zmm19, %zmm19
vprolq $0x1b, %zmm20, %zmm20
vmovdqa64 %zmm20, %zmm11
vpternlogq $0xd2, %zmm16, %zmm3, %zmm11
vmovdqu64 %zmm11, (%rsp)
vmovdqa64 %zmm3, %zmm14
vpternlogq $0xd2, %zmm8, %zmm16, %zmm14
vpternlogq $0xd2, %zmm19, %zmm8, %zmm16
vpternlogq $0xd2, %zmm20, %zmm19, %zmm8
vpternlogq $0xd2, %zmm3, %zmm20, %zmm19
vpxorq %zmm12, %zmm26, %zmm3
vpxorq %zmm23, %zmm31, %zmm12
vpxorq -0x80(%rsp), %zmm30, %zmm20
vpxorq %zmm5, %zmm1, %zmm1
vpxorq %zmm10, %zmm2, %zmm2
vprolq $0x29, %zmm3, %zmm5
vprolq $0x2, %zmm12, %zmm10
vprolq $0x3e, %zmm20, %zmm12
vprolq $0x37, %zmm1, %zmm1
vprolq $0x27, %zmm2, %zmm23
vmovdqa64 %zmm12, %zmm20
vpternlogq $0xd2, %zmm23, %zmm1, %zmm20
vmovdqa64 %zmm1, %zmm29
vpternlogq $0xd2, %zmm5, %zmm23, %zmm29
vpternlogq $0xd2, %zmm10, %zmm5, %zmm23
vpternlogq $0xd2, %zmm12, %zmm10, %zmm5
vpternlogq $0xd2, %zmm1, %zmm12, %zmm10
vmovdqa64 %zmm14, %zmm12
vpternlogq $0x96, %zmm18, %zmm13, %zmm12
vpternlogq $0x96, %zmm29, %zmm7, %zmm12
vmovdqa64 %zmm4, %zmm1
vpternlogq $0x96, %zmm6, %zmm15, %zmm1
vpternlogq $0x96, %zmm19, %zmm10, %zmm1
vprolq $0x1, %zmm12, %zmm2
vpxorq %zmm2, %zmm1, %zmm24
vpxorq %zmm0, %zmm24, %zmm2
vpternlogq $0x96, %zmm11, %zmm20, %zmm0
vpternlogq $0x96, %zmm25, %zmm22, %zmm0
vmovdqa64 %zmm5, %zmm25
vpternlogq $0x96, %zmm17, %zmm8, %zmm25
vpternlogq $0x96, %zmm9, %zmm28, %zmm25
vprolq $0x1, %zmm25, %zmm26
vpxorq %zmm12, %zmm26, %zmm26
vpxorq %zmm21, %zmm26, %zmm30
vmovdqu64 -0x40(%rsp), %zmm11
vpternlogq $0x96, %zmm23, %zmm11, %zmm21
vpternlogq $0x96, %zmm27, %zmm16, %zmm21
vprolq $0x1, %zmm21, %zmm12
vprolq $0x1, %zmm1, %zmm31
vpxorq %zmm0, %zmm12, %zmm1
vprolq $0x1, %zmm0, %zmm12
vpxorq %zmm21, %zmm31, %zmm3
vpxorq %zmm12, %zmm25, %zmm25
vpxorq %zmm18, %zmm1, %zmm12
vpxorq %zmm27, %zmm26, %zmm18
vpxorq %zmm8, %zmm3, %zmm21
vpxorq %zmm10, %zmm25, %zmm27
vprolq $0x2c, %zmm12, %zmm31
vprolq $0x2b, %zmm18, %zmm18
vprolq $0x15, %zmm21, %zmm10
vprolq $0xe, %zmm27, %zmm12
vmovdqa64 %zmm2, %zmm21
vpternlogq $0xd2, %zmm18, %zmm31, %zmm21
vmovdqa64 %zmm31, %zmm0
vpternlogq $0xd2, %zmm10, %zmm18, %zmm0
vmovdqu64 %zmm0, 0x80(%rsp)
vpternlogq $0xd2, %zmm12, %zmm10, %zmm18
vpternlogq $0xd2, %zmm2, %zmm12, %zmm10
vpternlogq $0xd2, %zmm31, %zmm2, %zmm12
vpxorq 0x17269(%rip){1to8}, %zmm21, %zmm31 # 0x313b0
vpxorq %zmm22, %zmm24, %zmm2
vpxorq %zmm14, %zmm1, %zmm14
vpxorq %zmm23, %zmm26, %zmm21
vpxorq %zmm9, %zmm3, %zmm9
vpxorq %zmm15, %zmm25, %zmm22
vprolq $0x3, %zmm2, %zmm15
vprolq $0x2d, %zmm14, %zmm14
vprolq $0x3d, %zmm21, %zmm23
vprolq $0x1c, %zmm9, %zmm2
vprolq $0x14, %zmm22, %zmm21
vmovdqa64 %zmm2, %zmm9
vpternlogq $0xd2, %zmm15, %zmm21, %zmm9
vmovdqa64 %zmm21, %zmm27
vpternlogq $0xd2, %zmm14, %zmm15, %zmm27
vpternlogq $0xd2, %zmm23, %zmm14, %zmm15
vpternlogq $0xd2, %zmm2, %zmm23, %zmm14
vpternlogq $0xd2, %zmm21, %zmm2, %zmm23
vpxorq %zmm20, %zmm24, %zmm2
vpxorq %zmm7, %zmm1, %zmm7
vpxorq %zmm17, %zmm3, %zmm20
vpxorq %zmm19, %zmm25, %zmm19
vprolq $0x12, %zmm2, %zmm17
vprolq $0x1, %zmm7, %zmm2
vprolq $0x6, %zmm30, %zmm21
vprolq $0x19, %zmm20, %zmm30
vprolq $0x8, %zmm19, %zmm8
vmovdqa64 %zmm2, %zmm19
vpternlogq $0xd2, %zmm30, %zmm21, %zmm19
vmovdqa64 %zmm21, %zmm20
vpternlogq $0xd2, %zmm8, %zmm30, %zmm20
vpternlogq $0xd2, %zmm17, %zmm8, %zmm30
vpternlogq $0xd2, %zmm2, %zmm17, %zmm8
vpternlogq $0xd2, %zmm21, %zmm2, %zmm17
vpxorq 0x40(%rsp), %zmm24, %zmm2
vpxorq %zmm13, %zmm1, %zmm13
vpxorq %zmm16, %zmm26, %zmm16
vpxorq %zmm5, %zmm3, %zmm21
vpxorq %zmm6, %zmm25, %zmm0
vprolq $0x24, %zmm2, %zmm6
vprolq $0xa, %zmm13, %zmm22
vprolq $0xf, %zmm16, %zmm5
vprolq $0x38, %zmm21, %zmm7
vprolq $0x1b, %zmm0, %zmm0
vmovdqa64 %zmm0, %zmm2
vpternlogq $0xd2, %zmm22, %zmm6, %zmm2
vmovdqa64 %zmm2, %zmm13
vmovdqu64 %zmm2, 0xc0(%rsp)
vmovdqa64 %zmm6, %zmm16
vpternlogq $0xd2, %zmm5, %zmm22, %zmm16
vpternlogq $0xd2, %zmm7, %zmm5, %zmm22
vpternlogq $0xd2, %zmm0, %zmm7, %zmm5
vpternlogq $0xd2, %zmm6, %zmm0, %zmm7
vpxorq (%rsp), %zmm24, %zmm0
vpxorq %zmm29, %zmm1, %zmm1
vpxorq %zmm11, %zmm26, %zmm6
vpxorq %zmm28, %zmm3, %zmm11
vpxorq %zmm4, %zmm25, %zmm4
vprolq $0x29, %zmm0, %zmm25
vprolq $0x2, %zmm1, %zmm3
vprolq $0x3e, %zmm6, %zmm0
vprolq $0x37, %zmm11, %zmm6
vprolq $0x27, %zmm4, %zmm2
vmovdqa64 %zmm0, %zmm11
vpternlogq $0xd2, %zmm2, %zmm6, %zmm11
vmovdqa64 %zmm6, %zmm24
vpternlogq $0xd2, %zmm25, %zmm2, %zmm24
vpternlogq $0xd2, %zmm3, %zmm25, %zmm2
vpternlogq $0xd2, %zmm0, %zmm3, %zmm25
vpternlogq $0xd2, %zmm6, %zmm0, %zmm3
vmovdqa64 %zmm27, %zmm0
vmovdqu64 0x80(%rsp), %zmm21
vpternlogq $0x96, %zmm21, %zmm16, %zmm0
vpternlogq $0x96, %zmm24, %zmm20, %zmm0
vmovdqa64 %zmm3, %zmm4
vpternlogq $0x96, %zmm7, %zmm23, %zmm4
vpternlogq $0x96, %zmm17, %zmm12, %zmm4
vprolq $0x1, %zmm0, %zmm6
vpxorq %zmm6, %zmm4, %zmm29
vpxorq %zmm31, %zmm29, %zmm6
vpternlogq $0x96, %zmm11, %zmm19, %zmm31
vpternlogq $0x96, %zmm13, %zmm9, %zmm31
vmovdqa64 %zmm5, %zmm13
vpternlogq $0x96, %zmm8, %zmm10, %zmm13
vpternlogq $0x96, %zmm14, %zmm25, %zmm13
vprolq $0x1, %zmm13, %zmm26
vpxorq %zmm0, %zmm26, %zmm28
vpxorq %zmm30, %zmm28, %zmm26
vmovdqa64 %zmm30, %zmm0
vpternlogq $0x96, %zmm15, %zmm2, %zmm0
vpternlogq $0x96, %zmm18, %zmm22, %zmm0
vprolq $0x1, %zmm0, %zmm30
vprolq $0x1, %zmm4, %zmm4
vpxorq %zmm31, %zmm30, %zmm30
vprolq $0x1, %zmm31, %zmm1
vpxorq %zmm0, %zmm4, %zmm31
vpxorq %zmm1, %zmm13, %zmm0
vpxorq %zmm27, %zmm30, %zmm1
vpxorq %zmm5, %zmm31, %zmm4
vpxorq %zmm3, %zmm0, %zmm3
vprolq $0x2c, %zmm1, %zmm1
vprolq $0x2b, %zmm26, %zmm13
vprolq $0x15, %zmm4, %zmm5
vprolq $0xe, %zmm3, %zmm4
vmovdqa64 %zmm6, %zmm3
vpternlogq $0xd2, %zmm13, %zmm1, %zmm3
vmovdqa64 %zmm1, %zmm26
vpternlogq $0xd2, %zmm5, %zmm13, %zmm26
vmovdqa64 %zmm26, %zmm27
vmovdqu64 %zmm26, -0x40(%rsp)
vpternlogq $0xd2, %zmm4, %zmm5, %zmm13
vpternlogq $0xd2, %zmm6, %zmm4, %zmm5
vpternlogq $0xd2, %zmm1, %zmm6, %zmm4
vpxorq 0x16f7e(%rip){1to8}, %zmm3, %zmm26 # 0x313b8
vpxorq %zmm19, %zmm29, %zmm1
vpxorq %zmm16, %zmm30, %zmm3
vpxorq %zmm2, %zmm28, %zmm2
vpxorq %zmm10, %zmm31, %zmm16
vpxorq %zmm23, %zmm0, %zmm19
vprolq $0x3, %zmm1, %zmm6
vprolq $0x2d, %zmm3, %zmm23
vprolq $0x3d, %zmm2, %zmm10
vprolq $0x1c, %zmm16, %zmm2
vprolq $0x14, %zmm19, %zmm3
vmovdqa64 %zmm2, %zmm16
vpternlogq $0xd2, %zmm6, %zmm3, %zmm16
vmovdqu64 %zmm16, (%rsp)
vmovdqa64 %zmm3, %zmm1
vpternlogq $0xd2, %zmm23, %zmm6, %zmm1
vmovdqu64 %zmm1, -0x80(%rsp)
vpternlogq $0xd2, %zmm10, %zmm23, %zmm6
vpternlogq $0xd2, %zmm2, %zmm10, %zmm23
vmovdqu64 %zmm23, 0x40(%rsp)
vpternlogq $0xd2, %zmm3, %zmm2, %zmm10
vpxorq %zmm11, %zmm29, %zmm2
vpxorq %zmm21, %zmm30, %zmm3
vpxorq %zmm15, %zmm28, %zmm11
vpxorq %zmm8, %zmm31, %zmm8
vpxorq %zmm7, %zmm0, %zmm7
vprolq $0x12, %zmm2, %zmm2
vprolq $0x1, %zmm3, %zmm15
vprolq $0x6, %zmm11, %zmm23
vprolq $0x19, %zmm8, %zmm19
vprolq $0x8, %zmm7, %zmm11
vmovdqa64 %zmm15, %zmm3
vpternlogq $0xd2, %zmm19, %zmm23, %zmm3
vmovdqa64 %zmm23, %zmm7
vpternlogq $0xd2, %zmm11, %zmm19, %zmm7
vpternlogq $0xd2, %zmm2, %zmm11, %zmm19
vpternlogq $0xd2, %zmm15, %zmm2, %zmm11
vpternlogq $0xd2, %zmm23, %zmm15, %zmm2
vpxorq %zmm9, %zmm29, %zmm8
vpxorq %zmm20, %zmm30, %zmm9
vpxorq %zmm22, %zmm28, %zmm15
vpxorq %zmm25, %zmm31, %zmm20
vpxorq %zmm12, %zmm0, %zmm22
vprolq $0x24, %zmm8, %zmm8
vprolq $0xa, %zmm9, %zmm12
vprolq $0xf, %zmm15, %zmm23
vprolq $0x38, %zmm20, %zmm15
vprolq $0x1b, %zmm22, %zmm22
vmovdqa64 %zmm22, %zmm9
vpternlogq $0xd2, %zmm12, %zmm8, %zmm9
vmovdqa64 %zmm8, %zmm20
vpternlogq $0xd2, %zmm23, %zmm12, %zmm20
vpternlogq $0xd2, %zmm15, %zmm23, %zmm12
vpternlogq $0xd2, %zmm22, %zmm15, %zmm23
vpternlogq $0xd2, %zmm8, %zmm22, %zmm15
vpxorq 0xc0(%rsp), %zmm29, %zmm8
vpxorq %zmm24, %zmm30, %zmm21
vpxorq %zmm18, %zmm28, %zmm18
vpxorq %zmm14, %zmm31, %zmm14
vpxorq %zmm17, %zmm0, %zmm0
vprolq $0x29, %zmm8, %zmm17
vprolq $0x2, %zmm21, %zmm8
vprolq $0x3e, %zmm18, %zmm18
vprolq $0x37, %zmm14, %zmm22
vprolq $0x27, %zmm0, %zmm24
vmovdqa64 %zmm18, %zmm21
vpternlogq $0xd2, %zmm24, %zmm22, %zmm21
vmovdqa64 %zmm22, %zmm14
vpternlogq $0xd2, %zmm17, %zmm24, %zmm14
vpternlogq $0xd2, %zmm8, %zmm17, %zmm24
vpternlogq $0xd2, %zmm18, %zmm8, %zmm17
vpternlogq $0xd2, %zmm22, %zmm18, %zmm8
vmovdqa64 %zmm27, %zmm0
vpternlogq $0x96, %zmm7, %zmm1, %zmm0
vpternlogq $0x96, %zmm14, %zmm20, %zmm0
vmovdqa64 %zmm4, %zmm27
vpternlogq $0x96, %zmm2, %zmm10, %zmm27
vpternlogq $0x96, %zmm8, %zmm15, %zmm27
vprolq $0x1, %zmm0, %zmm18
vpxorq %zmm18, %zmm27, %zmm22
vpxorq %zmm26, %zmm22, %zmm25
vmovdqa64 %zmm26, %zmm28
vpternlogq $0x96, %zmm3, %zmm16, %zmm28
vpternlogq $0x96, %zmm21, %zmm9, %zmm28
vmovdqa64 %zmm5, %zmm29
vmovdqu64 0x40(%rsp), %zmm1
vpternlogq $0x96, %zmm11, %zmm1, %zmm29
vpternlogq $0x96, %zmm17, %zmm23, %zmm29
vprolq $0x1, %zmm29, %zmm18
vpxorq %zmm0, %zmm18, %zmm26
vpxorq %zmm13, %zmm26, %zmm30
vpternlogq $0x96, %zmm19, %zmm6, %zmm13
vpternlogq $0x96, %zmm24, %zmm12, %zmm13
vprolq $0x1, %zmm13, %zmm0
vprolq $0x1, %zmm27, %zmm18
vpxorq %zmm28, %zmm0, %zmm0
vprolq $0x1, %zmm28, %zmm27
vpxorq %zmm13, %zmm18, %zmm28
vpxorq %zmm27, %zmm29, %zmm31
vpxorq -0x80(%rsp), %zmm0, %zmm13
vpxorq %zmm19, %zmm26, %zmm16
vpxorq %zmm23, %zmm28, %zmm18
vpxorq %zmm8, %zmm31, %zmm19
vprolq $0x2c, %zmm13, %zmm27
vprolq $0x2b, %zmm16, %zmm8
vprolq $0x15, %zmm18, %zmm23
vprolq $0xe, %zmm19, %zmm13
vmovdqa64 %zmm25, %zmm16
vpternlogq $0xd2, %zmm8, %zmm27, %zmm16
vmovdqa64 %zmm27, %zmm19
vpternlogq $0xd2, %zmm23, %zmm8, %zmm19
vpternlogq $0xd2, %zmm13, %zmm23, %zmm8
vmovdqu64 %zmm8, -0x80(%rsp)
vpternlogq $0xd2, %zmm25, %zmm13, %zmm23
vpternlogq $0xd2, %zmm27, %zmm25, %zmm13
vpxorq 0x16c83(%rip){1to8}, %zmm16, %zmm29 # 0x313c0
vpxorq %zmm3, %zmm22, %zmm3
vpxorq %zmm20, %zmm0, %zmm16
vpxorq %zmm24, %zmm26, %zmm20
vpxorq %zmm5, %zmm28, %zmm24
vpxorq %zmm10, %zmm31, %zmm10
vprolq $0x3, %zmm3, %zmm18
vprolq $0x2d, %zmm16, %zmm8
vprolq $0x3d, %zmm20, %zmm25
vprolq $0x1c, %zmm24, %zmm3
vprolq $0x14, %zmm10, %zmm10
vmovdqa64 %zmm3, %zmm16
vpternlogq $0xd2, %zmm18, %zmm10, %zmm16
vmovdqa64 %zmm10, %zmm27
vpternlogq $0xd2, %zmm8, %zmm18, %zmm27
vpternlogq $0xd2, %zmm25, %zmm8, %zmm18
vpternlogq $0xd2, %zmm3, %zmm25, %zmm8
vpternlogq $0xd2, %zmm10, %zmm3, %zmm25
vpxorq %zmm21, %zmm22, %zmm3
vpxorq -0x40(%rsp), %zmm0, %zmm20
vpxorq %zmm6, %zmm26, %zmm6
vpxorq %zmm11, %zmm28, %zmm11
vpxorq %zmm15, %zmm31, %zmm15
vprolq $0x12, %zmm3, %zmm10
vprolq $0x1, %zmm20, %zmm20
vprolq $0x6, %zmm6, %zmm21
vprolq $0x19, %zmm11, %zmm6
vprolq $0x8, %zmm15, %zmm3
vmovdqa64 %zmm20, %zmm15
vpternlogq $0xd2, %zmm6, %zmm21, %zmm15
vmovdqa64 %zmm21, %zmm11
vpternlogq $0xd2, %zmm3, %zmm6, %zmm11
vpternlogq $0xd2, %zmm10, %zmm3, %zmm6
vpternlogq $0xd2, %zmm20, %zmm10, %zmm3
vpternlogq $0xd2, %zmm21, %zmm20, %zmm10
vpxorq (%rsp), %zmm22, %zmm20
vpxorq %zmm7, %zmm0, %zmm7
vpxorq %zmm12, %zmm26, %zmm12
vpxorq %zmm17, %zmm28, %zmm17
vpxorq %zmm4, %zmm31, %zmm4
vprolq $0x24, %zmm20, %zmm21
vprolq $0xa, %zmm7, %zmm20
vprolq $0xf, %zmm12, %zmm7
vprolq $0x38, %zmm17, %zmm12
vprolq $0x1b, %zmm4, %zmm24
vmovdqa64 %zmm24, %zmm17
vpternlogq $0xd2, %zmm20, %zmm21, %zmm17
vmovdqa64 %zmm21, %zmm4
vpternlogq $0xd2, %zmm7, %zmm20, %zmm4
vpternlogq $0xd2, %zmm12, %zmm7, %zmm20
vpternlogq $0xd2, %zmm24, %zmm12, %zmm7
vpternlogq $0xd2, %zmm21, %zmm24, %zmm12
vpxorq %zmm9, %zmm22, %zmm9
vpxorq %zmm14, %zmm0, %zmm0
vpxorq %zmm1, %zmm28, %zmm14
vpxorq %zmm2, %zmm31, %zmm2
vprolq $0x29, %zmm9, %zmm26
vprolq $0x2, %zmm0, %zmm1
vprolq $0x3e, %zmm30, %zmm9
vprolq $0x37, %zmm14, %zmm14
vprolq $0x27, %zmm2, %zmm0
vmovdqa64 %zmm9, %zmm22
vpternlogq $0xd2, %zmm0, %zmm14, %zmm22
vmovdqa64 %zmm14, %zmm24
vpternlogq $0xd2, %zmm26, %zmm0, %zmm24
vpternlogq $0xd2, %zmm1, %zmm26, %zmm0
vpternlogq $0xd2, %zmm9, %zmm1, %zmm26
vpternlogq $0xd2, %zmm14, %zmm9, %zmm1
vmovdqa64 %zmm11, %zmm2
vpternlogq $0x96, %zmm4, %zmm19, %zmm2
vpternlogq $0x96, %zmm24, %zmm27, %zmm2
vmovdqa64 %zmm12, %zmm9
vpternlogq $0x96, %zmm1, %zmm25, %zmm9
vpternlogq $0x96, %zmm13, %zmm10, %zmm9
vprolq $0x1, %zmm2, %zmm14
vpxorq %zmm14, %zmm9, %zmm28
vpxorq %zmm29, %zmm28, %zmm14
vmovdqa64 %zmm29, %zmm21
vpternlogq $0x96, %zmm16, %zmm17, %zmm21
vpternlogq $0x96, %zmm15, %zmm22, %zmm21
vmovdqa64 %zmm8, %zmm5
vpternlogq $0x96, %zmm3, %zmm26, %zmm5
vpternlogq $0x96, %zmm7, %zmm23, %zmm5
vprolq $0x1, %zmm5, %zmm29
vpxorq %zmm2, %zmm29, %zmm29
vpxorq %zmm0, %zmm29, %zmm2
vpternlogq $0x96, -0x80(%rsp), %zmm6, %zmm0
vpternlogq $0x96, %zmm18, %zmm20, %zmm0
vprolq $0x1, %zmm0, %zmm30
vprolq $0x1, %zmm9, %zmm9
vpxorq %zmm21, %zmm30, %zmm30
vprolq $0x1, %zmm21, %zmm21
vpxorq %zmm0, %zmm9, %zmm31
vpxorq %zmm21, %zmm5, %zmm0
vpxorq %zmm27, %zmm30, %zmm5
vpxorq %zmm6, %zmm29, %zmm6
vpxorq %zmm7, %zmm31, %zmm7
vpxorq %zmm1, %zmm0, %zmm1
vprolq $0x2c, %zmm5, %zmm9
vprolq $0x2b, %zmm6, %zmm27
vprolq $0x15, %zmm7, %zmm7
vprolq $0xe, %zmm1, %zmm5
vmovdqa64 %zmm14, %zmm1
vpternlogq $0xd2, %zmm27, %zmm9, %zmm1
vmovdqa64 %zmm9, %zmm6
vpternlogq $0xd2, %zmm7, %zmm27, %zmm6
vmovdqu64 %zmm6, -0x40(%rsp)
vpternlogq $0xd2, %zmm5, %zmm7, %zmm27
vpternlogq $0xd2, %zmm14, %zmm5, %zmm7
vpternlogq $0xd2, %zmm9, %zmm14, %zmm5
vpxorq 0x169ac(%rip){1to8}, %zmm1, %zmm1 # 0x313c8
vmovdqu64 %zmm1, (%rsp)
vpxorq %zmm15, %zmm28, %zmm1
vpxorq %zmm4, %zmm30, %zmm4
vpxorq %zmm23, %zmm31, %zmm9
vpxorq %zmm25, %zmm0, %zmm15
vprolq $0x3, %zmm1, %zmm21
vprolq $0x2d, %zmm4, %zmm1
vprolq $0x3d, %zmm2, %zmm14
vprolq $0x1c, %zmm9, %zmm2
vprolq $0x14, %zmm15, %zmm15
vmovdqa64 %zmm2, %zmm4
vpternlogq $0xd2, %zmm21, %zmm15, %zmm4
vmovdqa64 %zmm15, %zmm9
vpternlogq $0xd2, %zmm1, %zmm21, %zmm9
vpternlogq $0xd2, %zmm14, %zmm1, %zmm21
vpternlogq $0xd2, %zmm2, %zmm14, %zmm1
vpternlogq $0xd2, %zmm15, %zmm2, %zmm14
vpxorq %zmm22, %zmm28, %zmm2
vpxorq %zmm19, %zmm30, %zmm15
vpxorq %zmm18, %zmm29, %zmm18
vpxorq %zmm3, %zmm31, %zmm19
vpxorq %zmm12, %zmm0, %zmm12
vprolq $0x12, %zmm2, %zmm3
vprolq $0x1, %zmm15, %zmm2
vprolq $0x6, %zmm18, %zmm23
vprolq $0x19, %zmm19, %zmm18
vprolq $0x8, %zmm12, %zmm15
vmovdqa64 %zmm2, %zmm22
vpternlogq $0xd2, %zmm18, %zmm23, %zmm22
vmovdqa64 %zmm23, %zmm12
vpternlogq $0xd2, %zmm15, %zmm18, %zmm12
vpternlogq $0xd2, %zmm3, %zmm15, %zmm18
vpternlogq $0xd2, %zmm2, %zmm3, %zmm15
vpternlogq $0xd2, %zmm23, %zmm2, %zmm3
vpxorq %zmm16, %zmm28, %zmm2
vpxorq %zmm11, %zmm30, %zmm11
vpxorq %zmm20, %zmm29, %zmm16
vpxorq %zmm26, %zmm31, %zmm20
vpxorq %zmm13, %zmm0, %zmm23
vprolq $0x24, %zmm2, %zmm2
vprolq $0xa, %zmm11, %zmm13
vprolq $0xf, %zmm16, %zmm19
vprolq $0x38, %zmm20, %zmm16
vprolq $0x1b, %zmm23, %zmm23
vmovdqa64 %zmm23, %zmm11
vpternlogq $0xd2, %zmm13, %zmm2, %zmm11
vmovdqa64 %zmm2, %zmm20
vpternlogq $0xd2, %zmm19, %zmm13, %zmm20
vpternlogq $0xd2, %zmm16, %zmm19, %zmm13
vpternlogq $0xd2, %zmm23, %zmm16, %zmm19
vpternlogq $0xd2, %zmm2, %zmm23, %zmm16
vpxorq %zmm17, %zmm28, %zmm2
vpxorq %zmm24, %zmm30, %zmm17
vpxorq -0x80(%rsp), %zmm29, %zmm23
vpxorq %zmm8, %zmm31, %zmm24
vpxorq %zmm10, %zmm0, %zmm0
vprolq $0x29, %zmm2, %zmm10
vprolq $0x2, %zmm17, %zmm8
vprolq $0x3e, %zmm23, %zmm2
vprolq $0x37, %zmm24, %zmm24
vprolq $0x27, %zmm0, %zmm23
vmovdqa64 %zmm2, %zmm17
vpternlogq $0xd2, %zmm23, %zmm24, %zmm17
vmovdqa64 %zmm24, %zmm31
vpternlogq $0xd2, %zmm10, %zmm23, %zmm31
vpternlogq $0xd2, %zmm8, %zmm10, %zmm23
vpternlogq $0xd2, %zmm2, %zmm8, %zmm10
vpternlogq $0xd2, %zmm24, %zmm2, %zmm8
vmovdqa64 %zmm20, %zmm2
vpternlogq $0x96, %zmm9, %zmm12, %zmm2
vpternlogq $0x96, %zmm31, %zmm6, %zmm2
vmovdqa64 %zmm3, %zmm26
vpternlogq $0x96, %zmm5, %zmm14, %zmm26
vpternlogq $0x96, %zmm16, %zmm8, %zmm26
vprolq $0x1, %zmm2, %zmm0
vpxorq %zmm0, %zmm26, %zmm24
vmovdqu64 (%rsp), %zmm6
vpxorq %zmm6, %zmm24, %zmm0
vpternlogq $0x96, %zmm11, %zmm17, %zmm6
vpternlogq $0x96, %zmm4, %zmm22, %zmm6
vmovdqa64 %zmm10, %zmm30
vpternlogq $0x96, %zmm15, %zmm19, %zmm30
vpternlogq $0x96, %zmm7, %zmm1, %zmm30
vprolq $0x1, %zmm30, %zmm25
vpxorq %zmm2, %zmm25, %zmm25
vpxorq %zmm21, %zmm25, %zmm2
vpternlogq $0x96, %zmm23, %zmm27, %zmm21
vpternlogq $0x96, %zmm18, %zmm13, %zmm21
vprolq $0x1, %zmm21, %zmm28
vprolq $0x1, %zmm26, %zmm26
vpxorq %zmm6, %zmm28, %zmm28
vprolq $0x1, %zmm6, %zmm6
vpxorq %zmm21, %zmm26, %zmm29
vpxorq %zmm6, %zmm30, %zmm30
vpxorq %zmm9, %zmm28, %zmm6
vpxorq %zmm18, %zmm25, %zmm9
vpxorq %zmm19, %zmm29, %zmm18
vpxorq %zmm8, %zmm30, %zmm21
vprolq $0x2c, %zmm6, %zmm6
vprolq $0x2b, %zmm9, %zmm8
vprolq $0x15, %zmm18, %zmm19
vprolq $0xe, %zmm21, %zmm9
vmovdqa64 %zmm0, %zmm21
vpternlogq $0xd2, %zmm8, %zmm6, %zmm21
vmovdqa64 %zmm6, %zmm18
vpternlogq $0xd2, %zmm19, %zmm8, %zmm18
vmovdqu64 %zmm18, (%rsp)
vpternlogq $0xd2, %zmm9, %zmm19, %zmm8
vmovdqu64 %zmm8, -0x80(%rsp)
vpternlogq $0xd2, %zmm0, %zmm9, %zmm19
vpternlogq $0xd2, %zmm6, %zmm0, %zmm9
vpxorq 0x166c9(%rip){1to8}, %zmm21, %zmm0 # 0x313d0
vpxorq %zmm22, %zmm24, %zmm6
vpxorq %zmm20, %zmm28, %zmm20
vpxorq %zmm23, %zmm25, %zmm21
vpxorq %zmm7, %zmm29, %zmm22
vpxorq %zmm14, %zmm30, %zmm26
vprolq $0x3, %zmm6, %zmm7
vprolq $0x2d, %zmm20, %zmm14
vprolq $0x3d, %zmm21, %zmm23
vprolq $0x1c, %zmm22, %zmm6
vprolq $0x14, %zmm26, %zmm21
vmovdqa64 %zmm6, %zmm20
vpternlogq $0xd2, %zmm7, %zmm21, %zmm20
vmovdqa64 %zmm21, %zmm26
vpternlogq $0xd2, %zmm14, %zmm7, %zmm26
vpternlogq $0xd2, %zmm23, %zmm14, %zmm7
vpternlogq $0xd2, %zmm6, %zmm23, %zmm14
vpternlogq $0xd2, %zmm21, %zmm6, %zmm23
vpxorq %zmm17, %zmm24, %zmm6
vpxorq -0x40(%rsp), %zmm28, %zmm21
vpxorq %zmm15, %zmm29, %zmm15
vpxorq %zmm16, %zmm30, %zmm22
vprolq $0x12, %zmm6, %zmm17
vprolq $0x1, %zmm21, %zmm21
vprolq $0x6, %zmm2, %zmm2
vprolq $0x19, %zmm15, %zmm16
vprolq $0x8, %zmm22, %zmm22
vmovdqa64 %zmm21, %zmm8
vpternlogq $0xd2, %zmm16, %zmm2, %zmm8
vmovdqa64 %zmm2, %zmm15
vpternlogq $0xd2, %zmm22, %zmm16, %zmm15
vpternlogq $0xd2, %zmm17, %zmm22, %zmm16
vpternlogq $0xd2, %zmm21, %zmm17, %zmm22
vpternlogq $0xd2, %zmm2, %zmm21, %zmm17
vpxorq %zmm4, %zmm24, %zmm2
vpxorq %zmm12, %zmm28, %zmm12
vpxorq %zmm13, %zmm25, %zmm13
vpxorq %zmm10, %zmm29, %zmm21
vpxorq %zmm5, %zmm30, %zmm5
vprolq $0x24, %zmm2, %zmm4
vprolq $0xa, %zmm12, %zmm12
vprolq $0xf, %zmm13, %zmm2
vprolq $0x38, %zmm21, %zmm6
vprolq $0x1b, %zmm5, %zmm13
vmovdqa64 %zmm13, %zmm21
vpternlogq $0xd2, %zmm12, %zmm4, %zmm21
vmovdqa64 %zmm4, %zmm5
vpternlogq $0xd2, %zmm2, %zmm12, %zmm5
vpternlogq $0xd2, %zmm6, %zmm2, %zmm12
vpternlogq $0xd2, %zmm13, %zmm6, %zmm2
vpternlogq $0xd2, %zmm4, %zmm13, %zmm6
vpxorq %zmm11, %zmm24, %zmm4
vpxorq %zmm31, %zmm28, %zmm11
vpxorq %zmm27, %zmm25, %zmm13
vpxorq %zmm1, %zmm29, %zmm1
vpxorq %zmm3, %zmm30, %zmm24
vprolq $0x29, %zmm4, %zmm25
vprolq $0x2, %zmm11, %zmm3
vprolq $0x3e, %zmm13, %zmm4
vprolq $0x37, %zmm1, %zmm13
vprolq $0x27, %zmm24, %zmm1
vmovdqa64 %zmm4, %zmm11
vpternlogq $0xd2, %zmm1, %zmm13, %zmm11
vmovdqa64 %zmm13, %zmm24
vpternlogq $0xd2, %zmm25, %zmm1, %zmm24
vpternlogq $0xd2, %zmm3, %zmm25, %zmm1
vpternlogq $0xd2, %zmm4, %zmm3, %zmm25
vpternlogq $0xd2, %zmm13, %zmm4, %zmm3
vmovdqa64 %zmm26, %zmm4
vpternlogq $0x96, %zmm18, %zmm5, %zmm4
vpternlogq $0x96, %zmm24, %zmm15, %zmm4
vmovdqa64 %zmm3, %zmm13
vpternlogq $0x96, %zmm6, %zmm23, %zmm13
vpternlogq $0x96, %zmm17, %zmm9, %zmm13
vprolq $0x1, %zmm4, %zmm27
vpxorq %zmm27, %zmm13, %zmm28
vpxorq %zmm0, %zmm28, %zmm27
vpternlogq $0x96, %zmm11, %zmm8, %zmm0
vpternlogq $0x96, %zmm21, %zmm20, %zmm0
vmovdqa64 %zmm2, %zmm10
vpternlogq $0x96, %zmm22, %zmm19, %zmm10
vpternlogq $0x96, %zmm14, %zmm25, %zmm10
vprolq $0x1, %zmm10, %zmm29
vpxorq %zmm4, %zmm29, %zmm29
vpxorq %zmm16, %zmm29, %zmm4
vpternlogq $0x96, %zmm7, %zmm1, %zmm16
vpternlogq $0x96, -0x80(%rsp), %zmm12, %zmm16
vprolq $0x1, %zmm16, %zmm30
vprolq $0x1, %zmm13, %zmm13
vpxorq %zmm0, %zmm30, %zmm30
vprolq $0x1, %zmm0, %zmm0
vpxorq %zmm16, %zmm13, %zmm31
vpxorq %zmm0, %zmm10, %zmm0
vpxorq %zmm26, %zmm30, %zmm10
vpxorq %zmm2, %zmm31, %zmm2
vpxorq %zmm3, %zmm0, %zmm16
vprolq $0x2c, %zmm10, %zmm10
vprolq $0x2b, %zmm4, %zmm13
vprolq $0x15, %zmm2, %zmm3
vprolq $0xe, %zmm16, %zmm4
vmovdqa64 %zmm27, %zmm2
vpternlogq $0xd2, %zmm13, %zmm10, %zmm2
vmovdqa64 %zmm10, %zmm18
vpternlogq $0xd2, %zmm3, %zmm13, %zmm18
vmovdqu64 %zmm18, 0x80(%rsp)
vpternlogq $0xd2, %zmm4, %zmm3, %zmm13
vpternlogq $0xd2, %zmm27, %zmm4, %zmm3
vpternlogq $0xd2, %zmm10, %zmm27, %zmm4
vmovdqa64 %zmm4, %zmm26
vmovdqu64 %zmm4, 0x40(%rsp)
vpxorq 0x163f1(%rip){1to8}, %zmm2, %zmm27 # 0x313d8
vpxorq %zmm8, %zmm28, %zmm2
vpxorq %zmm5, %zmm30, %zmm4
vpxorq %zmm1, %zmm29, %zmm5
vpxorq %zmm19, %zmm31, %zmm8
vpxorq %zmm23, %zmm0, %zmm16
vprolq $0x3, %zmm2, %zmm1
vprolq $0x2d, %zmm4, %zmm19
vprolq $0x3d, %zmm5, %zmm10
vprolq $0x1c, %zmm8, %zmm2
vprolq $0x14, %zmm16, %zmm5
vmovdqa64 %zmm2, %zmm16
vpternlogq $0xd2, %zmm1, %zmm5, %zmm16
vmovdqu64 %zmm16, 0x140(%rsp)
vmovdqa64 %zmm5, %zmm4
vpternlogq $0xd2, %zmm19, %zmm1, %zmm4
vmovdqu64 %zmm4, 0x100(%rsp)
vpternlogq $0xd2, %zmm10, %zmm19, %zmm1
vmovdqu64 %zmm1, -0x40(%rsp)
vpternlogq $0xd2, %zmm2, %zmm10, %zmm19
vmovdqa64 %zmm19, %zmm4
vmovdqu64 %zmm19, 0xc0(%rsp)
vpternlogq $0xd2, %zmm5, %zmm2, %zmm10
vpxorq %zmm11, %zmm28, %zmm2
vpxorq (%rsp), %zmm30, %zmm5
vpxorq %zmm7, %zmm29, %zmm7
vpxorq %zmm22, %zmm31, %zmm8
vpxorq %zmm6, %zmm0, %zmm6
vprolq $0x12, %zmm2, %zmm2
vprolq $0x1, %zmm5, %zmm5
vprolq $0x6, %zmm7, %zmm22
vprolq $0x19, %zmm8, %zmm19
vprolq $0x8, %zmm6, %zmm11
vmovdqa64 %zmm5, %zmm7
vpternlogq $0xd2, %zmm19, %zmm22, %zmm7
vmovdqa64 %zmm22, %zmm1
vpternlogq $0xd2, %zmm11, %zmm19, %zmm1
vmovdqu64 %zmm1, (%rsp)
vpternlogq $0xd2, %zmm2, %zmm11, %zmm19
vpternlogq $0xd2, %zmm5, %zmm2, %zmm11
vpternlogq $0xd2, %zmm22, %zmm5, %zmm2
vpxorq %zmm20, %zmm28, %zmm5
vpxorq %zmm15, %zmm30, %zmm6
vpxorq %zmm12, %zmm29, %zmm8
vpxorq %zmm25, %zmm31, %zmm15
vpxorq %zmm9, %zmm0, %zmm9
vprolq $0x24, %zmm5, %zmm5
vprolq $0xa, %zmm6, %zmm12
vprolq $0xf, %zmm8, %zmm23
vprolq $0x38, %zmm15, %zmm15
vprolq $0x1b, %zmm9, %zmm6
vmovdqa64 %zmm6, %zmm9
vpternlogq $0xd2, %zmm12, %zmm5, %zmm9
vmovdqa64 %zmm5, %zmm20
vpternlogq $0xd2, %zmm23, %zmm12, %zmm20
vpternlogq $0xd2, %zmm15, %zmm23, %zmm12
vpternlogq $0xd2, %zmm6, %zmm15, %zmm23
vpternlogq $0xd2, %zmm5, %zmm6, %zmm15
vpxorq %zmm21, %zmm28, %zmm5
vpxorq %zmm24, %zmm30, %zmm6
vpxorq -0x80(%rsp), %zmm29, %zmm21
vpxorq %zmm14, %zmm31, %zmm14
vpxorq %zmm17, %zmm0, %zmm0
vprolq $0x29, %zmm5, %zmm17
vprolq $0x2, %zmm6, %zmm8
vprolq $0x3e, %zmm21, %zmm5
vprolq $0x37, %zmm14, %zmm6
vprolq $0x27, %zmm0, %zmm24
vmovdqa64 %zmm5, %zmm21
vpternlogq $0xd2, %zmm24, %zmm6, %zmm21
vmovdqa64 %zmm6, %zmm14
vpternlogq $0xd2, %zmm17, %zmm24, %zmm14
vpternlogq $0xd2, %zmm8, %zmm17, %zmm24
vpternlogq $0xd2, %zmm5, %zmm8, %zmm17
vpternlogq $0xd2, %zmm6, %zmm5, %zmm8
vmovdqu64 0x100(%rsp), %zmm6
vpternlogq $0x96, %zmm1, %zmm6, %zmm18
vpternlogq $0x96, %zmm14, %zmm20, %zmm18
vmovdqa64 %zmm26, %zmm28
vpternlogq $0x96, %zmm2, %zmm10, %zmm28
vpternlogq $0x96, %zmm8, %zmm15, %zmm28
vprolq $0x1, %zmm18, %zmm5
vpxorq %zmm5, %zmm28, %zmm22
vpxorq %zmm27, %zmm22, %zmm26
vpternlogq $0x96, %zmm7, %zmm16, %zmm27
vpternlogq $0x96, %zmm21, %zmm9, %zmm27
vmovdqa64 %zmm3, %zmm29
vpternlogq $0x96, %zmm11, %zmm4, %zmm29
vpternlogq $0x96, %zmm17, %zmm23, %zmm29
vprolq $0x1, %zmm29, %zmm5
vpxorq %zmm18, %zmm5, %zmm25
vpxorq %zmm13, %zmm25, %zmm30
vmovdqu64 -0x40(%rsp), %zmm1
vpternlogq $0x96, %zmm19, %zmm1, %zmm13
vpternlogq $0x96, %zmm24, %zmm12, %zmm13
vprolq $0x1, %zmm13, %zmm0
vprolq $0x1, %zmm28, %zmm5
vpxorq %zmm27, %zmm0, %zmm31
vprolq $0x1, %zmm27, %zmm0
vpxorq %zmm13, %zmm5, %zmm27
vpxorq %zmm0, %zmm29, %zmm29
vpxorq %zmm6, %zmm31, %zmm0
vpxorq %zmm19, %zmm25, %zmm5
vpxorq %zmm23, %zmm27, %zmm6
vpxorq %zmm8, %zmm29, %zmm13
vprolq $0x2c, %zmm0, %zmm0
vprolq $0x2b, %zmm5, %zmm8
vprolq $0x15, %zmm6, %zmm23
vprolq $0xe, %zmm13, %zmm13
vmovdqa64 %zmm26, %zmm5
vpternlogq $0xd2, %zmm8, %zmm0, %zmm5
vmovdqa64 %zmm0, %zmm19
vpternlogq $0xd2, %zmm23, %zmm8, %zmm19
vpternlogq $0xd2, %zmm13, %zmm23, %zmm8
vpternlogq $0xd2, %zmm26, %zmm13, %zmm23
vpternlogq $0xd2, %zmm0, %zmm26, %zmm13
vpxorq 0x160ed(%rip){1to8}, %zmm5, %zmm28 # 0x313e0
vpxorq %zmm7, %zmm22, %zmm0
vpxorq %zmm20, %zmm31, %zmm5
vpxorq %zmm24, %zmm25, %zmm6
vpxorq %zmm3, %zmm27, %zmm3
vpxorq %zmm10, %zmm29, %zmm10
vprolq $0x3, %zmm0, %zmm18
vprolq $0x2d, %zmm5, %zmm5
vprolq $0x3d, %zmm6, %zmm20
vprolq $0x1c, %zmm3, %zmm0
vprolq $0x14, %zmm10, %zmm3
vmovdqa64 %zmm0, %zmm16
vpternlogq $0xd2, %zmm18, %zmm3, %zmm16
vmovdqa64 %zmm3, %zmm26
vpternlogq $0xd2, %zmm5, %zmm18, %zmm26
vpternlogq $0xd2, %zmm20, %zmm5, %zmm18
vpternlogq $0xd2, %zmm0, %zmm20, %zmm5
vpternlogq $0xd2, %zmm3, %zmm0, %zmm20
vpxorq %zmm21, %zmm22, %zmm0
vpxorq 0x80(%rsp), %zmm31, %zmm3
vpxorq %zmm1, %zmm25, %zmm1
vpxorq %zmm11, %zmm27, %zmm6
vpxorq %zmm15, %zmm29, %zmm11
vprolq $0x12, %zmm0, %zmm10
vprolq $0x1, %zmm3, %zmm0
vprolq $0x6, %zmm1, %zmm1
vprolq $0x19, %zmm6, %zmm15
vprolq $0x8, %zmm11, %zmm3
vmovdqa64 %zmm0, %zmm6
vpternlogq $0xd2, %zmm15, %zmm1, %zmm6
vmovdqa64 %zmm1, %zmm11
vpternlogq $0xd2, %zmm3, %zmm15, %zmm11
vpternlogq $0xd2, %zmm10, %zmm3, %zmm15
vpternlogq $0xd2, %zmm0, %zmm10, %zmm3
vpternlogq $0xd2, %zmm1, %zmm0, %zmm10
vpxorq 0x140(%rsp), %zmm22, %zmm0
vpxorq (%rsp), %zmm31, %zmm1
vpxorq %zmm12, %zmm25, %zmm4
vpxorq %zmm17, %zmm27, %zmm7
vpxorq 0x40(%rsp), %zmm29, %zmm21
vprolq $0x24, %zmm0, %zmm24
vprolq $0xa, %zmm1, %zmm17
vprolq $0xf, %zmm4, %zmm0
vprolq $0x38, %zmm7, %zmm12
vprolq $0x1b, %zmm21, %zmm1
vmovdqa64 %zmm1, %zmm4
vpternlogq $0xd2, %zmm17, %zmm24, %zmm4
vmovdqu64 %zmm4, -0x80(%rsp)
vmovdqa64 %zmm24, %zmm21
vpternlogq $0xd2, %zmm0, %zmm17, %zmm21
vpternlogq $0xd2, %zmm12, %zmm0, %zmm17
vpternlogq $0xd2, %zmm1, %zmm12, %zmm0
vpternlogq $0xd2, %zmm24, %zmm1, %zmm12
vpxorq %zmm9, %zmm22, %zmm1
vpxorq %zmm14, %zmm31, %zmm7
vpxorq 0xc0(%rsp), %zmm27, %zmm9
vpxorq %zmm2, %zmm29, %zmm2
vprolq $0x29, %zmm1, %zmm25
vprolq $0x2, %zmm7, %zmm1
vprolq $0x3e, %zmm30, %zmm7
vprolq $0x37, %zmm9, %zmm9
vprolq $0x27, %zmm2, %zmm2
vmovdqa64 %zmm7, %zmm22
vpternlogq $0xd2, %zmm2, %zmm9, %zmm22
vmovdqa64 %zmm9, %zmm24
vpternlogq $0xd2, %zmm25, %zmm2, %zmm24
vpternlogq $0xd2, %zmm1, %zmm25, %zmm2
vpternlogq $0xd2, %zmm7, %zmm1, %zmm25
vpternlogq $0xd2, %zmm9, %zmm7, %zmm1
vmovdqa64 %zmm11, %zmm7
vpternlogq $0x96, %zmm21, %zmm19, %zmm7
vpternlogq $0x96, %zmm24, %zmm26, %zmm7
vmovdqa64 %zmm12, %zmm9
vpternlogq $0x96, %zmm1, %zmm20, %zmm9
vpternlogq $0x96, %zmm13, %zmm10, %zmm9
vprolq $0x1, %zmm7, %zmm14
vpxorq %zmm14, %zmm9, %zmm27
vpxorq %zmm28, %zmm27, %zmm14
vmovdqa64 %zmm28, %zmm30
vpternlogq $0x96, %zmm16, %zmm4, %zmm30
vpternlogq $0x96, %zmm6, %zmm22, %zmm30
vmovdqa64 %zmm5, %zmm31
vpternlogq $0x96, %zmm3, %zmm25, %zmm31
vpternlogq $0x96, %zmm0, %zmm23, %zmm31
vprolq $0x1, %zmm31, %zmm28
vpxorq %zmm7, %zmm28, %zmm28
vpxorq %zmm2, %zmm28, %zmm4
vpternlogq $0x96, %zmm8, %zmm15, %zmm2
vpternlogq $0x96, %zmm18, %zmm17, %zmm2
vprolq $0x1, %zmm2, %zmm7
vprolq $0x1, %zmm9, %zmm9
vpxorq %zmm30, %zmm7, %zmm29
vprolq $0x1, %zmm30, %zmm7
vpxorq %zmm2, %zmm9, %zmm30
vpxorq %zmm7, %zmm31, %zmm31
vpxorq %zmm26, %zmm29, %zmm2
vpxorq %zmm15, %zmm28, %zmm7
vpxorq %zmm0, %zmm30, %zmm9
vpxorq %zmm1, %zmm31, %zmm1
vprolq $0x2c, %zmm2, %zmm15
vprolq $0x2b, %zmm7, %zmm0
vprolq $0x15, %zmm9, %zmm9
vprolq $0xe, %zmm1, %zmm2
vmovdqa64 %zmm14, %zmm1
vpternlogq $0xd2, %zmm0, %zmm15, %zmm1
vmovdqa64 %zmm15, %zmm7
vpternlogq $0xd2, %zmm9, %zmm0, %zmm7
vpternlogq $0xd2, %zmm2, %zmm9, %zmm0
vmovdqu64 %zmm0, -0x40(%rsp)
vpternlogq $0xd2, %zmm14, %zmm2, %zmm9
vpternlogq $0xd2, %zmm15, %zmm14, %zmm2
vpxorq 0x15e0a(%rip){1to8}, %zmm1, %zmm26 # 0x313e8
vpxorq %zmm6, %zmm27, %zmm1
vpxorq %zmm21, %zmm29, %zmm6
vpxorq %zmm23, %zmm30, %zmm15
vpxorq %zmm20, %zmm31, %zmm20
vprolq $0x3, %zmm1, %zmm21
vprolq $0x2d, %zmm6, %zmm1
vprolq $0x3d, %zmm4, %zmm14
vprolq $0x1c, %zmm15, %zmm4
vprolq $0x14, %zmm20, %zmm15
vmovdqa64 %zmm4, %zmm6
vpternlogq $0xd2, %zmm21, %zmm15, %zmm6
vmovdqa64 %zmm15, %zmm20
vpternlogq $0xd2, %zmm1, %zmm21, %zmm20
vpternlogq $0xd2, %zmm14, %zmm1, %zmm21
vpternlogq $0xd2, %zmm4, %zmm14, %zmm1
vpternlogq $0xd2, %zmm15, %zmm4, %zmm14
vpxorq %zmm22, %zmm27, %zmm4
vpxorq %zmm19, %zmm29, %zmm15
vpxorq %zmm18, %zmm28, %zmm18
vpxorq %zmm3, %zmm30, %zmm19
vpxorq %zmm12, %zmm31, %zmm12
vprolq $0x12, %zmm4, %zmm3
vprolq $0x1, %zmm15, %zmm4
vprolq $0x6, %zmm18, %zmm18
vprolq $0x19, %zmm19, %zmm19
vprolq $0x8, %zmm12, %zmm15
vmovdqa64 %zmm4, %zmm22
vpternlogq $0xd2, %zmm19, %zmm18, %zmm22
vmovdqa64 %zmm18, %zmm12
vpternlogq $0xd2, %zmm15, %zmm19, %zmm12
vpternlogq $0xd2, %zmm3, %zmm15, %zmm19
vpternlogq $0xd2, %zmm4, %zmm3, %zmm15
vpternlogq $0xd2, %zmm18, %zmm4, %zmm3
vpxorq %zmm16, %zmm27, %zmm4
vpxorq %zmm11, %zmm29, %zmm11
vpxorq %zmm17, %zmm28, %zmm16
vpxorq %zmm25, %zmm30, %zmm17
vpxorq %zmm13, %zmm31, %zmm23
vprolq $0x24, %zmm4, %zmm4
vprolq $0xa, %zmm11, %zmm13
vprolq $0xf, %zmm16, %zmm16
vprolq $0x38, %zmm17, %zmm18
vprolq $0x1b, %zmm23, %zmm17
vmovdqa64 %zmm17, %zmm11
vpternlogq $0xd2, %zmm13, %zmm4, %zmm11
vmovdqa64 %zmm4, %zmm25
vpternlogq $0xd2, %zmm16, %zmm13, %zmm25
vpternlogq $0xd2, %zmm18, %zmm16, %zmm13
vpternlogq $0xd2, %zmm17, %zmm18, %zmm16
vpternlogq $0xd2, %zmm4, %zmm17, %zmm18
vpxorq -0x80(%rsp), %zmm27, %zmm4
vpxorq %zmm24, %zmm29, %zmm23
vpxorq %zmm8, %zmm28, %zmm8
vpxorq %zmm5, %zmm30, %zmm5
vpxorq %zmm10, %zmm31, %zmm10
vprolq $0x29, %zmm4, %zmm17
vprolq $0x2, %zmm23, %zmm4
vprolq $0x3e, %zmm8, %zmm8
vprolq $0x37, %zmm5, %zmm23
vprolq $0x27, %zmm10, %zmm5
vmovdqa64 %zmm8, %zmm24
vpternlogq $0xd2, %zmm5, %zmm23, %zmm24
vmovdqa64 %zmm23, %zmm10
vpternlogq $0xd2, %zmm17, %zmm5, %zmm10
vpternlogq $0xd2, %zmm4, %zmm17, %zmm5
vpternlogq $0xd2, %zmm8, %zmm4, %zmm17
vpternlogq $0xd2, %zmm23, %zmm8, %zmm4
vmovdqa64 %zmm25, %zmm28
vpternlogq $0x96, %zmm20, %zmm12, %zmm28
vpternlogq $0x96, %zmm10, %zmm7, %zmm28
vmovdqa64 %zmm3, %zmm8
vpternlogq $0x96, %zmm2, %zmm14, %zmm8
vpternlogq $0x96, %zmm18, %zmm4, %zmm8
vprolq $0x1, %zmm28, %zmm23
vpxorq %zmm23, %zmm8, %zmm23
vpxorq %zmm26, %zmm23, %zmm27
vmovdqa64 %zmm26, %zmm29
vpternlogq $0x96, %zmm11, %zmm24, %zmm29
vpternlogq $0x96, %zmm6, %zmm22, %zmm29
vmovdqa64 %zmm17, %zmm30
vpternlogq $0x96, %zmm15, %zmm16, %zmm30
vpternlogq $0x96, %zmm9, %zmm1, %zmm30
vprolq $0x1, %zmm30, %zmm26
vpxorq %zmm28, %zmm26, %zmm26
vpxorq %zmm21, %zmm26, %zmm31
vpternlogq $0x96, %zmm5, %zmm0, %zmm21
vpternlogq $0x96, %zmm19, %zmm13, %zmm21
vprolq $0x1, %zmm21, %zmm28
vprolq $0x1, %zmm8, %zmm8
vpxorq %zmm29, %zmm28, %zmm28
vprolq $0x1, %zmm29, %zmm0
vpxorq %zmm21, %zmm8, %zmm29
vpxorq %zmm0, %zmm30, %zmm30
vpxorq %zmm20, %zmm28, %zmm0
vpxorq %zmm19, %zmm26, %zmm8
vpxorq %zmm16, %zmm29, %zmm16
vpxorq %zmm4, %zmm30, %zmm20
vprolq $0x2c, %zmm0, %zmm0
vprolq $0x2b, %zmm8, %zmm4
vprolq $0x15, %zmm16, %zmm19
vprolq $0xe, %zmm20, %zmm8
vmovdqa64 %zmm27, %zmm20
vpternlogq $0xd2, %zmm4, %zmm0, %zmm20
vmovdqa64 %zmm0, %zmm16
vpternlogq $0xd2, %zmm19, %zmm4, %zmm16
vpternlogq $0xd2, %zmm8, %zmm19, %zmm4
vmovdqu64 %zmm4, -0x80(%rsp)
vpternlogq $0xd2, %zmm27, %zmm8, %zmm19
vpternlogq $0xd2, %zmm0, %zmm27, %zmm8
vpxorq 0x15b36(%rip){1to8}, %zmm20, %zmm27 # 0x313f0
vpxorq %zmm22, %zmm23, %zmm0
vpxorq %zmm25, %zmm28, %zmm20
vpxorq %zmm5, %zmm26, %zmm21
vpxorq %zmm9, %zmm29, %zmm9
vpxorq %zmm14, %zmm30, %zmm22
vprolq $0x3, %zmm0, %zmm14
vprolq $0x2d, %zmm20, %zmm5
vprolq $0x3d, %zmm21, %zmm20
vprolq $0x1c, %zmm9, %zmm0
vprolq $0x14, %zmm22, %zmm21
vmovdqa64 %zmm0, %zmm4
vpternlogq $0xd2, %zmm14, %zmm21, %zmm4
vmovdqa64 %zmm21, %zmm22
vpternlogq $0xd2, %zmm5, %zmm14, %zmm22
vpternlogq $0xd2, %zmm20, %zmm5, %zmm14
vpternlogq $0xd2, %zmm0, %zmm20, %zmm5
vpternlogq $0xd2, %zmm21, %zmm0, %zmm20
vpxorq %zmm24, %zmm23, %zmm0
vpxorq %zmm7, %zmm28, %zmm21
vpxorq %zmm15, %zmm29, %zmm15
vpxorq %zmm18, %zmm30, %zmm18
vprolq $0x12, %zmm0, %zmm7
vprolq $0x1, %zmm21, %zmm0
vprolq $0x6, %zmm31, %zmm25
vprolq $0x19, %zmm15, %zmm24
vprolq $0x8, %zmm18, %zmm18
vmovdqa64 %zmm0, %zmm21
vpternlogq $0xd2, %zmm24, %zmm25, %zmm21
vmovdqa64 %zmm25, %zmm15
vpternlogq $0xd2, %zmm18, %zmm24, %zmm15
vpternlogq $0xd2, %zmm7, %zmm18, %zmm24
vpternlogq $0xd2, %zmm0, %zmm7, %zmm18
vpternlogq $0xd2, %zmm25, %zmm0, %zmm7
vpxorq %zmm6, %zmm23, %zmm0
vpxorq %zmm12, %zmm28, %zmm6
vpxorq %zmm13, %zmm26, %zmm12
vpxorq %zmm17, %zmm29, %zmm13
vpxorq %zmm2, %zmm30, %zmm2
vprolq $0x24, %zmm0, %zmm0
vprolq $0xa, %zmm6, %zmm6
vprolq $0xf, %zmm12, %zmm17
vprolq $0x38, %zmm13, %zmm12
vprolq $0x1b, %zmm2, %zmm25
vmovdqa64 %zmm25, %zmm9
vpternlogq $0xd2, %zmm6, %zmm0, %zmm9
vmovdqa64 %zmm0, %zmm13
vpternlogq $0xd2, %zmm17, %zmm6, %zmm13
vpternlogq $0xd2, %zmm12, %zmm17, %zmm6
vpternlogq $0xd2, %zmm25, %zmm12, %zmm17
vpternlogq $0xd2, %zmm0, %zmm25, %zmm12
vpxorq %zmm11, %zmm23, %zmm0
vpxorq %zmm10, %zmm28, %zmm10
vpxorq -0x40(%rsp), %zmm26, %zmm23
vpxorq %zmm1, %zmm29, %zmm25
vpxorq %zmm3, %zmm30, %zmm3
vprolq $0x29, %zmm0, %zmm1
vprolq $0x2, %zmm10, %zmm11
vprolq $0x3e, %zmm23, %zmm23
vprolq $0x37, %zmm25, %zmm25
vprolq $0x27, %zmm3, %zmm29
vmovdqa64 %zmm23, %zmm10
vpternlogq $0xd2, %zmm29, %zmm25, %zmm10
vmovdqa64 %zmm25, %zmm2
vpternlogq $0xd2, %zmm1, %zmm29, %zmm2
vpternlogq $0xd2, %zmm11, %zmm1, %zmm29
vpternlogq $0xd2, %zmm23, %zmm11, %zmm1
vpternlogq $0xd2, %zmm25, %zmm23, %zmm11
vmovdqa64 %zmm22, %zmm23
vpternlogq $0x96, %zmm16, %zmm13, %zmm23
vpternlogq $0x96, %zmm2, %zmm15, %zmm23
vmovdqa64 %zmm11, %zmm25
vpternlogq $0x96, %zmm12, %zmm20, %zmm25
vpternlogq $0x96, %zmm7, %zmm8, %zmm25
vprolq $0x1, %zmm23, %zmm3
vpxorq %zmm3, %zmm25, %zmm3
vpxorq %zmm27, %zmm3, %zmm30
vpternlogq $0x96, %zmm10, %zmm21, %zmm27
vpternlogq $0x96, %zmm9, %zmm4, %zmm27
vmovdqa64 %zmm17, %zmm28
vpternlogq $0x96, %zmm18, %zmm19, %zmm28
vpternlogq $0x96, %zmm5, %zmm1, %zmm28
vprolq $0x1, %zmm28, %zmm26
vpxorq %zmm23, %zmm26, %zmm23
vpxorq %zmm24, %zmm23, %zmm31
vpternlogq $0x96, %zmm14, %zmm29, %zmm24
vpternlogq $0x96, -0x80(%rsp), %zmm6, %zmm24
vprolq $0x1, %zmm24, %zmm26
vprolq $0x1, %zmm25, %zmm25
vpxorq %zmm27, %zmm26, %zmm26
vprolq $0x1, %zmm27, %zmm0
vpxorq %zmm24, %zmm25, %zmm27
vpxorq %zmm0, %zmm28, %zmm28
vpxorq %zmm22, %zmm26, %zmm0
vpxorq %zmm17, %zmm27, %zmm17
vpxorq %zmm11, %zmm28, %zmm22
vprolq $0x2c, %zmm0, %zmm0
vprolq $0x2b, %zmm31, %zmm11
vprolq $0x15, %zmm17, %zmm17
vprolq $0xe, %zmm22, %zmm22
vmovdqa64 %zmm30, %zmm24
vpternlogq $0xd2, %zmm11, %zmm0, %zmm24
vmovdqa64 %zmm0, %zmm25
vpternlogq $0xd2, %zmm17, %zmm11, %zmm25
vpternlogq $0xd2, %zmm22, %zmm17, %zmm11
vpternlogq $0xd2, %zmm30, %zmm22, %zmm17
vpternlogq $0xd2, %zmm0, %zmm30, %zmm22
vpxorq %zmm21, %zmm3, %zmm0
vpxorq %zmm13, %zmm26, %zmm21
vpxorq %zmm29, %zmm23, %zmm29
vpxorq %zmm19, %zmm27, %zmm30
vpxorq %zmm20, %zmm28, %zmm31
vprolq $0x3, %zmm0, %zmm13
vprolq $0x2d, %zmm21, %zmm19
vprolq $0x3d, %zmm29, %zmm20
vprolq $0x1c, %zmm30, %zmm0
vprolq $0x14, %zmm31, %zmm30
vmovdqa64 %zmm0, %zmm21
vpternlogq $0xd2, %zmm13, %zmm30, %zmm21
vmovdqa64 %zmm30, %zmm29
vpternlogq $0xd2, %zmm19, %zmm13, %zmm29
vpternlogq $0xd2, %zmm20, %zmm19, %zmm13
vpternlogq $0xd2, %zmm0, %zmm20, %zmm19
vpternlogq $0xd2, %zmm30, %zmm0, %zmm20
vpxorq %zmm10, %zmm3, %zmm0
vpxorq %zmm16, %zmm26, %zmm16
vpxorq %zmm14, %zmm23, %zmm14
vpxorq %zmm18, %zmm27, %zmm18
vpxorq %zmm12, %zmm28, %zmm30
vprolq $0x12, %zmm0, %zmm10
vprolq $0x1, %zmm16, %zmm0
vprolq $0x6, %zmm14, %zmm16
vprolq $0x19, %zmm18, %zmm12
vprolq $0x8, %zmm30, %zmm14
vmovdqa64 %zmm0, %zmm18
vpternlogq $0xd2, %zmm12, %zmm16, %zmm18
vmovdqa64 %zmm16, %zmm30
vpternlogq $0xd2, %zmm14, %zmm12, %zmm30
vpternlogq $0xd2, %zmm10, %zmm14, %zmm12
vpternlogq $0xd2, %zmm0, %zmm10, %zmm14
vpternlogq $0xd2, %zmm16, %zmm0, %zmm10
vpxorq %zmm4, %zmm3, %zmm0
vpxorq %zmm15, %zmm26, %zmm15
vpxorq %zmm6, %zmm23, %zmm6
vpxorq %zmm1, %zmm27, %zmm1
vpxorq %zmm8, %zmm28, %zmm8
vprolq $0x24, %zmm0, %zmm0
vprolq $0xa, %zmm15, %zmm15
vprolq $0xf, %zmm6, %zmm6
vprolq $0x38, %zmm1, %zmm1
vprolq $0x1b, %zmm8, %zmm8
vmovdqa64 %zmm8, %zmm16
vpternlogq $0xd2, %zmm15, %zmm0, %zmm16
vmovdqa64 %zmm0, %zmm31
vpternlogq $0xd2, %zmm6, %zmm15, %zmm31
vpternlogq $0xd2, %zmm1, %zmm6, %zmm15
vpternlogq $0xd2, %zmm8, %zmm1, %zmm6
vpternlogq $0xd2, %zmm0, %zmm8, %zmm1
vpxorq %zmm9, %zmm3, %zmm0
vpxorq %zmm2, %zmm26, %zmm2
vpxorq -0x80(%rsp), %zmm23, %zmm3
vpxorq %zmm5, %zmm27, %zmm4
vpxorq %zmm7, %zmm28, %zmm5
vprolq $0x29, %zmm0, %zmm0
vprolq $0x2, %zmm2, %zmm2
vprolq $0x3e, %zmm3, %zmm3
vprolq $0x37, %zmm4, %zmm4
vprolq $0x27, %zmm5, %zmm5
vmovdqa64 %zmm3, %zmm7
vpternlogq $0xd2, %zmm5, %zmm4, %zmm7
vmovdqa64 %zmm4, %zmm8
vpternlogq $0xd2, %zmm0, %zmm5, %zmm8
vpternlogq $0xd2, %zmm2, %zmm0, %zmm5
vpternlogq $0xd2, %zmm3, %zmm2, %zmm0
vpternlogq $0xd2, %zmm4, %zmm3, %zmm2
vpxorq 0x156b2(%rip){1to8}, %zmm24, %zmm3 # 0x313f8
vmovdqa64 %zmm3, (%rdi)
vmovdqa64 %zmm25, 0x40(%rdi)
vmovdqa64 %zmm11, 0x80(%rdi)
vmovdqa64 %zmm17, 0xc0(%rdi)
vmovdqa64 %zmm22, 0x100(%rdi)
vmovdqa64 %zmm21, 0x140(%rdi)
vmovdqa64 %zmm29, 0x180(%rdi)
vmovdqa64 %zmm13, 0x1c0(%rdi)
vmovdqa64 %zmm19, 0x200(%rdi)
vmovdqa64 %zmm20, 0x240(%rdi)
vmovdqa64 %zmm18, 0x280(%rdi)
vmovdqa64 %zmm30, 0x2c0(%rdi)
vmovdqa64 %zmm12, 0x300(%rdi)
vmovdqa64 %zmm14, 0x340(%rdi)
vmovdqa64 %zmm10, 0x380(%rdi)
vmovdqa64 %zmm16, 0x3c0(%rdi)
vmovdqa64 %zmm31, 0x400(%rdi)
vmovdqa64 %zmm15, 0x440(%rdi)
vmovdqa64 %zmm6, 0x480(%rdi)
vmovdqa64 %zmm1, 0x4c0(%rdi)
vmovdqa64 %zmm7, 0x500(%rdi)
vmovdqa64 %zmm8, 0x540(%rdi)
vmovdqa64 %zmm5, 0x580(%rdi)
vmovdqa64 %zmm0, 0x5c0(%rdi)
vmovdqa64 %zmm2, 0x600(%rdi)
addq $0x188, %rsp            # imm = 0x188
vzeroupper
retq