首页
社区
课程
招聘
[原创]buuctf-re
发表于: 2025-7-6 19:36 3106

[原创]buuctf-re

2025-7-6 19:36
3106

打开是C++而且有点乱,所以找关键步骤有一个加密进去是不能反编译的,有花指令,
图片描述

这里有重复的部分把下面的NOP掉,重新定义函数'p'

图片描述

之后分析逻辑,

其中的sub_401005函数一直跟进主要逻辑是:

可知是异或操作,之后猜测是(a1 - 748)与(a1 - 760)异或之后得到的(a1 - 748)与String1做比较,让后下面还有一个sub_401005函数操作,我们可以得到unk_423030密文但是没有密钥,猜测是我们得到的String1即异或之后的(a1 - 748),可是在12行中有

跟进是hash验证

我们把得到的String1找网站解决,之后写代码即可

图片描述

代码:

有一个关键函数sub_83A,之后是显示太大不可以直接查看源码,所以调节一下设置即可

去ida文件夹里面的hexrays.cfg,把max_function修改大一些(1024),

图片描述

之后查看源码

可知是一群异或,并且每一位可能与上一位有关系,我们可以一个一个查找,写代码即可

查看主逻辑

其中的case 10 代码

我们知道需要一直循环找到flag,使用符号执行:

符号执行 (Symbolic Execution)是一种程序分析技术。其可以通过分析程序来得到让特定代码区域执行的输入。使用符号执行分析一个程序时,该程序会使用符号值作为输入,而非一般执行程序时使用的具体值。在达到目标代码时,分析器可以得到相应的路径约束,然后通过约束求解器来得到可以触发目标代码的具体值。[1] 符号模拟技术(symbolic simulation)则把类似的思想用于硬件分析。符号计算(Symbolic computation)则用于数学表达式分析。我理解为更厉害的爆破。

基础语法:

脚本例子:

脚本解密:

得到flag{757515121f3d478}

进入ida查看主逻辑

前面是正常的输入账号密码代码,并判断是不是数字和字母,之后我们需要break出while死循环,需要满足sub_401830函数返回1,跟进查看

需要满足v13 == 0xAB94也就是v13 == 43924,查看v13可知与sub_401470函数有关

其中的v16与sub_401710(v16, a1, v5++);函数和 v16[v5] = byte_416050[(v7 + v12)] ^ v15[v4 - 1];异或操作有关,

首先看sub_401470函数

每一次的if语句都和字母的判断有关也就是猜测需要满足所有的else语句,可以验证一下

因为结果是,我们计算一下看看是否相等,其中的

这行代码的作用是检查当前进程的默认堆的某个偏移位置的值是否不等于 2

这种对 PEB 或堆的直接访问和判断可能是某种反调试机制,我们可以都试试来找到a3==43924的情况

所以a2也就是v16是dbappsec

之后查看sub_401710函数的实参,v16是密文,a1是账号,v5是计数器且该函数是在 while ( v5 < 8 )循环中进行的所以v5最大为7,而我们账号welcomebeijing长度是14一直比v5大,所以

v4 = strlen(a2);就是账号的长度,所以a3 <= v4一直成立,其中的第一个if语句

是检查窗口是否已配置,我也不知道他配置没配置,所以可能异或也可能不异或,存疑,猜测和打开方式有关

所以关键之处就是

直接return不进行操作,或者是

可知这是账号的前八位和v16的前八位异或得到v16

我们要得到的是v15

分析逻辑

图片描述

这里是把密码转成16进制数,之后储存在v15中进行加密计算

v16[v5] = byte_416050[(v7 + v12)] ^ v15[v4 - 1];

这里我们知道了v16,其中的byte_416050可以动态调试查看其中我们需要的8位

其中要把动态调试监测的代码nop掉,就是上面分析的和动态调试有关的代码NtCurrentPeb这种的都nop掉

图片描述

得到的ecx的值是0x2A,0xD7,0x92,0xE9,0x53,0xE2,0xC4,0xCD

写代码解决

最后都试试是可知是flag{d2be2981b84f2a905669995873d6a36c}

// positive sp value has been detected, the output may be wrong!
int __userpurge sub_40191F@<eax>(int a1@<ebp>, int a2, int a3, int a4, int a5)
{
  DWORD v5; // eax
  int v6; // edi
  int v7; // eax
  int v8; // eax
  const char *v10; // [esp-458h] [ebp-458h]
  CHAR *v11; // [esp-454h] [ebp-454h]
 
  v5 = strlen(v10);
  sub_40101E(String1, v5, v11);
  strcpy((char *)(a1 - 748), "0kk`d1a`55k222k2a776jbfgd`06cjjb");
  memset((void *)(a1 - 715), 0, 0xDCu);
  v6 = a1 - 715 + 220;
  *(_WORD *)v6 = 0;
  *(_BYTE *)(v6 + 2) = 0;
  strcpy((char *)(a1 - 760), "SS");
  *(_DWORD *)(a1 - 757) = 0;
  *(_WORD *)(a1 - 753) = 0;
  *(_BYTE *)(a1 - 751) = 0;
  v7 = strlen((const char *)(a1 - 748));
  sub_401005((LPCSTR)(a1 - 760), a1 - 748, v7);
  if ( _strcmpi((const char *)String1, (const char *)(a1 - 748)) )
  {
    SetWindowTextA(*(HWND *)(a1 + 8), "flag{}");
    MessageBoxA(*(HWND *)(a1 + 8), "Are you kidding me?", "^_^", 0);
    ExitProcess(0);
  }
  memcpy((void *)(a1 - 1016), &unk_423030, 0x32u);
  v8 = strlen((const char *)(a1 - 1016));
  sub_401005((LPCSTR)(a1 - 492), a1 - 1016, v8);
  MessageBoxA(*(HWND *)(a1 + 8), (LPCSTR)(a1 - 1016), 0, 0x32u);
  ++dword_428D54;
  return 0;
}
// positive sp value has been detected, the output may be wrong!
int __userpurge sub_40191F@<eax>(int a1@<ebp>, int a2, int a3, int a4, int a5)
{
  DWORD v5; // eax
  int v6; // edi
  int v7; // eax
  int v8; // eax
  const char *v10; // [esp-458h] [ebp-458h]
  CHAR *v11; // [esp-454h] [ebp-454h]
 
  v5 = strlen(v10);
  sub_40101E(String1, v5, v11);
  strcpy((char *)(a1 - 748), "0kk`d1a`55k222k2a776jbfgd`06cjjb");
  memset((void *)(a1 - 715), 0, 0xDCu);
  v6 = a1 - 715 + 220;
  *(_WORD *)v6 = 0;
  *(_BYTE *)(v6 + 2) = 0;
  strcpy((char *)(a1 - 760), "SS");
  *(_DWORD *)(a1 - 757) = 0;
  *(_WORD *)(a1 - 753) = 0;
  *(_BYTE *)(a1 - 751) = 0;
  v7 = strlen((const char *)(a1 - 748));
  sub_401005((LPCSTR)(a1 - 760), a1 - 748, v7);
  if ( _strcmpi((const char *)String1, (const char *)(a1 - 748)) )
  {
    SetWindowTextA(*(HWND *)(a1 + 8), "flag{}");
    MessageBoxA(*(HWND *)(a1 + 8), "Are you kidding me?", "^_^", 0);
    ExitProcess(0);
  }
  memcpy((void *)(a1 - 1016), &unk_423030, 0x32u);
  v8 = strlen((const char *)(a1 - 1016));
  sub_401005((LPCSTR)(a1 - 492), a1 - 1016, v8);
  MessageBoxA(*(HWND *)(a1 + 8), (LPCSTR)(a1 - 1016), 0, 0x32u);
  ++dword_428D54;
  return 0;
}
unsigned int __cdecl sub_401590(LPCSTR lpString, int a2, unsigned int a3)
{
  unsigned int result; // eax
  unsigned int i; // [esp+4Ch] [ebp-Ch]
  unsigned int v5; // [esp+54h] [ebp-4h]
 
  v5 = lstrlenA(lpString);
  for ( i = 0; ; ++i )
  {
    result = i;
    if ( i >= a3 )
      break;
    *(_BYTE *)(i + a2) ^= lpString[i % v5];
  }
  return result;
}
unsigned int __cdecl sub_401590(LPCSTR lpString, int a2, unsigned int a3)
{
  unsigned int result; // eax
  unsigned int i; // [esp+4Ch] [ebp-Ch]
  unsigned int v5; // [esp+54h] [ebp-4h]
 
  v5 = lstrlenA(lpString);
  for ( i = 0; ; ++i )
  {
    result = i;
    if ( i >= a3 )
      break;
    *(_BYTE *)(i + a2) ^= lpString[i % v5];
  }
  return result;
}
sub_40101E(String1, v5, v11);
sub_40101E(String1, v5, v11);
int __cdecl sub_4013A0(BYTE *pbData, DWORD dwDataLen, LPSTR lpString1)
{
  DWORD i; // [esp+4Ch] [ebp-24h]
  CHAR String2[4]; // [esp+50h] [ebp-20h] BYREF
  BYTE v6[16]; // [esp+54h] [ebp-1Ch] BYREF
  DWORD pdwDataLen; // [esp+64h] [ebp-Ch] BYREF
  HCRYPTHASH phHash; // [esp+68h] [ebp-8h] BYREF
  HCRYPTPROV phProv; // [esp+6Ch] [ebp-4h] BYREF
 
  if ( !CryptAcquireContextA(&phProv, 0, 0, 1u, 0xF0000000) )
    return 0;
  if ( CryptCreateHash(phProv, 0x8003u, 0, 0, &phHash) )
  {
    if ( CryptHashData(phHash, pbData, dwDataLen, 0) )
    {
      CryptGetHashParam(phHash, 2u, v6, &pdwDataLen, 0);
      *lpString1 = 0;
      for ( i = 0; i < pdwDataLen; ++i )
      {
        wsprintfA(String2, "%02X", v6[i]);
        lstrcatA(lpString1, String2);
      }
      CryptDestroyHash(phHash);
      CryptReleaseContext(phProv, 0);
      return 1;
    }
    else
    {
      CryptDestroyHash(phHash);
      CryptReleaseContext(phProv, 0);
      return 0;
    }
  }
  else
  {
    CryptReleaseContext(phProv, 0);
    return 0;
  }
}
int __cdecl sub_4013A0(BYTE *pbData, DWORD dwDataLen, LPSTR lpString1)
{
  DWORD i; // [esp+4Ch] [ebp-24h]
  CHAR String2[4]; // [esp+50h] [ebp-20h] BYREF
  BYTE v6[16]; // [esp+54h] [ebp-1Ch] BYREF
  DWORD pdwDataLen; // [esp+64h] [ebp-Ch] BYREF
  HCRYPTHASH phHash; // [esp+68h] [ebp-8h] BYREF
  HCRYPTPROV phProv; // [esp+6Ch] [ebp-4h] BYREF
 
  if ( !CryptAcquireContextA(&phProv, 0, 0, 1u, 0xF0000000) )
    return 0;
  if ( CryptCreateHash(phProv, 0x8003u, 0, 0, &phHash) )
  {
    if ( CryptHashData(phHash, pbData, dwDataLen, 0) )
    {
      CryptGetHashParam(phHash, 2u, v6, &pdwDataLen, 0);
      *lpString1 = 0;
      for ( i = 0; i < pdwDataLen; ++i )
      {
        wsprintfA(String2, "%02X", v6[i]);
        lstrcatA(lpString1, String2);
      }
      CryptDestroyHash(phHash);
      CryptReleaseContext(phProv, 0);
      return 1;
    }
    else
    {
      CryptDestroyHash(phHash);
      CryptReleaseContext(phProv, 0);
      return 0;
    }
  }
  else
  {
    CryptReleaseContext(phProv, 0);
    return 0;
  }
}
#include<stdio.h>
#include<string.h>
int main(){
 
char b[] =
{
   48, 107, 107,  96, 100,  49,  97,  96,  53,  53,
  107,  50,  50,  50, 107,  50,  97,  55,  55,  54,
  106,  98, 102, 103, 100,  96,  48,  54,  99, 106,
  106,  98,   0
};
    char c[100];   
    char d[] =
{
  0x57, 0x5E, 0x52, 0x54, 0x49, 0x5F, 0x01, 0x6D, 0x69, 0x46,
  0x02, 0x6E, 0x5F, 0x02, 0x6C, 0x57, 0x5B, 0x54, 0x4C
};
 
         
    int i;
    for (i=0;i<strlen(b);i++){
        c[i]='S'^b[i];
    }
     
    puts(c);//hash
     
    char key[] = "123321";//c 's  hash
    for (i=0;i<strlen(d);i++){
        d[i]=key[i%6]^d[i];
    }
    puts(d);//flag{n0_Zu0_n0_die}
}
#include<stdio.h>
#include<string.h>
int main(){
 
char b[] =
{
   48, 107, 107,  96, 100,  49,  97,  96,  53,  53,
  107,  50,  50,  50, 107,  50,  97,  55,  55,  54,
  106,  98, 102, 103, 100,  96,  48,  54,  99, 106,
  106,  98,   0
};
    char c[100];   
    char d[] =
{
  0x57, 0x5E, 0x52, 0x54, 0x49, 0x5F, 0x01, 0x6D, 0x69, 0x46,
  0x02, 0x6E, 0x5F, 0x02, 0x6C, 0x57, 0x5B, 0x54, 0x4C
};
 
         
    int i;
    for (i=0;i<strlen(b);i++){
        c[i]='S'^b[i];
    }
     
    puts(c);//hash
     
    char key[] = "123321";//c 's  hash
    for (i=0;i<strlen(d);i++){
        d[i]=key[i%6]^d[i];
    }
    puts(d);//flag{n0_Zu0_n0_die}
}
v4 = __readfsqword(0x28u);
 *a1 ^= 0x2Bu;
 a1[1] ^= 0x6Cu;
 a1[2] ^= 0x7Eu;
 a1[3] ^= 0x56u;
 a1[4] ^= 0x39u;
 a1[5] ^= 3u;
 a1[6] ^= 0x2Du;
 a1[7] ^= 0x28u;
 a1[8] ^= 8u;
 ++a1[9];
 a1[10] ^= 0x2Fu;
 a1[11] ^= 0xAu;
 ++*a1;
 a1[1] ^= 0xDu;
 a1[2] ^= 0x73u;
 a1[3] ^= a1[2];
 a1[4] ^= 0x37u;
 ++a1[5];
 a1[6] ^= 0x69u;
 a1[7] ^= 0x59u;
 a1[8] ^= 0xCu;
 a1[9] ^= 0x70u;
 ++a1[10];
 a1[11] ^= 0x1Fu;
 ++*a1;
 a1[1] ^= 0x55u;
 a1[2] ^= a1[1];
 a1[3] ^= 0x72u;
 .....
v4 = __readfsqword(0x28u);
 *a1 ^= 0x2Bu;
 a1[1] ^= 0x6Cu;
 a1[2] ^= 0x7Eu;
 a1[3] ^= 0x56u;
 a1[4] ^= 0x39u;
 a1[5] ^= 3u;
 a1[6] ^= 0x2Du;
 a1[7] ^= 0x28u;
 a1[8] ^= 8u;
 ++a1[9];
 a1[10] ^= 0x2Fu;
 a1[11] ^= 0xAu;
 ++*a1;
 a1[1] ^= 0xDu;
 a1[2] ^= 0x73u;
 a1[3] ^= a1[2];
 a1[4] ^= 0x37u;
 ++a1[5];
 a1[6] ^= 0x69u;
 a1[7] ^= 0x59u;
 a1[8] ^= 0xCu;
 a1[9] ^= 0x70u;
 ++a1[10];
 a1[11] ^= 0x1Fu;
 ++*a1;
 a1[1] ^= 0x55u;
 a1[2] ^= a1[1];
 a1[3] ^= 0x72u;
 .....
#include<stdio.h>
 
