// File: /workspace/github_c_makefile_star2_O1/mjosaarinen[P]brutus/crypto_aead/lunarkeyakv2/Haswell/KeccakP-1600-times4-SIMD256.c
// Function: KeccakP1600times4_12rounds_FastLoop_Absorb
size_t KeccakP1600times4_12rounds_FastLoop_Absorb(void *states, unsigned int laneCount, unsigned int laneOffsetParallel, unsigned int laneOffsetSerial, const unsigned char *data, size_t dataByteLen)
{
    if (laneCount == 21) {
#if 0
        const unsigned char *dataStart = data;
        const UINT64 *curData0 = (const UINT64 *)data;
        const UINT64 *curData1 = (const UINT64 *)(data+laneOffsetParallel*1*SnP_laneLengthInBytes);
        const UINT64 *curData2 = (const UINT64 *)(data+laneOffsetParallel*2*SnP_laneLengthInBytes);
        const UINT64 *curData3 = (const UINT64 *)(data+laneOffsetParallel*3*SnP_laneLengthInBytes);

        while(dataByteLen >= (laneOffsetParallel*3 + laneCount)*8) {
            V256 *stateAsLanes = states;
            V256 lanes0, lanes1, lanes2, lanes3, lanesL01, lanesL23, lanesH01, lanesH23;
            #define Xor_In( argIndex ) \
                XOReq256(stateAsLanes[argIndex], LOAD4_64(curData3[argIndex], curData2[argIndex], curData1[argIndex], curData0[argIndex]))
            #define Xor_In4( argIndex ) \
                lanes0 = LOAD256u( curData0[argIndex]),\
                lanes1 = LOAD256u( curData1[argIndex]),\
                lanes2 = LOAD256u( curData2[argIndex]),\
                lanes3 = LOAD256u( curData3[argIndex]),\
                INTLEAVE(),\
                XOReq256( stateAsLanes[argIndex+0], lanes0 ),\
                XOReq256( stateAsLanes[argIndex+1], lanes1 ),\
                XOReq256( stateAsLanes[argIndex+2], lanes2 ),\
                XOReq256( stateAsLanes[argIndex+3], lanes3 )
            Xor_In4( 0 );
            Xor_In4( 4 );
            Xor_In4( 8 );
            Xor_In4( 12 );
            Xor_In4( 16 );
            Xor_In( 20 );
            #undef  Xor_In
            #undef  Xor_In4
            KeccakP1600times4_PermuteAll_12rounds(states);
            curData0 += laneOffsetSerial;
            curData1 += laneOffsetSerial;
            curData2 += laneOffsetSerial;
            curData3 += laneOffsetSerial;
            dataByteLen -= laneOffsetSerial*8;
        }
        return (const unsigned char *)curData0 - dataStart;
#else
        unsigned int i;
        const unsigned char *dataStart = data;
        const UINT64 *curData0 = (const UINT64 *)data;
        const UINT64 *curData1 = (const UINT64 *)(data+laneOffsetParallel*1*SnP_laneLengthInBytes);
        const UINT64 *curData2 = (const UINT64 *)(data+laneOffsetParallel*2*SnP_laneLengthInBytes);
        const UINT64 *curData3 = (const UINT64 *)(data+laneOffsetParallel*3*SnP_laneLengthInBytes);
        V256 *statesAsLanes = states;
        declareABCDE

        copyFromState(A, statesAsLanes)
        while(dataByteLen >= (laneOffsetParallel*3 + laneCount)*8) {
            #define XOR_In( Xxx, argIndex ) \
                XOReq256(Xxx, LOAD4_64(curData3[argIndex], curData2[argIndex], curData1[argIndex], curData0[argIndex]))
            XOR_In( Aba, 0 );
            XOR_In( Abe, 1 );
            XOR_In( Abi, 2 );
            XOR_In( Abo, 3 );
            XOR_In( Abu, 4 );
            XOR_In( Aga, 5 );
            XOR_In( Age, 6 );
            XOR_In( Agi, 7 );
            XOR_In( Ago, 8 );
            XOR_In( Agu, 9 );
            XOR_In( Aka, 10 );
            XOR_In( Ake, 11 );
            XOR_In( Aki, 12 );
            XOR_In( Ako, 13 );
            XOR_In( Aku, 14 );
            XOR_In( Ama, 15 );
            XOR_In( Ame, 16 );
            XOR_In( Ami, 17 );
            XOR_In( Amo, 18 );
            XOR_In( Amu, 19 );
            XOR_In( Asa, 20 );
            #undef XOR_In
            rounds12
            curData0 += laneOffsetSerial;
            curData1 += laneOffsetSerial;
            curData2 += laneOffsetSerial;
            curData3 += laneOffsetSerial;
            dataByteLen -= laneOffsetSerial*8;
        }
        copyToState(statesAsLanes, A)
        return (const unsigned char *)curData0 - dataStart;
#endif
    }
    else {
        unsigned int i;
        const unsigned char *dataStart = data;

        while(dataByteLen >= (laneOffsetParallel*3 + laneCount)*8) {
            KeccakP1600times4_AddLanesAll(states, data, laneCount, laneOffsetParallel);
            KeccakP1600times4_PermuteAll_12rounds(states);
            data += laneOffsetSerial*8;
            dataByteLen -= laneOffsetSerial*8;
        }
        return data - dataStart;
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x158, %rsp            # imm = 0x158
movq %r9, %r13
movq %r8, %r15
movl %ecx, %r14d
movl %edx, %ebx
cmpl $0x15, %esi
movq %r8, 0xe8(%rsp)
jne 0x13728
leal (,%rbx,8), %eax
vmovdqa (%rdi), %ymm4
vmovdqa 0x20(%rdi), %ymm3
vmovdqa 0x40(%rdi), %ymm2
vmovdqa 0x60(%rdi), %ymm1
vmovdqa 0x80(%rdi), %ymm0
vmovdqa64 0xa0(%rdi), %ymm17
vmovdqa64 0xc0(%rdi), %ymm27
vmovdqa64 0xe0(%rdi), %ymm26
vmovdqa64 0x100(%rdi), %ymm31
vmovdqa64 0x120(%rdi), %ymm20
vmovdqa64 0x140(%rdi), %ymm24
vmovdqa 0x160(%rdi), %ymm8
vmovdqa64 0x180(%rdi), %ymm21
vmovdqa64 0x1a0(%rdi), %ymm19
vmovdqa64 0x1c0(%rdi), %ymm16
vmovdqa 0x1e0(%rdi), %ymm7
vmovdqa64 0x200(%rdi), %ymm22
vmovdqa64 0x220(%rdi), %ymm18
vmovdqa64 0x240(%rdi), %ymm29
vmovdqa 0x260(%rdi), %ymm15
vmovdqa64 0x280(%rdi), %ymm28
vmovdqa 0x2a0(%rdi), %ymm10
vmovdqa64 0x2c0(%rdi), %ymm23
vmovdqa 0x2e0(%rdi), %ymm13
vmovdqa 0x300(%rdi), %ymm14
leal (%rax,%rax,2), %r10d
addl $0xa8, %r10d
cmpq %r13, %r10
ja 0x13679
leal (%rax,%rax,2), %edx
movl %edx, %edx
shll $0x4, %ebx
movl %r14d, %esi
shll $0x3, %r14d
shlq $0x3, %rsi
vmovdqu %ymm15, 0x80(%rsp)
vmovdqu %ymm13, 0x20(%rsp)
vmovq (%r15,%rdx), %xmm5
vmovq (%r15,%rbx), %xmm6
vmovq (%r15,%rax), %xmm9
vmovq (%r15), %xmm11
vmovq 0x8(%r15,%rdx), %xmm12
vmovq 0x8(%r15,%rbx), %xmm13
vmovq 0x8(%r15,%rax), %xmm15
vpunpcklqdq %xmm5, %xmm6, %xmm5 # xmm5 = xmm6[0],xmm5[0]
vpunpcklqdq %xmm9, %xmm11, %xmm6 # xmm6 = xmm11[0],xmm9[0]
vmovq 0x8(%r15), %xmm9
vmovq 0x10(%r15,%rdx), %xmm11
vpunpcklqdq %xmm12, %xmm13, %xmm12 # xmm12 = xmm13[0],xmm12[0]
vpunpcklqdq %xmm15, %xmm9, %xmm9 # xmm9 = xmm9[0],xmm15[0]
vmovq 0x10(%r15,%rbx), %xmm13
vmovq 0x10(%r15,%rax), %xmm15
vpunpcklqdq %xmm11, %xmm13, %xmm11 # xmm11 = xmm13[0],xmm11[0]
vmovq 0x10(%r15), %xmm13
vpunpcklqdq %xmm15, %xmm13, %xmm13 # xmm13 = xmm13[0],xmm15[0]
vmovq 0x18(%r15,%rdx), %xmm15
vinserti128 $0x1, %xmm5, %ymm6, %ymm5
vmovq 0x18(%r15,%rbx), %xmm6
vpunpcklqdq %xmm15, %xmm6, %xmm6 # xmm6 = xmm6[0],xmm15[0]
vmovq 0x18(%r15,%rax), %xmm15
vinserti128 $0x1, %xmm12, %ymm9, %ymm9
vmovq 0x18(%r15), %xmm12
vpunpcklqdq %xmm15, %xmm12, %xmm12 # xmm12 = xmm12[0],xmm15[0]
vmovq 0x20(%r15,%rdx), %xmm15
vinserti128 $0x1, %xmm11, %ymm13, %ymm11
vmovq 0x20(%r15,%rbx), %xmm13
vpunpcklqdq %xmm15, %xmm13, %xmm13 # xmm13 = xmm13[0],xmm15[0]
vmovq 0x20(%r15,%rax), %xmm15
vinserti128 $0x1, %xmm6, %ymm12, %ymm6
vmovq 0x20(%r15), %xmm12
vpunpcklqdq %xmm15, %xmm12, %xmm12 # xmm12 = xmm12[0],xmm15[0]
vmovq 0x28(%r15,%rdx), %xmm15
vinserti128 $0x1, %xmm13, %ymm12, %ymm12
vmovq 0x28(%r15,%rbx), %xmm13
vmovq 0x28(%r15,%rax), %xmm25
vmovq 0x28(%r15), %xmm30
vpunpcklqdq %xmm15, %xmm13, %xmm13 # xmm13 = xmm13[0],xmm15[0]
vpunpcklqdq %xmm25, %xmm30, %xmm15 # xmm15 = xmm30[0],xmm25[0]
vinserti128 $0x1, %xmm13, %ymm15, %ymm13
vmovq 0x30(%r15,%rdx), %xmm15
vpxor %ymm4, %ymm5, %ymm4
vmovdqu %ymm4, (%rsp)
vmovq 0x30(%r15,%rbx), %xmm5
vmovq 0x30(%r15,%rax), %xmm25
vmovq 0x30(%r15), %xmm30
vpunpcklqdq %xmm15, %xmm5, %xmm5 # xmm5 = xmm5[0],xmm15[0]
vpunpcklqdq %xmm25, %xmm30, %xmm15 # xmm15 = xmm30[0],xmm25[0]
vinserti128 $0x1, %xmm5, %ymm15, %ymm15
vmovq 0x38(%r15,%rdx), %xmm5
vpxor %ymm3, %ymm9, %ymm4
vmovq 0x38(%r15,%rbx), %xmm9
vmovq 0x38(%r15,%rax), %xmm25
vmovq 0x38(%r15), %xmm30
vpunpcklqdq %xmm5, %xmm9, %xmm5 # xmm5 = xmm9[0],xmm5[0]
vpunpcklqdq %xmm25, %xmm30, %xmm9 # xmm9 = xmm30[0],xmm25[0]
vinserti128 $0x1, %xmm5, %ymm9, %ymm9
vmovq 0x40(%r15,%rdx), %xmm5
vpxor %ymm2, %ymm11, %ymm2
vmovdqu %ymm2, 0xc0(%rsp)
vmovq 0x40(%r15,%rbx), %xmm11
vmovq 0x40(%r15,%rax), %xmm25
vmovq 0x40(%r15), %xmm30
vpunpcklqdq %xmm5, %xmm11, %xmm5 # xmm5 = xmm11[0],xmm5[0]
vpunpcklqdq %xmm25, %xmm30, %xmm11 # xmm11 = xmm30[0],xmm25[0]
vinserti128 $0x1, %xmm5, %ymm11, %ymm11
vmovq 0x48(%r15,%rdx), %xmm5
vpxor %ymm1, %ymm6, %ymm1
vmovdqu %ymm1, 0x60(%rsp)
vmovq 0x48(%r15,%rbx), %xmm6
vmovq 0x48(%r15,%rax), %xmm25
vmovq 0x48(%r15), %xmm30
vpunpcklqdq %xmm5, %xmm6, %xmm5 # xmm5 = xmm6[0],xmm5[0]
vpunpcklqdq %xmm25, %xmm30, %xmm6 # xmm6 = xmm30[0],xmm25[0]
vinserti128 $0x1, %xmm5, %ymm6, %ymm6
vmovq 0x50(%r15,%rdx), %xmm25
vpxor %ymm0, %ymm12, %ymm1
vmovdqu %ymm1, 0x110(%rsp)
vmovq 0x50(%r15,%rbx), %xmm0
vmovq 0x50(%r15,%rax), %xmm12
vmovq 0x50(%r15), %xmm30
vpunpcklqdq %xmm25, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm25[0]
vpunpcklqdq %xmm12, %xmm30, %xmm12 # xmm12 = xmm30[0],xmm12[0]
vinserti128 $0x1, %xmm0, %ymm12, %ymm12
vmovq 0x58(%r15,%rdx), %xmm0
vpxorq %ymm17, %ymm13, %ymm2
vmovdqu %ymm2, 0xa0(%rsp)
vmovq 0x58(%r15,%rbx), %xmm13
vmovq 0x58(%r15,%rax), %xmm25
vmovq 0x58(%r15), %xmm30
vpunpcklqdq %xmm0, %xmm13, %xmm0 # xmm0 = xmm13[0],xmm0[0]
vpunpcklqdq %xmm25, %xmm30, %xmm13 # xmm13 = xmm30[0],xmm25[0]
vinserti128 $0x1, %xmm0, %ymm13, %ymm13
vmovq 0x60(%r15,%rdx), %xmm25
vpxorq %ymm27, %ymm15, %ymm2
vmovq 0x60(%r15,%rbx), %xmm15
vmovq 0x60(%r15,%rax), %xmm27
vmovq 0x60(%r15), %xmm30
vpunpcklqdq %xmm25, %xmm15, %xmm15 # xmm15 = xmm15[0],xmm25[0]
vpunpcklqdq %xmm27, %xmm30, %xmm25 # xmm25 = xmm30[0],xmm27[0]
vinserti32x4 $0x1, %xmm15, %ymm25, %ymm15
vmovq 0x68(%r15,%rdx), %xmm25
vpxorq %ymm26, %ymm9, %ymm30
vmovq 0x68(%r15,%rbx), %xmm9
vmovq 0x68(%r15,%rax), %xmm27
vmovdqa64 %ymm29, %ymm3
vmovq 0x68(%r15), %xmm29
vpunpcklqdq %xmm25, %xmm9, %xmm9 # xmm9 = xmm9[0],xmm25[0]
vpunpcklqdq %xmm27, %xmm29, %xmm25 # xmm25 = xmm29[0],xmm27[0]
vinserti32x4 $0x1, %xmm9, %ymm25, %ymm9
vmovq 0x70(%r15,%rdx), %xmm25
vpxorq %ymm31, %ymm11, %ymm31
vmovq 0x70(%r15,%rbx), %xmm11
vmovq 0x70(%r15,%rax), %xmm27
vmovq 0x70(%r15), %xmm29
vpunpcklqdq %xmm25, %xmm11, %xmm11 # xmm11 = xmm11[0],xmm25[0]
vpunpcklqdq %xmm27, %xmm29, %xmm25 # xmm25 = xmm29[0],xmm27[0]
vinserti32x4 $0x1, %xmm11, %ymm25, %ymm25
vmovq 0x78(%r15,%rdx), %xmm11
vpxorq %ymm20, %ymm6, %ymm26
vmovq 0x78(%r15,%rbx), %xmm6
vmovq 0x78(%r15,%rax), %xmm27
vmovq 0x78(%r15), %xmm29
vpunpcklqdq %xmm11, %xmm6, %xmm6 # xmm6 = xmm6[0],xmm11[0]
vpunpcklqdq %xmm27, %xmm29, %xmm11 # xmm11 = xmm29[0],xmm27[0]
vinserti128 $0x1, %xmm6, %ymm11, %ymm0
vmovq 0x80(%r15,%rdx), %xmm6
vpxorq %ymm24, %ymm12, %ymm11
vmovq 0x80(%r15,%rbx), %xmm12
vmovq 0x80(%r15,%rax), %xmm24
vmovq 0x80(%r15), %xmm27
vpunpcklqdq %xmm6, %xmm12, %xmm6 # xmm6 = xmm12[0],xmm6[0]
vpunpcklqdq %xmm24, %xmm27, %xmm12 # xmm12 = xmm27[0],xmm24[0]
vinserti128 $0x1, %xmm6, %ymm12, %ymm12
vmovq 0x88(%r15,%rdx), %xmm24
vpxor %ymm8, %ymm13, %ymm6
vmovq 0x88(%r15,%rbx), %xmm8
vpunpcklqdq %xmm24, %xmm8, %xmm8 # xmm8 = xmm8[0],xmm24[0]
vmovq 0x88(%r15,%rax), %xmm13
vpxorq %ymm21, %ymm15, %ymm21
vmovq 0x88(%r15), %xmm15
vpunpcklqdq %xmm13, %xmm15, %xmm13 # xmm13 = xmm15[0],xmm13[0]
vmovq 0x90(%r15,%rdx), %xmm15
vpxorq %ymm19, %ymm9, %ymm27
vinserti128 $0x1, %xmm8, %ymm13, %ymm8
vmovq 0x90(%r15,%rbx), %xmm9
vmovq 0x90(%r15,%rax), %xmm13
vpxorq %ymm16, %ymm25, %ymm20
vmovdqu64 %ymm20, 0xf0(%rsp)
vpunpcklqdq %xmm15, %xmm9, %xmm9 # xmm9 = xmm9[0],xmm15[0]
vmovq 0x90(%r15), %xmm15
vpunpcklqdq %xmm13, %xmm15, %xmm13 # xmm13 = xmm15[0],xmm13[0]
vinserti128 $0x1, %xmm9, %ymm13, %ymm9
vpxorq %ymm7, %ymm0, %ymm24
vmovq 0x98(%r15,%rdx), %xmm0
vmovq 0x98(%r15,%rbx), %xmm7
vpunpcklqdq %xmm0, %xmm7, %xmm0 # xmm0 = xmm7[0],xmm0[0]
vpxorq %ymm22, %ymm12, %ymm19
vmovq 0x98(%r15,%rax), %xmm7
vmovdqa %ymm10, %ymm12
vmovdqu %ymm10, 0x40(%rsp)
vmovq 0x98(%r15), %xmm10
vpunpcklqdq %xmm7, %xmm10, %xmm7 # xmm7 = xmm10[0],xmm7[0]
vpxorq %ymm18, %ymm8, %ymm29
vinserti128 $0x1, %xmm0, %ymm7, %ymm0
vmovq 0xa0(%r15,%rdx), %xmm7
vmovq 0xa0(%r15,%rbx), %xmm8
vpxorq %ymm3, %ymm9, %ymm16
vpunpcklqdq %xmm7, %xmm8, %xmm7 # xmm7 = xmm8[0],xmm7[0]
vmovq 0xa0(%r15,%rax), %xmm8
vmovq 0xa0(%r15), %xmm9
vpxorq 0x80(%rsp), %ymm0, %ymm17
vpunpcklqdq %xmm8, %xmm9, %xmm0 # xmm0 = xmm9[0],xmm8[0]
vinserti128 $0x1, %xmm7, %ymm0, %ymm0
vpxorq %ymm28, %ymm0, %ymm18
vmovdqa %ymm2, %ymm0
vmovdqa %ymm4, %ymm3
vpternlogq $0x96, %ymm12, %ymm4, %ymm0
vmovdqa64 %ymm26, %ymm8
vpternlogq $0x96, %ymm14, %ymm1, %ymm8
vpternlogq $0x96, %ymm6, %ymm19, %ymm0
vpternlogq $0x96, %ymm20, %ymm17, %ymm8
vprolq $0x1, %ymm0, %ymm7
vpxor %ymm7, %ymm8, %ymm7
vpxor %ymm7, %ymm11, %ymm10
vmovdqa64 %ymm31, %ymm9
vmovdqu64 0x20(%rsp), %ymm22
vmovdqu64 0x60(%rsp), %ymm25
vpternlogq $0x96, %ymm22, %ymm25, %ymm9
vmovdqu (%rsp), %ymm1
vmovdqu 0xa0(%rsp), %ymm5
vpternlogq $0x96, %ymm1, %ymm5, %ymm11
vpternlogq $0x96, %ymm27, %ymm16, %ymm9
vprolq $0x1, %ymm9, %ymm12
vpxor %ymm0, %ymm12, %ymm12
vpxorq %ymm30, %ymm12, %ymm0
vmovdqu64 0xc0(%rsp), %ymm28
vpternlogq $0x96, %ymm23, %ymm28, %ymm30
vpternlogq $0x96, %ymm24, %ymm18, %ymm11
vpternlogq $0x96, %ymm21, %ymm29, %ymm30
vprolq $0x1, %ymm30, %ymm15
vprolq $0x1, %ymm8, %ymm8
vpxorq %ymm30, %ymm8, %ymm13
vprolq $0x1, %ymm11, %ymm8
vpxor %ymm15, %ymm11, %ymm11
vpxor %ymm9, %ymm8, %ymm9
vpxor %ymm1, %ymm7, %ymm8
vpxor %ymm2, %ymm11, %ymm1
vpxorq %ymm21, %ymm12, %ymm4
vprolq $0x2b, %ymm4, %ymm30
vprolq $0x2c, %ymm1, %ymm1
vpxorq %ymm16, %ymm13, %ymm20
vpxorq %ymm25, %ymm13, %ymm2
vprolq $0x1c, %ymm2, %ymm2
vpxorq %ymm26, %ymm9, %ymm4
vprolq $0x3, %ymm10, %ymm16
vprolq $0x14, %ymm4, %ymm4
vmovdqa %ymm2, %ymm10
vpternlogq $0xd2, %ymm16, %ymm4, %ymm10
vmovdqu %ymm10, 0x80(%rsp)
vpxorq %ymm19, %ymm11, %ymm10
vprolq $0x2d, %ymm10, %ymm10
vmovdqa64 %ymm4, %ymm21
vpxorq %ymm23, %ymm12, %ymm19
vprolq $0x3d, %ymm19, %ymm19
vpternlogq $0xd2, %ymm10, %ymm16, %ymm21
vpternlogq $0xd2, %ymm19, %ymm10, %ymm16
vpternlogq $0xd2, %ymm2, %ymm19, %ymm10
vmovdqu %ymm10, (%rsp)
vpxor %ymm3, %ymm11, %ymm3
vprolq $0x1, %ymm3, %ymm26
vprolq $0x6, %ymm0, %ymm0
vpternlogq $0xd2, %ymm4, %ymm2, %ymm19
vpxorq %ymm27, %ymm13, %ymm2
vprolq $0x19, %ymm2, %ymm23
vmovdqa64 %ymm26, %ymm25
vpternlogq $0xd2, %ymm23, %ymm0, %ymm25
vpxorq %ymm17, %ymm9, %ymm2
vprolq $0x8, %ymm2, %ymm17
vmovdqa %ymm0, %ymm2
vpternlogq $0xd2, %ymm17, %ymm23, %ymm2
vmovdqa %ymm2, %ymm4
vmovdqu %ymm2, 0x60(%rsp)
vpxorq %ymm18, %ymm7, %ymm2
vprolq $0x12, %ymm2, %ymm15
vpternlogq $0xd2, %ymm15, %ymm17, %ymm23
vpternlogq $0xd2, %ymm26, %ymm15, %ymm17
vpternlogq $0xd2, %ymm0, %ymm26, %ymm15
vmovdqa64 %ymm30, %ymm10
vpandnq %ymm30, %ymm1, %ymm30
vprolq $0x15, %ymm20, %ymm27
vmovdqa64 %ymm1, %ymm20
vpternlogq $0xd2, %ymm27, %ymm10, %ymm20
vpxor %ymm14, %ymm9, %ymm0
vprolq $0xe, %ymm0, %ymm14
vpternlogq $0xd2, %ymm14, %ymm27, %ymm10
vpternlogq $0xd2, %ymm8, %ymm14, %ymm27
vpxor 0x110(%rsp), %ymm9, %ymm0
vprolq $0x1b, %ymm0, %ymm0
vpxor %ymm5, %ymm7, %ymm2
vprolq $0x24, %ymm2, %ymm2
vpxor %ymm6, %ymm11, %ymm5
vpternlogq $0xd2, %ymm1, %ymm8, %ymm14
vprolq $0xa, %ymm5, %ymm18
vmovdqa %ymm0, %ymm6
vpternlogq $0xd2, %ymm18, %ymm2, %ymm6
vpxorq %ymm29, %ymm12, %ymm1
vprolq $0xf, %ymm1, %ymm26
vpxorq %ymm28, %ymm12, %ymm1
vmovdqa %ymm2, %ymm5
vpternlogq $0xd2, %ymm26, %ymm18, %ymm5
vpxorq %ymm22, %ymm13, %ymm12
vprolq $0x38, %ymm12, %ymm3
vpternlogq $0xd2, %ymm3, %ymm26, %ymm18
vpternlogq $0xd2, %ymm0, %ymm3, %ymm26
vprolq $0x3e, %ymm1, %ymm1
vpternlogq $0xd2, %ymm2, %ymm0, %ymm3
vpxorq %ymm31, %ymm13, %ymm0
vprolq $0x37, %ymm0, %ymm0
vpxor 0xf0(%rsp), %ymm9, %ymm2
vprolq $0x27, %ymm2, %ymm2
vmovdqa64 %ymm1, %ymm28
vpternlogq $0xd2, %ymm2, %ymm0, %ymm28
vpternlogq $0x96, 0x11cfd(%rip){1to4}, %ymm8, %ymm30 # 0x23320
vpxorq %ymm24, %ymm7, %ymm7
vprolq $0x29, %ymm7, %ymm24
vmovdqa %ymm0, %ymm13
vpternlogq $0xd2, %ymm24, %ymm2, %ymm13
vmovdqa %ymm5, %ymm8
vpternlogq $0x96, %ymm20, %ymm21, %ymm8
vpxor 0x40(%rsp), %ymm11, %ymm7
vpternlogq $0x96, %ymm13, %ymm4, %ymm8
vprolq $0x2, %ymm7, %ymm12
vpternlogq $0xd2, %ymm12, %ymm24, %ymm2
vpternlogq $0xd2, %ymm1, %ymm12, %ymm24
vpternlogq $0xd2, %ymm0, %ymm1, %ymm12
vmovdqa %ymm15, %ymm9
vpternlogq $0x96, %ymm12, %ymm14, %ymm9
vpternlogq $0x96, %ymm19, %ymm3, %ymm9
vprolq $0x1, %ymm8, %ymm0
vpxor %ymm0, %ymm9, %ymm7
vpxor %ymm6, %ymm7, %ymm0
vmovdqu %ymm0, 0x40(%rsp)
vmovdqa %ymm6, %ymm0
vpternlogq $0x96, %ymm25, %ymm30, %ymm0
vmovdqa64 %ymm27, %ymm1
vpternlogq $0x96, (%rsp), %ymm24, %ymm1
vmovdqu 0x80(%rsp), %ymm4
vpternlogq $0x96, %ymm4, %ymm28, %ymm0
vpternlogq $0x96, %ymm26, %ymm17, %ymm1
vprolq $0x1, %ymm1, %ymm6
vpxor %ymm6, %ymm8, %ymm8
vpxorq %ymm2, %ymm8, %ymm31
vpternlogq $0x96, %ymm18, %ymm16, %ymm2
vpternlogq $0x96, %ymm10, %ymm23, %ymm2
vprolq $0x1, %ymm2, %ymm6
vpxor %ymm0, %ymm6, %ymm11
vprolq $0x1, %ymm9, %ymm6
vpxor %ymm6, %ymm2, %ymm6
vprolq $0x1, %ymm0, %ymm0
vpxor %ymm1, %ymm0, %ymm0
vpxorq %ymm30, %ymm7, %ymm1
vpxorq %ymm21, %ymm11, %ymm9
vpxorq %ymm23, %ymm8, %ymm2
vprolq $0x2b, %ymm2, %ymm22
vpxorq %ymm27, %ymm6, %ymm21
vprolq $0x2c, %ymm9, %ymm9
vprolq $0x1c, %ymm21, %ymm21
vpxorq %ymm19, %ymm0, %ymm19
vprolq $0x14, %ymm19, %ymm23
vpxorq %ymm25, %ymm7, %ymm19
vprolq $0x3, %ymm19, %ymm19
vmovdqa64 %ymm21, %ymm30
vpternlogq $0xd2, %ymm19, %ymm23, %ymm30
vpxor %ymm5, %ymm11, %ymm5
vprolq $0x2d, %ymm5, %ymm5
vmovdqa64 %ymm23, %ymm29
vpternlogq $0xd2, %ymm5, %ymm19, %ymm29
vprolq $0x3d, %ymm31, %ymm27
vpternlogq $0xd2, %ymm27, %ymm5, %ymm19
vpternlogq $0xd2, %ymm21, %ymm27, %ymm5
vmovdqu %ymm5, 0x20(%rsp)
vpternlogq $0xd2, %ymm23, %ymm21, %ymm27
vpandnq %ymm22, %ymm9, %ymm31
vpxorq %ymm26, %ymm6, %ymm21
vprolq $0x15, %ymm21, %ymm26
vmovdqa %ymm9, %ymm2
vpxor %ymm0, %ymm12, %ymm12
vpternlogq $0xd2, %ymm26, %ymm22, %ymm2
vmovdqa %ymm2, %ymm5
vprolq $0xe, %ymm12, %ymm2
vpternlogq $0xd2, %ymm2, %ymm26, %ymm22
vmovdqu64 %ymm22, 0xc0(%rsp)
vpternlogq $0xd2, %ymm1, %ymm2, %ymm26
vpxorq %ymm20, %ymm11, %ymm12
vprolq $0x1, %ymm12, %ymm23
vpternlogq $0xd2, %ymm9, %ymm1, %ymm2
vpxorq %ymm16, %ymm8, %ymm9
vprolq $0x6, %ymm9, %ymm25
vpxorq %ymm17, %ymm6, %ymm9
vprolq $0x19, %ymm9, %ymm20
vmovdqa64 %ymm23, %ymm16
vpxor %ymm3, %ymm0, %ymm3
vpternlogq $0xd2, %ymm20, %ymm25, %ymm16
vprolq $0x8, %ymm3, %ymm9
vpxorq %ymm28, %ymm7, %ymm3
vpxor %ymm4, %ymm7, %ymm7
vmovdqa64 %ymm25, %ymm4
vpternlogq $0xd2, %ymm9, %ymm20, %ymm4
vmovdqu %ymm4, 0xa0(%rsp)
vprolq $0x12, %ymm3, %ymm12
vpternlogq $0xd2, %ymm12, %ymm9, %ymm20
vpternlogq $0xd2, %ymm23, %ymm12, %ymm9
vpxor %ymm0, %ymm14, %ymm3
vprolq $0x1b, %ymm3, %ymm3
vprolq $0x24, %ymm7, %ymm14
vpxor 0x60(%rsp), %ymm11, %ymm4
vpternlogq $0xd2, %ymm25, %ymm23, %ymm12
vprolq $0xa, %ymm4, %ymm23
vmovdqa %ymm3, %ymm4
vpternlogq $0xd2, %ymm23, %ymm14, %ymm4
vmovdqa64 %ymm4, %ymm21
vmovdqu %ymm4, 0x60(%rsp)
vpxorq %ymm18, %ymm8, %ymm4
vprolq $0xf, %ymm4, %ymm17
vmovdqa %ymm14, %ymm4
vpxorq %ymm24, %ymm6, %ymm7
vpternlogq $0xd2, %ymm17, %ymm23, %ymm4
vprolq $0x38, %ymm7, %ymm7
vpternlogq $0xd2, %ymm7, %ymm17, %ymm23
vpternlogq $0xd2, %ymm3, %ymm7, %ymm17
vpxor %ymm10, %ymm8, %ymm8
vprolq $0x3e, %ymm8, %ymm24
vpternlogq $0xd2, %ymm14, %ymm3, %ymm7
vpxor (%rsp), %ymm6, %ymm3
vprolq $0x37, %ymm3, %ymm6
vpxor %ymm0, %ymm15, %ymm0
vprolq $0x27, %ymm0, %ymm8
vmovdqa64 %ymm24, %ymm15
vpternlogq $0xd2, %ymm8, %ymm6, %ymm15
vpternlogq $0x96, 0x11a23(%rip){1to4}, %ymm1, %ymm31 # 0x23328
vprolq $0x29, 0x40(%rsp), %ymm18
vmovdqa %ymm6, %ymm0
vpternlogq $0xd2, %ymm18, %ymm8, %ymm0
vmovdqa %ymm0, %ymm10
vmovdqu %ymm0, 0x80(%rsp)
vpxor %ymm13, %ymm11, %ymm0
vprolq $0x2, %ymm0, %ymm1
vpternlogq $0xd2, %ymm1, %ymm18, %ymm8
vmovdqa %ymm8, %ymm3
vpternlogq $0x96, %ymm22, %ymm19, %ymm3
vpternlogq $0x96, %ymm20, %ymm23, %ymm3
vpternlogq $0xd2, %ymm24, %ymm1, %ymm18
vpternlogq $0xd2, %ymm6, %ymm24, %ymm1
vmovdqa %ymm2, %ymm0
vpternlogq $0x96, %ymm27, %ymm1, %ymm0
vpternlogq $0x96, %ymm12, %ymm7, %ymm0
vprolq $0x1, %ymm0, %ymm6
vpxorq %ymm3, %ymm6, %ymm28
vpxorq %ymm9, %ymm28, %ymm6
vmovdqu %ymm6, 0xf0(%rsp)
vmovdqa %ymm9, %ymm13
vmovdqa %ymm4, %ymm6
vpternlogq $0x96, %ymm5, %ymm29, %ymm6
vmovdqa %ymm5, %ymm14
vmovdqu 0xa0(%rsp), %ymm5
vpternlogq $0x96, %ymm10, %ymm5, %ymm6
vprolq $0x1, %ymm6, %ymm9
vpternlogq $0x96, 0x20(%rsp), %ymm26, %ymm13
vpxor %ymm0, %ymm9, %ymm11
vpxorq %ymm30, %ymm11, %ymm25
vmovdqa64 %ymm30, %ymm0
vpternlogq $0x96, %ymm16, %ymm15, %ymm0
vpternlogq $0x96, %ymm31, %ymm21, %ymm0
vprolq $0x1, %ymm3, %ymm3
vpternlogq $0x96, %ymm18, %ymm17, %ymm13
vpxorq %ymm0, %ymm3, %ymm30
vprolq $0x1, %ymm13, %ymm3
vpxor %ymm3, %ymm6, %ymm9
vprolq $0x1, %ymm0, %ymm0
vpxorq %ymm31, %ymm11, %ymm6
vpxor %ymm0, %ymm13, %ymm0
vpxorq %ymm29, %ymm30, %ymm3
vprolq $0x2c, %ymm3, %ymm21
vpxorq %ymm20, %ymm9, %ymm3
vpxorq %ymm26, %ymm28, %ymm13
vprolq $0x1c, %ymm13, %ymm13
vprolq $0x2b, %ymm3, %ymm22
vpxorq %ymm27, %ymm0, %ymm20
vprolq $0x14, %ymm20, %ymm20
vpxorq %ymm16, %ymm11, %ymm16
vprolq $0x3, %ymm16, %ymm24
vmovdqa %ymm13, %ymm3
vpxorq %ymm4, %ymm30, %ymm4
vpternlogq $0xd2, %ymm24, %ymm20, %ymm3
vmovdqu %ymm3, 0x40(%rsp)
vprolq $0x2d, %ymm4, %ymm3
vmovdqa64 %ymm20, %ymm29
vpternlogq $0xd2, %ymm3, %ymm24, %ymm29
vpxor %ymm8, %ymm9, %ymm8
vprolq $0x3d, %ymm8, %ymm27
vpternlogq $0xd2, %ymm27, %ymm3, %ymm24
vpternlogq $0xd2, %ymm13, %ymm27, %ymm3
vmovdqu %ymm3, (%rsp)
vpxorq %ymm14, %ymm30, %ymm8
vprolq $0x1, %ymm8, %ymm16
vpxorq %ymm19, %ymm9, %ymm8
vprolq $0x6, %ymm8, %ymm19
vprolq $0x19, 0xf0(%rsp), %ymm8
vpternlogq $0xd2, %ymm20, %ymm13, %ymm27
vmovdqa64 %ymm16, %ymm10
vpternlogq $0xd2, %ymm8, %ymm19, %ymm10
vpxor %ymm7, %ymm0, %ymm7
vprolq $0x8, %ymm7, %ymm26
vmovdqa64 %ymm19, %ymm20
vpxor %ymm15, %ymm11, %ymm7
vprolq $0x12, %ymm7, %ymm13
vpternlogq $0xd2, %ymm26, %ymm8, %ymm20
vpternlogq $0xd2, %ymm13, %ymm26, %ymm8
vpternlogq $0xd2, %ymm16, %ymm13, %ymm26
vpxor %ymm2, %ymm0, %ymm2
vprolq $0x1b, %ymm2, %ymm2
vprolq $0x24, %ymm25, %ymm7
vpternlogq $0xd2, %ymm19, %ymm16, %ymm13
vpxorq %ymm5, %ymm30, %ymm14
vprolq $0xa, %ymm14, %ymm25
vmovdqa %ymm2, %ymm3
vpternlogq $0xd2, %ymm25, %ymm7, %ymm3
vmovdqu %ymm3, 0xa0(%rsp)
vpxorq %ymm23, %ymm9, %ymm14
vprolq $0xf, %ymm14, %ymm19
vmovdqa %ymm7, %ymm15
vpternlogq $0xd2, %ymm19, %ymm25, %ymm15
vpxorq %ymm18, %ymm28, %ymm14
vprolq $0x38, %ymm14, %ymm31
vpternlogq $0xd2, %ymm31, %ymm19, %ymm25
vpternlogq $0xd2, %ymm2, %ymm31, %ymm19
vpternlogq $0xd2, %ymm7, %ymm2, %ymm31
vpandnq %ymm22, %ymm21, %ymm18
vpxorq %ymm17, %ymm28, %ymm2
vprolq $0x15, %ymm2, %ymm17
vmovdqa64 %ymm21, %ymm23
vpternlogq $0xd2, %ymm17, %ymm22, %ymm23
vpxor %ymm1, %ymm0, %ymm1
vprolq $0xe, %ymm1, %ymm7
vpternlogq $0xd2, %ymm7, %ymm17, %ymm22
vpternlogq $0xd2, %ymm6, %ymm7, %ymm17
vpternlogq $0xd2, %ymm21, %ymm6, %ymm7
vpxor 0xc0(%rsp), %ymm9, %ymm1
vprolq $0x3e, %ymm1, %ymm9
vpxorq 0x20(%rsp), %ymm28, %ymm2
vpternlogq $0x96, 0x11759(%rip){1to4}, %ymm6, %ymm18 # 0x23330
vmovdqa %ymm13, %ymm1
vprolq $0x37, %ymm2, %ymm14
vpxor %ymm0, %ymm12, %ymm0
vprolq $0x27, %ymm0, %ymm5
vmovdqa %ymm9, %ymm2
vpternlogq $0xd2, %ymm5, %ymm14, %ymm2
vpxor 0x60(%rsp), %ymm11, %ymm0
vpternlogq $0x96, %ymm27, %ymm7, %ymm1
vprolq $0x29, %ymm0, %ymm28
vmovdqa %ymm14, %ymm6
vpternlogq $0xd2, %ymm28, %ymm5, %ymm6
vmovdqa %ymm15, %ymm0
vpternlogq $0x96, %ymm29, %ymm23, %ymm0
vpxorq 0x80(%rsp), %ymm30, %ymm11
vprolq $0x2, %ymm11, %ymm12
vpternlogq $0x96, %ymm6, %ymm20, %ymm0
vpternlogq $0xd2, %ymm12, %ymm28, %ymm5
vpternlogq $0xd2, %ymm9, %ymm12, %ymm28
vpternlogq $0xd2, %ymm14, %ymm9, %ymm12
vpternlogq $0x96, %ymm12, %ymm31, %ymm1
vprolq $0x1, %ymm0, %ymm9
vpxorq %ymm1, %ymm9, %ymm30
vpxorq %ymm10, %ymm30, %ymm9
vmovdqa %ymm10, %ymm11
vmovdqu 0x40(%rsp), %ymm4
vpternlogq $0x96, %ymm4, %ymm18, %ymm11
vmovdqa64 %ymm28, %ymm16
vpternlogq $0x96, (%rsp), %ymm17, %ymm16
vpternlogq $0x96, %ymm26, %ymm19, %ymm16
vprolq $0x1, %ymm16, %ymm10
vpternlogq $0x96, %ymm3, %ymm2, %ymm11
vpxor %ymm0, %ymm10, %ymm14
vpxorq %ymm5, %ymm14, %ymm21
vpternlogq $0x96, %ymm24, %ymm22, %ymm5
vpternlogq $0x96, %ymm8, %ymm25, %ymm5
vprolq $0x1, %ymm5, %ymm0
vpxor %ymm0, %ymm11, %ymm10
vprolq $0x1, %ymm1, %ymm0
vpxor %ymm0, %ymm5, %ymm0
vprolq $0x1, %ymm11, %ymm1
vpxorq %ymm16, %ymm1, %ymm1
vpxorq %ymm18, %ymm30, %ymm11
vpxorq %ymm29, %ymm10, %ymm5
vpxor %ymm8, %ymm14, %ymm8
vprolq $0x2b, %ymm8, %ymm3
vpxorq %ymm17, %ymm0, %ymm8
vprolq $0x1c, %ymm8, %ymm8
vpxorq %ymm27, %ymm1, %ymm17
vprolq $0x2c, %ymm5, %ymm29
vprolq $0x14, %ymm17, %ymm27
vprolq $0x3, %ymm9, %ymm5
vmovdqa64 %ymm8, %ymm18
vpternlogq $0xd2, %ymm5, %ymm27, %ymm18
vpxor %ymm15, %ymm10, %ymm9
vprolq $0x2d, %ymm9, %ymm16
vmovdqa64 %ymm27, %ymm9
vpternlogq $0xd2, %ymm16, %ymm5, %ymm9
vmovdqu %ymm9, 0x80(%rsp)
vprolq $0x3d, %ymm21, %ymm17
vpternlogq $0xd2, %ymm17, %ymm16, %ymm5
vpternlogq $0xd2, %ymm8, %ymm17, %ymm16
vpxorq %ymm23, %ymm10, %ymm9
vprolq $0x1, %ymm9, %ymm21
vpternlogq $0xd2, %ymm27, %ymm8, %ymm17
vpxorq %ymm24, %ymm14, %ymm8
vprolq $0x6, %ymm8, %ymm24
vpxorq %ymm26, %ymm0, %ymm8
vprolq $0x19, %ymm8, %ymm23
vmovdqa64 %ymm21, %ymm9
vpxorq %ymm31, %ymm1, %ymm8
vpternlogq $0xd2, %ymm23, %ymm24, %ymm9
vmovdqu %ymm9, 0x20(%rsp)
vprolq $0x8, %ymm8, %ymm8
vmovdqa64 %ymm24, %ymm9
vpternlogq $0xd2, %ymm8, %ymm23, %ymm9
vmovdqu %ymm9, 0x60(%rsp)
vpxorq %ymm2, %ymm30, %ymm2
vprolq $0x12, %ymm2, %ymm15
vpternlogq $0xd2, %ymm15, %ymm8, %ymm23
vpternlogq $0xd2, %ymm21, %ymm15, %ymm8
vpternlogq $0xd2, %ymm24, %ymm21, %ymm15
vpandnq %ymm3, %ymm29, %ymm27
vpxorq %ymm19, %ymm0, %ymm19
vprolq $0x15, %ymm19, %ymm26
vmovdqa64 %ymm29, %ymm24
vpxor %ymm1, %ymm12, %ymm12
vpternlogq $0xd2, %ymm26, %ymm3, %ymm24
vprolq $0xe, %ymm12, %ymm19
vpternlogq $0xd2, %ymm19, %ymm26, %ymm3
vmovdqa %ymm3, %ymm2
vmovdqu %ymm3, 0xc0(%rsp)
vpternlogq $0xd2, %ymm11, %ymm19, %ymm26
vpxor %ymm7, %ymm1, %ymm7
vprolq $0x1b, %ymm7, %ymm12
vpternlogq $0xd2, %ymm29, %ymm11, %ymm19
vpxorq %ymm4, %ymm30, %ymm7
vprolq $0x24, %ymm7, %ymm21
vpxorq %ymm20, %ymm10, %ymm7
vprolq $0xa, %ymm7, %ymm20
vmovdqa %ymm12, %ymm9
vpxorq %ymm25, %ymm14, %ymm7
vpternlogq $0xd2, %ymm20, %ymm21, %ymm9
vmovdqu %ymm9, 0x40(%rsp)
vprolq $0xf, %ymm7, %ymm7
vpxorq %ymm22, %ymm14, %ymm14
vmovdqa64 %ymm21, %ymm3
vpternlogq $0xd2, %ymm7, %ymm20, %ymm3
vpxorq %ymm28, %ymm0, %ymm25
vprolq $0x38, %ymm25, %ymm25
vpternlogq $0xd2, %ymm25, %ymm7, %ymm20
vpternlogq $0xd2, %ymm12, %ymm25, %ymm7
vprolq $0x3e, %ymm14, %ymm14
vpxor (%rsp), %ymm0, %ymm0
vprolq $0x37, %ymm0, %ymm0
vpxor %ymm1, %ymm13, %ymm1
vpternlogq $0xd2, %ymm21, %ymm12, %ymm25
vprolq $0x27, %ymm1, %ymm31
vmovdqa64 %ymm14, %ymm29
vpternlogq $0xd2, %ymm31, %ymm0, %ymm29
vpxorq 0xa0(%rsp), %ymm30, %ymm1
vprolq $0x29, %ymm1, %ymm28
vmovdqa %ymm0, %ymm12
vpternlogq $0xd2, %ymm28, %ymm31, %ymm12
vpternlogq $0x96, 0x11444(%rip){1to4}, %ymm11, %ymm27 # 0x23338
vpxor %ymm6, %ymm10, %ymm1
vprolq $0x2, %ymm1, %ymm6
vpternlogq $0xd2, %ymm6, %ymm28, %ymm31
vmovdqa64 %ymm31, %ymm4
vpternlogq $0x96, %ymm2, %ymm5, %ymm4
vpternlogq $0xd2, %ymm14, %ymm6, %ymm28
vpternlogq $0x96, %ymm23, %ymm20, %ymm4
vpternlogq $0xd2, %ymm0, %ymm14, %ymm6
vmovdqa64 %ymm19, %ymm0
vpternlogq $0x96, %ymm17, %ymm6, %ymm0
vpternlogq $0x96, %ymm15, %ymm25, %ymm0
vprolq $0x1, %ymm0, %ymm1
vpxorq %ymm4, %ymm1, %ymm30
vpxorq %ymm8, %ymm30, %ymm10
vpternlogq $0x96, %ymm16, %ymm26, %ymm8
vmovdqa %ymm3, %ymm1
vmovdqu 0x80(%rsp), %ymm13
vpternlogq $0x96, %ymm24, %ymm13, %ymm1
vmovdqu 0x60(%rsp), %ymm2
vpternlogq $0x96, %ymm12, %ymm2, %ymm1
vprolq $0x1, %ymm1, %ymm11
vpxor %ymm0, %ymm11, %ymm11
vpxorq %ymm18, %ymm11, %ymm14
vmovdqa64 %ymm18, %ymm22
vmovdqu64 0x20(%rsp), %ymm18
vpternlogq $0x96, %ymm18, %ymm29, %ymm22
vpternlogq $0x96, %ymm27, %ymm9, %ymm22
vpternlogq $0x96, %ymm28, %ymm7, %ymm8
vprolq $0x1, %ymm4, %ymm0
vpxorq %ymm22, %ymm0, %ymm4
vprolq $0x1, %ymm8, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vprolq $0x1, %ymm22, %ymm1
vpxor %ymm1, %ymm8, %ymm1
vpxorq %ymm27, %ymm11, %ymm27
vpxor %ymm4, %ymm13, %ymm8
vprolq $0x2c, %ymm8, %ymm9
vpxorq %ymm23, %ymm0, %ymm8
vpxorq %ymm7, %ymm30, %ymm7
vprolq $0x15, %ymm7, %ymm23
vpxorq %ymm26, %ymm30, %ymm7
vprolq $0x1c, %ymm7, %ymm7
vprolq $0x2b, %ymm8, %ymm13
vpxorq %ymm17, %ymm1, %ymm8
vprolq $0x14, %ymm8, %ymm26
vpxorq %ymm18, %ymm11, %ymm8
vprolq $0x3, %ymm8, %ymm22
vmovdqa %ymm7, %ymm8
vpxor %ymm3, %ymm4, %ymm3
vpternlogq $0xd2, %ymm22, %ymm26, %ymm8
vmovdqu %ymm8, 0xa0(%rsp)
vprolq $0x2d, %ymm3, %ymm8
vmovdqa64 %ymm26, %ymm21
vpternlogq $0xd2, %ymm8, %ymm22, %ymm21
vpxorq %ymm31, %ymm0, %ymm3
vprolq $0x3d, %ymm3, %ymm17
vpternlogq $0xd2, %ymm17, %ymm8, %ymm22
vpternlogq $0xd2, %ymm7, %ymm17, %ymm8
vmovdqa64 %ymm8, %ymm31
vmovdqu %ymm8, 0xf0(%rsp)
vpxorq %ymm24, %ymm4, %ymm3
vprolq $0x1, %ymm3, %ymm3
vpxor %ymm5, %ymm0, %ymm5
vprolq $0x6, %ymm5, %ymm24
vprolq $0x19, %ymm10, %ymm8
vpternlogq $0xd2, %ymm26, %ymm7, %ymm17
vmovdqa %ymm3, %ymm10
vpternlogq $0xd2, %ymm8, %ymm24, %ymm10
vpxorq %ymm25, %ymm1, %ymm5
vprolq $0x8, %ymm5, %ymm7
vmovdqa64 %ymm24, %ymm18
vpxorq %ymm29, %ymm11, %ymm5
vprolq $0x12, %ymm5, %ymm5
vpternlogq $0xd2, %ymm7, %ymm8, %ymm18
vpternlogq $0xd2, %ymm5, %ymm7, %ymm8
vpternlogq $0xd2, %ymm3, %ymm5, %ymm7
vpxorq %ymm19, %ymm1, %ymm19
vprolq $0x1b, %ymm19, %ymm26
vprolq $0x24, %ymm14, %ymm29
vpternlogq $0xd2, %ymm24, %ymm3, %ymm5
vpxor %ymm2, %ymm4, %ymm3
vprolq $0xa, %ymm3, %ymm25
vmovdqa64 %ymm26, %ymm2
vpternlogq $0xd2, %ymm25, %ymm29, %ymm2
vmovdqu %ymm2, (%rsp)
vpxorq %ymm20, %ymm0, %ymm3
vprolq $0xf, %ymm3, %ymm19
vmovdqa64 %ymm29, %ymm24
vpternlogq $0xd2, %ymm19, %ymm25, %ymm24
vpxorq %ymm28, %ymm30, %ymm3
vprolq $0x38, %ymm3, %ymm14
vpternlogq $0xd2, %ymm14, %ymm19, %ymm25
vpternlogq $0xd2, %ymm26, %ymm14, %ymm19
vpternlogq $0xd2, %ymm29, %ymm26, %ymm14
vmovdqa %ymm9, %ymm3
vpandnq %ymm13, %ymm9, %ymm26
vpternlogq $0xd2, %ymm23, %ymm13, %ymm3
vpxor %ymm6, %ymm1, %ymm6
vprolq $0xe, %ymm6, %ymm20
vpternlogq $0xd2, %ymm20, %ymm23, %ymm13
vpternlogq $0xd2, %ymm27, %ymm20, %ymm23
vpternlogq $0xd2, %ymm9, %ymm27, %ymm20
vpxor 0xc0(%rsp), %ymm0, %ymm0
vprolq $0x3e, %ymm0, %ymm0
vpxorq %ymm16, %ymm30, %ymm6
vprolq $0x37, %ymm6, %ymm9
vpxor %ymm1, %ymm15, %ymm2
vpternlogq $0x96, 0x11193(%rip){1to4}, %ymm27, %ymm26 # 0x23340
vmovdqa %ymm5, %ymm1
vprolq $0x27, %ymm2, %ymm15
vmovdqa %ymm0, %ymm2
vpternlogq $0xd2, %ymm15, %ymm9, %ymm2
vpxor 0x40(%rsp), %ymm11, %ymm6
vprolq $0x29, %ymm6, %ymm28
vmovdqa %ymm9, %ymm6
vpternlogq $0xd2, %ymm28, %ymm15, %ymm6
vmovdqu %ymm6, 0x80(%rsp)
vpternlogq $0x96, %ymm17, %ymm20, %ymm1
vmovdqa64 %ymm24, %ymm11
vpternlogq $0x96, %ymm21, %ymm3, %ymm11
vpxor %ymm4, %ymm12, %ymm4
vprolq $0x2, %ymm4, %ymm29
vpternlogq $0xd2, %ymm29, %ymm28, %ymm15
vpternlogq $0xd2, %ymm0, %ymm29, %ymm28
vpternlogq $0x96, %ymm6, %ymm18, %ymm11
vpternlogq $0xd2, %ymm9, %ymm0, %ymm29
vpternlogq $0x96, %ymm29, %ymm14, %ymm1
vprolq $0x1, %ymm11, %ymm0
vpxorq %ymm1, %ymm0, %ymm30
vpxorq %ymm10, %ymm30, %ymm9
vmovdqa %ymm10, %ymm4
vmovdqa64 %ymm28, %ymm12
vmovdqu 0xa0(%rsp), %ymm6
vpternlogq $0x96, %ymm6, %ymm26, %ymm4
vpternlogq $0x96, %ymm31, %ymm23, %ymm12
vpternlogq $0x96, %ymm7, %ymm19, %ymm12
vprolq $0x1, %ymm12, %ymm0
vpxorq %ymm0, %ymm11, %ymm31
vpxorq %ymm15, %ymm31, %ymm16
vpternlogq $0x96, (%rsp), %ymm2, %ymm4
vpternlogq $0x96, %ymm22, %ymm13, %ymm15
vpternlogq $0x96, %ymm8, %ymm25, %ymm15
vprolq $0x1, %ymm15, %ymm10
vprolq $0x1, %ymm1, %ymm0
vpxor %ymm0, %ymm15, %ymm0
vpxor %ymm4, %ymm10, %ymm10
vprolq $0x1, %ymm4, %ymm1
vpxor %ymm1, %ymm12, %ymm15
vpxorq %ymm26, %ymm30, %ymm11
vpxorq %ymm21, %ymm10, %ymm1
vpxorq %ymm8, %ymm31, %ymm4
vprolq $0x2c, %ymm1, %ymm26
vprolq $0x2b, %ymm4, %ymm4
vpxorq %ymm23, %ymm0, %ymm1
vprolq $0x1c, %ymm1, %ymm8
vpxorq %ymm17, %ymm15, %ymm1
vprolq $0x3, %ymm9, %ymm12
vprolq $0x14, %ymm1, %ymm9
vmovdqa %ymm8, %ymm1
vpternlogq $0xd2, %ymm12, %ymm9, %ymm1
vmovdqu %ymm1, 0x20(%rsp)
vpxorq %ymm24, %ymm10, %ymm17
vprolq $0x2d, %ymm17, %ymm17
vmovdqa %ymm9, %ymm1
vpternlogq $0xd2, %ymm17, %ymm12, %ymm1
vmovdqu %ymm1, 0x60(%rsp)
vprolq $0x3d, %ymm16, %ymm16
vpternlogq $0xd2, %ymm16, %ymm17, %ymm12
vpternlogq $0xd2, %ymm8, %ymm16, %ymm17
vmovdqa64 %ymm17, %ymm24
vmovdqu64 %ymm17, 0x110(%rsp)
vpxor %ymm3, %ymm10, %ymm3
vprolq $0x1, %ymm3, %ymm3
vpxorq %ymm22, %ymm31, %ymm17
vprolq $0x6, %ymm17, %ymm21
vpternlogq $0xd2, %ymm9, %ymm8, %ymm16
vpxor %ymm7, %ymm0, %ymm7
vprolq $0x19, %ymm7, %ymm23
vmovdqa64 %ymm3, %ymm22
vpternlogq $0xd2, %ymm23, %ymm21, %ymm22
vpxor %ymm14, %ymm15, %ymm7
vprolq $0x8, %ymm7, %ymm8
vmovdqa64 %ymm21, %ymm1
vpternlogq $0xd2, %ymm8, %ymm23, %ymm1
vmovdqu %ymm1, 0x40(%rsp)
vpxorq %ymm2, %ymm30, %ymm2
vprolq $0x12, %ymm2, %ymm17
vpternlogq $0xd2, %ymm17, %ymm8, %ymm23
vpternlogq $0xd2, %ymm3, %ymm17, %ymm8
vpternlogq $0xd2, %ymm21, %ymm3, %ymm17
vmovdqa %ymm4, %ymm1
vpandnq %ymm4, %ymm26, %ymm27
vpxorq %ymm19, %ymm0, %ymm2
vprolq $0x15, %ymm2, %ymm2
vmovdqa64 %ymm26, %ymm21
vpternlogq $0xd2, %ymm2, %ymm4, %ymm21
vpxorq %ymm29, %ymm15, %ymm3
vprolq $0xe, %ymm3, %ymm19
vpternlogq $0xd2, %ymm19, %ymm2, %ymm1
vmovdqu %ymm1, 0xc0(%rsp)
vpternlogq $0xd2, %ymm11, %ymm19, %ymm2
vpxorq %ymm20, %ymm15, %ymm3
vprolq $0x1b, %ymm3, %ymm3
vpxorq %ymm6, %ymm30, %ymm7
vprolq $0x24, %ymm7, %ymm7
vpternlogq $0xd2, %ymm26, %ymm11, %ymm19
vpxorq %ymm18, %ymm10, %ymm9
vprolq $0xa, %ymm9, %ymm20
vmovdqa %ymm3, %ymm4
vpxorq %ymm25, %ymm31, %ymm9
vprolq $0xf, %ymm9, %ymm18
vpxorq %ymm13, %ymm31, %ymm9
vmovdqa64 %ymm7, %ymm31
vpternlogq $0xd2, %ymm20, %ymm7, %ymm4
vmovdqa64 %ymm4, %ymm26
vmovdqu %ymm4, 0x130(%rsp)
vpternlogq $0xd2, %ymm18, %ymm20, %ymm31
vpxorq %ymm28, %ymm0, %ymm13
vprolq $0x38, %ymm13, %ymm29
vpternlogq $0xd2, %ymm29, %ymm18, %ymm20
vpternlogq $0xd2, %ymm3, %ymm29, %ymm18
vpternlogq $0xd2, %ymm7, %ymm3, %ymm29
vprolq $0x3e, %ymm9, %ymm14
vpxor 0xf0(%rsp), %ymm0, %ymm0
vprolq $0x37, %ymm0, %ymm0
vpxor %ymm5, %ymm15, %ymm3
vprolq $0x27, %ymm3, %ymm9
vmovdqa %ymm14, %ymm7
vpternlogq $0xd2, %ymm9, %ymm0, %ymm7
vpxorq (%rsp), %ymm30, %ymm3
vprolq $0x29, %ymm3, %ymm28
vmovdqa %ymm0, %ymm3
vpternlogq $0xd2, %ymm28, %ymm9, %ymm3
vmovdqa %ymm3, %ymm6
vmovdqu %ymm3, (%rsp)
vpxor 0x80(%rsp), %ymm10, %ymm3
vprolq $0x2, %ymm3, %ymm25
vpternlogq $0x96, 0x10e53(%rip){1to4}, %ymm11, %ymm27 # 0x23348
vpternlogq $0xd2, %ymm25, %ymm28, %ymm9
vmovdqa %ymm9, %ymm3
vpternlogq $0x96, %ymm1, %ymm12, %ymm3
vpternlogq $0xd2, %ymm14, %ymm25, %ymm28
vpternlogq $0xd2, %ymm0, %ymm14, %ymm25
vmovdqa64 %ymm19, %ymm0
vpternlogq $0x96, %ymm16, %ymm25, %ymm0
vpternlogq $0x96, %ymm23, %ymm20, %ymm3
vpternlogq $0x96, %ymm17, %ymm29, %ymm0
vprolq $0x1, %ymm0, %ymm5
vpxorq %ymm3, %ymm5, %ymm30
vpxorq %ymm8, %ymm30, %ymm13
vmovdqa64 %ymm31, %ymm5
vmovdqu 0x60(%rsp), %ymm14
vpternlogq $0x96, %ymm21, %ymm14, %ymm5
vpternlogq $0x96, %ymm24, %ymm2, %ymm8
vmovdqu 0x40(%rsp), %ymm4
vpternlogq $0x96, %ymm6, %ymm4, %ymm5
vprolq $0x1, %ymm5, %ymm10
vpxor %ymm0, %ymm10, %ymm11
vmovdqu 0x20(%rsp), %ymm1
vpxor %ymm1, %ymm11, %ymm6
vpternlogq $0x96, %ymm22, %ymm7, %ymm1
vpternlogq $0x96, %ymm27, %ymm26, %ymm1
vpternlogq $0x96, %ymm28, %ymm18, %ymm8
vprolq $0x1, %ymm3, %ymm0
vpxor %ymm1, %ymm0, %ymm0
vprolq $0x1, %ymm8, %ymm3
vprolq $0x1, %ymm1, %ymm1
vpxor %ymm3, %ymm5, %ymm10
vpxorq %ymm8, %ymm1, %ymm24
vpxorq %ymm27, %ymm11, %ymm1
vpxor %ymm0, %ymm14, %ymm3
vprolq $0x2c, %ymm3, %ymm26
vpxorq %ymm23, %ymm10, %ymm3
vprolq $0x2b, %ymm3, %ymm14
vpxorq %ymm2, %ymm30, %ymm2
vprolq $0x1c, %ymm2, %ymm2
vpxorq %ymm16, %ymm24, %ymm3
vpxorq %ymm22, %ymm11, %ymm5
vprolq $0x3, %ymm5, %ymm15
vmovdqa %ymm2, %ymm5
vprolq $0x14, %ymm3, %ymm3
vpternlogq $0xd2, %ymm15, %ymm3, %ymm5
vmovdqu %ymm5, 0xf0(%rsp)
vpxorq %ymm31, %ymm0, %ymm5
vprolq $0x2d, %ymm5, %ymm5
vmovdqa64 %ymm3, %ymm23
vpxor %ymm9, %ymm10, %ymm8
vprolq $0x3d, %ymm8, %ymm22
vpternlogq $0xd2, %ymm5, %ymm15, %ymm23
vpternlogq $0xd2, %ymm22, %ymm5, %ymm15
vpternlogq $0xd2, %ymm2, %ymm22, %ymm5
vmovdqu %ymm5, 0x20(%rsp)
vpxorq %ymm21, %ymm0, %ymm8
vprolq $0x1, %ymm8, %ymm9
vpxor %ymm12, %ymm10, %ymm8
vpternlogq $0xd2, %ymm3, %ymm2, %ymm22
vprolq $0x6, %ymm8, %ymm2
vprolq $0x19, %ymm13, %ymm8
vmovdqa %ymm9, %ymm12
vpternlogq $0xd2, %ymm8, %ymm2, %ymm12
vpxorq %ymm29, %ymm24, %ymm3
vprolq $0x8, %ymm3, %ymm21
vmovdqa %ymm2, %ymm3
vpternlogq $0xd2, %ymm21, %ymm8, %ymm3
vmovdqa %ymm3, %ymm5
vmovdqu %ymm3, 0xa0(%rsp)
vpxor %ymm7, %ymm11, %ymm3
vprolq $0x12, %ymm3, %ymm16
vpternlogq $0xd2, %ymm16, %ymm21, %ymm8
vpternlogq $0xd2, %ymm9, %ymm16, %ymm21
vpxorq %ymm19, %ymm24, %ymm3
vpternlogq $0xd2, %ymm2, %ymm9, %ymm16
vprolq $0x1b, %ymm3, %ymm2
vprolq $0x24, %ymm6, %ymm3
vpxor %ymm4, %ymm0, %ymm4
vprolq $0xa, %ymm4, %ymm6
vmovdqa %ymm2, %ymm7
vpxorq %ymm20, %ymm10, %ymm4
vpternlogq $0xd2, %ymm6, %ymm3, %ymm7
vmovdqa64 %ymm7, %ymm31
vmovdqu %ymm7, 0x40(%rsp)
vprolq $0xf, %ymm4, %ymm20
vmovdqa %ymm3, %ymm9
vpternlogq $0xd2, %ymm20, %ymm6, %ymm9
vpxorq %ymm28, %ymm30, %ymm4
vprolq $0x38, %ymm4, %ymm19
vpternlogq $0xd2, %ymm19, %ymm20, %ymm6
vpternlogq $0xd2, %ymm2, %ymm19, %ymm20
vpternlogq $0xd2, %ymm3, %ymm2, %ymm19
vpandnq %ymm14, %ymm26, %ymm28
vpxorq %ymm18, %ymm30, %ymm2
vprolq $0x15, %ymm2, %ymm18
vmovdqa64 %ymm26, %ymm3
vpxorq %ymm25, %ymm24, %ymm2
vpternlogq $0xd2, %ymm18, %ymm14, %ymm3
vprolq $0xe, %ymm2, %ymm27
vpternlogq $0xd2, %ymm27, %ymm18, %ymm14
vpternlogq $0xd2, %ymm1, %ymm27, %ymm18
vpternlogq $0xd2, %ymm26, %ymm1, %ymm27
vpxor 0xc0(%rsp), %ymm10, %ymm2
vpternlogq $0x96, 0x10bc8(%rip){1to4}, %ymm1, %ymm28 # 0x23350
vmovdqa64 %ymm16, %ymm4
vprolq $0x3e, %ymm2, %ymm10
vpxorq 0x110(%rsp), %ymm30, %ymm1
vprolq $0x37, %ymm1, %ymm25
vpxorq %ymm17, %ymm24, %ymm1
vprolq $0x27, %ymm1, %ymm1
vmovdqa %ymm10, %ymm2
vpternlogq $0x96, %ymm22, %ymm27, %ymm4
vpternlogq $0xd2, %ymm1, %ymm25, %ymm2
vpxor 0x130(%rsp), %ymm11, %ymm7
vprolq $0x29, %ymm7, %ymm7
vmovdqa64 %ymm25, %ymm24
vpternlogq $0xd2, %ymm7, %ymm1, %ymm24
vmovdqa %ymm9, %ymm11
vpternlogq $0x96, %ymm23, %ymm3, %ymm11
vpternlogq $0x96, %ymm24, %ymm5, %ymm11
vpxor (%rsp), %ymm0, %ymm0
vprolq $0x2, %ymm0, %ymm29
vpternlogq $0xd2, %ymm29, %ymm7, %ymm1
vpternlogq $0xd2, %ymm10, %ymm29, %ymm7
vpternlogq $0xd2, %ymm25, %ymm10, %ymm29
vpternlogq $0x96, %ymm29, %ymm19, %ymm4
vprolq $0x1, %ymm11, %ymm0
vpxorq %ymm4, %ymm0, %ymm30
vpxorq %ymm12, %ymm30, %ymm13
vmovdqu 0xf0(%rsp), %ymm5
vpternlogq $0x96, %ymm5, %ymm28, %ymm12
vmovdqa64 %ymm7, %ymm17
vpternlogq $0x96, 0x20(%rsp), %ymm18, %ymm17
vpternlogq $0x96, %ymm31, %ymm2, %ymm12
vpternlogq $0x96, %ymm21, %ymm20, %ymm17
vprolq $0x1, %ymm17, %ymm0
vpxorq %ymm0, %ymm11, %ymm31
vpxorq %ymm1, %ymm31, %ymm25
vpternlogq $0x96, %ymm15, %ymm14, %ymm1
vpternlogq $0x96, %ymm8, %ymm6, %ymm1
vprolq $0x1, %ymm1, %ymm0
vpxor %ymm0, %ymm12, %ymm10
vprolq $0x1, %ymm4, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vprolq $0x1, %ymm12, %ymm1
vpxorq %ymm17, %ymm1, %ymm1
vpxorq %ymm28, %ymm30, %ymm11
vpxorq %ymm23, %ymm10, %ymm4
vpxorq %ymm8, %ymm31, %ymm8
vprolq $0x2b, %ymm8, %ymm28
vpxorq %ymm20, %ymm0, %ymm8
vprolq $0x2c, %ymm4, %ymm17
vprolq $0x15, %ymm8, %ymm20
vpxorq %ymm18, %ymm0, %ymm8
vprolq $0x1c, %ymm8, %ymm8
vpxorq %ymm22, %ymm1, %ymm12
vprolq $0x3, %ymm13, %ymm13
vprolq $0x14, %ymm12, %ymm23
vmovdqa64 %ymm8, %ymm22
vpternlogq $0xd2, %ymm13, %ymm23, %ymm22
vpxor %ymm9, %ymm10, %ymm9
vprolq $0x2d, %ymm9, %ymm4
vmovdqa64 %ymm23, %ymm9
vpternlogq $0xd2, %ymm4, %ymm13, %ymm9
vmovdqu %ymm9, 0x80(%rsp)
vprolq $0x3d, %ymm25, %ymm18
vpternlogq $0xd2, %ymm18, %ymm4, %ymm13
vpternlogq $0xd2, %ymm8, %ymm18, %ymm4
vmovdqu %ymm4, (%rsp)
vpxor %ymm3, %ymm10, %ymm3
vprolq $0x1, %ymm3, %ymm3
vpxorq %ymm15, %ymm31, %ymm9
vprolq $0x6, %ymm9, %ymm15
vpternlogq $0xd2, %ymm23, %ymm8, %ymm18
vpxorq %ymm21, %ymm0, %ymm8
vprolq $0x19, %ymm8, %ymm26
vmovdqa64 %ymm3, %ymm23
vpternlogq $0xd2, %ymm26, %ymm15, %ymm23
vpxorq %ymm19, %ymm1, %ymm8
vprolq $0x8, %ymm8, %ymm9
vmovdqa %ymm15, %ymm4
vpternlogq $0xd2, %ymm9, %ymm26, %ymm4
vmovdqu %ymm4, 0x60(%rsp)
vpxorq %ymm2, %ymm30, %ymm2
vprolq $0x12, %ymm2, %ymm12
vpternlogq $0xd2, %ymm12, %ymm9, %ymm26
vpternlogq $0xd2, %ymm3, %ymm12, %ymm9
vpternlogq $0xd2, %ymm15, %ymm3, %ymm12
vmovdqa64 %ymm28, %ymm4
vpandnq %ymm28, %ymm17, %ymm28
vmovdqa64 %ymm17, %ymm25
vpternlogq $0xd2, %ymm20, %ymm4, %ymm25
vpxorq %ymm29, %ymm1, %ymm3
vprolq $0xe, %ymm3, %ymm19
vpternlogq $0xd2, %ymm19, %ymm20, %ymm4
vmovdqu %ymm4, 0xc0(%rsp)
vpxorq %ymm27, %ymm1, %ymm3
vpternlogq $0xd2, %ymm11, %ymm19, %ymm20
vprolq $0x1b, %ymm3, %ymm3
vpxorq %ymm5, %ymm30, %ymm8
vprolq $0x24, %ymm8, %ymm8
vpxor 0xa0(%rsp), %ymm10, %ymm15
vprolq $0xa, %ymm15, %ymm21
vpternlogq $0xd2, %ymm17, %ymm11, %ymm19
vmovdqa %ymm3, %ymm2
vpternlogq $0xd2, %ymm21, %ymm8, %ymm2
vmovdqa %ymm2, %ymm15
vmovdqu %ymm2, 0xa0(%rsp)
vpxorq %ymm6, %ymm31, %ymm6
vprolq $0xf, %ymm6, %ymm17
vpxorq %ymm14, %ymm31, %ymm6
vmovdqa64 %ymm8, %ymm31
vpxor %ymm7, %ymm0, %ymm7
vpternlogq $0xd2, %ymm17, %ymm21, %ymm31
vprolq $0x38, %ymm7, %ymm29
vpternlogq $0xd2, %ymm29, %ymm17, %ymm21
vpternlogq $0xd2, %ymm3, %ymm29, %ymm17
vprolq $0x3e, %ymm6, %ymm14
vpxor 0x20(%rsp), %ymm0, %ymm0
vpternlogq $0xd2, %ymm8, %ymm3, %ymm29
vprolq $0x37, %ymm0, %ymm0
vpxorq %ymm16, %ymm1, %ymm1
vprolq $0x27, %ymm1, %ymm8
vmovdqa %ymm14, %ymm7
vpternlogq $0xd2, %ymm8, %ymm0, %ymm7
vpxorq 0x40(%rsp), %ymm30, %ymm1
vpternlogq $0x96, 0x108a1(%rip){1to4}, %ymm11, %ymm28 # 0x23358
vprolq $0x29, %ymm1, %ymm27
vmovdqa %ymm0, %ymm1
vpternlogq $0xd2, %ymm27, %ymm8, %ymm1
vmovdqa %ymm1, %ymm2
vmovdqu %ymm1, 0x40(%rsp)
vpxorq %ymm24, %ymm10, %ymm1
vprolq $0x2, %ymm1, %ymm6
vpternlogq $0xd2, %ymm6, %ymm27, %ymm8
vmovdqa %ymm8, %ymm3
vpternlogq $0x96, %ymm4, %ymm13, %ymm3
vpternlogq $0x96, %ymm26, %ymm21, %ymm3
vpternlogq $0xd2, %ymm14, %ymm6, %ymm27
vpternlogq $0xd2, %ymm0, %ymm14, %ymm6
vmovdqa64 %ymm19, %ymm0
vpternlogq $0x96, %ymm18, %ymm6, %ymm0
vpternlogq $0x96, %ymm12, %ymm29, %ymm0
vprolq $0x1, %ymm0, %ymm1
vpxorq %ymm3, %ymm1, %ymm24
vpxorq %ymm9, %ymm24, %ymm10
vmovdqa64 %ymm31, %ymm1
vmovdqu 0x80(%rsp), %ymm4
vpternlogq $0x96, %ymm25, %ymm4, %ymm1
vmovdqu 0x60(%rsp), %ymm5
vpternlogq $0x96, %ymm2, %ymm5, %ymm1
vprolq $0x1, %ymm1, %ymm11
vpternlogq $0x96, (%rsp), %ymm20, %ymm9
vpxor %ymm0, %ymm11, %ymm11
vpxorq %ymm22, %ymm11, %ymm2
vpternlogq $0x96, %ymm23, %ymm7, %ymm22
vpternlogq $0x96, %ymm28, %ymm15, %ymm22
vprolq $0x1, %ymm3, %ymm0
vpternlogq $0x96, %ymm27, %ymm17, %ymm9
vpxorq %ymm22, %ymm0, %ymm30
vprolq $0x1, %ymm9, %ymm0
vpxorq %ymm0, %ymm1, %ymm16
vprolq $0x1, %ymm22, %ymm1
vpxorq %ymm28, %ymm11, %ymm0
vpxor %ymm1, %ymm9, %ymm1
vpxorq %ymm4, %ymm30, %ymm3
vprolq $0x2c, %ymm3, %ymm28
vpxorq %ymm26, %ymm16, %ymm3
vpxorq %ymm20, %ymm24, %ymm4
vprolq $0x1c, %ymm4, %ymm9
vprolq $0x2b, %ymm3, %ymm15
vpxorq %ymm18, %ymm1, %ymm4
vprolq $0x14, %ymm4, %ymm14
vpxorq %ymm23, %ymm11, %ymm4
vprolq $0x3, %ymm4, %ymm23
vmovdqa %ymm9, %ymm3
vpxorq %ymm31, %ymm30, %ymm4
vpternlogq $0xd2, %ymm23, %ymm14, %ymm3
vmovdqu %ymm3, 0x80(%rsp)
vprolq $0x2d, %ymm4, %ymm3
vmovdqa64 %ymm14, %ymm22
vpternlogq $0xd2, %ymm3, %ymm23, %ymm22
vpxorq %ymm8, %ymm16, %ymm8
vprolq $0x3d, %ymm8, %ymm18
vpternlogq $0xd2, %ymm18, %ymm3, %ymm23
vpternlogq $0xd2, %ymm9, %ymm18, %ymm3
vmovdqu %ymm3, 0x20(%rsp)
vpxorq %ymm25, %ymm30, %ymm8
vprolq $0x1, %ymm8, %ymm25
vpxorq %ymm13, %ymm16, %ymm8
vprolq $0x6, %ymm8, %ymm26
vprolq $0x19, %ymm10, %ymm8
vpternlogq $0xd2, %ymm14, %ymm9, %ymm18
vmovdqa64 %ymm25, %ymm10
vpternlogq $0xd2, %ymm8, %ymm26, %ymm10
vpxorq %ymm29, %ymm1, %ymm9
vprolq $0x8, %ymm9, %ymm13
vmovdqa64 %ymm26, %ymm31
vpxor %ymm7, %ymm11, %ymm7
vprolq $0x12, %ymm7, %ymm14
vpternlogq $0xd2, %ymm13, %ymm8, %ymm31
vpternlogq $0xd2, %ymm14, %ymm13, %ymm8
vpternlogq $0xd2, %ymm25, %ymm14, %ymm13
vpxorq %ymm19, %ymm1, %ymm7
vprolq $0x1b, %ymm7, %ymm7
vprolq $0x24, %ymm2, %ymm2
vpternlogq $0xd2, %ymm26, %ymm25, %ymm14
vpxorq %ymm5, %ymm30, %ymm9
vprolq $0xa, %ymm9, %ymm25
vmovdqa %ymm7, %ymm3
vpternlogq $0xd2, %ymm25, %ymm2, %ymm3
vmovdqu %ymm3, 0x60(%rsp)
vpxorq %ymm21, %ymm16, %ymm9
vprolq $0xf, %ymm9, %ymm19
vmovdqa %ymm2, %ymm9
vpternlogq $0xd2, %ymm19, %ymm25, %ymm9
vpxorq %ymm27, %ymm24, %ymm21
vprolq $0x38, %ymm21, %ymm26
vpternlogq $0xd2, %ymm26, %ymm19, %ymm25
vpternlogq $0xd2, %ymm7, %ymm26, %ymm19
vpternlogq $0xd2, %ymm2, %ymm7, %ymm26
vpandnq %ymm15, %ymm28, %ymm27
vpxorq %ymm17, %ymm24, %ymm2
vprolq $0x15, %ymm2, %ymm17
vmovdqa64 %ymm28, %ymm21
vpternlogq $0xd2, %ymm17, %ymm15, %ymm21
vpxor %ymm6, %ymm1, %ymm2
vprolq $0xe, %ymm2, %ymm7
vpternlogq $0xd2, %ymm7, %ymm17, %ymm15
vpternlogq $0xd2, %ymm0, %ymm7, %ymm17
vpternlogq $0xd2, %ymm28, %ymm0, %ymm7
vpxorq 0xc0(%rsp), %ymm16, %ymm2
vprolq $0x3e, %ymm2, %ymm16
vpxorq (%rsp), %ymm24, %ymm2
vpternlogq $0x96, 0x105ea(%rip){1to4}, %ymm0, %ymm27 # 0x23360
vmovdqa %ymm14, %ymm0
vprolq $0x37, %ymm2, %ymm20
vpxor %ymm1, %ymm12, %ymm1
vprolq $0x27, %ymm1, %ymm1
vmovdqa64 %ymm16, %ymm2
vpternlogq $0xd2, %ymm1, %ymm20, %ymm2
vpxor 0xa0(%rsp), %ymm11, %ymm6
vpternlogq $0x96, %ymm18, %ymm7, %ymm0
vprolq $0x29, %ymm6, %ymm28
vmovdqa64 %ymm20, %ymm6
vpternlogq $0xd2, %ymm28, %ymm1, %ymm6
vmovdqa %ymm9, %ymm11
vpternlogq $0x96, %ymm22, %ymm21, %ymm11
vpxorq 0x40(%rsp), %ymm30, %ymm5
vprolq $0x2, %ymm5, %ymm12
vpternlogq $0x96, %ymm6, %ymm31, %ymm11
vpternlogq $0xd2, %ymm12, %ymm28, %ymm1
vpternlogq $0xd2, %ymm16, %ymm12, %ymm28
vpternlogq $0xd2, %ymm20, %ymm16, %ymm12
vpternlogq $0x96, %ymm12, %ymm26, %ymm0
vprolq $0x1, %ymm11, %ymm5
vpxorq %ymm0, %ymm5, %ymm30
vpxorq %ymm10, %ymm30, %ymm5
vmovdqa64 %ymm10, %ymm16
vmovdqu 0x80(%rsp), %ymm4
vpternlogq $0x96, %ymm4, %ymm27, %ymm16
vmovdqa64 %ymm28, %ymm20
vpternlogq $0x96, 0x20(%rsp), %ymm17, %ymm20
vpternlogq $0x96, %ymm13, %ymm19, %ymm20
vprolq $0x1, %ymm20, %ymm10
vpternlogq $0x96, %ymm3, %ymm2, %ymm16
vpxorq %ymm10, %ymm11, %ymm29
vpxorq %ymm1, %ymm29, %ymm24
vpternlogq $0x96, %ymm23, %ymm15, %ymm1
vpternlogq $0x96, %ymm8, %ymm25, %ymm1
vprolq $0x1, %ymm1, %ymm10
vpxorq %ymm16, %ymm10, %ymm10
vprolq $0x1, %ymm0, %ymm0
vpxor %ymm0, %ymm1, %ymm0
vprolq $0x1, %ymm16, %ymm1
vpxorq %ymm20, %ymm1, %ymm1
vpxorq %ymm27, %ymm30, %ymm11
vpxorq %ymm22, %ymm10, %ymm16
vpxorq %ymm8, %ymm29, %ymm8
vprolq $0x2b, %ymm8, %ymm3
vpxorq %ymm17, %ymm0, %ymm8
vprolq $0x1c, %ymm8, %ymm8
vpxorq %ymm18, %ymm1, %ymm17
vprolq $0x2c, %ymm16, %ymm20
vprolq $0x14, %ymm17, %ymm27
vprolq $0x3, %ymm5, %ymm5
vmovdqa64 %ymm8, %ymm22
vpternlogq $0xd2, %ymm5, %ymm27, %ymm22
vpxor %ymm9, %ymm10, %ymm9
vprolq $0x2d, %ymm9, %ymm9
vmovdqa64 %ymm27, %ymm18
vpternlogq $0xd2, %ymm9, %ymm5, %ymm18
vprolq $0x3d, %ymm24, %ymm17
vpternlogq $0xd2, %ymm17, %ymm9, %ymm5
vpternlogq $0xd2, %ymm8, %ymm17, %ymm9
vmovdqu %ymm9, (%rsp)
vpxorq %ymm21, %ymm10, %ymm9
vprolq $0x1, %ymm9, %ymm9
vpternlogq $0xd2, %ymm27, %ymm8, %ymm17
vpxorq %ymm23, %ymm29, %ymm8
vprolq $0x6, %ymm8, %ymm24
vpxor %ymm0, %ymm13, %ymm8
vprolq $0x19, %ymm8, %ymm23
vmovdqa64 %ymm9, %ymm21
vpxorq %ymm26, %ymm1, %ymm8
vpternlogq $0xd2, %ymm23, %ymm24, %ymm21
vprolq $0x8, %ymm8, %ymm8
vmovdqa64 %ymm24, %ymm13
vpternlogq $0xd2, %ymm8, %ymm23, %ymm13
vmovdqu %ymm13, 0xa0(%rsp)
vpxorq %ymm2, %ymm30, %ymm2
vprolq $0x12, %ymm2, %ymm16
vpternlogq $0xd2, %ymm16, %ymm8, %ymm23
vpternlogq $0xd2, %ymm9, %ymm16, %ymm8
vpternlogq $0xd2, %ymm24, %ymm9, %ymm16
vpandnq %ymm3, %ymm20, %ymm27
vpxorq %ymm19, %ymm0, %ymm9
vprolq $0x15, %ymm9, %ymm26
vmovdqa64 %ymm20, %ymm24
vpxor %ymm1, %ymm12, %ymm9
vpternlogq $0xd2, %ymm26, %ymm3, %ymm24
vprolq $0xe, %ymm9, %ymm2
vpternlogq $0xd2, %ymm2, %ymm26, %ymm3
vmovdqa64 %ymm3, %ymm19
vmovdqu %ymm3, 0xc0(%rsp)
vpternlogq $0xd2, %ymm11, %ymm2, %ymm26
vpxor %ymm7, %ymm1, %ymm7
vprolq $0x1b, %ymm7, %ymm7
vpternlogq $0xd2, %ymm20, %ymm11, %ymm2
vpxorq %ymm4, %ymm30, %ymm9
vprolq $0x24, %ymm9, %ymm9
vpxorq %ymm31, %ymm10, %ymm12
vprolq $0xa, %ymm12, %ymm20
vmovdqa %ymm7, %ymm3
vpxorq %ymm25, %ymm29, %ymm12
vpternlogq $0xd2, %ymm20, %ymm9, %ymm3
vmovdqu %ymm3, 0x80(%rsp)
vprolq $0xf, %ymm12, %ymm31
vpxorq %ymm15, %ymm29, %ymm12
vmovdqa %ymm9, %ymm3
vpternlogq $0xd2, %ymm31, %ymm20, %ymm3
vpxorq %ymm28, %ymm0, %ymm15
vprolq $0x38, %ymm15, %ymm29
vpternlogq $0xd2, %ymm29, %ymm31, %ymm20
vpternlogq $0xd2, %ymm7, %ymm29, %ymm31
vprolq $0x3e, %ymm12, %ymm12
vpxor 0x20(%rsp), %ymm0, %ymm0
vprolq $0x37, %ymm0, %ymm0
vpxor %ymm1, %ymm14, %ymm1
vpternlogq $0xd2, %ymm9, %ymm7, %ymm29
vprolq $0x27, %ymm1, %ymm4
vmovdqa %ymm12, %ymm7
vpternlogq $0xd2, %ymm4, %ymm0, %ymm7
vpxorq 0x60(%rsp), %ymm30, %ymm1
vprolq $0x29, %ymm1, %ymm28
vmovdqa %ymm0, %ymm1
vpternlogq $0xd2, %ymm28, %ymm4, %ymm1
vmovdqa %ymm1, %ymm9
vmovdqu %ymm1, 0x40(%rsp)
vpternlogq $0x96, 0x102c1(%rip){1to4}, %ymm11, %ymm27 # 0x23368
vpxor %ymm6, %ymm10, %ymm1
vprolq $0x2, %ymm1, %ymm25
vpternlogq $0xd2, %ymm25, %ymm28, %ymm4
vmovdqa %ymm4, %ymm6
vpternlogq $0x96, %ymm19, %ymm5, %ymm6
vpternlogq $0xd2, %ymm12, %ymm25, %ymm28
vpternlogq $0x96, %ymm23, %ymm20, %ymm6
vpternlogq $0xd2, %ymm0, %ymm12, %ymm25
vmovdqa %ymm2, %ymm0
vpternlogq $0x96, %ymm17, %ymm25, %ymm0
vpternlogq $0x96, %ymm16, %ymm29, %ymm0
vprolq $0x1, %ymm0, %ymm1
vpxorq %ymm6, %ymm1, %ymm30
vpxorq %ymm8, %ymm30, %ymm1
vmovdqu %ymm1, 0xf0(%rsp)
vpternlogq $0x96, (%rsp), %ymm26, %ymm8
vmovdqa %ymm3, %ymm1
vpternlogq $0x96, %ymm24, %ymm18, %ymm1
vpternlogq $0x96, %ymm9, %ymm13, %ymm1
vprolq $0x1, %ymm1, %ymm9
vpxor %ymm0, %ymm9, %ymm9
vpxorq %ymm22, %ymm9, %ymm13
vpternlogq $0x96, %ymm21, %ymm7, %ymm22
vmovdqu 0x80(%rsp), %ymm12
vpternlogq $0x96, %ymm27, %ymm12, %ymm22
vpternlogq $0x96, %ymm28, %ymm31, %ymm8
vprolq $0x1, %ymm6, %ymm0
vpxorq %ymm22, %ymm0, %ymm0
vprolq $0x1, %ymm8, %ymm6
vpxor %ymm6, %ymm1, %ymm11
vprolq $0x1, %ymm22, %ymm1
vpxor %ymm1, %ymm8, %ymm1
vpxorq %ymm27, %ymm9, %ymm10
vpxorq %ymm18, %ymm0, %ymm6
vprolq $0x2c, %ymm6, %ymm19
vpxorq %ymm23, %ymm11, %ymm6
vpxorq %ymm31, %ymm30, %ymm8
vprolq $0x15, %ymm8, %ymm27
vpxorq %ymm26, %ymm30, %ymm8
vprolq $0x1c, %ymm8, %ymm8
vprolq $0x2b, %ymm6, %ymm14
vpxorq %ymm17, %ymm1, %ymm6
vprolq $0x14, %ymm6, %ymm6
vpxorq %ymm21, %ymm9, %ymm15
vprolq $0x3, %ymm15, %ymm21
vmovdqa %ymm8, %ymm15
vpxor %ymm3, %ymm0, %ymm3
vpternlogq $0xd2, %ymm21, %ymm6, %ymm15
vmovdqu %ymm15, 0x60(%rsp)
vprolq $0x2d, %ymm3, %ymm15
vmovdqa %ymm6, %ymm3
vpternlogq $0xd2, %ymm15, %ymm21, %ymm3
vmovdqa64 %ymm3, %ymm17
vmovdqu %ymm3, 0x20(%rsp)
vpxor %ymm4, %ymm11, %ymm3
vprolq $0x3d, %ymm3, %ymm26
vpternlogq $0xd2, %ymm26, %ymm15, %ymm21
vpternlogq $0xd2, %ymm8, %ymm26, %ymm15
vpxorq %ymm24, %ymm0, %ymm3
vprolq $0x1, %ymm3, %ymm3
vpxor %ymm5, %ymm11, %ymm4
vprolq $0x6, %ymm4, %ymm5
vprolq $0x19, 0xf0(%rsp), %ymm4
vpternlogq $0xd2, %ymm6, %ymm8, %ymm26
vmovdqa64 %ymm3, %ymm31
vpternlogq $0xd2, %ymm4, %ymm5, %ymm31
vpxorq %ymm29, %ymm1, %ymm6
vprolq $0x8, %ymm6, %ymm24
vmovdqa64 %ymm5, %ymm18
vpxor %ymm7, %ymm9, %ymm6
vprolq $0x12, %ymm6, %ymm23
vpternlogq $0xd2, %ymm24, %ymm4, %ymm18
vpternlogq $0xd2, %ymm23, %ymm24, %ymm4
vpternlogq $0xd2, %ymm3, %ymm23, %ymm24
vpxor %ymm2, %ymm1, %ymm2
vprolq $0x1b, %ymm2, %ymm2
vprolq $0x24, %ymm13, %ymm7
vpternlogq $0xd2, %ymm5, %ymm3, %ymm23
vpxor 0xa0(%rsp), %ymm0, %ymm3
vprolq $0xa, %ymm3, %ymm22
vmovdqa %ymm2, %ymm6
vpternlogq $0xd2, %ymm22, %ymm7, %ymm6
vpxorq %ymm20, %ymm11, %ymm3
vprolq $0xf, %ymm3, %ymm5
vmovdqa64 %ymm7, %ymm20
vpternlogq $0xd2, %ymm5, %ymm22, %ymm20
vpxorq %ymm28, %ymm30, %ymm3
vprolq $0x38, %ymm3, %ymm8
vpternlogq $0xd2, %ymm8, %ymm5, %ymm22
vpternlogq $0xd2, %ymm2, %ymm8, %ymm5
vpternlogq $0xd2, %ymm7, %ymm2, %ymm8
vmovdqa64 %ymm19, %ymm3
vpandnq %ymm14, %ymm19, %ymm13
vpternlogq $0xd2, %ymm27, %ymm14, %ymm3
vpxorq %ymm25, %ymm1, %ymm2
vprolq $0xe, %ymm2, %ymm7
vpternlogq $0xd2, %ymm7, %ymm27, %ymm14
vpternlogq $0xd2, %ymm10, %ymm7, %ymm27
vpternlogq $0xd2, %ymm19, %ymm10, %ymm7
vpxor 0xc0(%rsp), %ymm11, %ymm2
vprolq $0x3e, %ymm2, %ymm2
vpxorq (%rsp), %ymm30, %ymm11
vprolq $0x37, %ymm11, %ymm11
vpxorq %ymm16, %ymm1, %ymm1
vpternlogq $0x96, 0x1001d(%rip){1to4}, %ymm10, %ymm13 # 0x23370
vmovdqa64 %ymm13, %ymm28
vmovdqu %ymm13, (%rsp)
vmovdqa64 %ymm23, %ymm16
vprolq $0x27, %ymm1, %ymm25
vmovdqa %ymm2, %ymm10
vpternlogq $0xd2, %ymm25, %ymm11, %ymm10
vpxor %ymm12, %ymm9, %ymm1
vprolq $0x29, %ymm1, %ymm9
vmovdqa %ymm11, %ymm1
vpternlogq $0xd2, %ymm9, %ymm25, %ymm1
vpternlogq $0x96, %ymm26, %ymm7, %ymm16
vmovdqa64 %ymm20, %ymm12
vpternlogq $0x96, %ymm17, %ymm3, %ymm12
vpxor 0x40(%rsp), %ymm0, %ymm0
vprolq $0x2, %ymm0, %ymm0
vpternlogq $0xd2, %ymm0, %ymm9, %ymm25
vpternlogq $0xd2, %ymm2, %ymm0, %ymm9
vpternlogq $0x96, %ymm1, %ymm18, %ymm12
vpternlogq $0xd2, %ymm11, %ymm2, %ymm0
vpternlogq $0x96, %ymm0, %ymm8, %ymm16
vprolq $0x1, %ymm12, %ymm2
vpxorq %ymm16, %ymm2, %ymm2
vpxorq %ymm31, %ymm2, %ymm13
vmovdqa64 %ymm9, %ymm19
vmovdqu64 0x60(%rsp), %ymm29
vpternlogq $0x96, %ymm29, %ymm28, %ymm31
vpternlogq $0x96, %ymm15, %ymm27, %ymm19
vpternlogq $0x96, %ymm24, %ymm5, %ymm19
vprolq $0x1, %ymm19, %ymm11
vpxor %ymm11, %ymm12, %ymm11
vpxorq %ymm25, %ymm11, %ymm28
vpternlogq $0x96, %ymm6, %ymm10, %ymm31
vpternlogq $0x96, %ymm21, %ymm14, %ymm25
vpternlogq $0x96, %ymm4, %ymm22, %ymm25
vprolq $0x1, %ymm25, %ymm12
vprolq $0x1, %ymm16, %ymm16
vpxorq %ymm16, %ymm25, %ymm25
vpxorq %ymm31, %ymm12, %ymm30
vprolq $0x1, %ymm31, %ymm12
vpxorq %ymm19, %ymm12, %ymm12
vpxorq %ymm27, %ymm25, %ymm16
vprolq $0x1c, %ymm16, %ymm16
vpxorq %ymm26, %ymm12, %ymm19
vprolq $0x14, %ymm19, %ymm19
vprolq $0x3, %ymm13, %ymm26
vmovdqa64 %ymm16, %ymm17
vpternlogq $0xd2, %ymm26, %ymm19, %ymm17
vpxorq %ymm20, %ymm30, %ymm13
vprolq $0x2d, %ymm13, %ymm31
vmovdqa64 %ymm19, %ymm27
vprolq $0x3d, %ymm28, %ymm20
vpternlogq $0xd2, %ymm31, %ymm26, %ymm27
vpternlogq $0xd2, %ymm20, %ymm31, %ymm26
vpternlogq $0xd2, %ymm16, %ymm20, %ymm31
vpxorq %ymm3, %ymm30, %ymm3
vprolq $0x1, %ymm3, %ymm3
vpxorq %ymm21, %ymm11, %ymm13
vpternlogq $0xd2, %ymm19, %ymm16, %ymm20
vprolq $0x6, %ymm13, %ymm13
vpxorq %ymm24, %ymm25, %ymm16
vprolq $0x19, %ymm16, %ymm21
vmovdqa64 %ymm3, %ymm24
vpxor %ymm8, %ymm12, %ymm8
vprolq $0x8, %ymm8, %ymm19
vmovdqa %ymm13, %ymm8
vpternlogq $0xd2, %ymm21, %ymm13, %ymm24
vpternlogq $0xd2, %ymm19, %ymm21, %ymm8
vpxor %ymm2, %ymm10, %ymm10
vprolq $0x12, %ymm10, %ymm16
vpternlogq $0xd2, %ymm16, %ymm19, %ymm21
vpxor %ymm7, %ymm12, %ymm7
vpternlogq $0xd2, %ymm3, %ymm16, %ymm19
vprolq $0x1b, %ymm7, %ymm28
vpxorq %ymm29, %ymm2, %ymm7
vprolq $0x24, %ymm7, %ymm10
vpxorq %ymm18, %ymm30, %ymm7
vprolq $0xa, %ymm7, %ymm18
vpternlogq $0xd2, %ymm13, %ymm3, %ymm16
vmovdqa64 %ymm28, %ymm7
vpternlogq $0xd2, %ymm18, %ymm10, %ymm7
vpxorq %ymm22, %ymm11, %ymm3
vprolq $0xf, %ymm3, %ymm29
vmovdqa64 %ymm10, %ymm22
vpxorq %ymm9, %ymm25, %ymm3
vprolq $0x38, %ymm3, %ymm13
vpternlogq $0xd2, %ymm29, %ymm18, %ymm22
vpternlogq $0xd2, %ymm13, %ymm29, %ymm18
vpternlogq $0xd2, %ymm28, %ymm13, %ymm29
vpxor %ymm14, %ymm11, %ymm3
vprolq $0x3e, %ymm3, %ymm3
vpxorq %ymm15, %ymm25, %ymm9
vmovdqa %ymm13, %ymm15
vpternlogq $0xd2, %ymm10, %ymm28, %ymm15
vprolq $0x37, %ymm9, %ymm9
vpxorq %ymm23, %ymm12, %ymm10
vprolq $0x27, %ymm10, %ymm23
vmovdqa64 %ymm3, %ymm28
vpxor %ymm6, %ymm2, %ymm6
vprolq $0x29, %ymm6, %ymm13
vmovdqa %ymm9, %ymm10
vpternlogq $0xd2, %ymm23, %ymm9, %ymm28
vpternlogq $0xd2, %ymm13, %ymm23, %ymm10
vpxorq %ymm1, %ymm30, %ymm1
vprolq $0x2, %ymm1, %ymm14
vpternlogq $0xd2, %ymm14, %ymm13, %ymm23
vpternlogq $0xd2, %ymm3, %ymm14, %ymm13
vpternlogq $0xd2, %ymm9, %ymm3, %ymm14
vpxor (%rsp), %ymm2, %ymm6
vpxorq 0x20(%rsp), %ymm30, %ymm1
vpxor %ymm4, %ymm11, %ymm2
vprolq $0x2b, %ymm2, %ymm2
vpxorq %ymm5, %ymm25, %ymm3
vprolq $0x2c, %ymm1, %ymm5
vpandn %ymm2, %ymm5, %ymm4
vprolq $0x15, %ymm3, %ymm1
vpxor %ymm0, %ymm12, %ymm0
vmovdqa %ymm5, %ymm3
vpternlogq $0xd2, %ymm1, %ymm2, %ymm3
vprolq $0xe, %ymm0, %ymm0
vpternlogq $0xd2, %ymm0, %ymm1, %ymm2
vpternlogq $0xd2, %ymm6, %ymm0, %ymm1
vpternlogq $0xd2, %ymm5, %ymm6, %ymm0
vpternlogq $0x96, 0xfd0e(%rip){1to4}, %ymm6, %ymm4 # 0x23378
subq %r14, %r13
addq %rsi, %r15
cmpq %r10, %r13
jae 0x10ec5
vmovdqa %ymm4, (%rdi)
vmovdqa %ymm3, 0x20(%rdi)
vmovdqa %ymm2, 0x40(%rdi)
vmovdqa %ymm1, 0x60(%rdi)
vmovdqa %ymm0, 0x80(%rdi)
vmovdqa64 %ymm17, 0xa0(%rdi)
vmovdqa64 %ymm27, 0xc0(%rdi)
vmovdqa64 %ymm26, 0xe0(%rdi)
vmovdqa64 %ymm31, 0x100(%rdi)
vmovdqa64 %ymm20, 0x120(%rdi)
vmovdqa64 %ymm24, 0x140(%rdi)
vmovdqa %ymm8, 0x160(%rdi)
vmovdqa64 %ymm21, 0x180(%rdi)
vmovdqa64 %ymm19, 0x1a0(%rdi)
vmovdqa64 %ymm16, 0x1c0(%rdi)
vmovdqa %ymm7, 0x1e0(%rdi)
vmovdqa64 %ymm22, 0x200(%rdi)
vmovdqa64 %ymm18, 0x220(%rdi)
vmovdqa64 %ymm29, 0x240(%rdi)
vmovdqa %ymm15, 0x260(%rdi)
vmovdqa64 %ymm28, 0x280(%rdi)
vmovdqa %ymm10, 0x2a0(%rdi)
vmovdqa64 %ymm23, 0x2c0(%rdi)
vmovdqa %ymm13, 0x2e0(%rdi)
vmovdqa %ymm14, 0x300(%rdi)
jmp 0x13772
movl %esi, %r12d
leal (%rbx,%rbx,2), %edx
addl %esi, %edx
shll $0x3, %edx
cmpq %r13, %rdx
ja 0x13772
movq %rdi, %rbp
shll $0x3, %r14d
movq 0xe8(%rsp), %r15
movq %rdx, (%rsp)
movq %rbp, %rdi
movq %r15, %rsi
movl %r12d, %edx
movl %ebx, %ecx
callq 0x5100
movq %rbp, %rdi
callq 0x5170
movq (%rsp), %rdx
addq %r14, %r15
subq %r14, %r13
cmpq %rdx, %r13
jae 0x1374b
subq 0xe8(%rsp), %r15
movq %r15, %rax
addq $0x158, %rsp            # imm = 0x158
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
vzeroupper
retq
nop