
/* WARNING: Switch with 1 destination removed at 0x001148c0 */

int cast5_setup(uchar *key,int keylen,int num_rounds,symmetric_key *skey)

{
  ulong32 *puVar1;
  int iVar2;
  uint uVar3;
  uint uVar4;
  uint uVar5;
  uint uVar6;
  ulong uVar7;
  byte bVar11;
  ulong32 uVar8;
  uint uVar9;
  uint uVar10;
  uint uVar12;
  uint uVar13;
  ulong32 uVar14;
  uint uVar15;
  uint uVar16;
  uint uVar17;
  uint uVar18;
  uint uVar19;
  uint uVar20;
  uint uVar21;
  ulong uVar22;
  uint uVar23;
  uint uVar24;
  symmetric_key *psVar25;
  uint uVar26;
  long in_FS_OFFSET;
  byte bStack_c8;
  uint uStack_58;
  uint uStack_54;
  uint uStack_50;
  uint uStack_4c;
  long lStack_40;
  
  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);
  if (key == (uchar *)0x0) {
                    /* WARNING: Subroutine does not return */
    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);
  }
  if (skey != (symmetric_key *)0x0) {
    if (((num_rounds & 0xffffffefU) == 0) || (num_rounds == 0xc)) {
      if (((num_rounds != 0xc) || (iVar2 = 4, keylen < 0xb)) && (iVar2 = 3, keylen - 5U < 0xc)) {
        zeromem(&uStack_58,0x10);
        __memcpy_chk(&uStack_58,key,(long)keylen,0x10);
        uVar26 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |
                 uStack_50 << 0x18;
        uVar3 = S6[uStack_50 >> 0x18];
        uVar18 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |
                 uStack_54 << 0x18;
        uVar7 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8
                       | uStack_4c << 0x18);
        uVar8 = S7[uStack_50 & 0xff];
        uVar14 = S6[uVar7 & 0xff];
        uVar23 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |
                 uStack_58 << 0x18;
        psVar25 = skey;
        do {
          uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^
                            uVar23 ^ uVar8;
          uVar9 = uVar15 >> 0x10 & 0xff;
          uVar20 = uVar15 >> 0x18;
          uVar24 = uVar15 & 0xff;
          uVar23 = S7[uVar9];
          uVar16 = uVar15 >> 8 & 0xff;
          uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23;
          uVar10 = uVar12 >> 8 & 0xff;
          uVar21 = uVar12 >> 0x10 & 0xff;
          uVar4 = S6[uVar10];
          uVar13 = uVar12 >> 0x18;
          uVar6 = S7[uVar21];
          uVar10 = S8[uVar10];
          bStack_c8 = (byte)uVar12;
          uVar22 = (ulong)bStack_c8;
          uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6;
          uVar26 = S5[uVar5 >> 8 & 0xff];
          uVar17 = uVar5 >> 0x10 & 0xff;
          uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3;
          (psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17];
          (psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26;
          uVar26 = S8[uVar16];
          (psVar25->des).ek[2] =
               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff];
          uVar18 = S6[uVar22];
          uVar4 = S7[uVar13];
          (psVar25->des).ek[3] =
               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff];
          uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5;
          uVar17 = uVar5 & 0xff;
          uVar18 = uVar5 >> 0x10 & 0xff;
          uVar19 = S7[uVar18] ^
                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff];
          uVar20 = uVar19 & 0xff;
          uVar23 = S6[uVar19 >> 8 & 0xff];
          uVar6 = uVar19 >> 0x10 & 0xff;
          uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6];
          uVar26 = uVar9 >> 0x18;
          uVar10 = uVar9 >> 0x10 & 0xff;
          uVar15 = uVar9 & 0xff;
          uVar12 = uVar9 >> 8 & 0xff;
          uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10];
          uVar3 = S7[uVar4 >> 0x18];
          uVar13 = uVar4 >> 8 & 0xff;
          uVar16 = uVar4 >> 0x10 & 0xff;
          (psVar25->des).ek[4] =
               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16];
          (psVar25->des).ek[5] =
               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16];
          uVar26 = S7[uVar26];
          uVar18 = S6[uVar4 & 0xff];
          (psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10];
          (psVar25->des).ek[7] =
               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12];
          uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16];
          uVar5 = uVar24 >> 0x18;
          uVar16 = uVar24 >> 8 & 0xff;
          uVar13 = uVar24 & 0xff;
          uVar18 = uVar24 >> 0x10 & 0xff;
          uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16];
          uVar21 = uVar17 >> 8 & 0xff;
          uVar3 = S5[uVar17 & 0xff];
          uVar26 = S6[uVar21];
          uVar9 = uVar17 >> 0x18;
          uVar12 = uVar17 >> 0x10 & 0xff;
          uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12];
          uVar10 = uVar23 >> 8 & 0xff;
          uVar20 = uVar23 >> 0x10 & 0xff;
          uVar15 = S6[uVar20] ^
                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10];
          uVar4 = S5[uVar18];
          (psVar25->des).ek[8] =
               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]
          ;
          uVar18 = S7[uVar16];
          uVar6 = S7[uVar23 >> 0x18];
          (psVar25->des).ek[9] =
               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18];
          (psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20];
          uVar3 = S5[uVar12];
          uVar26 = S8[uVar21];
          (psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10];
          uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23;
          uVar12 = uVar23 & 0xff;
          uVar6 = S7[uVar23 >> 0x10 & 0xff];
          bVar11 = (byte)(uVar23 >> 8);
          uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6;
          uVar20 = uVar18 & 0xff;
          uVar9 = uVar18 >> 8 & 0xff;
          uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^
                   S7[uVar18 >> 0x10 & 0xff];
          uVar4 = S7[uVar20];
          uVar10 = S6[uVar26 >> 0x10 & 0xff];
          uVar16 = uVar26 >> 0x18;
          uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^
                   uVar10;
          uVar7 = (ulong)uVar15;
          uVar5 = S5[uVar12];
          puVar1 = (psVar25->des).ek;
          uVar3 = S6[uVar26 & 0xff];
          uVar9 = S8[uVar9];
          (psVar25->des).ek[0xd] =
               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^
               S5[uVar26 >> 8 & 0xff];
          uVar12 = S7[uVar12];
          uVar8 = S7[uVar16];
          uVar17 = uVar15 >> 0x10 & 0xff;
          uVar13 = S8[bVar11];
          uVar14 = S6[(byte)uVar15];
          (psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10;
          (psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17];
          (psVar25->des).ek[0xf] =
               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17];
          psVar25 = (symmetric_key *)(puVar1 + 0x10);
        } while ((symmetric_key *)(puVar1 + 0x10) != (symmetric_key *)(skey->des).dk);
        iVar2 = 0;
        (skey->des).dk[0] = keylen;
      }
    }
    else {
      iVar2 = 4;
    }
    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {
                    /* WARNING: Subroutine does not return */
      __stack_chk_fail();
    }
    return iVar2;
  }
                    /* WARNING: Subroutine does not return */
  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);
}



/* WARNING: Switch with 1 destination removed at 0x001148c0 */

undefined8 cast5_setup(long param_1,uint param_2,uint param_3,uint *param_4)

{
  uint uVar1;
  uint uVar2;
  uint uVar3;
  uint uVar4;
  undefined8 uVar5;
  uint uVar6;
  uint uVar7;
  ulong uVar8;
  ulong uVar9;
  ulong uVar10;
  ulong uVar11;
  uint uVar12;
  uint uVar13;
  ulong uVar14;
  ulong uVar15;
  ulong uVar16;
  uint uVar17;
  uint uVar18;
  ulong uVar19;
  ulong uVar20;
  uint uVar21;
  uint uVar22;
  ulong uVar23;
  uint uVar24;
  uint *puVar25;
  uint *puVar26;
  uint uVar27;
  ulong uVar28;
  long in_FS_OFFSET;
  byte bStack_c8;
  uint uStack_58;
  uint uStack_54;
  uint uStack_50;
  uint uStack_4c;
  long lStack_40;
  
  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);
  if (param_1 == 0) {
                    /* WARNING: Subroutine does not return */
    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);
  }
  if (param_4 != (uint *)0x0) {
    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {
      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {
        zeromem(&uStack_58,0x10);
        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);
        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |
                 uStack_50 << 0x18;
        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);
        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |
                 uStack_54 << 0x18;
        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8
                       | uStack_4c << 0x18);
        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);
        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);
        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |
                 uStack_58 << 0x18;
        puVar25 = param_4;
        do {
          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^
                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^
                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;
          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);
          uVar15 = (ulong)(uVar18 >> 0x18);
          uVar20 = (ulong)(uVar18 & 0xff);
          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);
          uVar14 = (ulong)(uVar18 >> 8 & 0xff);
          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^
                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^
                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;
          uVar10 = (ulong)(uVar12 >> 8 & 0xff);
          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);
          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);
          uVar11 = (ulong)(uVar12 >> 0x18);
          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);
          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);
          bStack_c8 = (byte)uVar12;
          uVar10 = (ulong)bStack_c8;
          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^
                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^
                  uVar24 ^ uVar22;
          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);
          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);
          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^
                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^
                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;
          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^
                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^
                     *(uint *)(&DAT_00197e20 + uVar8 * 4);
          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^
                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;
          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);
          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^
                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^
                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^
                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);
          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);
          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);
          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^
                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^
                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^
                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);
          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^
                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;
          uVar23 = (ulong)(uVar6 & 0xff);
          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);
          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^
                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^
                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^
                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);
          uVar28 = (ulong)(uVar22 & 0xff);
          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);
          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);
          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^
                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^
                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^
                   *(uint *)(&DAT_00197a20 + uVar8 * 4);
          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);
          uVar16 = (ulong)(uVar21 >> 0x18);
          uVar14 = (ulong)(uVar21 & 0xff);
          uVar10 = (ulong)(uVar21 >> 8 & 0xff);
          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^
                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^
                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);
          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);
          uVar11 = (ulong)(uVar27 >> 8 & 0xff);
          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);
          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^
                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)
                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);
          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^
                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^
                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^
                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)
          ;
          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);
          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);
          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)
                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);
          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^
                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)
                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^
                       *(uint *)(&DAT_00197a20 + uVar10 * 4);
          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^
                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);
          uVar15 = (ulong)(uVar6 >> 8 & 0xff);
          uVar11 = (ulong)(uVar6 & 0xff);
          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);
          uVar19 = (ulong)(uVar6 >> 0x18);
          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^
                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^
                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^
                   *(uint *)(&DAT_00197e20 + uVar15 * 4);
          uVar20 = (ulong)(uVar13 >> 8 & 0xff);
          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);
          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);
          uVar8 = (ulong)(uVar13 >> 0x18);
          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);
          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^
                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^
                   *(uint *)(&DAT_00197a20 + uVar10 * 4);
          uVar9 = (ulong)(uVar24 >> 8 & 0xff);
          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);
          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^
                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^
                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^
                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^
                   *(uint *)(&DAT_00198220 + uVar9 * 4);
          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);
          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^
                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)
                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^
                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);
          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);
          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);
          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^
                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^
                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^
                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);
          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);
          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);
          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);
          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^
                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^
                         *(uint *)(&DAT_00197a20 + uVar9 * 4);
          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^
                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^
                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;
          uVar14 = (ulong)(uVar24 & 0xff);
          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);
          uVar16 = (ulong)(byte)(uVar24 >> 8);
          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^
                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^
                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^
                   uVar22;
          uVar15 = (ulong)(uVar21 & 0xff);
          uVar9 = (ulong)(uVar21 >> 8 & 0xff);
          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^
                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^
                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^
                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);
          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);
          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);
          uVar10 = (ulong)(uVar27 >> 0x18);
          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^
                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^
                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^
                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;
          uVar8 = (ulong)uVar7;
          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);
          puVar26 = puVar25 + 0x10;
          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);
          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);
          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^
                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^
                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^
                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);
          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);
          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);
          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);
          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);
          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);
          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;
          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^
                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^
                         *(uint *)(&DAT_00197e20 + uVar9 * 4);
          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^
                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^
                         *(uint *)(&DAT_00197620 + uVar9 * 4);
          puVar25 = puVar26;
        } while (puVar26 != param_4 + 0x20);
        uVar5 = 0;
        param_4[0x20] = param_2;
      }
    }
    else {
      uVar5 = 4;
    }
    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {
                    /* WARNING: Subroutine does not return */
      __stack_chk_fail();
    }
    return uVar5;
  }
                    /* WARNING: Subroutine does not return */
  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);
}