int sub_83A(char *a1,int i);
int main(){
    char flag[12];
    char flag1[12];
    int i,j,k;
    for (i=0;i<=11;i++){
         
        for(j=0;j<=256;j++){
            flag[i]=j;
            for(k=0;k<=i;k++){
                flag1[k]=flag[k];
            }
             
            if(sub_83A(flag1,i))
                break;
        }
     
    }
    printf("\nthe flag are:\n");
puts(flag);
     
}
 
 
int sub_83A(char *a1,int i)
{ // [rsp+1Ch] [rbp-44h]
  int v3[14]; // [rsp+20h] [rbp-40h]
  unsigned __int64 v4; // [rsp+58h] [rbp-8h]
 
 
    char flaga=a1[i];
  //v4 = __readfsqword(0x28u);
  *a1 ^= 0x2Bu;
  a1[1] ^= 0x6Cu;
  a1[2] ^= 0x7Eu;
  a1[3] ^= 0x56u;
  a1[4] ^= 0x39u;
  a1[5] ^= 3u;
  a1[6] ^= 0x2Du;
  a1[7] ^= 0x28u;
  a1[8] ^= 8u;
  ++a1[9];
  a1[10] ^= 0x2Fu;
  a1[11] ^= 0xAu;
  ++*a1;
  a1[1] ^= 0xDu;
  a1[2] ^= 0x73u;
  a1[3] ^= a1[2];
  a1[4] ^= 0x37u;
  ++a1[5];
  a1[6] ^= 0x69u;
  a1[7] ^= 0x59u;
  a1[8] ^= 0xCu;
  a1[9] ^= 0x70u;
  ++a1[10];
  a1[11] ^= 0x1Fu;
  ++*a1;
  a1[1] ^= 0x55u;
  a1[2] ^= a1[1];
  a1[3] ^= 0x72u;
  a1[4] ^= 0x1Fu;
  ++a1[5];
  a1[6] ^= 0x6Du;
  a1[7] ^= a1[6];
  a1[8] ^= a1[7];
  a1[9] ^= 0x6Du;
  ++a1[10];
  ++a1[11];
  ++*a1;
  a1[1] ^= 0x76u;
  a1[2] ^= 0x49u;
  a1[3] ^= 0x29u;
  a1[4] ^= 0x17u;
  a1[5] ^= 0x78u;
  a1[6] ^= 0x6Eu;
  a1[7] ^= a1[2];
  a1[8] ^= 0x2Cu;
  a1[9] ^= 0xEu;
  a1[10] ^= 0x1Eu;
  a1[11] ^= 0x52u;
  *a1 ^= 0x16u;
  a1[1] ^= 0x22u;
  a1[2] ^= a1[1];
  a1[3] ^= *a1;
  a1[4] ^= 0x72u;
  a1[5] ^= 0xCu;
  a1[6] ^= a1[4];
  a1[7] ^= 0x5Du;
  a1[8] ^= 0x47u;
  ++a1[9];
  a1[10] ^= 0x6Eu;
  a1[11] ^= a1[5];
  *a1 ^= 0x73u;
  ++a1[1];
  a1[2] ^= 0x75u;
  a1[3] ^= 7u;
  a1[4] ^= 0x68u;
  ++a1[5];
  a1[6] ^= 0x41u;
  a1[7] ^= 0x10u;
  a1[8] ^= 0x3Bu;
  a1[9] ^= 0x2Bu;
  a1[10] ^= 0x65u;
  ++a1[11];
  *a1 ^= 0x73u;
  a1[1] ^= 0x74u;
  a1[2] ^= 0x52u;
  a1[3] ^= 0x66u;
  a1[4] ^= 0x41u;
  a1[5] ^= 0x63u;
  a1[6] ^= 7u;
  a1[7] ^= 0x61u;
  a1[8] ^= 0x32u;
  a1[9] ^= 0x74u;
  ++a1[10];
  a1[11] ^= 0x22u;
  *a1 ^= 2u;
  a1[1] ^= 0x6Fu;
  ++a1[2];
  a1[3] ^= 5u;
  a1[4] ^= 4u;
  a1[5] ^= 0x6Du;
  a1[6] ^= a1[2];
  a1[7] ^= 0x57u;
  a1[8] ^= 0x3Eu;
  a1[9] ^= 0x1Bu;
  a1[10] ^= 0x57u;
  a1[11] ^= 0x27u;
  *a1 ^= 0x7Cu;
  a1[1] ^= 0x58u;
  ++a1[2];
  a1[3] ^= 0x50u;
  a1[4] ^= 0x27u;
  a1[5] ^= a1[4];
  a1[6] ^= 0x67u;
  a1[7] ^= 0x41u;
  a1[8] ^= 0x76u;
  a1[9] ^= 0x7Au;
  a1[10] ^= 0x7Cu;
  ++a1[11];
  ++*a1;
  a1[1] ^= 0x7Du;
  a1[2] ^= 0x5Bu;
  a1[3] ^= 0x15u;
  a1[4] ^= 0xBu;
  ++a1[5];
  a1[6] ^= 0x61u;
  a1[7] ^= 0x73u;
  a1[8] ^= 0x19u;
  a1[9] ^= 0xBu;
  a1[10] ^= 1u;
  a1[11] ^= a1[9];
  *a1 ^= 0x7Cu;
  a1[1] ^= 0x21u;
  a1[2] ^= 0x26u;
  a1[3] ^= 0x73u;
  a1[4] ^= 0x26u;
  a1[5] ^= 0x71u;
  a1[6] ^= 0x67u;
  a1[7] ^= 0x54u;
  a1[8] ^= 7u;
  a1[9] ^= a1[1];
  a1[10] ^= 0x20u;
  ++a1[11];
  *a1 ^= 0xFu;
  a1[1] ^= 0x21u;
  a1[2] ^= 0x7Du;
  a1[3] ^= a1[1];
  a1[4] ^= 0x5Eu;
  a1[5] ^= 0x44u;
  a1[6] ^= 0x73u;
  a1[7] ^= 0x17u;
  a1[8] ^= 0x34u;
  a1[9] ^= 0x7Cu;
  a1[10] ^= a1[2];
  a1[11] ^= 0x59u;
  *a1 ^= 0x2Au;
  a1[1] ^= 0x37u;
  a1[2] ^= 0x49u;
  a1[3] ^= 0x22u;
  a1[4] ^= 0x68u;
  a1[5] ^= 0x41u;
  a1[6] ^= 0x61u;
  a1[7] ^= a1[5];
  a1[8] ^= 0x29u;
  ++a1[9];
  a1[10] ^= 0x16u;
  ++a1[11];
  *a1 ^= 0x29u;
  a1[1] ^= 0x2Cu;
  a1[2] ^= 0x47u;
  a1[3] ^= a1[1];
  a1[4] ^= 0x3Fu;
  a1[5] ^= 0x42u;
  a1[6] ^= 0x62u;
  ++a1[7];
  a1[8] ^= 0x33u;
  a1[9] ^= 0x69u;
  a1[10] ^= 0x5Cu;
  a1[11] ^= 0x14u;
  *a1 ^= 1u;
  a1[1] ^= 0x33u;
  a1[2] ^= 0x27u;
  a1[3] ^= 0x29u;
  a1[4] ^= 0xCu;
  a1[5] ^= 0x2Fu;
  a1[6] ^= 0x45u;
  a1[7] ^= a1[2];
  a1[8] ^= 0x16u;
  a1[9] ^= 0x7Eu;
  a1[10] ^= 0x44u;
  a1[11] ^= 0x42u;
  *a1 ^= 0x66u;
  a1[1] ^= 0x14u;
  a1[2] ^= 0x33u;
  a1[3] ^= a1[1];
  a1[4] ^= 0x26u;
  a1[5] ^= 0x60u;
  a1[6] ^= 0x15u;
  a1[7] ^= 0x4Cu;
  a1[8] ^= 0x68u;
  a1[9] ^= 0xCu;
  a1[10] ^= 0x26u;
  a1[11] ^= 0x15u;
  *a1 ^= 0x43u;
  a1[1] ^= 0x5Cu;
  a1[2] ^= 0x75u;
  a1[3] ^= 0x4Eu;
  a1[4] ^= 0x6Cu;
  a1[5] ^= 0x73u;
  a1[6] ^= 0x17u;
  a1[7] ^= 0x2Bu;
  a1[8] ^= 0x5Cu;
  a1[9] ^= 0x1Du;
  a1[10] ^= a1[4];
  a1[11] ^= 0x2Au;
  *a1 ^= 0x7Du;
  a1[1] ^= 0x2Cu;
  a1[2] ^= 0x7Du;
  a1[3] ^= 0x4Cu;
  a1[4] ^= 0x55u;
  a1[5] ^= 0x67u;
  a1[6] ^= 0x69u;
  a1[7] ^= 0x23u;
  a1[8] ^= 0x27u;
  a1[9] ^= 0x66u;
  a1[10] ^= 0x4Bu;
  a1[11] ^= 2u;
  *a1 ^= 0x3Au;
  ++a1[1];
  a1[2] ^= 0x5Cu;
  a1[3] ^= 0x68u;
  a1[4] ^= 0x51u;
  a1[5] ^= 0x74u;
  ++a1[6];
  a1[7] ^= 0x23u;
  a1[8] ^= 0x11u;
  a1[9] ^= 0x34u;
  a1[10] ^= 0x2Du;
  a1[11] ^= 0x26u;
  *a1 ^= 0x14u;
  a1[1] ^= *a1;
  a1[2] ^= 0x20u;
  a1[3] ^= 0x2Fu;
  a1[4] ^= 0x33u;
  a1[5] ^= *a1;
  a1[6] ^= 0x36u;
  a1[7] ^= *a1;
  a1[8] ^= a1[4];
  a1[9] ^= 0x77u;
  a1[10] ^= 0x30u;
  a1[11] ^= 0x50u;
  ++*a1;
  a1[1] ^= 0x45u;
  ++a1[2];
  a1[3] ^= 0x53u;
  a1[4] ^= 0x68u;
  a1[5] ^= 0x4Au;
  a1[6] ^= 0x38u;
  a1[7] ^= 0x18u;
  a1[8] ^= a1[6];
  a1[9] ^= 0x2Bu;
  a1[10] ^= 0x6Au;
  a1[11] ^= 0x28u;
  *a1 ^= 0x75u;
  a1[1] ^= *a1;
  a1[2] ^= 0x7Cu;
  a1[3] ^= *a1;
  a1[4] ^= 0x38u;
  a1[5] ^= 0x75u;
  a1[6] ^= a1[5];
  a1[7] ^= 0x2Bu;
  ++a1[8];
  a1[9] ^= 0x36u;
  a1[10] ^= 0x6Eu;
  a1[11] ^= 0x7Fu;
  *a1 ^= 0x5Cu;
  a1[1] ^= 0x16u;
  a1[2] ^= 0x16u;
  a1[3] ^= a1[1];
  a1[4] ^= 0x73u;
  a1[5] ^= 0x63u;
  a1[6] ^= 0x5Au;
  a1[7] ^= 0x35u;
  a1[8] ^= 0x1Cu;
  a1[9] ^= 0x43u;
  a1[10] ^= 0x26u;
  a1[11] ^= a1[3];
  *a1 ^= 0x1Au;
  a1[1] ^= *a1;
  a1[2] ^= 0x18u;
  a1[3] ^= 0x40u;
  ++a1[4];
  a1[5] ^= 9u;
  a1[6] ^= 0x5Cu;
  a1[7] ^= 0x3Au;
  a1[8] ^= 0x68u;
  a1[9] ^= 0x2Eu;
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x6Cu;
  a1[1] ^= *a1;
  a1[2] ^= *a1;
  a1[3] ^= 6u;
  a1[4] ^= 0x76u;
  a1[5] ^= 0x29u;
  a1[6] ^= 8u;
  a1[7] ^= 0x7Au;
  a1[8] ^= 0x58u;
  a1[9] ^= 0x31u;
  ++a1[10];
  a1[11] ^= 0x24u;
  *a1 ^= 0x42u;
  a1[1] ^= 0x1Fu;
  a1[2] ^= 0x72u;
  ++a1[3];
  a1[4] ^= 0x11u;
  a1[5] ^= 0x72u;
  a1[6] ^= a1[2];
  a1[7] ^= 0x56u;
  a1[8] ^= 0x16u;
  a1[9] ^= 0x15u;
  a1[10] ^= 0x30u;
  a1[11] ^= a1[1];
  *a1 ^= 0x7Fu;
  a1[1] ^= 0x7Eu;
  a1[2] ^= 0x49u;
  ++a1[3];
  a1[4] ^= 0x72u;
  ++a1[5];
  a1[6] ^= 6u;
  a1[7] ^= 0x61u;
  a1[8] ^= a1[2];
  a1[9] ^= 0x44u;
  a1[10] ^= 0x25u;
  a1[11] ^= 0x13u;
  *a1 ^= 0x7Eu;
  a1[1] ^= 7u;
  a1[2] ^= 0x1Bu;
  a1[3] ^= 0x62u;
  a1[4] ^= 0x34u;
  a1[5] ^= 0x2Cu;
  a1[6] ^= 0xEu;
  a1[7] ^= 0x52u;
  a1[8] ^= 0x7Bu;
  a1[9] ^= 0x6Fu;
  a1[10] ^= 0x7Au;
  a1[11] ^= 0x7Du;
  ++*a1;
  a1[1] ^= 0x6Fu;
  ++a1[2];
  ++a1[3];
  a1[4] ^= 0x67u;
  a1[5] ^= 0x16u;
  a1[6] ^= 0xBu;
  a1[7] ^= 0x7Bu;
  a1[8] ^= 0x4Au;
  a1[9] ^= 0x2Eu;
  a1[10] ^= 0x37u;
  a1[11] ^= 0xBu;
  *a1 ^= 0x3Eu;
  a1[1] ^= 0x2Cu;
  a1[2] ^= *a1;
  a1[3] ^= 0x7Au;
  ++a1[4];
  a1[5] ^= 0x74u;
  a1[6] ^= 0x6Du;
  a1[7] ^= 0x6Bu;
  a1[8] ^= 0x1Eu;
  a1[9] ^= 0x25u;
  a1[10] ^= 0x19u;
  ++a1[11];
  *a1 ^= 0x3Au;
  a1[1] ^= 0x4Eu;
  a1[2] ^= 0x27u;
  a1[3] ^= 0xAu;
  a1[4] ^= 0x3Eu;
  a1[5] ^= 0x7Fu;
  a1[6] ^= 0x20u;
  a1[7] ^= 0x3Cu;
  a1[8] ^= 0x5Eu;
  a1[9] ^= 0x56u;
  a1[10] ^= a1[1];
  a1[11] ^= 0x48u;
  *a1 ^= 0x3Fu;
  ++a1[1];
  a1[2] ^= 0x72u;
  ++a1[3];
  ++a1[4];
  ++a1[5];
  a1[6] ^= 0x44u;
  a1[7] ^= 0x2Eu;
  a1[8] ^= 0x44u;
  a1[9] ^= 0x74u;
  a1[10] ^= 0x7Eu;
  a1[11] ^= 0x30u;
  *a1 ^= 0x66u;
  a1[1] ^= *a1;
  a1[2] ^= 0x63u;
  a1[3] ^= 0x5Du;
  a1[4] ^= 0x55u;
  a1[5] ^= 0x1Au;
  a1[6] ^= a1[1];
  a1[7] ^= 0x68u;
  a1[8] ^= 0x46u;
  ++a1[9];
  ++a1[10];
  a1[11] ^= 0x75u;
  ++*a1;
  a1[1] ^= 0x23u;
  a1[2] ^= 0x48u;
  a1[3] ^= 0x3Du;
  a1[4] ^= a1[2];
  a1[5] ^= 0x14u;
  a1[6] ^= 0x7Du;
  a1[7] ^= 0x67u;
  ++a1[8];
  a1[9] ^= 0x4Fu;
  a1[10] ^= 0x56u;
  a1[11] ^= a1[4];
  *a1 ^= 0x30u;
  ++a1[1];
  a1[2] ^= 0x3Bu;
  a1[3] ^= *a1;
  a1[4] ^= 0x7Bu;
  a1[5] ^= 0x38u;
  ++a1[6];
  a1[7] ^= 4u;
  a1[8] ^= 0x2Eu;
  a1[9] ^= a1[1];
  a1[10] ^= a1[4];
  a1[11] ^= 0x20u;
  *a1 ^= 0x4Bu;
  ++a1[1];
  ++a1[2];
  a1[3] ^= 0x7Eu;
  a1[4] ^= 0x65u;
  a1[5] ^= 0x14u;
  a1[6] ^= 0x5Eu;
  a1[7] ^= 0x3Au;
  ++a1[8];
  a1[9] ^= 0x7Fu;
  ++a1[10];
  a1[11] ^= 0xBu;
  *a1 ^= 0x6Bu;
  a1[1] ^= 0x4Fu;
  a1[2] ^= *a1;
  a1[3] ^= 0x6Au;
  a1[4] ^= 0x6Fu;
  a1[5] ^= 0x3Bu;
  ++a1[6];
  a1[7] ^= 0x2Eu;
  a1[8] ^= a1[6];
  a1[9] ^= 0x39u;
  a1[10] ^= 0x13u;
  a1[11] ^= 0x59u;
  *a1 ^= 0x4Fu;
  a1[1] ^= 0x54u;
  a1[2] ^= 0x33u;
  ++a1[3];
  a1[4] ^= 0x1Eu;
  a1[5] ^= 0x76u;
  a1[6] ^= 0x77u;
  a1[7] ^= 4u;
  a1[8] ^= 0x45u;
  ++a1[9];
  a1[10] ^= 0x20u;
  a1[11] ^= 0x58u;
  ++*a1;
  a1[1] ^= 0x4Bu;
  a1[2] ^= 0x44u;
  ++a1[3];
  a1[4] ^= 0x3Cu;
  a1[5] ^= 0x21u;
  a1[6] ^= a1[5];
  a1[7] ^= 2u;
  a1[8] ^= 0x5Bu;
  a1[9] ^= 0x3Cu;
  a1[10] ^= 0x70u;
  a1[11] ^= 0x3Bu;
  *a1 ^= 0x20u;
  a1[1] ^= 0x15u;
  a1[2] ^= 0x17u;
  a1[3] ^= 0x20u;
  a1[4] ^= 0x39u;
  a1[5] ^= a1[4];
  a1[6] ^= 0x3Fu;
  a1[7] ^= a1[4];
  a1[8] ^= 0x4Bu;
  a1[9] ^= 0x58u;
  a1[10] ^= 0x55u;
  a1[11] ^= 0x4Bu;
  *a1 ^= 0x2Cu;
  a1[1] ^= 0x6Eu;
  a1[2] ^= 0x27u;
  a1[3] ^= a1[1];
  a1[4] ^= 4u;
  ++a1[5];
  ++a1[6];
  a1[7] ^= 0x1Bu;
  a1[8] ^= 0x3Cu;
  a1[9] ^= 0x65u;
  a1[10] ^= 0x53u;
  a1[11] ^= 8u;
  *a1 ^= 0x79u;
  a1[1] ^= 0x2Cu;
  a1[2] ^= 0xCu;
  a1[3] ^= 0x11u;
  a1[4] ^= 0x11u;
  ++a1[5];
  a1[6] ^= 0x5Cu;
  a1[7] ^= 0x1Du;
  a1[8] ^= 0x2Fu;
  a1[9] ^= a1[2];
  a1[10] ^= 0x12u;
  a1[11] ^= a1[2];
  *a1 ^= 0x36u;
  a1[1] ^= 0x7Fu;
  ++a1[2];
  a1[3] ^= 0x2Du;
  a1[4] ^= 0x78u;
  a1[5] ^= 8u;
  a1[6] ^= 0x6Fu;
  a1[7] ^= 0x51u;
  a1[8] ^= 0x36u;
  a1[9] ^= 0x64u;
  ++a1[10];
  a1[11] ^= 0x4Cu;
  ++*a1;
  a1[1] ^= 0x49u;
  a1[2] ^= 9u;
  a1[3] ^= 0x50u;
  a1[4] ^= 0x13u;
  a1[5] ^= 0x64u;
  a1[6] ^= 0x5Eu;
  a1[7] ^= a1[3];
  a1[8] ^= 0x34u;
  a1[9] ^= 0x39u;
  a1[10] ^= a1[9];
  a1[11] ^= 7u;
  ++*a1;
  a1[1] ^= 0x48u;
  a1[2] ^= 0x7Cu;
  a1[3] ^= 0x50u;
  a1[4] ^= 0x55u;
  a1[5] ^= 0x48u;
  a1[6] ^= 0x6Du;
  a1[7] ^= 0x7Cu;
  a1[8] ^= 0x46u;
  a1[9] ^= 0x72u;
  a1[10] ^= 0x77u;
  a1[11] ^= a1[6];
  *a1 ^= 0x71u;
  a1[1] ^= *a1;
  a1[2] ^= 0x52u;
  a1[3] ^= 0x38u;
  a1[4] ^= 0x4Du;
  a1[5] ^= 0xAu;
  a1[6] ^= 0x4Cu;
  a1[7] ^= a1[2];
  a1[8] ^= 0x3Cu;
  a1[9] ^= 0x4Au;
  a1[10] ^= 0x37u;
  ++a1[11];
  *a1 ^= 0x43u;
  ++a1[1];
  ++a1[2];
  a1[3] ^= 0x29u;
  a1[4] ^= a1[2];
  a1[5] ^= 0x4Au;
  a1[6] ^= 0x32u;
  ++a1[7];
  a1[8] ^= 0x27u;
  a1[9] ^= 0x4Eu;
  a1[10] ^= 0x16u;
  a1[11] ^= 0x73u;
  *a1 ^= 0x22u;
  a1[1] ^= 0x59u;
  a1[2] ^= *a1;
  a1[3] ^= 0x29u;
  a1[4] ^= 1u;
  a1[5] ^= 0x1Bu;
  a1[6] ^= 0x35u;
  ++a1[7];
  a1[8] ^= 0xDu;
  a1[9] ^= 0x20u;
  a1[10] ^= 0x42u;
  a1[11] ^= 0x29u;
  *a1 ^= 0x77u;
  ++a1[1];
  a1[2] ^= 0x36u;
  a1[3] ^= 0x30u;
  a1[4] ^= 0x60u;
  a1[5] ^= 0x52u;
  a1[6] ^= 0x3Cu;
  a1[7] ^= 0xAu;
  a1[8] ^= a1[2];
  a1[9] ^= 0x78u;
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x5Du;
  a1[1] ^= *a1;
  a1[2] ^= a1[1];
  a1[3] ^= 0x4Bu;
  a1[4] ^= 0x1Eu;
  a1[5] ^= *a1;
  a1[6] ^= 0xFu;
  ++a1[7];
  a1[8] ^= 0x64u;
  ++a1[9];
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x17u;
  ++a1[1];
  a1[2] ^= 0x78u;
  a1[3] ^= a1[2];
  a1[4] ^= 0x5Eu;
  a1[5] ^= 0x53u;
  a1[6] ^= a1[2];
  a1[7] ^= 0x2Du;
  a1[8] ^= 4u;
  a1[9] ^= 0x3Du;
  ++a1[10];
  a1[11] ^= 1u;
  *a1 ^= 0x41u;
  a1[1] ^= 0x31u;
  a1[2] ^= 0x4Au;
  ++a1[3];
  a1[4] ^= 0x73u;
  ++a1[5];
  a1[6] ^= 0x5Du;
  a1[7] ^= 0x11u;
  ++a1[8];
  a1[9] ^= 3u;
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x2Cu;
  a1[1] ^= *a1;
  a1[2] ^= a1[1];
  a1[3] ^= 0x53u;
  a1[4] ^= 0x50u;
  a1[5] ^= a1[1];
  a1[6] ^= 0xFu;
  a1[7] ^= 0x13u;
  a1[8] ^= 0x21u;
  a1[9] ^= 0x55u;
  ++a1[10];
  a1[11] ^= 0x3Cu;
  ++*a1;
  a1[1] ^= 0x38u;
  a1[2] ^= 0x2Du;
  a1[3] ^= 0x7Fu;
  a1[4] ^= 0x73u;
  a1[5] ^= 0x56u;
  a1[6] ^= 0xFu;
  a1[7] ^= a1[4];
  a1[8] ^= 0x1Eu;
  a1[9] ^= 3u;
  ++a1[10];
  a1[11] ^= 0x64u;
  *a1 ^= 0x6Eu;
  a1[1] ^= 0x5Bu;
  a1[2] ^= 0x4Au;
  a1[3] ^= 0x4Bu;
  a1[4] ^= 0x1Eu;
  a1[5] ^= 0x60u;
  a1[6] ^= 0xEu;
  a1[7] ^= a1[4];
  a1[8] ^= 8u;
  a1[9] ^= 0x35u;
  a1[10] ^= a1[8];
  a1[11] ^= 0x1Bu;
  *a1 ^= 0x6Eu;
  a1[1] ^= 0x32u;
  a1[2] ^= 0x66u;
  a1[3] ^= 0x7Cu;
  a1[4] ^= 0x3Au;
  a1[5] ^= 0x1Eu;
  a1[6] ^= 0x53u;
  a1[7] ^= 0x12u;
  ++a1[8];
  a1[9] ^= 0x64u;
  a1[10] ^= 0x6Du;
  a1[11] ^= 0x6Fu;
  *a1 ^= 0x5Fu;
  a1[1] ^= 0x3Au;
  a1[2] ^= *a1;
  a1[3] ^= 0x58u;
  a1[4] ^= *a1;
  a1[5] ^= a1[1];
  a1[6] ^= 0x7Cu;
  a1[7] ^= 0x10u;
  a1[8] ^= a1[7];
  a1[9] ^= 0x6Cu;
  a1[10] ^= 0x34u;
  a1[11] ^= 0x2Fu;
  *a1 ^= 0xFu;
  ++a1[1];
  a1[2] ^= 0x42u;
  a1[3] ^= 0x3Bu;
  a1[4] ^= *a1;
  a1[5] ^= 0x66u;
  a1[6] ^= 6u;
  a1[7] ^= 0x2Bu;
  a1[8] ^= 0x78u;
  a1[9] ^= 0x1Cu;
  a1[10] ^= 0x27u;
  a1[11] ^= 0x15u;
  *a1 ^= 0x14u;
  ++a1[1];
  a1[2] ^= 2u;
  a1[3] ^= 0x74u;
  a1[4] ^= 0x32u;
  a1[5] ^= 8u;
  ++a1[6];
  a1[7] ^= 0x5Au;
  a1[8] ^= a1[1];
  a1[9] ^= 0x71u;
  a1[10] ^= 0x62u;
  a1[11] ^= a1[9];
  *a1 ^= 0x42u;
  a1[1] ^= 5u;
  a1[2] ^= *a1;
  a1[3] ^= 0x5Au;
  a1[4] ^= a1[2];
  a1[5] ^= 0x16u;
  ++a1[6];
  a1[7] ^= 0x75u;
  ++a1[8];
  ++a1[9];
  a1[10] ^= 0x5Eu;
  ++a1[11];
  *a1 ^= 0x49u;
  ++a1[1];
  a1[2] ^= 0x26u;
  a1[3] ^= 0x2Bu;
  a1[4] ^= 0x3Au;
  a1[5] ^= a1[3];
  a1[6] ^= 0x59u;
  a1[7] ^= 0x4Du;
  ++a1[8];
  a1[9] ^= 0x1Eu;
  a1[10] ^= *a1;
  a1[11] ^= 0x25u;
  ++*a1;
  a1[1] ^= 0x46u;
  a1[2] ^= 0x40u;
  a1[3] ^= a1[1];
  a1[4] ^= 0x21u;
  a1[5] ^= 0x7Au;
  ++a1[6];
  a1[7] ^= 0x2Au;
  a1[8] ^= a1[1];
  a1[9] ^= a1[1];
  a1[10] ^= 0x11u;
  a1[11] ^= 0x72u;
  *a1 ^= 8u;
  a1[1] ^= *a1;
  a1[2] ^= 5u;
  a1[3] ^= 0x7Bu;
  ++a1[4];
  ++a1[5];
  a1[6] ^= 0x59u;
  a1[7] ^= *a1;
  a1[8] ^= 0x78u;
  a1[9] ^= 0x4Cu;
  a1[10] ^= a1[4];
  a1[11] ^= 0x67u;
  *a1 ^= 0x5Cu;
  a1[1] ^= *a1;
  a1[2] ^= 0x71u;
  a1[3] ^= *a1;
  a1[4] ^= 0x2Fu;
  ++a1[5];
  ++a1[6];
  a1[7] ^= 0x71u;
  a1[8] ^= 9u;
  a1[9] ^= a1[1];
  a1[10] ^= 0x6Au;
  a1[11] ^= 0x1Bu;
  *a1 ^= 0xEu;
  a1[1] ^= 0x2Au;
  a1[2] ^= 0x3Bu;
  ++a1[3];
  ++a1[4];
  ++a1[5];
  a1[6] ^= 0x4Cu;
  ++a1[7];
  a1[8] ^= 0x4Cu;
  a1[9] ^= 0x5Du;
  a1[10] ^= 0x47u;
  a1[11] ^= 0x23u;
  *a1 ^= 0x63u;
  a1[1] ^= 0x58u;
  a1[2] ^= 0x32u;
  a1[3] ^= *a1;
  a1[4] ^= 0x57u;
  ++a1[5];
  a1[6] ^= 0x33u;
  a1[7] ^= 0x3Du;
  a1[8] ^= a1[3];
  a1[9] ^= a1[7];
  a1[10] ^= 0x16u;
  a1[11] ^= a1[1];
  *a1 ^= 0x17u;
  a1[1] ^= *a1;
  a1[2] ^= 0x48u;
  ++a1[3];
  a1[4] ^= 2u;
  a1[5] ^= 0x4Fu;
  a1[6] ^= 0x2Eu;
  a1[7] ^= 0x3Eu;
  ++a1[8];
  a1[9] ^= 0x26u;
  a1[10] ^= a1[8];
  a1[11] ^= a1[9];
  *a1 ^= 0x54u;
  a1[1] ^= 0x40u;
  ++a1[2];
  a1[3] ^= 0x33u;
  a1[4] ^= 0x7Au;
  a1[5] ^= 0x40u;
  a1[6] ^= 0x67u;
  ++a1[7];
  a1[8] ^= 0x3Du;
  a1[9] ^= 0x2Du;
  a1[10] ^= 0x3Bu;
  a1[11] ^= 0x7Du;
  *a1 ^= 0x1Bu;
  ++a1[1];
  a1[2] ^= 0x66u;
  a1[3] ^= 0x6Eu;
  a1[4] ^= 0x7Eu;
  ++a1[5];
  a1[6] ^= 0x59u;
  a1[7] ^= 0x73u;
  a1[8] ^= 1u;
  ++a1[9];
  a1[10] ^= 0x5Du;
  a1[11] ^= 0x55u;
  *a1 ^= 0x58u;
  a1[1] ^= 0x29u;
  a1[2] ^= a1[1];
  a1[3] ^= 0x6Du;
  a1[4] ^= a1[3];
  a1[5] ^= *a1;
  a1[6] ^= 0x2Fu;
  a1[7] ^= 0x66u;
  a1[8] ^= a1[5];
  a1[9] ^= 0x6Fu;
  a1[10] ^= a1[4];
  a1[11] ^= 0x25u;
  *a1 ^= 0x5Du;
  a1[1] ^= 0x73u;
  ++a1[2];
  a1[3] ^= 0x64u;
  ++a1[4];
  a1[5] ^= 0x60u;
  a1[6] ^= 0x5Eu;
  ++a1[7];
  a1[8] ^= 0xFu;
  a1[9] ^= 0x5Cu;
  a1[10] ^= a1[1];
  a1[11] ^= 0x2Bu;
  *a1 ^= 0x5Eu;
  a1[1] ^= 0x69u;
  a1[2] ^= 0x35u;
  a1[3] ^= 0x73u;
  a1[4] ^= a1[2];
  a1[5] ^= 0x5Cu;
  a1[6] ^= 0x79u;
  a1[7] ^= 0x33u;
  a1[8] ^= 0x20u;
  a1[9] ^= 0x6Cu;
  a1[10] ^= 0x23u;
  a1[11] ^= 0x52u;
  *a1 ^= 0x39u;
  ++a1[1];
  a1[2] ^= 0x6Fu;
  a1[3] ^= 0x23u;
  a1[4] ^= 0x40u;
  a1[5] ^= 0x75u;
  ++a1[6];
  a1[7] ^= 0x5Du;
  a1[8] ^= a1[4];
  a1[9] ^= 0x5Eu;
  a1[10] ^= a1[9];
  a1[11] ^= 0x20u;
  *a1 ^= 0xFu;
  ++a1[1];
  ++a1[2];
  a1[3] ^= 0x10u;
  a1[4] ^= a1[3];
  a1[5] ^= a1[3];
  a1[6] ^= a1[2];
  a1[7] ^= 0x15u;
  a1[8] ^= a1[7];
  a1[9] ^= 0x36u;
  a1[10] ^= a1[6];
  a1[11] ^= 0x7Du;
  *a1 ^= 0x54u;
  a1[1] ^= *a1;
  a1[2] ^= 0x6Eu;
  a1[3] ^= 0x1Bu;
  a1[4] ^= 0x30u;
  a1[5] ^= a1[2];
  a1[6] ^= a1[5];
  a1[7] ^= 0x3Bu;
  a1[8] ^= 0x7Eu;
  a1[9] ^= 0x1Eu;
  a1[10] ^= 0x29u;
  a1[11] ^= a1[7];
  *a1 ^= 6u;
  a1[1] ^= 0x4Fu;
  a1[2] ^= a1[1];
  a1[3] ^= 0x2Du;
  a1[4] ^= 0x2Fu;
  a1[5] ^= 0x52u;
  a1[6] ^= 0x41u;
  a1[7] ^= 0x4Au;
  ++a1[8];
  a1[9] ^= 0x54u;
  a1[10] ^= 0x57u;
  a1[11] ^= 5u;
  *a1 ^= 0x35u;
  a1[1] ^= *a1;
  a1[2] ^= 0x61u;
  a1[3] ^= a1[2];
  a1[4] ^= 3u;
  a1[5] ^= 0x55u;
  a1[6] ^= 0x5Fu;
  ++a1[7];
  a1[8] ^= 0x22u;
  a1[9] ^= 0x3Bu;
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x1Eu;
  a1[1] ^= 0x77u;
  a1[2] ^= 0x60u;
  a1[3] ^= 0x4Cu;
  a1[4] ^= 0x4Fu;
  a1[5] ^= a1[4];
  a1[6] ^= 0x7Du;
  a1[7] ^= *a1;
  a1[8] ^= 0x2Du;
  ++a1[9];
  a1[10] ^= 0x26u;
  a1[11] ^= 0x29u;
  ++*a1;
  a1[1] ^= 0x1Eu;
  a1[2] ^= 0x2Fu;
  a1[3] ^= a1[2];
  a1[4] ^= 0x54u;
  a1[5] ^= 0xCu;
  a1[6] ^= 0x24u;
  a1[7] ^= 0x25u;
  ++a1[8];
  a1[9] ^= 0x75u;
  a1[10] ^= 0x2Au;
  a1[11] ^= 0x54u;
  *a1 ^= 0x37u;
  a1[1] ^= 0x47u;
  a1[2] ^= 9u;
  a1[3] ^= 0x75u;
  a1[4] ^= 0x1Eu;
  a1[5] ^= 0x5Du;
  a1[6] ^= 0x21u;
  a1[7] ^= 0x58u;
  a1[8] ^= 0x60u;
  a1[9] ^= 0x3Cu;
  a1[10] ^= 0x2Du;
  a1[11] ^= 0x7Cu;
  ++*a1;
  a1[1] ^= 6u;
  a1[2] ^= 7u;
  ++a1[3];
  a1[4] ^= 0x3Bu;
  a1[5] ^= 0x1Bu;
  a1[6] ^= a1[1];
  a1[7] ^= 0x26u;
  a1[8] ^= 0x3Du;
  ++a1[9];
  a1[10] ^= 0x7Fu;
  ++a1[11];
  *a1 ^= 0x2Cu;
  a1[1] ^= 0x1Eu;
  a1[2] ^= 0x1Du;
  a1[3] ^= 0x3Au;
  a1[4] ^= 0x1Bu;
  a1[5] ^= 0x7Bu;
  a1[6] ^= 0x44u;
  a1[7] ^= a1[2];
  a1[8] ^= 0x38u;
  ++a1[9];
  a1[10] ^= 0x3Eu;
  ++a1[11];
  ++*a1;
  ++a1[1];
  a1[2] ^= 0xAu;
  a1[3] ^= 0xFu;
  a1[4] ^= 0xBu;
  a1[5] ^= a1[1];
  a1[6] ^= 0x25u;
  ++a1[7];
  a1[8] ^= 0x54u;
  a1[9] ^= 0x70u;
  a1[10] ^= 6u;
  a1[11] ^= 6u;
  *a1 ^= 0x3Du;
  a1[1] ^= 0xEu;
  a1[2] ^= 0x19u;
  a1[3] ^= 0x61u;
  a1[4] ^= a1[2];
  a1[5] ^= 0x7Fu;
  a1[6] ^= 0x65u;
  a1[7] ^= 0x44u;
  a1[8] ^= 0x61u;
  a1[9] ^= 0x79u;
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x3Fu;
  a1[1] ^= 0x54u;
  a1[2] ^= a1[1];
  a1[3] ^= 9u;
  a1[4] ^= a1[2];
  a1[5] ^= a1[2];
  a1[6] ^= 0x59u;
  a1[7] ^= a1[6];
  a1[8] ^= a1[4];
  a1[9] ^= 0x61u;
  a1[10] ^= 0x6Eu;
  ++a1[11];
  *a1 ^= 0x46u;
  ++a1[1];
  ++a1[2];
  a1[3] ^= 0x1Cu;
  a1[4] ^= 0x6Au;
  a1[5] ^= 5u;
  a1[6] ^= 0x74u;
  a1[7] ^= 0x10u;
  a1[8] ^= a1[1];
  a1[9] ^= 0x4Bu;
  a1[10] ^= 0x1Du;
  a1[11] ^= 0x51u;
  ++*a1;
  ++a1[1];
  a1[2] ^= 0x3Bu;
  ++a1[3];
  ++a1[4];
  a1[5] ^= 0x37u;
  a1[6] ^= 0x41u;
  a1[7] ^= a1[4];
  a1[8] ^= a1[6];
  a1[9] ^= *a1;
  a1[10] ^= 0x11u;
  a1[11] ^= a1[2];
  *a1 ^= 0x21u;
  a1[1] ^= 9u;
  a1[2] ^= a1[1];
  a1[3] ^= 0x19u;
  ++a1[4];
  a1[5] ^= 0x37u;
  a1[6] ^= 0x6Bu;
  ++a1[7];
  a1[8] ^= 0xCu;
  ++a1[9];
  a1[10] ^= 0x28u;
  a1[11] ^= 0x5Eu;
  *a1 ^= 0x24u;
  a1[1] ^= *a1;
  a1[2] ^= 0x7Cu;
  a1[3] ^= 0x4Cu;
  a1[4] ^= 0x39u;
  a1[5] ^= 0x34u;
  a1[6] ^= 0x4Du;
  a1[7] ^= 0x55u;
  a1[8] ^= a1[3];
  a1[9] ^= 0x4Bu;
  a1[10] ^= 0x7Du;
  ++a1[11];
  *a1 ^= 0x1Au;
  a1[1] ^= 0x69u;
  a1[2] ^= 0x72u;
  ++a1[3];
  a1[4] ^= 0x7Cu;
  ++a1[5];
  a1[6] ^= 0x7Du;
  ++a1[7];
  a1[8] ^= 0x7Eu;
  a1[9] ^= 0x6Au;
  a1[10] ^= 0x11u;
  a1[11] ^= *a1;
  *a1 ^= 0x7Cu;
  a1[1] ^= 0x5Au;
  a1[2] ^= *a1;
  a1[3] ^= 0xFu;
  a1[4] ^= 0x5Bu;
  a1[5] ^= 0x50u;
  a1[6] ^= a1[4];
  a1[7] ^= 0x28u;
  a1[8] ^= 0xFu;
  a1[9] ^= 0x15u;
  a1[10] ^= 0x4Au;
  a1[11] ^= 0xAu;
  ++*a1;
  a1[1] ^= 0x11u;
  a1[2] ^= 0x39u;
  a1[3] ^= 0x65u;
  ++a1[4];
  a1[5] ^= 0x71u;
  a1[6] ^= 0x66u;
  a1[7] ^= a1[6];
  a1[8] ^= 0x4Au;
  a1[9] ^= 0x27u;
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x1Du;
  a1[1] ^= 0x68u;
  a1[2] ^= 0x6Eu;
  a1[3] ^= 0x28u;
  a1[4] ^= 6u;
  ++a1[5];
  a1[6] ^= 0x30u;
  ++a1[7];
  a1[8] ^= 0x5Du;
  a1[9] ^= a1[7];
  a1[10] ^= 0x61u;
  ++a1[11];
  *a1 ^= 0x15u;
  ++a1[1];
  a1[2] ^= 0x2Du;
  a1[3] ^= 0x24u;
  ++a1[4];
  a1[5] ^= 0x5Fu;
  a1[6] ^= a1[2];
  a1[7] ^= 0x23u;
  a1[8] ^= 0x10u;
  ++a1[9];
  a1[10] ^= 0x7Eu;
  a1[11] ^= *a1;
  *a1 ^= 0x32u;
  a1[1] ^= 2u;
  a1[2] ^= a1[1];
  a1[3] ^= a1[2];
  a1[4] ^= 0x39u;
  a1[5] ^= 0x59u;
  a1[6] ^= 0x69u;
  a1[7] ^= *a1;
  a1[8] ^= 0x32u;
  a1[9] ^= 0x17u;
  ++a1[10];
  a1[11] ^= 9u;
  *a1 ^= 0x6Du;
  a1[1] ^= *a1;
  a1[2] ^= a1[1];
  a1[3] ^= *a1;
  a1[4] ^= 0x6Du;
  a1[5] ^= 0x7Cu;
  a1[6] ^= 5u;
  ++a1[7];
  a1[8] ^= 0x23u;
  a1[9] ^= a1[4];
  a1[10] ^= 0x5Au;
  ++a1[11];
  *a1 ^= 0x29u;
  a1[1] ^= 0x13u;
  a1[2] ^= 0x5Fu;
  a1[3] ^= *a1;
  a1[4] ^= 0x11u;
  a1[5] ^= 0x32u;
  ++a1[6];
  a1[7] ^= 0x3Au;
  a1[8] ^= a1[1];
  a1[9] ^= 0x3Du;
  a1[10] ^= *a1;
  a1[11] ^= a1[4];
  *a1 ^= 0x2Du;
  a1[1] ^= *a1;
  a1[2] ^= a1[1];
  a1[3] ^= a1[2];
  a1[4] ^= 0x27u;
  a1[5] ^= 0x20u;
  a1[6] ^= 0x7Fu;
  a1[7] ^= 0x53u;
  a1[8] ^= a1[4];
  a1[9] ^= a1[1];
  a1[10] ^= 0x44u;
  a1[11] ^= 0x74u;
  *a1 ^= 0x2Eu;
  a1[1] ^= 7u;
  a1[2] ^= 3u;
  ++a1[3];
  a1[4] ^= 0x32u;
  a1[5] ^= 0x16u;
  a1[6] ^= 0x1Cu;
  a1[7] ^= 6u;
  ++a1[8];
  a1[9] ^= 0x5Du;
  a1[10] ^= 0x2Fu;
  a1[11] ^= 0x31u;
  *a1 ^= 0xFu;
  a1[1] ^= *a1;
  a1[2] ^= *a1;
  a1[3] ^= a1[2];
  a1[4] ^= 0x40u;
  a1[5] ^= 0x14u;
  a1[6] ^= 0x64u;
  a1[7] ^= 0x47u;
  a1[8] ^= a1[7];
  a1[9] ^= 0x57u;
  a1[10] ^= a1[2];
  a1[11] ^= 0x20u;
  *a1 ^= 0x59u;
  a1[1] ^= 0x74u;
  a1[2] ^= *a1;
  a1[3] ^= 0x7Du;
  a1[4] ^= 0x23u;
  a1[5] ^= 0x25u;
  a1[6] ^= 0x11u;
  a1[7] ^= a1[1];
  a1[8] ^= 0x53u;
  a1[9] ^= 0x49u;
  a1[10] ^= 0x78u;
  a1[11] ^= 0x68u;
  *a1 ^= 0x4Du;
  a1[1] ^= 0x70u;
  a1[2] ^= 4u;
  a1[3] ^= 0x2Eu;
  a1[4] ^= 0x35u;
  a1[5] ^= 0x78u;
  a1[6] ^= 0x53u;
  a1[7] ^= 0x66u;
  a1[8] ^= 0xCu;
  a1[9] ^= a1[2];
  a1[10] ^= 0x1Bu;
  ++a1[11];
  *a1 ^= 2u;
  a1[1] ^= 0x2Du;
  a1[2] ^= a1[1];
  a1[3] ^= 0x54u;
  a1[4] ^= 7u;
  ++a1[5];
  ++a1[6];
  a1[7] ^= 2u;
  a1[8] ^= 0x47u;
  a1[9] ^= a1[5];
  a1[10] ^= 0x6Eu;
  a1[11] ^= a1[2];
  *a1 ^= 6u;
  a1[1] ^= 0x4Cu;
  a1[2] ^= *a1;
  a1[3] ^= *a1;
  a1[4] ^= 0x76u;
  a1[5] ^= a1[3];
  a1[6] ^= a1[3];
  a1[7] ^= a1[2];
  a1[8] ^= 0x24u;
  ++a1[9];
  a1[10] ^= 0x7Cu;
  a1[11] ^= 0x20u;
  *a1 ^= 2u;
  a1[1] ^= *a1;
  a1[2] ^= 0x58u;
  ++a1[3];
  a1[4] ^= 0x5Cu;
  a1[5] ^= a1[2];
  a1[6] ^= 0x6Au;
  a1[7] ^= 9u;
  a1[8] ^= *a1;
  a1[9] ^= 0x55u;
  a1[10] ^= 0x57u;
  a1[11] ^= 0x15u;
  *a1 ^= 0x16u;
  a1[1] ^= 0x7Cu;
  a1[2] ^= 0x7Du;
  a1[3] ^= a1[2];
  a1[4] ^= a1[2];
  a1[5] ^= 0x6Cu;
  a1[6] ^= 0x31u;
  a1[7] ^= 0x4Cu;
  ++a1[8];
  a1[9] ^= 0x45u;
  a1[10] ^= 0x5Eu;
  a1[11] ^= 0x6Bu;
  *a1 ^= 0xEu;
  ++a1[1];
  a1[2] ^= 0x59u;
  a1[3] ^= *a1;
  a1[4] ^= 0xDu;
  a1[5] ^= 0x57u;
  a1[6] ^= 0x61u;
  a1[7] ^= 0x58u;
  a1[8] ^= 0x27u;
  a1[9] ^= 0x71u;
  a1[10] ^= 0x3Au;
  a1[11] ^= a1[3];
  *a1 ^= 0x7Fu;
  a1[1] ^= *a1;
  a1[2] ^= 0x3Eu;
  a1[3] ^= 0x3Au;
  a1[4] ^= a1[1];
  a1[5] ^= 0x1Fu;
  a1[6] ^= 0x28u;
  a1[7] ^= 0x65u;
  a1[8] ^= 0x40u;
  a1[9] ^= a1[8];
  a1[10] ^= 0x75u;
  a1[11] ^= 0x15u;
  *a1 ^= 0x2Au;
  a1[1] ^= 5u;
  ++a1[2];
  ++a1[3];
  a1[4] ^= 0x2Du;
  a1[5] ^= 0x2Au;
  ++a1[6];
  a1[7] ^= 0x40u;
  a1[8] ^= 0x4Bu;
  a1[9] ^= a1[5];
  a1[10] ^= a1[9];
  a1[11] ^= 0x47u;
  *a1 ^= 0x3Au;
  a1[1] ^= 0x4Eu;
  a1[2] ^= *a1;
  a1[3] ^= 8u;
  ++a1[4];
  ++a1[5];
  a1[6] ^= 0x2Du;
  a1[7] ^= 0x7Fu;
  a1[8] ^= 4u;
  ++a1[9];
  ++a1[10];
  a1[11] ^= 0x7Fu;
  ++*a1;
  ++a1[1];
  a1[2] ^= 0x28u;
  a1[3] ^= 0x56u;
  a1[4] ^= 0x13u;
  a1[5] ^= 0x42u;
  a1[6] ^= 0x78u;
  a1[7] ^= a1[5];
  a1[8] ^= 0x23u;
  a1[9] ^= 0x52u;
  ++a1[10];
  a1[11] ^= 6u;
  *a1 ^= 0x47u;
  ++a1[1];
  a1[2] ^= 0x43u;
  a1[3] ^= 0x1Eu;
  a1[4] ^= a1[1];
  a1[5] ^= 0x7Bu;
  a1[6] ^= 0x55u;
  a1[7] ^= 0x48u;
  a1[8] ^= 0x4Eu;
  ++a1[9];
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x35u;
  a1[1] ^= 0x38u;
  a1[2] ^= 0x4Au;
  a1[3] ^= 0x6Fu;
  ++a1[4];
  ++a1[5];
  a1[6] ^= 0x4Du;
  a1[7] ^= 0x14u;
  a1[8] ^= 0x40u;
  a1[9] ^= 0x62u;
  a1[10] ^= 0x7Bu;
  a1[11] ^= 4u;
  *a1 ^= 0x3Cu;
  a1[1] ^= *a1;
  a1[2] ^= 0x75u;
  a1[3] ^= 0x24u;
  ++a1[4];
  a1[5] ^= 0x6Fu;
  a1[6] ^= 0x6Cu;
  a1[7] ^= 0x3Eu;
  a1[8] ^= 0x5Eu;
  a1[9] ^= 0x22u;
  ++a1[10];
  a1[11] ^= 0x79u;
  *a1 ^= 0x7Du;
  a1[1] ^= 0x48u;
  ++a1[2];
  a1[3] ^= 0x4Au;
  a1[4] ^= a1[2];
  a1[5] ^= 0xFu;
  a1[6] ^= 0xBu;
  a1[7] ^= 0x16u;
  a1[8] ^= 0x56u;
  a1[9] ^= a1[1];
  a1[10] ^= 0x42u;
  a1[11] ^= 0x16u;
  *a1 ^= 0x7Du;
  a1[1] ^= 0x4Du;
  a1[2] ^= 0x45u;
  a1[3] ^= *a1;
  a1[4] ^= 0x59u;
  ++a1[5];
  a1[6] ^= 0x77u;
  ++a1[7];
  a1[8] ^= 0x19u;
  a1[9] ^= 0x74u;
  a1[10] ^= 0x66u;
  a1[11] ^= 0x3Fu;
  ++*a1;
  a1[1] ^= 0x68u;
  a1[2] ^= 0x4Bu;
  ++a1[3];
  a1[4] ^= 0x30u;
  a1[5] ^= a1[2];
  a1[6] ^= a1[4];
  a1[7] ^= 0x52u;
  a1[8] ^= 0x4Fu;
  a1[9] ^= 0x4Fu;
  a1[10] ^= 0x75u;
  a1[11] ^= 0x4Au;
  *a1 ^= 0x2Cu;
  a1[1] ^= 0x3Eu;
  ++a1[2];
  a1[3] ^= 0x11u;
  a1[4] ^= 0x41u;
  a1[5] ^= 0x4Du;
  a1[6] ^= 2u;
  a1[7] ^= 0x7Du;
  a1[8] ^= a1[4];
  a1[9] ^= 0x79u;
  ++a1[10];
  a1[11] ^= 0x48u;
  *a1 ^= 0x6Du;
  a1[1] ^= 0x68u;
  ++a1[2];
  a1[3] ^= 0x65u;
  a1[4] ^= *a1;
  a1[5] ^= 0x33u;
  a1[6] ^= 0x49u;
  ++a1[7];
  a1[8] ^= 0x4Fu;
  a1[9] ^= 0x38u;
  ++a1[10];
  a1[11] ^= 0x58u;
  *a1 ^= 0x45u;
  ++a1[1];
  a1[2] ^= 0x3Fu;
  a1[3] ^= 0x3Fu;
  ++a1[4];
  a1[5] ^= 0x74u;
  a1[6] ^= 0x6Eu;
  a1[7] ^= 0x1Fu;
  a1[8] ^= 0x7Cu;
  ++a1[9];
  a1[10] ^= 0x21u;
  a1[11] ^= 0x4Bu;
  ++*a1;
  a1[1] ^= 0x47u;
  a1[2] ^= 0x2Bu;
  ++a1[3];
  a1[4] ^= 0x6Eu;
  ++a1[5];
  a1[6] ^= 0x23u;
  a1[7] ^= 0x75u;
  a1[8] ^= 0x6Cu;
  a1[9] ^= 0x69u;
  a1[10] ^= 0x3Fu;
  a1[11] ^= 0x41u;
  *a1 ^= 0x52u;
  a1[1] ^= *a1;
  a1[2] ^= 0x61u;
  ++a1[3];
  ++a1[4];
  a1[5] ^= 0x3Cu;
  ++a1[6];
  a1[7] ^= 0x73u;
  a1[8] ^= 0x64u;
  ++a1[9];
  a1[10] ^= 0x36u;
  a1[11] ^= 0x62u;
  *a1 ^= 0x7Eu;
  a1[1] ^= 0x11u;
  a1[2] ^= a1[1];
  a1[3] ^= 0x53u;
  a1[4] ^= a1[2];
  a1[5] ^= 0xFu;
  a1[6] ^= 0x23u;
  a1[7] ^= *a1;
  a1[8] ^= 0x50u;
  a1[9] ^= 0x54u;
  a1[10] ^= 0x78u;
  a1[11] ^= a1[9];
  *a1 ^= 0x4Fu;
  a1[1] ^= 0x13u;
  a1[2] ^= 0x78u;
  a1[3] ^= 0x1Au;
  a1[4] ^= 0x70u;
  a1[5] ^= 0xCu;
  ++a1[6];
  a1[7] ^= 0x4Bu;
  a1[8] ^= 0x2Eu;
  a1[9] ^= 0x26u;
  a1[10] ^= 0x67u;
  a1[11] ^= 0xAu;
  *a1 ^= 0x7Bu;
  a1[1] ^= 0x11u;
  a1[2] ^= 0x47u;
  ++a1[3];
  a1[4] ^= 0x35u;
  a1[5] ^= 0x7Cu;
  a1[6] ^= 0xCu;
  a1[7] ^= 0x36u;
  ++a1[8];
  a1[9] ^= 0x49u;
  a1[10] ^= 0x38u;
  ++a1[11];
  *a1 ^= 0x37u;
  a1[1] ^= 0x79u;
  a1[2] ^= 0x64u;
  a1[3] ^= 0x59u;
  ++a1[4];
  a1[5] ^= 0x40u;
  a1[6] ^= 0x22u;
  ++a1[7];
  a1[8] ^= 0x2Au;
  ++a1[9];
  a1[10] ^= 0xCu;
  a1[11] ^= 0x4Cu;
  *a1 ^= 0x20u;
  ++a1[1];
  ++a1[2];
  ++a1[3];
  a1[4] ^= 0x4Cu;
  ++a1[5];
  a1[6] ^= 0x21u;
  a1[7] ^= 0xCu;
  a1[8] ^= 0x33u;
  a1[9] ^= 0x5Du;
  a1[10] ^= 0x6Eu;
  a1[11] ^= 0x1Du;
  *a1 ^= 0xBu;
  a1[1] ^= 0x1Cu;
  a1[2] ^= 0x6Du;
  a1[3] ^= 0xAu;
  a1[4] ^= 0x5Cu;
  a1[5] ^= 0x12u;
  ++a1[6];
  a1[7] ^= 0x20u;
  a1[8] ^= 0x5Cu;
  a1[9] ^= 0x36u;
  a1[10] ^= 0x68u;
  a1[11] ^= 6u;
  *a1 ^= 0x1Bu;
  a1[1] ^= 0x67u;
  a1[2] ^= 6u;
  ++a1[3];
  a1[4] ^= 0x58u;
  a1[5] ^= a1[1];
  a1[6] ^= 0x74u;
  ++a1[7];
  a1[8] ^= 0x79u;
  a1[9] ^= 0x45u;
  ++a1[10];
  a1[11] ^= 0xEu;
  *a1 ^= 0x1Bu;
  a1[1] ^= 0x55u;
  a1[2] ^= 0x7Bu;
  a1[3] ^= 0x5Bu;
  a1[4] ^= *a1;
  a1[5] ^= 0x38u;
  a1[6] ^= a1[2];
  a1[7] ^= 6u;
  a1[8] ^= 0x7Bu;
  a1[9] ^= 0x16u;
  a1[10] ^= 5u;
  ++a1[11];
  *a1 ^= 0x1Cu;
  a1[1] ^= 0x5Fu;
  a1[2] ^= 0x1Fu;
  a1[3] ^= 0x2Du;
  a1[4] ^= 0xDu;
  a1[5] ^= 0x6Au;
  a1[6] ^= a1[4];
  a1[7] ^= 0x64u;
  a1[8] ^= 0xBu;
  a1[9] ^= 0x7Bu;
  a1[10] ^= 0x7Bu;
  a1[11] ^= 0x28u;
  *a1 ^= 0x64u;
  ++a1[1];
  a1[2] ^= 0x12u;
  a1[3] ^= 0x51u;
  a1[4] ^= 0x10u;
  a1[5] ^= 0x40u;
  a1[6] ^= 0x10u;
  a1[7] ^= a1[3];
  a1[8] ^= 0x51u;
  a1[9] ^= 0x5Bu;
  a1[10] ^= 0x7Au;
  a1[11] ^= 0x61u;
  *a1 ^= 0x78u;
  a1[1] ^= *a1;
  a1[2] ^= 0x56u;
  a1[3] ^= 0x59u;
  a1[4] ^= 8u;
  a1[5] ^= 0x31u;
  a1[6] ^= 0x37u;
  a1[7] ^= 0x25u;
  a1[8] ^= 0x1Cu;
  ++a1[9];
  a1[10] ^= 0x71u;
  a1[11] ^= 0x61u;
  *a1 ^= 0x76u;
  a1[1] ^= 0x6Du;
  a1[2] ^= 0x65u;
  ++a1[3];
  a1[4] ^= 3u;
  a1[5] ^= 0x1Cu;
  a1[6] ^= 0x6Cu;
  ++a1[7];
  a1[8] ^= 9u;
  a1[9] ^= 0x29u;
  ++a1[10];
  a1[11] ^= 0x16u;
  *a1 ^= 0x63u;
  a1[1] ^= 0x35u;
  a1[2] ^= 0x79u;
  a1[3] ^= 0x1Cu;
  a1[4] ^= a1[2];
  a1[5] ^= a1[1];
  a1[6] ^= 0x4Fu;
  a1[7] ^= 0x75u;
  a1[8] ^= 0x6Du;
  a1[9] ^= 3u;
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x24u;
  a1[1] ^= 0x5Cu;
  ++a1[2];
  a1[3] ^= 4u;
  ++a1[4];
  a1[5] ^= 0xEu;
  a1[6] ^= 0x69u;
  a1[7] ^= 0x18u;
  ++a1[8];
  ++a1[9];
  a1[10] ^= 0x4Fu;
  a1[11] ^= 0x3Cu;
  *a1 ^= 0x38u;
  a1[1] ^= 0x55u;
  a1[2] ^= 0x49u;
  a1[3] ^= 0x71u;
  a1[4] ^= 0x78u;
  ++a1[5];
  a1[6] ^= 0x78u;
  a1[7] ^= 0xFu;
  a1[8] ^= 0x5Bu;
  a1[9] ^= 0x77u;
  a1[10] ^= 0x6Au;
  a1[11] ^= 0x4Bu;
  ++*a1;
  a1[1] ^= 0x7Fu;
  a1[2] ^= 0x62u;
  a1[3] ^= 0x21u;
  a1[4] ^= 0x44u;
  a1[5] ^= 0x53u;
  a1[6] ^= 0x32u;
  a1[7] ^= 0x63u;
  a1[8] ^= 0x42u;
  a1[9] ^= 0x72u;
  a1[10] ^= a1[5];
  a1[11] ^= 0x3Fu;
  *a1 ^= 0x4Bu;
  ++a1[1];
  a1[2] ^= 0x43u;
  ++a1[3];
  a1[4] ^= 0x4Fu;
  a1[5] ^= 0x68u;
  a1[6] ^= a1[2];
  a1[7] ^= 0xBu;
  a1[8] ^= 3u;
  a1[9] ^= 0x27u;
  a1[10] ^= 0x14u;
  a1[11] ^= 0x57u;
  ++*a1;
  a1[1] ^= 0x21u;
  ++a1[2];
  a1[3] ^= 0x79u;
  a1[4] ^= 0x22u;
  a1[5] ^= 0x54u;
  ++a1[6];
  a1[7] ^= 4u;
  a1[8] ^= 0x4Cu;
  a1[9] ^= a1[1];
  a1[10] ^= 0x2Au;
  a1[11] ^= 0x3Au;
  *a1 ^= 0x60u;
  a1[1] ^= 0x19u;
  a1[2] ^= 0x2Du;
  a1[3] ^= 0x67u;
  a1[4] ^= 0x6Bu;
  a1[5] ^= *a1;
  a1[6] ^= 0x7Bu;
  a1[7] ^= 0x71u;
  a1[8] ^= 0x37u;
  a1[9] ^= 0x21u;
  a1[10] ^= 0x6Eu;
  a1[11] ^= 0xDu;
  *a1 ^= 0x6Cu;
  a1[1] ^= 0x50u;
  a1[2] ^= a1[1];
  a1[3] ^= a1[2];
  a1[4] ^= 0x57u;
  a1[5] ^= 0x51u;
  a1[6] ^= 0x7Fu;
  a1[7] ^= 0x4Au;
  a1[8] ^= 0x3Bu;
  a1[9] ^= 0x47u;
  a1[10] ^= 0x71u;
  a1[11] ^= a1[2];
  *a1 ^= 0x1Au;
  a1[1] ^= *a1;
  a1[2] ^= 7u;
  a1[3] ^= 0x1Bu;
  a1[4] ^= 0x24u;
  ++a1[5];
  a1[6] ^= 0x4Cu;
  a1[7] ^= 0x74u;
  a1[8] ^= 0x71u;
  ++a1[9];
  a1[10] ^= 0x4Du;
  ++a1[11];
  *a1 ^= 0x69u;
  a1[1] ^= 0x75u;
  a1[2] ^= 0x18u;
  a1[3] ^= 0x50u;
  a1[4] ^= 0x1Cu;
  a1[5] ^= a1[3];
  a1[6] ^= 0x1Eu;
  a1[7] ^= 0x38u;
  a1[8] ^= 0x13u;
  a1[9] ^= 0x41u;
  ++a1[10];
  ++a1[11];
  *a1 ^= 9u;
  a1[1] ^= *a1;
  a1[2] ^= 0x28u;
  a1[3] ^= a1[1];
  a1[4] ^= 0x21u;
  a1[5] ^= 0x4Du;
  a1[6] ^= 0x4Au;
  a1[7] ^= 0x5Eu;
  a1[8] ^= a1[2];
  a1[9] ^= 0x1Bu;
  a1[10] ^= *a1;
  a1[11] ^= a1[7];
  *a1 ^= 0x37u;
  ++a1[1];
  a1[2] ^= 0x10u;
  a1[3] ^= 0x41u;
  ++a1[4];
  a1[5] ^= 8u;
  a1[6] ^= 0xDu;
  a1[7] ^= *a1;
  a1[8] ^= a1[3];
  a1[9] ^= 0x21u;
  ++a1[10];
  a1[11] ^= 0x75u;
  *a1 ^= 0x5Au;
  a1[1] ^= 0x6Fu;
  a1[2] ^= 3u;
  a1[3] ^= a1[1];
  a1[4] ^= 0x5Du;
  a1[5] ^= 0x73u;
  a1[6] ^= 0x54u;
  a1[7] ^= a1[6];
  a1[8] ^= 0x46u;
  a1[9] ^= 0x6Au;
  a1[10] ^= 0x6Eu;
  a1[11] ^= 0x24u;
  ++*a1;
  ++a1[1];
  a1[2] ^= 0x38u;
  ++a1[3];
  ++a1[4];
  a1[5] ^= 0x54u;
  a1[6] ^= a1[5];
  a1[7] ^= 0x6Du;
  a1[8] ^= 0x3Au;
  a1[9] ^= 0x17u;
  a1[10] ^= 0x43u;
  ++a1[11];
  *a1 ^= 0xAu;
  a1[1] ^= 0x58u;
  ++a1[2];
  ++a1[3];
  a1[4] ^= 0x4Cu;
  a1[5] ^= 0x7Cu;
  a1[6] ^= 0x6Cu;
  a1[7] ^= 0x5Bu;
  a1[8] ^= 0x21u;
  a1[9] ^= 0x57u;
  a1[10] ^= 0x3Bu;
  a1[11] ^= a1[5];
  *a1 ^= 1u;
  ++a1[1];
  a1[2] ^= 0x58u;
  a1[3] ^= *a1;
  a1[4] ^= 0x3Eu;
  ++a1[5];
  a1[6] ^= 0x43u;
  a1[7] ^= 0x59u;
  a1[8] ^= 0x37u;
  ++a1[9];
  a1[10] ^= 0x20u;
  a1[11] ^= a1[1];
  *a1 ^= 0x5Fu;
  a1[1] ^= 0x65u;
  a1[2] ^= 0x6Cu;
  ++a1[3];
  a1[4] ^= 0x4Eu;
  a1[5] ^= 0x4Cu;
  a1[6] ^= 0x2Du;
  a1[7] ^= 0x11u;
  a1[8] ^= 0x6Du;
  a1[9] ^= 0x61u;
  a1[10] ^= 0x4Fu;
  ++a1[11];
  *a1 ^= 0x7Du;
  a1[1] ^= 0x1Du;
  ++a1[2];
  a1[3] ^= 0x1Au;
  a1[4] ^= *a1;
  a1[5] ^= 0x59u;
  a1[6] ^= a1[3];
  a1[7] ^= 0x15u;
  a1[8] ^= *a1;
  a1[9] ^= 0x14u;
  a1[10] ^= 0x35u;
  a1[11] ^= 0x7Du;
  *a1 ^= 0x2Bu;
  a1[1] ^= 0x1Fu;
  a1[2] ^= 2u;
  a1[3] ^= 0x1Du;
  a1[4] ^= 0x66u;
  a1[5] ^= 0x57u;
  ++a1[6];
  a1[7] ^= 0x79u;
  a1[8] ^= 0x1Cu;
  a1[9] ^= 0x42u;
  a1[10] ^= 0x50u;
  a1[11] ^= 0x47u;
  *a1 ^= 0x73u;
  a1[1] ^= 0x27u;
  ++a1[2];
  a1[3] ^= 0x3Au;
  a1[4] ^= 0x6Fu;
  a1[5] ^= 7u;
  a1[6] ^= 0x15u;
  a1[7] ^= 0x21u;
  a1[8] ^= 0x69u;
  a1[9] ^= 0x5Bu;
  a1[10] ^= 0x71u;
  a1[11] ^= 0x38u;
  *a1 ^= 0x5Au;
  a1[1] ^= 0x1Cu;
  a1[2] ^= 0x20u;
  a1[3] ^= 0x4Cu;
  a1[4] ^= 0x32u;
  a1[5] ^= 0x77u;
  a1[6] ^= 0x10u;
  a1[7] ^= 0x5Au;
  a1[8] ^= 0x5Au;
  a1[9] ^= 0x47u;
  a1[10] ^= 0x4Cu;
  a1[11] ^= 0xAu;
  *a1 ^= 0x44u;
  a1[1] ^= 0x14u;
  a1[2] ^= 0x49u;
  a1[3] ^= 0x73u;
  a1[4] ^= 0x3Au;
  a1[5] ^= a1[1];
  a1[6] ^= 0x17u;
  a1[7] ^= 0x6Bu;
  a1[8] ^= 0x31u;
  a1[9] ^= 0x2Eu;
  a1[10] ^= a1[2];
  a1[11] ^= 0x11u;
  ++*a1;
  a1[1] ^= 0x17u;
  ++a1[2];
  a1[3] ^= 0x22u;
  a1[4] ^= 4u;
  a1[5] ^= 0xFu;
  a1[6] ^= 0x4Eu;
  a1[7] ^= a1[3];
  a1[8] ^= 0x59u;
  a1[9] ^= *a1;
  a1[10] ^= 0x36u;
  a1[11] ^= 5u;
  *a1 ^= 0x3Au;
  a1[1] ^= *a1;
  a1[2] ^= a1[1];
  a1[3] ^= 0x1Au;
  a1[4] ^= *a1;
  a1[5] ^= 0x4Cu;
  ++a1[6];
  a1[7] ^= 0x72u;
  a1[8] ^= a1[6];
  a1[9] ^= 0x78u;
  a1[10] ^= 1u;
  a1[11] ^= a1[6];
  *a1 ^= 0x46u;
  a1[1] ^= 0x6Bu;
  ++a1[2];
  ++a1[3];
  a1[4] ^= 0x6Du;
  a1[5] ^= *a1;
  a1[6] ^= a1[1];
  a1[7] ^= a1[3];
  a1[8] ^= a1[5];
  a1[9] ^= 0x3Eu;
  a1[10] ^= 0x51u;
  ++a1[11];
  *a1 ^= 0x77u;
  a1[1] ^= 0x7Fu;
  a1[2] ^= 0x15u;
  a1[3] ^= 0x16u;
  a1[4] ^= a1[2];
  a1[5] ^= 0x60u;
  a1[6] ^= 0x63u;
  a1[7] ^= 2u;
  a1[8] ^= 0x1Eu;
  ++a1[9];
  a1[10] ^= 0x59u;
  a1[11] ^= 0x40u;
  *a1 ^= 0x7Fu;
  a1[1] ^= 0x31u;
  ++a1[2];
  a1[3] ^= 0x5Eu;
  a1[4] ^= a1[2];
  a1[5] ^= 0x1Du;
  ++a1[6];
  ++a1[7];
  ++a1[8];
  a1[9] ^= 0x7Du;
  a1[10] ^= 0x57u;
  ++a1[11];
  ++*a1;
  a1[1] ^= 0x36u;
  a1[2] ^= 0x16u;
  a1[3] ^= 0x6Eu;
  ++a1[4];
  a1[5] ^= 0x57u;
  a1[6] ^= 0x7Bu;
  ++a1[7];
  a1[8] ^= 0x1Bu;
  a1[9] ^= 0x4Eu;
  ++a1[10];
  a1[11] ^= 0x58u;
  *a1 ^= 0x1Au;
  ++a1[1];
  a1[2] ^= 0x19u;
  a1[3] ^= 0x60u;
  a1[4] ^= 0x3Cu;
  a1[5] ^= 0xBu;
  a1[6] ^= 8u;
  a1[7] ^= 0x38u;
  a1[8] ^= *a1;
  a1[9] ^= a1[7];
  a1[10] ^= 0x6Cu;
  a1[11] ^= 0x24u;
  *a1 ^= 5u;
  a1[1] ^= 0x2Cu;
  a1[2] ^= 0x5Fu;
  a1[3] ^= 0x2Fu;
  a1[4] ^= a1[2];
  a1[5] ^= 0x43u;
  ++a1[6];
  a1[7] ^= 0x6Fu;
  a1[8] ^= a1[6];
  a1[9] ^= 0x4Au;
  a1[10] ^= a1[3];
  a1[11] ^= a1[4];
  *a1 ^= 4u;
  a1[1] ^= 0x4Eu;
  a1[2] ^= 0x37u;
  a1[3] ^= a1[2];
  a1[4] ^= 0x67u;
  a1[5] ^= 0x61u;
  a1[6] ^= 0x21u;
  a1[7] ^= 0x10u;
  a1[8] ^= 0x26u;
  a1[9] ^= 0x21u;
  a1[10] ^= 0x20u;
  ++a1[11];
  *a1 ^= 0x74u;
  a1[1] ^= 0x35u;
  a1[2] ^= 0x3Eu;
  ++a1[3];
  a1[4] ^= 0xEu;
  a1[5] ^= 0x59u;
  a1[6] ^= 0x72u;
  a1[7] ^= 0x24u;
  a1[8] ^= 0x39u;
  a1[9] ^= 0x2Au;
  a1[10] ^= 0x1Fu;
  a1[11] ^= 0x75u;
  *a1 ^= 0x5Bu;
  a1[1] ^= 0x62u;
  ++a1[2];
  a1[3] ^= 1u;
  a1[4] ^= a1[3];
  a1[5] ^= 0x2Fu;
  ++a1[6];
  ++a1[7];
  a1[8] ^= 0x65u;
  a1[9] ^= 0x3Bu;
  ++a1[10];
  a1[11] ^= 4u;
  *a1 ^= 0x22u;
  a1[1] ^= 0x5Bu;
  ++a1[2];
  a1[3] ^= 0x2Cu;
  a1[4] ^= 0x48u;
  a1[5] ^= 0x6Bu;
  a1[6] ^= *a1;
  a1[7] ^= 1u;
  a1[8] ^= 0x2Fu;
  a1[9] ^= 0x12u;
  a1[10] ^= 0x43u;
  a1[11] ^= 0x38u;
  *a1 ^= 0x3Cu;
  a1[1] ^= *a1;
  a1[2] ^= 0x2Cu;
  a1[3] ^= 0x79u;
  ++a1[4];
  a1[5] ^= 0x63u;
  a1[6] ^= 0x31u;
  a1[7] ^= 0x3Du;
  a1[8] ^= 0x28u;
  a1[9] ^= 9u;
  ++a1[10];
  a1[11] ^= 0x79u;
  *a1 ^= 0x6Du;
  a1[1] ^= 0x64u;
  a1[2] ^= 0x55u;
  a1[3] ^= *a1;
  a1[4] ^= 0x16u;
  a1[5] ^= 0x13u;
  a1[6] ^= 0x7Au;
  a1[7] ^= 0x4Bu;
  a1[8] ^= a1[7];
  a1[9] ^= a1[4];
  a1[10] ^= 0x4Eu;
  a1[11] ^= 0x29u;
  *a1 ^= 0x25u;
  ++a1[1];
  a1[2] ^= 0x4Eu;
  a1[3] ^= 0x60u;
  a1[4] ^= a1[1];
  a1[5] ^= a1[3];
  a1[6] ^= 0x42u;
  a1[7] ^= 0x27u;
  ++a1[8];
  a1[9] ^= 8u;
  a1[10] ^= 0x12u;
  a1[11] ^= 0x12u;
  ++*a1;
  a1[1] ^= 0x41u;
  ++a1[2];
  a1[3] ^= 0x63u;
  a1[4] ^= 0x4Fu;
  a1[5] ^= 0x63u;
  a1[6] ^= 0x79u;
  a1[7] ^= 0x21u;
  a1[8] ^= *a1;
  a1[9] ^= 0x79u;
  a1[10] ^= a1[6];
  a1[11] ^= 8u;
  *a1 ^= 0x7Au;
  a1[1] ^= 0x6Du;
  a1[2] ^= *a1;
  a1[3] ^= 0x5Eu;
  a1[4] ^= 0x50u;
  a1[5] ^= 0x67u;
  a1[6] ^= 0x7Bu;
  a1[7] ^= 0xAu;
  a1[8] ^= 0x3Du;
  ++a1[9];
  a1[10] ^= 0x53u;
  a1[11] ^= 0x61u;
  *a1 ^= 0x72u;
  a1[1] ^= 0x1Cu;
  a1[2] ^= 0x79u;
  a1[3] ^= 0xCu;
  a1[4] ^= 4u;
  a1[5] ^= 0x10u;
  a1[6] ^= 0x3Cu;
  a1[7] ^= 0x50u;
  a1[8] ^= 0x65u;
  a1[9] ^= 0x66u;
  a1[10] ^= 0x2Eu;
  a1[11] ^= 0x23u;
  *a1 ^= 0x22u;
  a1[1] ^= 0x4Cu;
  a1[2] ^= 0x5Fu;
  a1[3] ^= 0x45u;
  ++a1[4];
  a1[5] ^= 0x55u;
  a1[6] ^= 0xCu;
  a1[7] ^= 0x57u;
  a1[8] ^= 0x4Eu;
  a1[9] ^= 0x43u;
  a1[10] ^= 0x32u;
  a1[11] ^= a1[7];
  *a1 ^= 0x5Eu;
  a1[1] ^= 0x52u;
  ++a1[2];
  a1[3] ^= 0x68u;
  a1[4] ^= a1[3];
  a1[5] ^= 7u;
  a1[6] ^= 0x69u;
  a1[7] ^= 0x6Au;
  a1[8] ^= 0x1Cu;
  a1[9] ^= 0x2Eu;
  a1[10] ^= 0x79u;
  a1[11] ^= a1[8];
  *a1 ^= 0x45u;
  a1[1] ^= 0x30u;
  a1[2] ^= 0x27u;
  a1[3] ^= 0x2Eu;
  a1[4] ^= *a1;
  a1[5] ^= 0x41u;
  a1[6] ^= 0x39u;
  a1[7] ^= 0x51u;
  ++a1[8];
  a1[9] ^= 0x2Cu;
  a1[10] ^= 0x38u;
  ++a1[11];
  *a1 ^= 0x1Cu;
  a1[1] ^= 0x2Bu;
  a1[2] ^= 0x11u;
  a1[3] ^= 0xEu;
  ++a1[4];
  a1[5] ^= 0x72u;
  a1[6] ^= 0x65u;
  a1[7] ^= 0xFu;
  a1[8] ^= 0x63u;
  a1[9] ^= 0x5Bu;
  a1[10] ^= 0x4Eu;
  a1[11] ^= 0x30u;
  *a1 ^= 0x15u;
  a1[1] ^= 7u;
  a1[2] ^= a1[1];
  a1[3] ^= 0x6Bu;
  ++a1[4];
  a1[5] ^= 0x1Du;
  a1[6] ^= 0x77u;
  a1[7] ^= a1[5];
  a1[8] ^= a1[3];
  a1[9] ^= 0x36u;
  a1[10] ^= 0x29u;
  a1[11] ^= 0x60u;
  *a1 ^= 4u;
  a1[1] ^= *a1;
  a1[2] ^= 0x2Fu;
  a1[3] ^= 0x32u;
  a1[4] ^= *a1;
  a1[5] ^= 0xCu;
  a1[6] ^= 0x73u;
  a1[7] ^= 0x56u;
  a1[8] ^= 0x1Bu;
  a1[9] ^= 6u;
  a1[10] ^= 0x75u;
  a1[11] ^= 0x2Du;
  *a1 ^= 0x40u;
  a1[1] ^= 0x4Cu;
  a1[2] ^= 0x35u;
  ++a1[3];
  a1[4] ^= 0x52u;
  a1[5] ^= 0x53u;
  a1[6] ^= 0x6Au;
  a1[7] ^= 0x11u;
  a1[8] ^= a1[2];
  a1[9] ^= 0x39u;
  a1[10] ^= 0x4Eu;
  a1[11] ^= 0x17u;
  *a1 ^= 8u;
  a1[1] ^= 0x47u;
  a1[2] ^= 4u;
  a1[3] ^= 0x5Cu;
  a1[4] ^= 0x69u;
  a1[5] ^= *a1;
  a1[6] ^= 0x3Fu;
  a1[7] ^= 0x14u;
  a1[8] ^= 1u;
  a1[9] ^= 0x77u;
  a1[10] ^= 0x56u;
  a1[11] ^= 0x68u;
  *a1 ^= 0x58u;
  ++a1[1];
  ++a1[2];
  a1[3] ^= 0x70u;
  a1[4] ^= 0x1Cu;
  ++a1[5];
  a1[6] ^= 0xFu;
  ++a1[7];
  a1[8] ^= 0x62u;
  a1[9] ^= 0x75u;
  a1[10] ^= a1[2];
  a1[11] ^= 0x1Fu;
  *a1 ^= 5u;
  a1[1] ^= 8u;
  a1[2] ^= 0x52u;
  a1[3] ^= 0x6Eu;
  a1[4] ^= 0x42u;
  ++a1[5];
  a1[6] ^= 0x2Au;
  a1[7] ^= 0x4Eu;
  a1[8] ^= 0x54u;
  ++a1[9];
  a1[10] ^= 0x6Eu;
  a1[11] ^= 0x35u;
  *a1 ^= 0x35u;
  a1[1] ^= *a1;
  a1[2] ^= 0x65u;
  a1[3] ^= 0x42u;
  a1[4] ^= 6u;
  a1[5] ^= 0x58u;
  a1[6] ^= 0x7Du;
  a1[7] ^= *a1;
  a1[8] ^= 5u;
  a1[9] ^= a1[5];
  a1[10] ^= 0x12u;
  a1[11] ^= a1[6];
  *a1 ^= 0xFu;
  a1[1] ^= 0x51u;
  ++a1[2];
  a1[3] ^= 0x70u;
  a1[4] ^= 0x4Bu;
  ++a1[5];
  a1[6] ^= 0x2Fu;
  ++a1[7];
  a1[8] ^= 0x59u;
  a1[9] ^= a1[5];
  a1[10] ^= 0x52u;
  a1[11] ^= 0x18u;
  *a1 ^= 0x17u;
  a1[1] ^= 0x28u;
  a1[2] ^= 0x7Cu;
  a1[3] ^= a1[1];
  a1[4] ^= 0x15u;
  ++a1[5];
  a1[6] ^= 0x37u;
  a1[7] ^= 0x44u;
  a1[8] ^= 0x70u;
  a1[9] ^= a1[4];
  a1[10] ^= 0x45u;
  a1[11] ^= a1[4];
  *a1 ^= 0x63u;
  a1[1] ^= 0x29u;
  ++a1[2];
  a1[3] ^= 0x54u;
  a1[4] ^= 0x1Cu;
  a1[5] ^= 0xFu;
  a1[6] ^= 0x22u;
  a1[7] ^= a1[2];
  a1[8] ^= 0x27u;
  ++a1[9];
  ++a1[10];
  a1[11] ^= 0x25u;
  *a1 ^= 0x45u;
  a1[1] ^= 0x3Du;
  a1[2] ^= 0x5Bu;
  a1[3] ^= 0x4Cu;
  a1[4] ^= a1[2];
  a1[5] ^= 0x13u;
  a1[6] ^= 0x1Cu;
  a1[7] ^= 0x47u;
  a1[8] ^= a1[1];
  a1[9] ^= *a1;
  a1[10] ^= 0x6Fu;
  a1[11] ^= 0x5Bu;
  *a1 ^= 0x31u;
  a1[1] ^= 0x16u;
  a1[2] ^= 0x20u;
  a1[3] ^= a1[2];
  a1[4] ^= 0x51u;
  a1[5] ^= 0x23u;
  a1[6] ^= 0x28u;
  a1[7] ^= a1[4];
  a1[8] ^= 0x79u;
  a1[9] ^= a1[7];
  a1[10] ^= 0x67u;
  a1[11] ^= 0x18u;
  *a1 ^= 0x67u;
  a1[1] ^= 3u;
  a1[2] ^= 0x10u;
  a1[3] ^= 0x12u;
  a1[4] ^= 0x58u;
  a1[5] ^= 4u;
  ++a1[6];
  a1[7] ^= 0x1Du;
  a1[8] ^= 0x2Du;
  ++a1[9];
  a1[10] ^= 0x1Bu;
  a1[11] ^= 0xAu;
  *a1 ^= 0x28u;
  a1[1] ^= 0x1Cu;
  a1[2] ^= *a1;
  a1[3] ^= 0x7Au;
  a1[4] ^= 0x22u;
  a1[5] ^= 0x3Fu;
  a1[6] ^= a1[3];
  a1[7] ^= 0x6Eu;
  a1[8] ^= 0x7Du;
  a1[9] ^= 0x69u;
  ++a1[10];
  a1[11] ^= 0x57u;
  ++*a1;
  a1[1] ^= 0x17u;
  a1[2] ^= 0x6Au;
  ++a1[3];
  a1[4] ^= 0x54u;
  a1[5] ^= 0x50u;
  a1[6] ^= 0x1Fu;
  ++a1[7];
  a1[8] ^= 0x20u;
  ++a1[9];
  a1[10] ^= 1u;
  a1[11] ^= 0x23u;
  ++*a1;
  a1[1] ^= 0x53u;
  a1[2] ^= a1[1];
  a1[3] ^= 0x52u;
  a1[4] ^= 0x36u;
  ++a1[5];
  a1[6] ^= 0x38u;
  a1[7] ^= 0x40u;
  a1[8] ^= 0x62u;
  a1[9] ^= 0x11u;
  a1[10] ^= 0x77u;
  a1[11] ^= 0x21u;
  ++*a1;
  a1[1] ^= 3u;
  ++a1[2];
  a1[3] ^= 4u;
  a1[4] ^= 0xAu;
  a1[5] ^= 0x47u;
  a1[6] ^= 0x7Du;
  a1[7] ^= *a1;
  a1[8] ^= 0x26u;
  a1[9] ^= 0x63u;
  a1[10] ^= 0x61u;
  a1[11] ^= 0x1Au;
  *a1 ^= 0x75u;
  a1[1] ^= 0x47u;
  a1[2] ^= 0x23u;
  a1[3] ^= 0x3Bu;
  a1[4] ^= 0x31u;
  a1[5] ^= 0x30u;
  a1[6] ^= 0x44u;
  a1[7] ^= 0x7Cu;
  a1[8] ^= 0x52u;
  a1[9] ^= 1u;
  a1[10] ^= 0x38u;
  a1[11] ^= 1u;
  *a1 ^= 0x4Eu;
  ++a1[1];
  a1[2] ^= 0x1Au;
  a1[3] ^= 0x22u;
  a1[4] ^= 0x30u;
  a1[5] ^= 0x11u;
  a1[6] ^= a1[1];
  a1[7] ^= 0x47u;
  a1[8] ^= 0x44u;
  ++a1[9];
  a1[10] ^= 0x18u;
  a1[11] ^= 0x39u;
  *a1 ^= 0x3Bu;
  a1[1] ^= 0x1Eu;
  a1[2] ^= 0x5Au;
  a1[3] ^= 0x21u;
  a1[4] ^= 0x53u;
  a1[5] ^= 0x3Fu;
  a1[6] ^= 0x58u;
  ++a1[7];
  a1[8] ^= 0x6Eu;
  ++a1[9];
  ++a1[10];
  a1[11] ^= 0x49u;
  *a1 ^= 0x19u;
  ++a1[1];
  a1[2] ^= 0x53u;
  a1[3] ^= a1[1];
  a1[4] ^= 0x62u;
  a1[5] ^= 0x58u;
  a1[6] ^= *a1;
  a1[7] ^= 0x71u;
  a1[8] ^= 0x7Eu;
  a1[9] ^= 0x2Bu;
  ++a1[10];
  a1[11] ^= 0x77u;
  *a1 ^= 0x33u;
  a1[1] ^= 0x63u;
  a1[2] ^= 0x2Cu;
  a1[3] ^= 0x3Fu;
  a1[4] ^= 0x7Eu;
  a1[5] ^= 0x11u;
  a1[6] ^= 0x59u;
  a1[7] ^= 0x38u;
  a1[8] ^= 0x67u;
  a1[9] ^= 0x41u;
  a1[10] ^= a1[3];
  a1[11] ^= 0x11u;
  *a1 ^= 0x6Cu;
  a1[1] ^= 0xBu;
  a1[2] ^= 0x19u;
  a1[3] ^= 0x2Du;
  ++a1[4];
  a1[5] ^= 0x2Du;
  a1[6] ^= 0x71u;
  a1[7] ^= a1[5];
  a1[8] ^= 0x3Cu;
  a1[9] ^= 0x17u;
  a1[10] ^= 0x77u;
  a1[11] ^= 0x5Du;
  *a1 ^= 0x1Fu;
  a1[1] ^= *a1;
  a1[2] ^= 0x4Bu;
  a1[3] ^= 0x56u;
  a1[4] ^= 0x1Cu;
  a1[5] ^= 0x5Eu;
  a1[6] ^= 0x68u;
  ++a1[7];
  a1[8] ^= 0x6Du;
  a1[9] ^= a1[6];
  a1[10] ^= 0x3Cu;
  a1[11] ^= a1[5];
  *a1 ^= 0x1Bu;
  a1[1] ^= *a1;
  a1[2] ^= 0x7Eu;
  a1[3] ^= 0x69u;
  a1[4] ^= a1[3];
  a1[5] ^= 0x52u;
  a1[6] ^= 4u;
  ++a1[7];
  a1[8] ^= 0x1Du;
  a1[9] ^= 0x3Au;
  a1[10] ^= 0xEu;
  a1[11] ^= 0x25u;
  ++*a1;
  a1[1] ^= 0x64u;
  a1[2] ^= *a1;
  a1[3] ^= 0x69u;
  a1[4] ^= 0x7Fu;
  a1[5] ^= a1[4];
  a1[6] ^= 0x2Fu;
  a1[7] ^= 0x4Fu;
  ++a1[8];
  a1[9] ^= 0x62u;
  ++a1[10];
  ++a1[11];
  ++*a1;
  a1[1] ^= 0x7Bu;
  a1[2] ^= *a1;
  a1[3] ^= a1[1];
  a1[4] ^= 0x3Cu;
  a1[5] ^= 0x1Fu;
  a1[6] ^= 0x6Du;
  a1[7] ^= *a1;
  a1[8] ^= a1[5];
  a1[9] ^= 4u;
  ++a1[10];
  a1[11] ^= 0x49u;
  *a1 ^= 0xDu;
  a1[1] ^= *a1;
  a1[2] ^= 0x67u;
  a1[3] ^= 0x2Du;
  a1[4] ^= 0x72u;
  a1[5] ^= 0x58u;
  a1[6] ^= a1[4];
  a1[7] ^= 0x4Fu;
  a1[8] ^= 0x3Bu;
  ++a1[9];
  a1[10] ^= 0x16u;
  a1[11] ^= a1[8];
  *a1 ^= 0x24u;
  ++a1[1];
  a1[2] ^= 0x28u;
  a1[3] ^= 0x50u;
  ++a1[4];
  a1[5] ^= 0x57u;
  a1[6] ^= a1[3];
  a1[7] ^= 0x40u;
  a1[8] ^= 0x53u;
  a1[9] ^= a1[2];
  a1[10] ^= a1[2];
  a1[11] ^= 0x3Du;
  *a1 ^= 0x36u;
  a1[1] ^= *a1;
  a1[2] ^= 0x67u;
  a1[3] ^= 0x4Bu;
  a1[4] ^= 0x1Du;
  a1[5] ^= 4u;
  a1[6] ^= 0x2Fu;
  a1[7] ^= 0x67u;
  ++a1[8];
  a1[9] ^= 0x44u;
  a1[10] ^= a1[6];
  a1[11] ^= 0x4Bu;
  *a1 ^= 0x74u;
  a1[1] ^= 0x24u;
  a1[2] ^= 0x54u;
  a1[3] ^= a1[2];
  a1[4] ^= 0xEu;
  ++a1[5];
  a1[6] ^= 0x72u;
  a1[7] ^= a1[2];
  a1[8] ^= 0x47u;
  a1[9] ^= 0x57u;
  a1[10] ^= 0x40u;
  a1[11] ^= 0x1Cu;
  *a1 ^= 0x6Cu;
  ++a1[1];
  a1[2] ^= 0x54u;
  ++a1[3];
  ++a1[4];
  a1[5] ^= 0x3Fu;
  a1[6] ^= a1[1];
  a1[7] ^= 0x6Bu;
  a1[8] ^= 0x3Eu;
  ++a1[9];
  ++a1[10];
  a1[11] ^= 0x12u;
  ++*a1;
  ++a1[1];
  a1[2] ^= 0x12u;
  a1[3] ^= *a1;
  a1[4] ^= 0x57u;
  a1[5] ^= a1[2];
  a1[6] ^= 4u;
  ++a1[7];
  ++a1[8];
  a1[9] ^= 0x12u;
  a1[10] ^= 0x74u;
  ++a1[11];
  *a1 ^= 0x56u;
  a1[1] ^= 0x52u;
  a1[2] ^= 9u;
  a1[3] ^= 0x32u;
  a1[4] ^= 0x31u;
  a1[5] ^= 0x4Bu;
  a1[6] ^= 0x32u;
  a1[7] ^= a1[2];
  a1[8] ^= 0x72u;
  a1[9] ^= 0x48u;
  a1[10] ^= a1[3];
  a1[11] ^= 0x2Bu;
  *a1 ^= 0x51u;
  ++a1[1];
  a1[2] ^= 0x69u;
  a1[3] ^= 0x35u;
  a1[4] ^= 0xDu;
  a1[5] ^= 0x4Au;
  a1[6] ^= 0x5Fu;
  ++a1[7];
  ++a1[8];
  a1[9] ^= 0x31u;
  a1[10] ^= 0x61u;
  a1[11] ^= 0x1Fu;
  ++*a1;
  a1[1] ^= 0x79u;
  a1[2] ^= 0x78u;
  a1[3] ^= 0x5Fu;
  a1[4] ^= 0x7Eu;
  a1[5] ^= 0x18u;
  a1[6] ^= 0x74u;
  a1[7] ^= 0x53u;
  ++a1[8];
  a1[9] ^= 0x73u;
  a1[10] ^= 0x71u;
  a1[11] ^= 0x60u;
  *a1 ^= 0x58u;
  a1[1] ^= 0x51u;
  a1[2] ^= 0x63u;
  a1[3] ^= 0x6Du;
  a1[4] ^= 5u;
  a1[5] ^= a1[2];
  a1[6] ^= 0x1Au;
  ++a1[7];
  a1[8] ^= 0x25u;
  a1[9] ^= a1[8];
  a1[10] ^= 0x5Cu;
  a1[11] ^= 0x19u;
  *a1 ^= 0x61u;
  a1[1] ^= 0x2Fu;
  a1[2] ^= 0x6Eu;
  a1[3] ^= 0x1Cu;
  a1[4] ^= 0x6Eu;
  a1[5] ^= 0x54u;
  a1[6] ^= 3u;
  ++a1[7];
  a1[8] ^= 0x1Du;
  a1[9] ^= 0xDu;
  a1[10] ^= 0x6Du;
  ++a1[11];
  *a1 ^= 0x3Eu;
  a1[1] ^= 0x57u;
  a1[2] ^= *a1;
  a1[3] ^= 0x2Au;
  a1[4] ^= a1[2];
  a1[5] ^= a1[1];
  a1[6] ^= 0x57u;
  a1[7] ^= 0xEu;
  a1[8] ^= 5u;
  a1[9] ^= 0x2Cu;
  a1[10] ^= 7u;
  a1[11] ^= a1[3];
  *a1 ^= 0x64u;
  ++a1[1];
  a1[2] ^= 0x63u;
  a1[3] ^= 0x75u;
  ++a1[4];
  a1[5] ^= 0xAu;
  ++a1[6];
  a1[7] ^= 0x53u;
  ++a1[8];
  a1[9] ^= 0x37u;
  a1[10] ^= *a1;
  a1[11] ^= 0x53u;
  *a1 ^= 0x27u;
  a1[1] ^= 0x61u;
  a1[2] ^= 0x71u;
  a1[3] ^= 0x51u;
  a1[4] ^= 0x7Au;
  ++a1[5];
  ++a1[6];
  a1[7] ^= 0x5Au;
  a1[8] ^= 0x78u;
  a1[9] ^= 0x18u;
  a1[10] ^= 0x44u;
  a1[11] ^= 0x77u;
  *a1 ^= 6u;
  a1[1] ^= 0x19u;
  a1[2] ^= 0x61u;
  ++a1[3];
  a1[4] ^= 0x54u;
  a1[5] ^= 0xEu;
  a1[6] ^= *a1;
  a1[7] ^= 0x37u;
  a1[8] ^= 4u;
  a1[9] ^= 0x67u;
  a1[10] ^= a1[4];
  a1[11] ^= 0x33u;
  *a1 ^= 0x5Du;
  a1[1] ^= 0x4Du;
  a1[2] ^= 0x79u;
  a1[3] ^= 0x3Bu;
  a1[4] ^= 0x7Eu;
  a1[5] ^= 0x44u;
  ++a1[6];
  a1[7] ^= 0x27u;
  a1[8] ^= a1[2];
  a1[9] ^= 0x3Cu;
  ++a1[10];
  a1[11] ^= 0x45u;
  *a1 ^= 0x12u;
  a1[1] ^= 0x5Fu;
  a1[2] ^= a1[1];
  a1[3] ^= 0x7Au;
  a1[4] ^= 0x2Cu;
  a1[5] ^= 0x22u;
  a1[6] ^= 0x21u;
  a1[7] ^= 8u;
  a1[8] ^= 0x7Cu;
  a1[9] ^= 0x63u;
  a1[10] ^= 0x40u;
  a1[11] ^= a1[8];
  *a1 ^= 0x47u;
  a1[1] ^= *a1;
  a1[2] ^= 0x73u;
  a1[3] ^= 0x13u;
  a1[4] ^= 0x2Bu;
  a1[5] ^= 0x52u;
  a1[6] ^= 0x3Du;
  a1[7] ^= 0x5Cu;
  a1[8] ^= 0x71u;
  a1[9] ^= a1[7];
  a1[10] ^= 0x64u;
  a1[11] ^= 0x70u;
  *a1 ^= 0x35u;
  ++a1[1];
  a1[2] ^= 0x4Au;
  ++a1[3];
  a1[4] ^= 0x49u;
  a1[5] ^= 0x52u;
  a1[6] ^= a1[4];
  a1[7] ^= 9u;
  a1[8] ^= 0x34u;
  ++a1[9];
  a1[10] ^= 0x53u;
  a1[11] ^= 0x28u;
  *a1 ^= 0x65u;
  ++a1[1];
  a1[2] ^= 0x6Eu;
  a1[3] ^= 0x54u;
  a1[4] ^= 0x6Eu;
  a1[5] ^= 0x21u;
  ++a1[6];
  a1[7] ^= 0x36u;
  a1[8] ^= 0x51u;
  a1[9] ^= a1[8];
  a1[10] ^= 0x73u;
  a1[11] ^= 0x54u;
  *a1 ^= 0x58u;
  a1[1] ^= *a1;
  a1[2] ^= *a1;
  a1[3] ^= 0x41u;
  a1[4] ^= 0x12u;
  a1[5] ^= 0x65u;
  a1[6] ^= 0x18u;
  a1[7] ^= 0x52u;
  a1[8] ^= 1u;
  a1[9] ^= 0x6Cu;
  a1[10] ^= 0x4Bu;
  a1[11] ^= 0x7Au;
  *a1 ^= 0x18u;
  a1[1] ^= 9u;
  ++a1[2];
  a1[3] ^= 0x65u;
  a1[4] ^= 0xBu;
  ++a1[5];
  a1[6] ^= 0x7Fu;
  a1[7] ^= a1[4];
  a1[8] ^= 0x38u;
  a1[9] ^= 0x55u;
  a1[10] ^= 0x56u;
  a1[11] ^= 0x67u;
  *a1 ^= 0x61u;
  a1[1] ^= 0x46u;
  a1[2] ^= a1[1];
  a1[3] ^= 0x52u;
  a1[4] ^= 0x6Au;
  a1[5] ^= 0x1Du;
  a1[6] ^= 0x7Fu;
  a1[7] ^= 0xCu;
  a1[8] ^= a1[7];
  a1[9] ^= 0x7Au;
  a1[10] ^= a1[1];
  a1[11] ^= 0x69u;
  *a1 ^= 0x75u;
  a1[1] ^= *a1;
  a1[2] ^= a1[1];
  a1[3] ^= 0x18u;
  a1[4] ^= 0x49u;
  a1[5] ^= 0x3Fu;
  a1[6] ^= a1[5];
  a1[7] ^= a1[4];
  a1[8] ^= a1[3];
  a1[9] ^= 0x2Du;
  a1[10] ^= 0x2Cu;
  a1[11] ^= 0x6Eu;
  *a1 ^= 0x33u;
  a1[1] ^= 0x24u;
  a1[2] ^= 0x50u;
  a1[3] ^= 0xEu;
  a1[4] ^= 0x64u;
  ++a1[5];
  ++a1[6];
  ++a1[7];
  a1[8] ^= 0x7Du;
  ++a1[9];
  a1[10] ^= 0xBu;
  a1[11] ^= 0x1Bu;
  *a1 ^= 0xDu;
  a1[1] ^= 0x6Bu;
  a1[2] ^= 0x57u;
  a1[3] ^= 0x58u;
  a1[4] ^= 0x62u;
  a1[5] ^= 0xCu;
  a1[6] ^= 8u;
  a1[7] ^= a1[1];
  a1[8] ^= 0x60u;
  a1[9] ^= 0x28u;
  a1[10] ^= a1[7];
  a1[11] ^= *a1;
  *a1 ^= 8u;
  a1[1] ^= 0x77u;
  a1[2] ^= a1[1];
  a1[3] ^= 2u;
  ++a1[4];
  a1[5] ^= 0x3Eu;
  a1[6] ^= 0x51u;
  a1[7] ^= a1[2];
  a1[8] ^= 0x54u;
  a1[9] ^= 0x6Cu;
  a1[10] ^= 0x6Du;
  a1[11] ^= 0x51u;
  *a1 ^= 0x50u;
  ++a1[1];
  a1[2] ^= 0x1Cu;
  a1[3] ^= *a1;
  a1[4] ^= 0x77u;
  a1[5] ^= 0x41u;
  ++a1[6];
  a1[7] ^= 0x11u;
  ++a1[8];
  a1[9] ^= 0x6Bu;
  a1[10] ^= 0x54u;
  a1[11] ^= 0x78u;
  *a1 ^= 0x76u;
  a1[1] ^= 0x55u;
  a1[2] ^= 0x34u;
  a1[3] ^= 0x17u;
  a1[4] ^= a1[3];
  a1[5] ^= *a1;
  a1[6] ^= 0x6Cu;
  a1[7] ^= 0x49u;
  a1[8] ^= 0x3Eu;
  a1[9] ^= 0x38u;
  a1[10] ^= 7u;
  a1[11] ^= 0x5Cu;
  *a1 ^= 0x2Eu;
  ++a1[1];
  ++a1[2];
  a1[3] ^= 0x5Eu;
  a1[4] ^= 0x3Eu;
  ++a1[5];
  ++a1[6];
  a1[7] ^= 0x71u;
  a1[8] ^= 0x65u;
  a1[9] ^= 0xBu;
  a1[10] ^= 0x2Au;
  a1[11] ^= 0x5Au;
  ++*a1;
  a1[1] ^= 0x1Cu;
  a1[2] ^= 1u;
  ++a1[3];
  a1[4] ^= 0x20u;
  ++a1[5];
  a1[6] ^= 0x1Fu;
  a1[7] ^= 0x4Fu;
  ++a1[8];
  a1[9] ^= 3u;
  a1[10] ^= 0x3Du;
  a1[11] ^= 0x4Bu;
  *a1 ^= 0x24u;
  a1[1] ^= 0x78u;
  a1[2] ^= 0x12u;
  a1[3] ^= a1[1];
  a1[4] ^= 0x19u;
  a1[5] ^= 8u;
  a1[6] ^= a1[3];
  a1[7] ^= 0x15u;
  ++a1[8];
  a1[9] ^= 0x47u;
  a1[10] ^= a1[8];
  a1[11] ^= a1[9];
  *a1 ^= 0x72u;
  a1[1] ^= *a1;
  a1[2] ^= 0x1Bu;
  a1[3] ^= 0x3Bu;
  a1[4] ^= 0x25u;
  a1[5] ^= 0x31u;
  a1[6] ^= a1[1];
  a1[7] ^= 0x57u;
  a1[8] ^= 6u;
  a1[9] ^= a1[4];
  a1[10] ^= 0x57u;
  ++a1[11];
  ++*a1;
  a1[1] ^= 0x6Eu;
  a1[2] ^= 0x5Du;
  a1[3] ^= 0x1Du;
  a1[4] ^= a1[3];
  a1[5] ^= 0x45u;
  a1[6] ^= 0x3Bu;
  ++a1[7];
  a1[8] ^= 0x16u;
  ++a1[9];
  a1[10] ^= 0x57u;
  a1[11] ^= 0x58u;
  *a1 ^= 0x7Bu;
  a1[1] ^= 0x28u;
  a1[2] ^= 2u;
  a1[3] ^= 0x49u;
  a1[4] ^= 0x40u;
  a1[5] ^= 0x1Fu;
  ++a1[6];
  ++a1[7];
  a1[8] ^= 0x27u;
  ++a1[9];
  ++a1[10];
  a1[11] ^= 0x5Du;
  *a1 ^= 0x1Du;
  a1[1] ^= 0x6Bu;
  a1[2] ^= *a1;
  a1[3] ^= 0x5Au;
  a1[4] ^= 0xDu;
  a1[5] ^= 0x52u;
  a1[6] ^= 0x59u;
  a1[7] ^= a1[5];
  a1[8] ^= 0x73u;
  ++a1[9];
  a1[10] ^= 4u;
  a1[11] ^= a1[5];
  *a1 ^= 3u;
  a1[1] ^= 0x3Du;
  a1[2] ^= *a1;
  a1[3] ^= 0x73u;
  a1[4] ^= 0x7Cu;
  a1[5] ^= 0xFu;
  a1[6] ^= 0x4Fu;
  a1[7] ^= 0xDu;
  a1[8] ^= 0x62u;
  a1[9] ^= 0x2Fu;
  a1[10] ^= 0x60u;
  a1[11] ^= 0x38u;
  *a1 ^= 0x5Bu;
  a1[1] ^= 0x22u;
  a1[2] ^= 0x12u;
  a1[3] ^= 0x19u;
  a1[4] ^= 0x56u;
  a1[5] ^= 0x29u;
  a1[6] ^= 0x48u;
  a1[7] ^= 0x45u;
  a1[8] ^= 0xEu;
  a1[9] ^= a1[1];
  a1[10] ^= 0x4Cu;
  a1[11] ^= 0x7Cu;
  *a1 ^= 0x23u;
  a1[1] ^= *a1;
  a1[2] ^= 0xEu;
  a1[3] ^= 0x6Au;
  ++a1[4];
  a1[5] ^= 0x3Bu;
  a1[6] ^= 0x54u;
  a1[7] ^= 0x57u;
  a1[8] ^= 0x1Bu;
  a1[9] ^= 0x1Du;
  a1[10] ^= 0x53u;
  a1[11] ^= 0x25u;
  *a1 ^= 0x41u;
  a1[1] ^= 0x59u;
  a1[2] ^= 0x2Eu;
  ++a1[3];
  ++a1[4];
  a1[5] ^= 0x26u;
  a1[6] ^= 0x72u;
  a1[7] ^= 0xAu;
  a1[8] ^= 0x6Fu;
  ++a1[9];
  a1[10] ^= 0x33u;
  a1[11] ^= a1[9];
  *a1 ^= 0x3Au;
  a1[1] ^= *a1;
  a1[2] ^= 0x2Eu;
  a1[3] ^= 0x42u;
  a1[4] ^= 0x74u;
  a1[5] ^= 0x70u;
  a1[6] ^= 0x3Du;
  a1[7] ^= 0x74u;
  a1[8] ^= 0x7Bu;
  a1[9] ^= 0x7Du;
  a1[10] ^= 0x15u;
  a1[11] ^= 0x11u;
  *a1 ^= 0x73u;
  a1[1] ^= 0x24u;
  a1[2] ^= 0x7Eu;
  a1[3] ^= 0x4Cu;
  a1[4] ^= *a1;
  a1[5] ^= 0x34u;
  a1[6] ^= 0x41u;
  a1[7] ^= 0x2Du;
  a1[8] ^= 0x68u;
  ++a1[9];
  a1[10] ^= 0x6Fu;
  a1[11] ^= 0x75u;
  *a1 ^= 0x77u;
  a1[1] ^= 0x1Eu;
  a1[2] ^= 0x4Du;
  a1[3] ^= 0x4Cu;
  a1[4] ^= 0x56u;
  a1[5] ^= 0x30u;
  a1[6] ^= 0x6Fu;
  a1[7] ^= 0x5Cu;
  a1[8] ^= 5u;
  a1[9] ^= a1[4];
  a1[10] ^= 0x25u;
  a1[11] ^= 0x29u;
  *a1 ^= 0x48u;
  a1[1] ^= 0x3Bu;
  a1[2] ^= *a1;
  a1[3] ^= 0xAu;
  a1[4] ^= 0x6Fu;
  a1[5] ^= *a1;
  a1[6] ^= 0x65u;
  a1[7] ^= 0x59u;
  a1[8] ^= a1[1];
  a1[9] ^= 0x11u;
  a1[10] ^= 0x73u;
  a1[11] ^= a1[2];
  *a1 ^= 0x59u;
  a1[1] ^= 0x7Eu;
  a1[2] ^= 0x4Fu;
  a1[3] ^= 0x2Bu;
  a1[4] ^= *a1;
  a1[5] ^= 0x25u;
  a1[6] ^= 0x2Eu;
  a1[7] ^= 0x3Cu;
  a1[8] ^= 0x6Bu;
  a1[9] ^= 0x70u;
  a1[10] ^= 0x29u;
  a1[11] ^= 0x3Bu;
  v3[0] = 126;
  v3[1] = 50;
  v3[2] = 37;
  v3[3] = 88;
  v3[4] = 89;
  v3[5] = 107;
  v3[6] = 53;
  v3[7] = 110;
  v3[8] = 0;
  v3[9] = 19;
  v3[10] = 30;
  v3[11] = 56;
   
    if ( v3[i] == a1[i] )
    {
      printf("%c",flaga);
      return 1LL;
    }
     
  return 0LL;
//b0Nf|Re_LiT!
//the flag are:
//b0Nf|Re_LiT!
}
#include<stdio.h>
 