JMP qword ptr [0x001dda40]
(translation_unit "/* WARNING: Switch with 1 destination removed at 0x001148c0 */\n\nundefined8 cast5_setup(long param_1,uint param_2,uint param_3,uint *param_4)\n\n{\n  uint uVar1;\n  uint uVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined8 uVar5;\n  uint uVar6;\n  uint uVar7;\n  ulong uVar8;\n  ulong uVar9;\n  ulong uVar10;\n  ulong uVar11;\n  uint uVar12;\n  uint uVar13;\n  ulong uVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  ulong uVar19;\n  ulong uVar20;\n  uint uVar21;\n  uint uVar22;\n  ulong uVar23;\n  uint uVar24;\n  uint *puVar25;\n  uint *puVar26;\n  uint uVar27;\n  ulong uVar28;\n  long in_FS_OFFSET;\n  byte bStack_c8;\n  uint uStack_58;\n  uint uStack_54;\n  uint uStack_50;\n  uint uStack_4c;\n  long lStack_40;\n  \n  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (param_1 == 0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }\n  if (param_4 != (uint *)0x0) {\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }\n    return uVar5;\n  }\n                    /* WARNING: Subroutine does not return */\n  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);\n}\n\n" comment (function_definition "undefined8 cast5_setup(long param_1,uint param_2,uint param_3,uint *param_4)\n\n{\n  uint uVar1;\n  uint uVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined8 uVar5;\n  uint uVar6;\n  uint uVar7;\n  ulong uVar8;\n  ulong uVar9;\n  ulong uVar10;\n  ulong uVar11;\n  uint uVar12;\n  uint uVar13;\n  ulong uVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  ulong uVar19;\n  ulong uVar20;\n  uint uVar21;\n  uint uVar22;\n  ulong uVar23;\n  uint uVar24;\n  uint *puVar25;\n  uint *puVar26;\n  uint uVar27;\n  ulong uVar28;\n  long in_FS_OFFSET;\n  byte bStack_c8;\n  uint uStack_58;\n  uint uStack_54;\n  uint uStack_50;\n  uint uStack_4c;\n  long lStack_40;\n  \n  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (param_1 == 0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }\n  if (param_4 != (uint *)0x0) {\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }\n    return uVar5;\n  }\n                    /* WARNING: Subroutine does not return */\n  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);\n}" type_identifier (function_declarator "cast5_setup(long param_1,uint param_2,uint param_3,uint *param_4)" identifier (parameter_list "(long param_1,uint param_2,uint param_3,uint *param_4)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) , (parameter_declaration "uint param_2" type_identifier identifier) , (parameter_declaration "uint param_3" type_identifier identifier) , (parameter_declaration "uint *param_4" type_identifier (pointer_declarator "*param_4" * identifier)) ))) (compound_statement "{\n  uint uVar1;\n  uint uVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined8 uVar5;\n  uint uVar6;\n  uint uVar7;\n  ulong uVar8;\n  ulong uVar9;\n  ulong uVar10;\n  ulong uVar11;\n  uint uVar12;\n  uint uVar13;\n  ulong uVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  ulong uVar19;\n  ulong uVar20;\n  uint uVar21;\n  uint uVar22;\n  ulong uVar23;\n  uint uVar24;\n  uint *puVar25;\n  uint *puVar26;\n  uint uVar27;\n  ulong uVar28;\n  long in_FS_OFFSET;\n  byte bStack_c8;\n  uint uStack_58;\n  uint uStack_54;\n  uint uStack_50;\n  uint uStack_4c;\n  long lStack_40;\n  \n  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (param_1 == 0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }\n  if (param_4 != (uint *)0x0) {\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }\n    return uVar5;\n  }\n                    /* WARNING: Subroutine does not return */\n  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);\n}" { (declaration "uint uVar1;" type_identifier identifier ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "undefined8 uVar5;" type_identifier identifier ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "ulong uVar8;" type_identifier identifier ;) (declaration "ulong uVar9;" type_identifier identifier ;) (declaration "ulong uVar10;" type_identifier identifier ;) (declaration "ulong uVar11;" type_identifier identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "uint uVar13;" type_identifier identifier ;) (declaration "ulong uVar14;" type_identifier identifier ;) (declaration "ulong uVar15;" type_identifier identifier ;) (declaration "ulong uVar16;" type_identifier identifier ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "ulong uVar19;" type_identifier identifier ;) (declaration "ulong uVar20;" type_identifier identifier ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "ulong uVar23;" type_identifier identifier ;) (declaration "uint uVar24;" type_identifier identifier ;) (declaration "uint *puVar25;" type_identifier (pointer_declarator "*puVar25" * identifier) ;) (declaration "uint *puVar26;" type_identifier (pointer_declarator "*puVar26" * identifier) ;) (declaration "uint uVar27;" type_identifier identifier ;) (declaration "ulong uVar28;" type_identifier identifier ;) (declaration "long in_FS_OFFSET;" (sized_type_specifier "long" long) identifier ;) (declaration "byte bStack_c8;" type_identifier identifier ;) (declaration "uint uStack_58;" type_identifier identifier ;) (declaration "uint uStack_54;" type_identifier identifier ;) (declaration "uint uStack_50;" type_identifier identifier ;) (declaration "uint uStack_4c;" type_identifier identifier ;) (declaration "long lStack_40;" (sized_type_specifier "long" long) identifier ;) (expression_statement "lStack_40 = *(long *)(in_FS_OFFSET + 0x28);" (assignment_expression "lStack_40 = *(long *)(in_FS_OFFSET + 0x28)" identifier = (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (param_1 == 0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }" { comment (expression_statement "crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);" (call_expression "crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0)" identifier (argument_list "("key != NULL","src/ciphers/cast5.c",0x1a0)" ( (string_literal ""key != NULL"" " string_content ") , (string_literal ""src/ciphers/cast5.c"" " string_content ") , number_literal ))) ;) })) (if_statement "if (param_4 != (uint *)0x0) {\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }\n    return uVar5;\n  }" if (parenthesized_expression "(param_4 != (uint *)0x0)" ( (binary_expression "param_4 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }\n    return uVar5;\n  }" { (if_statement "if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }" if (parenthesized_expression "(((param_3 & 0xffffffef) == 0) || (param_3 == 0xc))" ( (binary_expression "((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)" (parenthesized_expression "((param_3 & 0xffffffef) == 0)" ( (binary_expression "(param_3 & 0xffffffef) == 0" (parenthesized_expression "(param_3 & 0xffffffef)" ( (binary_expression "param_3 & 0xffffffef" identifier & number_literal) )) == number_literal) )) || (parenthesized_expression "(param_3 == 0xc)" ( (binary_expression "param_3 == 0xc" identifier == number_literal) ))) )) (compound_statement "{\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }" { (if_statement "if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }" if (parenthesized_expression "(((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc))" ( (binary_expression "((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)" (parenthesized_expression "((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb))" ( (binary_expression "(param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)" (parenthesized_expression "(param_3 != 0xc)" ( (binary_expression "param_3 != 0xc" identifier != number_literal) )) || (parenthesized_expression "(uVar5 = 4, (int)param_2 < 0xb)" ( (comma_expression "uVar5 = 4, (int)param_2 < 0xb" (assignment_expression "uVar5 = 4" identifier = number_literal) , (binary_expression "(int)param_2 < 0xb" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ))) )) && (parenthesized_expression "(uVar5 = 3, param_2 - 5 < 0xc)" ( (comma_expression "uVar5 = 3, param_2 - 5 < 0xc" (assignment_expression "uVar5 = 3" identifier = number_literal) , (binary_expression "param_2 - 5 < 0xc" (binary_expression "param_2 - 5" identifier - number_literal) < number_literal)) ))) )) (compound_statement "{\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }" { (expression_statement "zeromem(&uStack_58,0x10);" (call_expression "zeromem(&uStack_58,0x10)" identifier (argument_list "(&uStack_58,0x10)" ( (pointer_expression "&uStack_58" & identifier) , number_literal ))) ;) (expression_statement "__memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);" (call_expression "__memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10)" identifier (argument_list "(&uStack_58,param_1,(long)(int)param_2,0x10)" ( (pointer_expression "&uStack_58" & identifier) , identifier , (cast_expression "(long)(int)param_2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier)) , number_literal ))) ;) (expression_statement "uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;" (assignment_expression "uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18" identifier = (binary_expression "uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18" (binary_expression "uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8" (binary_expression "uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8" (binary_expression "uStack_50 >> 0x18" identifier >> number_literal) | (binary_expression "(uStack_50 & 0xff0000) >> 8" (parenthesized_expression "(uStack_50 & 0xff0000)" ( (binary_expression "uStack_50 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uStack_50 & 0xff00) << 8" (parenthesized_expression "(uStack_50 & 0xff00)" ( (binary_expression "uStack_50 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uStack_50 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);" (assignment_expression "uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uStack_50 >> 0x18) * 4" (call_expression "(ulong)(uStack_50 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uStack_50 >> 0x18)" ( (binary_expression "uStack_50 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;" (assignment_expression "uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18" identifier = (binary_expression "uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18" (binary_expression "uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8" (binary_expression "uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8" (binary_expression "uStack_54 >> 0x18" identifier >> number_literal) | (binary_expression "(uStack_54 & 0xff0000) >> 8" (parenthesized_expression "(uStack_54 & 0xff0000)" ( (binary_expression "uStack_54 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uStack_54 & 0xff00) << 8" (parenthesized_expression "(uStack_54 & 0xff00)" ( (binary_expression "uStack_54 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uStack_54 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);" (assignment_expression "uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18)" identifier = (call_expression "(ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18)" ( (binary_expression "uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18" (binary_expression "uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8" (binary_expression "uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8" (binary_expression "uStack_4c >> 0x18" identifier >> number_literal) | (binary_expression "(uStack_4c & 0xff0000) >> 8" (parenthesized_expression "(uStack_4c & 0xff0000)" ( (binary_expression "uStack_4c & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uStack_4c & 0xff00) << 8" (parenthesized_expression "(uStack_4c & 0xff00)" ( (binary_expression "uStack_4c & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uStack_4c << 0x18" identifier << number_literal)) )))) ;) (expression_statement "uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uStack_50 & 0xff) * 4" (call_expression "(ulong)(uStack_50 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uStack_50 & 0xff)" ( (binary_expression "uStack_50 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (uVar8 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (uVar8 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(uVar8 & 0xff) * 4" (parenthesized_expression "(uVar8 & 0xff)" ( (binary_expression "uVar8 & 0xff" identifier & number_literal) )) * number_literal)) ))))) ;) (expression_statement "uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;" (assignment_expression "uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18" identifier = (binary_expression "uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18" (binary_expression "uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8" (binary_expression "uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8" (binary_expression "uStack_58 >> 0x18" identifier >> number_literal) | (binary_expression "(uStack_58 & 0xff0000) >> 8" (parenthesized_expression "(uStack_58 & 0xff0000)" ( (binary_expression "uStack_58 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uStack_58 & 0xff00) << 8" (parenthesized_expression "(uStack_58 & 0xff00)" ( (binary_expression "uStack_58 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uStack_58 << 0x18" identifier << number_literal))) ;) (expression_statement "puVar25 = param_4;" (assignment_expression "puVar25 = param_4" identifier = identifier) ;) (do_statement "do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);" do (compound_statement "{\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        }" { (expression_statement "uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;" (assignment_expression "uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18" identifier = (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18" (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24" (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(uVar8 >> 0x10 & 0xff) * 4" (parenthesized_expression "(uVar8 >> 0x10 & 0xff)" ( (binary_expression "uVar8 >> 0x10 & 0xff" (binary_expression "uVar8 >> 0x10" identifier >> number_literal) & number_literal) )) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(uVar8 >> 8 & 0xff) * 4" (parenthesized_expression "(uVar8 >> 8 & 0xff)" ( (binary_expression "uVar8 >> 8 & 0xff" (binary_expression "uVar8 >> 8" identifier >> number_literal) & number_literal) )) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (uVar8 >> 0x18) * 4)" ( (binary_expression "&DAT_00197a20 + (uVar8 >> 0x18) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(uVar8 >> 0x18) * 4" (parenthesized_expression "(uVar8 >> 0x18)" ( (binary_expression "uVar8 >> 0x18" identifier >> number_literal) )) * number_literal)) ))))) ^ identifier) ^ identifier)) ;) (expression_statement "uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar18 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar18 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar18 >> 0x10 & 0xff)" ( (binary_expression "uVar18 >> 0x10 & 0xff" (binary_expression "uVar18 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar15 = (ulong)(uVar18 >> 0x18);" (assignment_expression "uVar15 = (ulong)(uVar18 >> 0x18)" identifier = (call_expression "(ulong)(uVar18 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar18 >> 0x18)" ( (binary_expression "uVar18 >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "uVar20 = (ulong)(uVar18 & 0xff);" (assignment_expression "uVar20 = (ulong)(uVar18 & 0xff)" identifier = (call_expression "(ulong)(uVar18 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar18 & 0xff)" ( (binary_expression "uVar18 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar9 * 4)" ( (binary_expression "&DAT_00197a20 + uVar9 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar14 = (ulong)(uVar18 >> 8 & 0xff);" (assignment_expression "uVar14 = (ulong)(uVar18 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar18 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar18 >> 8 & 0xff)" ( (binary_expression "uVar18 >> 8 & 0xff" (binary_expression "uVar18 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;" (assignment_expression "uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17" identifier = (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27" (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar27 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 8 & 0xff)" ( (binary_expression "uVar27 >> 8 & 0xff" (binary_expression "uVar27 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) )))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar15 * 4)" ( (binary_expression "&DAT_00198220 + uVar15 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar20 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar20 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar20 * 4)" ( (binary_expression "&DAT_00197620 + uVar20 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar20 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar14 * 4)" ( (binary_expression "&DAT_00197e20 + uVar14 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ^ identifier)) ;) (expression_statement "uVar10 = (ulong)(uVar12 >> 8 & 0xff);" (assignment_expression "uVar10 = (ulong)(uVar12 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar12 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 8 & 0xff)" ( (binary_expression "uVar12 >> 8 & 0xff" (binary_expression "uVar12 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);" (assignment_expression "uVar16 = (ulong)(uVar12 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar12 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 0x10 & 0xff)" ( (binary_expression "uVar12 >> 0x10 & 0xff" (binary_expression "uVar12 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);" (assignment_expression "uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar10 * 4)" ( (binary_expression "&DAT_00197e20 + uVar10 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar11 = (ulong)(uVar12 >> 0x18);" (assignment_expression "uVar11 = (ulong)(uVar12 >> 0x18)" identifier = (call_expression "(ulong)(uVar12 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 0x18)" ( (binary_expression "uVar12 >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);" (assignment_expression "uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar16 * 4)" ( (binary_expression "&DAT_00197a20 + uVar16 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);" (assignment_expression "uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197620 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar10 * 4)" ( (binary_expression "&DAT_00197620 + uVar10 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ;) (expression_statement "bStack_c8 = (byte)uVar12;" (assignment_expression "bStack_c8 = (byte)uVar12" identifier = (cast_expression "(byte)uVar12" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (expression_statement "uVar10 = (ulong)bStack_c8;" (assignment_expression "uVar10 = (ulong)bStack_c8" identifier = (cast_expression "(ulong)bStack_c8" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;" (assignment_expression "uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22" identifier = (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22" (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24" (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4)" (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4)" (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" (cast_expression "(uint)uVar8" ( (type_descriptor "uint" type_identifier) ) identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar27 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 0x10 & 0xff)" ( (binary_expression "uVar27 >> 0x10 & 0xff" (binary_expression "uVar27 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar10 * 4)" ( (binary_expression "&DAT_00198220 + uVar10 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar11 * 4)" ( (binary_expression "&DAT_00197620 + uVar11 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) ))))) ^ identifier) ^ identifier)) ;) (expression_statement "uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);" (assignment_expression "uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar6 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar6 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 8 & 0xff)" ( (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);" (assignment_expression "uVar8 = (ulong)(uVar6 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar6 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x10 & 0xff)" ( (binary_expression "uVar6 >> 0x10 & 0xff" (binary_expression "uVar6 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;" (assignment_expression "uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4" identifier = (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4)" (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar6 & 0xff) * 4" (call_expression "(ulong)(uVar6 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) ))) * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar6 >> 0x18) * 4" (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar8 * 4)" ( (binary_expression "&DAT_00197e20 + uVar8 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) ^ identifier) ^ identifier)) ;) (expression_statement "*puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);" (assignment_expression "*puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4)" (pointer_expression "*puVar25" * identifier) = (binary_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13" (binary_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4)" (pointer_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar10 * 4)" ( (binary_expression "&DAT_00197a20 + uVar10 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar14 * 4)" ( (binary_expression "&DAT_00198220 + uVar14 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar6 >> 0x18) * 4" (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar8 * 4)" ( (binary_expression "&DAT_00197e20 + uVar8 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) )))))) ;) (expression_statement "puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;" (assignment_expression "puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27" (subscript_expression "puVar25[1]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24" (pointer_expression "*(uint *)(&DAT_00197620 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar11 * 4)" ( (binary_expression "&DAT_00197620 + uVar11 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) )))) ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar6 & 0xff) * 4" (call_expression "(ulong)(uVar6 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ identifier)) ;) (expression_statement "uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);" (assignment_expression "uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197620 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar14 * 4)" ( (binary_expression "&DAT_00197620 + uVar14 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ;) (expression_statement "puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);" (assignment_expression "puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" (subscript_expression "puVar25[2]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4)" (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar4 >> 0x18) * 4" (call_expression "(ulong)(uVar4 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) ))) * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar20 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar20 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar20 * 4)" ( (binary_expression "&DAT_00197a20 + uVar20 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar20 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar8 * 4)" ( (binary_expression "&DAT_00197a20 + uVar8 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar4 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar4 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar4 >> 0x10 & 0xff)" ( (binary_expression "uVar4 >> 0x10 & 0xff" (binary_expression "uVar4 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) )))))) ;) (expression_statement "uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);" (assignment_expression "uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar10 * 4)" ( (binary_expression "&DAT_00197e20 + uVar10 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);" (assignment_expression "uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar11 * 4)" ( (binary_expression "&DAT_00197a20 + uVar11 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) ))))) ;) (expression_statement "puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);" (assignment_expression "puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" (subscript_expression "puVar25[3]" identifier [ number_literal ]) = (binary_expression "uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar15 * 4)" ( (binary_expression "&DAT_00197620 + uVar15 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar4 & 0xff) * 4" (call_expression "(ulong)(uVar4 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar4 >> 0x18) * 4" (call_expression "(ulong)(uVar4 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar4 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar4 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar4 >> 8 & 0xff)" ( (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) )))))) ;) (expression_statement "uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;" (assignment_expression "uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6" identifier = (binary_expression "uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6" (binary_expression "uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4)" (binary_expression "uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13" (binary_expression "uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4)" (binary_expression "uVar27 ^ uVar21" identifier ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar15 * 4)" ( (binary_expression "&DAT_00197a20 + uVar15 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar16 * 4)" ( (binary_expression "&DAT_00198220 + uVar16 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ^ identifier)) ;) (expression_statement "uVar23 = (ulong)(uVar6 & 0xff);" (assignment_expression "uVar23 = (ulong)(uVar6 & 0xff)" identifier = (call_expression "(ulong)(uVar6 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);" (assignment_expression "uVar19 = (ulong)(uVar6 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar6 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x10 & 0xff)" ( (binary_expression "uVar6 >> 0x10 & 0xff" (binary_expression "uVar6 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);" (assignment_expression "uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" identifier = (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18" (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24" (pointer_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar19 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar19 * 4)" ( (binary_expression "&DAT_00197a20 + uVar19 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar19 * 4" identifier * number_literal)) )))) ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar6 >> 0x18) * 4" (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar23 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar23 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar23 * 4)" ( (binary_expression "&DAT_00197620 + uVar23 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar23 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar6 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar6 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 8 & 0xff)" ( (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) )))))) ;) (expression_statement "uVar28 = (ulong)(uVar22 & 0xff);" (assignment_expression "uVar28 = (ulong)(uVar22 & 0xff)" identifier = (call_expression "(ulong)(uVar22 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar22 & 0xff)" ( (binary_expression "uVar22 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar22 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar22 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar22 >> 8 & 0xff)" ( (binary_expression "uVar22 >> 8 & 0xff" (binary_expression "uVar22 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);" (assignment_expression "uVar8 = (ulong)(uVar22 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar22 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar22 >> 0x10 & 0xff)" ( (binary_expression "uVar22 >> 0x10 & 0xff" (binary_expression "uVar22 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);" (assignment_expression "uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4)" identifier = (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18" (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar9 * 4)" ( (binary_expression "&DAT_00198220 + uVar9 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar28 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar28 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar28 * 4)" ( (binary_expression "&DAT_00198220 + uVar28 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar28 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar22 >> 0x18) * 4" (call_expression "(ulong)(uVar22 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar22 >> 0x18)" ( (binary_expression "uVar22 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar8 * 4)" ( (binary_expression "&DAT_00197a20 + uVar8 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar21 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar21 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 0x10 & 0xff)" ( (binary_expression "uVar21 >> 0x10 & 0xff" (binary_expression "uVar21 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar16 = (ulong)(uVar21 >> 0x18);" (assignment_expression "uVar16 = (ulong)(uVar21 >> 0x18)" identifier = (call_expression "(ulong)(uVar21 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 0x18)" ( (binary_expression "uVar21 >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "uVar14 = (ulong)(uVar21 & 0xff);" (assignment_expression "uVar14 = (ulong)(uVar21 & 0xff)" identifier = (call_expression "(ulong)(uVar21 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 & 0xff)" ( (binary_expression "uVar21 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar10 = (ulong)(uVar21 >> 8 & 0xff);" (assignment_expression "uVar10 = (ulong)(uVar21 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar21 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 8 & 0xff)" ( (binary_expression "uVar21 >> 8 & 0xff" (binary_expression "uVar21 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);" (assignment_expression "uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4)" identifier = (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4)" (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4)" (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4)" (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4)" (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar20 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar20 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar20 * 4)" ( (binary_expression "&DAT_00197e20 + uVar20 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar20 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar14 * 4)" ( (binary_expression "&DAT_00197a20 + uVar14 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar16 * 4)" ( (binary_expression "&DAT_00197620 + uVar16 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar10 * 4)" ( (binary_expression "&DAT_00198220 + uVar10 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar9 * 4)" ( (binary_expression "&DAT_00197e20 + uVar9 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar27 >> 0x18) * 4" (call_expression "(ulong)(uVar27 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 0x18)" ( (binary_expression "uVar27 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar11 = (ulong)(uVar27 >> 8 & 0xff);" (assignment_expression "uVar11 = (ulong)(uVar27 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar27 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 8 & 0xff)" ( (binary_expression "uVar27 >> 8 & 0xff" (binary_expression "uVar27 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);" (assignment_expression "uVar15 = (ulong)(uVar27 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar27 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 0x10 & 0xff)" ( (binary_expression "uVar27 >> 0x10 & 0xff" (binary_expression "uVar27 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);" (assignment_expression "puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4)" (subscript_expression "puVar25[4]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4)" (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar6 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar6 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 8 & 0xff)" ( (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar23 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar23 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar23 * 4)" ( (binary_expression "&DAT_00198220 + uVar23 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar23 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar16 * 4)" ( (binary_expression "&DAT_00198220 + uVar16 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar15 * 4)" ( (binary_expression "&DAT_00197620 + uVar15 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) )))))) ;) (expression_statement "puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;" (assignment_expression "puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)" (subscript_expression "puVar25[5]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4)" (pointer_expression "*(uint *)(&DAT_00198220 + uVar19 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar19 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar19 * 4)" ( (binary_expression "&DAT_00198220 + uVar19 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar19 * 4" identifier * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar6 >> 0x18) * 4" (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar27 & 0xff) * 4" (call_expression "(ulong)(uVar27 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 & 0xff)" ( (binary_expression "uVar27 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar11 * 4)" ( (binary_expression "&DAT_00197a20 + uVar11 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar15 * 4)" ( (binary_expression "&DAT_00197e20 + uVar15 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);" (assignment_expression "uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar16 * 4)" ( (binary_expression "&DAT_00197a20 + uVar16 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);" (assignment_expression "uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar27 & 0xff) * 4" (call_expression "(ulong)(uVar27 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 & 0xff)" ( (binary_expression "uVar27 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);" (assignment_expression "puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4)" (subscript_expression "puVar25[6]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4" (binary_expression "*(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18" (binary_expression "*(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)" (pointer_expression "*(uint *)(&DAT_00198220 + uVar28 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar28 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar28 * 4)" ( (binary_expression "&DAT_00198220 + uVar28 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar28 * 4" identifier * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar23 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar23 * 4)" ( (binary_expression "&DAT_00197a20 + uVar23 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar23 * 4" identifier * number_literal)) ))))) ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar9 * 4)" ( (binary_expression "&DAT_00197620 + uVar9 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) )))))) ;) (expression_statement "puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);" (assignment_expression "puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4)" (subscript_expression "puVar25[7]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4)" (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar22 >> 0x18) * 4" (call_expression "(ulong)(uVar22 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar22 >> 0x18)" ( (binary_expression "uVar22 >> 0x18" identifier >> number_literal) ))) * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar28 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar28 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar28 * 4)" ( (binary_expression "&DAT_00197620 + uVar28 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar28 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar8 * 4)" ( (binary_expression "&DAT_00198220 + uVar8 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar14 * 4)" ( (binary_expression "&DAT_00197620 + uVar14 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar10 * 4)" ( (binary_expression "&DAT_00197a20 + uVar10 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);" (assignment_expression "uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4)" identifier = (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4" (pointer_expression "*(uint *)(&DAT_00197620 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar11 * 4)" ( (binary_expression "&DAT_00197620 + uVar11 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) )))) ^ identifier) ^ identifier) ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar15 * 4)" ( (binary_expression "&DAT_00198220 + uVar15 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar15 = (ulong)(uVar6 >> 8 & 0xff);" (assignment_expression "uVar15 = (ulong)(uVar6 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar6 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 8 & 0xff)" ( (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar11 = (ulong)(uVar6 & 0xff);" (assignment_expression "uVar11 = (ulong)(uVar6 & 0xff)" identifier = (call_expression "(ulong)(uVar6 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);" (assignment_expression "uVar23 = (ulong)(uVar6 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar6 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x10 & 0xff)" ( (binary_expression "uVar6 >> 0x10 & 0xff" (binary_expression "uVar6 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar19 = (ulong)(uVar6 >> 0x18);" (assignment_expression "uVar19 = (ulong)(uVar6 >> 0x18)" identifier = (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);" (assignment_expression "uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4)" identifier = (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21" (pointer_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar23 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar23 * 4)" ( (binary_expression "&DAT_00197a20 + uVar23 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar23 * 4" identifier * number_literal)) )))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar10 * 4)" ( (binary_expression "&DAT_00197620 + uVar10 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar19 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar19 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar19 * 4)" ( (binary_expression "&DAT_00198220 + uVar19 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar19 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar11 * 4)" ( (binary_expression "&DAT_00197620 + uVar11 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar15 * 4)" ( (binary_expression "&DAT_00197e20 + uVar15 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar20 = (ulong)(uVar13 >> 8 & 0xff);" (assignment_expression "uVar20 = (ulong)(uVar13 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar13 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar13 >> 8 & 0xff)" ( (binary_expression "uVar13 >> 8 & 0xff" (binary_expression "uVar13 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar13 & 0xff) * 4" (call_expression "(ulong)(uVar13 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar13 & 0xff)" ( (binary_expression "uVar13 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + uVar20 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar20 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar20 * 4)" ( (binary_expression "&DAT_00197e20 + uVar20 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar20 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar8 = (ulong)(uVar13 >> 0x18);" (assignment_expression "uVar8 = (ulong)(uVar13 >> 0x18)" identifier = (call_expression "(ulong)(uVar13 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar13 >> 0x18)" ( (binary_expression "uVar13 >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);" (assignment_expression "uVar10 = (ulong)(uVar13 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar13 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar13 >> 0x10 & 0xff)" ( (binary_expression "uVar13 >> 0x10 & 0xff" (binary_expression "uVar13 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);" (assignment_expression "uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4)" identifier = (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4)" (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17" (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4)" (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18" (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar9 * 4)" ( (binary_expression "&DAT_00198220 + uVar9 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar8 * 4)" ( (binary_expression "&DAT_00197620 + uVar8 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar10 * 4)" ( (binary_expression "&DAT_00197a20 + uVar10 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar9 = (ulong)(uVar24 >> 8 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar24 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar24 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 8 & 0xff)" ( (binary_expression "uVar24 >> 8 & 0xff" (binary_expression "uVar24 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);" (assignment_expression "uVar16 = (ulong)(uVar24 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar24 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 0x10 & 0xff)" ( (binary_expression "uVar24 >> 0x10 & 0xff" (binary_expression "uVar24 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);" (assignment_expression "uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4)" identifier = (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22" (pointer_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar16 * 4)" ( (binary_expression "&DAT_00197e20 + uVar16 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) )))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar14 * 4)" ( (binary_expression "&DAT_00197e20 + uVar14 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar24 & 0xff) * 4" (call_expression "(ulong)(uVar24 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 & 0xff)" ( (binary_expression "uVar24 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar24 >> 0x18) * 4" (call_expression "(ulong)(uVar24 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 0x18)" ( (binary_expression "uVar24 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar9 * 4)" ( (binary_expression "&DAT_00198220 + uVar9 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);" (assignment_expression "uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00198220 + uVar23 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar23 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar23 * 4)" ( (binary_expression "&DAT_00198220 + uVar23 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar23 * 4" identifier * number_literal)) ))))) ;) (expression_statement "puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);" (assignment_expression "puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" (subscript_expression "puVar25[8]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4)" (pointer_expression "*(uint *)(&DAT_00198220 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar16 * 4)" ( (binary_expression "&DAT_00198220 + uVar16 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar15 * 4)" ( (binary_expression "&DAT_00197e20 + uVar15 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar11 * 4)" ( (binary_expression "&DAT_00198220 + uVar11 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar12 >> 0x18) * 4" (call_expression "(ulong)(uVar12 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 0x18)" ( (binary_expression "uVar12 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar12 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar12 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 0x10 & 0xff)" ( (binary_expression "uVar12 >> 0x10 & 0xff" (binary_expression "uVar12 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) )))))) ;) (expression_statement "uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);" (assignment_expression "uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar15 * 4)" ( (binary_expression "&DAT_00197a20 + uVar15 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);" (assignment_expression "uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar24 >> 0x18) * 4" (call_expression "(ulong)(uVar24 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 0x18)" ( (binary_expression "uVar24 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ;) (expression_statement "puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);" (assignment_expression "puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" (subscript_expression "puVar25[9]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4)" (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar12 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar12 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 8 & 0xff)" ( (binary_expression "uVar12 >> 8 & 0xff" (binary_expression "uVar12 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar19 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar19 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar19 * 4)" ( (binary_expression "&DAT_00197e20 + uVar19 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar19 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar12 & 0xff) * 4" (call_expression "(ulong)(uVar12 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 & 0xff)" ( (binary_expression "uVar12 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar12 >> 0x18) * 4" (call_expression "(ulong)(uVar12 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 0x18)" ( (binary_expression "uVar12 >> 0x18" identifier >> number_literal) ))) * number_literal)) )))))) ;) (expression_statement "puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);" (assignment_expression "puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4)" (subscript_expression "puVar25[10]" identifier [ number_literal ]) = (binary_expression "uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4)" (binary_expression "uVar18 ^ uVar27 ^ uVar17 ^ uVar21" (binary_expression "uVar18 ^ uVar27 ^ uVar17" (binary_expression "uVar18 ^ uVar27" identifier ^ identifier) ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar16 * 4)" ( (binary_expression "&DAT_00197620 + uVar16 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00198220 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar10 * 4)" ( (binary_expression "&DAT_00198220 + uVar10 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197620 + uVar20 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar20 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar20 * 4)" ( (binary_expression "&DAT_00197620 + uVar20 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar20 * 4" identifier * number_literal)) ))))) ;) (expression_statement "puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);" (assignment_expression "puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4)" (subscript_expression "puVar25[0xb]" identifier [ number_literal ]) = (binary_expression "uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4)" (binary_expression "uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4)" (binary_expression "uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4)" (binary_expression "uVar18 ^ uVar17" identifier ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar8 * 4)" ( (binary_expression "&DAT_00197e20 + uVar8 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar24 & 0xff) * 4" (call_expression "(ulong)(uVar24 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 & 0xff)" ( (binary_expression "uVar24 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar9 * 4)" ( (binary_expression "&DAT_00197a20 + uVar9 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;" (assignment_expression "uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24" identifier = (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar13 & 0xff) * 4" (call_expression "(ulong)(uVar13 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar13 & 0xff)" ( (binary_expression "uVar13 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar8 * 4)" ( (binary_expression "&DAT_00197a20 + uVar8 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar19 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar19 * 4)" ( (binary_expression "&DAT_00197a20 + uVar19 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar19 * 4" identifier * number_literal)) ))))) ^ identifier) ^ identifier)) ;) (expression_statement "uVar14 = (ulong)(uVar24 & 0xff);" (assignment_expression "uVar14 = (ulong)(uVar24 & 0xff)" identifier = (call_expression "(ulong)(uVar24 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 & 0xff)" ( (binary_expression "uVar24 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);" (assignment_expression "uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar24 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar24 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 0x10 & 0xff)" ( (binary_expression "uVar24 >> 0x10 & 0xff" (binary_expression "uVar24 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar16 = (ulong)(byte)(uVar24 >> 8);" (assignment_expression "uVar16 = (ulong)(byte)(uVar24 >> 8)" identifier = (call_expression "(ulong)(byte)(uVar24 >> 8)" (call_expression "(ulong)(byte)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(byte)" ( identifier ))) (argument_list "(uVar24 >> 8)" ( (binary_expression "uVar24 >> 8" identifier >> number_literal) )))) ;) (expression_statement "uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;" (assignment_expression "uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22" identifier = (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22" (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6" (pointer_expression "*(uint *)(&DAT_00197620 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar15 * 4)" ( (binary_expression "&DAT_00197620 + uVar15 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) )))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar24 >> 0x18) * 4" (call_expression "(ulong)(uVar24 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 0x18)" ( (binary_expression "uVar24 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar14 * 4)" ( (binary_expression "&DAT_00197620 + uVar14 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar16 * 4)" ( (binary_expression "&DAT_00197e20 + uVar16 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ^ identifier)) ;) (expression_statement "uVar15 = (ulong)(uVar21 & 0xff);" (assignment_expression "uVar15 = (ulong)(uVar21 & 0xff)" identifier = (call_expression "(ulong)(uVar21 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 & 0xff)" ( (binary_expression "uVar21 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar9 = (ulong)(uVar21 >> 8 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar21 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar21 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 8 & 0xff)" ( (binary_expression "uVar21 >> 8 & 0xff" (binary_expression "uVar21 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);" (assignment_expression "uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" identifier = (binary_expression "uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" (binary_expression "uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4)" (binary_expression "uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" (binary_expression "uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4)" (binary_expression "uVar13 ^ uVar4" identifier ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar15 * 4)" ( (binary_expression "&DAT_00198220 + uVar15 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar21 >> 0x18) * 4" (call_expression "(ulong)(uVar21 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 0x18)" ( (binary_expression "uVar21 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar9 * 4)" ( (binary_expression "&DAT_00197e20 + uVar9 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar21 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar21 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 0x10 & 0xff)" ( (binary_expression "uVar21 >> 0x10 & 0xff" (binary_expression "uVar21 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) )))))) ;) (expression_statement "uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);" (assignment_expression "uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar15 * 4)" ( (binary_expression "&DAT_00197a20 + uVar15 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);" (assignment_expression "uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar27 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 0x10 & 0xff)" ( (binary_expression "uVar27 >> 0x10 & 0xff" (binary_expression "uVar27 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar10 = (ulong)(uVar27 >> 0x18);" (assignment_expression "uVar10 = (ulong)(uVar27 >> 0x18)" identifier = (call_expression "(ulong)(uVar27 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 0x18)" ( (binary_expression "uVar27 >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;" (assignment_expression "uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6" identifier = (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6" (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar11 * 4)" ( (binary_expression "&DAT_00197e20 + uVar11 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar27 & 0xff) * 4" (call_expression "(ulong)(uVar27 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 & 0xff)" ( (binary_expression "uVar27 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar10 * 4)" ( (binary_expression "&DAT_00197620 + uVar10 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar27 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 8 & 0xff)" ( (binary_expression "uVar27 >> 8 & 0xff" (binary_expression "uVar27 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ^ identifier)) ;) (expression_statement "uVar8 = (ulong)uVar7;" (assignment_expression "uVar8 = (ulong)uVar7" identifier = (cast_expression "(ulong)uVar7" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);" (assignment_expression "uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00198220 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar14 * 4)" ( (binary_expression "&DAT_00198220 + uVar14 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ;) (expression_statement "puVar26 = puVar25 + 0x10;" (assignment_expression "puVar26 = puVar25 + 0x10" identifier = (binary_expression "puVar25 + 0x10" identifier + number_literal)) ;) (expression_statement "uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);" (assignment_expression "uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar27 & 0xff) * 4" (call_expression "(ulong)(uVar27 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 & 0xff)" ( (binary_expression "uVar27 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);" (assignment_expression "uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197620 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar9 * 4)" ( (binary_expression "&DAT_00197620 + uVar9 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) ))))) ;) (expression_statement "puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);" (assignment_expression "puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (subscript_expression "puVar25[0xd]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4)" (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar21 >> 0x18) * 4" (call_expression "(ulong)(uVar21 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 0x18)" ( (binary_expression "uVar21 >> 0x18" identifier >> number_literal) ))) * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar15 * 4)" ( (binary_expression "&DAT_00197e20 + uVar15 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar21 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar21 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 0x10 & 0xff)" ( (binary_expression "uVar21 >> 0x10 & 0xff" (binary_expression "uVar21 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar27 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 8 & 0xff)" ( (binary_expression "uVar27 >> 8 & 0xff" (binary_expression "uVar27 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) )))))) ;) (expression_statement "uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);" (assignment_expression "uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar14 * 4)" ( (binary_expression "&DAT_00197a20 + uVar14 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar10 * 4)" ( (binary_expression "&DAT_00197a20 + uVar10 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar7 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar7 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar7 >> 0x10 & 0xff)" ( (binary_expression "uVar7 >> 0x10 & 0xff" (binary_expression "uVar7 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);" (assignment_expression "uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197620 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar16 * 4)" ( (binary_expression "&DAT_00197620 + uVar16 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(byte)uVar7 * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(byte)uVar7 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(byte)uVar7 * 4" (cast_expression "(ulong)(byte)uVar7" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(byte)uVar7" ( (type_descriptor "byte" type_identifier) ) identifier)) * number_literal)) ))))) ;) (expression_statement "puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;" (assignment_expression "puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6" (subscript_expression "puVar25[0xc]" identifier [ number_literal ]) = (binary_expression "uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6" (binary_expression "uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4)" (binary_expression "uVar13 ^ uVar12 ^ uVar1" (binary_expression "uVar13 ^ uVar12" identifier ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar10 * 4)" ( (binary_expression "&DAT_00198220 + uVar10 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ^ identifier)) ;) (expression_statement "puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);" (assignment_expression "puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4)" (subscript_expression "puVar25[0xe]" identifier [ number_literal ]) = (binary_expression "uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4)" (binary_expression "uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4)" (binary_expression "uVar2 ^ uVar3 ^ uVar18" (binary_expression "uVar2 ^ uVar3" identifier ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar7 >> 0x18) * 4" (call_expression "(ulong)(uVar7 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar9 * 4)" ( (binary_expression "&DAT_00197e20 + uVar9 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) )))))) ;) (expression_statement "puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);" (assignment_expression "puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4)" (subscript_expression "puVar25[0xf]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22" (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(byte)(uVar7 >> 8) * 4" (call_expression "(ulong)(byte)(uVar7 >> 8)" (call_expression "(ulong)(byte)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(byte)" ( identifier ))) (argument_list "(uVar7 >> 8)" ( (binary_expression "uVar7 >> 8" identifier >> number_literal) ))) * number_literal)) )))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar24 >> 0x18) * 4" (call_expression "(ulong)(uVar24 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 0x18)" ( (binary_expression "uVar24 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar9 * 4)" ( (binary_expression "&DAT_00197620 + uVar9 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) )))))) ;) (expression_statement "puVar25 = puVar26;" (assignment_expression "puVar25 = puVar26" identifier = identifier) ;) }) while (parenthesized_expression "(puVar26 != param_4 + 0x20)" ( (binary_expression "puVar26 != param_4 + 0x20" identifier != (binary_expression "param_4 + 0x20" identifier + number_literal)) )) ;) (expression_statement "uVar5 = 0;" (assignment_expression "uVar5 = 0" identifier = number_literal) ;) (expression_statement "param_4[0x20] = param_2;" (assignment_expression "param_4[0x20] = param_2" (subscript_expression "param_4[0x20]" identifier [ number_literal ]) = identifier) ;) })) }) (else_clause "else {\n      uVar5 = 4;\n    }" else (compound_statement "{\n      uVar5 = 4;\n    }" { (expression_statement "uVar5 = 4;" (assignment_expression "uVar5 = 4" identifier = number_literal) ;) }))) (if_statement "if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }" if (parenthesized_expression "(lStack_40 != *(long *)(in_FS_OFFSET + 0x28))" ( (binary_expression "lStack_40 != *(long *)(in_FS_OFFSET + 0x28)" identifier != (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }" { comment (expression_statement "__stack_chk_fail();" (call_expression "__stack_chk_fail()" identifier (argument_list "()" ( ))) ;) })) (return_statement "return uVar5;" return identifier ;) })) comment (expression_statement "crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);" (call_expression "crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1)" identifier (argument_list "("skey != NULL","src/ciphers/cast5.c",0x1a1)" ( (string_literal ""skey != NULL"" " string_content ") , (string_literal ""src/ciphers/cast5.c"" " string_content ") , number_literal ))) ;) })))
(translation_unit "/* WARNING: Switch with 1 destination removed at 0x001148c0 */\n\nint cast5_setup(uchar *key,int keylen,int num_rounds,symmetric_key *skey)\n\n{\n  ulong32 *puVar1;\n  int iVar2;\n  uint uVar3;\n  uint uVar4;\n  uint uVar5;\n  uint uVar6;\n  ulong uVar7;\n  byte bVar11;\n  ulong32 uVar8;\n  uint uVar9;\n  uint uVar10;\n  uint uVar12;\n  uint uVar13;\n  ulong32 uVar14;\n  uint uVar15;\n  uint uVar16;\n  uint uVar17;\n  uint uVar18;\n  uint uVar19;\n  uint uVar20;\n  uint uVar21;\n  ulong uVar22;\n  uint uVar23;\n  uint uVar24;\n  symmetric_key *psVar25;\n  uint uVar26;\n  long in_FS_OFFSET;\n  byte bStack_c8;\n  uint uStack_58;\n  uint uStack_54;\n  uint uStack_50;\n  uint uStack_4c;\n  long lStack_40;\n  \n  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (key == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }\n  if (skey != (symmetric_key *)0x0) {\n    if (((num_rounds & 0xffffffefU) == 0) || (num_rounds == 0xc)) {\n      if (((num_rounds != 0xc) || (iVar2 = 4, keylen < 0xb)) && (iVar2 = 3, keylen - 5U < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,key,(long)keylen,0x10);\n        uVar26 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar3 = S6[uStack_50 >> 0x18];\n        uVar18 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar7 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar8 = S7[uStack_50 & 0xff];\n        uVar14 = S6[uVar7 & 0xff];\n        uVar23 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        psVar25 = skey;\n        do {\n          uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8;\n          uVar9 = uVar15 >> 0x10 & 0xff;\n          uVar20 = uVar15 >> 0x18;\n          uVar24 = uVar15 & 0xff;\n          uVar23 = S7[uVar9];\n          uVar16 = uVar15 >> 8 & 0xff;\n          uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23;\n          uVar10 = uVar12 >> 8 & 0xff;\n          uVar21 = uVar12 >> 0x10 & 0xff;\n          uVar4 = S6[uVar10];\n          uVar13 = uVar12 >> 0x18;\n          uVar6 = S7[uVar21];\n          uVar10 = S8[uVar10];\n          bStack_c8 = (byte)uVar12;\n          uVar22 = (ulong)bStack_c8;\n          uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6;\n          uVar26 = S5[uVar5 >> 8 & 0xff];\n          uVar17 = uVar5 >> 0x10 & 0xff;\n          uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3;\n          (psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26;\n          uVar26 = S8[uVar16];\n          (psVar25->des).ek[2] =\n               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff];\n          uVar18 = S6[uVar22];\n          uVar4 = S7[uVar13];\n          (psVar25->des).ek[3] =\n               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff];\n          uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5;\n          uVar17 = uVar5 & 0xff;\n          uVar18 = uVar5 >> 0x10 & 0xff;\n          uVar19 = S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff];\n          uVar20 = uVar19 & 0xff;\n          uVar23 = S6[uVar19 >> 8 & 0xff];\n          uVar6 = uVar19 >> 0x10 & 0xff;\n          uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6];\n          uVar26 = uVar9 >> 0x18;\n          uVar10 = uVar9 >> 0x10 & 0xff;\n          uVar15 = uVar9 & 0xff;\n          uVar12 = uVar9 >> 8 & 0xff;\n          uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10];\n          uVar3 = S7[uVar4 >> 0x18];\n          uVar13 = uVar4 >> 8 & 0xff;\n          uVar16 = uVar4 >> 0x10 & 0xff;\n          (psVar25->des).ek[4] =\n               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16];\n          (psVar25->des).ek[5] =\n               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16];\n          uVar26 = S7[uVar26];\n          uVar18 = S6[uVar4 & 0xff];\n          (psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10];\n          (psVar25->des).ek[7] =\n               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12];\n          uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16];\n          uVar5 = uVar24 >> 0x18;\n          uVar16 = uVar24 >> 8 & 0xff;\n          uVar13 = uVar24 & 0xff;\n          uVar18 = uVar24 >> 0x10 & 0xff;\n          uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16];\n          uVar21 = uVar17 >> 8 & 0xff;\n          uVar3 = S5[uVar17 & 0xff];\n          uVar26 = S6[uVar21];\n          uVar9 = uVar17 >> 0x18;\n          uVar12 = uVar17 >> 0x10 & 0xff;\n          uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12];\n          uVar10 = uVar23 >> 8 & 0xff;\n          uVar20 = uVar23 >> 0x10 & 0xff;\n          uVar15 = S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10];\n          uVar4 = S5[uVar18];\n          (psVar25->des).ek[8] =\n               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]\n          ;\n          uVar18 = S7[uVar16];\n          uVar6 = S7[uVar23 >> 0x18];\n          (psVar25->des).ek[9] =\n               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18];\n          (psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20];\n          uVar3 = S5[uVar12];\n          uVar26 = S8[uVar21];\n          (psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10];\n          uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23;\n          uVar12 = uVar23 & 0xff;\n          uVar6 = S7[uVar23 >> 0x10 & 0xff];\n          bVar11 = (byte)(uVar23 >> 8);\n          uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6;\n          uVar20 = uVar18 & 0xff;\n          uVar9 = uVar18 >> 8 & 0xff;\n          uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff];\n          uVar4 = S7[uVar20];\n          uVar10 = S6[uVar26 >> 0x10 & 0xff];\n          uVar16 = uVar26 >> 0x18;\n          uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10;\n          uVar7 = (ulong)uVar15;\n          uVar5 = S5[uVar12];\n          puVar1 = (psVar25->des).ek;\n          uVar3 = S6[uVar26 & 0xff];\n          uVar9 = S8[uVar9];\n          (psVar25->des).ek[0xd] =\n               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff];\n          uVar12 = S7[uVar12];\n          uVar8 = S7[uVar16];\n          uVar17 = uVar15 >> 0x10 & 0xff;\n          uVar13 = S8[bVar11];\n          uVar14 = S6[(byte)uVar15];\n          (psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10;\n          (psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[0xf] =\n               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17];\n          psVar25 = (symmetric_key *)(puVar1 + 0x10);\n        } while ((symmetric_key *)(puVar1 + 0x10) != (symmetric_key *)(skey->des).dk);\n        iVar2 = 0;\n        (skey->des).dk[0] = keylen;\n      }\n    }\n    else {\n      iVar2 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }\n    return iVar2;\n  }\n                    /* WARNING: Subroutine does not return */\n  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);\n}\n\n" comment (function_definition "int cast5_setup(uchar *key,int keylen,int num_rounds,symmetric_key *skey)\n\n{\n  ulong32 *puVar1;\n  int iVar2;\n  uint uVar3;\n  uint uVar4;\n  uint uVar5;\n  uint uVar6;\n  ulong uVar7;\n  byte bVar11;\n  ulong32 uVar8;\n  uint uVar9;\n  uint uVar10;\n  uint uVar12;\n  uint uVar13;\n  ulong32 uVar14;\n  uint uVar15;\n  uint uVar16;\n  uint uVar17;\n  uint uVar18;\n  uint uVar19;\n  uint uVar20;\n  uint uVar21;\n  ulong uVar22;\n  uint uVar23;\n  uint uVar24;\n  symmetric_key *psVar25;\n  uint uVar26;\n  long in_FS_OFFSET;\n  byte bStack_c8;\n  uint uStack_58;\n  uint uStack_54;\n  uint uStack_50;\n  uint uStack_4c;\n  long lStack_40;\n  \n  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (key == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }\n  if (skey != (symmetric_key *)0x0) {\n    if (((num_rounds & 0xffffffefU) == 0) || (num_rounds == 0xc)) {\n      if (((num_rounds != 0xc) || (iVar2 = 4, keylen < 0xb)) && (iVar2 = 3, keylen - 5U < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,key,(long)keylen,0x10);\n        uVar26 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar3 = S6[uStack_50 >> 0x18];\n        uVar18 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar7 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar8 = S7[uStack_50 & 0xff];\n        uVar14 = S6[uVar7 & 0xff];\n        uVar23 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        psVar25 = skey;\n        do {\n          uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8;\n          uVar9 = uVar15 >> 0x10 & 0xff;\n          uVar20 = uVar15 >> 0x18;\n          uVar24 = uVar15 & 0xff;\n          uVar23 = S7[uVar9];\n          uVar16 = uVar15 >> 8 & 0xff;\n          uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23;\n          uVar10 = uVar12 >> 8 & 0xff;\n          uVar21 = uVar12 >> 0x10 & 0xff;\n          uVar4 = S6[uVar10];\n          uVar13 = uVar12 >> 0x18;\n          uVar6 = S7[uVar21];\n          uVar10 = S8[uVar10];\n          bStack_c8 = (byte)uVar12;\n          uVar22 = (ulong)bStack_c8;\n          uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6;\n          uVar26 = S5[uVar5 >> 8 & 0xff];\n          uVar17 = uVar5 >> 0x10 & 0xff;\n          uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3;\n          (psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26;\n          uVar26 = S8[uVar16];\n          (psVar25->des).ek[2] =\n               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff];\n          uVar18 = S6[uVar22];\n          uVar4 = S7[uVar13];\n          (psVar25->des).ek[3] =\n               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff];\n          uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5;\n          uVar17 = uVar5 & 0xff;\n          uVar18 = uVar5 >> 0x10 & 0xff;\n          uVar19 = S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff];\n          uVar20 = uVar19 & 0xff;\n          uVar23 = S6[uVar19 >> 8 & 0xff];\n          uVar6 = uVar19 >> 0x10 & 0xff;\n          uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6];\n          uVar26 = uVar9 >> 0x18;\n          uVar10 = uVar9 >> 0x10 & 0xff;\n          uVar15 = uVar9 & 0xff;\n          uVar12 = uVar9 >> 8 & 0xff;\n          uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10];\n          uVar3 = S7[uVar4 >> 0x18];\n          uVar13 = uVar4 >> 8 & 0xff;\n          uVar16 = uVar4 >> 0x10 & 0xff;\n          (psVar25->des).ek[4] =\n               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16];\n          (psVar25->des).ek[5] =\n               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16];\n          uVar26 = S7[uVar26];\n          uVar18 = S6[uVar4 & 0xff];\n          (psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10];\n          (psVar25->des).ek[7] =\n               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12];\n          uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16];\n          uVar5 = uVar24 >> 0x18;\n          uVar16 = uVar24 >> 8 & 0xff;\n          uVar13 = uVar24 & 0xff;\n          uVar18 = uVar24 >> 0x10 & 0xff;\n          uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16];\n          uVar21 = uVar17 >> 8 & 0xff;\n          uVar3 = S5[uVar17 & 0xff];\n          uVar26 = S6[uVar21];\n          uVar9 = uVar17 >> 0x18;\n          uVar12 = uVar17 >> 0x10 & 0xff;\n          uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12];\n          uVar10 = uVar23 >> 8 & 0xff;\n          uVar20 = uVar23 >> 0x10 & 0xff;\n          uVar15 = S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10];\n          uVar4 = S5[uVar18];\n          (psVar25->des).ek[8] =\n               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]\n          ;\n          uVar18 = S7[uVar16];\n          uVar6 = S7[uVar23 >> 0x18];\n          (psVar25->des).ek[9] =\n               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18];\n          (psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20];\n          uVar3 = S5[uVar12];\n          uVar26 = S8[uVar21];\n          (psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10];\n          uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23;\n          uVar12 = uVar23 & 0xff;\n          uVar6 = S7[uVar23 >> 0x10 & 0xff];\n          bVar11 = (byte)(uVar23 >> 8);\n          uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6;\n          uVar20 = uVar18 & 0xff;\n          uVar9 = uVar18 >> 8 & 0xff;\n          uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff];\n          uVar4 = S7[uVar20];\n          uVar10 = S6[uVar26 >> 0x10 & 0xff];\n          uVar16 = uVar26 >> 0x18;\n          uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10;\n          uVar7 = (ulong)uVar15;\n          uVar5 = S5[uVar12];\n          puVar1 = (psVar25->des).ek;\n          uVar3 = S6[uVar26 & 0xff];\n          uVar9 = S8[uVar9];\n          (psVar25->des).ek[0xd] =\n               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff];\n          uVar12 = S7[uVar12];\n          uVar8 = S7[uVar16];\n          uVar17 = uVar15 >> 0x10 & 0xff;\n          uVar13 = S8[bVar11];\n          uVar14 = S6[(byte)uVar15];\n          (psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10;\n          (psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[0xf] =\n               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17];\n          psVar25 = (symmetric_key *)(puVar1 + 0x10);\n        } while ((symmetric_key *)(puVar1 + 0x10) != (symmetric_key *)(skey->des).dk);\n        iVar2 = 0;\n        (skey->des).dk[0] = keylen;\n      }\n    }\n    else {\n      iVar2 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }\n    return iVar2;\n  }\n                    /* WARNING: Subroutine does not return */\n  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);\n}" primitive_type (function_declarator "cast5_setup(uchar *key,int keylen,int num_rounds,symmetric_key *skey)" identifier (parameter_list "(uchar *key,int keylen,int num_rounds,symmetric_key *skey)" ( (parameter_declaration "uchar *key" type_identifier (pointer_declarator "*key" * identifier)) , (parameter_declaration "int keylen" primitive_type identifier) , (parameter_declaration "int num_rounds" primitive_type identifier) , (parameter_declaration "symmetric_key *skey" type_identifier (pointer_declarator "*skey" * identifier)) ))) (compound_statement "{\n  ulong32 *puVar1;\n  int iVar2;\n  uint uVar3;\n  uint uVar4;\n  uint uVar5;\n  uint uVar6;\n  ulong uVar7;\n  byte bVar11;\n  ulong32 uVar8;\n  uint uVar9;\n  uint uVar10;\n  uint uVar12;\n  uint uVar13;\n  ulong32 uVar14;\n  uint uVar15;\n  uint uVar16;\n  uint uVar17;\n  uint uVar18;\n  uint uVar19;\n  uint uVar20;\n  uint uVar21;\n  ulong uVar22;\n  uint uVar23;\n  uint uVar24;\n  symmetric_key *psVar25;\n  uint uVar26;\n  long in_FS_OFFSET;\n  byte bStack_c8;\n  uint uStack_58;\n  uint uStack_54;\n  uint uStack_50;\n  uint uStack_4c;\n  long lStack_40;\n  \n  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (key == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }\n  if (skey != (symmetric_key *)0x0) {\n    if (((num_rounds & 0xffffffefU) == 0) || (num_rounds == 0xc)) {\n      if (((num_rounds != 0xc) || (iVar2 = 4, keylen < 0xb)) && (iVar2 = 3, keylen - 5U < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,key,(long)keylen,0x10);\n        uVar26 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar3 = S6[uStack_50 >> 0x18];\n        uVar18 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar7 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar8 = S7[uStack_50 & 0xff];\n        uVar14 = S6[uVar7 & 0xff];\n        uVar23 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        psVar25 = skey;\n        do {\n          uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8;\n          uVar9 = uVar15 >> 0x10 & 0xff;\n          uVar20 = uVar15 >> 0x18;\n          uVar24 = uVar15 & 0xff;\n          uVar23 = S7[uVar9];\n          uVar16 = uVar15 >> 8 & 0xff;\n          uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23;\n          uVar10 = uVar12 >> 8 & 0xff;\n          uVar21 = uVar12 >> 0x10 & 0xff;\n          uVar4 = S6[uVar10];\n          uVar13 = uVar12 >> 0x18;\n          uVar6 = S7[uVar21];\n          uVar10 = S8[uVar10];\n          bStack_c8 = (byte)uVar12;\n          uVar22 = (ulong)bStack_c8;\n          uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6;\n          uVar26 = S5[uVar5 >> 8 & 0xff];\n          uVar17 = uVar5 >> 0x10 & 0xff;\n          uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3;\n          (psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26;\n          uVar26 = S8[uVar16];\n          (psVar25->des).ek[2] =\n               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff];\n          uVar18 = S6[uVar22];\n          uVar4 = S7[uVar13];\n          (psVar25->des).ek[3] =\n               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff];\n          uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5;\n          uVar17 = uVar5 & 0xff;\n          uVar18 = uVar5 >> 0x10 & 0xff;\n          uVar19 = S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff];\n          uVar20 = uVar19 & 0xff;\n          uVar23 = S6[uVar19 >> 8 & 0xff];\n          uVar6 = uVar19 >> 0x10 & 0xff;\n          uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6];\n          uVar26 = uVar9 >> 0x18;\n          uVar10 = uVar9 >> 0x10 & 0xff;\n          uVar15 = uVar9 & 0xff;\n          uVar12 = uVar9 >> 8 & 0xff;\n          uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10];\n          uVar3 = S7[uVar4 >> 0x18];\n          uVar13 = uVar4 >> 8 & 0xff;\n          uVar16 = uVar4 >> 0x10 & 0xff;\n          (psVar25->des).ek[4] =\n               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16];\n          (psVar25->des).ek[5] =\n               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16];\n          uVar26 = S7[uVar26];\n          uVar18 = S6[uVar4 & 0xff];\n          (psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10];\n          (psVar25->des).ek[7] =\n               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12];\n          uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16];\n          uVar5 = uVar24 >> 0x18;\n          uVar16 = uVar24 >> 8 & 0xff;\n          uVar13 = uVar24 & 0xff;\n          uVar18 = uVar24 >> 0x10 & 0xff;\n          uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16];\n          uVar21 = uVar17 >> 8 & 0xff;\n          uVar3 = S5[uVar17 & 0xff];\n          uVar26 = S6[uVar21];\n          uVar9 = uVar17 >> 0x18;\n          uVar12 = uVar17 >> 0x10 & 0xff;\n          uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12];\n          uVar10 = uVar23 >> 8 & 0xff;\n          uVar20 = uVar23 >> 0x10 & 0xff;\n          uVar15 = S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10];\n          uVar4 = S5[uVar18];\n          (psVar25->des).ek[8] =\n               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]\n          ;\n          uVar18 = S7[uVar16];\n          uVar6 = S7[uVar23 >> 0x18];\n          (psVar25->des).ek[9] =\n               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18];\n          (psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20];\n          uVar3 = S5[uVar12];\n          uVar26 = S8[uVar21];\n          (psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10];\n          uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23;\n          uVar12 = uVar23 & 0xff;\n          uVar6 = S7[uVar23 >> 0x10 & 0xff];\n          bVar11 = (byte)(uVar23 >> 8);\n          uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6;\n          uVar20 = uVar18 & 0xff;\n          uVar9 = uVar18 >> 8 & 0xff;\n          uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff];\n          uVar4 = S7[uVar20];\n          uVar10 = S6[uVar26 >> 0x10 & 0xff];\n          uVar16 = uVar26 >> 0x18;\n          uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10;\n          uVar7 = (ulong)uVar15;\n          uVar5 = S5[uVar12];\n          puVar1 = (psVar25->des).ek;\n          uVar3 = S6[uVar26 & 0xff];\n          uVar9 = S8[uVar9];\n          (psVar25->des).ek[0xd] =\n               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff];\n          uVar12 = S7[uVar12];\n          uVar8 = S7[uVar16];\n          uVar17 = uVar15 >> 0x10 & 0xff;\n          uVar13 = S8[bVar11];\n          uVar14 = S6[(byte)uVar15];\n          (psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10;\n          (psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[0xf] =\n               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17];\n          psVar25 = (symmetric_key *)(puVar1 + 0x10);\n        } while ((symmetric_key *)(puVar1 + 0x10) != (symmetric_key *)(skey->des).dk);\n        iVar2 = 0;\n        (skey->des).dk[0] = keylen;\n      }\n    }\n    else {\n      iVar2 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }\n    return iVar2;\n  }\n                    /* WARNING: Subroutine does not return */\n  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);\n}" { (declaration "ulong32 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "ulong uVar7;" type_identifier identifier ;) (declaration "byte bVar11;" type_identifier identifier ;) (declaration "ulong32 uVar8;" type_identifier identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "uint uVar13;" type_identifier identifier ;) (declaration "ulong32 uVar14;" type_identifier identifier ;) (declaration "uint uVar15;" type_identifier identifier ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "ulong uVar22;" type_identifier identifier ;) (declaration "uint uVar23;" type_identifier identifier ;) (declaration "uint uVar24;" type_identifier identifier ;) (declaration "symmetric_key *psVar25;" type_identifier (pointer_declarator "*psVar25" * identifier) ;) (declaration "uint uVar26;" type_identifier identifier ;) (declaration "long in_FS_OFFSET;" (sized_type_specifier "long" long) identifier ;) (declaration "byte bStack_c8;" type_identifier identifier ;) (declaration "uint uStack_58;" type_identifier identifier ;) (declaration "uint uStack_54;" type_identifier identifier ;) (declaration "uint uStack_50;" type_identifier identifier ;) (declaration "uint uStack_4c;" type_identifier identifier ;) (declaration "long lStack_40;" (sized_type_specifier "long" long) identifier ;) (expression_statement "lStack_40 = *(long *)(in_FS_OFFSET + 0x28);" (assignment_expression "lStack_40 = *(long *)(in_FS_OFFSET + 0x28)" identifier = (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (key == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }" if (parenthesized_expression "(key == (uchar *)0x0)" ( (binary_expression "key == (uchar *)0x0" identifier == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }" { comment (expression_statement "crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);" (call_expression "crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0)" identifier (argument_list "("key != NULL","src/ciphers/cast5.c",0x1a0)" ( (string_literal ""key != NULL"" " string_content ") , (string_literal ""src/ciphers/cast5.c"" " string_content ") , number_literal ))) ;) })) (if_statement "if (skey != (symmetric_key *)0x0) {\n    if (((num_rounds & 0xffffffefU) == 0) || (num_rounds == 0xc)) {\n      if (((num_rounds != 0xc) || (iVar2 = 4, keylen < 0xb)) && (iVar2 = 3, keylen - 5U < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,key,(long)keylen,0x10);\n        uVar26 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar3 = S6[uStack_50 >> 0x18];\n        uVar18 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar7 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar8 = S7[uStack_50 & 0xff];\n        uVar14 = S6[uVar7 & 0xff];\n        uVar23 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        psVar25 = skey;\n        do {\n          uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8;\n          uVar9 = uVar15 >> 0x10 & 0xff;\n          uVar20 = uVar15 >> 0x18;\n          uVar24 = uVar15 & 0xff;\n          uVar23 = S7[uVar9];\n          uVar16 = uVar15 >> 8 & 0xff;\n          uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23;\n          uVar10 = uVar12 >> 8 & 0xff;\n          uVar21 = uVar12 >> 0x10 & 0xff;\n          uVar4 = S6[uVar10];\n          uVar13 = uVar12 >> 0x18;\n          uVar6 = S7[uVar21];\n          uVar10 = S8[uVar10];\n          bStack_c8 = (byte)uVar12;\n          uVar22 = (ulong)bStack_c8;\n          uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6;\n          uVar26 = S5[uVar5 >> 8 & 0xff];\n          uVar17 = uVar5 >> 0x10 & 0xff;\n          uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3;\n          (psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26;\n          uVar26 = S8[uVar16];\n          (psVar25->des).ek[2] =\n               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff];\n          uVar18 = S6[uVar22];\n          uVar4 = S7[uVar13];\n          (psVar25->des).ek[3] =\n               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff];\n          uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5;\n          uVar17 = uVar5 & 0xff;\n          uVar18 = uVar5 >> 0x10 & 0xff;\n          uVar19 = S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff];\n          uVar20 = uVar19 & 0xff;\n          uVar23 = S6[uVar19 >> 8 & 0xff];\n          uVar6 = uVar19 >> 0x10 & 0xff;\n          uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6];\n          uVar26 = uVar9 >> 0x18;\n          uVar10 = uVar9 >> 0x10 & 0xff;\n          uVar15 = uVar9 & 0xff;\n          uVar12 = uVar9 >> 8 & 0xff;\n          uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10];\n          uVar3 = S7[uVar4 >> 0x18];\n          uVar13 = uVar4 >> 8 & 0xff;\n          uVar16 = uVar4 >> 0x10 & 0xff;\n          (psVar25->des).ek[4] =\n               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16];\n          (psVar25->des).ek[5] =\n               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16];\n          uVar26 = S7[uVar26];\n          uVar18 = S6[uVar4 & 0xff];\n          (psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10];\n          (psVar25->des).ek[7] =\n               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12];\n          uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16];\n          uVar5 = uVar24 >> 0x18;\n          uVar16 = uVar24 >> 8 & 0xff;\n          uVar13 = uVar24 & 0xff;\n          uVar18 = uVar24 >> 0x10 & 0xff;\n          uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16];\n          uVar21 = uVar17 >> 8 & 0xff;\n          uVar3 = S5[uVar17 & 0xff];\n          uVar26 = S6[uVar21];\n          uVar9 = uVar17 >> 0x18;\n          uVar12 = uVar17 >> 0x10 & 0xff;\n          uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12];\n          uVar10 = uVar23 >> 8 & 0xff;\n          uVar20 = uVar23 >> 0x10 & 0xff;\n          uVar15 = S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10];\n          uVar4 = S5[uVar18];\n          (psVar25->des).ek[8] =\n               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]\n          ;\n          uVar18 = S7[uVar16];\n          uVar6 = S7[uVar23 >> 0x18];\n          (psVar25->des).ek[9] =\n               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18];\n          (psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20];\n          uVar3 = S5[uVar12];\n          uVar26 = S8[uVar21];\n          (psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10];\n          uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23;\n          uVar12 = uVar23 & 0xff;\n          uVar6 = S7[uVar23 >> 0x10 & 0xff];\n          bVar11 = (byte)(uVar23 >> 8);\n          uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6;\n          uVar20 = uVar18 & 0xff;\n          uVar9 = uVar18 >> 8 & 0xff;\n          uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff];\n          uVar4 = S7[uVar20];\n          uVar10 = S6[uVar26 >> 0x10 & 0xff];\n          uVar16 = uVar26 >> 0x18;\n          uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10;\n          uVar7 = (ulong)uVar15;\n          uVar5 = S5[uVar12];\n          puVar1 = (psVar25->des).ek;\n          uVar3 = S6[uVar26 & 0xff];\n          uVar9 = S8[uVar9];\n          (psVar25->des).ek[0xd] =\n               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff];\n          uVar12 = S7[uVar12];\n          uVar8 = S7[uVar16];\n          uVar17 = uVar15 >> 0x10 & 0xff;\n          uVar13 = S8[bVar11];\n          uVar14 = S6[(byte)uVar15];\n          (psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10;\n          (psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[0xf] =\n               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17];\n          psVar25 = (symmetric_key *)(puVar1 + 0x10);\n        } while ((symmetric_key *)(puVar1 + 0x10) != (symmetric_key *)(skey->des).dk);\n        iVar2 = 0;\n        (skey->des).dk[0] = keylen;\n      }\n    }\n    else {\n      iVar2 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }\n    return iVar2;\n  }" if (parenthesized_expression "(skey != (symmetric_key *)0x0)" ( (binary_expression "skey != (symmetric_key *)0x0" identifier != (cast_expression "(symmetric_key *)0x0" ( (type_descriptor "symmetric_key *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (((num_rounds & 0xffffffefU) == 0) || (num_rounds == 0xc)) {\n      if (((num_rounds != 0xc) || (iVar2 = 4, keylen < 0xb)) && (iVar2 = 3, keylen - 5U < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,key,(long)keylen,0x10);\n        uVar26 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar3 = S6[uStack_50 >> 0x18];\n        uVar18 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar7 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar8 = S7[uStack_50 & 0xff];\n        uVar14 = S6[uVar7 & 0xff];\n        uVar23 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        psVar25 = skey;\n        do {\n          uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8;\n          uVar9 = uVar15 >> 0x10 & 0xff;\n          uVar20 = uVar15 >> 0x18;\n          uVar24 = uVar15 & 0xff;\n          uVar23 = S7[uVar9];\n          uVar16 = uVar15 >> 8 & 0xff;\n          uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23;\n          uVar10 = uVar12 >> 8 & 0xff;\n          uVar21 = uVar12 >> 0x10 & 0xff;\n          uVar4 = S6[uVar10];\n          uVar13 = uVar12 >> 0x18;\n          uVar6 = S7[uVar21];\n          uVar10 = S8[uVar10];\n          bStack_c8 = (byte)uVar12;\n          uVar22 = (ulong)bStack_c8;\n          uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6;\n          uVar26 = S5[uVar5 >> 8 & 0xff];\n          uVar17 = uVar5 >> 0x10 & 0xff;\n          uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3;\n          (psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26;\n          uVar26 = S8[uVar16];\n          (psVar25->des).ek[2] =\n               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff];\n          uVar18 = S6[uVar22];\n          uVar4 = S7[uVar13];\n          (psVar25->des).ek[3] =\n               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff];\n          uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5;\n          uVar17 = uVar5 & 0xff;\n          uVar18 = uVar5 >> 0x10 & 0xff;\n          uVar19 = S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff];\n          uVar20 = uVar19 & 0xff;\n          uVar23 = S6[uVar19 >> 8 & 0xff];\n          uVar6 = uVar19 >> 0x10 & 0xff;\n          uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6];\n          uVar26 = uVar9 >> 0x18;\n          uVar10 = uVar9 >> 0x10 & 0xff;\n          uVar15 = uVar9 & 0xff;\n          uVar12 = uVar9 >> 8 & 0xff;\n          uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10];\n          uVar3 = S7[uVar4 >> 0x18];\n          uVar13 = uVar4 >> 8 & 0xff;\n          uVar16 = uVar4 >> 0x10 & 0xff;\n          (psVar25->des).ek[4] =\n               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16];\n          (psVar25->des).ek[5] =\n               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16];\n          uVar26 = S7[uVar26];\n          uVar18 = S6[uVar4 & 0xff];\n          (psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10];\n          (psVar25->des).ek[7] =\n               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12];\n          uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16];\n          uVar5 = uVar24 >> 0x18;\n          uVar16 = uVar24 >> 8 & 0xff;\n          uVar13 = uVar24 & 0xff;\n          uVar18 = uVar24 >> 0x10 & 0xff;\n          uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16];\n          uVar21 = uVar17 >> 8 & 0xff;\n          uVar3 = S5[uVar17 & 0xff];\n          uVar26 = S6[uVar21];\n          uVar9 = uVar17 >> 0x18;\n          uVar12 = uVar17 >> 0x10 & 0xff;\n          uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12];\n          uVar10 = uVar23 >> 8 & 0xff;\n          uVar20 = uVar23 >> 0x10 & 0xff;\n          uVar15 = S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10];\n          uVar4 = S5[uVar18];\n          (psVar25->des).ek[8] =\n               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]\n          ;\n          uVar18 = S7[uVar16];\n          uVar6 = S7[uVar23 >> 0x18];\n          (psVar25->des).ek[9] =\n               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18];\n          (psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20];\n          uVar3 = S5[uVar12];\n          uVar26 = S8[uVar21];\n          (psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10];\n          uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23;\n          uVar12 = uVar23 & 0xff;\n          uVar6 = S7[uVar23 >> 0x10 & 0xff];\n          bVar11 = (byte)(uVar23 >> 8);\n          uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6;\n          uVar20 = uVar18 & 0xff;\n          uVar9 = uVar18 >> 8 & 0xff;\n          uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff];\n          uVar4 = S7[uVar20];\n          uVar10 = S6[uVar26 >> 0x10 & 0xff];\n          uVar16 = uVar26 >> 0x18;\n          uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10;\n          uVar7 = (ulong)uVar15;\n          uVar5 = S5[uVar12];\n          puVar1 = (psVar25->des).ek;\n          uVar3 = S6[uVar26 & 0xff];\n          uVar9 = S8[uVar9];\n          (psVar25->des).ek[0xd] =\n               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff];\n          uVar12 = S7[uVar12];\n          uVar8 = S7[uVar16];\n          uVar17 = uVar15 >> 0x10 & 0xff;\n          uVar13 = S8[bVar11];\n          uVar14 = S6[(byte)uVar15];\n          (psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10;\n          (psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[0xf] =\n               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17];\n          psVar25 = (symmetric_key *)(puVar1 + 0x10);\n        } while ((symmetric_key *)(puVar1 + 0x10) != (symmetric_key *)(skey->des).dk);\n        iVar2 = 0;\n        (skey->des).dk[0] = keylen;\n      }\n    }\n    else {\n      iVar2 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }\n    return iVar2;\n  }" { (if_statement "if (((num_rounds & 0xffffffefU) == 0) || (num_rounds == 0xc)) {\n      if (((num_rounds != 0xc) || (iVar2 = 4, keylen < 0xb)) && (iVar2 = 3, keylen - 5U < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,key,(long)keylen,0x10);\n        uVar26 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar3 = S6[uStack_50 >> 0x18];\n        uVar18 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar7 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar8 = S7[uStack_50 & 0xff];\n        uVar14 = S6[uVar7 & 0xff];\n        uVar23 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        psVar25 = skey;\n        do {\n          uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8;\n          uVar9 = uVar15 >> 0x10 & 0xff;\n          uVar20 = uVar15 >> 0x18;\n          uVar24 = uVar15 & 0xff;\n          uVar23 = S7[uVar9];\n          uVar16 = uVar15 >> 8 & 0xff;\n          uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23;\n          uVar10 = uVar12 >> 8 & 0xff;\n          uVar21 = uVar12 >> 0x10 & 0xff;\n          uVar4 = S6[uVar10];\n          uVar13 = uVar12 >> 0x18;\n          uVar6 = S7[uVar21];\n          uVar10 = S8[uVar10];\n          bStack_c8 = (byte)uVar12;\n          uVar22 = (ulong)bStack_c8;\n          uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6;\n          uVar26 = S5[uVar5 >> 8 & 0xff];\n          uVar17 = uVar5 >> 0x10 & 0xff;\n          uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3;\n          (psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26;\n          uVar26 = S8[uVar16];\n          (psVar25->des).ek[2] =\n               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff];\n          uVar18 = S6[uVar22];\n          uVar4 = S7[uVar13];\n          (psVar25->des).ek[3] =\n               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff];\n          uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5;\n          uVar17 = uVar5 & 0xff;\n          uVar18 = uVar5 >> 0x10 & 0xff;\n          uVar19 = S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff];\n          uVar20 = uVar19 & 0xff;\n          uVar23 = S6[uVar19 >> 8 & 0xff];\n          uVar6 = uVar19 >> 0x10 & 0xff;\n          uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6];\n          uVar26 = uVar9 >> 0x18;\n          uVar10 = uVar9 >> 0x10 & 0xff;\n          uVar15 = uVar9 & 0xff;\n          uVar12 = uVar9 >> 8 & 0xff;\n          uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10];\n          uVar3 = S7[uVar4 >> 0x18];\n          uVar13 = uVar4 >> 8 & 0xff;\n          uVar16 = uVar4 >> 0x10 & 0xff;\n          (psVar25->des).ek[4] =\n               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16];\n          (psVar25->des).ek[5] =\n               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16];\n          uVar26 = S7[uVar26];\n          uVar18 = S6[uVar4 & 0xff];\n          (psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10];\n          (psVar25->des).ek[7] =\n               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12];\n          uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16];\n          uVar5 = uVar24 >> 0x18;\n          uVar16 = uVar24 >> 8 & 0xff;\n          uVar13 = uVar24 & 0xff;\n          uVar18 = uVar24 >> 0x10 & 0xff;\n          uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16];\n          uVar21 = uVar17 >> 8 & 0xff;\n          uVar3 = S5[uVar17 & 0xff];\n          uVar26 = S6[uVar21];\n          uVar9 = uVar17 >> 0x18;\n          uVar12 = uVar17 >> 0x10 & 0xff;\n          uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12];\n          uVar10 = uVar23 >> 8 & 0xff;\n          uVar20 = uVar23 >> 0x10 & 0xff;\n          uVar15 = S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10];\n          uVar4 = S5[uVar18];\n          (psVar25->des).ek[8] =\n               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]\n          ;\n          uVar18 = S7[uVar16];\n          uVar6 = S7[uVar23 >> 0x18];\n          (psVar25->des).ek[9] =\n               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18];\n          (psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20];\n          uVar3 = S5[uVar12];\n          uVar26 = S8[uVar21];\n          (psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10];\n          uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23;\n          uVar12 = uVar23 & 0xff;\n          uVar6 = S7[uVar23 >> 0x10 & 0xff];\n          bVar11 = (byte)(uVar23 >> 8);\n          uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6;\n          uVar20 = uVar18 & 0xff;\n          uVar9 = uVar18 >> 8 & 0xff;\n          uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff];\n          uVar4 = S7[uVar20];\n          uVar10 = S6[uVar26 >> 0x10 & 0xff];\n          uVar16 = uVar26 >> 0x18;\n          uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10;\n          uVar7 = (ulong)uVar15;\n          uVar5 = S5[uVar12];\n          puVar1 = (psVar25->des).ek;\n          uVar3 = S6[uVar26 & 0xff];\n          uVar9 = S8[uVar9];\n          (psVar25->des).ek[0xd] =\n               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff];\n          uVar12 = S7[uVar12];\n          uVar8 = S7[uVar16];\n          uVar17 = uVar15 >> 0x10 & 0xff;\n          uVar13 = S8[bVar11];\n          uVar14 = S6[(byte)uVar15];\n          (psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10;\n          (psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[0xf] =\n               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17];\n          psVar25 = (symmetric_key *)(puVar1 + 0x10);\n        } while ((symmetric_key *)(puVar1 + 0x10) != (symmetric_key *)(skey->des).dk);\n        iVar2 = 0;\n        (skey->des).dk[0] = keylen;\n      }\n    }\n    else {\n      iVar2 = 4;\n    }" if (parenthesized_expression "(((num_rounds & 0xffffffefU) == 0) || (num_rounds == 0xc))" ( (binary_expression "((num_rounds & 0xffffffefU) == 0) || (num_rounds == 0xc)" (parenthesized_expression "((num_rounds & 0xffffffefU) == 0)" ( (binary_expression "(num_rounds & 0xffffffefU) == 0" (parenthesized_expression "(num_rounds & 0xffffffefU)" ( (binary_expression "num_rounds & 0xffffffefU" identifier & number_literal) )) == number_literal) )) || (parenthesized_expression "(num_rounds == 0xc)" ( (binary_expression "num_rounds == 0xc" identifier == number_literal) ))) )) (compound_statement "{\n      if (((num_rounds != 0xc) || (iVar2 = 4, keylen < 0xb)) && (iVar2 = 3, keylen - 5U < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,key,(long)keylen,0x10);\n        uVar26 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar3 = S6[uStack_50 >> 0x18];\n        uVar18 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar7 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar8 = S7[uStack_50 & 0xff];\n        uVar14 = S6[uVar7 & 0xff];\n        uVar23 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        psVar25 = skey;\n        do {\n          uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8;\n          uVar9 = uVar15 >> 0x10 & 0xff;\n          uVar20 = uVar15 >> 0x18;\n          uVar24 = uVar15 & 0xff;\n          uVar23 = S7[uVar9];\n          uVar16 = uVar15 >> 8 & 0xff;\n          uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23;\n          uVar10 = uVar12 >> 8 & 0xff;\n          uVar21 = uVar12 >> 0x10 & 0xff;\n          uVar4 = S6[uVar10];\n          uVar13 = uVar12 >> 0x18;\n          uVar6 = S7[uVar21];\n          uVar10 = S8[uVar10];\n          bStack_c8 = (byte)uVar12;\n          uVar22 = (ulong)bStack_c8;\n          uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6;\n          uVar26 = S5[uVar5 >> 8 & 0xff];\n          uVar17 = uVar5 >> 0x10 & 0xff;\n          uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3;\n          (psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26;\n          uVar26 = S8[uVar16];\n          (psVar25->des).ek[2] =\n               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff];\n          uVar18 = S6[uVar22];\n          uVar4 = S7[uVar13];\n          (psVar25->des).ek[3] =\n               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff];\n          uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5;\n          uVar17 = uVar5 & 0xff;\n          uVar18 = uVar5 >> 0x10 & 0xff;\n          uVar19 = S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff];\n          uVar20 = uVar19 & 0xff;\n          uVar23 = S6[uVar19 >> 8 & 0xff];\n          uVar6 = uVar19 >> 0x10 & 0xff;\n          uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6];\n          uVar26 = uVar9 >> 0x18;\n          uVar10 = uVar9 >> 0x10 & 0xff;\n          uVar15 = uVar9 & 0xff;\n          uVar12 = uVar9 >> 8 & 0xff;\n          uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10];\n          uVar3 = S7[uVar4 >> 0x18];\n          uVar13 = uVar4 >> 8 & 0xff;\n          uVar16 = uVar4 >> 0x10 & 0xff;\n          (psVar25->des).ek[4] =\n               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16];\n          (psVar25->des).ek[5] =\n               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16];\n          uVar26 = S7[uVar26];\n          uVar18 = S6[uVar4 & 0xff];\n          (psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10];\n          (psVar25->des).ek[7] =\n               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12];\n          uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16];\n          uVar5 = uVar24 >> 0x18;\n          uVar16 = uVar24 >> 8 & 0xff;\n          uVar13 = uVar24 & 0xff;\n          uVar18 = uVar24 >> 0x10 & 0xff;\n          uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16];\n          uVar21 = uVar17 >> 8 & 0xff;\n          uVar3 = S5[uVar17 & 0xff];\n          uVar26 = S6[uVar21];\n          uVar9 = uVar17 >> 0x18;\n          uVar12 = uVar17 >> 0x10 & 0xff;\n          uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12];\n          uVar10 = uVar23 >> 8 & 0xff;\n          uVar20 = uVar23 >> 0x10 & 0xff;\n          uVar15 = S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10];\n          uVar4 = S5[uVar18];\n          (psVar25->des).ek[8] =\n               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]\n          ;\n          uVar18 = S7[uVar16];\n          uVar6 = S7[uVar23 >> 0x18];\n          (psVar25->des).ek[9] =\n               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18];\n          (psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20];\n          uVar3 = S5[uVar12];\n          uVar26 = S8[uVar21];\n          (psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10];\n          uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23;\n          uVar12 = uVar23 & 0xff;\n          uVar6 = S7[uVar23 >> 0x10 & 0xff];\n          bVar11 = (byte)(uVar23 >> 8);\n          uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6;\n          uVar20 = uVar18 & 0xff;\n          uVar9 = uVar18 >> 8 & 0xff;\n          uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff];\n          uVar4 = S7[uVar20];\n          uVar10 = S6[uVar26 >> 0x10 & 0xff];\n          uVar16 = uVar26 >> 0x18;\n          uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10;\n          uVar7 = (ulong)uVar15;\n          uVar5 = S5[uVar12];\n          puVar1 = (psVar25->des).ek;\n          uVar3 = S6[uVar26 & 0xff];\n          uVar9 = S8[uVar9];\n          (psVar25->des).ek[0xd] =\n               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff];\n          uVar12 = S7[uVar12];\n          uVar8 = S7[uVar16];\n          uVar17 = uVar15 >> 0x10 & 0xff;\n          uVar13 = S8[bVar11];\n          uVar14 = S6[(byte)uVar15];\n          (psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10;\n          (psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[0xf] =\n               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17];\n          psVar25 = (symmetric_key *)(puVar1 + 0x10);\n        } while ((symmetric_key *)(puVar1 + 0x10) != (symmetric_key *)(skey->des).dk);\n        iVar2 = 0;\n        (skey->des).dk[0] = keylen;\n      }\n    }" { (if_statement "if (((num_rounds != 0xc) || (iVar2 = 4, keylen < 0xb)) && (iVar2 = 3, keylen - 5U < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,key,(long)keylen,0x10);\n        uVar26 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar3 = S6[uStack_50 >> 0x18];\n        uVar18 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar7 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar8 = S7[uStack_50 & 0xff];\n        uVar14 = S6[uVar7 & 0xff];\n        uVar23 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        psVar25 = skey;\n        do {\n          uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8;\n          uVar9 = uVar15 >> 0x10 & 0xff;\n          uVar20 = uVar15 >> 0x18;\n          uVar24 = uVar15 & 0xff;\n          uVar23 = S7[uVar9];\n          uVar16 = uVar15 >> 8 & 0xff;\n          uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23;\n          uVar10 = uVar12 >> 8 & 0xff;\n          uVar21 = uVar12 >> 0x10 & 0xff;\n          uVar4 = S6[uVar10];\n          uVar13 = uVar12 >> 0x18;\n          uVar6 = S7[uVar21];\n          uVar10 = S8[uVar10];\n          bStack_c8 = (byte)uVar12;\n          uVar22 = (ulong)bStack_c8;\n          uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6;\n          uVar26 = S5[uVar5 >> 8 & 0xff];\n          uVar17 = uVar5 >> 0x10 & 0xff;\n          uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3;\n          (psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26;\n          uVar26 = S8[uVar16];\n          (psVar25->des).ek[2] =\n               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff];\n          uVar18 = S6[uVar22];\n          uVar4 = S7[uVar13];\n          (psVar25->des).ek[3] =\n               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff];\n          uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5;\n          uVar17 = uVar5 & 0xff;\n          uVar18 = uVar5 >> 0x10 & 0xff;\n          uVar19 = S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff];\n          uVar20 = uVar19 & 0xff;\n          uVar23 = S6[uVar19 >> 8 & 0xff];\n          uVar6 = uVar19 >> 0x10 & 0xff;\n          uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6];\n          uVar26 = uVar9 >> 0x18;\n          uVar10 = uVar9 >> 0x10 & 0xff;\n          uVar15 = uVar9 & 0xff;\n          uVar12 = uVar9 >> 8 & 0xff;\n          uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10];\n          uVar3 = S7[uVar4 >> 0x18];\n          uVar13 = uVar4 >> 8 & 0xff;\n          uVar16 = uVar4 >> 0x10 & 0xff;\n          (psVar25->des).ek[4] =\n               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16];\n          (psVar25->des).ek[5] =\n               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16];\n          uVar26 = S7[uVar26];\n          uVar18 = S6[uVar4 & 0xff];\n          (psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10];\n          (psVar25->des).ek[7] =\n               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12];\n          uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16];\n          uVar5 = uVar24 >> 0x18;\n          uVar16 = uVar24 >> 8 & 0xff;\n          uVar13 = uVar24 & 0xff;\n          uVar18 = uVar24 >> 0x10 & 0xff;\n          uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16];\n          uVar21 = uVar17 >> 8 & 0xff;\n          uVar3 = S5[uVar17 & 0xff];\n          uVar26 = S6[uVar21];\n          uVar9 = uVar17 >> 0x18;\n          uVar12 = uVar17 >> 0x10 & 0xff;\n          uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12];\n          uVar10 = uVar23 >> 8 & 0xff;\n          uVar20 = uVar23 >> 0x10 & 0xff;\n          uVar15 = S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10];\n          uVar4 = S5[uVar18];\n          (psVar25->des).ek[8] =\n               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]\n          ;\n          uVar18 = S7[uVar16];\n          uVar6 = S7[uVar23 >> 0x18];\n          (psVar25->des).ek[9] =\n               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18];\n          (psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20];\n          uVar3 = S5[uVar12];\n          uVar26 = S8[uVar21];\n          (psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10];\n          uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23;\n          uVar12 = uVar23 & 0xff;\n          uVar6 = S7[uVar23 >> 0x10 & 0xff];\n          bVar11 = (byte)(uVar23 >> 8);\n          uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6;\n          uVar20 = uVar18 & 0xff;\n          uVar9 = uVar18 >> 8 & 0xff;\n          uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff];\n          uVar4 = S7[uVar20];\n          uVar10 = S6[uVar26 >> 0x10 & 0xff];\n          uVar16 = uVar26 >> 0x18;\n          uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10;\n          uVar7 = (ulong)uVar15;\n          uVar5 = S5[uVar12];\n          puVar1 = (psVar25->des).ek;\n          uVar3 = S6[uVar26 & 0xff];\n          uVar9 = S8[uVar9];\n          (psVar25->des).ek[0xd] =\n               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff];\n          uVar12 = S7[uVar12];\n          uVar8 = S7[uVar16];\n          uVar17 = uVar15 >> 0x10 & 0xff;\n          uVar13 = S8[bVar11];\n          uVar14 = S6[(byte)uVar15];\n          (psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10;\n          (psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[0xf] =\n               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17];\n          psVar25 = (symmetric_key *)(puVar1 + 0x10);\n        } while ((symmetric_key *)(puVar1 + 0x10) != (symmetric_key *)(skey->des).dk);\n        iVar2 = 0;\n        (skey->des).dk[0] = keylen;\n      }" if (parenthesized_expression "(((num_rounds != 0xc) || (iVar2 = 4, keylen < 0xb)) && (iVar2 = 3, keylen - 5U < 0xc))" ( (binary_expression "((num_rounds != 0xc) || (iVar2 = 4, keylen < 0xb)) && (iVar2 = 3, keylen - 5U < 0xc)" (parenthesized_expression "((num_rounds != 0xc) || (iVar2 = 4, keylen < 0xb))" ( (binary_expression "(num_rounds != 0xc) || (iVar2 = 4, keylen < 0xb)" (parenthesized_expression "(num_rounds != 0xc)" ( (binary_expression "num_rounds != 0xc" identifier != number_literal) )) || (parenthesized_expression "(iVar2 = 4, keylen < 0xb)" ( (comma_expression "iVar2 = 4, keylen < 0xb" (assignment_expression "iVar2 = 4" identifier = number_literal) , (binary_expression "keylen < 0xb" identifier < number_literal)) ))) )) && (parenthesized_expression "(iVar2 = 3, keylen - 5U < 0xc)" ( (comma_expression "iVar2 = 3, keylen - 5U < 0xc" (assignment_expression "iVar2 = 3" identifier = number_literal) , (binary_expression "keylen - 5U < 0xc" (binary_expression "keylen - 5U" identifier - number_literal) < number_literal)) ))) )) (compound_statement "{\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,key,(long)keylen,0x10);\n        uVar26 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar3 = S6[uStack_50 >> 0x18];\n        uVar18 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar7 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar8 = S7[uStack_50 & 0xff];\n        uVar14 = S6[uVar7 & 0xff];\n        uVar23 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        psVar25 = skey;\n        do {\n          uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8;\n          uVar9 = uVar15 >> 0x10 & 0xff;\n          uVar20 = uVar15 >> 0x18;\n          uVar24 = uVar15 & 0xff;\n          uVar23 = S7[uVar9];\n          uVar16 = uVar15 >> 8 & 0xff;\n          uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23;\n          uVar10 = uVar12 >> 8 & 0xff;\n          uVar21 = uVar12 >> 0x10 & 0xff;\n          uVar4 = S6[uVar10];\n          uVar13 = uVar12 >> 0x18;\n          uVar6 = S7[uVar21];\n          uVar10 = S8[uVar10];\n          bStack_c8 = (byte)uVar12;\n          uVar22 = (ulong)bStack_c8;\n          uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6;\n          uVar26 = S5[uVar5 >> 8 & 0xff];\n          uVar17 = uVar5 >> 0x10 & 0xff;\n          uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3;\n          (psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26;\n          uVar26 = S8[uVar16];\n          (psVar25->des).ek[2] =\n               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff];\n          uVar18 = S6[uVar22];\n          uVar4 = S7[uVar13];\n          (psVar25->des).ek[3] =\n               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff];\n          uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5;\n          uVar17 = uVar5 & 0xff;\n          uVar18 = uVar5 >> 0x10 & 0xff;\n          uVar19 = S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff];\n          uVar20 = uVar19 & 0xff;\n          uVar23 = S6[uVar19 >> 8 & 0xff];\n          uVar6 = uVar19 >> 0x10 & 0xff;\n          uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6];\n          uVar26 = uVar9 >> 0x18;\n          uVar10 = uVar9 >> 0x10 & 0xff;\n          uVar15 = uVar9 & 0xff;\n          uVar12 = uVar9 >> 8 & 0xff;\n          uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10];\n          uVar3 = S7[uVar4 >> 0x18];\n          uVar13 = uVar4 >> 8 & 0xff;\n          uVar16 = uVar4 >> 0x10 & 0xff;\n          (psVar25->des).ek[4] =\n               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16];\n          (psVar25->des).ek[5] =\n               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16];\n          uVar26 = S7[uVar26];\n          uVar18 = S6[uVar4 & 0xff];\n          (psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10];\n          (psVar25->des).ek[7] =\n               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12];\n          uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16];\n          uVar5 = uVar24 >> 0x18;\n          uVar16 = uVar24 >> 8 & 0xff;\n          uVar13 = uVar24 & 0xff;\n          uVar18 = uVar24 >> 0x10 & 0xff;\n          uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16];\n          uVar21 = uVar17 >> 8 & 0xff;\n          uVar3 = S5[uVar17 & 0xff];\n          uVar26 = S6[uVar21];\n          uVar9 = uVar17 >> 0x18;\n          uVar12 = uVar17 >> 0x10 & 0xff;\n          uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12];\n          uVar10 = uVar23 >> 8 & 0xff;\n          uVar20 = uVar23 >> 0x10 & 0xff;\n          uVar15 = S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10];\n          uVar4 = S5[uVar18];\n          (psVar25->des).ek[8] =\n               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]\n          ;\n          uVar18 = S7[uVar16];\n          uVar6 = S7[uVar23 >> 0x18];\n          (psVar25->des).ek[9] =\n               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18];\n          (psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20];\n          uVar3 = S5[uVar12];\n          uVar26 = S8[uVar21];\n          (psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10];\n          uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23;\n          uVar12 = uVar23 & 0xff;\n          uVar6 = S7[uVar23 >> 0x10 & 0xff];\n          bVar11 = (byte)(uVar23 >> 8);\n          uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6;\n          uVar20 = uVar18 & 0xff;\n          uVar9 = uVar18 >> 8 & 0xff;\n          uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff];\n          uVar4 = S7[uVar20];\n          uVar10 = S6[uVar26 >> 0x10 & 0xff];\n          uVar16 = uVar26 >> 0x18;\n          uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10;\n          uVar7 = (ulong)uVar15;\n          uVar5 = S5[uVar12];\n          puVar1 = (psVar25->des).ek;\n          uVar3 = S6[uVar26 & 0xff];\n          uVar9 = S8[uVar9];\n          (psVar25->des).ek[0xd] =\n               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff];\n          uVar12 = S7[uVar12];\n          uVar8 = S7[uVar16];\n          uVar17 = uVar15 >> 0x10 & 0xff;\n          uVar13 = S8[bVar11];\n          uVar14 = S6[(byte)uVar15];\n          (psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10;\n          (psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[0xf] =\n               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17];\n          psVar25 = (symmetric_key *)(puVar1 + 0x10);\n        } while ((symmetric_key *)(puVar1 + 0x10) != (symmetric_key *)(skey->des).dk);\n        iVar2 = 0;\n        (skey->des).dk[0] = keylen;\n      }" { (expression_statement "zeromem(&uStack_58,0x10);" (call_expression "zeromem(&uStack_58,0x10)" identifier (argument_list "(&uStack_58,0x10)" ( (pointer_expression "&uStack_58" & identifier) , number_literal ))) ;) (expression_statement "__memcpy_chk(&uStack_58,key,(long)keylen,0x10);" (call_expression "__memcpy_chk(&uStack_58,key,(long)keylen,0x10)" identifier (argument_list "(&uStack_58,key,(long)keylen,0x10)" ( (pointer_expression "&uStack_58" & identifier) , identifier , (cast_expression "(long)keylen" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) , number_literal ))) ;) (expression_statement "uVar26 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;" (assignment_expression "uVar26 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18" identifier = (binary_expression "uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18" (binary_expression "uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8" (binary_expression "uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8" (binary_expression "uStack_50 >> 0x18" identifier >> number_literal) | (binary_expression "(uStack_50 & 0xff0000) >> 8" (parenthesized_expression "(uStack_50 & 0xff0000)" ( (binary_expression "uStack_50 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uStack_50 & 0xff00) << 8" (parenthesized_expression "(uStack_50 & 0xff00)" ( (binary_expression "uStack_50 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uStack_50 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar3 = S6[uStack_50 >> 0x18];" (assignment_expression "uVar3 = S6[uStack_50 >> 0x18]" identifier = (subscript_expression "S6[uStack_50 >> 0x18]" identifier [ (binary_expression "uStack_50 >> 0x18" identifier >> number_literal) ])) ;) (expression_statement "uVar18 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;" (assignment_expression "uVar18 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18" identifier = (binary_expression "uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18" (binary_expression "uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8" (binary_expression "uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8" (binary_expression "uStack_54 >> 0x18" identifier >> number_literal) | (binary_expression "(uStack_54 & 0xff0000) >> 8" (parenthesized_expression "(uStack_54 & 0xff0000)" ( (binary_expression "uStack_54 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uStack_54 & 0xff00) << 8" (parenthesized_expression "(uStack_54 & 0xff00)" ( (binary_expression "uStack_54 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uStack_54 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar7 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);" (assignment_expression "uVar7 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18)" identifier = (call_expression "(ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18)" ( (binary_expression "uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18" (binary_expression "uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8" (binary_expression "uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8" (binary_expression "uStack_4c >> 0x18" identifier >> number_literal) | (binary_expression "(uStack_4c & 0xff0000) >> 8" (parenthesized_expression "(uStack_4c & 0xff0000)" ( (binary_expression "uStack_4c & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uStack_4c & 0xff00) << 8" (parenthesized_expression "(uStack_4c & 0xff00)" ( (binary_expression "uStack_4c & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uStack_4c << 0x18" identifier << number_literal)) )))) ;) (expression_statement "uVar8 = S7[uStack_50 & 0xff];" (assignment_expression "uVar8 = S7[uStack_50 & 0xff]" identifier = (subscript_expression "S7[uStack_50 & 0xff]" identifier [ (binary_expression "uStack_50 & 0xff" identifier & number_literal) ])) ;) (expression_statement "uVar14 = S6[uVar7 & 0xff];" (assignment_expression "uVar14 = S6[uVar7 & 0xff]" identifier = (subscript_expression "S6[uVar7 & 0xff]" identifier [ (binary_expression "uVar7 & 0xff" identifier & number_literal) ])) ;) (expression_statement "uVar23 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;" (assignment_expression "uVar23 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18" identifier = (binary_expression "uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18" (binary_expression "uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8" (binary_expression "uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8" (binary_expression "uStack_58 >> 0x18" identifier >> number_literal) | (binary_expression "(uStack_58 & 0xff0000) >> 8" (parenthesized_expression "(uStack_58 & 0xff0000)" ( (binary_expression "uStack_58 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uStack_58 & 0xff00) << 8" (parenthesized_expression "(uStack_58 & 0xff00)" ( (binary_expression "uStack_58 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uStack_58 << 0x18" identifier << number_literal))) ;) (expression_statement "psVar25 = skey;" (assignment_expression "psVar25 = skey" identifier = identifier) ;) (do_statement "do {\n          uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8;\n          uVar9 = uVar15 >> 0x10 & 0xff;\n          uVar20 = uVar15 >> 0x18;\n          uVar24 = uVar15 & 0xff;\n          uVar23 = S7[uVar9];\n          uVar16 = uVar15 >> 8 & 0xff;\n          uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23;\n          uVar10 = uVar12 >> 8 & 0xff;\n          uVar21 = uVar12 >> 0x10 & 0xff;\n          uVar4 = S6[uVar10];\n          uVar13 = uVar12 >> 0x18;\n          uVar6 = S7[uVar21];\n          uVar10 = S8[uVar10];\n          bStack_c8 = (byte)uVar12;\n          uVar22 = (ulong)bStack_c8;\n          uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6;\n          uVar26 = S5[uVar5 >> 8 & 0xff];\n          uVar17 = uVar5 >> 0x10 & 0xff;\n          uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3;\n          (psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26;\n          uVar26 = S8[uVar16];\n          (psVar25->des).ek[2] =\n               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff];\n          uVar18 = S6[uVar22];\n          uVar4 = S7[uVar13];\n          (psVar25->des).ek[3] =\n               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff];\n          uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5;\n          uVar17 = uVar5 & 0xff;\n          uVar18 = uVar5 >> 0x10 & 0xff;\n          uVar19 = S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff];\n          uVar20 = uVar19 & 0xff;\n          uVar23 = S6[uVar19 >> 8 & 0xff];\n          uVar6 = uVar19 >> 0x10 & 0xff;\n          uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6];\n          uVar26 = uVar9 >> 0x18;\n          uVar10 = uVar9 >> 0x10 & 0xff;\n          uVar15 = uVar9 & 0xff;\n          uVar12 = uVar9 >> 8 & 0xff;\n          uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10];\n          uVar3 = S7[uVar4 >> 0x18];\n          uVar13 = uVar4 >> 8 & 0xff;\n          uVar16 = uVar4 >> 0x10 & 0xff;\n          (psVar25->des).ek[4] =\n               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16];\n          (psVar25->des).ek[5] =\n               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16];\n          uVar26 = S7[uVar26];\n          uVar18 = S6[uVar4 & 0xff];\n          (psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10];\n          (psVar25->des).ek[7] =\n               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12];\n          uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16];\n          uVar5 = uVar24 >> 0x18;\n          uVar16 = uVar24 >> 8 & 0xff;\n          uVar13 = uVar24 & 0xff;\n          uVar18 = uVar24 >> 0x10 & 0xff;\n          uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16];\n          uVar21 = uVar17 >> 8 & 0xff;\n          uVar3 = S5[uVar17 & 0xff];\n          uVar26 = S6[uVar21];\n          uVar9 = uVar17 >> 0x18;\n          uVar12 = uVar17 >> 0x10 & 0xff;\n          uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12];\n          uVar10 = uVar23 >> 8 & 0xff;\n          uVar20 = uVar23 >> 0x10 & 0xff;\n          uVar15 = S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10];\n          uVar4 = S5[uVar18];\n          (psVar25->des).ek[8] =\n               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]\n          ;\n          uVar18 = S7[uVar16];\n          uVar6 = S7[uVar23 >> 0x18];\n          (psVar25->des).ek[9] =\n               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18];\n          (psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20];\n          uVar3 = S5[uVar12];\n          uVar26 = S8[uVar21];\n          (psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10];\n          uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23;\n          uVar12 = uVar23 & 0xff;\n          uVar6 = S7[uVar23 >> 0x10 & 0xff];\n          bVar11 = (byte)(uVar23 >> 8);\n          uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6;\n          uVar20 = uVar18 & 0xff;\n          uVar9 = uVar18 >> 8 & 0xff;\n          uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff];\n          uVar4 = S7[uVar20];\n          uVar10 = S6[uVar26 >> 0x10 & 0xff];\n          uVar16 = uVar26 >> 0x18;\n          uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10;\n          uVar7 = (ulong)uVar15;\n          uVar5 = S5[uVar12];\n          puVar1 = (psVar25->des).ek;\n          uVar3 = S6[uVar26 & 0xff];\n          uVar9 = S8[uVar9];\n          (psVar25->des).ek[0xd] =\n               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff];\n          uVar12 = S7[uVar12];\n          uVar8 = S7[uVar16];\n          uVar17 = uVar15 >> 0x10 & 0xff;\n          uVar13 = S8[bVar11];\n          uVar14 = S6[(byte)uVar15];\n          (psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10;\n          (psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[0xf] =\n               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17];\n          psVar25 = (symmetric_key *)(puVar1 + 0x10);\n        } while ((symmetric_key *)(puVar1 + 0x10) != (symmetric_key *)(skey->des).dk);" do (compound_statement "{\n          uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8;\n          uVar9 = uVar15 >> 0x10 & 0xff;\n          uVar20 = uVar15 >> 0x18;\n          uVar24 = uVar15 & 0xff;\n          uVar23 = S7[uVar9];\n          uVar16 = uVar15 >> 8 & 0xff;\n          uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23;\n          uVar10 = uVar12 >> 8 & 0xff;\n          uVar21 = uVar12 >> 0x10 & 0xff;\n          uVar4 = S6[uVar10];\n          uVar13 = uVar12 >> 0x18;\n          uVar6 = S7[uVar21];\n          uVar10 = S8[uVar10];\n          bStack_c8 = (byte)uVar12;\n          uVar22 = (ulong)bStack_c8;\n          uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6;\n          uVar26 = S5[uVar5 >> 8 & 0xff];\n          uVar17 = uVar5 >> 0x10 & 0xff;\n          uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3;\n          (psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26;\n          uVar26 = S8[uVar16];\n          (psVar25->des).ek[2] =\n               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff];\n          uVar18 = S6[uVar22];\n          uVar4 = S7[uVar13];\n          (psVar25->des).ek[3] =\n               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff];\n          uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5;\n          uVar17 = uVar5 & 0xff;\n          uVar18 = uVar5 >> 0x10 & 0xff;\n          uVar19 = S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff];\n          uVar20 = uVar19 & 0xff;\n          uVar23 = S6[uVar19 >> 8 & 0xff];\n          uVar6 = uVar19 >> 0x10 & 0xff;\n          uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6];\n          uVar26 = uVar9 >> 0x18;\n          uVar10 = uVar9 >> 0x10 & 0xff;\n          uVar15 = uVar9 & 0xff;\n          uVar12 = uVar9 >> 8 & 0xff;\n          uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10];\n          uVar3 = S7[uVar4 >> 0x18];\n          uVar13 = uVar4 >> 8 & 0xff;\n          uVar16 = uVar4 >> 0x10 & 0xff;\n          (psVar25->des).ek[4] =\n               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16];\n          (psVar25->des).ek[5] =\n               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16];\n          uVar26 = S7[uVar26];\n          uVar18 = S6[uVar4 & 0xff];\n          (psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10];\n          (psVar25->des).ek[7] =\n               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12];\n          uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16];\n          uVar5 = uVar24 >> 0x18;\n          uVar16 = uVar24 >> 8 & 0xff;\n          uVar13 = uVar24 & 0xff;\n          uVar18 = uVar24 >> 0x10 & 0xff;\n          uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16];\n          uVar21 = uVar17 >> 8 & 0xff;\n          uVar3 = S5[uVar17 & 0xff];\n          uVar26 = S6[uVar21];\n          uVar9 = uVar17 >> 0x18;\n          uVar12 = uVar17 >> 0x10 & 0xff;\n          uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12];\n          uVar10 = uVar23 >> 8 & 0xff;\n          uVar20 = uVar23 >> 0x10 & 0xff;\n          uVar15 = S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10];\n          uVar4 = S5[uVar18];\n          (psVar25->des).ek[8] =\n               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]\n          ;\n          uVar18 = S7[uVar16];\n          uVar6 = S7[uVar23 >> 0x18];\n          (psVar25->des).ek[9] =\n               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18];\n          (psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20];\n          uVar3 = S5[uVar12];\n          uVar26 = S8[uVar21];\n          (psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10];\n          uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23;\n          uVar12 = uVar23 & 0xff;\n          uVar6 = S7[uVar23 >> 0x10 & 0xff];\n          bVar11 = (byte)(uVar23 >> 8);\n          uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6;\n          uVar20 = uVar18 & 0xff;\n          uVar9 = uVar18 >> 8 & 0xff;\n          uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff];\n          uVar4 = S7[uVar20];\n          uVar10 = S6[uVar26 >> 0x10 & 0xff];\n          uVar16 = uVar26 >> 0x18;\n          uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10;\n          uVar7 = (ulong)uVar15;\n          uVar5 = S5[uVar12];\n          puVar1 = (psVar25->des).ek;\n          uVar3 = S6[uVar26 & 0xff];\n          uVar9 = S8[uVar9];\n          (psVar25->des).ek[0xd] =\n               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff];\n          uVar12 = S7[uVar12];\n          uVar8 = S7[uVar16];\n          uVar17 = uVar15 >> 0x10 & 0xff;\n          uVar13 = S8[bVar11];\n          uVar14 = S6[(byte)uVar15];\n          (psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10;\n          (psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17];\n          (psVar25->des).ek[0xf] =\n               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17];\n          psVar25 = (symmetric_key *)(puVar1 + 0x10);\n        }" { (expression_statement "uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8;" (assignment_expression "uVar15 = uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8" identifier = (binary_expression "uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23 ^ uVar8" (binary_expression "uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18] ^\n                            uVar23" (binary_expression "uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff] ^ S7[uVar7 >> 0x18]" (binary_expression "uVar14 ^ S5[uVar7 >> 0x10 & 0xff] ^ S8[uVar7 >> 8 & 0xff]" (binary_expression "uVar14 ^ S5[uVar7 >> 0x10 & 0xff]" identifier ^ (subscript_expression "S5[uVar7 >> 0x10 & 0xff]" identifier [ (binary_expression "uVar7 >> 0x10 & 0xff" (binary_expression "uVar7 >> 0x10" identifier >> number_literal) & number_literal) ])) ^ (subscript_expression "S8[uVar7 >> 8 & 0xff]" identifier [ (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal) ])) ^ (subscript_expression "S7[uVar7 >> 0x18]" identifier [ (binary_expression "uVar7 >> 0x18" identifier >> number_literal) ])) ^ identifier) ^ identifier)) ;) (expression_statement "uVar9 = uVar15 >> 0x10 & 0xff;" (assignment_expression "uVar9 = uVar15 >> 0x10 & 0xff" identifier = (binary_expression "uVar15 >> 0x10 & 0xff" (binary_expression "uVar15 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar20 = uVar15 >> 0x18;" (assignment_expression "uVar20 = uVar15 >> 0x18" identifier = (binary_expression "uVar15 >> 0x18" identifier >> number_literal)) ;) (expression_statement "uVar24 = uVar15 & 0xff;" (assignment_expression "uVar24 = uVar15 & 0xff" identifier = (binary_expression "uVar15 & 0xff" identifier & number_literal)) ;) (expression_statement "uVar23 = S7[uVar9];" (assignment_expression "uVar23 = S7[uVar9]" identifier = (subscript_expression "S7[uVar9]" identifier [ identifier ])) ;) (expression_statement "uVar16 = uVar15 >> 8 & 0xff;" (assignment_expression "uVar16 = uVar15 >> 8 & 0xff" identifier = (binary_expression "uVar15 >> 8 & 0xff" (binary_expression "uVar15 >> 8" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23;" (assignment_expression "uVar12 = S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23" identifier = (binary_expression "S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16] ^ uVar23" (binary_expression "S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24] ^ S6[uVar16]" (binary_expression "S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20] ^ S8[uVar24]" (binary_expression "S8[uVar26 >> 8 & 0xff] ^ uVar26 ^ S5[uVar20]" (binary_expression "S8[uVar26 >> 8 & 0xff] ^ uVar26" (subscript_expression "S8[uVar26 >> 8 & 0xff]" identifier [ (binary_expression "uVar26 >> 8 & 0xff" (binary_expression "uVar26 >> 8" identifier >> number_literal) & number_literal) ]) ^ identifier) ^ (subscript_expression "S5[uVar20]" identifier [ identifier ])) ^ (subscript_expression "S8[uVar24]" identifier [ identifier ])) ^ (subscript_expression "S6[uVar16]" identifier [ identifier ])) ^ identifier)) ;) (expression_statement "uVar10 = uVar12 >> 8 & 0xff;" (assignment_expression "uVar10 = uVar12 >> 8 & 0xff" identifier = (binary_expression "uVar12 >> 8 & 0xff" (binary_expression "uVar12 >> 8" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar21 = uVar12 >> 0x10 & 0xff;" (assignment_expression "uVar21 = uVar12 >> 0x10 & 0xff" identifier = (binary_expression "uVar12 >> 0x10 & 0xff" (binary_expression "uVar12 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar4 = S6[uVar10];" (assignment_expression "uVar4 = S6[uVar10]" identifier = (subscript_expression "S6[uVar10]" identifier [ identifier ])) ;) (expression_statement "uVar13 = uVar12 >> 0x18;" (assignment_expression "uVar13 = uVar12 >> 0x18" identifier = (binary_expression "uVar12 >> 0x18" identifier >> number_literal)) ;) (expression_statement "uVar6 = S7[uVar21];" (assignment_expression "uVar6 = S7[uVar21]" identifier = (subscript_expression "S7[uVar21]" identifier [ identifier ])) ;) (expression_statement "uVar10 = S8[uVar10];" (assignment_expression "uVar10 = S8[uVar10]" identifier = (subscript_expression "S8[uVar10]" identifier [ identifier ])) ;) (expression_statement "bStack_c8 = (byte)uVar12;" (assignment_expression "bStack_c8 = (byte)uVar12" identifier = (cast_expression "(byte)uVar12" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (expression_statement "uVar22 = (ulong)bStack_c8;" (assignment_expression "uVar22 = (ulong)bStack_c8" identifier = (cast_expression "(ulong)bStack_c8" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6;" (assignment_expression "uVar5 = (uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6" identifier = (binary_expression "(uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4 ^ uVar6" (binary_expression "(uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13] ^ uVar4" (binary_expression "(uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[uVar13]" (binary_expression "(uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff] ^ S5[uVar22]" (binary_expression "(uint)uVar7 ^ S5[uVar26 >> 0x10 & 0xff]" (cast_expression "(uint)uVar7" ( (type_descriptor "uint" type_identifier) ) identifier) ^ (subscript_expression "S5[uVar26 >> 0x10 & 0xff]" identifier [ (binary_expression "uVar26 >> 0x10 & 0xff" (binary_expression "uVar26 >> 0x10" identifier >> number_literal) & number_literal) ])) ^ (subscript_expression "S5[uVar22]" identifier [ identifier ])) ^ (subscript_expression "S8[uVar13]" identifier [ identifier ])) ^ identifier) ^ identifier)) ;) (expression_statement "uVar26 = S5[uVar5 >> 8 & 0xff];" (assignment_expression "uVar26 = S5[uVar5 >> 8 & 0xff]" identifier = (subscript_expression "S5[uVar5 >> 8 & 0xff]" identifier [ (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal) ])) ;) (expression_statement "uVar17 = uVar5 >> 0x10 & 0xff;" (assignment_expression "uVar17 = uVar5 >> 0x10 & 0xff" identifier = (binary_expression "uVar5 >> 0x10 & 0xff" (binary_expression "uVar5 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3;" (assignment_expression "uVar3 = S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3" identifier = (binary_expression "S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18 ^ uVar3" (binary_expression "S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17] ^ uVar18" (binary_expression "S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26 ^ S6[uVar17]" (binary_expression "S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18] ^ uVar26" (binary_expression "S7[uVar5 & 0xff] ^ S8[uVar5 >> 0x18]" (subscript_expression "S7[uVar5 & 0xff]" identifier [ (binary_expression "uVar5 & 0xff" identifier & number_literal) ]) ^ (subscript_expression "S8[uVar5 >> 0x18]" identifier [ (binary_expression "uVar5 >> 0x18" identifier >> number_literal) ])) ^ identifier) ^ (subscript_expression "S6[uVar17]" identifier [ identifier ])) ^ identifier) ^ identifier)) ;) (expression_statement "(psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17];" (assignment_expression "(psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17]" (subscript_expression "(psVar25->des).ek[0]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18] ^ S6[uVar17]" (binary_expression "S7[uVar22] ^ S5[uVar16] ^ uVar10 ^ S5[uVar5 >> 0x18]" (binary_expression "S7[uVar22] ^ S5[uVar16] ^ uVar10" (binary_expression "S7[uVar22] ^ S5[uVar16]" (subscript_expression "S7[uVar22]" identifier [ identifier ]) ^ (subscript_expression "S5[uVar16]" identifier [ identifier ])) ^ identifier) ^ (subscript_expression "S5[uVar5 >> 0x18]" identifier [ (binary_expression "uVar5 >> 0x18" identifier >> number_literal) ])) ^ (subscript_expression "S6[uVar17]" identifier [ identifier ]))) ;) (expression_statement "(psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26;" (assignment_expression "(psVar25->des).ek[1] = S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26" (subscript_expression "(psVar25->des).ek[1]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff] ^ uVar26" (binary_expression "S8[uVar13] ^ uVar4 ^ uVar6 ^ S6[uVar5 & 0xff]" (binary_expression "S8[uVar13] ^ uVar4 ^ uVar6" (binary_expression "S8[uVar13] ^ uVar4" (subscript_expression "S8[uVar13]" identifier [ identifier ]) ^ identifier) ^ identifier) ^ (subscript_expression "S6[uVar5 & 0xff]" identifier [ (binary_expression "uVar5 & 0xff" identifier & number_literal) ])) ^ identifier)) ;) (expression_statement "uVar26 = S8[uVar16];" (assignment_expression "uVar26 = S8[uVar16]" identifier = (subscript_expression "S8[uVar16]" identifier [ identifier ])) ;) (expression_statement "(psVar25->des).ek[2] =\n               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff];" (assignment_expression "(psVar25->des).ek[2] =\n               S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff]" (subscript_expression "(psVar25->des).ek[2]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17] ^ S6[uVar3 >> 0x10 & 0xff]" (binary_expression "S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26 ^ S7[uVar17]" (binary_expression "S5[uVar3 >> 0x18] ^ S7[uVar24] ^ uVar26" (binary_expression "S5[uVar3 >> 0x18] ^ S7[uVar24]" (subscript_expression "S5[uVar3 >> 0x18]" identifier [ (binary_expression "uVar3 >> 0x18" identifier >> number_literal) ]) ^ (subscript_expression "S7[uVar24]" identifier [ identifier ])) ^ identifier) ^ (subscript_expression "S7[uVar17]" identifier [ identifier ])) ^ (subscript_expression "S6[uVar3 >> 0x10 & 0xff]" identifier [ (binary_expression "uVar3 >> 0x10 & 0xff" (binary_expression "uVar3 >> 0x10" identifier >> number_literal) & number_literal) ]))) ;) (expression_statement "uVar18 = S6[uVar22];" (assignment_expression "uVar18 = S6[uVar22]" identifier = (subscript_expression "S6[uVar22]" identifier [ identifier ])) ;) (expression_statement "uVar4 = S7[uVar13];" (assignment_expression "uVar4 = S7[uVar13]" identifier = (subscript_expression "S7[uVar13]" identifier [ identifier ])) ;) (expression_statement "(psVar25->des).ek[3] =\n               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff];" (assignment_expression "(psVar25->des).ek[3] =\n               uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff]" (subscript_expression "(psVar25->des).ek[3]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18] ^ S5[uVar3 >> 8 & 0xff]" (binary_expression "uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff] ^ S8[uVar3 >> 0x18]" (binary_expression "uVar23 ^ S8[uVar20] ^ S6[uVar3 & 0xff]" (binary_expression "uVar23 ^ S8[uVar20]" identifier ^ (subscript_expression "S8[uVar20]" identifier [ identifier ])) ^ (subscript_expression "S6[uVar3 & 0xff]" identifier [ (binary_expression "uVar3 & 0xff" identifier & number_literal) ])) ^ (subscript_expression "S8[uVar3 >> 0x18]" identifier [ (binary_expression "uVar3 >> 0x18" identifier >> number_literal) ])) ^ (subscript_expression "S5[uVar3 >> 8 & 0xff]" identifier [ (binary_expression "uVar3 >> 8 & 0xff" (binary_expression "uVar3 >> 8" identifier >> number_literal) & number_literal) ]))) ;) (expression_statement "uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5;" (assignment_expression "uVar5 = uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5" identifier = (binary_expression "uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21] ^ uVar5" (binary_expression "uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10 ^ S5[uVar21]" (binary_expression "uVar18 ^ uVar4 ^ S7[uVar20] ^ uVar10" (binary_expression "uVar18 ^ uVar4 ^ S7[uVar20]" (binary_expression "uVar18 ^ uVar4" identifier ^ identifier) ^ (subscript_expression "S7[uVar20]" identifier [ identifier ])) ^ identifier) ^ (subscript_expression "S5[uVar21]" identifier [ identifier ])) ^ identifier)) ;) (expression_statement "uVar17 = uVar5 & 0xff;" (assignment_expression "uVar17 = uVar5 & 0xff" identifier = (binary_expression "uVar5 & 0xff" identifier & number_literal)) ;) (expression_statement "uVar18 = uVar5 >> 0x10 & 0xff;" (assignment_expression "uVar18 = uVar5 >> 0x10 & 0xff" identifier = (binary_expression "uVar5 >> 0x10 & 0xff" (binary_expression "uVar5 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar19 = S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff];" (assignment_expression "uVar19 = S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff]" identifier = (binary_expression "S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17] ^ S6[uVar5 >> 8 & 0xff]" (binary_expression "S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18] ^ S8[uVar17]" (binary_expression "S7[uVar18] ^\n                   uVar26 ^ uVar15 ^ S5[uVar5 >> 0x18]" (binary_expression "S7[uVar18] ^\n                   uVar26 ^ uVar15" (binary_expression "S7[uVar18] ^\n                   uVar26" (subscript_expression "S7[uVar18]" identifier [ identifier ]) ^ identifier) ^ identifier) ^ (subscript_expression "S5[uVar5 >> 0x18]" identifier [ (binary_expression "uVar5 >> 0x18" identifier >> number_literal) ])) ^ (subscript_expression "S8[uVar17]" identifier [ identifier ])) ^ (subscript_expression "S6[uVar5 >> 8 & 0xff]" identifier [ (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal) ]))) ;) (expression_statement "uVar20 = uVar19 & 0xff;" (assignment_expression "uVar20 = uVar19 & 0xff" identifier = (binary_expression "uVar19 & 0xff" identifier & number_literal)) ;) (expression_statement "uVar23 = S6[uVar19 >> 8 & 0xff];" (assignment_expression "uVar23 = S6[uVar19 >> 8 & 0xff]" identifier = (subscript_expression "S6[uVar19 >> 8 & 0xff]" identifier [ (binary_expression "uVar19 >> 8 & 0xff" (binary_expression "uVar19 >> 8" identifier >> number_literal) & number_literal) ])) ;) (expression_statement "uVar6 = uVar19 >> 0x10 & 0xff;" (assignment_expression "uVar6 = uVar19 >> 0x10 & 0xff" identifier = (binary_expression "uVar19 >> 0x10 & 0xff" (binary_expression "uVar19 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6];" (assignment_expression "uVar9 = uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6]" identifier = (binary_expression "uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23 ^ S7[uVar6]" (binary_expression "uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18] ^ uVar23" (binary_expression "uVar12 ^ S5[uVar9] ^ S5[uVar20] ^ S8[uVar19 >> 0x18]" (binary_expression "uVar12 ^ S5[uVar9] ^ S5[uVar20]" (binary_expression "uVar12 ^ S5[uVar9]" identifier ^ (subscript_expression "S5[uVar9]" identifier [ identifier ])) ^ (subscript_expression "S5[uVar20]" identifier [ identifier ])) ^ (subscript_expression "S8[uVar19 >> 0x18]" identifier [ (binary_expression "uVar19 >> 0x18" identifier >> number_literal) ])) ^ identifier) ^ (subscript_expression "S7[uVar6]" identifier [ identifier ]))) ;) (expression_statement "uVar26 = uVar9 >> 0x18;" (assignment_expression "uVar26 = uVar9 >> 0x18" identifier = (binary_expression "uVar9 >> 0x18" identifier >> number_literal)) ;) (expression_statement "uVar10 = uVar9 >> 0x10 & 0xff;" (assignment_expression "uVar10 = uVar9 >> 0x10 & 0xff" identifier = (binary_expression "uVar9 >> 0x10 & 0xff" (binary_expression "uVar9 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar15 = uVar9 & 0xff;" (assignment_expression "uVar15 = uVar9 & 0xff" identifier = (binary_expression "uVar9 & 0xff" identifier & number_literal)) ;) (expression_statement "uVar12 = uVar9 >> 8 & 0xff;" (assignment_expression "uVar12 = uVar9 >> 8 & 0xff" identifier = (binary_expression "uVar9 >> 8 & 0xff" (binary_expression "uVar9 >> 8" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10];" (assignment_expression "uVar4 = uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10]" identifier = (binary_expression "uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12] ^ S6[uVar10]" (binary_expression "uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26] ^ S5[uVar12]" (binary_expression "uVar3 ^ S6[uVar24] ^ S7[uVar15] ^ S8[uVar26]" (binary_expression "uVar3 ^ S6[uVar24] ^ S7[uVar15]" (binary_expression "uVar3 ^ S6[uVar24]" identifier ^ (subscript_expression "S6[uVar24]" identifier [ identifier ])) ^ (subscript_expression "S7[uVar15]" identifier [ identifier ])) ^ (subscript_expression "S8[uVar26]" identifier [ identifier ])) ^ (subscript_expression "S5[uVar12]" identifier [ identifier ])) ^ (subscript_expression "S6[uVar10]" identifier [ identifier ]))) ;) (expression_statement "uVar3 = S7[uVar4 >> 0x18];" (assignment_expression "uVar3 = S7[uVar4 >> 0x18]" identifier = (subscript_expression "S7[uVar4 >> 0x18]" identifier [ (binary_expression "uVar4 >> 0x18" identifier >> number_literal) ])) ;) (expression_statement "uVar13 = uVar4 >> 8 & 0xff;" (assignment_expression "uVar13 = uVar4 >> 8 & 0xff" identifier = (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar16 = uVar4 >> 0x10 & 0xff;" (assignment_expression "uVar16 = uVar4 >> 0x10 & 0xff" identifier = (binary_expression "uVar4 >> 0x10 & 0xff" (binary_expression "uVar4 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "(psVar25->des).ek[4] =\n               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16];" (assignment_expression "(psVar25->des).ek[4] =\n               S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16]" (subscript_expression "(psVar25->des).ek[4]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3 ^ S8[uVar16]" (binary_expression "S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26] ^ uVar3" (binary_expression "S6[uVar5 >> 8 & 0xff] ^ S5[uVar17] ^ S5[uVar26]" (binary_expression "S6[uVar5 >> 8 & 0xff] ^ S5[uVar17]" (subscript_expression "S6[uVar5 >> 8 & 0xff]" identifier [ (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal) ]) ^ (subscript_expression "S5[uVar17]" identifier [ identifier ])) ^ (subscript_expression "S5[uVar26]" identifier [ identifier ])) ^ identifier) ^ (subscript_expression "S8[uVar16]" identifier [ identifier ]))) ;) (expression_statement "(psVar25->des).ek[5] =\n               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16];" (assignment_expression "(psVar25->des).ek[5] =\n               S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16]" (subscript_expression "(psVar25->des).ek[5]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13] ^ S6[uVar16]" (binary_expression "S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff] ^ S7[uVar13]" (binary_expression "S5[uVar18] ^ S6[uVar5 >> 0x18] ^ S8[uVar4 & 0xff]" (binary_expression "S5[uVar18] ^ S6[uVar5 >> 0x18]" (subscript_expression "S5[uVar18]" identifier [ identifier ]) ^ (subscript_expression "S6[uVar5 >> 0x18]" identifier [ (binary_expression "uVar5 >> 0x18" identifier >> number_literal) ])) ^ (subscript_expression "S8[uVar4 & 0xff]" identifier [ (binary_expression "uVar4 & 0xff" identifier & number_literal) ])) ^ (subscript_expression "S7[uVar13]" identifier [ identifier ])) ^ (subscript_expression "S6[uVar16]" identifier [ identifier ]))) ;) (expression_statement "uVar26 = S7[uVar26];" (assignment_expression "uVar26 = S7[uVar26]" identifier = (subscript_expression "S7[uVar26]" identifier [ identifier ])) ;) (expression_statement "uVar18 = S6[uVar4 & 0xff];" (assignment_expression "uVar18 = S6[uVar4 & 0xff]" identifier = (subscript_expression "S6[uVar4 & 0xff]" identifier [ (binary_expression "uVar4 & 0xff" identifier & number_literal) ])) ;) (expression_statement "(psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10];" (assignment_expression "(psVar25->des).ek[6] = S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10]" (subscript_expression "(psVar25->des).ek[6]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26 ^ S8[uVar10]" (binary_expression "S5[uVar20] ^ S7[uVar17] ^ uVar23 ^ uVar26" (binary_expression "S5[uVar20] ^ S7[uVar17] ^ uVar23" (binary_expression "S5[uVar20] ^ S7[uVar17]" (subscript_expression "S5[uVar20]" identifier [ identifier ]) ^ (subscript_expression "S7[uVar17]" identifier [ identifier ])) ^ identifier) ^ identifier) ^ (subscript_expression "S8[uVar10]" identifier [ identifier ]))) ;) (expression_statement "(psVar25->des).ek[7] =\n               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12];" (assignment_expression "(psVar25->des).ek[7] =\n               S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12]" (subscript_expression "(psVar25->des).ek[7]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15] ^ S7[uVar12]" (binary_expression "S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6] ^ S8[uVar15]" (binary_expression "S6[uVar19 >> 0x18] ^ S8[uVar20] ^ S5[uVar6]" (binary_expression "S6[uVar19 >> 0x18] ^ S8[uVar20]" (subscript_expression "S6[uVar19 >> 0x18]" identifier [ (binary_expression "uVar19 >> 0x18" identifier >> number_literal) ]) ^ (subscript_expression "S8[uVar20]" identifier [ identifier ])) ^ (subscript_expression "S5[uVar6]" identifier [ identifier ])) ^ (subscript_expression "S8[uVar15]" identifier [ identifier ])) ^ (subscript_expression "S7[uVar12]" identifier [ identifier ]))) ;) (expression_statement "uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16];" (assignment_expression "uVar24 = S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16]" identifier = (binary_expression "S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18 ^ S5[uVar16]" (binary_expression "S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3 ^ uVar18" (binary_expression "S8[uVar13] ^ uVar26 ^ uVar5 ^ uVar3" (binary_expression "S8[uVar13] ^ uVar26 ^ uVar5" (binary_expression "S8[uVar13] ^ uVar26" (subscript_expression "S8[uVar13]" identifier [ identifier ]) ^ identifier) ^ identifier) ^ identifier) ^ identifier) ^ (subscript_expression "S5[uVar16]" identifier [ identifier ]))) ;) (expression_statement "uVar5 = uVar24 >> 0x18;" (assignment_expression "uVar5 = uVar24 >> 0x18" identifier = (binary_expression "uVar24 >> 0x18" identifier >> number_literal)) ;) (expression_statement "uVar16 = uVar24 >> 8 & 0xff;" (assignment_expression "uVar16 = uVar24 >> 8 & 0xff" identifier = (binary_expression "uVar24 >> 8 & 0xff" (binary_expression "uVar24 >> 8" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar13 = uVar24 & 0xff;" (assignment_expression "uVar13 = uVar24 & 0xff" identifier = (binary_expression "uVar24 & 0xff" identifier & number_literal)) ;) (expression_statement "uVar18 = uVar24 >> 0x10 & 0xff;" (assignment_expression "uVar18 = uVar24 >> 0x10 & 0xff" identifier = (binary_expression "uVar24 >> 0x10 & 0xff" (binary_expression "uVar24 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16];" (assignment_expression "uVar17 = S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16]" identifier = (binary_expression "S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13] ^ S6[uVar16]" (binary_expression "S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5] ^ S8[uVar13]" (binary_expression "S7[uVar18] ^ uVar9 ^ S8[uVar12] ^ S5[uVar5]" (binary_expression "S7[uVar18] ^ uVar9 ^ S8[uVar12]" (binary_expression "S7[uVar18] ^ uVar9" (subscript_expression "S7[uVar18]" identifier [ identifier ]) ^ identifier) ^ (subscript_expression "S8[uVar12]" identifier [ identifier ])) ^ (subscript_expression "S5[uVar5]" identifier [ identifier ])) ^ (subscript_expression "S8[uVar13]" identifier [ identifier ])) ^ (subscript_expression "S6[uVar16]" identifier [ identifier ]))) ;) (expression_statement "uVar21 = uVar17 >> 8 & 0xff;" (assignment_expression "uVar21 = uVar17 >> 8 & 0xff" identifier = (binary_expression "uVar17 >> 8 & 0xff" (binary_expression "uVar17 >> 8" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar3 = S5[uVar17 & 0xff];" (assignment_expression "uVar3 = S5[uVar17 & 0xff]" identifier = (subscript_expression "S5[uVar17 & 0xff]" identifier [ (binary_expression "uVar17 & 0xff" identifier & number_literal) ])) ;) (expression_statement "uVar26 = S6[uVar21];" (assignment_expression "uVar26 = S6[uVar21]" identifier = (subscript_expression "S6[uVar21]" identifier [ identifier ])) ;) (expression_statement "uVar9 = uVar17 >> 0x18;" (assignment_expression "uVar9 = uVar17 >> 0x18" identifier = (binary_expression "uVar17 >> 0x18" identifier >> number_literal)) ;) (expression_statement "uVar12 = uVar17 >> 0x10 & 0xff;" (assignment_expression "uVar12 = uVar17 >> 0x10 & 0xff" identifier = (binary_expression "uVar17 >> 0x10 & 0xff" (binary_expression "uVar17 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12];" (assignment_expression "uVar23 = uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12]" identifier = (binary_expression "uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26 ^ S7[uVar12]" (binary_expression "uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9] ^ uVar26" (binary_expression "uVar4 ^ S5[uVar10] ^ uVar3 ^ S8[uVar9]" (binary_expression "uVar4 ^ S5[uVar10] ^ uVar3" (binary_expression "uVar4 ^ S5[uVar10]" identifier ^ (subscript_expression "S5[uVar10]" identifier [ identifier ])) ^ identifier) ^ (subscript_expression "S8[uVar9]" identifier [ identifier ])) ^ identifier) ^ (subscript_expression "S7[uVar12]" identifier [ identifier ]))) ;) (expression_statement "uVar10 = uVar23 >> 8 & 0xff;" (assignment_expression "uVar10 = uVar23 >> 8 & 0xff" identifier = (binary_expression "uVar23 >> 8 & 0xff" (binary_expression "uVar23 >> 8" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar20 = uVar23 >> 0x10 & 0xff;" (assignment_expression "uVar20 = uVar23 >> 0x10 & 0xff" identifier = (binary_expression "uVar23 >> 0x10 & 0xff" (binary_expression "uVar23 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar15 = S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10];" (assignment_expression "uVar15 = S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10]" identifier = (binary_expression "S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18] ^ S5[uVar10]" (binary_expression "S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff] ^ S8[uVar23 >> 0x18]" (binary_expression "S6[uVar20] ^\n                   uVar19 ^ S6[uVar15] ^ S7[uVar23 & 0xff]" (binary_expression "S6[uVar20] ^\n                   uVar19 ^ S6[uVar15]" (binary_expression "S6[uVar20] ^\n                   uVar19" (subscript_expression "S6[uVar20]" identifier [ identifier ]) ^ identifier) ^ (subscript_expression "S6[uVar15]" identifier [ identifier ])) ^ (subscript_expression "S7[uVar23 & 0xff]" identifier [ (binary_expression "uVar23 & 0xff" identifier & number_literal) ])) ^ (subscript_expression "S8[uVar23 >> 0x18]" identifier [ (binary_expression "uVar23 >> 0x18" identifier >> number_literal) ])) ^ (subscript_expression "S5[uVar10]" identifier [ identifier ]))) ;) (expression_statement "uVar4 = S5[uVar18];" (assignment_expression "uVar4 = S5[uVar18]" identifier = (subscript_expression "S5[uVar18]" identifier [ identifier ])) ;) (expression_statement "(psVar25->des).ek[8] =\n               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]\n          ;" (assignment_expression "(psVar25->des).ek[8] =\n               S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]" (subscript_expression "(psVar25->des).ek[8]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18] ^ S8[uVar15 >> 0x10 & 0xff]" (binary_expression "S5[uVar20] ^ S6[uVar16] ^ S5[uVar13] ^ S7[uVar15 >> 0x18]" (binary_expression "S5[uVar20] ^ S6[uVar16] ^ S5[uVar13]" (binary_expression "S5[uVar20] ^ S6[uVar16]" (subscript_expression "S5[uVar20]" identifier [ identifier ]) ^ (subscript_expression "S6[uVar16]" identifier [ identifier ])) ^ (subscript_expression "S5[uVar13]" identifier [ identifier ])) ^ (subscript_expression "S7[uVar15 >> 0x18]" identifier [ (binary_expression "uVar15 >> 0x18" identifier >> number_literal) ])) ^ (subscript_expression "S8[uVar15 >> 0x10 & 0xff]" identifier [ (binary_expression "uVar15 >> 0x10 & 0xff" (binary_expression "uVar15 >> 0x10" identifier >> number_literal) & number_literal) ]))) ;) (expression_statement "uVar18 = S7[uVar16];" (assignment_expression "uVar18 = S7[uVar16]" identifier = (subscript_expression "S7[uVar16]" identifier [ identifier ])) ;) (expression_statement "uVar6 = S7[uVar23 >> 0x18];" (assignment_expression "uVar6 = S7[uVar23 >> 0x18]" identifier = (subscript_expression "S7[uVar23 >> 0x18]" identifier [ (binary_expression "uVar23 >> 0x18" identifier >> number_literal) ])) ;) (expression_statement "(psVar25->des).ek[9] =\n               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18];" (assignment_expression "(psVar25->des).ek[9] =\n               S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18]" (subscript_expression "(psVar25->des).ek[9]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff] ^ S6[uVar15 >> 0x18]" (binary_expression "S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4 ^ S8[uVar15 & 0xff]" (binary_expression "S7[uVar15 >> 8 & 0xff] ^ S6[uVar5] ^ uVar4" (binary_expression "S7[uVar15 >> 8 & 0xff] ^ S6[uVar5]" (subscript_expression "S7[uVar15 >> 8 & 0xff]" identifier [ (binary_expression "uVar15 >> 8 & 0xff" (binary_expression "uVar15 >> 8" identifier >> number_literal) & number_literal) ]) ^ (subscript_expression "S6[uVar5]" identifier [ identifier ])) ^ identifier) ^ (subscript_expression "S8[uVar15 & 0xff]" identifier [ (binary_expression "uVar15 & 0xff" identifier & number_literal) ])) ^ (subscript_expression "S6[uVar15 >> 0x18]" identifier [ (binary_expression "uVar15 >> 0x18" identifier >> number_literal) ]))) ;) (expression_statement "(psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20];" (assignment_expression "(psVar25->des).ek[10] = uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20]" (subscript_expression "(psVar25->des).ek[10]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "uVar3 ^ uVar18 ^ uVar26 ^ uVar6 ^ S8[uVar20]" (binary_expression "uVar3 ^ uVar18 ^ uVar26 ^ uVar6" (binary_expression "uVar3 ^ uVar18 ^ uVar26" (binary_expression "uVar3 ^ uVar18" identifier ^ identifier) ^ identifier) ^ identifier) ^ (subscript_expression "S8[uVar20]" identifier [ identifier ]))) ;) (expression_statement "uVar3 = S5[uVar12];" (assignment_expression "uVar3 = S5[uVar12]" identifier = (subscript_expression "S5[uVar12]" identifier [ identifier ])) ;) (expression_statement "uVar26 = S8[uVar21];" (assignment_expression "uVar26 = S8[uVar21]" identifier = (subscript_expression "S8[uVar21]" identifier [ identifier ])) ;) (expression_statement "(psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10];" (assignment_expression "(psVar25->des).ek[0xb] = uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10]" (subscript_expression "(psVar25->des).ek[0xb]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff] ^ S7[uVar10]" (binary_expression "uVar3 ^ uVar26 ^ S6[uVar9] ^ S8[uVar23 & 0xff]" (binary_expression "uVar3 ^ uVar26 ^ S6[uVar9]" (binary_expression "uVar3 ^ uVar26" identifier ^ identifier) ^ (subscript_expression "S6[uVar9]" identifier [ identifier ])) ^ (subscript_expression "S8[uVar23 & 0xff]" identifier [ (binary_expression "uVar23 & 0xff" identifier & number_literal) ])) ^ (subscript_expression "S7[uVar10]" identifier [ identifier ]))) ;) (expression_statement "uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23;" (assignment_expression "uVar23 = uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23" identifier = (binary_expression "uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3 ^ uVar23" (binary_expression "uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5] ^ uVar3" (binary_expression "uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9] ^ S7[uVar5]" (binary_expression "uVar26 ^ S6[uVar17 & 0xff] ^ S7[uVar9]" (binary_expression "uVar26 ^ S6[uVar17 & 0xff]" identifier ^ (subscript_expression "S6[uVar17 & 0xff]" identifier [ (binary_expression "uVar17 & 0xff" identifier & number_literal) ])) ^ (subscript_expression "S7[uVar9]" identifier [ identifier ])) ^ (subscript_expression "S7[uVar5]" identifier [ identifier ])) ^ identifier) ^ identifier)) ;) (expression_statement "uVar12 = uVar23 & 0xff;" (assignment_expression "uVar12 = uVar23 & 0xff" identifier = (binary_expression "uVar23 & 0xff" identifier & number_literal)) ;) (expression_statement "uVar6 = S7[uVar23 >> 0x10 & 0xff];" (assignment_expression "uVar6 = S7[uVar23 >> 0x10 & 0xff]" identifier = (subscript_expression "S7[uVar23 >> 0x10 & 0xff]" identifier [ (binary_expression "uVar23 >> 0x10 & 0xff" (binary_expression "uVar23 >> 0x10" identifier >> number_literal) & number_literal) ])) ;) (expression_statement "bVar11 = (byte)(uVar23 >> 8);" (assignment_expression "bVar11 = (byte)(uVar23 >> 8)" identifier = (call_expression "(byte)(uVar23 >> 8)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar23 >> 8)" ( (binary_expression "uVar23 >> 8" identifier >> number_literal) )))) ;) (expression_statement "uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6;" (assignment_expression "uVar18 = S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6" identifier = (binary_expression "S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11] ^ uVar6" (binary_expression "S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12] ^ S6[bVar11]" (binary_expression "S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18] ^ S8[uVar12]" (binary_expression "S8[uVar16] ^ uVar24 ^ S5[uVar23 >> 0x18]" (binary_expression "S8[uVar16] ^ uVar24" (subscript_expression "S8[uVar16]" identifier [ identifier ]) ^ identifier) ^ (subscript_expression "S5[uVar23 >> 0x18]" identifier [ (binary_expression "uVar23 >> 0x18" identifier >> number_literal) ])) ^ (subscript_expression "S8[uVar12]" identifier [ identifier ])) ^ (subscript_expression "S6[bVar11]" identifier [ identifier ])) ^ identifier)) ;) (expression_statement "uVar20 = uVar18 & 0xff;" (assignment_expression "uVar20 = uVar18 & 0xff" identifier = (binary_expression "uVar18 & 0xff" identifier & number_literal)) ;) (expression_statement "uVar9 = uVar18 >> 8 & 0xff;" (assignment_expression "uVar9 = uVar18 >> 8 & 0xff" identifier = (binary_expression "uVar18 >> 8 & 0xff" (binary_expression "uVar18 >> 8" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff];" (assignment_expression "uVar26 = uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff]" identifier = (binary_expression "uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9] ^\n                   S7[uVar18 >> 0x10 & 0xff]" (binary_expression "uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18] ^ S6[uVar9]" (binary_expression "uVar17 ^ uVar4 ^ S5[uVar20] ^ S8[uVar18 >> 0x18]" (binary_expression "uVar17 ^ uVar4 ^ S5[uVar20]" (binary_expression "uVar17 ^ uVar4" identifier ^ identifier) ^ (subscript_expression "S5[uVar20]" identifier [ identifier ])) ^ (subscript_expression "S8[uVar18 >> 0x18]" identifier [ (binary_expression "uVar18 >> 0x18" identifier >> number_literal) ])) ^ (subscript_expression "S6[uVar9]" identifier [ identifier ])) ^ (subscript_expression "S7[uVar18 >> 0x10 & 0xff]" identifier [ (binary_expression "uVar18 >> 0x10 & 0xff" (binary_expression "uVar18 >> 0x10" identifier >> number_literal) & number_literal) ]))) ;) (expression_statement "uVar4 = S7[uVar20];" (assignment_expression "uVar4 = S7[uVar20]" identifier = (subscript_expression "S7[uVar20]" identifier [ identifier ])) ;) (expression_statement "uVar10 = S6[uVar26 >> 0x10 & 0xff];" (assignment_expression "uVar10 = S6[uVar26 >> 0x10 & 0xff]" identifier = (subscript_expression "S6[uVar26 >> 0x10 & 0xff]" identifier [ (binary_expression "uVar26 >> 0x10 & 0xff" (binary_expression "uVar26 >> 0x10" identifier >> number_literal) & number_literal) ])) ;) (expression_statement "uVar16 = uVar26 >> 0x18;" (assignment_expression "uVar16 = uVar26 >> 0x18" identifier = (binary_expression "uVar26 >> 0x18" identifier >> number_literal)) ;) (expression_statement "uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10;" (assignment_expression "uVar15 = uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10" identifier = (binary_expression "uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff] ^\n                   uVar10" (binary_expression "uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16] ^ S5[uVar26 >> 8 & 0xff]" (binary_expression "uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff] ^ S8[uVar16]" (binary_expression "uVar15 ^ S6[uVar13] ^ S7[uVar26 & 0xff]" (binary_expression "uVar15 ^ S6[uVar13]" identifier ^ (subscript_expression "S6[uVar13]" identifier [ identifier ])) ^ (subscript_expression "S7[uVar26 & 0xff]" identifier [ (binary_expression "uVar26 & 0xff" identifier & number_literal) ])) ^ (subscript_expression "S8[uVar16]" identifier [ identifier ])) ^ (subscript_expression "S5[uVar26 >> 8 & 0xff]" identifier [ (binary_expression "uVar26 >> 8 & 0xff" (binary_expression "uVar26 >> 8" identifier >> number_literal) & number_literal) ])) ^ identifier)) ;) (expression_statement "uVar7 = (ulong)uVar15;" (assignment_expression "uVar7 = (ulong)uVar15" identifier = (cast_expression "(ulong)uVar15" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar5 = S5[uVar12];" (assignment_expression "uVar5 = S5[uVar12]" identifier = (subscript_expression "S5[uVar12]" identifier [ identifier ])) ;) (expression_statement "puVar1 = (psVar25->des).ek;" (assignment_expression "puVar1 = (psVar25->des).ek" identifier = (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "uVar3 = S6[uVar26 & 0xff];" (assignment_expression "uVar3 = S6[uVar26 & 0xff]" identifier = (subscript_expression "S6[uVar26 & 0xff]" identifier [ (binary_expression "uVar26 & 0xff" identifier & number_literal) ])) ;) (expression_statement "uVar9 = S8[uVar9];" (assignment_expression "uVar9 = S8[uVar9]" identifier = (subscript_expression "S8[uVar9]" identifier [ identifier ])) ;) (expression_statement "(psVar25->des).ek[0xd] =\n               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff];" (assignment_expression "(psVar25->des).ek[0xd] =\n               S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff]" (subscript_expression "(psVar25->des).ek[0xd]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3 ^\n               S5[uVar26 >> 8 & 0xff]" (binary_expression "S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff] ^ uVar3" (binary_expression "S8[uVar18 >> 0x18] ^ S6[uVar20] ^ S7[uVar18 >> 0x10 & 0xff]" (binary_expression "S8[uVar18 >> 0x18] ^ S6[uVar20]" (subscript_expression "S8[uVar18 >> 0x18]" identifier [ (binary_expression "uVar18 >> 0x18" identifier >> number_literal) ]) ^ (subscript_expression "S6[uVar20]" identifier [ identifier ])) ^ (subscript_expression "S7[uVar18 >> 0x10 & 0xff]" identifier [ (binary_expression "uVar18 >> 0x10 & 0xff" (binary_expression "uVar18 >> 0x10" identifier >> number_literal) & number_literal) ])) ^ identifier) ^ (subscript_expression "S5[uVar26 >> 8 & 0xff]" identifier [ (binary_expression "uVar26 >> 8 & 0xff" (binary_expression "uVar26 >> 8" identifier >> number_literal) & number_literal) ]))) ;) (expression_statement "uVar12 = S7[uVar12];" (assignment_expression "uVar12 = S7[uVar12]" identifier = (subscript_expression "S7[uVar12]" identifier [ identifier ])) ;) (expression_statement "uVar8 = S7[uVar16];" (assignment_expression "uVar8 = S7[uVar16]" identifier = (subscript_expression "S7[uVar16]" identifier [ identifier ])) ;) (expression_statement "uVar17 = uVar15 >> 0x10 & 0xff;" (assignment_expression "uVar17 = uVar15 >> 0x10 & 0xff" identifier = (binary_expression "uVar15 >> 0x10 & 0xff" (binary_expression "uVar15 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar13 = S8[bVar11];" (assignment_expression "uVar13 = S8[bVar11]" identifier = (subscript_expression "S8[bVar11]" identifier [ identifier ])) ;) (expression_statement "uVar14 = S6[(byte)uVar15];" (assignment_expression "uVar14 = S6[(byte)uVar15]" identifier = (subscript_expression "S6[(byte)uVar15]" identifier [ (cast_expression "(byte)uVar15" ( (type_descriptor "byte" type_identifier) ) identifier) ])) ;) (expression_statement "(psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10;" (assignment_expression "(psVar25->des).ek[0xc] = uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10" (subscript_expression "(psVar25->des).ek[0xc]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16] ^ uVar10" (binary_expression "uVar4 ^ uVar5 ^ uVar9 ^ S5[uVar16]" (binary_expression "uVar4 ^ uVar5 ^ uVar9" (binary_expression "uVar4 ^ uVar5" identifier ^ identifier) ^ identifier) ^ (subscript_expression "S5[uVar16]" identifier [ identifier ])) ^ identifier)) ;) (expression_statement "(psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17];" (assignment_expression "(psVar25->des).ek[0xe] = uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17]" (subscript_expression "(psVar25->des).ek[0xe]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18] ^ S6[uVar17]" (binary_expression "uVar12 ^ uVar13 ^ uVar8 ^ S5[uVar15 >> 0x18]" (binary_expression "uVar12 ^ uVar13 ^ uVar8" (binary_expression "uVar12 ^ uVar13" identifier ^ identifier) ^ identifier) ^ (subscript_expression "S5[uVar15 >> 0x18]" identifier [ (binary_expression "uVar15 >> 0x18" identifier >> number_literal) ])) ^ (subscript_expression "S6[uVar17]" identifier [ identifier ]))) ;) (expression_statement "(psVar25->des).ek[0xf] =\n               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17];" (assignment_expression "(psVar25->des).ek[0xf] =\n               S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17]" (subscript_expression "(psVar25->des).ek[0xf]" (field_expression "(psVar25->des).ek" (parenthesized_expression "(psVar25->des)" ( (field_expression "psVar25->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = (binary_expression "S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14 ^ S8[uVar17]" (binary_expression "S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18] ^ uVar14" (binary_expression "S5[(byte)(uVar15 >> 8)] ^ uVar6 ^ S8[uVar23 >> 0x18]" (binary_expression "S5[(byte)(uVar15 >> 8)] ^ uVar6" (subscript_expression "S5[(byte)(uVar15 >> 8)]" identifier [ (call_expression "(byte)(uVar15 >> 8)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar15 >> 8)" ( (binary_expression "uVar15 >> 8" identifier >> number_literal) ))) ]) ^ identifier) ^ (subscript_expression "S8[uVar23 >> 0x18]" identifier [ (binary_expression "uVar23 >> 0x18" identifier >> number_literal) ])) ^ identifier) ^ (subscript_expression "S8[uVar17]" identifier [ identifier ]))) ;) (expression_statement "psVar25 = (symmetric_key *)(puVar1 + 0x10);" (assignment_expression "psVar25 = (symmetric_key *)(puVar1 + 0x10)" identifier = (cast_expression "(symmetric_key *)(puVar1 + 0x10)" ( (type_descriptor "symmetric_key *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x10)" ( (binary_expression "puVar1 + 0x10" identifier + number_literal) )))) ;) }) while (parenthesized_expression "((symmetric_key *)(puVar1 + 0x10) != (symmetric_key *)(skey->des).dk)" ( (binary_expression "(symmetric_key *)(puVar1 + 0x10) != (symmetric_key *)(skey->des).dk" (cast_expression "(symmetric_key *)(puVar1 + 0x10)" ( (type_descriptor "symmetric_key *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x10)" ( (binary_expression "puVar1 + 0x10" identifier + number_literal) ))) != (cast_expression "(symmetric_key *)(skey->des).dk" ( (type_descriptor "symmetric_key *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(skey->des).dk" (parenthesized_expression "(skey->des)" ( (field_expression "skey->des" identifier -> field_identifier) )) . field_identifier))) )) ;) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) (expression_statement "(skey->des).dk[0] = keylen;" (assignment_expression "(skey->des).dk[0] = keylen" (subscript_expression "(skey->des).dk[0]" (field_expression "(skey->des).dk" (parenthesized_expression "(skey->des)" ( (field_expression "skey->des" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) = identifier) ;) })) }) (else_clause "else {\n      iVar2 = 4;\n    }" else (compound_statement "{\n      iVar2 = 4;\n    }" { (expression_statement "iVar2 = 4;" (assignment_expression "iVar2 = 4" identifier = number_literal) ;) }))) (if_statement "if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }" if (parenthesized_expression "(lStack_40 != *(long *)(in_FS_OFFSET + 0x28))" ( (binary_expression "lStack_40 != *(long *)(in_FS_OFFSET + 0x28)" identifier != (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      __stack_chk_fail();\n    }" { comment (expression_statement "__stack_chk_fail();" (call_expression "__stack_chk_fail()" identifier (argument_list "()" ( ))) ;) })) (return_statement "return iVar2;" return identifier ;) })) comment (expression_statement "crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);" (call_expression "crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1)" identifier (argument_list "("skey != NULL","src/ciphers/cast5.c",0x1a1)" ( (string_literal ""skey != NULL"" " string_content ") , (string_literal ""src/ciphers/cast5.c"" " string_content ") , number_literal ))) ;) })))
(translation_unit "undefined8 cast5_setup(long param_1,uint param_2,uint param_3,uint *param_4)\n\n{\n  uint uVar1;\n  uint uVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined8 uVar5;\n  uint uVar6;\n  uint uVar7;\n  ulong uVar8;\n  ulong uVar9;\n  ulong uVar10;\n  ulong uVar11;\n  uint uVar12;\n  uint uVar13;\n  ulong uVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  ulong uVar19;\n  ulong uVar20;\n  uint uVar21;\n  uint uVar22;\n  ulong uVar23;\n  uint uVar24;\n  uint *puVar25;\n  uint *puVar26;\n  uint uVar27;\n  ulong uVar28;\n  long in_FS_OFFSET;\n  byte bStack_c8;\n  uint uStack_58;\n  uint uStack_54;\n  uint uStack_50;\n  uint uStack_4c;\n  long lStack_40;\n  \n  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (param_1 == 0) {\n                    \n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }\n  if (param_4 != (uint *)0x0) {\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n      __stack_chk_fail();\n    }\n    return uVar5;\n  }\n                    \n  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);\n}\n\n" (function_definition "undefined8 cast5_setup(long param_1,uint param_2,uint param_3,uint *param_4)\n\n{\n  uint uVar1;\n  uint uVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined8 uVar5;\n  uint uVar6;\n  uint uVar7;\n  ulong uVar8;\n  ulong uVar9;\n  ulong uVar10;\n  ulong uVar11;\n  uint uVar12;\n  uint uVar13;\n  ulong uVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  ulong uVar19;\n  ulong uVar20;\n  uint uVar21;\n  uint uVar22;\n  ulong uVar23;\n  uint uVar24;\n  uint *puVar25;\n  uint *puVar26;\n  uint uVar27;\n  ulong uVar28;\n  long in_FS_OFFSET;\n  byte bStack_c8;\n  uint uStack_58;\n  uint uStack_54;\n  uint uStack_50;\n  uint uStack_4c;\n  long lStack_40;\n  \n  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (param_1 == 0) {\n                    \n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }\n  if (param_4 != (uint *)0x0) {\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n      __stack_chk_fail();\n    }\n    return uVar5;\n  }\n                    \n  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);\n}" type_identifier (function_declarator "cast5_setup(long param_1,uint param_2,uint param_3,uint *param_4)" identifier (parameter_list "(long param_1,uint param_2,uint param_3,uint *param_4)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) , (parameter_declaration "uint param_2" type_identifier identifier) , (parameter_declaration "uint param_3" type_identifier identifier) , (parameter_declaration "uint *param_4" type_identifier (pointer_declarator "*param_4" * identifier)) ))) (compound_statement "{\n  uint uVar1;\n  uint uVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined8 uVar5;\n  uint uVar6;\n  uint uVar7;\n  ulong uVar8;\n  ulong uVar9;\n  ulong uVar10;\n  ulong uVar11;\n  uint uVar12;\n  uint uVar13;\n  ulong uVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  ulong uVar19;\n  ulong uVar20;\n  uint uVar21;\n  uint uVar22;\n  ulong uVar23;\n  uint uVar24;\n  uint *puVar25;\n  uint *puVar26;\n  uint uVar27;\n  ulong uVar28;\n  long in_FS_OFFSET;\n  byte bStack_c8;\n  uint uStack_58;\n  uint uStack_54;\n  uint uStack_50;\n  uint uStack_4c;\n  long lStack_40;\n  \n  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (param_1 == 0) {\n                    \n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }\n  if (param_4 != (uint *)0x0) {\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n      __stack_chk_fail();\n    }\n    return uVar5;\n  }\n                    \n  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);\n}" { (declaration "uint uVar1;" type_identifier identifier ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "undefined8 uVar5;" type_identifier identifier ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "ulong uVar8;" type_identifier identifier ;) (declaration "ulong uVar9;" type_identifier identifier ;) (declaration "ulong uVar10;" type_identifier identifier ;) (declaration "ulong uVar11;" type_identifier identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "uint uVar13;" type_identifier identifier ;) (declaration "ulong uVar14;" type_identifier identifier ;) (declaration "ulong uVar15;" type_identifier identifier ;) (declaration "ulong uVar16;" type_identifier identifier ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "ulong uVar19;" type_identifier identifier ;) (declaration "ulong uVar20;" type_identifier identifier ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "ulong uVar23;" type_identifier identifier ;) (declaration "uint uVar24;" type_identifier identifier ;) (declaration "uint *puVar25;" type_identifier (pointer_declarator "*puVar25" * identifier) ;) (declaration "uint *puVar26;" type_identifier (pointer_declarator "*puVar26" * identifier) ;) (declaration "uint uVar27;" type_identifier identifier ;) (declaration "ulong uVar28;" type_identifier identifier ;) (declaration "long in_FS_OFFSET;" (sized_type_specifier "long" long) identifier ;) (declaration "byte bStack_c8;" type_identifier identifier ;) (declaration "uint uStack_58;" type_identifier identifier ;) (declaration "uint uStack_54;" type_identifier identifier ;) (declaration "uint uStack_50;" type_identifier identifier ;) (declaration "uint uStack_4c;" type_identifier identifier ;) (declaration "long lStack_40;" (sized_type_specifier "long" long) identifier ;) (expression_statement "lStack_40 = *(long *)(in_FS_OFFSET + 0x28);" (assignment_expression "lStack_40 = *(long *)(in_FS_OFFSET + 0x28)" identifier = (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (param_1 == 0) {\n                    \n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }" { (expression_statement "crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);" (call_expression "crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0)" identifier (argument_list "("key != NULL","src/ciphers/cast5.c",0x1a0)" ( (string_literal ""key != NULL"" " string_content ") , (string_literal ""src/ciphers/cast5.c"" " string_content ") , number_literal ))) ;) })) (if_statement "if (param_4 != (uint *)0x0) {\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n      __stack_chk_fail();\n    }\n    return uVar5;\n  }" if (parenthesized_expression "(param_4 != (uint *)0x0)" ( (binary_expression "param_4 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n      __stack_chk_fail();\n    }\n    return uVar5;\n  }" { (if_statement "if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }" if (parenthesized_expression "(((param_3 & 0xffffffef) == 0) || (param_3 == 0xc))" ( (binary_expression "((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)" (parenthesized_expression "((param_3 & 0xffffffef) == 0)" ( (binary_expression "(param_3 & 0xffffffef) == 0" (parenthesized_expression "(param_3 & 0xffffffef)" ( (binary_expression "param_3 & 0xffffffef" identifier & number_literal) )) == number_literal) )) || (parenthesized_expression "(param_3 == 0xc)" ( (binary_expression "param_3 == 0xc" identifier == number_literal) ))) )) (compound_statement "{\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }" { (if_statement "if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }" if (parenthesized_expression "(((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc))" ( (binary_expression "((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)" (parenthesized_expression "((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb))" ( (binary_expression "(param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)" (parenthesized_expression "(param_3 != 0xc)" ( (binary_expression "param_3 != 0xc" identifier != number_literal) )) || (parenthesized_expression "(uVar5 = 4, (int)param_2 < 0xb)" ( (comma_expression "uVar5 = 4, (int)param_2 < 0xb" (assignment_expression "uVar5 = 4" identifier = number_literal) , (binary_expression "(int)param_2 < 0xb" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ))) )) && (parenthesized_expression "(uVar5 = 3, param_2 - 5 < 0xc)" ( (comma_expression "uVar5 = 3, param_2 - 5 < 0xc" (assignment_expression "uVar5 = 3" identifier = number_literal) , (binary_expression "param_2 - 5 < 0xc" (binary_expression "param_2 - 5" identifier - number_literal) < number_literal)) ))) )) (compound_statement "{\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }" { (expression_statement "zeromem(&uStack_58,0x10);" (call_expression "zeromem(&uStack_58,0x10)" identifier (argument_list "(&uStack_58,0x10)" ( (pointer_expression "&uStack_58" & identifier) , number_literal ))) ;) (expression_statement "__memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);" (call_expression "__memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10)" identifier (argument_list "(&uStack_58,param_1,(long)(int)param_2,0x10)" ( (pointer_expression "&uStack_58" & identifier) , identifier , (cast_expression "(long)(int)param_2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier)) , number_literal ))) ;) (expression_statement "uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;" (assignment_expression "uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18" identifier = (binary_expression "uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18" (binary_expression "uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8" (binary_expression "uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8" (binary_expression "uStack_50 >> 0x18" identifier >> number_literal) | (binary_expression "(uStack_50 & 0xff0000) >> 8" (parenthesized_expression "(uStack_50 & 0xff0000)" ( (binary_expression "uStack_50 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uStack_50 & 0xff00) << 8" (parenthesized_expression "(uStack_50 & 0xff00)" ( (binary_expression "uStack_50 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uStack_50 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);" (assignment_expression "uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uStack_50 >> 0x18) * 4" (call_expression "(ulong)(uStack_50 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uStack_50 >> 0x18)" ( (binary_expression "uStack_50 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;" (assignment_expression "uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18" identifier = (binary_expression "uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18" (binary_expression "uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8" (binary_expression "uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8" (binary_expression "uStack_54 >> 0x18" identifier >> number_literal) | (binary_expression "(uStack_54 & 0xff0000) >> 8" (parenthesized_expression "(uStack_54 & 0xff0000)" ( (binary_expression "uStack_54 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uStack_54 & 0xff00) << 8" (parenthesized_expression "(uStack_54 & 0xff00)" ( (binary_expression "uStack_54 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uStack_54 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);" (assignment_expression "uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18)" identifier = (call_expression "(ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18)" ( (binary_expression "uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18" (binary_expression "uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8" (binary_expression "uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8" (binary_expression "uStack_4c >> 0x18" identifier >> number_literal) | (binary_expression "(uStack_4c & 0xff0000) >> 8" (parenthesized_expression "(uStack_4c & 0xff0000)" ( (binary_expression "uStack_4c & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uStack_4c & 0xff00) << 8" (parenthesized_expression "(uStack_4c & 0xff00)" ( (binary_expression "uStack_4c & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uStack_4c << 0x18" identifier << number_literal)) )))) ;) (expression_statement "uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uStack_50 & 0xff) * 4" (call_expression "(ulong)(uStack_50 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uStack_50 & 0xff)" ( (binary_expression "uStack_50 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (uVar8 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (uVar8 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(uVar8 & 0xff) * 4" (parenthesized_expression "(uVar8 & 0xff)" ( (binary_expression "uVar8 & 0xff" identifier & number_literal) )) * number_literal)) ))))) ;) (expression_statement "uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;" (assignment_expression "uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18" identifier = (binary_expression "uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18" (binary_expression "uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8" (binary_expression "uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8" (binary_expression "uStack_58 >> 0x18" identifier >> number_literal) | (binary_expression "(uStack_58 & 0xff0000) >> 8" (parenthesized_expression "(uStack_58 & 0xff0000)" ( (binary_expression "uStack_58 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uStack_58 & 0xff00) << 8" (parenthesized_expression "(uStack_58 & 0xff00)" ( (binary_expression "uStack_58 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uStack_58 << 0x18" identifier << number_literal))) ;) (expression_statement "puVar25 = param_4;" (assignment_expression "puVar25 = param_4" identifier = identifier) ;) (do_statement "do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);" do (compound_statement "{\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        }" { (expression_statement "uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;" (assignment_expression "uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18" identifier = (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18" (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24" (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(uVar8 >> 0x10 & 0xff) * 4" (parenthesized_expression "(uVar8 >> 0x10 & 0xff)" ( (binary_expression "uVar8 >> 0x10 & 0xff" (binary_expression "uVar8 >> 0x10" identifier >> number_literal) & number_literal) )) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(uVar8 >> 8 & 0xff) * 4" (parenthesized_expression "(uVar8 >> 8 & 0xff)" ( (binary_expression "uVar8 >> 8 & 0xff" (binary_expression "uVar8 >> 8" identifier >> number_literal) & number_literal) )) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (uVar8 >> 0x18) * 4)" ( (binary_expression "&DAT_00197a20 + (uVar8 >> 0x18) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(uVar8 >> 0x18) * 4" (parenthesized_expression "(uVar8 >> 0x18)" ( (binary_expression "uVar8 >> 0x18" identifier >> number_literal) )) * number_literal)) ))))) ^ identifier) ^ identifier)) ;) (expression_statement "uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar18 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar18 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar18 >> 0x10 & 0xff)" ( (binary_expression "uVar18 >> 0x10 & 0xff" (binary_expression "uVar18 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar15 = (ulong)(uVar18 >> 0x18);" (assignment_expression "uVar15 = (ulong)(uVar18 >> 0x18)" identifier = (call_expression "(ulong)(uVar18 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar18 >> 0x18)" ( (binary_expression "uVar18 >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "uVar20 = (ulong)(uVar18 & 0xff);" (assignment_expression "uVar20 = (ulong)(uVar18 & 0xff)" identifier = (call_expression "(ulong)(uVar18 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar18 & 0xff)" ( (binary_expression "uVar18 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar9 * 4)" ( (binary_expression "&DAT_00197a20 + uVar9 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar14 = (ulong)(uVar18 >> 8 & 0xff);" (assignment_expression "uVar14 = (ulong)(uVar18 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar18 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar18 >> 8 & 0xff)" ( (binary_expression "uVar18 >> 8 & 0xff" (binary_expression "uVar18 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;" (assignment_expression "uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17" identifier = (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27" (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar27 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 8 & 0xff)" ( (binary_expression "uVar27 >> 8 & 0xff" (binary_expression "uVar27 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) )))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar15 * 4)" ( (binary_expression "&DAT_00198220 + uVar15 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar20 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar20 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar20 * 4)" ( (binary_expression "&DAT_00197620 + uVar20 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar20 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar14 * 4)" ( (binary_expression "&DAT_00197e20 + uVar14 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ^ identifier)) ;) (expression_statement "uVar10 = (ulong)(uVar12 >> 8 & 0xff);" (assignment_expression "uVar10 = (ulong)(uVar12 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar12 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 8 & 0xff)" ( (binary_expression "uVar12 >> 8 & 0xff" (binary_expression "uVar12 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);" (assignment_expression "uVar16 = (ulong)(uVar12 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar12 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 0x10 & 0xff)" ( (binary_expression "uVar12 >> 0x10 & 0xff" (binary_expression "uVar12 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);" (assignment_expression "uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar10 * 4)" ( (binary_expression "&DAT_00197e20 + uVar10 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar11 = (ulong)(uVar12 >> 0x18);" (assignment_expression "uVar11 = (ulong)(uVar12 >> 0x18)" identifier = (call_expression "(ulong)(uVar12 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 0x18)" ( (binary_expression "uVar12 >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);" (assignment_expression "uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar16 * 4)" ( (binary_expression "&DAT_00197a20 + uVar16 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);" (assignment_expression "uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197620 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar10 * 4)" ( (binary_expression "&DAT_00197620 + uVar10 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ;) (expression_statement "bStack_c8 = (byte)uVar12;" (assignment_expression "bStack_c8 = (byte)uVar12" identifier = (cast_expression "(byte)uVar12" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (expression_statement "uVar10 = (ulong)bStack_c8;" (assignment_expression "uVar10 = (ulong)bStack_c8" identifier = (cast_expression "(ulong)bStack_c8" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;" (assignment_expression "uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22" identifier = (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22" (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24" (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4)" (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4)" (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" (cast_expression "(uint)uVar8" ( (type_descriptor "uint" type_identifier) ) identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar27 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 0x10 & 0xff)" ( (binary_expression "uVar27 >> 0x10 & 0xff" (binary_expression "uVar27 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar10 * 4)" ( (binary_expression "&DAT_00198220 + uVar10 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar11 * 4)" ( (binary_expression "&DAT_00197620 + uVar11 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) ))))) ^ identifier) ^ identifier)) ;) (expression_statement "uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);" (assignment_expression "uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar6 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar6 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 8 & 0xff)" ( (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);" (assignment_expression "uVar8 = (ulong)(uVar6 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar6 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x10 & 0xff)" ( (binary_expression "uVar6 >> 0x10 & 0xff" (binary_expression "uVar6 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;" (assignment_expression "uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4" identifier = (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4)" (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar6 & 0xff) * 4" (call_expression "(ulong)(uVar6 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) ))) * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar6 >> 0x18) * 4" (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar8 * 4)" ( (binary_expression "&DAT_00197e20 + uVar8 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) ^ identifier) ^ identifier)) ;) (expression_statement "*puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);" (assignment_expression "*puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4)" (pointer_expression "*puVar25" * identifier) = (binary_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13" (binary_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4)" (pointer_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar10 * 4)" ( (binary_expression "&DAT_00197a20 + uVar10 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar14 * 4)" ( (binary_expression "&DAT_00198220 + uVar14 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar6 >> 0x18) * 4" (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar8 * 4)" ( (binary_expression "&DAT_00197e20 + uVar8 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) )))))) ;) (expression_statement "puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;" (assignment_expression "puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27" (subscript_expression "puVar25[1]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24" (pointer_expression "*(uint *)(&DAT_00197620 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar11 * 4)" ( (binary_expression "&DAT_00197620 + uVar11 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) )))) ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar6 & 0xff) * 4" (call_expression "(ulong)(uVar6 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ identifier)) ;) (expression_statement "uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);" (assignment_expression "uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197620 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar14 * 4)" ( (binary_expression "&DAT_00197620 + uVar14 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ;) (expression_statement "puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);" (assignment_expression "puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" (subscript_expression "puVar25[2]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4)" (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar4 >> 0x18) * 4" (call_expression "(ulong)(uVar4 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) ))) * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar20 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar20 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar20 * 4)" ( (binary_expression "&DAT_00197a20 + uVar20 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar20 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar8 * 4)" ( (binary_expression "&DAT_00197a20 + uVar8 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar4 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar4 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar4 >> 0x10 & 0xff)" ( (binary_expression "uVar4 >> 0x10 & 0xff" (binary_expression "uVar4 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) )))))) ;) (expression_statement "uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);" (assignment_expression "uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar10 * 4)" ( (binary_expression "&DAT_00197e20 + uVar10 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);" (assignment_expression "uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar11 * 4)" ( (binary_expression "&DAT_00197a20 + uVar11 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) ))))) ;) (expression_statement "puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);" (assignment_expression "puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" (subscript_expression "puVar25[3]" identifier [ number_literal ]) = (binary_expression "uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar15 * 4)" ( (binary_expression "&DAT_00197620 + uVar15 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar4 & 0xff) * 4" (call_expression "(ulong)(uVar4 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar4 & 0xff)" ( (binary_expression "uVar4 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar4 >> 0x18) * 4" (call_expression "(ulong)(uVar4 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar4 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar4 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar4 >> 8 & 0xff)" ( (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) )))))) ;) (expression_statement "uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;" (assignment_expression "uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6" identifier = (binary_expression "uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6" (binary_expression "uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4)" (binary_expression "uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13" (binary_expression "uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4)" (binary_expression "uVar27 ^ uVar21" identifier ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar15 * 4)" ( (binary_expression "&DAT_00197a20 + uVar15 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar16 * 4)" ( (binary_expression "&DAT_00198220 + uVar16 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ^ identifier)) ;) (expression_statement "uVar23 = (ulong)(uVar6 & 0xff);" (assignment_expression "uVar23 = (ulong)(uVar6 & 0xff)" identifier = (call_expression "(ulong)(uVar6 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);" (assignment_expression "uVar19 = (ulong)(uVar6 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar6 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x10 & 0xff)" ( (binary_expression "uVar6 >> 0x10 & 0xff" (binary_expression "uVar6 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);" (assignment_expression "uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" identifier = (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18" (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24" (pointer_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar19 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar19 * 4)" ( (binary_expression "&DAT_00197a20 + uVar19 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar19 * 4" identifier * number_literal)) )))) ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar6 >> 0x18) * 4" (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar23 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar23 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar23 * 4)" ( (binary_expression "&DAT_00197620 + uVar23 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar23 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar6 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar6 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 8 & 0xff)" ( (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) )))))) ;) (expression_statement "uVar28 = (ulong)(uVar22 & 0xff);" (assignment_expression "uVar28 = (ulong)(uVar22 & 0xff)" identifier = (call_expression "(ulong)(uVar22 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar22 & 0xff)" ( (binary_expression "uVar22 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar22 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar22 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar22 >> 8 & 0xff)" ( (binary_expression "uVar22 >> 8 & 0xff" (binary_expression "uVar22 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);" (assignment_expression "uVar8 = (ulong)(uVar22 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar22 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar22 >> 0x10 & 0xff)" ( (binary_expression "uVar22 >> 0x10 & 0xff" (binary_expression "uVar22 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);" (assignment_expression "uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4)" identifier = (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18" (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar9 * 4)" ( (binary_expression "&DAT_00198220 + uVar9 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar28 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar28 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar28 * 4)" ( (binary_expression "&DAT_00198220 + uVar28 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar28 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar22 >> 0x18) * 4" (call_expression "(ulong)(uVar22 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar22 >> 0x18)" ( (binary_expression "uVar22 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar8 * 4)" ( (binary_expression "&DAT_00197a20 + uVar8 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar21 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar21 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 0x10 & 0xff)" ( (binary_expression "uVar21 >> 0x10 & 0xff" (binary_expression "uVar21 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar16 = (ulong)(uVar21 >> 0x18);" (assignment_expression "uVar16 = (ulong)(uVar21 >> 0x18)" identifier = (call_expression "(ulong)(uVar21 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 0x18)" ( (binary_expression "uVar21 >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "uVar14 = (ulong)(uVar21 & 0xff);" (assignment_expression "uVar14 = (ulong)(uVar21 & 0xff)" identifier = (call_expression "(ulong)(uVar21 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 & 0xff)" ( (binary_expression "uVar21 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar10 = (ulong)(uVar21 >> 8 & 0xff);" (assignment_expression "uVar10 = (ulong)(uVar21 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar21 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 8 & 0xff)" ( (binary_expression "uVar21 >> 8 & 0xff" (binary_expression "uVar21 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);" (assignment_expression "uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4)" identifier = (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4)" (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4)" (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4)" (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4)" (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar20 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar20 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar20 * 4)" ( (binary_expression "&DAT_00197e20 + uVar20 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar20 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar14 * 4)" ( (binary_expression "&DAT_00197a20 + uVar14 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar16 * 4)" ( (binary_expression "&DAT_00197620 + uVar16 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar10 * 4)" ( (binary_expression "&DAT_00198220 + uVar10 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar9 * 4)" ( (binary_expression "&DAT_00197e20 + uVar9 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar27 >> 0x18) * 4" (call_expression "(ulong)(uVar27 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 0x18)" ( (binary_expression "uVar27 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar11 = (ulong)(uVar27 >> 8 & 0xff);" (assignment_expression "uVar11 = (ulong)(uVar27 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar27 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 8 & 0xff)" ( (binary_expression "uVar27 >> 8 & 0xff" (binary_expression "uVar27 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);" (assignment_expression "uVar15 = (ulong)(uVar27 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar27 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 0x10 & 0xff)" ( (binary_expression "uVar27 >> 0x10 & 0xff" (binary_expression "uVar27 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);" (assignment_expression "puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4)" (subscript_expression "puVar25[4]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4)" (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar6 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar6 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 8 & 0xff)" ( (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar23 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar23 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar23 * 4)" ( (binary_expression "&DAT_00198220 + uVar23 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar23 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar16 * 4)" ( (binary_expression "&DAT_00198220 + uVar16 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar15 * 4)" ( (binary_expression "&DAT_00197620 + uVar15 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) )))))) ;) (expression_statement "puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;" (assignment_expression "puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)" (subscript_expression "puVar25[5]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4)" (pointer_expression "*(uint *)(&DAT_00198220 + uVar19 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar19 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar19 * 4)" ( (binary_expression "&DAT_00198220 + uVar19 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar19 * 4" identifier * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar6 >> 0x18) * 4" (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar27 & 0xff) * 4" (call_expression "(ulong)(uVar27 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 & 0xff)" ( (binary_expression "uVar27 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar11 * 4)" ( (binary_expression "&DAT_00197a20 + uVar11 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar15 * 4)" ( (binary_expression "&DAT_00197e20 + uVar15 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);" (assignment_expression "uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar16 * 4)" ( (binary_expression "&DAT_00197a20 + uVar16 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);" (assignment_expression "uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar27 & 0xff) * 4" (call_expression "(ulong)(uVar27 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 & 0xff)" ( (binary_expression "uVar27 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);" (assignment_expression "puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4)" (subscript_expression "puVar25[6]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4" (binary_expression "*(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18" (binary_expression "*(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)" (pointer_expression "*(uint *)(&DAT_00198220 + uVar28 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar28 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar28 * 4)" ( (binary_expression "&DAT_00198220 + uVar28 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar28 * 4" identifier * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar23 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar23 * 4)" ( (binary_expression "&DAT_00197a20 + uVar23 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar23 * 4" identifier * number_literal)) ))))) ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar9 * 4)" ( (binary_expression "&DAT_00197620 + uVar9 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) )))))) ;) (expression_statement "puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);" (assignment_expression "puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4)" (subscript_expression "puVar25[7]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4)" (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar22 >> 0x18) * 4" (call_expression "(ulong)(uVar22 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar22 >> 0x18)" ( (binary_expression "uVar22 >> 0x18" identifier >> number_literal) ))) * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar28 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar28 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar28 * 4)" ( (binary_expression "&DAT_00197620 + uVar28 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar28 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar8 * 4)" ( (binary_expression "&DAT_00198220 + uVar8 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar14 * 4)" ( (binary_expression "&DAT_00197620 + uVar14 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar10 * 4)" ( (binary_expression "&DAT_00197a20 + uVar10 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);" (assignment_expression "uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4)" identifier = (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4" (pointer_expression "*(uint *)(&DAT_00197620 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar11 * 4)" ( (binary_expression "&DAT_00197620 + uVar11 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) )))) ^ identifier) ^ identifier) ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar15 * 4)" ( (binary_expression "&DAT_00198220 + uVar15 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar15 = (ulong)(uVar6 >> 8 & 0xff);" (assignment_expression "uVar15 = (ulong)(uVar6 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar6 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 8 & 0xff)" ( (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar11 = (ulong)(uVar6 & 0xff);" (assignment_expression "uVar11 = (ulong)(uVar6 & 0xff)" identifier = (call_expression "(ulong)(uVar6 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);" (assignment_expression "uVar23 = (ulong)(uVar6 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar6 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x10 & 0xff)" ( (binary_expression "uVar6 >> 0x10 & 0xff" (binary_expression "uVar6 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar19 = (ulong)(uVar6 >> 0x18);" (assignment_expression "uVar19 = (ulong)(uVar6 >> 0x18)" identifier = (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);" (assignment_expression "uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4)" identifier = (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21" (pointer_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar23 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar23 * 4)" ( (binary_expression "&DAT_00197a20 + uVar23 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar23 * 4" identifier * number_literal)) )))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar10 * 4)" ( (binary_expression "&DAT_00197620 + uVar10 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar19 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar19 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar19 * 4)" ( (binary_expression "&DAT_00198220 + uVar19 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar19 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar11 * 4)" ( (binary_expression "&DAT_00197620 + uVar11 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar15 * 4)" ( (binary_expression "&DAT_00197e20 + uVar15 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar20 = (ulong)(uVar13 >> 8 & 0xff);" (assignment_expression "uVar20 = (ulong)(uVar13 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar13 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar13 >> 8 & 0xff)" ( (binary_expression "uVar13 >> 8 & 0xff" (binary_expression "uVar13 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar13 & 0xff) * 4" (call_expression "(ulong)(uVar13 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar13 & 0xff)" ( (binary_expression "uVar13 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + uVar20 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar20 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar20 * 4)" ( (binary_expression "&DAT_00197e20 + uVar20 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar20 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar8 = (ulong)(uVar13 >> 0x18);" (assignment_expression "uVar8 = (ulong)(uVar13 >> 0x18)" identifier = (call_expression "(ulong)(uVar13 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar13 >> 0x18)" ( (binary_expression "uVar13 >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);" (assignment_expression "uVar10 = (ulong)(uVar13 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar13 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar13 >> 0x10 & 0xff)" ( (binary_expression "uVar13 >> 0x10 & 0xff" (binary_expression "uVar13 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);" (assignment_expression "uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4)" identifier = (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4)" (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17" (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4)" (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18" (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar9 * 4)" ( (binary_expression "&DAT_00198220 + uVar9 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar8 * 4)" ( (binary_expression "&DAT_00197620 + uVar8 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar10 * 4)" ( (binary_expression "&DAT_00197a20 + uVar10 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar9 = (ulong)(uVar24 >> 8 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar24 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar24 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 8 & 0xff)" ( (binary_expression "uVar24 >> 8 & 0xff" (binary_expression "uVar24 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);" (assignment_expression "uVar16 = (ulong)(uVar24 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar24 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 0x10 & 0xff)" ( (binary_expression "uVar24 >> 0x10 & 0xff" (binary_expression "uVar24 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);" (assignment_expression "uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4)" identifier = (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22" (pointer_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar16 * 4)" ( (binary_expression "&DAT_00197e20 + uVar16 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) )))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar14 * 4)" ( (binary_expression "&DAT_00197e20 + uVar14 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar24 & 0xff) * 4" (call_expression "(ulong)(uVar24 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 & 0xff)" ( (binary_expression "uVar24 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar24 >> 0x18) * 4" (call_expression "(ulong)(uVar24 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 0x18)" ( (binary_expression "uVar24 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar9 * 4)" ( (binary_expression "&DAT_00198220 + uVar9 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);" (assignment_expression "uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00198220 + uVar23 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar23 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar23 * 4)" ( (binary_expression "&DAT_00198220 + uVar23 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar23 * 4" identifier * number_literal)) ))))) ;) (expression_statement "puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);" (assignment_expression "puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" (subscript_expression "puVar25[8]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4)" (pointer_expression "*(uint *)(&DAT_00198220 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar16 * 4)" ( (binary_expression "&DAT_00198220 + uVar16 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar15 * 4)" ( (binary_expression "&DAT_00197e20 + uVar15 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar11 * 4)" ( (binary_expression "&DAT_00198220 + uVar11 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar12 >> 0x18) * 4" (call_expression "(ulong)(uVar12 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 0x18)" ( (binary_expression "uVar12 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar12 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar12 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 0x10 & 0xff)" ( (binary_expression "uVar12 >> 0x10 & 0xff" (binary_expression "uVar12 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) )))))) ;) (expression_statement "uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);" (assignment_expression "uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar15 * 4)" ( (binary_expression "&DAT_00197a20 + uVar15 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);" (assignment_expression "uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar24 >> 0x18) * 4" (call_expression "(ulong)(uVar24 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 0x18)" ( (binary_expression "uVar24 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ;) (expression_statement "puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);" (assignment_expression "puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" (subscript_expression "puVar25[9]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4)" (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar12 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar12 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 8 & 0xff)" ( (binary_expression "uVar12 >> 8 & 0xff" (binary_expression "uVar12 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar19 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar19 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar19 * 4)" ( (binary_expression "&DAT_00197e20 + uVar19 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar19 * 4" identifier * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar12 & 0xff) * 4" (call_expression "(ulong)(uVar12 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 & 0xff)" ( (binary_expression "uVar12 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar12 >> 0x18) * 4" (call_expression "(ulong)(uVar12 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar12 >> 0x18)" ( (binary_expression "uVar12 >> 0x18" identifier >> number_literal) ))) * number_literal)) )))))) ;) (expression_statement "puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);" (assignment_expression "puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4)" (subscript_expression "puVar25[10]" identifier [ number_literal ]) = (binary_expression "uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4)" (binary_expression "uVar18 ^ uVar27 ^ uVar17 ^ uVar21" (binary_expression "uVar18 ^ uVar27 ^ uVar17" (binary_expression "uVar18 ^ uVar27" identifier ^ identifier) ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar16 * 4)" ( (binary_expression "&DAT_00197620 + uVar16 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00198220 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar10 * 4)" ( (binary_expression "&DAT_00198220 + uVar10 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197620 + uVar20 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar20 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar20 * 4)" ( (binary_expression "&DAT_00197620 + uVar20 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar20 * 4" identifier * number_literal)) ))))) ;) (expression_statement "puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);" (assignment_expression "puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4)" (subscript_expression "puVar25[0xb]" identifier [ number_literal ]) = (binary_expression "uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4)" (binary_expression "uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4)" (binary_expression "uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4)" (binary_expression "uVar18 ^ uVar17" identifier ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar8 * 4)" ( (binary_expression "&DAT_00197e20 + uVar8 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar24 & 0xff) * 4" (call_expression "(ulong)(uVar24 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 & 0xff)" ( (binary_expression "uVar24 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar9 * 4)" ( (binary_expression "&DAT_00197a20 + uVar9 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) )))))) ;) (expression_statement "uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;" (assignment_expression "uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24" identifier = (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar13 & 0xff) * 4" (call_expression "(ulong)(uVar13 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar13 & 0xff)" ( (binary_expression "uVar13 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar8 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar8 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar8 * 4)" ( (binary_expression "&DAT_00197a20 + uVar8 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar19 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar19 * 4)" ( (binary_expression "&DAT_00197a20 + uVar19 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar19 * 4" identifier * number_literal)) ))))) ^ identifier) ^ identifier)) ;) (expression_statement "uVar14 = (ulong)(uVar24 & 0xff);" (assignment_expression "uVar14 = (ulong)(uVar24 & 0xff)" identifier = (call_expression "(ulong)(uVar24 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 & 0xff)" ( (binary_expression "uVar24 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);" (assignment_expression "uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar24 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar24 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 0x10 & 0xff)" ( (binary_expression "uVar24 >> 0x10 & 0xff" (binary_expression "uVar24 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar16 = (ulong)(byte)(uVar24 >> 8);" (assignment_expression "uVar16 = (ulong)(byte)(uVar24 >> 8)" identifier = (call_expression "(ulong)(byte)(uVar24 >> 8)" (call_expression "(ulong)(byte)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(byte)" ( identifier ))) (argument_list "(uVar24 >> 8)" ( (binary_expression "uVar24 >> 8" identifier >> number_literal) )))) ;) (expression_statement "uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;" (assignment_expression "uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22" identifier = (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22" (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6" (pointer_expression "*(uint *)(&DAT_00197620 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar15 * 4)" ( (binary_expression "&DAT_00197620 + uVar15 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) )))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar24 >> 0x18) * 4" (call_expression "(ulong)(uVar24 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 0x18)" ( (binary_expression "uVar24 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar14 * 4)" ( (binary_expression "&DAT_00197620 + uVar14 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar16 * 4)" ( (binary_expression "&DAT_00197e20 + uVar16 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ^ identifier)) ;) (expression_statement "uVar15 = (ulong)(uVar21 & 0xff);" (assignment_expression "uVar15 = (ulong)(uVar21 & 0xff)" identifier = (call_expression "(ulong)(uVar21 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 & 0xff)" ( (binary_expression "uVar21 & 0xff" identifier & number_literal) )))) ;) (expression_statement "uVar9 = (ulong)(uVar21 >> 8 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar21 >> 8 & 0xff)" identifier = (call_expression "(ulong)(uVar21 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 8 & 0xff)" ( (binary_expression "uVar21 >> 8 & 0xff" (binary_expression "uVar21 >> 8" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);" (assignment_expression "uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" identifier = (binary_expression "uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" (binary_expression "uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4)" (binary_expression "uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" (binary_expression "uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4)" (binary_expression "uVar13 ^ uVar4" identifier ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar15 * 4)" ( (binary_expression "&DAT_00198220 + uVar15 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar21 >> 0x18) * 4" (call_expression "(ulong)(uVar21 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 0x18)" ( (binary_expression "uVar21 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar9 * 4)" ( (binary_expression "&DAT_00197e20 + uVar9 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar21 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar21 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 0x10 & 0xff)" ( (binary_expression "uVar21 >> 0x10 & 0xff" (binary_expression "uVar21 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) )))))) ;) (expression_statement "uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);" (assignment_expression "uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar15 * 4)" ( (binary_expression "&DAT_00197a20 + uVar15 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);" (assignment_expression "uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar27 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 0x10 & 0xff)" ( (binary_expression "uVar27 >> 0x10 & 0xff" (binary_expression "uVar27 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar10 = (ulong)(uVar27 >> 0x18);" (assignment_expression "uVar10 = (ulong)(uVar27 >> 0x18)" identifier = (call_expression "(ulong)(uVar27 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 0x18)" ( (binary_expression "uVar27 >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;" (assignment_expression "uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6" identifier = (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6" (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4)" identifier ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar11 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar11 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar11 * 4)" ( (binary_expression "&DAT_00197e20 + uVar11 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar11 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar27 & 0xff) * 4" (call_expression "(ulong)(uVar27 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 & 0xff)" ( (binary_expression "uVar27 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar10 * 4)" ( (binary_expression "&DAT_00197620 + uVar10 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar27 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 8 & 0xff)" ( (binary_expression "uVar27 >> 8 & 0xff" (binary_expression "uVar27 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ^ identifier)) ;) (expression_statement "uVar8 = (ulong)uVar7;" (assignment_expression "uVar8 = (ulong)uVar7" identifier = (cast_expression "(ulong)uVar7" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);" (assignment_expression "uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00198220 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar14 * 4)" ( (binary_expression "&DAT_00198220 + uVar14 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ;) (expression_statement "puVar26 = puVar25 + 0x10;" (assignment_expression "puVar26 = puVar25 + 0x10" identifier = (binary_expression "puVar25 + 0x10" identifier + number_literal)) ;) (expression_statement "uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);" (assignment_expression "uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(uVar27 & 0xff) * 4" (call_expression "(ulong)(uVar27 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 & 0xff)" ( (binary_expression "uVar27 & 0xff" identifier & number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);" (assignment_expression "uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197620 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar9 * 4)" ( (binary_expression "&DAT_00197620 + uVar9 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) ))))) ;) (expression_statement "puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);" (assignment_expression "puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (subscript_expression "puVar25[0xd]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4)" (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar21 >> 0x18) * 4" (call_expression "(ulong)(uVar21 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 0x18)" ( (binary_expression "uVar21 >> 0x18" identifier >> number_literal) ))) * number_literal)) )))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar15 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar15 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar15 * 4)" ( (binary_expression "&DAT_00197e20 + uVar15 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar15 * 4" identifier * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" ( (binary_expression "&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "(ulong)(uVar21 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar21 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 0x10 & 0xff)" ( (binary_expression "uVar21 >> 0x10 & 0xff" (binary_expression "uVar21 >> 0x10" identifier >> number_literal) & number_literal) ))) * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar27 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 8 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar27 >> 8 & 0xff)" ( (binary_expression "uVar27 >> 8 & 0xff" (binary_expression "uVar27 >> 8" identifier >> number_literal) & number_literal) ))) * number_literal)) )))))) ;) (expression_statement "uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);" (assignment_expression "uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar14 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar14 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar14 * 4)" ( (binary_expression "&DAT_00197a20 + uVar14 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar14 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00197a20 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197a20 + uVar10 * 4)" ( (binary_expression "&DAT_00197a20 + uVar10 * 4" (pointer_expression "&DAT_00197a20" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar7 >> 0x10 & 0xff)" identifier = (call_expression "(ulong)(uVar7 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar7 >> 0x10 & 0xff)" ( (binary_expression "uVar7 >> 0x10 & 0xff" (binary_expression "uVar7 >> 0x10" identifier >> number_literal) & number_literal) )))) ;) (expression_statement "uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);" (assignment_expression "uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197620 + uVar16 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar16 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar16 * 4)" ( (binary_expression "&DAT_00197620 + uVar16 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar16 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4)" identifier = (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + (ulong)(byte)uVar7 * 4)" ( (binary_expression "&DAT_00197e20 + (ulong)(byte)uVar7 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "(ulong)(byte)uVar7 * 4" (cast_expression "(ulong)(byte)uVar7" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(byte)uVar7" ( (type_descriptor "byte" type_identifier) ) identifier)) * number_literal)) ))))) ;) (expression_statement "puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;" (assignment_expression "puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6" (subscript_expression "puVar25[0xc]" identifier [ number_literal ]) = (binary_expression "uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6" (binary_expression "uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4)" (binary_expression "uVar13 ^ uVar12 ^ uVar1" (binary_expression "uVar13 ^ uVar12" identifier ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + uVar10 * 4)" * (cast_expression "(uint *)(&DAT_00198220 + uVar10 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + uVar10 * 4)" ( (binary_expression "&DAT_00198220 + uVar10 * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) ))))) ^ identifier)) ;) (expression_statement "puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);" (assignment_expression "puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4)" (subscript_expression "puVar25[0xe]" identifier [ number_literal ]) = (binary_expression "uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4)" (binary_expression "uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4)" (binary_expression "uVar2 ^ uVar3 ^ uVar18" (binary_expression "uVar2 ^ uVar3" identifier ^ identifier) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(uVar7 >> 0x18) * 4" (call_expression "(ulong)(uVar7 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ (pointer_expression "*(uint *)(&DAT_00197e20 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197e20 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197e20 + uVar9 * 4)" ( (binary_expression "&DAT_00197e20 + uVar9 * 4" (pointer_expression "&DAT_00197e20" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) )))))) ;) (expression_statement "puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);" (assignment_expression "puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4)" (subscript_expression "puVar25[0xf]" identifier [ number_literal ]) = (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22" (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4)" * (cast_expression "(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4)" ( (binary_expression "&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4" (pointer_expression "&DAT_00198220" & identifier) + (binary_expression "(ulong)(byte)(uVar7 >> 8) * 4" (call_expression "(ulong)(byte)(uVar7 >> 8)" (call_expression "(ulong)(byte)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(byte)" ( identifier ))) (argument_list "(uVar7 >> 8)" ( (binary_expression "uVar7 >> 8" identifier >> number_literal) ))) * number_literal)) )))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" * (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" ( (binary_expression "&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "(ulong)(uVar24 >> 0x18) * 4" (call_expression "(ulong)(uVar24 >> 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar24 >> 0x18)" ( (binary_expression "uVar24 >> 0x18" identifier >> number_literal) ))) * number_literal)) ))))) ^ identifier) ^ (pointer_expression "*(uint *)(&DAT_00197620 + uVar9 * 4)" * (cast_expression "(uint *)(&DAT_00197620 + uVar9 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00197620 + uVar9 * 4)" ( (binary_expression "&DAT_00197620 + uVar9 * 4" (pointer_expression "&DAT_00197620" & identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) )))))) ;) (expression_statement "puVar25 = puVar26;" (assignment_expression "puVar25 = puVar26" identifier = identifier) ;) }) while (parenthesized_expression "(puVar26 != param_4 + 0x20)" ( (binary_expression "puVar26 != param_4 + 0x20" identifier != (binary_expression "param_4 + 0x20" identifier + number_literal)) )) ;) (expression_statement "uVar5 = 0;" (assignment_expression "uVar5 = 0" identifier = number_literal) ;) (expression_statement "param_4[0x20] = param_2;" (assignment_expression "param_4[0x20] = param_2" (subscript_expression "param_4[0x20]" identifier [ number_literal ]) = identifier) ;) })) }) (else_clause "else {\n      uVar5 = 4;\n    }" else (compound_statement "{\n      uVar5 = 4;\n    }" { (expression_statement "uVar5 = 4;" (assignment_expression "uVar5 = 4" identifier = number_literal) ;) }))) (if_statement "if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n      __stack_chk_fail();\n    }" if (parenthesized_expression "(lStack_40 != *(long *)(in_FS_OFFSET + 0x28))" ( (binary_expression "lStack_40 != *(long *)(in_FS_OFFSET + 0x28)" identifier != (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) )) (compound_statement "{\n                    \n      __stack_chk_fail();\n    }" { (expression_statement "__stack_chk_fail();" (call_expression "__stack_chk_fail()" identifier (argument_list "()" ( ))) ;) })) (return_statement "return uVar5;" return identifier ;) })) (expression_statement "crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);" (call_expression "crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1)" identifier (argument_list "("skey != NULL","src/ciphers/cast5.c",0x1a1)" ( (string_literal ""skey != NULL"" " string_content ") , (string_literal ""src/ciphers/cast5.c"" " string_content ") , number_literal ))) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT)) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression (binary_expression IDENT - LIT) < LIT)) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) , LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression IDENT ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) * LIT)) ))))) ^ IDENT) ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) )))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT) ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) * LIT)) )))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT) ^ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))) ^ IDENT) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) * LIT)) ))))) ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) )))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression IDENT ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression IDENT ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))) ^ IDENT) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression IDENT ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression IDENT ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) )))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) * LIT)) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) )))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))) ^ IDENT) ^ IDENT) ^ IDENT) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression IDENT ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) )))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) )))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression IDENT ^ IDENT) ^ IDENT) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression IDENT ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression IDENT ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT) ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( IDENT ))) (argument_list ( (binary_expression IDENT >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression IDENT ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression IDENT ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) ))))) ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) )))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) ))))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) * LIT)) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression IDENT ^ IDENT) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) ))))) ^ IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression IDENT ^ IDENT) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( IDENT ))) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) )))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ^ IDENT) ^ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression IDENT * LIT)) )))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (binary_expression IDENT + LIT)) )) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (return_statement return IDENT ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT ))) ;) })))
(function_definition "undefined8 cast5_setup(long param_1,uint param_2,uint param_3,uint *param_4)\n\n{\n  uint uVar1;\n  uint uVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined8 uVar5;\n  uint uVar6;\n  uint uVar7;\n  ulong uVar8;\n  ulong uVar9;\n  ulong uVar10;\n  ulong uVar11;\n  uint uVar12;\n  uint uVar13;\n  ulong uVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  ulong uVar19;\n  ulong uVar20;\n  uint uVar21;\n  uint uVar22;\n  ulong uVar23;\n  uint uVar24;\n  uint *puVar25;\n  uint *puVar26;\n  uint uVar27;\n  ulong uVar28;\n  long in_FS_OFFSET;\n  byte bStack_c8;\n  uint uStack_58;\n  uint uStack_54;\n  uint uStack_50;\n  uint uStack_4c;\n  long lStack_40;\n  \n  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (param_1 == 0) {\n                    \n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }\n  if (param_4 != (uint *)0x0) {\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n      __stack_chk_fail();\n    }\n    return uVar5;\n  }\n                    \n  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);\n}" (type_identifier "undefined8") (function_declarator "cast5_setup(long param_1,uint param_2,uint param_3,uint *param_4)" (identifier "cast5_setup") (parameter_list "(long param_1,uint param_2,uint param_3,uint *param_4)" (( "(") (parameter_declaration "long param_1" (sized_type_specifier "long" (long "long")) (identifier "param_1")) (, ",") (parameter_declaration "uint param_2" (type_identifier "uint") (identifier "param_2")) (, ",") (parameter_declaration "uint param_3" (type_identifier "uint") (identifier "param_3")) (, ",") (parameter_declaration "uint *param_4" (type_identifier "uint") (pointer_declarator "*param_4" (* "*") (identifier "param_4"))) () ")"))) (compound_statement "{\n  uint uVar1;\n  uint uVar2;\n  uint uVar3;\n  uint uVar4;\n  undefined8 uVar5;\n  uint uVar6;\n  uint uVar7;\n  ulong uVar8;\n  ulong uVar9;\n  ulong uVar10;\n  ulong uVar11;\n  uint uVar12;\n  uint uVar13;\n  ulong uVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  ulong uVar19;\n  ulong uVar20;\n  uint uVar21;\n  uint uVar22;\n  ulong uVar23;\n  uint uVar24;\n  uint *puVar25;\n  uint *puVar26;\n  uint uVar27;\n  ulong uVar28;\n  long in_FS_OFFSET;\n  byte bStack_c8;\n  uint uStack_58;\n  uint uStack_54;\n  uint uStack_50;\n  uint uStack_4c;\n  long lStack_40;\n  \n  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);\n  if (param_1 == 0) {\n                    \n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }\n  if (param_4 != (uint *)0x0) {\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n      __stack_chk_fail();\n    }\n    return uVar5;\n  }\n                    \n  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);\n}" ({ "{") (declaration "uint uVar1;" (type_identifier "uint") (identifier "uVar1") (; ";")) (declaration "uint uVar2;" (type_identifier "uint") (identifier "uVar2") (; ";")) (declaration "uint uVar3;" (type_identifier "uint") (identifier "uVar3") (; ";")) (declaration "uint uVar4;" (type_identifier "uint") (identifier "uVar4") (; ";")) (declaration "undefined8 uVar5;" (type_identifier "undefined8") (identifier "uVar5") (; ";")) (declaration "uint uVar6;" (type_identifier "uint") (identifier "uVar6") (; ";")) (declaration "uint uVar7;" (type_identifier "uint") (identifier "uVar7") (; ";")) (declaration "ulong uVar8;" (type_identifier "ulong") (identifier "uVar8") (; ";")) (declaration "ulong uVar9;" (type_identifier "ulong") (identifier "uVar9") (; ";")) (declaration "ulong uVar10;" (type_identifier "ulong") (identifier "uVar10") (; ";")) (declaration "ulong uVar11;" (type_identifier "ulong") (identifier "uVar11") (; ";")) (declaration "uint uVar12;" (type_identifier "uint") (identifier "uVar12") (; ";")) (declaration "uint uVar13;" (type_identifier "uint") (identifier "uVar13") (; ";")) (declaration "ulong uVar14;" (type_identifier "ulong") (identifier "uVar14") (; ";")) (declaration "ulong uVar15;" (type_identifier "ulong") (identifier "uVar15") (; ";")) (declaration "ulong uVar16;" (type_identifier "ulong") (identifier "uVar16") (; ";")) (declaration "uint uVar17;" (type_identifier "uint") (identifier "uVar17") (; ";")) (declaration "uint uVar18;" (type_identifier "uint") (identifier "uVar18") (; ";")) (declaration "ulong uVar19;" (type_identifier "ulong") (identifier "uVar19") (; ";")) (declaration "ulong uVar20;" (type_identifier "ulong") (identifier "uVar20") (; ";")) (declaration "uint uVar21;" (type_identifier "uint") (identifier "uVar21") (; ";")) (declaration "uint uVar22;" (type_identifier "uint") (identifier "uVar22") (; ";")) (declaration "ulong uVar23;" (type_identifier "ulong") (identifier "uVar23") (; ";")) (declaration "uint uVar24;" (type_identifier "uint") (identifier "uVar24") (; ";")) (declaration "uint *puVar25;" (type_identifier "uint") (pointer_declarator "*puVar25" (* "*") (identifier "puVar25")) (; ";")) (declaration "uint *puVar26;" (type_identifier "uint") (pointer_declarator "*puVar26" (* "*") (identifier "puVar26")) (; ";")) (declaration "uint uVar27;" (type_identifier "uint") (identifier "uVar27") (; ";")) (declaration "ulong uVar28;" (type_identifier "ulong") (identifier "uVar28") (; ";")) (declaration "long in_FS_OFFSET;" (sized_type_specifier "long" (long "long")) (identifier "in_FS_OFFSET") (; ";")) (declaration "byte bStack_c8;" (type_identifier "byte") (identifier "bStack_c8") (; ";")) (declaration "uint uStack_58;" (type_identifier "uint") (identifier "uStack_58") (; ";")) (declaration "uint uStack_54;" (type_identifier "uint") (identifier "uStack_54") (; ";")) (declaration "uint uStack_50;" (type_identifier "uint") (identifier "uStack_50") (; ";")) (declaration "uint uStack_4c;" (type_identifier "uint") (identifier "uStack_4c") (; ";")) (declaration "long lStack_40;" (sized_type_specifier "long" (long "long")) (identifier "lStack_40") (; ";")) (expression_statement "lStack_40 = *(long *)(in_FS_OFFSET + 0x28);" (assignment_expression "lStack_40 = *(long *)(in_FS_OFFSET + 0x28)" (identifier "lStack_40") (= "=") (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" (* "*") (cast_expression "(long *)(in_FS_OFFSET + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_FS_OFFSET + 0x28)" (( "(") (binary_expression "in_FS_OFFSET + 0x28" (identifier "in_FS_OFFSET") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (if_statement "if (param_1 == 0) {\n                    \n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }" (if "if") (parenthesized_expression "(param_1 == 0)" (( "(") (binary_expression "param_1 == 0" (identifier "param_1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);\n  }" ({ "{") (expression_statement "crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);" (call_expression "crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0)" (identifier "crypt_argchk") (argument_list "("key != NULL","src/ciphers/cast5.c",0x1a0)" (( "(") (string_literal ""key != NULL"" (" """) (string_content "key != NULL") (" """)) (, ",") (string_literal ""src/ciphers/cast5.c"" (" """) (string_content "src/ciphers/cast5.c") (" """)) (, ",") (number_literal "0x1a0") () ")"))) (; ";")) (} "}"))) (if_statement "if (param_4 != (uint *)0x0) {\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n      __stack_chk_fail();\n    }\n    return uVar5;\n  }" (if "if") (parenthesized_expression "(param_4 != (uint *)0x0)" (( "(") (binary_expression "param_4 != (uint *)0x0" (identifier "param_4") (!= "!=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }\n    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n      __stack_chk_fail();\n    }\n    return uVar5;\n  }" ({ "{") (if_statement "if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }\n    else {\n      uVar5 = 4;\n    }" (if "if") (parenthesized_expression "(((param_3 & 0xffffffef) == 0) || (param_3 == 0xc))" (( "(") (binary_expression "((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)" (parenthesized_expression "((param_3 & 0xffffffef) == 0)" (( "(") (binary_expression "(param_3 & 0xffffffef) == 0" (parenthesized_expression "(param_3 & 0xffffffef)" (( "(") (binary_expression "param_3 & 0xffffffef" (identifier "param_3") (& "&") (number_literal "0xffffffef")) () ")")) (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(param_3 == 0xc)" (( "(") (binary_expression "param_3 == 0xc" (identifier "param_3") (== "==") (number_literal "0xc")) () ")"))) () ")")) (compound_statement "{\n      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }\n    }" ({ "{") (if_statement "if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }" (if "if") (parenthesized_expression "(((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc))" (( "(") (binary_expression "((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)" (parenthesized_expression "((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb))" (( "(") (binary_expression "(param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)" (parenthesized_expression "(param_3 != 0xc)" (( "(") (binary_expression "param_3 != 0xc" (identifier "param_3") (!= "!=") (number_literal "0xc")) () ")")) (|| "||") (parenthesized_expression "(uVar5 = 4, (int)param_2 < 0xb)" (( "(") (comma_expression "uVar5 = 4, (int)param_2 < 0xb" (assignment_expression "uVar5 = 4" (identifier "uVar5") (= "=") (number_literal "4")) (, ",") (binary_expression "(int)param_2 < 0xb" (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2")) (< "<") (number_literal "0xb"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(uVar5 = 3, param_2 - 5 < 0xc)" (( "(") (comma_expression "uVar5 = 3, param_2 - 5 < 0xc" (assignment_expression "uVar5 = 3" (identifier "uVar5") (= "=") (number_literal "3")) (, ",") (binary_expression "param_2 - 5 < 0xc" (binary_expression "param_2 - 5" (identifier "param_2") (- "-") (number_literal "5")) (< "<") (number_literal "0xc"))) () ")"))) () ")")) (compound_statement "{\n        zeromem(&uStack_58,0x10);\n        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);\n        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;\n        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);\n        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;\n        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);\n        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);\n        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);\n        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;\n        puVar25 = param_4;\n        do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);\n        uVar5 = 0;\n        param_4[0x20] = param_2;\n      }" ({ "{") (expression_statement "zeromem(&uStack_58,0x10);" (call_expression "zeromem(&uStack_58,0x10)" (identifier "zeromem") (argument_list "(&uStack_58,0x10)" (( "(") (pointer_expression "&uStack_58" (& "&") (identifier "uStack_58")) (, ",") (number_literal "0x10") () ")"))) (; ";")) (expression_statement "__memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);" (call_expression "__memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10)" (identifier "__memcpy_chk") (argument_list "(&uStack_58,param_1,(long)(int)param_2,0x10)" (( "(") (pointer_expression "&uStack_58" (& "&") (identifier "uStack_58")) (, ",") (identifier "param_1") (, ",") (cast_expression "(long)(int)param_2" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2"))) (, ",") (number_literal "0x10") () ")"))) (; ";")) (expression_statement "uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18;" (assignment_expression "uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18" (identifier "uVar27") (= "=") (binary_expression "uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |\n                 uStack_50 << 0x18" (binary_expression "uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8" (binary_expression "uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8" (binary_expression "uStack_50 >> 0x18" (identifier "uStack_50") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uStack_50 & 0xff0000) >> 8" (parenthesized_expression "(uStack_50 & 0xff0000)" (( "(") (binary_expression "uStack_50 & 0xff0000" (identifier "uStack_50") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uStack_50 & 0xff00) << 8" (parenthesized_expression "(uStack_50 & 0xff00)" (( "(") (binary_expression "uStack_50 & 0xff00" (identifier "uStack_50") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uStack_50 << 0x18" (identifier "uStack_50") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);" (assignment_expression "uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uStack_50 >> 0x18) * 4" (call_expression "(ulong)(uStack_50 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uStack_50 >> 0x18)" (( "(") (binary_expression "uStack_50 >> 0x18" (identifier "uStack_50") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18;" (assignment_expression "uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18" (identifier "uVar21") (= "=") (binary_expression "uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |\n                 uStack_54 << 0x18" (binary_expression "uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8" (binary_expression "uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8" (binary_expression "uStack_54 >> 0x18" (identifier "uStack_54") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uStack_54 & 0xff0000) >> 8" (parenthesized_expression "(uStack_54 & 0xff0000)" (( "(") (binary_expression "uStack_54 & 0xff0000" (identifier "uStack_54") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uStack_54 & 0xff00) << 8" (parenthesized_expression "(uStack_54 & 0xff00)" (( "(") (binary_expression "uStack_54 & 0xff00" (identifier "uStack_54") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uStack_54 << 0x18" (identifier "uStack_54") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18);" (assignment_expression "uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18)" (identifier "uVar8") (= "=") (call_expression "(ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18)" (( "(") (binary_expression "uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8\n                       | uStack_4c << 0x18" (binary_expression "uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8" (binary_expression "uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8" (binary_expression "uStack_4c >> 0x18" (identifier "uStack_4c") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uStack_4c & 0xff0000) >> 8" (parenthesized_expression "(uStack_4c & 0xff0000)" (( "(") (binary_expression "uStack_4c & 0xff0000" (identifier "uStack_4c") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uStack_4c & 0xff00) << 8" (parenthesized_expression "(uStack_4c & 0xff00)" (( "(") (binary_expression "uStack_4c & 0xff00" (identifier "uStack_4c") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uStack_4c << 0x18" (identifier "uStack_4c") (<< "<<") (number_literal "0x18"))) () ")")))) (; ";")) (expression_statement "uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4)" (identifier "uVar18") (= "=") (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "(ulong)(uStack_50 & 0xff) * 4" (call_expression "(ulong)(uStack_50 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uStack_50 & 0xff)" (( "(") (binary_expression "uStack_50 & 0xff" (identifier "uStack_50") (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (uVar8 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (uVar8 & 0xff) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(uVar8 & 0xff) * 4" (parenthesized_expression "(uVar8 & 0xff)" (( "(") (binary_expression "uVar8 & 0xff" (identifier "uVar8") (& "&") (number_literal "0xff")) () ")")) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18;" (assignment_expression "uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18" (identifier "uVar24") (= "=") (binary_expression "uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |\n                 uStack_58 << 0x18" (binary_expression "uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8" (binary_expression "uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8" (binary_expression "uStack_58 >> 0x18" (identifier "uStack_58") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uStack_58 & 0xff0000) >> 8" (parenthesized_expression "(uStack_58 & 0xff0000)" (( "(") (binary_expression "uStack_58 & 0xff0000" (identifier "uStack_58") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uStack_58 & 0xff00) << 8" (parenthesized_expression "(uStack_58 & 0xff00)" (( "(") (binary_expression "uStack_58 & 0xff00" (identifier "uStack_58") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uStack_58 << 0x18" (identifier "uStack_58") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "puVar25 = param_4;" (assignment_expression "puVar25 = param_4" (identifier "puVar25") (= "=") (identifier "param_4")) (; ";")) (do_statement "do {\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        } while (puVar26 != param_4 + 0x20);" (do "do") (compound_statement "{\n          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;\n          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);\n          uVar15 = (ulong)(uVar18 >> 0x18);\n          uVar20 = (ulong)(uVar18 & 0xff);\n          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar14 = (ulong)(uVar18 >> 8 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;\n          uVar10 = (ulong)(uVar12 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);\n          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar11 = (ulong)(uVar12 >> 0x18);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);\n          bStack_c8 = (byte)uVar12;\n          uVar10 = (ulong)bStack_c8;\n          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;\n          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;\n          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);\n          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;\n          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);\n          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);\n          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);\n          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;\n          uVar23 = (ulong)(uVar6 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);\n          uVar28 = (ulong)(uVar22 & 0xff);\n          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);\n          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);\n          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);\n          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);\n          uVar16 = (ulong)(uVar21 >> 0x18);\n          uVar14 = (ulong)(uVar21 & 0xff);\n          uVar10 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);\n          uVar11 = (ulong)(uVar27 >> 8 & 0xff);\n          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);\n          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);\n          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;\n          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);\n          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);\n          uVar15 = (ulong)(uVar6 >> 8 & 0xff);\n          uVar11 = (ulong)(uVar6 & 0xff);\n          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);\n          uVar19 = (ulong)(uVar6 >> 0x18);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);\n          uVar20 = (ulong)(uVar13 >> 8 & 0xff);\n          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);\n          uVar8 = (ulong)(uVar13 >> 0x18);\n          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);\n          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar24 >> 8 & 0xff);\n          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);\n          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);\n          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);\n          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);\n          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);\n          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);\n          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);\n          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);\n          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);\n          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;\n          uVar14 = (ulong)(uVar24 & 0xff);\n          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);\n          uVar16 = (ulong)(byte)(uVar24 >> 8);\n          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;\n          uVar15 = (ulong)(uVar21 & 0xff);\n          uVar9 = (ulong)(uVar21 >> 8 & 0xff);\n          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);\n          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);\n          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);\n          uVar10 = (ulong)(uVar27 >> 0x18);\n          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;\n          uVar8 = (ulong)uVar7;\n          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);\n          puVar26 = puVar25 + 0x10;\n          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);\n          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);\n          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);\n          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);\n          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);\n          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);\n          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);\n          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;\n          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);\n          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);\n          puVar25 = puVar26;\n        }" ({ "{") (expression_statement "uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;" (assignment_expression "uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18" (identifier "uVar18") (= "=") (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18" (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24" (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4)" (identifier "uVar17") (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "(uVar8 >> 0x10 & 0xff) * 4" (parenthesized_expression "(uVar8 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar8 >> 0x10 & 0xff" (binary_expression "uVar8 >> 0x10" (identifier "uVar8") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")")) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "(uVar8 >> 8 & 0xff) * 4" (parenthesized_expression "(uVar8 >> 8 & 0xff)" (( "(") (binary_expression "uVar8 >> 8 & 0xff" (binary_expression "uVar8 >> 8" (identifier "uVar8") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")")) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + (uVar8 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197a20 + (uVar8 >> 0x18) * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "(uVar8 >> 0x18) * 4" (parenthesized_expression "(uVar8 >> 0x18)" (( "(") (binary_expression "uVar8 >> 0x18" (identifier "uVar8") (>> ">>") (number_literal "0x18")) () ")")) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar24")) (^ "^") (identifier "uVar18"))) (; ";")) (expression_statement "uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar18 >> 0x10 & 0xff)" (identifier "uVar9") (= "=") (call_expression "(ulong)(uVar18 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar18 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar18 >> 0x10 & 0xff" (binary_expression "uVar18 >> 0x10" (identifier "uVar18") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar15 = (ulong)(uVar18 >> 0x18);" (assignment_expression "uVar15 = (ulong)(uVar18 >> 0x18)" (identifier "uVar15") (= "=") (call_expression "(ulong)(uVar18 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar18 >> 0x18)" (( "(") (binary_expression "uVar18 >> 0x18" (identifier "uVar18") (>> ">>") (number_literal "0x18")) () ")")))) (; ";")) (expression_statement "uVar20 = (ulong)(uVar18 & 0xff);" (assignment_expression "uVar20 = (ulong)(uVar18 & 0xff)" (identifier "uVar20") (= "=") (call_expression "(ulong)(uVar18 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar18 & 0xff)" (( "(") (binary_expression "uVar18 & 0xff" (identifier "uVar18") (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar9 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar9 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar9 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar9 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar9 * 4" (identifier "uVar9") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar14 = (ulong)(uVar18 >> 8 & 0xff);" (assignment_expression "uVar14 = (ulong)(uVar18 >> 8 & 0xff)" (identifier "uVar14") (= "=") (call_expression "(ulong)(uVar18 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar18 >> 8 & 0xff)" (( "(") (binary_expression "uVar18 >> 8 & 0xff" (binary_expression "uVar18 >> 8" (identifier "uVar18") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;" (assignment_expression "uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17" (identifier "uVar12") (= "=") (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar14 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^\n                   *(uint *)(&DAT_00198220 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27" (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "(ulong)(uVar27 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar27 >> 8 & 0xff)" (( "(") (binary_expression "uVar27 >> 8 & 0xff" (binary_expression "uVar27 >> 8" (identifier "uVar27") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")")))) (^ "^") (identifier "uVar27")) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar15 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar15 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar15 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar15 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar15 * 4" (identifier "uVar15") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar20 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar20 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar20 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar20 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar20 * 4" (identifier "uVar20") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar14 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar14 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar14 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar14 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar14 * 4" (identifier "uVar14") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar17"))) (; ";")) (expression_statement "uVar10 = (ulong)(uVar12 >> 8 & 0xff);" (assignment_expression "uVar10 = (ulong)(uVar12 >> 8 & 0xff)" (identifier "uVar10") (= "=") (call_expression "(ulong)(uVar12 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar12 >> 8 & 0xff)" (( "(") (binary_expression "uVar12 >> 8 & 0xff" (binary_expression "uVar12 >> 8" (identifier "uVar12") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);" (assignment_expression "uVar16 = (ulong)(uVar12 >> 0x10 & 0xff)" (identifier "uVar16") (= "=") (call_expression "(ulong)(uVar12 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar12 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar12 >> 0x10 & 0xff" (binary_expression "uVar12 >> 0x10" (identifier "uVar12") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);" (assignment_expression "uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4)" (identifier "uVar24") (= "=") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar10 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar10 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar10 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar10 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar11 = (ulong)(uVar12 >> 0x18);" (assignment_expression "uVar11 = (ulong)(uVar12 >> 0x18)" (identifier "uVar11") (= "=") (call_expression "(ulong)(uVar12 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar12 >> 0x18)" (( "(") (binary_expression "uVar12 >> 0x18" (identifier "uVar12") (>> ">>") (number_literal "0x18")) () ")")))) (; ";")) (expression_statement "uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);" (assignment_expression "uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4)" (identifier "uVar22") (= "=") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar16 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar16 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar16 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar16 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar16 * 4" (identifier "uVar16") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);" (assignment_expression "uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4)" (identifier "uVar13") (= "=") (pointer_expression "*(uint *)(&DAT_00197620 + uVar10 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar10 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar10 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar10 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "bStack_c8 = (byte)uVar12;" (assignment_expression "bStack_c8 = (byte)uVar12" (identifier "bStack_c8") (= "=") (cast_expression "(byte)uVar12" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar12"))) (; ";")) (expression_statement "uVar10 = (ulong)bStack_c8;" (assignment_expression "uVar10 = (ulong)bStack_c8" (identifier "uVar10") (= "=") (cast_expression "(ulong)bStack_c8" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bStack_c8"))) (; ";")) (expression_statement "uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22;" (assignment_expression "uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22" (identifier "uVar6") (= "=") (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24 ^ uVar22" (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar24" (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4)" (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00198220 + uVar10 * 4)" (binary_expression "(uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" (cast_expression "(uint)uVar8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar8")) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "(ulong)(uVar27 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar27 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar27 >> 0x10 & 0xff" (binary_expression "uVar27 >> 0x10" (identifier "uVar27") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar10 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar10 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar10 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar10 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar11 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar11 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar11 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar11 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar11 * 4" (identifier "uVar11") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar24")) (^ "^") (identifier "uVar22"))) (; ";")) (expression_statement "uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);" (assignment_expression "uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (identifier "uVar27") (= "=") (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "(ulong)(uVar6 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar6 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 >> 8 & 0xff)" (( "(") (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" (identifier "uVar6") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);" (assignment_expression "uVar8 = (ulong)(uVar6 >> 0x10 & 0xff)" (identifier "uVar8") (= "=") (call_expression "(ulong)(uVar6 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar6 >> 0x10 & 0xff" (binary_expression "uVar6 >> 0x10" (identifier "uVar6") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;" (assignment_expression "uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4" (identifier "uVar4") (= "=") (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^\n                  *(uint *)(&DAT_00197e20 + uVar8 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4)" (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "(ulong)(uVar6 & 0xff) * 4" (call_expression "(ulong)(uVar6 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 & 0xff)" (( "(") (binary_expression "uVar6 & 0xff" (identifier "uVar6") (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")")))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "(ulong)(uVar6 >> 0x18) * 4" (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 >> 0x18)" (( "(") (binary_expression "uVar6 >> 0x18" (identifier "uVar6") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar27")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar8 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar8 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar8 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar8 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar8 * 4" (identifier "uVar8") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar21")) (^ "^") (identifier "uVar4"))) (; ";")) (expression_statement "*puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4);" (assignment_expression "*puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4)" (pointer_expression "*puVar25" (* "*") (identifier "puVar25")) (= "=") (binary_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                     *(uint *)(&DAT_00197e20 + uVar8 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^\n                     uVar13" (binary_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4)" (pointer_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar10 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar10 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar10 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")")))) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar14 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar14 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar14 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar14 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar14 * 4" (identifier "uVar14") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar13")) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "(ulong)(uVar6 >> 0x18) * 4" (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 >> 0x18)" (( "(") (binary_expression "uVar6 >> 0x18" (identifier "uVar6") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar8 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar8 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar8 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar8 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar8 * 4" (identifier "uVar8") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;" (assignment_expression "puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27" (subscript_expression "puVar25[1]" (identifier "puVar25") ([ "[") (number_literal "1") (] "]")) (= "=") (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24" (pointer_expression "*(uint *)(&DAT_00197620 + uVar11 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar11 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar11 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar11 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar11 * 4" (identifier "uVar11") (* "*") (number_literal "4"))) () ")")))) (^ "^") (identifier "uVar24")) (^ "^") (identifier "uVar22")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uVar6 & 0xff) * 4" (call_expression "(ulong)(uVar6 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 & 0xff)" (( "(") (binary_expression "uVar6 & 0xff" (identifier "uVar6") (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar27"))) (; ";")) (expression_statement "uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);" (assignment_expression "uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4)" (identifier "uVar24") (= "=") (pointer_expression "*(uint *)(&DAT_00197620 + uVar14 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar14 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar14 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar14 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar14 * 4" (identifier "uVar14") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);" (assignment_expression "puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" (subscript_expression "puVar25[2]" (identifier "puVar25") ([ "[") (number_literal "2") (] "]")) (= "=") (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^\n                       *(uint *)(&DAT_00197a20 + uVar8 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar20 * 4)" (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "(ulong)(uVar4 >> 0x18) * 4" (call_expression "(ulong)(uVar4 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar4 >> 0x18)" (( "(") (binary_expression "uVar4 >> 0x18" (identifier "uVar4") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")")))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar20 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar20 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar20 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar20 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar20 * 4" (identifier "uVar20") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar24")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar8 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar8 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar8 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar8 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar8 * 4" (identifier "uVar8") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uVar4 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar4 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar4 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar4 >> 0x10 & 0xff" (binary_expression "uVar4 >> 0x10" (identifier "uVar4") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);" (assignment_expression "uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4)" (identifier "uVar27") (= "=") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar10 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar10 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar10 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar10 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);" (assignment_expression "uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4)" (identifier "uVar21") (= "=") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar11 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar11 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar11 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar11 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar11 * 4" (identifier "uVar11") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);" (assignment_expression "puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" (subscript_expression "puVar25[3]" (identifier "puVar25") ([ "[") (number_literal "3") (] "]")) (= "=") (binary_expression "uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4)" (identifier "uVar17") (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar15 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar15 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar15 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar15 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar15 * 4" (identifier "uVar15") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uVar4 & 0xff) * 4" (call_expression "(ulong)(uVar4 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar4 & 0xff)" (( "(") (binary_expression "uVar4 & 0xff" (identifier "uVar4") (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "(ulong)(uVar4 >> 0x18) * 4" (call_expression "(ulong)(uVar4 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar4 >> 0x18)" (( "(") (binary_expression "uVar4 >> 0x18" (identifier "uVar4") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "(ulong)(uVar4 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar4 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar4 >> 8 & 0xff)" (( "(") (binary_expression "uVar4 >> 8 & 0xff" (binary_expression "uVar4 >> 8" (identifier "uVar4") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;" (assignment_expression "uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6" (identifier "uVar6") (= "=") (binary_expression "uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6" (binary_expression "uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^\n                  *(uint *)(&DAT_00198220 + uVar16 * 4)" (binary_expression "uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13" (binary_expression "uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4)" (binary_expression "uVar27 ^ uVar21" (identifier "uVar27") (^ "^") (identifier "uVar21")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar15 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar15 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar15 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar15 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar15 * 4" (identifier "uVar15") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar13")) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar16 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar16 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar16 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar16 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar16 * 4" (identifier "uVar16") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar6"))) (; ";")) (expression_statement "uVar23 = (ulong)(uVar6 & 0xff);" (assignment_expression "uVar23 = (ulong)(uVar6 & 0xff)" (identifier "uVar23") (= "=") (call_expression "(ulong)(uVar6 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 & 0xff)" (( "(") (binary_expression "uVar6 & 0xff" (identifier "uVar6") (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);" (assignment_expression "uVar19 = (ulong)(uVar6 >> 0x10 & 0xff)" (identifier "uVar19") (= "=") (call_expression "(ulong)(uVar6 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar6 >> 0x10 & 0xff" (binary_expression "uVar6 >> 0x10" (identifier "uVar6") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);" (assignment_expression "uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (identifier "uVar22") (= "=") (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^\n                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar23 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24 ^ uVar18" (binary_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4) ^\n                   uVar24" (pointer_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar19 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar19 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar19 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar19 * 4" (identifier "uVar19") (* "*") (number_literal "4"))) () ")")))) (^ "^") (identifier "uVar24")) (^ "^") (identifier "uVar18")) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "(ulong)(uVar6 >> 0x18) * 4" (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 >> 0x18)" (( "(") (binary_expression "uVar6 >> 0x18" (identifier "uVar6") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar23 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar23 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar23 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar23 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar23 * 4" (identifier "uVar23") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uVar6 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar6 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 >> 8 & 0xff)" (( "(") (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" (identifier "uVar6") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar28 = (ulong)(uVar22 & 0xff);" (assignment_expression "uVar28 = (ulong)(uVar22 & 0xff)" (identifier "uVar28") (= "=") (call_expression "(ulong)(uVar22 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar22 & 0xff)" (( "(") (binary_expression "uVar22 & 0xff" (identifier "uVar22") (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4)" (identifier "uVar18") (= "=") (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uVar22 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar22 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar22 >> 8 & 0xff)" (( "(") (binary_expression "uVar22 >> 8 & 0xff" (binary_expression "uVar22 >> 8" (identifier "uVar22") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);" (assignment_expression "uVar8 = (ulong)(uVar22 >> 0x10 & 0xff)" (identifier "uVar8") (= "=") (call_expression "(ulong)(uVar22 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar22 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar22 >> 0x10 & 0xff" (binary_expression "uVar22 >> 0x10" (identifier "uVar22") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4);" (assignment_expression "uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4)" (identifier "uVar21") (= "=") (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197a20 + uVar8 * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18" (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar28 * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4)" (identifier "uVar12") (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar9 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar9 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar9 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar9 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar9 * 4" (identifier "uVar9") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar28 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar28 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar28 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar28 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar28 * 4" (identifier "uVar28") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "(ulong)(uVar22 >> 0x18) * 4" (call_expression "(ulong)(uVar22 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar22 >> 0x18)" (( "(") (binary_expression "uVar22 >> 0x18" (identifier "uVar22") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar18")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar8 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar8 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar8 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar8 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar8 * 4" (identifier "uVar8") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar21 >> 0x10 & 0xff)" (identifier "uVar9") (= "=") (call_expression "(ulong)(uVar21 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar21 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar21 >> 0x10 & 0xff" (binary_expression "uVar21 >> 0x10" (identifier "uVar21") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar16 = (ulong)(uVar21 >> 0x18);" (assignment_expression "uVar16 = (ulong)(uVar21 >> 0x18)" (identifier "uVar16") (= "=") (call_expression "(ulong)(uVar21 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar21 >> 0x18)" (( "(") (binary_expression "uVar21 >> 0x18" (identifier "uVar21") (>> ">>") (number_literal "0x18")) () ")")))) (; ";")) (expression_statement "uVar14 = (ulong)(uVar21 & 0xff);" (assignment_expression "uVar14 = (ulong)(uVar21 & 0xff)" (identifier "uVar14") (= "=") (call_expression "(ulong)(uVar21 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar21 & 0xff)" (( "(") (binary_expression "uVar21 & 0xff" (identifier "uVar21") (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar10 = (ulong)(uVar21 >> 8 & 0xff);" (assignment_expression "uVar10 = (ulong)(uVar21 >> 8 & 0xff)" (identifier "uVar10") (= "=") (call_expression "(ulong)(uVar21 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar21 >> 8 & 0xff)" (( "(") (binary_expression "uVar21 >> 8 & 0xff" (binary_expression "uVar21 >> 8" (identifier "uVar21") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);" (assignment_expression "uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4)" (identifier "uVar27") (= "=") (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4)" (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar10 * 4)" (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4)" (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^\n                   *(uint *)(&DAT_00197a20 + uVar14 * 4)" (binary_expression "uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4)" (identifier "uVar4") (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar20 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar20 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar20 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar20 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar20 * 4" (identifier "uVar20") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar14 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar14 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar14 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar14 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar14 * 4" (identifier "uVar14") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar16 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar16 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar16 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar16 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar16 * 4" (identifier "uVar16") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar10 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar10 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar10 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar10 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar9 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar9 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar9 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar9 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar9 * 4" (identifier "uVar9") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "(ulong)(uVar27 >> 0x18) * 4" (call_expression "(ulong)(uVar27 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar27 >> 0x18)" (( "(") (binary_expression "uVar27 >> 0x18" (identifier "uVar27") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar11 = (ulong)(uVar27 >> 8 & 0xff);" (assignment_expression "uVar11 = (ulong)(uVar27 >> 8 & 0xff)" (identifier "uVar11") (= "=") (call_expression "(ulong)(uVar27 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar27 >> 8 & 0xff)" (( "(") (binary_expression "uVar27 >> 8 & 0xff" (binary_expression "uVar27 >> 8" (identifier "uVar27") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);" (assignment_expression "uVar15 = (ulong)(uVar27 >> 0x10 & 0xff)" (identifier "uVar15") (= "=") (call_expression "(ulong)(uVar27 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar27 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar27 >> 0x10 & 0xff" (binary_expression "uVar27 >> 0x10" (identifier "uVar27") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);" (assignment_expression "puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4)" (subscript_expression "puVar25[4]" (identifier "puVar25") ([ "[") (number_literal "4") (] "]")) (= "=") (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)\n                       ^ uVar17" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00198220 + uVar23 * 4)" (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uVar6 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar6 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 >> 8 & 0xff)" (( "(") (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" (identifier "uVar6") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")")))) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar23 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar23 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar23 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar23 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar23 * 4" (identifier "uVar23") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar16 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar16 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar16 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar16 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar16 * 4" (identifier "uVar16") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar17")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar15 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar15 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar15 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar15 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar15 * 4" (identifier "uVar15") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)\n          ;" (assignment_expression "puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)" (subscript_expression "puVar25[5]" (identifier "puVar25") ([ "[") (number_literal "5") (] "]")) (= "=") (binary_expression "*(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar11 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar19 * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4)" (pointer_expression "*(uint *)(&DAT_00198220 + uVar19 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar19 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar19 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar19 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar19 * 4" (identifier "uVar19") (* "*") (number_literal "4"))) () ")")))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uVar6 >> 0x18) * 4" (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 >> 0x18)" (( "(") (binary_expression "uVar6 >> 0x18" (identifier "uVar6") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "(ulong)(uVar27 & 0xff) * 4" (call_expression "(ulong)(uVar27 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar27 & 0xff)" (( "(") (binary_expression "uVar27 & 0xff" (identifier "uVar27") (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar11 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar11 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar11 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar11 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar11 * 4" (identifier "uVar11") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar15 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar15 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar15 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar15 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar15 * 4" (identifier "uVar15") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);" (assignment_expression "uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar16 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar16 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar16 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar16 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar16 * 4" (identifier "uVar16") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);" (assignment_expression "uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" (identifier "uVar24") (= "=") (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uVar27 & 0xff) * 4" (call_expression "(ulong)(uVar27 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar27 & 0xff)" (( "(") (binary_expression "uVar27 & 0xff" (identifier "uVar27") (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);" (assignment_expression "puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4)" (subscript_expression "puVar25[6]" (identifier "puVar25") ([ "[") (number_literal "6") (] "]")) (= "=") (binary_expression "*(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18 ^ uVar4" (binary_expression "*(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)\n                       ^ uVar18" (binary_expression "*(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)" (pointer_expression "*(uint *)(&DAT_00198220 + uVar28 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar28 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar28 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar28 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar28 * 4" (identifier "uVar28") (* "*") (number_literal "4"))) () ")")))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar23 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar23 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar23 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar23 * 4" (identifier "uVar23") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar18")) (^ "^") (identifier "uVar4")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar9 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar9 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar9 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar9 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar9 * 4" (identifier "uVar9") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4);" (assignment_expression "puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4)" (subscript_expression "puVar25[7]" (identifier "puVar25") ([ "[") (number_literal "7") (] "]")) (= "=") (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^\n                       *(uint *)(&DAT_00197a20 + uVar10 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)\n                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + uVar28 * 4)" (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uVar22 >> 0x18) * 4" (call_expression "(ulong)(uVar22 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar22 >> 0x18)" (( "(") (binary_expression "uVar22 >> 0x18" (identifier "uVar22") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")")))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar28 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar28 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar28 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar28 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar28 * 4" (identifier "uVar28") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar8 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar8 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar8 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar8 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar8 * 4" (identifier "uVar8") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar14 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar14 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar14 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar14 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar14 * 4" (identifier "uVar14") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar10 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar10 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar10 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);" (assignment_expression "uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4)" (identifier "uVar6") (= "=") (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6 ^ uVar17" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4 ^ uVar6" (binary_expression "*(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                  uVar4" (pointer_expression "*(uint *)(&DAT_00197620 + uVar11 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar11 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar11 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar11 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar11 * 4" (identifier "uVar11") (* "*") (number_literal "4"))) () ")")))) (^ "^") (identifier "uVar4")) (^ "^") (identifier "uVar6")) (^ "^") (identifier "uVar17")) (^ "^") (identifier "uVar24")) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar15 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar15 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar15 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar15 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar15 * 4" (identifier "uVar15") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar15 = (ulong)(uVar6 >> 8 & 0xff);" (assignment_expression "uVar15 = (ulong)(uVar6 >> 8 & 0xff)" (identifier "uVar15") (= "=") (call_expression "(ulong)(uVar6 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 >> 8 & 0xff)" (( "(") (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" (identifier "uVar6") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar11 = (ulong)(uVar6 & 0xff);" (assignment_expression "uVar11 = (ulong)(uVar6 & 0xff)" (identifier "uVar11") (= "=") (call_expression "(ulong)(uVar6 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 & 0xff)" (( "(") (binary_expression "uVar6 & 0xff" (identifier "uVar6") (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);" (assignment_expression "uVar23 = (ulong)(uVar6 >> 0x10 & 0xff)" (identifier "uVar23") (= "=") (call_expression "(ulong)(uVar6 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar6 >> 0x10 & 0xff" (binary_expression "uVar6 >> 0x10" (identifier "uVar6") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar19 = (ulong)(uVar6 >> 0x18);" (assignment_expression "uVar19 = (ulong)(uVar6 >> 0x18)" (identifier "uVar19") (= "=") (call_expression "(ulong)(uVar6 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar6 >> 0x18)" (( "(") (binary_expression "uVar6 >> 0x18" (identifier "uVar6") (>> ">>") (number_literal "0x18")) () ")")))) (; ";")) (expression_statement "uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4);" (assignment_expression "uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4)" (identifier "uVar13") (= "=") (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar15 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar19 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4) ^\n                   uVar21" (pointer_expression "*(uint *)(&DAT_00197a20 + uVar23 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar23 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar23 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar23 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar23 * 4" (identifier "uVar23") (* "*") (number_literal "4"))) () ")")))) (^ "^") (identifier "uVar21")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar10 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar10 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar10 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar10 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar19 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar19 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar19 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar19 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar19 * 4" (identifier "uVar19") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar11 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar11 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar11 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar11 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar11 * 4" (identifier "uVar11") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar15 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar15 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar15 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar15 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar15 * 4" (identifier "uVar15") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar20 = (ulong)(uVar13 >> 8 & 0xff);" (assignment_expression "uVar20 = (ulong)(uVar13 >> 8 & 0xff)" (identifier "uVar20") (= "=") (call_expression "(ulong)(uVar13 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar13 >> 8 & 0xff)" (( "(") (binary_expression "uVar13 >> 8 & 0xff" (binary_expression "uVar13 >> 8" (identifier "uVar13") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4)" (identifier "uVar18") (= "=") (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "(ulong)(uVar13 & 0xff) * 4" (call_expression "(ulong)(uVar13 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar13 & 0xff)" (( "(") (binary_expression "uVar13 & 0xff" (identifier "uVar13") (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar20 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar20 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar20 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar20 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar20 * 4" (identifier "uVar20") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar8 = (ulong)(uVar13 >> 0x18);" (assignment_expression "uVar8 = (ulong)(uVar13 >> 0x18)" (identifier "uVar8") (= "=") (call_expression "(ulong)(uVar13 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar13 >> 0x18)" (( "(") (binary_expression "uVar13 >> 0x18" (identifier "uVar13") (>> ">>") (number_literal "0x18")) () ")")))) (; ";")) (expression_statement "uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);" (assignment_expression "uVar10 = (ulong)(uVar13 >> 0x10 & 0xff)" (identifier "uVar10") (= "=") (call_expression "(ulong)(uVar13 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar13 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar13 >> 0x10 & 0xff" (binary_expression "uVar13 >> 0x10" (identifier "uVar13") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4);" (assignment_expression "uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4)" (identifier "uVar24") (= "=") (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^\n                   *(uint *)(&DAT_00197a20 + uVar10 * 4)" (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17" (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^\n                   *(uint *)(&DAT_00197620 + uVar8 * 4)" (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18" (binary_expression "uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4)" (identifier "uVar27") (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar9 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar9 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar9 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar9 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar9 * 4" (identifier "uVar9") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar18")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar8 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar8 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar8 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar8 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar8 * 4" (identifier "uVar8") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar17")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar10 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar10 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar10 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar9 = (ulong)(uVar24 >> 8 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar24 >> 8 & 0xff)" (identifier "uVar9") (= "=") (call_expression "(ulong)(uVar24 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar24 >> 8 & 0xff)" (( "(") (binary_expression "uVar24 >> 8 & 0xff" (binary_expression "uVar24 >> 8" (identifier "uVar24") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);" (assignment_expression "uVar16 = (ulong)(uVar24 >> 0x10 & 0xff)" (identifier "uVar16") (= "=") (call_expression "(ulong)(uVar24 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar24 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar24 >> 0x10 & 0xff" (binary_expression "uVar24 >> 0x10" (identifier "uVar24") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4);" (assignment_expression "uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4)" (identifier "uVar12") (= "=") (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00198220 + uVar9 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4)" (binary_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22" (pointer_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar16 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar16 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar16 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar16 * 4" (identifier "uVar16") (* "*") (number_literal "4"))) () ")")))) (^ "^") (identifier "uVar22")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar14 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar14 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar14 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar14 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar14 * 4" (identifier "uVar14") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "(ulong)(uVar24 & 0xff) * 4" (call_expression "(ulong)(uVar24 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar24 & 0xff)" (( "(") (binary_expression "uVar24 & 0xff" (identifier "uVar24") (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "(ulong)(uVar24 >> 0x18) * 4" (call_expression "(ulong)(uVar24 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar24 >> 0x18)" (( "(") (binary_expression "uVar24 >> 0x18" (identifier "uVar24") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar9 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar9 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar9 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar9 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar9 * 4" (identifier "uVar9") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);" (assignment_expression "uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(&DAT_00198220 + uVar23 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar23 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar23 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar23 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar23 * 4" (identifier "uVar23") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);" (assignment_expression "puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" (subscript_expression "puVar25[8]" (identifier "puVar25") ([ "[") (number_literal "8") (] "]")) (= "=") (binary_expression "*(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)\n                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + uVar16 * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar15 * 4)" (pointer_expression "*(uint *)(&DAT_00198220 + uVar16 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar16 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar16 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar16 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar16 * 4" (identifier "uVar16") (* "*") (number_literal "4"))) () ")")))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar15 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar15 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar15 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar15 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar15 * 4" (identifier "uVar15") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar11 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar11 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar11 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar11 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar11 * 4" (identifier "uVar11") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "(ulong)(uVar12 >> 0x18) * 4" (call_expression "(ulong)(uVar12 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar12 >> 0x18)" (( "(") (binary_expression "uVar12 >> 0x18" (identifier "uVar12") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "(ulong)(uVar12 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar12 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar12 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar12 >> 0x10 & 0xff" (binary_expression "uVar12 >> 0x10" (identifier "uVar12") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);" (assignment_expression "uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4)" (identifier "uVar27") (= "=") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar15 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar15 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar15 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar15 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar15 * 4" (identifier "uVar15") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);" (assignment_expression "uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4)" (identifier "uVar21") (= "=") (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "(ulong)(uVar24 >> 0x18) * 4" (call_expression "(ulong)(uVar24 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar24 >> 0x18)" (( "(") (binary_expression "uVar24 >> 0x18" (identifier "uVar24") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);" (assignment_expression "puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" (subscript_expression "puVar25[9]" (identifier "puVar25") ([ "[") (number_literal "9") (] "]")) (= "=") (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^\n                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4" (binary_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^\n                       *(uint *)(&DAT_00197e20 + uVar19 * 4)" (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "(ulong)(uVar12 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar12 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar12 >> 8 & 0xff)" (( "(") (binary_expression "uVar12 >> 8 & 0xff" (binary_expression "uVar12 >> 8" (identifier "uVar12") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")")))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar19 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar19 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar19 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar19 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar19 * 4" (identifier "uVar19") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar4")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "(ulong)(uVar12 & 0xff) * 4" (call_expression "(ulong)(uVar12 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar12 & 0xff)" (( "(") (binary_expression "uVar12 & 0xff" (identifier "uVar12") (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uVar12 >> 0x18) * 4" (call_expression "(ulong)(uVar12 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar12 >> 0x18)" (( "(") (binary_expression "uVar12 >> 0x18" (identifier "uVar12") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);" (assignment_expression "puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4)" (subscript_expression "puVar25[10]" (identifier "puVar25") ([ "[") (number_literal "10") (] "]")) (= "=") (binary_expression "uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4)" (binary_expression "uVar18 ^ uVar27 ^ uVar17 ^ uVar21" (binary_expression "uVar18 ^ uVar27 ^ uVar17" (binary_expression "uVar18 ^ uVar27" (identifier "uVar18") (^ "^") (identifier "uVar27")) (^ "^") (identifier "uVar17")) (^ "^") (identifier "uVar21")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar16 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar16 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar16 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar16 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar16 * 4" (identifier "uVar16") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4)" (identifier "uVar18") (= "=") (pointer_expression "*(uint *)(&DAT_00198220 + uVar10 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar10 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar10 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar10 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(&DAT_00197620 + uVar20 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar20 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar20 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar20 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar20 * 4" (identifier "uVar20") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4);" (assignment_expression "puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4)" (subscript_expression "puVar25[0xb]" (identifier "puVar25") ([ "[") (number_literal "0xb") (] "]")) (= "=") (binary_expression "uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^\n                         *(uint *)(&DAT_00197a20 + uVar9 * 4)" (binary_expression "uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^\n                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4)" (binary_expression "uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4)" (binary_expression "uVar18 ^ uVar17" (identifier "uVar18") (^ "^") (identifier "uVar17")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar8 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar8 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar8 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar8 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar8 * 4" (identifier "uVar8") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "(ulong)(uVar24 & 0xff) * 4" (call_expression "(ulong)(uVar24 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar24 & 0xff)" (( "(") (binary_expression "uVar24 & 0xff" (identifier "uVar24") (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar9 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar9 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar9 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar9 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar9 * 4" (identifier "uVar9") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;" (assignment_expression "uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24" (identifier "uVar24") (= "=") (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar19 * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^\n                            *(uint *)(&DAT_00197a20 + uVar8 * 4)" (binary_expression "uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4)" (identifier "uVar17") (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uVar13 & 0xff) * 4" (call_expression "(ulong)(uVar13 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar13 & 0xff)" (( "(") (binary_expression "uVar13 & 0xff" (identifier "uVar13") (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar8 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar8 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar8 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar8 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar8 * 4" (identifier "uVar8") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar19 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar19 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar19 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar19 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar19 * 4" (identifier "uVar19") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar18")) (^ "^") (identifier "uVar24"))) (; ";")) (expression_statement "uVar14 = (ulong)(uVar24 & 0xff);" (assignment_expression "uVar14 = (ulong)(uVar24 & 0xff)" (identifier "uVar14") (= "=") (call_expression "(ulong)(uVar24 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar24 & 0xff)" (( "(") (binary_expression "uVar24 & 0xff" (identifier "uVar24") (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);" (assignment_expression "uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4)" (identifier "uVar22") (= "=") (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "(ulong)(uVar24 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar24 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar24 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar24 >> 0x10 & 0xff" (binary_expression "uVar24 >> 0x10" (identifier "uVar24") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar16 = (ulong)(byte)(uVar24 >> 8);" (assignment_expression "uVar16 = (ulong)(byte)(uVar24 >> 8)" (identifier "uVar16") (= "=") (call_expression "(ulong)(byte)(uVar24 >> 8)" (call_expression "(ulong)(byte)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(byte)" (( "(") (identifier "byte") () ")"))) (argument_list "(uVar24 >> 8)" (( "(") (binary_expression "uVar24 >> 8" (identifier "uVar24") (>> ">>") (number_literal "8")) () ")")))) (; ";")) (expression_statement "uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22;" (assignment_expression "uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22" (identifier "uVar21") (= "=") (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^\n                   uVar22" (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197620 + uVar14 * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^\n                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6" (pointer_expression "*(uint *)(&DAT_00197620 + uVar15 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar15 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar15 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar15 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar15 * 4" (identifier "uVar15") (* "*") (number_literal "4"))) () ")")))) (^ "^") (identifier "uVar6")) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "(ulong)(uVar24 >> 0x18) * 4" (call_expression "(ulong)(uVar24 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar24 >> 0x18)" (( "(") (binary_expression "uVar24 >> 0x18" (identifier "uVar24") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar14 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar14 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar14 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar14 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar14 * 4" (identifier "uVar14") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar16 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar16 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar16 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar16 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar16 * 4" (identifier "uVar16") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar22"))) (; ";")) (expression_statement "uVar15 = (ulong)(uVar21 & 0xff);" (assignment_expression "uVar15 = (ulong)(uVar21 & 0xff)" (identifier "uVar15") (= "=") (call_expression "(ulong)(uVar21 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar21 & 0xff)" (( "(") (binary_expression "uVar21 & 0xff" (identifier "uVar21") (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar9 = (ulong)(uVar21 >> 8 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar21 >> 8 & 0xff)" (identifier "uVar9") (= "=") (call_expression "(ulong)(uVar21 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar21 >> 8 & 0xff)" (( "(") (binary_expression "uVar21 >> 8 & 0xff" (binary_expression "uVar21 >> 8" (identifier "uVar21") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);" (assignment_expression "uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" (identifier "uVar27") (= "=") (binary_expression "uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^\n                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" (binary_expression "uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                   *(uint *)(&DAT_00197e20 + uVar9 * 4)" (binary_expression "uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^\n                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" (binary_expression "uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4)" (binary_expression "uVar13 ^ uVar4" (identifier "uVar13") (^ "^") (identifier "uVar4")) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar15 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar15 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar15 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar15 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar15 * 4" (identifier "uVar15") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "(ulong)(uVar21 >> 0x18) * 4" (call_expression "(ulong)(uVar21 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar21 >> 0x18)" (( "(") (binary_expression "uVar21 >> 0x18" (identifier "uVar21") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar9 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar9 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar9 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar9 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar9 * 4" (identifier "uVar9") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "(ulong)(uVar21 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar21 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar21 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar21 >> 0x10 & 0xff" (binary_expression "uVar21 >> 0x10" (identifier "uVar21") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);" (assignment_expression "uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4)" (identifier "uVar13") (= "=") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar15 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar15 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar15 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar15 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar15 * 4" (identifier "uVar15") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);" (assignment_expression "uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uVar27 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar27 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar27 >> 0x10 & 0xff" (binary_expression "uVar27 >> 0x10" (identifier "uVar27") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar10 = (ulong)(uVar27 >> 0x18);" (assignment_expression "uVar10 = (ulong)(uVar27 >> 0x18)" (identifier "uVar10") (= "=") (call_expression "(ulong)(uVar27 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar27 >> 0x18)" (( "(") (binary_expression "uVar27 >> 0x18" (identifier "uVar27") (>> ">>") (number_literal "0x18")) () ")")))) (; ";")) (expression_statement "uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;" (assignment_expression "uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6" (identifier "uVar7") (= "=") (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6" (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^\n                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^\n                  *(uint *)(&DAT_00197620 + uVar10 * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^\n                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4)" (binary_expression "uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4)" (identifier "uVar12") (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar11 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar11 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar11 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar11 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar11 * 4" (identifier "uVar11") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "(ulong)(uVar27 & 0xff) * 4" (call_expression "(ulong)(uVar27 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar27 & 0xff)" (( "(") (binary_expression "uVar27 & 0xff" (identifier "uVar27") (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar10 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar10 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar10 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar10 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "(ulong)(uVar27 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar27 >> 8 & 0xff)" (( "(") (binary_expression "uVar27 >> 8 & 0xff" (binary_expression "uVar27 >> 8" (identifier "uVar27") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar6"))) (; ";")) (expression_statement "uVar8 = (ulong)uVar7;" (assignment_expression "uVar8 = (ulong)uVar7" (identifier "uVar8") (= "=") (cast_expression "(ulong)uVar7" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar7"))) (; ";")) (expression_statement "uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);" (assignment_expression "uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4)" (identifier "uVar12") (= "=") (pointer_expression "*(uint *)(&DAT_00198220 + uVar14 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar14 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar14 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar14 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar14 * 4" (identifier "uVar14") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "puVar26 = puVar25 + 0x10;" (assignment_expression "puVar26 = puVar25 + 0x10" (identifier "puVar26") (= "=") (binary_expression "puVar25 + 0x10" (identifier "puVar25") (+ "+") (number_literal "0x10"))) (; ";")) (expression_statement "uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);" (assignment_expression "uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(uVar27 & 0xff) * 4" (call_expression "(ulong)(uVar27 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar27 & 0xff)" (( "(") (binary_expression "uVar27 & 0xff" (identifier "uVar27") (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);" (assignment_expression "uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4)" (identifier "uVar1") (= "=") (pointer_expression "*(uint *)(&DAT_00197620 + uVar9 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar9 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar9 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar9 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar9 * 4" (identifier "uVar9") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);" (assignment_expression "puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (subscript_expression "puVar25[0xd]" (identifier "puVar25") ([ "[") (number_literal "0xd") (] "]")) (= "=") (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^\n                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" (binary_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar15 * 4)" (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "(ulong)(uVar21 >> 0x18) * 4" (call_expression "(ulong)(uVar21 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar21 >> 0x18)" (( "(") (binary_expression "uVar21 >> 0x18" (identifier "uVar21") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")")))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar15 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar15 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar15 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar15 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar15 * 4" (identifier "uVar15") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "(ulong)(uVar21 >> 0x10 & 0xff) * 4" (call_expression "(ulong)(uVar21 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar21 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar21 >> 0x10 & 0xff" (binary_expression "uVar21 >> 0x10" (identifier "uVar21") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar4")) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4)" (( "(") (binary_expression "&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "(ulong)(uVar27 >> 8 & 0xff) * 4" (call_expression "(ulong)(uVar27 >> 8 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar27 >> 8 & 0xff)" (( "(") (binary_expression "uVar27 >> 8 & 0xff" (binary_expression "uVar27 >> 8" (identifier "uVar27") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")"))) (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);" (assignment_expression "uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4)" (identifier "uVar2") (= "=") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar14 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar14 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar14 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar14 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar14 * 4" (identifier "uVar14") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);" (assignment_expression "uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4)" (identifier "uVar18") (= "=") (pointer_expression "*(uint *)(&DAT_00197a20 + uVar10 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197a20 + uVar10 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197a20 + uVar10 * 4)" (( "(") (binary_expression "&DAT_00197a20 + uVar10 * 4" (pointer_expression "&DAT_00197a20" (& "&") (identifier "DAT_00197a20")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);" (assignment_expression "uVar9 = (ulong)(uVar7 >> 0x10 & 0xff)" (identifier "uVar9") (= "=") (call_expression "(ulong)(uVar7 >> 0x10 & 0xff)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar7 >> 0x10 & 0xff)" (( "(") (binary_expression "uVar7 >> 0x10 & 0xff" (binary_expression "uVar7 >> 0x10" (identifier "uVar7") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);" (assignment_expression "uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4)" (identifier "uVar3") (= "=") (pointer_expression "*(uint *)(&DAT_00197620 + uVar16 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar16 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar16 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar16 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar16 * 4" (identifier "uVar16") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);" (assignment_expression "uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + (ulong)(byte)uVar7 * 4)" (( "(") (binary_expression "&DAT_00197e20 + (ulong)(byte)uVar7 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "(ulong)(byte)uVar7 * 4" (cast_expression "(ulong)(byte)uVar7" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (cast_expression "(byte)uVar7" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar7"))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;" (assignment_expression "puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6" (subscript_expression "puVar25[0xc]" (identifier "puVar25") ([ "[") (number_literal "0xc") (] "]")) (= "=") (binary_expression "uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6" (binary_expression "uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4)" (binary_expression "uVar13 ^ uVar12 ^ uVar1" (binary_expression "uVar13 ^ uVar12" (identifier "uVar13") (^ "^") (identifier "uVar12")) (^ "^") (identifier "uVar1")) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + uVar10 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + uVar10 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + uVar10 * 4)" (( "(") (binary_expression "&DAT_00198220 + uVar10 * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar6"))) (; ";")) (expression_statement "puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4);" (assignment_expression "puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4)" (subscript_expression "puVar25[0xe]" (identifier "puVar25") ([ "[") (number_literal "0xe") (] "]")) (= "=") (binary_expression "uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^\n                         *(uint *)(&DAT_00197e20 + uVar9 * 4)" (binary_expression "uVar2 ^ uVar3 ^ uVar18 ^\n                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4)" (binary_expression "uVar2 ^ uVar3 ^ uVar18" (binary_expression "uVar2 ^ uVar3" (identifier "uVar2") (^ "^") (identifier "uVar3")) (^ "^") (identifier "uVar18")) (^ "^") (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "(ulong)(uVar7 >> 0x18) * 4" (call_expression "(ulong)(uVar7 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar7 >> 0x18)" (( "(") (binary_expression "uVar7 >> 0x18" (identifier "uVar7") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (pointer_expression "*(uint *)(&DAT_00197e20 + uVar9 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197e20 + uVar9 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197e20 + uVar9 * 4)" (( "(") (binary_expression "&DAT_00197e20 + uVar9 * 4" (pointer_expression "&DAT_00197e20" (& "&") (identifier "DAT_00197e20")) (+ "+") (binary_expression "uVar9 * 4" (identifier "uVar9") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4);" (assignment_expression "puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4)" (subscript_expression "puVar25[0xf]" (identifier "puVar25") ([ "[") (number_literal "0xf") (] "]")) (= "=") (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^\n                         *(uint *)(&DAT_00197620 + uVar9 * 4)" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" (binary_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^\n                         uVar22" (pointer_expression "*(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4)" (( "(") (binary_expression "&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4" (pointer_expression "&DAT_00198220" (& "&") (identifier "DAT_00198220")) (+ "+") (binary_expression "(ulong)(byte)(uVar7 >> 8) * 4" (call_expression "(ulong)(byte)(uVar7 >> 8)" (call_expression "(ulong)(byte)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(byte)" (( "(") (identifier "byte") () ")"))) (argument_list "(uVar7 >> 8)" (( "(") (binary_expression "uVar7 >> 8" (identifier "uVar7") (>> ">>") (number_literal "8")) () ")"))) (* "*") (number_literal "4"))) () ")")))) (^ "^") (identifier "uVar22")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4)" (( "(") (binary_expression "&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "(ulong)(uVar24 >> 0x18) * 4" (call_expression "(ulong)(uVar24 >> 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar24 >> 0x18)" (( "(") (binary_expression "uVar24 >> 0x18" (identifier "uVar24") (>> ">>") (number_literal "0x18")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) (^ "^") (identifier "uVar17")) (^ "^") (pointer_expression "*(uint *)(&DAT_00197620 + uVar9 * 4)" (* "*") (cast_expression "(uint *)(&DAT_00197620 + uVar9 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00197620 + uVar9 * 4)" (( "(") (binary_expression "&DAT_00197620 + uVar9 * 4" (pointer_expression "&DAT_00197620" (& "&") (identifier "DAT_00197620")) (+ "+") (binary_expression "uVar9 * 4" (identifier "uVar9") (* "*") (number_literal "4"))) () ")")))))) (; ";")) (expression_statement "puVar25 = puVar26;" (assignment_expression "puVar25 = puVar26" (identifier "puVar25") (= "=") (identifier "puVar26")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(puVar26 != param_4 + 0x20)" (( "(") (binary_expression "puVar26 != param_4 + 0x20" (identifier "puVar26") (!= "!=") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20"))) () ")")) (; ";")) (expression_statement "uVar5 = 0;" (assignment_expression "uVar5 = 0" (identifier "uVar5") (= "=") (number_literal "0")) (; ";")) (expression_statement "param_4[0x20] = param_2;" (assignment_expression "param_4[0x20] = param_2" (subscript_expression "param_4[0x20]" (identifier "param_4") ([ "[") (number_literal "0x20") (] "]")) (= "=") (identifier "param_2")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      uVar5 = 4;\n    }" (else "else") (compound_statement "{\n      uVar5 = 4;\n    }" ({ "{") (expression_statement "uVar5 = 4;" (assignment_expression "uVar5 = 4" (identifier "uVar5") (= "=") (number_literal "4")) (; ";")) (} "}")))) (if_statement "if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n      __stack_chk_fail();\n    }" (if "if") (parenthesized_expression "(lStack_40 != *(long *)(in_FS_OFFSET + 0x28))" (( "(") (binary_expression "lStack_40 != *(long *)(in_FS_OFFSET + 0x28)" (identifier "lStack_40") (!= "!=") (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" (* "*") (cast_expression "(long *)(in_FS_OFFSET + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_FS_OFFSET + 0x28)" (( "(") (binary_expression "in_FS_OFFSET + 0x28" (identifier "in_FS_OFFSET") (+ "+") (number_literal "0x28")) () ")"))))) () ")")) (compound_statement "{\n                    \n      __stack_chk_fail();\n    }" ({ "{") (expression_statement "__stack_chk_fail();" (call_expression "__stack_chk_fail()" (identifier "__stack_chk_fail") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (return_statement "return uVar5;" (return "return") (identifier "uVar5") (; ";")) (} "}"))) (expression_statement "crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);" (call_expression "crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1)" (identifier "crypt_argchk") (argument_list "("skey != NULL","src/ciphers/cast5.c",0x1a1)" (( "(") (string_literal ""skey != NULL"" (" """) (string_content "skey != NULL") (" """)) (, ",") (string_literal ""src/ciphers/cast5.c"" (" """) (string_content "src/ciphers/cast5.c") (" """)) (, ",") (number_literal "0x1a1") () ")"))) (; ";")) (} "}")))

/* WARNING: Switch with 1 destination removed at 0x001148c0 */

int function_1(type_1 *var_2,int var_6,int var_5,type_2 *var_4)

{
  type_3 *var_31;
  int iVar2;
  type_4 var_24;
  type_4 var_20;
  type_4 var_22;
  type_4 var_21;
  type_5 var_12;
  type_6 bVar11;
  type_3 var_16;
  type_4 var_27;
  type_4 var_25;
  type_4 var_19;
  type_4 var_30;
  type_3 var_14;
  type_4 var_17;
  type_4 uVar16;
  type_4 var_29;
  type_4 var_23;
  type_4 var_26;
  type_4 uVar20;
  type_4 uVar21;
  type_5 uVar22;
  type_4 var_15;
  type_4 var_28;
  type_2 *psVar25;
  type_4 var_18;
  long var_1;
  type_6 bStack_c8;
  type_4 var_13;
  type_4 var_10;
  type_4 var_9;
  type_4 var_11;
  long var_32;
  
  var_32 = *(long *)(var_1 + 0x28);
  if (var_2 == (type_1 *)0x0) {
                    /* WARNING: Subroutine does not return */
    var_3("key != NULL","src/ciphers/cast5.c",0x1a0);
  }
  if (var_4 != (type_2 *)0x0) {
    if (((var_5 & 0xffffffefU) == 0) || (var_5 == 0xc)) {
      if (((var_5 != 0xc) || (iVar2 = 4, var_6 < 0xb)) && (iVar2 = 3, var_6 - 5U < 0xc)) {
        var_7(&var_13,0x10);
        var_8(&var_13,var_2,(long)var_6,0x10);
        var_18 = var_9 >> 0x18 | (var_9 & 0xff0000) >> 8 | (var_9 & 0xff00) << 8 |
                 var_9 << 0x18;
        var_24 = S6[var_9 >> 0x18];
        var_23 = var_10 >> 0x18 | (var_10 & 0xff0000) >> 8 | (var_10 & 0xff00) << 8 |
                 var_10 << 0x18;
        var_12 = (type_5)(var_11 >> 0x18 | (var_11 & 0xff0000) >> 8 | (var_11 & 0xff00) << 8
                       | var_11 << 0x18);
        var_16 = S7[var_9 & 0xff];
        var_14 = S6[var_12 & 0xff];
        var_15 = var_13 >> 0x18 | (var_13 & 0xff0000) >> 8 | (var_13 & 0xff00) << 8 |
                 var_13 << 0x18;
        psVar25 = var_4;
        do {
          var_17 = var_14 ^ S5[var_12 >> 0x10 & 0xff] ^ S8[var_12 >> 8 & 0xff] ^ S7[var_12 >> 0x18] ^
                            var_15 ^ var_16;
          var_27 = var_17 >> 0x10 & 0xff;
          uVar20 = var_17 >> 0x18;
          var_28 = var_17 & 0xff;
          var_15 = S7[var_27];
          uVar16 = var_17 >> 8 & 0xff;
          var_19 = S8[var_18 >> 8 & 0xff] ^ var_18 ^ S5[uVar20] ^ S8[var_28] ^ S6[uVar16] ^ var_15;
          var_25 = var_19 >> 8 & 0xff;
          uVar21 = var_19 >> 0x10 & 0xff;
          var_20 = S6[var_25];
          var_30 = var_19 >> 0x18;
          var_21 = S7[uVar21];
          var_25 = S8[var_25];
          bStack_c8 = (type_6)var_19;
          uVar22 = (type_5)bStack_c8;
          var_22 = (type_4)var_12 ^ S5[var_18 >> 0x10 & 0xff] ^ S5[uVar22] ^ S8[var_30] ^ var_20 ^ var_21;
          var_18 = S5[var_22 >> 8 & 0xff];
          var_29 = var_22 >> 0x10 & 0xff;
          var_24 = S7[var_22 & 0xff] ^ S8[var_22 >> 0x18] ^ var_18 ^ S6[var_29] ^ var_23 ^ var_24;
          (psVar25->des).ek[0] = S7[uVar22] ^ S5[uVar16] ^ var_25 ^ S5[var_22 >> 0x18] ^ S6[var_29];
          (psVar25->des).ek[1] = S8[var_30] ^ var_20 ^ var_21 ^ S6[var_22 & 0xff] ^ var_18;
          var_18 = S8[uVar16];
          (psVar25->des).ek[2] =
               S5[var_24 >> 0x18] ^ S7[var_28] ^ var_18 ^ S7[var_29] ^ S6[var_24 >> 0x10 & 0xff];
          var_23 = S6[uVar22];
          var_20 = S7[var_30];
          (psVar25->des).ek[3] =
               var_15 ^ S8[uVar20] ^ S6[var_24 & 0xff] ^ S8[var_24 >> 0x18] ^ S5[var_24 >> 8 & 0xff];
          var_22 = var_23 ^ var_20 ^ S7[uVar20] ^ var_25 ^ S5[uVar21] ^ var_22;
          var_29 = var_22 & 0xff;
          var_23 = var_22 >> 0x10 & 0xff;
          var_26 = S7[var_23] ^
                   var_18 ^ var_17 ^ S5[var_22 >> 0x18] ^ S8[var_29] ^ S6[var_22 >> 8 & 0xff];
          uVar20 = var_26 & 0xff;
          var_15 = S6[var_26 >> 8 & 0xff];
          var_21 = var_26 >> 0x10 & 0xff;
          var_27 = var_19 ^ S5[var_27] ^ S5[uVar20] ^ S8[var_26 >> 0x18] ^ var_15 ^ S7[var_21];
          var_18 = var_27 >> 0x18;
          var_25 = var_27 >> 0x10 & 0xff;
          var_17 = var_27 & 0xff;
          var_19 = var_27 >> 8 & 0xff;
          var_20 = var_24 ^ S6[var_28] ^ S7[var_17] ^ S8[var_18] ^ S5[var_19] ^ S6[var_25];
          var_24 = S7[var_20 >> 0x18];
          var_30 = var_20 >> 8 & 0xff;
          uVar16 = var_20 >> 0x10 & 0xff;
          (psVar25->des).ek[4] =
               S6[var_22 >> 8 & 0xff] ^ S5[var_29] ^ S5[var_18] ^ var_24 ^ S8[uVar16];
          (psVar25->des).ek[5] =
               S5[var_23] ^ S6[var_22 >> 0x18] ^ S8[var_20 & 0xff] ^ S7[var_30] ^ S6[uVar16];
          var_18 = S7[var_18];
          var_23 = S6[var_20 & 0xff];
          (psVar25->des).ek[6] = S5[uVar20] ^ S7[var_29] ^ var_15 ^ var_18 ^ S8[var_25];
          (psVar25->des).ek[7] =
               S6[var_26 >> 0x18] ^ S8[uVar20] ^ S5[var_21] ^ S8[var_17] ^ S7[var_19];
          var_28 = S8[var_30] ^ var_18 ^ var_22 ^ var_24 ^ var_23 ^ S5[uVar16];
          var_22 = var_28 >> 0x18;
          uVar16 = var_28 >> 8 & 0xff;
          var_30 = var_28 & 0xff;
          var_23 = var_28 >> 0x10 & 0xff;
          var_29 = S7[var_23] ^ var_27 ^ S8[var_19] ^ S5[var_22] ^ S8[var_30] ^ S6[uVar16];
          uVar21 = var_29 >> 8 & 0xff;
          var_24 = S5[var_29 & 0xff];
          var_18 = S6[uVar21];
          var_27 = var_29 >> 0x18;
          var_19 = var_29 >> 0x10 & 0xff;
          var_15 = var_20 ^ S5[var_25] ^ var_24 ^ S8[var_27] ^ var_18 ^ S7[var_19];
          var_25 = var_15 >> 8 & 0xff;
          uVar20 = var_15 >> 0x10 & 0xff;
          var_17 = S6[uVar20] ^
                   var_26 ^ S6[var_17] ^ S7[var_15 & 0xff] ^ S8[var_15 >> 0x18] ^ S5[var_25];
          var_20 = S5[var_23];
          (psVar25->des).ek[8] =
               S5[uVar20] ^ S6[uVar16] ^ S5[var_30] ^ S7[var_17 >> 0x18] ^ S8[var_17 >> 0x10 & 0xff]
          ;
          var_23 = S7[uVar16];
          var_21 = S7[var_15 >> 0x18];
          (psVar25->des).ek[9] =
               S7[var_17 >> 8 & 0xff] ^ S6[var_22] ^ var_20 ^ S8[var_17 & 0xff] ^ S6[var_17 >> 0x18];
          (psVar25->des).ek[10] = var_24 ^ var_23 ^ var_18 ^ var_21 ^ S8[uVar20];
          var_24 = S5[var_19];
          var_18 = S8[uVar21];
          (psVar25->des).ek[0xb] = var_24 ^ var_18 ^ S6[var_27] ^ S8[var_15 & 0xff] ^ S7[var_25];
          var_15 = var_18 ^ S6[var_29 & 0xff] ^ S7[var_27] ^ S7[var_22] ^ var_24 ^ var_15;
          var_19 = var_15 & 0xff;
          var_21 = S7[var_15 >> 0x10 & 0xff];
          bVar11 = (type_6)(var_15 >> 8);
          var_23 = S8[uVar16] ^ var_28 ^ S5[var_15 >> 0x18] ^ S8[var_19] ^ S6[bVar11] ^ var_21;
          uVar20 = var_23 & 0xff;
          var_27 = var_23 >> 8 & 0xff;
          var_18 = var_29 ^ var_20 ^ S5[uVar20] ^ S8[var_23 >> 0x18] ^ S6[var_27] ^
                   S7[var_23 >> 0x10 & 0xff];
          var_20 = S7[uVar20];
          var_25 = S6[var_18 >> 0x10 & 0xff];
          uVar16 = var_18 >> 0x18;
          var_17 = var_17 ^ S6[var_30] ^ S7[var_18 & 0xff] ^ S8[uVar16] ^ S5[var_18 >> 8 & 0xff] ^
                   var_25;
          var_12 = (type_5)var_17;
          var_22 = S5[var_19];
          var_31 = (psVar25->des).ek;
          var_24 = S6[var_18 & 0xff];
          var_27 = S8[var_27];
          (psVar25->des).ek[0xd] =
               S8[var_23 >> 0x18] ^ S6[uVar20] ^ S7[var_23 >> 0x10 & 0xff] ^ var_24 ^
               S5[var_18 >> 8 & 0xff];
          var_19 = S7[var_19];
          var_16 = S7[uVar16];
          var_29 = var_17 >> 0x10 & 0xff;
          var_30 = S8[bVar11];
          var_14 = S6[(type_6)var_17];
          (psVar25->des).ek[0xc] = var_20 ^ var_22 ^ var_27 ^ S5[uVar16] ^ var_25;
          (psVar25->des).ek[0xe] = var_19 ^ var_30 ^ var_16 ^ S5[var_17 >> 0x18] ^ S6[var_29];
          (psVar25->des).ek[0xf] =
               S5[(type_6)(var_17 >> 8)] ^ var_21 ^ S8[var_15 >> 0x18] ^ var_14 ^ S8[var_29];
          psVar25 = (type_2 *)(var_31 + 0x10);
        } while ((type_2 *)(var_31 + 0x10) != (type_2 *)(var_4->des).dk);
        iVar2 = 0;
        (var_4->des).dk[0] = var_6;
      }
    }
    else {
      iVar2 = 4;
    }
    if (var_32 != *(long *)(var_1 + 0x28)) {
                    /* WARNING: Subroutine does not return */
      var_33();
    }
    return iVar2;
  }
                    /* WARNING: Subroutine does not return */
  var_3("skey != NULL","src/ciphers/cast5.c",0x1a1);
}


(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (sized_type_specifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (string_literal (string_content)) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))))) right: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal)))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (identifier)) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (identifier)) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (identifier)) right: (identifier)) right: (identifier)) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (identifier))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal))))))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal))))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (identifier))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (return_statement (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (string_literal (string_content)) (number_literal)))))))

/* WARNING: Switch with 1 destination removed at 0x001148c0 */

undefined8 MASKED(long param_1,uint param_2,uint param_3,uint *param_4)

{
  uint uVar1;
  uint uVar2;
  uint uVar3;
  uint uVar4;
  undefined8 uVar5;
  uint uVar6;
  uint uVar7;
  ulong uVar8;
  ulong uVar9;
  ulong uVar10;
  ulong uVar11;
  uint uVar12;
  uint uVar13;
  ulong uVar14;
  ulong uVar15;
  ulong uVar16;
  uint uVar17;
  uint uVar18;
  ulong uVar19;
  ulong uVar20;
  uint uVar21;
  uint uVar22;
  ulong uVar23;
  uint uVar24;
  uint *puVar25;
  uint *puVar26;
  uint uVar27;
  ulong uVar28;
  long in_FS_OFFSET;
  byte bStack_c8;
  uint uStack_58;
  uint uStack_54;
  uint uStack_50;
  uint uStack_4c;
  long lStack_40;
  
  lStack_40 = *(long *)(in_FS_OFFSET + 0x28);
  if (param_1 == 0) {
                    /* WARNING: Subroutine does not return */
    crypt_argchk("key != NULL","src/ciphers/cast5.c",0x1a0);
  }
  if (param_4 != (uint *)0x0) {
    if (((param_3 & 0xffffffef) == 0) || (param_3 == 0xc)) {
      if (((param_3 != 0xc) || (uVar5 = 4, (int)param_2 < 0xb)) && (uVar5 = 3, param_2 - 5 < 0xc)) {
        zeromem(&uStack_58,0x10);
        __memcpy_chk(&uStack_58,param_1,(long)(int)param_2,0x10);
        uVar27 = uStack_50 >> 0x18 | (uStack_50 & 0xff0000) >> 8 | (uStack_50 & 0xff00) << 8 |
                 uStack_50 << 0x18;
        uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uStack_50 >> 0x18) * 4);
        uVar21 = uStack_54 >> 0x18 | (uStack_54 & 0xff0000) >> 8 | (uStack_54 & 0xff00) << 8 |
                 uStack_54 << 0x18;
        uVar8 = (ulong)(uStack_4c >> 0x18 | (uStack_4c & 0xff0000) >> 8 | (uStack_4c & 0xff00) << 8
                       | uStack_4c << 0x18);
        uVar18 = *(uint *)(&DAT_00197a20 + (ulong)(uStack_50 & 0xff) * 4);
        uVar17 = *(uint *)(&DAT_00197e20 + (uVar8 & 0xff) * 4);
        uVar24 = uStack_58 >> 0x18 | (uStack_58 & 0xff0000) >> 8 | (uStack_58 & 0xff00) << 8 |
                 uStack_58 << 0x18;
        puVar25 = param_4;
        do {
          uVar18 = uVar17 ^ *(uint *)(&DAT_00198220 + (uVar8 >> 0x10 & 0xff) * 4) ^
                            *(uint *)(&DAT_00197620 + (uVar8 >> 8 & 0xff) * 4) ^
                            *(uint *)(&DAT_00197a20 + (uVar8 >> 0x18) * 4) ^ uVar24 ^ uVar18;
          uVar9 = (ulong)(uVar18 >> 0x10 & 0xff);
          uVar15 = (ulong)(uVar18 >> 0x18);
          uVar20 = (ulong)(uVar18 & 0xff);
          uVar17 = *(uint *)(&DAT_00197a20 + uVar9 * 4);
          uVar14 = (ulong)(uVar18 >> 8 & 0xff);
          uVar12 = *(uint *)(&DAT_00197620 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar27 ^
                   *(uint *)(&DAT_00198220 + uVar15 * 4) ^ *(uint *)(&DAT_00197620 + uVar20 * 4) ^
                   *(uint *)(&DAT_00197e20 + uVar14 * 4) ^ uVar17;
          uVar10 = (ulong)(uVar12 >> 8 & 0xff);
          uVar16 = (ulong)(uVar12 >> 0x10 & 0xff);
          uVar24 = *(uint *)(&DAT_00197e20 + uVar10 * 4);
          uVar11 = (ulong)(uVar12 >> 0x18);
          uVar22 = *(uint *)(&DAT_00197a20 + uVar16 * 4);
          uVar13 = *(uint *)(&DAT_00197620 + uVar10 * 4);
          bStack_c8 = (byte)uVar12;
          uVar10 = (ulong)bStack_c8;
          uVar6 = (uint)uVar8 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 0x10 & 0xff) * 4) ^
                  *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^
                  uVar24 ^ uVar22;
          uVar27 = *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 8 & 0xff) * 4);
          uVar8 = (ulong)(uVar6 >> 0x10 & 0xff);
          uVar4 = *(uint *)(&DAT_00197a20 + (ulong)(uVar6 & 0xff) * 4) ^
                  *(uint *)(&DAT_00197620 + (ulong)(uVar6 >> 0x18) * 4) ^ uVar27 ^
                  *(uint *)(&DAT_00197e20 + uVar8 * 4) ^ uVar21 ^ uVar4;
          *puVar25 = *(uint *)(&DAT_00197a20 + uVar10 * 4) ^ *(uint *)(&DAT_00198220 + uVar14 * 4) ^
                     uVar13 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^
                     *(uint *)(&DAT_00197e20 + uVar8 * 4);
          puVar25[1] = *(uint *)(&DAT_00197620 + uVar11 * 4) ^ uVar24 ^ uVar22 ^
                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 & 0xff) * 4) ^ uVar27;
          uVar24 = *(uint *)(&DAT_00197620 + uVar14 * 4);
          puVar25[2] = *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 0x18) * 4) ^
                       *(uint *)(&DAT_00197a20 + uVar20 * 4) ^ uVar24 ^
                       *(uint *)(&DAT_00197a20 + uVar8 * 4) ^
                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 >> 0x10 & 0xff) * 4);
          uVar27 = *(uint *)(&DAT_00197e20 + uVar10 * 4);
          uVar21 = *(uint *)(&DAT_00197a20 + uVar11 * 4);
          puVar25[3] = uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4) ^
                       *(uint *)(&DAT_00197e20 + (ulong)(uVar4 & 0xff) * 4) ^
                       *(uint *)(&DAT_00197620 + (ulong)(uVar4 >> 0x18) * 4) ^
                       *(uint *)(&DAT_00198220 + (ulong)(uVar4 >> 8 & 0xff) * 4);
          uVar6 = uVar27 ^ uVar21 ^ *(uint *)(&DAT_00197a20 + uVar15 * 4) ^ uVar13 ^
                  *(uint *)(&DAT_00198220 + uVar16 * 4) ^ uVar6;
          uVar23 = (ulong)(uVar6 & 0xff);
          uVar19 = (ulong)(uVar6 >> 0x10 & 0xff);
          uVar22 = *(uint *)(&DAT_00197a20 + uVar19 * 4) ^
                   uVar24 ^ uVar18 ^ *(uint *)(&DAT_00198220 + (ulong)(uVar6 >> 0x18) * 4) ^
                   *(uint *)(&DAT_00197620 + uVar23 * 4) ^
                   *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4);
          uVar28 = (ulong)(uVar22 & 0xff);
          uVar18 = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 8 & 0xff) * 4);
          uVar8 = (ulong)(uVar22 >> 0x10 & 0xff);
          uVar21 = uVar12 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^
                   *(uint *)(&DAT_00198220 + uVar28 * 4) ^
                   *(uint *)(&DAT_00197620 + (ulong)(uVar22 >> 0x18) * 4) ^ uVar18 ^
                   *(uint *)(&DAT_00197a20 + uVar8 * 4);
          uVar9 = (ulong)(uVar21 >> 0x10 & 0xff);
          uVar16 = (ulong)(uVar21 >> 0x18);
          uVar14 = (ulong)(uVar21 & 0xff);
          uVar10 = (ulong)(uVar21 >> 8 & 0xff);
          uVar27 = uVar4 ^ *(uint *)(&DAT_00197e20 + uVar20 * 4) ^
                   *(uint *)(&DAT_00197a20 + uVar14 * 4) ^ *(uint *)(&DAT_00197620 + uVar16 * 4) ^
                   *(uint *)(&DAT_00198220 + uVar10 * 4) ^ *(uint *)(&DAT_00197e20 + uVar9 * 4);
          uVar17 = *(uint *)(&DAT_00197a20 + (ulong)(uVar27 >> 0x18) * 4);
          uVar11 = (ulong)(uVar27 >> 8 & 0xff);
          uVar15 = (ulong)(uVar27 >> 0x10 & 0xff);
          puVar25[4] = *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 8 & 0xff) * 4) ^
                       *(uint *)(&DAT_00198220 + uVar23 * 4) ^ *(uint *)(&DAT_00198220 + uVar16 * 4)
                       ^ uVar17 ^ *(uint *)(&DAT_00197620 + uVar15 * 4);
          puVar25[5] = *(uint *)(&DAT_00198220 + uVar19 * 4) ^
                       *(uint *)(&DAT_00197e20 + (ulong)(uVar6 >> 0x18) * 4) ^
                       *(uint *)(&DAT_00197620 + (ulong)(uVar27 & 0xff) * 4) ^
                       *(uint *)(&DAT_00197a20 + uVar11 * 4) ^ *(uint *)(&DAT_00197e20 + uVar15 * 4)
          ;
          uVar4 = *(uint *)(&DAT_00197a20 + uVar16 * 4);
          uVar24 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);
          puVar25[6] = *(uint *)(&DAT_00198220 + uVar28 * 4) ^ *(uint *)(&DAT_00197a20 + uVar23 * 4)
                       ^ uVar18 ^ uVar4 ^ *(uint *)(&DAT_00197620 + uVar9 * 4);
          puVar25[7] = *(uint *)(&DAT_00197e20 + (ulong)(uVar22 >> 0x18) * 4) ^
                       *(uint *)(&DAT_00197620 + uVar28 * 4) ^ *(uint *)(&DAT_00198220 + uVar8 * 4)
                       ^ *(uint *)(&DAT_00197620 + uVar14 * 4) ^
                       *(uint *)(&DAT_00197a20 + uVar10 * 4);
          uVar6 = *(uint *)(&DAT_00197620 + uVar11 * 4) ^
                  uVar4 ^ uVar6 ^ uVar17 ^ uVar24 ^ *(uint *)(&DAT_00198220 + uVar15 * 4);
          uVar15 = (ulong)(uVar6 >> 8 & 0xff);
          uVar11 = (ulong)(uVar6 & 0xff);
          uVar23 = (ulong)(uVar6 >> 0x10 & 0xff);
          uVar19 = (ulong)(uVar6 >> 0x18);
          uVar13 = *(uint *)(&DAT_00197a20 + uVar23 * 4) ^
                   uVar21 ^ *(uint *)(&DAT_00197620 + uVar10 * 4) ^
                   *(uint *)(&DAT_00198220 + uVar19 * 4) ^ *(uint *)(&DAT_00197620 + uVar11 * 4) ^
                   *(uint *)(&DAT_00197e20 + uVar15 * 4);
          uVar20 = (ulong)(uVar13 >> 8 & 0xff);
          uVar18 = *(uint *)(&DAT_00198220 + (ulong)(uVar13 & 0xff) * 4);
          uVar17 = *(uint *)(&DAT_00197e20 + uVar20 * 4);
          uVar8 = (ulong)(uVar13 >> 0x18);
          uVar10 = (ulong)(uVar13 >> 0x10 & 0xff);
          uVar24 = uVar27 ^ *(uint *)(&DAT_00198220 + uVar9 * 4) ^ uVar18 ^
                   *(uint *)(&DAT_00197620 + uVar8 * 4) ^ uVar17 ^
                   *(uint *)(&DAT_00197a20 + uVar10 * 4);
          uVar9 = (ulong)(uVar24 >> 8 & 0xff);
          uVar16 = (ulong)(uVar24 >> 0x10 & 0xff);
          uVar12 = *(uint *)(&DAT_00197e20 + uVar16 * 4) ^
                   uVar22 ^ *(uint *)(&DAT_00197e20 + uVar14 * 4) ^
                   *(uint *)(&DAT_00197a20 + (ulong)(uVar24 & 0xff) * 4) ^
                   *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^
                   *(uint *)(&DAT_00198220 + uVar9 * 4);
          uVar4 = *(uint *)(&DAT_00198220 + uVar23 * 4);
          puVar25[8] = *(uint *)(&DAT_00198220 + uVar16 * 4) ^
                       *(uint *)(&DAT_00197e20 + uVar15 * 4) ^ *(uint *)(&DAT_00198220 + uVar11 * 4)
                       ^ *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 0x18) * 4) ^
                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 >> 0x10 & 0xff) * 4);
          uVar27 = *(uint *)(&DAT_00197a20 + uVar15 * 4);
          uVar21 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x18) * 4);
          puVar25[9] = *(uint *)(&DAT_00197a20 + (ulong)(uVar12 >> 8 & 0xff) * 4) ^
                       *(uint *)(&DAT_00197e20 + uVar19 * 4) ^ uVar4 ^
                       *(uint *)(&DAT_00197620 + (ulong)(uVar12 & 0xff) * 4) ^
                       *(uint *)(&DAT_00197e20 + (ulong)(uVar12 >> 0x18) * 4);
          puVar25[10] = uVar18 ^ uVar27 ^ uVar17 ^ uVar21 ^ *(uint *)(&DAT_00197620 + uVar16 * 4);
          uVar18 = *(uint *)(&DAT_00198220 + uVar10 * 4);
          uVar17 = *(uint *)(&DAT_00197620 + uVar20 * 4);
          puVar25[0xb] = uVar18 ^ uVar17 ^ *(uint *)(&DAT_00197e20 + uVar8 * 4) ^
                         *(uint *)(&DAT_00197620 + (ulong)(uVar24 & 0xff) * 4) ^
                         *(uint *)(&DAT_00197a20 + uVar9 * 4);
          uVar24 = uVar17 ^ *(uint *)(&DAT_00197e20 + (ulong)(uVar13 & 0xff) * 4) ^
                            *(uint *)(&DAT_00197a20 + uVar8 * 4) ^
                            *(uint *)(&DAT_00197a20 + uVar19 * 4) ^ uVar18 ^ uVar24;
          uVar14 = (ulong)(uVar24 & 0xff);
          uVar22 = *(uint *)(&DAT_00197a20 + (ulong)(uVar24 >> 0x10 & 0xff) * 4);
          uVar16 = (ulong)(byte)(uVar24 >> 8);
          uVar21 = *(uint *)(&DAT_00197620 + uVar15 * 4) ^ uVar6 ^
                   *(uint *)(&DAT_00198220 + (ulong)(uVar24 >> 0x18) * 4) ^
                   *(uint *)(&DAT_00197620 + uVar14 * 4) ^ *(uint *)(&DAT_00197e20 + uVar16 * 4) ^
                   uVar22;
          uVar15 = (ulong)(uVar21 & 0xff);
          uVar9 = (ulong)(uVar21 >> 8 & 0xff);
          uVar27 = uVar13 ^ uVar4 ^ *(uint *)(&DAT_00198220 + uVar15 * 4) ^
                   *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^
                   *(uint *)(&DAT_00197e20 + uVar9 * 4) ^
                   *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4);
          uVar13 = *(uint *)(&DAT_00197a20 + uVar15 * 4);
          uVar6 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 >> 0x10 & 0xff) * 4);
          uVar10 = (ulong)(uVar27 >> 0x18);
          uVar7 = uVar12 ^ *(uint *)(&DAT_00197e20 + uVar11 * 4) ^
                  *(uint *)(&DAT_00197a20 + (ulong)(uVar27 & 0xff) * 4) ^
                  *(uint *)(&DAT_00197620 + uVar10 * 4) ^
                  *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4) ^ uVar6;
          uVar8 = (ulong)uVar7;
          uVar12 = *(uint *)(&DAT_00198220 + uVar14 * 4);
          puVar26 = puVar25 + 0x10;
          uVar4 = *(uint *)(&DAT_00197e20 + (ulong)(uVar27 & 0xff) * 4);
          uVar1 = *(uint *)(&DAT_00197620 + uVar9 * 4);
          puVar25[0xd] = *(uint *)(&DAT_00197620 + (ulong)(uVar21 >> 0x18) * 4) ^
                         *(uint *)(&DAT_00197e20 + uVar15 * 4) ^
                         *(uint *)(&DAT_00197a20 + (ulong)(uVar21 >> 0x10 & 0xff) * 4) ^ uVar4 ^
                         *(uint *)(&DAT_00198220 + (ulong)(uVar27 >> 8 & 0xff) * 4);
          uVar2 = *(uint *)(&DAT_00197a20 + uVar14 * 4);
          uVar18 = *(uint *)(&DAT_00197a20 + uVar10 * 4);
          uVar9 = (ulong)(uVar7 >> 0x10 & 0xff);
          uVar3 = *(uint *)(&DAT_00197620 + uVar16 * 4);
          uVar17 = *(uint *)(&DAT_00197e20 + (ulong)(byte)uVar7 * 4);
          puVar25[0xc] = uVar13 ^ uVar12 ^ uVar1 ^ *(uint *)(&DAT_00198220 + uVar10 * 4) ^ uVar6;
          puVar25[0xe] = uVar2 ^ uVar3 ^ uVar18 ^
                         *(uint *)(&DAT_00198220 + (ulong)(uVar7 >> 0x18) * 4) ^
                         *(uint *)(&DAT_00197e20 + uVar9 * 4);
          puVar25[0xf] = *(uint *)(&DAT_00198220 + (ulong)(byte)(uVar7 >> 8) * 4) ^
                         uVar22 ^ *(uint *)(&DAT_00197620 + (ulong)(uVar24 >> 0x18) * 4) ^ uVar17 ^
                         *(uint *)(&DAT_00197620 + uVar9 * 4);
          puVar25 = puVar26;
        } while (puVar26 != param_4 + 0x20);
        uVar5 = 0;
        param_4[0x20] = param_2;
      }
    }
    else {
      uVar5 = 4;
    }
    if (lStack_40 != *(long *)(in_FS_OFFSET + 0x28)) {
                    /* WARNING: Subroutine does not return */
      __stack_chk_fail();
    }
    return uVar5;
  }
                    /* WARNING: Subroutine does not return */
  crypt_argchk("skey != NULL","src/ciphers/cast5.c",0x1a1);
}