int sub_83A(char *a1,int i);
int main(){
    char flag[12];
    char flag1[12];
    int i,j,k;
    for (i=0;i<=11;i++){
         
        for(j=0;j<=256;j++){
            flag[i]=j;
            for(k=0;k<=i;k++){
                flag1[k]=flag[k];
            }
             
            if(sub_83A(flag1,i))
                break;
        }
     
    }
    printf("\nthe flag are:\n");
puts(flag);
     
}
 
 
int sub_83A(char *a1,int i)
{ // [rsp+1Ch] [rbp-44h]
  int v3[14]; // [rsp+20h] [rbp-40h]
  unsigned __int64 v4; // [rsp+58h] [rbp-8h]
 
 
    char flaga=a1[i];
  //v4 = __readfsqword(0x28u);
  *a1 ^= 0x2Bu;
  a1[1] ^= 0x6Cu;
  a1[2] ^= 0x7Eu;
  a1[3] ^= 0x56u;
  a1[4] ^= 0x39u;
  a1[5] ^= 3u;
  a1[6] ^= 0x2Du;
  a1[7] ^= 0x28u;
  a1[8] ^= 8u;
  ++a1[9];
  a1[10] ^= 0x2Fu;
  a1[11] ^= 0xAu;
  ++*a1;
  a1[1] ^= 0xDu;
  a1[2] ^= 0x73u;
  a1[3] ^= a1[2];
  a1[4] ^= 0x37u;
  ++a1[5];
  a1[6] ^= 0x69u;
  a1[7] ^= 0x59u;
  a1[8] ^= 0xCu;
  a1[9] ^= 0x70u;
  ++a1[10];
  a1[11] ^= 0x1Fu;
  ++*a1;
  a1[1] ^= 0x55u;
  a1[2] ^= a1[1];
  a1[3] ^= 0x72u;
  a1[4] ^= 0x1Fu;
  ++a1[5];
  a1[6] ^= 0x6Du;
  a1[7] ^= a1[6];
  a1[8] ^= a1[7];
  a1[9] ^= 0x6Du;
  ++a1[10];
  ++a1[11];
  ++*a1;
  a1[1] ^= 0x76u;
  a1[2] ^= 0x49u;
  a1[3] ^= 0x29u;
  a1[4] ^= 0x17u;
  a1[5] ^= 0x78u;
  a1[6] ^= 0x6Eu;
  a1[7] ^= a1[2];
  a1[8] ^= 0x2Cu;
  a1[9] ^= 0xEu;
  a1[10] ^= 0x1Eu;
  a1[11] ^= 0x52u;
  *a1 ^= 0x16u;
  a1[1] ^= 0x22u;
  a1[2] ^= a1[1];
  a1[3] ^= *a1;
  a1[4] ^= 0x72u;
  a1[5] ^= 0xCu;
  a1[6] ^= a1[4];
  a1[7] ^= 0x5Du;
  a1[8] ^= 0x47u;
  ++a1[9];
  a1[10] ^= 0x6Eu;
  a1[11] ^= a1[5];
  *a1 ^= 0x73u;
  ++a1[1];
  a1[2] ^= 0x75u;
  a1[3] ^= 7u;
  a1[4] ^= 0x68u;
  ++a1[5];
  a1[6] ^= 0x41u;
  a1[7] ^= 0x10u;
  a1[8] ^= 0x3Bu;
  a1[9] ^= 0x2Bu;
  a1[10] ^= 0x65u;
  ++a1[11];
  *a1 ^= 0x73u;
  a1[1] ^= 0x74u;
  a1[2] ^= 0x52u;
  a1[3] ^= 0x66u;
  a1[4] ^= 0x41u;
  a1[5] ^= 0x63u;
  a1[6] ^= 7u;
  a1[7] ^= 0x61u;
  a1[8] ^= 0x32u;
  a1[9] ^= 0x74u;
  ++a1[10];
  a1[11] ^= 0x22u;
  *a1 ^= 2u;
  a1[1] ^= 0x6Fu;
  ++a1[2];
  a1[3] ^= 5u;
  a1[4] ^= 4u;
  a1[5] ^= 0x6Du;
  a1[6] ^= a1[2];
  a1[7] ^= 0x57u;
  a1[8] ^= 0x3Eu;
  a1[9] ^= 0x1Bu;
  a1[10] ^= 0x57u;
  a1[11] ^= 0x27u;
  *a1 ^= 0x7Cu;
  a1[1] ^= 0x58u;
  ++a1[2];
  a1[3] ^= 0x50u;
  a1[4] ^= 0x27u;
  a1[5] ^= a1[4];
  a1[6] ^= 0x67u;
  a1[7] ^= 0x41u;
  a1[8] ^= 0x76u;
  a1[9] ^= 0x7Au;
  a1[10] ^= 0x7Cu;
  ++a1[11];
  ++*a1;
  a1[1] ^= 0x7Du;
  a1[2] ^= 0x5Bu;
  a1[3] ^= 0x15u;
  a1[4] ^= 0xBu;
  ++a1[5];
  a1[6] ^= 0x61u;
  a1[7] ^= 0x73u;
  a1[8] ^= 0x19u;
  a1[9] ^= 0xBu;
  a1[10] ^= 1u;
  a1[11] ^= a1[9];
  *a1 ^= 0x7Cu;
  a1[1] ^= 0x21u;
  a1[2] ^= 0x26u;
  a1[3] ^= 0x73u;
  a1[4] ^= 0x26u;
  a1[5] ^= 0x71u;
  a1[6] ^= 0x67u;
  a1[7] ^= 0x54u;
  a1[8] ^= 7u;
  a1[9] ^= a1[1];
  a1[10] ^= 0x20u;
  ++a1[11];
  *a1 ^= 0xFu;
  a1[1] ^= 0x21u;
  a1[2] ^= 0x7Du;
  a1[3] ^= a1[1];
  a1[4] ^= 0x5Eu;
  a1[5] ^= 0x44u;
  a1[6] ^= 0x73u;
  a1[7] ^= 0x17u;
  a1[8] ^= 0x34u;
  a1[9] ^= 0x7Cu;
  a1[10] ^= a1[2];
  a1[11] ^= 0x59u;
  *a1 ^= 0x2Au;
  a1[1] ^= 0x37u;
  a1[2] ^= 0x49u;
  a1[3] ^= 0x22u;
  a1[4] ^= 0x68u;
  a1[5] ^= 0x41u;
  a1[6] ^= 0x61u;
  a1[7] ^= a1[5];
  a1[8] ^= 0x29u;
  ++a1[9];
  a1[10] ^= 0x16u;
  ++a1[11];
  *a1 ^= 0x29u;
  a1[1] ^= 0x2Cu;
  a1[2] ^= 0x47u;
  a1[3] ^= a1[1];
  a1[4] ^= 0x3Fu;
  a1[5] ^= 0x42u;
  a1[6] ^= 0x62u;
  ++a1[7];
  a1[8] ^= 0x33u;
  a1[9] ^= 0x69u;
  a1[10] ^= 0x5Cu;
  a1[11] ^= 0x14u;
  *a1 ^= 1u;
  a1[1] ^= 0x33u;
  a1[2] ^= 0x27u;
  a1[3] ^= 0x29u;
  a1[4] ^= 0xCu;
  a1[5] ^= 0x2Fu;
  a1[6] ^= 0x45u;
  a1[7] ^= a1[2];
  a1[8] ^= 0x16u;
  a1[9] ^= 0x7Eu;
  a1[10] ^= 0x44u;
  a1[11] ^= 0x42u;
  *a1 ^= 0x66u;
  a1[1] ^= 0x14u;
  a1[2] ^= 0x33u;
  a1[3] ^= a1[1];
  a1[4] ^= 0x26u;
  a1[5] ^= 0x60u;
  a1[6] ^= 0x15u;
  a1[7] ^= 0x4Cu;
  a1[8] ^= 0x68u;
  a1[9] ^= 0xCu;
  a1[10] ^= 0x26u;
  a1[11] ^= 0x15u;
  *a1 ^= 0x43u;
  a1[1] ^= 0x5Cu;
  a1[2] ^= 0x75u;
  a1[3] ^= 0x4Eu;
  a1[4] ^= 0x6Cu;
  a1[5] ^= 0x73u;
  a1[6] ^= 0x17u;
  a1[7] ^= 0x2Bu;
  a1[8] ^= 0x5Cu;
  a1[9] ^= 0x1Du;
  a1[10] ^= a1[4];
  a1[11] ^= 0x2Au;
  *a1 ^= 0x7Du;
  a1[1] ^= 0x2Cu;
  a1[2] ^= 0x7Du;
  a1[3] ^= 0x4Cu;
  a1[4] ^= 0x55u;
  a1[5] ^= 0x67u;
  a1[6] ^= 0x69u;
  a1[7] ^= 0x23u;
  a1[8] ^= 0x27u;
  a1[9] ^= 0x66u;
  a1[10] ^= 0x4Bu;
  a1[11] ^= 2u;
  *a1 ^= 0x3Au;
  ++a1[1];
  a1[2] ^= 0x5Cu;
  a1[3] ^= 0x68u;
  a1[4] ^= 0x51u;
  a1[5] ^= 0x74u;
  ++a1[6];
  a1[7] ^= 0x23u;
  a1[8] ^= 0x11u;
  a1[9] ^= 0x34u;
  a1[10] ^= 0x2Du;
  a1[11] ^= 0x26u;
  *a1 ^= 0x14u;
  a1[1] ^= *a1;
  a1[2] ^= 0x20u;
  a1[3] ^= 0x2Fu;
  a1[4] ^= 0x33u;
  a1[5] ^= *a1;
  a1[6] ^= 0x36u;
  a1[7] ^= *a1;
  a1[8] ^= a1[4];
  a1[9] ^= 0x77u;
  a1[10] ^= 0x30u;
  a1[11] ^= 0x50u;
  ++*a1;
  a1[1] ^= 0x45u;
  ++a1[2];
  a1[3] ^= 0x53u;
  a1[4] ^= 0x68u;
  a1[5] ^= 0x4Au;
  a1[6] ^= 0x38u;
  a1[7] ^= 0x18u;
  a1[8] ^= a1[6];
  a1[9] ^= 0x2Bu;
  a1[10] ^= 0x6Au;
  a1[11] ^= 0x28u;
  *a1 ^= 0x75u;
  a1[1] ^= *a1;
  a1[2] ^= 0x7Cu;
  a1[3] ^= *a1;
  a1[4] ^= 0x38u;
  a1[5] ^= 0x75u;
  a1[6] ^= a1[5];
  a1[7] ^= 0x2Bu;
  ++a1[8];
  a1[9] ^= 0x36u;
  a1[10] ^= 0x6Eu;
  a1[11] ^= 0x7Fu;
  *a1 ^= 0x5Cu;
  a1[1] ^= 0x16u;
  a1[2] ^= 0x16u;
  a1[3] ^= a1[1];
  a1[4] ^= 0x73u;
  a1[5] ^= 0x63u;
  a1[6] ^= 0x5Au;
  a1[7] ^= 0x35u;
  a1[8] ^= 0x1Cu;
  a1[9] ^= 0x43u;
  a1[10] ^= 0x26u;
  a1[11] ^= a1[3];
  *a1 ^= 0x1Au;
  a1[1] ^= *a1;
  a1[2] ^= 0x18u;
  a1[3] ^= 0x40u;
  ++a1[4];
  a1[5] ^= 9u;
  a1[6] ^= 0x5Cu;
  a1[7] ^= 0x3Au;
  a1[8] ^= 0x68u;
  a1[9] ^= 0x2Eu;
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x6Cu;
  a1[1] ^= *a1;
  a1[2] ^= *a1;
  a1[3] ^= 6u;
  a1[4] ^= 0x76u;
  a1[5] ^= 0x29u;
  a1[6] ^= 8u;
  a1[7] ^= 0x7Au;
  a1[8] ^= 0x58u;
  a1[9] ^= 0x31u;
  ++a1[10];
  a1[11] ^= 0x24u;
  *a1 ^= 0x42u;
  a1[1] ^= 0x1Fu;
  a1[2] ^= 0x72u;
  ++a1[3];
  a1[4] ^= 0x11u;
  a1[5] ^= 0x72u;
  a1[6] ^= a1[2];
  a1[7] ^= 0x56u;
  a1[8] ^= 0x16u;
  a1[9] ^= 0x15u;
  a1[10] ^= 0x30u;
  a1[11] ^= a1[1];
  *a1 ^= 0x7Fu;
  a1[1] ^= 0x7Eu;
  a1[2] ^= 0x49u;
  ++a1[3];
  a1[4] ^= 0x72u;
  ++a1[5];
  a1[6] ^= 6u;
  a1[7] ^= 0x61u;
  a1[8] ^= a1[2];
  a1[9] ^= 0x44u;
  a1[10] ^= 0x25u;
  a1[11] ^= 0x13u;
  *a1 ^= 0x7Eu;
  a1[1] ^= 7u;
  a1[2] ^= 0x1Bu;
  a1[3] ^= 0x62u;
  a1[4] ^= 0x34u;
  a1[5] ^= 0x2Cu;
  a1[6] ^= 0xEu;
  a1[7] ^= 0x52u;
  a1[8] ^= 0x7Bu;
  a1[9] ^= 0x6Fu;
  a1[10] ^= 0x7Au;
  a1[11] ^= 0x7Du;
  ++*a1;
  a1[1] ^= 0x6Fu;
  ++a1[2];
  ++a1[3];
  a1[4] ^= 0x67u;
  a1[5] ^= 0x16u;
  a1[6] ^= 0xBu;
  a1[7] ^= 0x7Bu;
  a1[8] ^= 0x4Au;
  a1[9] ^= 0x2Eu;
  a1[10] ^= 0x37u;
  a1[11] ^= 0xBu;
  *a1 ^= 0x3Eu;
  a1[1] ^= 0x2Cu;
  a1[2] ^= *a1;
  a1[3] ^= 0x7Au;
  ++a1[4];
  a1[5] ^= 0x74u;
  a1[6] ^= 0x6Du;
  a1[7] ^= 0x6Bu;
  a1[8] ^= 0x1Eu;
  a1[9] ^= 0x25u;
  a1[10] ^= 0x19u;
  ++a1[11];
  *a1 ^= 0x3Au;
  a1[1] ^= 0x4Eu;
  a1[2] ^= 0x27u;
  a1[3] ^= 0xAu;
  a1[4] ^= 0x3Eu;
  a1[5] ^= 0x7Fu;
  a1[6] ^= 0x20u;
  a1[7] ^= 0x3Cu;
  a1[8] ^= 0x5Eu;
  a1[9] ^= 0x56u;
  a1[10] ^= a1[1];
  a1[11] ^= 0x48u;
  *a1 ^= 0x3Fu;
  ++a1[1];
  a1[2] ^= 0x72u;
  ++a1[3];
  ++a1[4];
  ++a1[5];
  a1[6] ^= 0x44u;
  a1[7] ^= 0x2Eu;
  a1[8] ^= 0x44u;
  a1[9] ^= 0x74u;
  a1[10] ^= 0x7Eu;
  a1[11] ^= 0x30u;
  *a1 ^= 0x66u;
  a1[1] ^= *a1;
  a1[2] ^= 0x63u;
  a1[3] ^= 0x5Du;
  a1[4] ^= 0x55u;
  a1[5] ^= 0x1Au;
  a1[6] ^= a1[1];
  a1[7] ^= 0x68u;
  a1[8] ^= 0x46u;
  ++a1[9];
  ++a1[10];
  a1[11] ^= 0x75u;
  ++*a1;
  a1[1] ^= 0x23u;
  a1[2] ^= 0x48u;
  a1[3] ^= 0x3Du;
  a1[4] ^= a1[2];
  a1[5] ^= 0x14u;
  a1[6] ^= 0x7Du;
  a1[7] ^= 0x67u;
  ++a1[8];
  a1[9] ^= 0x4Fu;
  a1[10] ^= 0x56u;
  a1[11] ^= a1[4];
  *a1 ^= 0x30u;
  ++a1[1];
  a1[2] ^= 0x3Bu;
  a1[3] ^= *a1;
  a1[4] ^= 0x7Bu;
  a1[5] ^= 0x38u;
  ++a1[6];
  a1[7] ^= 4u;
  a1[8] ^= 0x2Eu;
  a1[9] ^= a1[1];
  a1[10] ^= a1[4];
  a1[11] ^= 0x20u;
  *a1 ^= 0x4Bu;
  ++a1[1];
  ++a1[2];
  a1[3] ^= 0x7Eu;
  a1[4] ^= 0x65u;
  a1[5] ^= 0x14u;
  a1[6] ^= 0x5Eu;
  a1[7] ^= 0x3Au;
  ++a1[8];
  a1[9] ^= 0x7Fu;
  ++a1[10];
  a1[11] ^= 0xBu;
  *a1 ^= 0x6Bu;
  a1[1] ^= 0x4Fu;
  a1[2] ^= *a1;
  a1[3] ^= 0x6Au;
  a1[4] ^= 0x6Fu;
  a1[5] ^= 0x3Bu;
  ++a1[6];
  a1[7] ^= 0x2Eu;
  a1[8] ^= a1[6];
  a1[9] ^= 0x39u;
  a1[10] ^= 0x13u;
  a1[11] ^= 0x59u;
  *a1 ^= 0x4Fu;
  a1[1] ^= 0x54u;
  a1[2] ^= 0x33u;
  ++a1[3];
  a1[4] ^= 0x1Eu;
  a1[5] ^= 0x76u;
  a1[6] ^= 0x77u;
  a1[7] ^= 4u;
  a1[8] ^= 0x45u;
  ++a1[9];
  a1[10] ^= 0x20u;
  a1[11] ^= 0x58u;
  ++*a1;
  a1[1] ^= 0x4Bu;
  a1[2] ^= 0x44u;
  ++a1[3];
  a1[4] ^= 0x3Cu;
  a1[5] ^= 0x21u;
  a1[6] ^= a1[5];
  a1[7] ^= 2u;
  a1[8] ^= 0x5Bu;
  a1[9] ^= 0x3Cu;
  a1[10] ^= 0x70u;
  a1[11] ^= 0x3Bu;
  *a1 ^= 0x20u;
  a1[1] ^= 0x15u;
  a1[2] ^= 0x17u;
  a1[3] ^= 0x20u;
  a1[4] ^= 0x39u;
  a1[5] ^= a1[4];
  a1[6] ^= 0x3Fu;
  a1[7] ^= a1[4];
  a1[8] ^= 0x4Bu;
  a1[9] ^= 0x58u;
  a1[10] ^= 0x55u;
  a1[11] ^= 0x4Bu;
  *a1 ^= 0x2Cu;
  a1[1] ^= 0x6Eu;
  a1[2] ^= 0x27u;
  a1[3] ^= a1[1];
  a1[4] ^= 4u;
  ++a1[5];
  ++a1[6];
  a1[7] ^= 0x1Bu;
  a1[8] ^= 0x3Cu;
  a1[9] ^= 0x65u;
  a1[10] ^= 0x53u;
  a1[11] ^= 8u;
  *a1 ^= 0x79u;
  a1[1] ^= 0x2Cu;
  a1[2] ^= 0xCu;
  a1[3] ^= 0x11u;
  a1[4] ^= 0x11u;
  ++a1[5];
  a1[6] ^= 0x5Cu;
  a1[7] ^= 0x1Du;
  a1[8] ^= 0x2Fu;
  a1[9] ^= a1[2];
  a1[10] ^= 0x12u;
  a1[11] ^= a1[2];
  *a1 ^= 0x36u;
  a1[1] ^= 0x7Fu;
  ++a1[2];
  a1[3] ^= 0x2Du;
  a1[4] ^= 0x78u;
  a1[5] ^= 8u;
  a1[6] ^= 0x6Fu;
  a1[7] ^= 0x51u;
  a1[8] ^= 0x36u;
  a1[9] ^= 0x64u;
  ++a1[10];
  a1[11] ^= 0x4Cu;
  ++*a1;
  a1[1] ^= 0x49u;
  a1[2] ^= 9u;
  a1[3] ^= 0x50u;
  a1[4] ^= 0x13u;
  a1[5] ^= 0x64u;
  a1[6] ^= 0x5Eu;
  a1[7] ^= a1[3];
  a1[8] ^= 0x34u;
  a1[9] ^= 0x39u;
  a1[10] ^= a1[9];
  a1[11] ^= 7u;
  ++*a1;
  a1[1] ^= 0x48u;
  a1[2] ^= 0x7Cu;
  a1[3] ^= 0x50u;
  a1[4] ^= 0x55u;
  a1[5] ^= 0x48u;
  a1[6] ^= 0x6Du;
  a1[7] ^= 0x7Cu;
  a1[8] ^= 0x46u;
  a1[9] ^= 0x72u;
  a1[10] ^= 0x77u;
  a1[11] ^= a1[6];
  *a1 ^= 0x71u;
  a1[1] ^= *a1;
  a1[2] ^= 0x52u;
  a1[3] ^= 0x38u;
  a1[4] ^= 0x4Du;
  a1[5] ^= 0xAu;
  a1[6] ^= 0x4Cu;
  a1[7] ^= a1[2];
  a1[8] ^= 0x3Cu;
  a1[9] ^= 0x4Au;
  a1[10] ^= 0x37u;
  ++a1[11];
  *a1 ^= 0x43u;
  ++a1[1];
  ++a1[2];
  a1[3] ^= 0x29u;
  a1[4] ^= a1[2];
  a1[5] ^= 0x4Au;
  a1[6] ^= 0x32u;
  ++a1[7];
  a1[8] ^= 0x27u;
  a1[9] ^= 0x4Eu;
  a1[10] ^= 0x16u;
  a1[11] ^= 0x73u;
  *a1 ^= 0x22u;
  a1[1] ^= 0x59u;
  a1[2] ^= *a1;
  a1[3] ^= 0x29u;
  a1[4] ^= 1u;
  a1[5] ^= 0x1Bu;
  a1[6] ^= 0x35u;
  ++a1[7];
  a1[8] ^= 0xDu;
  a1[9] ^= 0x20u;
  a1[10] ^= 0x42u;
  a1[11] ^= 0x29u;
  *a1 ^= 0x77u;
  ++a1[1];
  a1[2] ^= 0x36u;
  a1[3] ^= 0x30u;
  a1[4] ^= 0x60u;
  a1[5] ^= 0x52u;
  a1[6] ^= 0x3Cu;
  a1[7] ^= 0xAu;
  a1[8] ^= a1[2];
  a1[9] ^= 0x78u;
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x5Du;
  a1[1] ^= *a1;
  a1[2] ^= a1[1];
  a1[3] ^= 0x4Bu;
  a1[4] ^= 0x1Eu;
  a1[5] ^= *a1;
  a1[6] ^= 0xFu;
  ++a1[7];
  a1[8] ^= 0x64u;
  ++a1[9];
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x17u;
  ++a1[1];
  a1[2] ^= 0x78u;
  a1[3] ^= a1[2];
  a1[4] ^= 0x5Eu;
  a1[5] ^= 0x53u;
  a1[6] ^= a1[2];
  a1[7] ^= 0x2Du;
  a1[8] ^= 4u;
  a1[9] ^= 0x3Du;
  ++a1[10];
  a1[11] ^= 1u;
  *a1 ^= 0x41u;
  a1[1] ^= 0x31u;
  a1[2] ^= 0x4Au;
  ++a1[3];
  a1[4] ^= 0x73u;
  ++a1[5];
  a1[6] ^= 0x5Du;
  a1[7] ^= 0x11u;
  ++a1[8];
  a1[9] ^= 3u;
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x2Cu;
  a1[1] ^= *a1;
  a1[2] ^= a1[1];
  a1[3] ^= 0x53u;
  a1[4] ^= 0x50u;
  a1[5] ^= a1[1];
  a1[6] ^= 0xFu;
  a1[7] ^= 0x13u;
  a1[8] ^= 0x21u;
  a1[9] ^= 0x55u;
  ++a1[10];
  a1[11] ^= 0x3Cu;
  ++*a1;
  a1[1] ^= 0x38u;
  a1[2] ^= 0x2Du;
  a1[3] ^= 0x7Fu;
  a1[4] ^= 0x73u;
  a1[5] ^= 0x56u;
  a1[6] ^= 0xFu;
  a1[7] ^= a1[4];
  a1[8] ^= 0x1Eu;
  a1[9] ^= 3u;
  ++a1[10];
  a1[11] ^= 0x64u;
  *a1 ^= 0x6Eu;
  a1[1] ^= 0x5Bu;
  a1[2] ^= 0x4Au;
  a1[3] ^= 0x4Bu;
  a1[4] ^= 0x1Eu;
  a1[5] ^= 0x60u;
  a1[6] ^= 0xEu;
  a1[7] ^= a1[4];
  a1[8] ^= 8u;
  a1[9] ^= 0x35u;
  a1[10] ^= a1[8];
  a1[11] ^= 0x1Bu;
  *a1 ^= 0x6Eu;
  a1[1] ^= 0x32u;
  a1[2] ^= 0x66u;
  a1[3] ^= 0x7Cu;
  a1[4] ^= 0x3Au;
  a1[5] ^= 0x1Eu;
  a1[6] ^= 0x53u;
  a1[7] ^= 0x12u;
  ++a1[8];
  a1[9] ^= 0x64u;
  a1[10] ^= 0x6Du;
  a1[11] ^= 0x6Fu;
  *a1 ^= 0x5Fu;
  a1[1] ^= 0x3Au;
  a1[2] ^= *a1;
  a1[3] ^= 0x58u;
  a1[4] ^= *a1;
  a1[5] ^= a1[1];
  a1[6] ^= 0x7Cu;
  a1[7] ^= 0x10u;
  a1[8] ^= a1[7];
  a1[9] ^= 0x6Cu;
  a1[10] ^= 0x34u;
  a1[11] ^= 0x2Fu;
  *a1 ^= 0xFu;
  ++a1[1];
  a1[2] ^= 0x42u;
  a1[3] ^= 0x3Bu;
  a1[4] ^= *a1;
  a1[5] ^= 0x66u;
  a1[6] ^= 6u;
  a1[7] ^= 0x2Bu;
  a1[8] ^= 0x78u;
  a1[9] ^= 0x1Cu;
  a1[10] ^= 0x27u;
  a1[11] ^= 0x15u;
  *a1 ^= 0x14u;
  ++a1[1];
  a1[2] ^= 2u;
  a1[3] ^= 0x74u;
  a1[4] ^= 0x32u;
  a1[5] ^= 8u;
  ++a1[6];
  a1[7] ^= 0x5Au;
  a1[8] ^= a1[1];
  a1[9] ^= 0x71u;
  a1[10] ^= 0x62u;
  a1[11] ^= a1[9];
  *a1 ^= 0x42u;
  a1[1] ^= 5u;
  a1[2] ^= *a1;
  a1[3] ^= 0x5Au;
  a1[4] ^= a1[2];
  a1[5] ^= 0x16u;
  ++a1[6];
  a1[7] ^= 0x75u;
  ++a1[8];
  ++a1[9];
  a1[10] ^= 0x5Eu;
  ++a1[11];
  *a1 ^= 0x49u;
  ++a1[1];
  a1[2] ^= 0x26u;
  a1[3] ^= 0x2Bu;
  a1[4] ^= 0x3Au;
  a1[5] ^= a1[3];
  a1[6] ^= 0x59u;
  a1[7] ^= 0x4Du;
  ++a1[8];
  a1[9] ^= 0x1Eu;
  a1[10] ^= *a1;
  a1[11] ^= 0x25u;
  ++*a1;
  a1[1] ^= 0x46u;
  a1[2] ^= 0x40u;
  a1[3] ^= a1[1];
  a1[4] ^= 0x21u;
  a1[5] ^= 0x7Au;
  ++a1[6];
  a1[7] ^= 0x2Au;
  a1[8] ^= a1[1];
  a1[9] ^= a1[1];
  a1[10] ^= 0x11u;
  a1[11] ^= 0x72u;
  *a1 ^= 8u;
  a1[1] ^= *a1;
  a1[2] ^= 5u;
  a1[3] ^= 0x7Bu;
  ++a1[4];
  ++a1[5];
  a1[6] ^= 0x59u;
  a1[7] ^= *a1;
  a1[8] ^= 0x78u;
  a1[9] ^= 0x4Cu;
  a1[10] ^= a1[4];
  a1[11] ^= 0x67u;
  *a1 ^= 0x5Cu;
  a1[1] ^= *a1;
  a1[2] ^= 0x71u;
  a1[3] ^= *a1;
  a1[4] ^= 0x2Fu;
  ++a1[5];
  ++a1[6];
  a1[7] ^= 0x71u;
  a1[8] ^= 9u;
  a1[9] ^= a1[1];
  a1[10] ^= 0x6Au;
  a1[11] ^= 0x1Bu;
  *a1 ^= 0xEu;
  a1[1] ^= 0x2Au;
  a1[2] ^= 0x3Bu;
  ++a1[3];
  ++a1[4];
  ++a1[5];
  a1[6] ^= 0x4Cu;
  ++a1[7];
  a1[8] ^= 0x4Cu;
  a1[9] ^= 0x5Du;
  a1[10] ^= 0x47u;
  a1[11] ^= 0x23u;
  *a1 ^= 0x63u;
  a1[1] ^= 0x58u;
  a1[2] ^= 0x32u;
  a1[3] ^= *a1;
  a1[4] ^= 0x57u;
  ++a1[5];
  a1[6] ^= 0x33u;
  a1[7] ^= 0x3Du;
  a1[8] ^= a1[3];
  a1[9] ^= a1[7];
  a1[10] ^= 0x16u;
  a1[11] ^= a1[1];
  *a1 ^= 0x17u;
  a1[1] ^= *a1;
  a1[2] ^= 0x48u;
  ++a1[3];
  a1[4] ^= 2u;
  a1[5] ^= 0x4Fu;
  a1[6] ^= 0x2Eu;
  a1[7] ^= 0x3Eu;
  ++a1[8];
  a1[9] ^= 0x26u;
  a1[10] ^= a1[8];
  a1[11] ^= a1[9];
  *a1 ^= 0x54u;
  a1[1] ^= 0x40u;
  ++a1[2];
  a1[3] ^= 0x33u;
  a1[4] ^= 0x7Au;
  a1[5] ^= 0x40u;
  a1[6] ^= 0x67u;
  ++a1[7];
  a1[8] ^= 0x3Du;
  a1[9] ^= 0x2Du;
  a1[10] ^= 0x3Bu;
  a1[11] ^= 0x7Du;
  *a1 ^= 0x1Bu;
  ++a1[1];
  a1[2] ^= 0x66u;
  a1[3] ^= 0x6Eu;
  a1[4] ^= 0x7Eu;
  ++a1[5];
  a1[6] ^= 0x59u;
  a1[7] ^= 0x73u;
  a1[8] ^= 1u;
  ++a1[9];
  a1[10] ^= 0x5Du;
  a1[11] ^= 0x55u;
  *a1 ^= 0x58u;
  a1[1] ^= 0x29u;
  a1[2] ^= a1[1];
  a1[3] ^= 0x6Du;
  a1[4] ^= a1[3];
  a1[5] ^= *a1;
  a1[6] ^= 0x2Fu;
  a1[7] ^= 0x66u;
  a1[8] ^= a1[5];
  a1[9] ^= 0x6Fu;
  a1[10] ^= a1[4];
  a1[11] ^= 0x25u;
  *a1 ^= 0x5Du;
  a1[1] ^= 0x73u;
  ++a1[2];
  a1[3] ^= 0x64u;
  ++a1[4];
  a1[5] ^= 0x60u;
  a1[6] ^= 0x5Eu;
  ++a1[7];
  a1[8] ^= 0xFu;
  a1[9] ^= 0x5Cu;
  a1[10] ^= a1[1];
  a1[11] ^= 0x2Bu;
  *a1 ^= 0x5Eu;
  a1[1] ^= 0x69u;
  a1[2] ^= 0x35u;
  a1[3] ^= 0x73u;
  a1[4] ^= a1[2];
  a1[5] ^= 0x5Cu;
  a1[6] ^= 0x79u;
  a1[7] ^= 0x33u;
  a1[8] ^= 0x20u;
  a1[9] ^= 0x6Cu;
  a1[10] ^= 0x23u;
  a1[11] ^= 0x52u;
  *a1 ^= 0x39u;
  ++a1[1];
  a1[2] ^= 0x6Fu;
  a1[3] ^= 0x23u;
  a1[4] ^= 0x40u;
  a1[5] ^= 0x75u;
  ++a1[6];
  a1[7] ^= 0x5Du;
  a1[8] ^= a1[4];
  a1[9] ^= 0x5Eu;
  a1[10] ^= a1[9];
  a1[11] ^= 0x20u;
  *a1 ^= 0xFu;
  ++a1[1];
  ++a1[2];
  a1[3] ^= 0x10u;
  a1[4] ^= a1[3];
  a1[5] ^= a1[3];
  a1[6] ^= a1[2];
  a1[7] ^= 0x15u;
  a1[8] ^= a1[7];
  a1[9] ^= 0x36u;
  a1[10] ^= a1[6];
  a1[11] ^= 0x7Du;
  *a1 ^= 0x54u;
  a1[1] ^= *a1;
  a1[2] ^= 0x6Eu;
  a1[3] ^= 0x1Bu;
  a1[4] ^= 0x30u;
  a1[5] ^= a1[2];
  a1[6] ^= a1[5];
  a1[7] ^= 0x3Bu;
  a1[8] ^= 0x7Eu;
  a1[9] ^= 0x1Eu;
  a1[10] ^= 0x29u;
  a1[11] ^= a1[7];
  *a1 ^= 6u;
  a1[1] ^= 0x4Fu;
  a1[2] ^= a1[1];
  a1[3] ^= 0x2Du;
  a1[4] ^= 0x2Fu;
  a1[5] ^= 0x52u;
  a1[6] ^= 0x41u;
  a1[7] ^= 0x4Au;
  ++a1[8];
  a1[9] ^= 0x54u;
  a1[10] ^= 0x57u;
  a1[11] ^= 5u;
  *a1 ^= 0x35u;
  a1[1] ^= *a1;
  a1[2] ^= 0x61u;
  a1[3] ^= a1[2];
  a1[4] ^= 3u;
  a1[5] ^= 0x55u;
  a1[6] ^= 0x5Fu;
  ++a1[7];
  a1[8] ^= 0x22u;
  a1[9] ^= 0x3Bu;
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x1Eu;
  a1[1] ^= 0x77u;
  a1[2] ^= 0x60u;
  a1[3] ^= 0x4Cu;
  a1[4] ^= 0x4Fu;
  a1[5] ^= a1[4];
  a1[6] ^= 0x7Du;
  a1[7] ^= *a1;
  a1[8] ^= 0x2Du;
  ++a1[9];
  a1[10] ^= 0x26u;
  a1[11] ^= 0x29u;
  ++*a1;
  a1[1] ^= 0x1Eu;
  a1[2] ^= 0x2Fu;
  a1[3] ^= a1[2];
  a1[4] ^= 0x54u;
  a1[5] ^= 0xCu;
  a1[6] ^= 0x24u;
  a1[7] ^= 0x25u;
  ++a1[8];
  a1[9] ^= 0x75u;
  a1[10] ^= 0x2Au;
  a1[11] ^= 0x54u;
  *a1 ^= 0x37u;
  a1[1] ^= 0x47u;
  a1[2] ^= 9u;
  a1[3] ^= 0x75u;
  a1[4] ^= 0x1Eu;
  a1[5] ^= 0x5Du;
  a1[6] ^= 0x21u;
  a1[7] ^= 0x58u;
  a1[8] ^= 0x60u;
  a1[9] ^= 0x3Cu;
  a1[10] ^= 0x2Du;
  a1[11] ^= 0x7Cu;
  ++*a1;
  a1[1] ^= 6u;
  a1[2] ^= 7u;
  ++a1[3];
  a1[4] ^= 0x3Bu;
  a1[5] ^= 0x1Bu;
  a1[6] ^= a1[1];
  a1[7] ^= 0x26u;
  a1[8] ^= 0x3Du;
  ++a1[9];
  a1[10] ^= 0x7Fu;
  ++a1[11];
  *a1 ^= 0x2Cu;
  a1[1] ^= 0x1Eu;
  a1[2] ^= 0x1Du;
  a1[3] ^= 0x3Au;
  a1[4] ^= 0x1Bu;
  a1[5] ^= 0x7Bu;
  a1[6] ^= 0x44u;
  a1[7] ^= a1[2];
  a1[8] ^= 0x38u;
  ++a1[9];
  a1[10] ^= 0x3Eu;
  ++a1[11];
  ++*a1;
  ++a1[1];
  a1[2] ^= 0xAu;
  a1[3] ^= 0xFu;
  a1[4] ^= 0xBu;
  a1[5] ^= a1[1];
  a1[6] ^= 0x25u;
  ++a1[7];
  a1[8] ^= 0x54u;
  a1[9] ^= 0x70u;
  a1[10] ^= 6u;
  a1[11] ^= 6u;
  *a1 ^= 0x3Du;
  a1[1] ^= 0xEu;
  a1[2] ^= 0x19u;
  a1[3] ^= 0x61u;
  a1[4] ^= a1[2];
  a1[5] ^= 0x7Fu;
  a1[6] ^= 0x65u;
  a1[7] ^= 0x44u;
  a1[8] ^= 0x61u;
  a1[9] ^= 0x79u;
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x3Fu;
  a1[1] ^= 0x54u;
  a1[2] ^= a1[1];
  a1[3] ^= 9u;
  a1[4] ^= a1[2];
  a1[5] ^= a1[2];
  a1[6] ^= 0x59u;
  a1[7] ^= a1[6];
  a1[8] ^= a1[4];
  a1[9] ^= 0x61u;
  a1[10] ^= 0x6Eu;
  ++a1[11];
  *a1 ^= 0x46u;
  ++a1[1];
  ++a1[2];
  a1[3] ^= 0x1Cu;
  a1[4] ^= 0x6Au;
  a1[5] ^= 5u;
  a1[6] ^= 0x74u;
  a1[7] ^= 0x10u;
  a1[8] ^= a1[1];
  a1[9] ^= 0x4Bu;
  a1[10] ^= 0x1Du;
  a1[11] ^= 0x51u;
  ++*a1;
  ++a1[1];
  a1[2] ^= 0x3Bu;
  ++a1[3];
  ++a1[4];
  a1[5] ^= 0x37u;
  a1[6] ^= 0x41u;
  a1[7] ^= a1[4];
  a1[8] ^= a1[6];
  a1[9] ^= *a1;
  a1[10] ^= 0x11u;
  a1[11] ^= a1[2];
  *a1 ^= 0x21u;
  a1[1] ^= 9u;
  a1[2] ^= a1[1];
  a1[3] ^= 0x19u;
  ++a1[4];
  a1[5] ^= 0x37u;
  a1[6] ^= 0x6Bu;
  ++a1[7];
  a1[8] ^= 0xCu;
  ++a1[9];
  a1[10] ^= 0x28u;
  a1[11] ^= 0x5Eu;
  *a1 ^= 0x24u;
  a1[1] ^= *a1;
  a1[2] ^= 0x7Cu;
  a1[3] ^= 0x4Cu;
  a1[4] ^= 0x39u;
  a1[5] ^= 0x34u;
  a1[6] ^= 0x4Du;
  a1[7] ^= 0x55u;
  a1[8] ^= a1[3];
  a1[9] ^= 0x4Bu;
  a1[10] ^= 0x7Du;
  ++a1[11];
  *a1 ^= 0x1Au;
  a1[1] ^= 0x69u;
  a1[2] ^= 0x72u;
  ++a1[3];
  a1[4] ^= 0x7Cu;
  ++a1[5];
  a1[6] ^= 0x7Du;
  ++a1[7];
  a1[8] ^= 0x7Eu;
  a1[9] ^= 0x6Au;
  a1[10] ^= 0x11u;
  a1[11] ^= *a1;
  *a1 ^= 0x7Cu;
  a1[1] ^= 0x5Au;
  a1[2] ^= *a1;
  a1[3] ^= 0xFu;
  a1[4] ^= 0x5Bu;
  a1[5] ^= 0x50u;
  a1[6] ^= a1[4];
  a1[7] ^= 0x28u;
  a1[8] ^= 0xFu;
  a1[9] ^= 0x15u;
  a1[10] ^= 0x4Au;
  a1[11] ^= 0xAu;
  ++*a1;
  a1[1] ^= 0x11u;
  a1[2] ^= 0x39u;
  a1[3] ^= 0x65u;
  ++a1[4];
  a1[5] ^= 0x71u;
  a1[6] ^= 0x66u;
  a1[7] ^= a1[6];
  a1[8] ^= 0x4Au;
  a1[9] ^= 0x27u;
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x1Du;
  a1[1] ^= 0x68u;
  a1[2] ^= 0x6Eu;
  a1[3] ^= 0x28u;
  a1[4] ^= 6u;
  ++a1[5];
  a1[6] ^= 0x30u;
  ++a1[7];
  a1[8] ^= 0x5Du;
  a1[9] ^= a1[7];
  a1[10] ^= 0x61u;
  ++a1[11];
  *a1 ^= 0x15u;
  ++a1[1];
  a1[2] ^= 0x2Du;
  a1[3] ^= 0x24u;
  ++a1[4];
  a1[5] ^= 0x5Fu;
  a1[6] ^= a1[2];
  a1[7] ^= 0x23u;
  a1[8] ^= 0x10u;
  ++a1[9];
  a1[10] ^= 0x7Eu;
  a1[11] ^= *a1;
  *a1 ^= 0x32u;
  a1[1] ^= 2u;
  a1[2] ^= a1[1];
  a1[3] ^= a1[2];
  a1[4] ^= 0x39u;
  a1[5] ^= 0x59u;
  a1[6] ^= 0x69u;
  a1[7] ^= *a1;
  a1[8] ^= 0x32u;
  a1[9] ^= 0x17u;
  ++a1[10];
  a1[11] ^= 9u;
  *a1 ^= 0x6Du;
  a1[1] ^= *a1;
  a1[2] ^= a1[1];
  a1[3] ^= *a1;
  a1[4] ^= 0x6Du;
  a1[5] ^= 0x7Cu;
  a1[6] ^= 5u;
  ++a1[7];
  a1[8] ^= 0x23u;
  a1[9] ^= a1[4];
  a1[10] ^= 0x5Au;
  ++a1[11];
  *a1 ^= 0x29u;
  a1[1] ^= 0x13u;
  a1[2] ^= 0x5Fu;
  a1[3] ^= *a1;
  a1[4] ^= 0x11u;
  a1[5] ^= 0x32u;
  ++a1[6];
  a1[7] ^= 0x3Au;
  a1[8] ^= a1[1];
  a1[9] ^= 0x3Du;
  a1[10] ^= *a1;
  a1[11] ^= a1[4];
  *a1 ^= 0x2Du;
  a1[1] ^= *a1;
  a1[2] ^= a1[1];
  a1[3] ^= a1[2];
  a1[4] ^= 0x27u;
  a1[5] ^= 0x20u;
  a1[6] ^= 0x7Fu;
  a1[7] ^= 0x53u;
  a1[8] ^= a1[4];
  a1[9] ^= a1[1];
  a1[10] ^= 0x44u;
  a1[11] ^= 0x74u;
  *a1 ^= 0x2Eu;
  a1[1] ^= 7u;
  a1[2] ^= 3u;
  ++a1[3];
  a1[4] ^= 0x32u;
  a1[5] ^= 0x16u;
  a1[6] ^= 0x1Cu;
  a1[7] ^= 6u;
  ++a1[8];
  a1[9] ^= 0x5Du;
  a1[10] ^= 0x2Fu;
  a1[11] ^= 0x31u;
  *a1 ^= 0xFu;
  a1[1] ^= *a1;
  a1[2] ^= *a1;
  a1[3] ^= a1[2];
  a1[4] ^= 0x40u;
  a1[5] ^= 0x14u;
  a1[6] ^= 0x64u;
  a1[7] ^= 0x47u;
  a1[8] ^= a1[7];
  a1[9] ^= 0x57u;
  a1[10] ^= a1[2];
  a1[11] ^= 0x20u;
  *a1 ^= 0x59u;
  a1[1] ^= 0x74u;
  a1[2] ^= *a1;
  a1[3] ^= 0x7Du;
  a1[4] ^= 0x23u;
  a1[5] ^= 0x25u;
  a1[6] ^= 0x11u;
  a1[7] ^= a1[1];
  a1[8] ^= 0x53u;
  a1[9] ^= 0x49u;
  a1[10] ^= 0x78u;
  a1[11] ^= 0x68u;
  *a1 ^= 0x4Du;
  a1[1] ^= 0x70u;
  a1[2] ^= 4u;
  a1[3] ^= 0x2Eu;
  a1[4] ^= 0x35u;
  a1[5] ^= 0x78u;
  a1[6] ^= 0x53u;
  a1[7] ^= 0x66u;
  a1[8] ^= 0xCu;
  a1[9] ^= a1[2];
  a1[10] ^= 0x1Bu;
  ++a1[11];
  *a1 ^= 2u;
  a1[1] ^= 0x2Du;
  a1[2] ^= a1[1];
  a1[3] ^= 0x54u;
  a1[4] ^= 7u;
  ++a1[5];
  ++a1[6];
  a1[7] ^= 2u;
  a1[8] ^= 0x47u;
  a1[9] ^= a1[5];
  a1[10] ^= 0x6Eu;
  a1[11] ^= a1[2];
  *a1 ^= 6u;
  a1[1] ^= 0x4Cu;
  a1[2] ^= *a1;
  a1[3] ^= *a1;
  a1[4] ^= 0x76u;
  a1[5] ^= a1[3];
  a1[6] ^= a1[3];
  a1[7] ^= a1[2];
  a1[8] ^= 0x24u;
  ++a1[9];
  a1[10] ^= 0x7Cu;
  a1[11] ^= 0x20u;
  *a1 ^= 2u;
  a1[1] ^= *a1;
  a1[2] ^= 0x58u;
  ++a1[3];
  a1[4] ^= 0x5Cu;
  a1[5] ^= a1[2];
  a1[6] ^= 0x6Au;
  a1[7] ^= 9u;
  a1[8] ^= *a1;
  a1[9] ^= 0x55u;
  a1[10] ^= 0x57u;
  a1[11] ^= 0x15u;
  *a1 ^= 0x16u;
  a1[1] ^= 0x7Cu;
  a1[2] ^= 0x7Du;
  a1[3] ^= a1[2];
  a1[4] ^= a1[2];
  a1[5] ^= 0x6Cu;
  a1[6] ^= 0x31u;
  a1[7] ^= 0x4Cu;
  ++a1[8];
  a1[9] ^= 0x45u;
  a1[10] ^= 0x5Eu;
  a1[11] ^= 0x6Bu;
  *a1 ^= 0xEu;
  ++a1[1];
  a1[2] ^= 0x59u;
  a1[3] ^= *a1;
  a1[4] ^= 0xDu;
  a1[5] ^= 0x57u;
  a1[6] ^= 0x61u;
  a1[7] ^= 0x58u;
  a1[8] ^= 0x27u;
  a1[9] ^= 0x71u;
  a1[10] ^= 0x3Au;
  a1[11] ^= a1[3];
  *a1 ^= 0x7Fu;
  a1[1] ^= *a1;
  a1[2] ^= 0x3Eu;
  a1[3] ^= 0x3Au;
  a1[4] ^= a1[1];
  a1[5] ^= 0x1Fu;
  a1[6] ^= 0x28u;
  a1[7] ^= 0x65u;
  a1[8] ^= 0x40u;
  a1[9] ^= a1[8];
  a1[10] ^= 0x75u;
  a1[11] ^= 0x15u;
  *a1 ^= 0x2Au;
  a1[1] ^= 5u;
  ++a1[2];
  ++a1[3];
  a1[4] ^= 0x2Du;
  a1[5] ^= 0x2Au;
  ++a1[6];
  a1[7] ^= 0x40u;
  a1[8] ^= 0x4Bu;
  a1[9] ^= a1[5];
  a1[10] ^= a1[9];
  a1[11] ^= 0x47u;
  *a1 ^= 0x3Au;
  a1[1] ^= 0x4Eu;
  a1[2] ^= *a1;
  a1[3] ^= 8u;
  ++a1[4];
  ++a1[5];
  a1[6] ^= 0x2Du;
  a1[7] ^= 0x7Fu;
  a1[8] ^= 4u;
  ++a1[9];
  ++a1[10];
  a1[11] ^= 0x7Fu;
  ++*a1;
  ++a1[1];
  a1[2] ^= 0x28u;
  a1[3] ^= 0x56u;
  a1[4] ^= 0x13u;
  a1[5] ^= 0x42u;
  a1[6] ^= 0x78u;
  a1[7] ^= a1[5];
  a1[8] ^= 0x23u;
  a1[9] ^= 0x52u;
  ++a1[10];
  a1[11] ^= 6u;
  *a1 ^= 0x47u;
  ++a1[1];
  a1[2] ^= 0x43u;
  a1[3] ^= 0x1Eu;
  a1[4] ^= a1[1];
  a1[5] ^= 0x7Bu;
  a1[6] ^= 0x55u;
  a1[7] ^= 0x48u;
  a1[8] ^= 0x4Eu;
  ++a1[9];
  ++a1[10];
  ++a1[11];
  *a1 ^= 0x35u;
  a1[1] ^= 0x38u;
  a1[2] ^= 0x4Au;
  a1[3] ^= 0x6Fu;
  ++a1[4];
  ++a1[5];
  a1[6] ^= 0x4Du;
  a1[7] ^= 0x14u;
  a1[8] ^= 0x40u;
  a1[9] ^= 0x62u;
  a1[10] ^= 0x7Bu;
  a1[11] ^= 4u;
  *a1 ^= 0x3Cu;
  a1[1] ^= *a1;
  a1[2] ^= 0x75u;
  a1[3] ^= 0x24u;
  ++a1[4];
  a1[5] ^= 0x6Fu;
  a1[6] ^= 0x6Cu;
  a1[7] ^= 0x3Eu;
  a1[8] ^= 0x5Eu;
  a1[9] ^= 0x22u;
  ++a1[10];
  a1[11] ^= 0x79u;
  *a1 ^= 0x7Du;
  a1[1] ^= 0x48u;
  ++a1[2];
  a1[3] ^= 0x4Au;
  a1[4] ^= a1[2];
  a1[5] ^= 0xFu;
  a1[6] ^= 0xBu;
  a1[7] ^= 0x16u;
  a1[8] ^= 0x56u;
  a1[9] ^= a1[1];
  a1[10] ^= 0x42u;
  a1[11] ^= 0x16u;
  *a1 ^= 0x7Du;
  a1[1] ^= 0x4Du;
  a1[2] ^= 0x45u;
  a1[3] ^= *a1;
  a1[4] ^= 0x59u;
  ++a1[5];
  a1[6] ^= 0x77u;
  ++a1[7];
  a1[8] ^= 0x19u;
  a1[9] ^= 0x74u;
  a1[10] ^= 0x66u;
  a1[11] ^= 0x3Fu;
  ++*a1;
  a1[1] ^= 0x68u;
  a1[2] ^= 0x4Bu;
  ++a1[3];
  a1[4] ^= 0x30u;
  a1[5] ^= a1[2];
  a1[6] ^= a1[4];
  a1[7] ^= 0x52u;
  a1[8] ^= 0x4Fu;
  a1[9] ^= 0x4Fu;
  a1[10] ^= 0x75u;
  a1[11] ^= 0x4Au;
  *a1 ^= 0x2Cu;
  a1[1] ^= 0x3Eu;
  ++a1[2];
  a1[3] ^= 0x11u;
  a1[4] ^= 0x41u;
  a1[5] ^= 0x4Du;
  a1[6] ^= 2u;
  a1[7] ^= 0x7Du;
  a1[8] ^= a1[4];
  a1[9] ^= 0x79u;
  ++a1[10];
  a1[11] ^= 0x48u;
  *a1 ^= 0x6Du;
  a1[1] ^= 0x68u;
  ++a1[2];
  a1[3] ^= 0x65u;
  a1[4] ^= *a1;
  a1[5] ^= 0x33u;
  a1[6] ^= 0x49u;
  ++a1[7];
  a1[8] ^= 0x4Fu;
  a1[9] ^= 0x38u;
  ++a1[10];
  a1[11] ^= 0x58u;
  *a1 ^= 0x45u;
  ++a1[1];
  a1[2] ^= 0x3Fu;
  a1[3] ^= 0x3Fu;
  ++a1[4];
  a1[5] ^= 0x74u;
  a1[6] ^= 0x6Eu;
  a1[7] ^= 0x1Fu;
  a1[8] ^= 0x7Cu;
  ++a1[9];
  a1[10] ^= 0x21u;
  a1[11] ^= 0x4Bu;
  ++*a1;
  a1[1] ^= 0x47u;
  a1[2] ^= 0x2Bu;
  ++a1[3];
  a1[4] ^= 0x6Eu;
  ++a1[5];
  a1[6] ^= 0x23u;
  a1[7] ^= 0x75u;
  a1[8] ^= 0x6Cu;
  a1[9] ^= 0x69u;
  a1[10] ^= 0x3Fu;
  a1[11] ^= 0x41u;
  *a1 ^= 0x52u;
  a1[1] ^= *a1;
  a1[2] ^= 0x61u;
  ++a1[3];
  ++a1[4];
  a1[5] ^= 0x3Cu;
  ++a1[6];
  a1[7] ^= 0x73u;
  a1[8] ^= 0x64u;
  ++a1[9];
  a1[10] ^= 0x36u;
  a1[11] ^= 0x62u;
  *a1 ^= 0x7Eu;
  a1[1] ^= 0x11u;
  a1[2] ^= a1[1];
  a1[3] ^= 0x53u;
  a1[4] ^= a1[2];
  a1[5] ^= 0xFu;
  a1[6] ^= 0x23u;
  a1[7] ^= *a1;
  a1[8] ^= 0x50u;
  a1[9] ^= 0x54u;
  a1[10] ^= 0x78u;
  a1[11] ^= a1[9];
  *a1 ^= 0x4Fu;
  a1[1] ^= 0x13u;
  a1[2] ^= 0x78u;
  a1[3] ^= 0x1Au;
  a1[4] ^= 0x70u;
  a1[5] ^= 0xCu;
  ++a1[6];
  a1[7] ^= 0x4Bu;
  a1[8] ^= 0x2Eu;
  a1[9] ^= 0x26u;
  a1[10] ^= 0x67u;
  a1[11] ^= 0xAu;
  *a1 ^= 0x7Bu;
  a1[1] ^= 0x11u;
  a1[2] ^= 0x47u;
  ++a1[3];
  a1[4] ^= 0x35u;
  a1[5] ^= 0x7Cu;
  a1[6] ^= 0xCu;
  a1[7] ^= 0x36u;
  ++a1[8];
  a1[9] ^= 0x49u;
  a1[10] ^= 0x38u;
  ++a1[11];
  *a1 ^= 0x37u;
  a1[1] ^= 0x79u;
  a1[2] ^= 0x64u;
  a1[3] ^= 0x59u;
  ++a1[4];
  a1[5] ^= 0x40u;
  a1[6] ^= 0x22u;
  ++a1[7];
  a1[8] ^= 0x2Au;
  ++a1[9];
  a1[10] ^= 0xCu;
  a1[11] ^= 0x4Cu;
  *a1 ^= 0x20u;
  ++a1[1];
  ++a1[2];
  ++a1[3];
  a1[4] ^= 0x4Cu;
  ++a1[5];
  a1[6] ^= 0x21u;
  a1[7] ^= 0xCu;
  a1[8] ^= 0x33u;
  a1[9] ^= 0x5Du;
  a1[10] ^= 0x6Eu;
  a1[11] ^= 0x1Du;
  *a1 ^= 0xBu;
  a1[1] ^= 0x1Cu;
  a1[2] ^= 0x6Du;
  a1[3] ^= 0xAu;
  a1[4] ^= 0x5Cu;
  a1[5] ^= 0x12u;
  ++a1[6];
  a1[7] ^= 0x20u;
  a1[8] ^= 0x5Cu;
  a1[9] ^= 0x36u;
  a1[10] ^= 0x68u;
  a1[11] ^= 6u;
  *a1 ^= 0x1Bu;
  a1[1] ^= 0x67u;
  a1[2] ^= 6u;
  ++a1[3];
  a1[4] ^= 0x58u;
  a1[5] ^= a1[1];
  a1[6] ^= 0x74u;
  ++a1[7];
  a1[8] ^= 0x79u;
  a1[9] ^= 0x45u;
  ++a1[10];
  a1[11] ^= 0xEu;
  *a1 ^= 0x1Bu;
  a1[1] ^= 0x55u;
  a1[2] ^= 0x7Bu;
  a1[3] ^= 0x5Bu;
  a1[4] ^= *a1;
  a1[5] ^= 0x38u;
  a1[6] ^= a1[2];
  a1[7] ^= 6u;
  a1[8] ^= 0x7Bu;
  a1[9] ^= 0x16u;
  a1[10] ^= 5u;
  ++a1[11];
  *a1 ^= 0x1Cu;
  a1[1] ^= 0x5Fu;
  a1[2] ^= 0x1Fu;
  a1[3] ^= 0x2Du;
  a1[4] ^= 0xDu;
  a1[5] ^= 0x6Au;
  a1[6] ^= a1[4];
  a1[7] ^= 0x64u;
  a1[8] ^= 0xBu;
  a1[9] ^= 0x7Bu;
  a1[10] ^= 0x7Bu;
  a1[11] ^= 0x28u;
  *a1 ^= 0x64u;
  ++a1[1];
  a1[2] ^= 0x12u;
  a1[3] ^= 0x51u;
  a1[4] ^= 0x10u;
  a1[5] ^= 0x40u;
  a1[6] ^= 0x10u;
  a1[7] ^= a1[3];
  a1[8] ^= 0x51u;
  a1[9] ^= 0x5Bu;
  a1[10] ^= 0x7Au;
  a1[11] ^= 0x61u;
  *a1 ^= 0x78u;
  a1[1] ^= *a1;
  a1[2] ^= 0x56u;
  a1[3] ^= 0x59u;
  a1[4] ^= 8u;
  a1[5] ^= 0x31u;
  a1[6] ^= 0x37u;
  a1[7] ^= 0x25u;
  a1[8] ^= 0x1Cu;
  ++a1[9];
  a1[10] ^= 0x71u;
  a1[11] ^= 0x61u;
  *a1 ^= 0x76u;
  a1[1] ^= 0x6Du;
  a1[2] ^= 0x65u;
  ++a1[3];
  a1[4] ^= 3u;
  a1[5] ^= 0x1Cu;
  a1[6] ^= 0x6Cu;
  ++a1[7];
  a1[8] ^= 9u;
  a1[9] ^= 0x29u;
  ++a1[10];
  a1[11] ^= 0x16u;
  *a1 ^= 0x63u;
  a1[1] ^= 0x35u;
  a1[2] ^= 0x79u;
  a1[3] ^= 0x1Cu;
  a1[4] ^= a1[2];
  a1[5] ^= a1[1];

[培训]Windows内核深度攻防:从Hook技术到Rootkit实战!

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回