
long_int ydhms_diff(long_int year1,long_int yday1,int hour1,int min1,int sec1,int year0,int yday0,
                   int hour0,int min0,int sec0)

{
  longlong lVar1;
  uint uVar2;
  int iVar3;
  uint uVar4;
  uint uVar5;
  int iVar6;
  uint uVar7;
  
  iVar3 = ((hour1 << 0x1e | (uint)min1 >> 2) + 0x1db) - (uint)((min1 & 3U) == 0);
  iVar6 = ((((int)yday1._4_4_ >> 0x1f) << 0x1e | yday1._4_4_ >> 2) + 0x1db) -
          (uint)((yday1 & 3U) == 0);
  lVar1 = (ulonglong)(min1 - yday1._4_4_) * 0x16d;
  uVar7 = (uint)lVar1;
  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);
  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);
  uVar2 = year0 + uVar7;
  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +
          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)
          );
  uVar4 = uVar5 + (uVar2 - yday0);
  iVar3 = (uint)(uVar4 < uVar5) +
          ((int)uVar5 >> 0x1f) +
          ((((uint)(uVar2 < uVar7) +
            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))
                   * 0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (yday0 >> 0x1f)) -
          (uint)(uVar2 < uVar2 - yday0));
  uVar2 = uVar4 * 0x18 + year1._0_4_;
  uVar5 = uVar2 - hour0;
  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +
           (uVar4 * 3 >> 0x1d |
           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +
           (year1._0_4_ >> 0x1f)) - (hour0 >> 0x1f)) - (uint)(uVar2 < uVar5);
  uVar4 = uVar5 * 0x3c + year1._4_4_;
  uVar2 = uVar4 - min0;
  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +
           (uVar5 * 0xf >> 0x1e |
           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +
           (year1._4_4_ >> 0x1f)) - (min0 >> 0x1f)) - (uint)(uVar4 < uVar2);
  uVar4 = uVar2 * 0x3c + yday1._0_4_;
  return CONCAT44((((uint)(uVar4 < uVar2 * 0x3c) +
                   (uVar2 * 0xf >> 0x1e |
                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *
                   4) + (yday1._0_4_ >> 0x1f)) - (sec0 >> 0x1f)) - (uint)(uVar4 < uVar4 - sec0),
                  uVar4 - sec0);
}



int FUN_00020480(int param_1,uint param_2,int param_3,int param_4,int param_5,int param_6,
                int param_7,uint param_8,int param_9,int param_10,int param_11,int param_12)

{
  longlong lVar1;
  uint uVar2;
  int iVar3;
  uint uVar4;
  uint uVar5;
  int iVar6;
  uint uVar7;
  
  iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0);
  iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0);
  lVar1 = (ulonglong)(param_2 - param_8) * 0x16d;
  uVar7 = (uint)lVar1;
  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);
  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);
  uVar2 = param_4 + uVar7;
  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +
          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)
          );
  uVar4 = uVar5 + (uVar2 - param_9);
  iVar3 = (uint)(uVar4 < uVar5) +
          ((int)uVar5 >> 0x1f) +
          ((((uint)(uVar2 < uVar7) +
            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *
                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -
          (uint)(uVar2 < uVar2 - param_9));
  uVar2 = uVar4 * 0x18 + param_5;
  uVar5 = uVar2 - param_10;
  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +
           (uVar4 * 3 >> 0x1d |
           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +
           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5);
  uVar4 = uVar5 * 0x3c + param_6;
  uVar2 = uVar4 - param_11;
  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +
           (uVar5 * 0xf >> 0x1e |
           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +
           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2);
  uVar4 = uVar2 * 0x3c + param_7;
  return (((uint)(uVar4 < uVar2 * 0x3c) +
          (uVar2 * 0xf >> 0x1e |
          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +
          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12);
}


addiu sp,sp,-0x18
sll v1,a0,0x1e
srl t0,a1,0x2
lw t8,0x34(sp)
andi t5,a1,0x3
or t0,v1,t0
sw s2,0xc(sp)
addiu t0,t0,0x1db
sw s0,0x4(sp)
sra t9,t8,0x1f
sw s3,0x10(sp)
srl s2,t8,0x2
sw s4,0x14(sp)
sll t1,t9,0x1e
sw s1,0x8(sp)
sltiu t5,t5,0x1
lw s1,0x38(sp)
lui s0,0x51eb
lw t6,0x28(sp)
subu t0,t0,t5
lw t3,0x3c(sp)
ori s0,s0,0x851f
lw t4,0x2c(sp)
or s2,t1,s2
lw t2,0x40(sp)
mult t0,s0
lw v0,0x30(sp)
andi t1,t8,0x3
lw v1,0x44(sp)
addiu s2,s2,0x1db
sltiu t1,t1,0x1
subu s2,s2,t1
mfhi t1
mult s2,s0
sra t5,s2,0x1f
sra s3,t0,0x1f
subu t8,a1,t8
mfhi s0
li s4,0x16d
sra t1,t1,0x3
multu t8,s4
subu s3,t1,s3
subu a0,a0,t9
sll t7,s3,0x1
sra s0,s0,0x3
addu t7,t7,s3
subu s0,s0,t5
sll t7,t7,0x3
sll t5,s0,0x1
sltu a1,a1,t8
addu t5,t5,s0
addu t7,t7,s3
sll t5,t5,0x3
subu a0,a0,a1
addu t5,t5,s0
mflo t9
subu t7,t0,t7
mfhi t8
subu t5,s2,t5
mul a1,a0,s4
lw s4,0x14(sp)
srl t1,t7,0x1f
srl t5,t5,0x1f
subu t1,s3,t1
lw s3,0x10(sp)
subu t5,s0,t5
sra s0,t1,0x1f
sra a0,t5,0x1f
addu t8,a1,t8
addu a3,a3,t9
sll s0,s0,0x1e
srl a1,t1,0x2
sll a0,a0,0x1e
srl t7,t5,0x2
subu t0,t0,s2
lw s2,0xc(sp)
subu t5,t1,t5
addu a2,a2,t8
or t7,a0,t7
or a1,s0,a1
lw s0,0x4(sp)
sltu a0,a3,t9
subu a1,a1,t7
sra t1,s1,0x1f
subu t0,t0,t5
addu a2,a0,a2
subu a0,a3,s1
lw s1,0x8(sp)
addu t0,t0,a1
subu a2,a2,t1
sltu a3,a3,a0
sra a1,t0,0x1f
subu a2,a2,a3
addu a0,t0,a0
addu a2,a1,a2
sltu t0,a0,t0
addu t0,t0,a2
sll a1,a0,0x1
srl a3,a0,0x1f
sll a2,t0,0x1
addu a0,a1,a0
or a2,a3,a2
addu a2,a2,t0
sltu t0,a0,a1
addu t0,t0,a2
sll a3,a0,0x3
sll t0,t0,0x3
srl a0,a0,0x1d
sra a2,t6,0x1f
or t0,a0,t0
addu t6,a3,t6
addu t0,t0,a2
sltu a2,t6,a3
addu t0,a2,t0
sra a2,t3,0x1f
subu a3,t6,t3
subu a2,t0,a2
sltu t6,t6,a3
subu a2,a2,t6
srl t0,a3,0x1c
sll a0,a3,0x4
sll a1,a2,0x4
subu a3,a0,a3
or a1,t0,a1
subu a2,a1,a2
sltu a0,a0,a3
subu a2,a2,a0
sll t0,a3,0x2
sll a2,a2,0x2
srl a3,a3,0x1e
sra a0,t4,0x1f
or a2,a3,a2
addu t4,t0,t4
addu a2,a2,a0
sltu a0,t4,t0
sra a1,t2,0x1f
addu a0,a0,a2
subu a2,t4,t2
subu a0,a0,a1
sltu t4,t4,a2
subu a0,a0,t4
srl t0,a2,0x1c
sll a3,a2,0x4
sll a1,a0,0x4
subu a2,a3,a2
or a1,t0,a1
subu a0,a1,a0
sltu a3,a3,a2
subu a0,a0,a3
sll a1,a2,0x2
sll a0,a0,0x2
srl a2,a2,0x1e
sra a3,v0,0x1f
or a0,a2,a0
addu v0,a1,v0
addu a0,a0,a3
sltu a1,v0,a1
addu a0,a1,a0
sra a1,v1,0x1f
subu v1,v0,v1
subu a0,a0,a1
sltu v0,v0,v1
subu v0,a0,v0
jr ra
_addiu sp,sp,0x18
(translation_unit "int FUN_00020480(int param_1,uint param_2,int param_3,int param_4,int param_5,int param_6,\n                int param_7,uint param_8,int param_9,int param_10,int param_11,int param_12)\n\n{\n  longlong lVar1;\n  uint uVar2;\n  int iVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  uint uVar7;\n  \n  iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0);\n  iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0);\n  lVar1 = (ulonglong)(param_2 - param_8) * 0x16d;\n  uVar7 = (uint)lVar1;\n  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);\n  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);\n  uVar2 = param_4 + uVar7;\n  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );\n  uVar4 = uVar5 + (uVar2 - param_9);\n  iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9));\n  uVar2 = uVar4 * 0x18 + param_5;\n  uVar5 = uVar2 - param_10;\n  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5);\n  uVar4 = uVar5 * 0x3c + param_6;\n  uVar2 = uVar4 - param_11;\n  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2);\n  uVar4 = uVar2 * 0x3c + param_7;\n  return (((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12);\n}\n\n" (function_definition "int FUN_00020480(int param_1,uint param_2,int param_3,int param_4,int param_5,int param_6,\n                int param_7,uint param_8,int param_9,int param_10,int param_11,int param_12)\n\n{\n  longlong lVar1;\n  uint uVar2;\n  int iVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  uint uVar7;\n  \n  iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0);\n  iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0);\n  lVar1 = (ulonglong)(param_2 - param_8) * 0x16d;\n  uVar7 = (uint)lVar1;\n  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);\n  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);\n  uVar2 = param_4 + uVar7;\n  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );\n  uVar4 = uVar5 + (uVar2 - param_9);\n  iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9));\n  uVar2 = uVar4 * 0x18 + param_5;\n  uVar5 = uVar2 - param_10;\n  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5);\n  uVar4 = uVar5 * 0x3c + param_6;\n  uVar2 = uVar4 - param_11;\n  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2);\n  uVar4 = uVar2 * 0x3c + param_7;\n  return (((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12);\n}" primitive_type (function_declarator "FUN_00020480(int param_1,uint param_2,int param_3,int param_4,int param_5,int param_6,\n                int param_7,uint param_8,int param_9,int param_10,int param_11,int param_12)" identifier (parameter_list "(int param_1,uint param_2,int param_3,int param_4,int param_5,int param_6,\n                int param_7,uint param_8,int param_9,int param_10,int param_11,int param_12)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "uint param_2" type_identifier identifier) , (parameter_declaration "int param_3" primitive_type identifier) , (parameter_declaration "int param_4" primitive_type identifier) , (parameter_declaration "int param_5" primitive_type identifier) , (parameter_declaration "int param_6" primitive_type identifier) , (parameter_declaration "int param_7" primitive_type identifier) , (parameter_declaration "uint param_8" type_identifier identifier) , (parameter_declaration "int param_9" primitive_type identifier) , (parameter_declaration "int param_10" primitive_type identifier) , (parameter_declaration "int param_11" primitive_type identifier) , (parameter_declaration "int param_12" primitive_type identifier) ))) (compound_statement "{\n  longlong lVar1;\n  uint uVar2;\n  int iVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  uint uVar7;\n  \n  iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0);\n  iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0);\n  lVar1 = (ulonglong)(param_2 - param_8) * 0x16d;\n  uVar7 = (uint)lVar1;\n  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);\n  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);\n  uVar2 = param_4 + uVar7;\n  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );\n  uVar4 = uVar5 + (uVar2 - param_9);\n  iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9));\n  uVar2 = uVar4 * 0x18 + param_5;\n  uVar5 = uVar2 - param_10;\n  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5);\n  uVar4 = uVar5 * 0x3c + param_6;\n  uVar2 = uVar4 - param_11;\n  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2);\n  uVar4 = uVar2 * 0x3c + param_7;\n  return (((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12);\n}" { (declaration "longlong lVar1;" type_identifier identifier ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (expression_statement "iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0);" (assignment_expression "iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0)" identifier = (binary_expression "((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0)" (parenthesized_expression "((param_1 << 0x1e | param_2 >> 2) + 0x1db)" ( (binary_expression "(param_1 << 0x1e | param_2 >> 2) + 0x1db" (parenthesized_expression "(param_1 << 0x1e | param_2 >> 2)" ( (binary_expression "param_1 << 0x1e | param_2 >> 2" (binary_expression "param_1 << 0x1e" identifier << number_literal) | (binary_expression "param_2 >> 2" identifier >> number_literal)) )) + number_literal) )) - (call_expression "(uint)((param_2 & 3) == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((param_2 & 3) == 0)" ( (binary_expression "(param_2 & 3) == 0" (parenthesized_expression "(param_2 & 3)" ( (binary_expression "param_2 & 3" identifier & number_literal) )) == number_literal) ))))) ;) (expression_statement "iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0);" (assignment_expression "iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0)" identifier = (binary_expression "((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0)" (parenthesized_expression "((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db)" ( (binary_expression "(((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db" (parenthesized_expression "(((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2)" ( (binary_expression "((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2" (binary_expression "((int)param_8 >> 0x1f) << 0x1e" (parenthesized_expression "((int)param_8 >> 0x1f)" ( (binary_expression "(int)param_8 >> 0x1f" (cast_expression "(int)param_8" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) << number_literal) | (binary_expression "param_8 >> 2" identifier >> number_literal)) )) + number_literal) )) - (call_expression "(uint)((param_8 & 3) == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((param_8 & 3) == 0)" ( (binary_expression "(param_8 & 3) == 0" (parenthesized_expression "(param_8 & 3)" ( (binary_expression "param_8 & 3" identifier & number_literal) )) == number_literal) ))))) ;) (expression_statement "lVar1 = (ulonglong)(param_2 - param_8) * 0x16d;" (assignment_expression "lVar1 = (ulonglong)(param_2 - param_8) * 0x16d" identifier = (binary_expression "(ulonglong)(param_2 - param_8) * 0x16d" (call_expression "(ulonglong)(param_2 - param_8)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(param_2 - param_8)" ( (binary_expression "param_2 - param_8" identifier - identifier) ))) * number_literal)) ;) (expression_statement "uVar7 = (uint)lVar1;" (assignment_expression "uVar7 = (uint)lVar1" identifier = (cast_expression "(uint)lVar1" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);" (assignment_expression "uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f)" identifier = (binary_expression "iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f)" (binary_expression "iVar3 / 0x19" identifier / number_literal) + (parenthesized_expression "(iVar3 % 0x19 >> 0x1f)" ( (binary_expression "iVar3 % 0x19 >> 0x1f" (binary_expression "iVar3 % 0x19" identifier % number_literal) >> number_literal) )))) ;) (expression_statement "uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);" (assignment_expression "uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f)" identifier = (binary_expression "iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f)" (binary_expression "iVar6 / 0x19" identifier / number_literal) + (parenthesized_expression "(iVar6 % 0x19 >> 0x1f)" ( (binary_expression "iVar6 % 0x19 >> 0x1f" (binary_expression "iVar6 % 0x19" identifier % number_literal) >> number_literal) )))) ;) (expression_statement "uVar2 = param_4 + uVar7;" (assignment_expression "uVar2 = param_4 + uVar7" identifier = (binary_expression "param_4 + uVar7" identifier + identifier)) ;) (expression_statement "uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );" (assignment_expression "uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          )" identifier = (binary_expression "((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          )" (parenthesized_expression "((iVar3 - iVar6) - (uVar4 - uVar5))" ( (binary_expression "(iVar3 - iVar6) - (uVar4 - uVar5)" (parenthesized_expression "(iVar3 - iVar6)" ( (binary_expression "iVar3 - iVar6" identifier - identifier) )) - (parenthesized_expression "(uVar4 - uVar5)" ( (binary_expression "uVar4 - uVar5" identifier - identifier) ))) )) + (parenthesized_expression "((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          )" ( (binary_expression "(((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)" (parenthesized_expression "(((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2)" ( (binary_expression "((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2" (binary_expression "((int)uVar4 >> 0x1f) << 0x1e" (parenthesized_expression "((int)uVar4 >> 0x1f)" ( (binary_expression "(int)uVar4 >> 0x1f" (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) << number_literal) | (binary_expression "uVar4 >> 2" identifier >> number_literal)) )) - (parenthesized_expression "(((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)" ( (binary_expression "((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2" (binary_expression "((int)uVar5 >> 0x1f) << 0x1e" (parenthesized_expression "((int)uVar5 >> 0x1f)" ( (binary_expression "(int)uVar5 >> 0x1f" (cast_expression "(int)uVar5" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) << number_literal) | (binary_expression "uVar5 >> 2" identifier >> number_literal)) ))) )))) ;) (expression_statement "uVar4 = uVar5 + (uVar2 - param_9);" (assignment_expression "uVar4 = uVar5 + (uVar2 - param_9)" identifier = (binary_expression "uVar5 + (uVar2 - param_9)" identifier + (parenthesized_expression "(uVar2 - param_9)" ( (binary_expression "uVar2 - param_9" identifier - identifier) )))) ;) (expression_statement "iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9));" (assignment_expression "iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9))" identifier = (binary_expression "(uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9))" (binary_expression "(uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f)" (call_expression "(uint)(uVar4 < uVar5)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar5)" ( (binary_expression "uVar4 < uVar5" identifier < identifier) ))) + (parenthesized_expression "((int)uVar5 >> 0x1f)" ( (binary_expression "(int)uVar5 >> 0x1f" (cast_expression "(int)uVar5" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) + (parenthesized_expression "((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9))" ( (binary_expression "(((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9)" (parenthesized_expression "(((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f))" ( (binary_expression "((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)" (parenthesized_expression "((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20))" ( (binary_expression "(uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)" (binary_expression "(uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d" (binary_expression "(uint)(uVar2 < uVar7) +\n            param_3" (call_expression "(uint)(uVar2 < uVar7)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar7)" ( (binary_expression "uVar2 < uVar7" identifier < identifier) ))) + identifier) + (binary_expression "((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d" (parenthesized_expression "((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8))" ( (binary_expression "(param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)" (parenthesized_expression "(param_1 - ((int)param_8 >> 0x1f))" ( (binary_expression "param_1 - ((int)param_8 >> 0x1f)" identifier - (parenthesized_expression "((int)param_8 >> 0x1f)" ( (binary_expression "(int)param_8 >> 0x1f" (cast_expression "(int)param_8" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) )) - (call_expression "(uint)(param_2 < param_2 - param_8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(param_2 < param_2 - param_8)" ( (binary_expression "param_2 < param_2 - param_8" identifier < (binary_expression "param_2 - param_8" identifier - identifier)) )))) )) * number_literal)) + (cast_expression "(int)((ulonglong)lVar1 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar1 >> 0x20)" ( (binary_expression "(ulonglong)lVar1 >> 0x20" (cast_expression "(ulonglong)lVar1" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) )) - (parenthesized_expression "(param_9 >> 0x1f)" ( (binary_expression "param_9 >> 0x1f" identifier >> number_literal) ))) )) - (call_expression "(uint)(uVar2 < uVar2 - param_9)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar2 - param_9)" ( (binary_expression "uVar2 < uVar2 - param_9" identifier < (binary_expression "uVar2 - param_9" identifier - identifier)) )))) )))) ;) (expression_statement "uVar2 = uVar4 * 0x18 + param_5;" (assignment_expression "uVar2 = uVar4 * 0x18 + param_5" identifier = (binary_expression "uVar4 * 0x18 + param_5" (binary_expression "uVar4 * 0x18" identifier * number_literal) + identifier)) ;) (expression_statement "uVar5 = uVar2 - param_10;" (assignment_expression "uVar5 = uVar2 - param_10" identifier = (binary_expression "uVar2 - param_10" identifier - identifier)) ;) (expression_statement "iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5);" (assignment_expression "iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5)" identifier = (binary_expression "(((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5)" (parenthesized_expression "(((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f))" ( (binary_expression "((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)" (parenthesized_expression "((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f))" ( (binary_expression "(uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)" (binary_expression "(uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8)" (call_expression "(uint)(uVar2 < uVar4 * 0x18)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar4 * 0x18)" ( (binary_expression "uVar2 < uVar4 * 0x18" identifier < (binary_expression "uVar4 * 0x18" identifier * number_literal)) ))) + (parenthesized_expression "(uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8)" ( (binary_expression "uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8" (binary_expression "uVar4 * 3 >> 0x1d" (binary_expression "uVar4 * 3" identifier * number_literal) >> number_literal) | (binary_expression "((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8" (parenthesized_expression "((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3)" ( (binary_expression "(uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3" (binary_expression "(uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2)" (call_expression "(uint)(uVar4 * 3 < uVar4 * 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 * 3 < uVar4 * 2)" ( (binary_expression "uVar4 * 3 < uVar4 * 2" (binary_expression "uVar4 * 3" identifier * number_literal) < (binary_expression "uVar4 * 2" identifier * number_literal)) ))) + (parenthesized_expression "(uVar4 >> 0x1f | iVar3 * 2)" ( (binary_expression "uVar4 >> 0x1f | iVar3 * 2" (binary_expression "uVar4 >> 0x1f" identifier >> number_literal) | (binary_expression "iVar3 * 2" identifier * number_literal)) ))) + identifier) )) * number_literal)) ))) + (parenthesized_expression "(param_5 >> 0x1f)" ( (binary_expression "param_5 >> 0x1f" identifier >> number_literal) ))) )) - (parenthesized_expression "(param_10 >> 0x1f)" ( (binary_expression "param_10 >> 0x1f" identifier >> number_literal) ))) )) - (call_expression "(uint)(uVar2 < uVar5)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar5)" ( (binary_expression "uVar2 < uVar5" identifier < identifier) ))))) ;) (expression_statement "uVar4 = uVar5 * 0x3c + param_6;" (assignment_expression "uVar4 = uVar5 * 0x3c + param_6" identifier = (binary_expression "uVar5 * 0x3c + param_6" (binary_expression "uVar5 * 0x3c" identifier * number_literal) + identifier)) ;) (expression_statement "uVar2 = uVar4 - param_11;" (assignment_expression "uVar2 = uVar4 - param_11" identifier = (binary_expression "uVar4 - param_11" identifier - identifier)) ;) (expression_statement "iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2);" (assignment_expression "iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2)" identifier = (binary_expression "(((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2)" (parenthesized_expression "(((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f))" ( (binary_expression "((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)" (parenthesized_expression "((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f))" ( (binary_expression "(uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)" (binary_expression "(uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4)" (call_expression "(uint)(uVar4 < uVar5 * 0x3c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar5 * 0x3c)" ( (binary_expression "uVar4 < uVar5 * 0x3c" identifier < (binary_expression "uVar5 * 0x3c" identifier * number_literal)) ))) + (parenthesized_expression "(uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4)" ( (binary_expression "uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4" (binary_expression "uVar5 * 0xf >> 0x1e" (binary_expression "uVar5 * 0xf" identifier * number_literal) >> number_literal) | (binary_expression "(((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4" (parenthesized_expression "(((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf))" ( (binary_expression "((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)" (parenthesized_expression "((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3)" ( (binary_expression "(uVar5 >> 0x1c | iVar3 * 0x10) - iVar3" (parenthesized_expression "(uVar5 >> 0x1c | iVar3 * 0x10)" ( (binary_expression "uVar5 >> 0x1c | iVar3 * 0x10" (binary_expression "uVar5 >> 0x1c" identifier >> number_literal) | (binary_expression "iVar3 * 0x10" identifier * number_literal)) )) - identifier) )) - (call_expression "(uint)(uVar5 * 0x10 < uVar5 * 0xf)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 * 0x10 < uVar5 * 0xf)" ( (binary_expression "uVar5 * 0x10 < uVar5 * 0xf" (binary_expression "uVar5 * 0x10" identifier * number_literal) < (binary_expression "uVar5 * 0xf" identifier * number_literal)) )))) )) * number_literal)) ))) + (parenthesized_expression "(param_6 >> 0x1f)" ( (binary_expression "param_6 >> 0x1f" identifier >> number_literal) ))) )) - (parenthesized_expression "(param_11 >> 0x1f)" ( (binary_expression "param_11 >> 0x1f" identifier >> number_literal) ))) )) - (call_expression "(uint)(uVar4 < uVar2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar2)" ( (binary_expression "uVar4 < uVar2" identifier < identifier) ))))) ;) (expression_statement "uVar4 = uVar2 * 0x3c + param_7;" (assignment_expression "uVar4 = uVar2 * 0x3c + param_7" identifier = (binary_expression "uVar2 * 0x3c + param_7" (binary_expression "uVar2 * 0x3c" identifier * number_literal) + identifier)) ;) (return_statement "return (((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12);" return (binary_expression "(((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12)" (parenthesized_expression "(((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f))" ( (binary_expression "((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)" (parenthesized_expression "((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f))" ( (binary_expression "(uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)" (binary_expression "(uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4)" (call_expression "(uint)(uVar4 < uVar2 * 0x3c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar2 * 0x3c)" ( (binary_expression "uVar4 < uVar2 * 0x3c" identifier < (binary_expression "uVar2 * 0x3c" identifier * number_literal)) ))) + (parenthesized_expression "(uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4)" ( (binary_expression "uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4" (binary_expression "uVar2 * 0xf >> 0x1e" (binary_expression "uVar2 * 0xf" identifier * number_literal) >> number_literal) | (binary_expression "(((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4" (parenthesized_expression "(((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf))" ( (binary_expression "((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)" (parenthesized_expression "((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3)" ( (binary_expression "(uVar2 >> 0x1c | iVar3 * 0x10) - iVar3" (parenthesized_expression "(uVar2 >> 0x1c | iVar3 * 0x10)" ( (binary_expression "uVar2 >> 0x1c | iVar3 * 0x10" (binary_expression "uVar2 >> 0x1c" identifier >> number_literal) | (binary_expression "iVar3 * 0x10" identifier * number_literal)) )) - identifier) )) - (call_expression "(uint)(uVar2 * 0x10 < uVar2 * 0xf)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 * 0x10 < uVar2 * 0xf)" ( (binary_expression "uVar2 * 0x10 < uVar2 * 0xf" (binary_expression "uVar2 * 0x10" identifier * number_literal) < (binary_expression "uVar2 * 0xf" identifier * number_literal)) )))) )) * number_literal)) ))) + (parenthesized_expression "(param_7 >> 0x1f)" ( (binary_expression "param_7 >> 0x1f" identifier >> number_literal) ))) )) - (parenthesized_expression "(param_12 >> 0x1f)" ( (binary_expression "param_12 >> 0x1f" identifier >> number_literal) ))) )) - (call_expression "(uint)(uVar4 < uVar4 - param_12)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar4 - param_12)" ( (binary_expression "uVar4 < uVar4 - param_12" identifier < (binary_expression "uVar4 - param_12" identifier - identifier)) )))) ;) })))
(translation_unit "long_int ydhms_diff(long_int year1,long_int yday1,int hour1,int min1,int sec1,int year0,int yday0,\n                   int hour0,int min0,int sec0)\n\n{\n  longlong lVar1;\n  uint uVar2;\n  int iVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  uint uVar7;\n  \n  iVar3 = ((hour1 << 0x1e | (uint)min1 >> 2) + 0x1db) - (uint)((min1 & 3U) == 0);\n  iVar6 = ((((int)yday1._4_4_ >> 0x1f) << 0x1e | yday1._4_4_ >> 2) + 0x1db) -\n          (uint)((yday1 & 3U) == 0);\n  lVar1 = (ulonglong)(min1 - yday1._4_4_) * 0x16d;\n  uVar7 = (uint)lVar1;\n  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);\n  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);\n  uVar2 = year0 + uVar7;\n  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );\n  uVar4 = uVar5 + (uVar2 - yday0);\n  iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (yday0 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - yday0));\n  uVar2 = uVar4 * 0x18 + year1._0_4_;\n  uVar5 = uVar2 - hour0;\n  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (year1._0_4_ >> 0x1f)) - (hour0 >> 0x1f)) - (uint)(uVar2 < uVar5);\n  uVar4 = uVar5 * 0x3c + year1._4_4_;\n  uVar2 = uVar4 - min0;\n  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (year1._4_4_ >> 0x1f)) - (min0 >> 0x1f)) - (uint)(uVar4 < uVar2);\n  uVar4 = uVar2 * 0x3c + yday1._0_4_;\n  return CONCAT44((((uint)(uVar4 < uVar2 * 0x3c) +\n                   (uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4) + (yday1._0_4_ >> 0x1f)) - (sec0 >> 0x1f)) - (uint)(uVar4 < uVar4 - sec0),\n                  uVar4 - sec0);\n}\n\n" (function_definition "long_int ydhms_diff(long_int year1,long_int yday1,int hour1,int min1,int sec1,int year0,int yday0,\n                   int hour0,int min0,int sec0)\n\n{\n  longlong lVar1;\n  uint uVar2;\n  int iVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  uint uVar7;\n  \n  iVar3 = ((hour1 << 0x1e | (uint)min1 >> 2) + 0x1db) - (uint)((min1 & 3U) == 0);\n  iVar6 = ((((int)yday1._4_4_ >> 0x1f) << 0x1e | yday1._4_4_ >> 2) + 0x1db) -\n          (uint)((yday1 & 3U) == 0);\n  lVar1 = (ulonglong)(min1 - yday1._4_4_) * 0x16d;\n  uVar7 = (uint)lVar1;\n  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);\n  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);\n  uVar2 = year0 + uVar7;\n  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );\n  uVar4 = uVar5 + (uVar2 - yday0);\n  iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (yday0 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - yday0));\n  uVar2 = uVar4 * 0x18 + year1._0_4_;\n  uVar5 = uVar2 - hour0;\n  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (year1._0_4_ >> 0x1f)) - (hour0 >> 0x1f)) - (uint)(uVar2 < uVar5);\n  uVar4 = uVar5 * 0x3c + year1._4_4_;\n  uVar2 = uVar4 - min0;\n  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (year1._4_4_ >> 0x1f)) - (min0 >> 0x1f)) - (uint)(uVar4 < uVar2);\n  uVar4 = uVar2 * 0x3c + yday1._0_4_;\n  return CONCAT44((((uint)(uVar4 < uVar2 * 0x3c) +\n                   (uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4) + (yday1._0_4_ >> 0x1f)) - (sec0 >> 0x1f)) - (uint)(uVar4 < uVar4 - sec0),\n                  uVar4 - sec0);\n}" type_identifier (function_declarator "ydhms_diff(long_int year1,long_int yday1,int hour1,int min1,int sec1,int year0,int yday0,\n                   int hour0,int min0,int sec0)" identifier (parameter_list "(long_int year1,long_int yday1,int hour1,int min1,int sec1,int year0,int yday0,\n                   int hour0,int min0,int sec0)" ( (parameter_declaration "long_int year1" type_identifier identifier) , (parameter_declaration "long_int yday1" type_identifier identifier) , (parameter_declaration "int hour1" primitive_type identifier) , (parameter_declaration "int min1" primitive_type identifier) , (parameter_declaration "int sec1" primitive_type identifier) , (parameter_declaration "int year0" primitive_type identifier) , (parameter_declaration "int yday0" primitive_type identifier) , (parameter_declaration "int hour0" primitive_type identifier) , (parameter_declaration "int min0" primitive_type identifier) , (parameter_declaration "int sec0" primitive_type identifier) ))) (compound_statement "{\n  longlong lVar1;\n  uint uVar2;\n  int iVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  uint uVar7;\n  \n  iVar3 = ((hour1 << 0x1e | (uint)min1 >> 2) + 0x1db) - (uint)((min1 & 3U) == 0);\n  iVar6 = ((((int)yday1._4_4_ >> 0x1f) << 0x1e | yday1._4_4_ >> 2) + 0x1db) -\n          (uint)((yday1 & 3U) == 0);\n  lVar1 = (ulonglong)(min1 - yday1._4_4_) * 0x16d;\n  uVar7 = (uint)lVar1;\n  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);\n  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);\n  uVar2 = year0 + uVar7;\n  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );\n  uVar4 = uVar5 + (uVar2 - yday0);\n  iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (yday0 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - yday0));\n  uVar2 = uVar4 * 0x18 + year1._0_4_;\n  uVar5 = uVar2 - hour0;\n  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (year1._0_4_ >> 0x1f)) - (hour0 >> 0x1f)) - (uint)(uVar2 < uVar5);\n  uVar4 = uVar5 * 0x3c + year1._4_4_;\n  uVar2 = uVar4 - min0;\n  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (year1._4_4_ >> 0x1f)) - (min0 >> 0x1f)) - (uint)(uVar4 < uVar2);\n  uVar4 = uVar2 * 0x3c + yday1._0_4_;\n  return CONCAT44((((uint)(uVar4 < uVar2 * 0x3c) +\n                   (uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4) + (yday1._0_4_ >> 0x1f)) - (sec0 >> 0x1f)) - (uint)(uVar4 < uVar4 - sec0),\n                  uVar4 - sec0);\n}" { (declaration "longlong lVar1;" type_identifier identifier ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (expression_statement "iVar3 = ((hour1 << 0x1e | (uint)min1 >> 2) + 0x1db) - (uint)((min1 & 3U) == 0);" (assignment_expression "iVar3 = ((hour1 << 0x1e | (uint)min1 >> 2) + 0x1db) - (uint)((min1 & 3U) == 0)" identifier = (binary_expression "((hour1 << 0x1e | (uint)min1 >> 2) + 0x1db) - (uint)((min1 & 3U) == 0)" (parenthesized_expression "((hour1 << 0x1e | (uint)min1 >> 2) + 0x1db)" ( (binary_expression "(hour1 << 0x1e | (uint)min1 >> 2) + 0x1db" (parenthesized_expression "(hour1 << 0x1e | (uint)min1 >> 2)" ( (binary_expression "hour1 << 0x1e | (uint)min1 >> 2" (binary_expression "hour1 << 0x1e" identifier << number_literal) | (binary_expression "(uint)min1 >> 2" (cast_expression "(uint)min1" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal)) )) + number_literal) )) - (call_expression "(uint)((min1 & 3U) == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((min1 & 3U) == 0)" ( (binary_expression "(min1 & 3U) == 0" (parenthesized_expression "(min1 & 3U)" ( (binary_expression "min1 & 3U" identifier & number_literal) )) == number_literal) ))))) ;) (expression_statement "iVar6 = ((((int)yday1._4_4_ >> 0x1f) << 0x1e | yday1._4_4_ >> 2) + 0x1db) -\n          (uint)((yday1 & 3U) == 0);" (assignment_expression "iVar6 = ((((int)yday1._4_4_ >> 0x1f) << 0x1e | yday1._4_4_ >> 2) + 0x1db) -\n          (uint)((yday1 & 3U) == 0)" identifier = (binary_expression "((((int)yday1._4_4_ >> 0x1f) << 0x1e | yday1._4_4_ >> 2) + 0x1db) -\n          (uint)((yday1 & 3U) == 0)" (parenthesized_expression "((((int)yday1._4_4_ >> 0x1f) << 0x1e | yday1._4_4_ >> 2) + 0x1db)" ( (binary_expression "(((int)yday1._4_4_ >> 0x1f) << 0x1e | yday1._4_4_ >> 2) + 0x1db" (parenthesized_expression "(((int)yday1._4_4_ >> 0x1f) << 0x1e | yday1._4_4_ >> 2)" ( (binary_expression "((int)yday1._4_4_ >> 0x1f) << 0x1e | yday1._4_4_ >> 2" (binary_expression "((int)yday1._4_4_ >> 0x1f) << 0x1e" (parenthesized_expression "((int)yday1._4_4_ >> 0x1f)" ( (binary_expression "(int)yday1._4_4_ >> 0x1f" (cast_expression "(int)yday1._4_4_" ( (type_descriptor "int" primitive_type) ) (field_expression "yday1._4_4_" identifier . field_identifier)) >> number_literal) )) << number_literal) | (binary_expression "yday1._4_4_ >> 2" (field_expression "yday1._4_4_" identifier . field_identifier) >> number_literal)) )) + number_literal) )) - (call_expression "(uint)((yday1 & 3U) == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((yday1 & 3U) == 0)" ( (binary_expression "(yday1 & 3U) == 0" (parenthesized_expression "(yday1 & 3U)" ( (binary_expression "yday1 & 3U" identifier & number_literal) )) == number_literal) ))))) ;) (expression_statement "lVar1 = (ulonglong)(min1 - yday1._4_4_) * 0x16d;" (assignment_expression "lVar1 = (ulonglong)(min1 - yday1._4_4_) * 0x16d" identifier = (binary_expression "(ulonglong)(min1 - yday1._4_4_) * 0x16d" (call_expression "(ulonglong)(min1 - yday1._4_4_)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(min1 - yday1._4_4_)" ( (binary_expression "min1 - yday1._4_4_" identifier - (field_expression "yday1._4_4_" identifier . field_identifier)) ))) * number_literal)) ;) (expression_statement "uVar7 = (uint)lVar1;" (assignment_expression "uVar7 = (uint)lVar1" identifier = (cast_expression "(uint)lVar1" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);" (assignment_expression "uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f)" identifier = (binary_expression "iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f)" (binary_expression "iVar3 / 0x19" identifier / number_literal) + (parenthesized_expression "(iVar3 % 0x19 >> 0x1f)" ( (binary_expression "iVar3 % 0x19 >> 0x1f" (binary_expression "iVar3 % 0x19" identifier % number_literal) >> number_literal) )))) ;) (expression_statement "uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);" (assignment_expression "uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f)" identifier = (binary_expression "iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f)" (binary_expression "iVar6 / 0x19" identifier / number_literal) + (parenthesized_expression "(iVar6 % 0x19 >> 0x1f)" ( (binary_expression "iVar6 % 0x19 >> 0x1f" (binary_expression "iVar6 % 0x19" identifier % number_literal) >> number_literal) )))) ;) (expression_statement "uVar2 = year0 + uVar7;" (assignment_expression "uVar2 = year0 + uVar7" identifier = (binary_expression "year0 + uVar7" identifier + identifier)) ;) (expression_statement "uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );" (assignment_expression "uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          )" identifier = (binary_expression "((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          )" (parenthesized_expression "((iVar3 - iVar6) - (uVar4 - uVar5))" ( (binary_expression "(iVar3 - iVar6) - (uVar4 - uVar5)" (parenthesized_expression "(iVar3 - iVar6)" ( (binary_expression "iVar3 - iVar6" identifier - identifier) )) - (parenthesized_expression "(uVar4 - uVar5)" ( (binary_expression "uVar4 - uVar5" identifier - identifier) ))) )) + (parenthesized_expression "((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          )" ( (binary_expression "(((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)" (parenthesized_expression "(((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2)" ( (binary_expression "((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2" (binary_expression "((int)uVar4 >> 0x1f) << 0x1e" (parenthesized_expression "((int)uVar4 >> 0x1f)" ( (binary_expression "(int)uVar4 >> 0x1f" (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) << number_literal) | (binary_expression "uVar4 >> 2" identifier >> number_literal)) )) - (parenthesized_expression "(((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)" ( (binary_expression "((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2" (binary_expression "((int)uVar5 >> 0x1f) << 0x1e" (parenthesized_expression "((int)uVar5 >> 0x1f)" ( (binary_expression "(int)uVar5 >> 0x1f" (cast_expression "(int)uVar5" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) << number_literal) | (binary_expression "uVar5 >> 2" identifier >> number_literal)) ))) )))) ;) (expression_statement "uVar4 = uVar5 + (uVar2 - yday0);" (assignment_expression "uVar4 = uVar5 + (uVar2 - yday0)" identifier = (binary_expression "uVar5 + (uVar2 - yday0)" identifier + (parenthesized_expression "(uVar2 - yday0)" ( (binary_expression "uVar2 - yday0" identifier - identifier) )))) ;) (expression_statement "iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (yday0 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - yday0));" (assignment_expression "iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (yday0 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - yday0))" identifier = (binary_expression "(uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (yday0 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - yday0))" (binary_expression "(uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f)" (call_expression "(uint)(uVar4 < uVar5)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar5)" ( (binary_expression "uVar4 < uVar5" identifier < identifier) ))) + (parenthesized_expression "((int)uVar5 >> 0x1f)" ( (binary_expression "(int)uVar5 >> 0x1f" (cast_expression "(int)uVar5" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) + (parenthesized_expression "((((uint)(uVar2 < uVar7) +\n            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (yday0 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - yday0))" ( (binary_expression "(((uint)(uVar2 < uVar7) +\n            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (yday0 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - yday0)" (parenthesized_expression "(((uint)(uVar2 < uVar7) +\n            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (yday0 >> 0x1f))" ( (binary_expression "((uint)(uVar2 < uVar7) +\n            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (yday0 >> 0x1f)" (parenthesized_expression "((uint)(uVar2 < uVar7) +\n            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d + (int)((ulonglong)lVar1 >> 0x20))" ( (binary_expression "(uint)(uVar2 < uVar7) +\n            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d + (int)((ulonglong)lVar1 >> 0x20)" (binary_expression "(uint)(uVar2 < uVar7) +\n            sec1 + ((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d" (binary_expression "(uint)(uVar2 < uVar7) +\n            sec1" (call_expression "(uint)(uVar2 < uVar7)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar7)" ( (binary_expression "uVar2 < uVar7" identifier < identifier) ))) + identifier) + (binary_expression "((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))\n                   * 0x16d" (parenthesized_expression "((hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_))" ( (binary_expression "(hour1 - ((int)yday1._4_4_ >> 0x1f)) - (uint)((uint)min1 < min1 - yday1._4_4_)" (parenthesized_expression "(hour1 - ((int)yday1._4_4_ >> 0x1f))" ( (binary_expression "hour1 - ((int)yday1._4_4_ >> 0x1f)" identifier - (parenthesized_expression "((int)yday1._4_4_ >> 0x1f)" ( (binary_expression "(int)yday1._4_4_ >> 0x1f" (cast_expression "(int)yday1._4_4_" ( (type_descriptor "int" primitive_type) ) (field_expression "yday1._4_4_" identifier . field_identifier)) >> number_literal) ))) )) - (call_expression "(uint)((uint)min1 < min1 - yday1._4_4_)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uint)min1 < min1 - yday1._4_4_)" ( (binary_expression "(uint)min1 < min1 - yday1._4_4_" (cast_expression "(uint)min1" ( (type_descriptor "uint" type_identifier) ) identifier) < (binary_expression "min1 - yday1._4_4_" identifier - (field_expression "yday1._4_4_" identifier . field_identifier))) )))) )) * number_literal)) + (cast_expression "(int)((ulonglong)lVar1 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar1 >> 0x20)" ( (binary_expression "(ulonglong)lVar1 >> 0x20" (cast_expression "(ulonglong)lVar1" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) )) - (parenthesized_expression "(yday0 >> 0x1f)" ( (binary_expression "yday0 >> 0x1f" identifier >> number_literal) ))) )) - (call_expression "(uint)(uVar2 < uVar2 - yday0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar2 - yday0)" ( (binary_expression "uVar2 < uVar2 - yday0" identifier < (binary_expression "uVar2 - yday0" identifier - identifier)) )))) )))) ;) (expression_statement "uVar2 = uVar4 * 0x18 + year1._0_4_;" (assignment_expression "uVar2 = uVar4 * 0x18 + year1._0_4_" identifier = (binary_expression "uVar4 * 0x18 + year1._0_4_" (binary_expression "uVar4 * 0x18" identifier * number_literal) + (field_expression "year1._0_4_" identifier . field_identifier))) ;) (expression_statement "uVar5 = uVar2 - hour0;" (assignment_expression "uVar5 = uVar2 - hour0" identifier = (binary_expression "uVar2 - hour0" identifier - identifier)) ;) (expression_statement "iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (year1._0_4_ >> 0x1f)) - (hour0 >> 0x1f)) - (uint)(uVar2 < uVar5);" (assignment_expression "iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (year1._0_4_ >> 0x1f)) - (hour0 >> 0x1f)) - (uint)(uVar2 < uVar5)" identifier = (binary_expression "(((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (year1._0_4_ >> 0x1f)) - (hour0 >> 0x1f)) - (uint)(uVar2 < uVar5)" (parenthesized_expression "(((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (year1._0_4_ >> 0x1f)) - (hour0 >> 0x1f))" ( (binary_expression "((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (year1._0_4_ >> 0x1f)) - (hour0 >> 0x1f)" (parenthesized_expression "((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (year1._0_4_ >> 0x1f))" ( (binary_expression "(uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (year1._0_4_ >> 0x1f)" (binary_expression "(uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8)" (call_expression "(uint)(uVar2 < uVar4 * 0x18)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar4 * 0x18)" ( (binary_expression "uVar2 < uVar4 * 0x18" identifier < (binary_expression "uVar4 * 0x18" identifier * number_literal)) ))) + (parenthesized_expression "(uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8)" ( (binary_expression "uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8" (binary_expression "uVar4 * 3 >> 0x1d" (binary_expression "uVar4 * 3" identifier * number_literal) >> number_literal) | (binary_expression "((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8" (parenthesized_expression "((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3)" ( (binary_expression "(uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3" (binary_expression "(uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2)" (call_expression "(uint)(uVar4 * 3 < uVar4 * 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 * 3 < uVar4 * 2)" ( (binary_expression "uVar4 * 3 < uVar4 * 2" (binary_expression "uVar4 * 3" identifier * number_literal) < (binary_expression "uVar4 * 2" identifier * number_literal)) ))) + (parenthesized_expression "(uVar4 >> 0x1f | iVar3 * 2)" ( (binary_expression "uVar4 >> 0x1f | iVar3 * 2" (binary_expression "uVar4 >> 0x1f" identifier >> number_literal) | (binary_expression "iVar3 * 2" identifier * number_literal)) ))) + identifier) )) * number_literal)) ))) + (parenthesized_expression "(year1._0_4_ >> 0x1f)" ( (binary_expression "year1._0_4_ >> 0x1f" (field_expression "year1._0_4_" identifier . field_identifier) >> number_literal) ))) )) - (parenthesized_expression "(hour0 >> 0x1f)" ( (binary_expression "hour0 >> 0x1f" identifier >> number_literal) ))) )) - (call_expression "(uint)(uVar2 < uVar5)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar5)" ( (binary_expression "uVar2 < uVar5" identifier < identifier) ))))) ;) (expression_statement "uVar4 = uVar5 * 0x3c + year1._4_4_;" (assignment_expression "uVar4 = uVar5 * 0x3c + year1._4_4_" identifier = (binary_expression "uVar5 * 0x3c + year1._4_4_" (binary_expression "uVar5 * 0x3c" identifier * number_literal) + (field_expression "year1._4_4_" identifier . field_identifier))) ;) (expression_statement "uVar2 = uVar4 - min0;" (assignment_expression "uVar2 = uVar4 - min0" identifier = (binary_expression "uVar4 - min0" identifier - identifier)) ;) (expression_statement "iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (year1._4_4_ >> 0x1f)) - (min0 >> 0x1f)) - (uint)(uVar4 < uVar2);" (assignment_expression "iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (year1._4_4_ >> 0x1f)) - (min0 >> 0x1f)) - (uint)(uVar4 < uVar2)" identifier = (binary_expression "(((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (year1._4_4_ >> 0x1f)) - (min0 >> 0x1f)) - (uint)(uVar4 < uVar2)" (parenthesized_expression "(((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (year1._4_4_ >> 0x1f)) - (min0 >> 0x1f))" ( (binary_expression "((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (year1._4_4_ >> 0x1f)) - (min0 >> 0x1f)" (parenthesized_expression "((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (year1._4_4_ >> 0x1f))" ( (binary_expression "(uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (year1._4_4_ >> 0x1f)" (binary_expression "(uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4)" (call_expression "(uint)(uVar4 < uVar5 * 0x3c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar5 * 0x3c)" ( (binary_expression "uVar4 < uVar5 * 0x3c" identifier < (binary_expression "uVar5 * 0x3c" identifier * number_literal)) ))) + (parenthesized_expression "(uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4)" ( (binary_expression "uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4" (binary_expression "uVar5 * 0xf >> 0x1e" (binary_expression "uVar5 * 0xf" identifier * number_literal) >> number_literal) | (binary_expression "(((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4" (parenthesized_expression "(((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf))" ( (binary_expression "((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)" (parenthesized_expression "((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3)" ( (binary_expression "(uVar5 >> 0x1c | iVar3 * 0x10) - iVar3" (parenthesized_expression "(uVar5 >> 0x1c | iVar3 * 0x10)" ( (binary_expression "uVar5 >> 0x1c | iVar3 * 0x10" (binary_expression "uVar5 >> 0x1c" identifier >> number_literal) | (binary_expression "iVar3 * 0x10" identifier * number_literal)) )) - identifier) )) - (call_expression "(uint)(uVar5 * 0x10 < uVar5 * 0xf)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 * 0x10 < uVar5 * 0xf)" ( (binary_expression "uVar5 * 0x10 < uVar5 * 0xf" (binary_expression "uVar5 * 0x10" identifier * number_literal) < (binary_expression "uVar5 * 0xf" identifier * number_literal)) )))) )) * number_literal)) ))) + (parenthesized_expression "(year1._4_4_ >> 0x1f)" ( (binary_expression "year1._4_4_ >> 0x1f" (field_expression "year1._4_4_" identifier . field_identifier) >> number_literal) ))) )) - (parenthesized_expression "(min0 >> 0x1f)" ( (binary_expression "min0 >> 0x1f" identifier >> number_literal) ))) )) - (call_expression "(uint)(uVar4 < uVar2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar2)" ( (binary_expression "uVar4 < uVar2" identifier < identifier) ))))) ;) (expression_statement "uVar4 = uVar2 * 0x3c + yday1._0_4_;" (assignment_expression "uVar4 = uVar2 * 0x3c + yday1._0_4_" identifier = (binary_expression "uVar2 * 0x3c + yday1._0_4_" (binary_expression "uVar2 * 0x3c" identifier * number_literal) + (field_expression "yday1._0_4_" identifier . field_identifier))) ;) (return_statement "return CONCAT44((((uint)(uVar4 < uVar2 * 0x3c) +\n                   (uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4) + (yday1._0_4_ >> 0x1f)) - (sec0 >> 0x1f)) - (uint)(uVar4 < uVar4 - sec0),\n                  uVar4 - sec0);" return (call_expression "CONCAT44((((uint)(uVar4 < uVar2 * 0x3c) +\n                   (uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4) + (yday1._0_4_ >> 0x1f)) - (sec0 >> 0x1f)) - (uint)(uVar4 < uVar4 - sec0),\n                  uVar4 - sec0)" identifier (argument_list "((((uint)(uVar4 < uVar2 * 0x3c) +\n                   (uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4) + (yday1._0_4_ >> 0x1f)) - (sec0 >> 0x1f)) - (uint)(uVar4 < uVar4 - sec0),\n                  uVar4 - sec0)" ( (binary_expression "(((uint)(uVar4 < uVar2 * 0x3c) +\n                   (uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4) + (yday1._0_4_ >> 0x1f)) - (sec0 >> 0x1f)) - (uint)(uVar4 < uVar4 - sec0)" (parenthesized_expression "(((uint)(uVar4 < uVar2 * 0x3c) +\n                   (uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4) + (yday1._0_4_ >> 0x1f)) - (sec0 >> 0x1f))" ( (binary_expression "((uint)(uVar4 < uVar2 * 0x3c) +\n                   (uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4) + (yday1._0_4_ >> 0x1f)) - (sec0 >> 0x1f)" (parenthesized_expression "((uint)(uVar4 < uVar2 * 0x3c) +\n                   (uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4) + (yday1._0_4_ >> 0x1f))" ( (binary_expression "(uint)(uVar4 < uVar2 * 0x3c) +\n                   (uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4) + (yday1._0_4_ >> 0x1f)" (binary_expression "(uint)(uVar4 < uVar2 * 0x3c) +\n                   (uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4)" (call_expression "(uint)(uVar4 < uVar2 * 0x3c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar2 * 0x3c)" ( (binary_expression "uVar4 < uVar2 * 0x3c" identifier < (binary_expression "uVar2 * 0x3c" identifier * number_literal)) ))) + (parenthesized_expression "(uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4)" ( (binary_expression "uVar2 * 0xf >> 0x1e |\n                   (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4" (binary_expression "uVar2 * 0xf >> 0x1e" (binary_expression "uVar2 * 0xf" identifier * number_literal) >> number_literal) | (binary_expression "(((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) *\n                   4" (parenthesized_expression "(((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf))" ( (binary_expression "((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)" (parenthesized_expression "((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3)" ( (binary_expression "(uVar2 >> 0x1c | iVar3 * 0x10) - iVar3" (parenthesized_expression "(uVar2 >> 0x1c | iVar3 * 0x10)" ( (binary_expression "uVar2 >> 0x1c | iVar3 * 0x10" (binary_expression "uVar2 >> 0x1c" identifier >> number_literal) | (binary_expression "iVar3 * 0x10" identifier * number_literal)) )) - identifier) )) - (call_expression "(uint)(uVar2 * 0x10 < uVar2 * 0xf)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 * 0x10 < uVar2 * 0xf)" ( (binary_expression "uVar2 * 0x10 < uVar2 * 0xf" (binary_expression "uVar2 * 0x10" identifier * number_literal) < (binary_expression "uVar2 * 0xf" identifier * number_literal)) )))) )) * number_literal)) ))) + (parenthesized_expression "(yday1._0_4_ >> 0x1f)" ( (binary_expression "yday1._0_4_ >> 0x1f" (field_expression "yday1._0_4_" identifier . field_identifier) >> number_literal) ))) )) - (parenthesized_expression "(sec0 >> 0x1f)" ( (binary_expression "sec0 >> 0x1f" identifier >> number_literal) ))) )) - (call_expression "(uint)(uVar4 < uVar4 - sec0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar4 - sec0)" ( (binary_expression "uVar4 < uVar4 - sec0" identifier < (binary_expression "uVar4 - sec0" identifier - identifier)) )))) , (binary_expression "uVar4 - sec0" identifier - identifier) ))) ;) })))
(translation_unit "int FUN_00020480(int param_1,uint param_2,int param_3,int param_4,int param_5,int param_6,\n                int param_7,uint param_8,int param_9,int param_10,int param_11,int param_12)\n\n{\n  longlong lVar1;\n  uint uVar2;\n  int iVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  uint uVar7;\n  \n  iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0);\n  iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0);\n  lVar1 = (ulonglong)(param_2 - param_8) * 0x16d;\n  uVar7 = (uint)lVar1;\n  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);\n  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);\n  uVar2 = param_4 + uVar7;\n  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );\n  uVar4 = uVar5 + (uVar2 - param_9);\n  iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9));\n  uVar2 = uVar4 * 0x18 + param_5;\n  uVar5 = uVar2 - param_10;\n  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5);\n  uVar4 = uVar5 * 0x3c + param_6;\n  uVar2 = uVar4 - param_11;\n  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2);\n  uVar4 = uVar2 * 0x3c + param_7;\n  return (((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12);\n}\n\n" (function_definition "int FUN_00020480(int param_1,uint param_2,int param_3,int param_4,int param_5,int param_6,\n                int param_7,uint param_8,int param_9,int param_10,int param_11,int param_12)\n\n{\n  longlong lVar1;\n  uint uVar2;\n  int iVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  uint uVar7;\n  \n  iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0);\n  iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0);\n  lVar1 = (ulonglong)(param_2 - param_8) * 0x16d;\n  uVar7 = (uint)lVar1;\n  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);\n  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);\n  uVar2 = param_4 + uVar7;\n  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );\n  uVar4 = uVar5 + (uVar2 - param_9);\n  iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9));\n  uVar2 = uVar4 * 0x18 + param_5;\n  uVar5 = uVar2 - param_10;\n  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5);\n  uVar4 = uVar5 * 0x3c + param_6;\n  uVar2 = uVar4 - param_11;\n  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2);\n  uVar4 = uVar2 * 0x3c + param_7;\n  return (((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12);\n}" primitive_type (function_declarator "FUN_00020480(int param_1,uint param_2,int param_3,int param_4,int param_5,int param_6,\n                int param_7,uint param_8,int param_9,int param_10,int param_11,int param_12)" identifier (parameter_list "(int param_1,uint param_2,int param_3,int param_4,int param_5,int param_6,\n                int param_7,uint param_8,int param_9,int param_10,int param_11,int param_12)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "uint param_2" type_identifier identifier) , (parameter_declaration "int param_3" primitive_type identifier) , (parameter_declaration "int param_4" primitive_type identifier) , (parameter_declaration "int param_5" primitive_type identifier) , (parameter_declaration "int param_6" primitive_type identifier) , (parameter_declaration "int param_7" primitive_type identifier) , (parameter_declaration "uint param_8" type_identifier identifier) , (parameter_declaration "int param_9" primitive_type identifier) , (parameter_declaration "int param_10" primitive_type identifier) , (parameter_declaration "int param_11" primitive_type identifier) , (parameter_declaration "int param_12" primitive_type identifier) ))) (compound_statement "{\n  longlong lVar1;\n  uint uVar2;\n  int iVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  uint uVar7;\n  \n  iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0);\n  iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0);\n  lVar1 = (ulonglong)(param_2 - param_8) * 0x16d;\n  uVar7 = (uint)lVar1;\n  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);\n  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);\n  uVar2 = param_4 + uVar7;\n  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );\n  uVar4 = uVar5 + (uVar2 - param_9);\n  iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9));\n  uVar2 = uVar4 * 0x18 + param_5;\n  uVar5 = uVar2 - param_10;\n  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5);\n  uVar4 = uVar5 * 0x3c + param_6;\n  uVar2 = uVar4 - param_11;\n  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2);\n  uVar4 = uVar2 * 0x3c + param_7;\n  return (((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12);\n}" { (declaration "longlong lVar1;" type_identifier identifier ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (expression_statement "iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0);" (assignment_expression "iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0)" identifier = (binary_expression "((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0)" (parenthesized_expression "((param_1 << 0x1e | param_2 >> 2) + 0x1db)" ( (binary_expression "(param_1 << 0x1e | param_2 >> 2) + 0x1db" (parenthesized_expression "(param_1 << 0x1e | param_2 >> 2)" ( (binary_expression "param_1 << 0x1e | param_2 >> 2" (binary_expression "param_1 << 0x1e" identifier << number_literal) | (binary_expression "param_2 >> 2" identifier >> number_literal)) )) + number_literal) )) - (call_expression "(uint)((param_2 & 3) == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((param_2 & 3) == 0)" ( (binary_expression "(param_2 & 3) == 0" (parenthesized_expression "(param_2 & 3)" ( (binary_expression "param_2 & 3" identifier & number_literal) )) == number_literal) ))))) ;) (expression_statement "iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0);" (assignment_expression "iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0)" identifier = (binary_expression "((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0)" (parenthesized_expression "((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db)" ( (binary_expression "(((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db" (parenthesized_expression "(((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2)" ( (binary_expression "((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2" (binary_expression "((int)param_8 >> 0x1f) << 0x1e" (parenthesized_expression "((int)param_8 >> 0x1f)" ( (binary_expression "(int)param_8 >> 0x1f" (cast_expression "(int)param_8" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) << number_literal) | (binary_expression "param_8 >> 2" identifier >> number_literal)) )) + number_literal) )) - (call_expression "(uint)((param_8 & 3) == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((param_8 & 3) == 0)" ( (binary_expression "(param_8 & 3) == 0" (parenthesized_expression "(param_8 & 3)" ( (binary_expression "param_8 & 3" identifier & number_literal) )) == number_literal) ))))) ;) (expression_statement "lVar1 = (ulonglong)(param_2 - param_8) * 0x16d;" (assignment_expression "lVar1 = (ulonglong)(param_2 - param_8) * 0x16d" identifier = (binary_expression "(ulonglong)(param_2 - param_8) * 0x16d" (call_expression "(ulonglong)(param_2 - param_8)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(param_2 - param_8)" ( (binary_expression "param_2 - param_8" identifier - identifier) ))) * number_literal)) ;) (expression_statement "uVar7 = (uint)lVar1;" (assignment_expression "uVar7 = (uint)lVar1" identifier = (cast_expression "(uint)lVar1" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);" (assignment_expression "uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f)" identifier = (binary_expression "iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f)" (binary_expression "iVar3 / 0x19" identifier / number_literal) + (parenthesized_expression "(iVar3 % 0x19 >> 0x1f)" ( (binary_expression "iVar3 % 0x19 >> 0x1f" (binary_expression "iVar3 % 0x19" identifier % number_literal) >> number_literal) )))) ;) (expression_statement "uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);" (assignment_expression "uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f)" identifier = (binary_expression "iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f)" (binary_expression "iVar6 / 0x19" identifier / number_literal) + (parenthesized_expression "(iVar6 % 0x19 >> 0x1f)" ( (binary_expression "iVar6 % 0x19 >> 0x1f" (binary_expression "iVar6 % 0x19" identifier % number_literal) >> number_literal) )))) ;) (expression_statement "uVar2 = param_4 + uVar7;" (assignment_expression "uVar2 = param_4 + uVar7" identifier = (binary_expression "param_4 + uVar7" identifier + identifier)) ;) (expression_statement "uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );" (assignment_expression "uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          )" identifier = (binary_expression "((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          )" (parenthesized_expression "((iVar3 - iVar6) - (uVar4 - uVar5))" ( (binary_expression "(iVar3 - iVar6) - (uVar4 - uVar5)" (parenthesized_expression "(iVar3 - iVar6)" ( (binary_expression "iVar3 - iVar6" identifier - identifier) )) - (parenthesized_expression "(uVar4 - uVar5)" ( (binary_expression "uVar4 - uVar5" identifier - identifier) ))) )) + (parenthesized_expression "((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          )" ( (binary_expression "(((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)" (parenthesized_expression "(((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2)" ( (binary_expression "((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2" (binary_expression "((int)uVar4 >> 0x1f) << 0x1e" (parenthesized_expression "((int)uVar4 >> 0x1f)" ( (binary_expression "(int)uVar4 >> 0x1f" (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) << number_literal) | (binary_expression "uVar4 >> 2" identifier >> number_literal)) )) - (parenthesized_expression "(((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)" ( (binary_expression "((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2" (binary_expression "((int)uVar5 >> 0x1f) << 0x1e" (parenthesized_expression "((int)uVar5 >> 0x1f)" ( (binary_expression "(int)uVar5 >> 0x1f" (cast_expression "(int)uVar5" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) << number_literal) | (binary_expression "uVar5 >> 2" identifier >> number_literal)) ))) )))) ;) (expression_statement "uVar4 = uVar5 + (uVar2 - param_9);" (assignment_expression "uVar4 = uVar5 + (uVar2 - param_9)" identifier = (binary_expression "uVar5 + (uVar2 - param_9)" identifier + (parenthesized_expression "(uVar2 - param_9)" ( (binary_expression "uVar2 - param_9" identifier - identifier) )))) ;) (expression_statement "iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9));" (assignment_expression "iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9))" identifier = (binary_expression "(uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9))" (binary_expression "(uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f)" (call_expression "(uint)(uVar4 < uVar5)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar5)" ( (binary_expression "uVar4 < uVar5" identifier < identifier) ))) + (parenthesized_expression "((int)uVar5 >> 0x1f)" ( (binary_expression "(int)uVar5 >> 0x1f" (cast_expression "(int)uVar5" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) + (parenthesized_expression "((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9))" ( (binary_expression "(((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9)" (parenthesized_expression "(((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f))" ( (binary_expression "((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)" (parenthesized_expression "((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20))" ( (binary_expression "(uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)" (binary_expression "(uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d" (binary_expression "(uint)(uVar2 < uVar7) +\n            param_3" (call_expression "(uint)(uVar2 < uVar7)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar7)" ( (binary_expression "uVar2 < uVar7" identifier < identifier) ))) + identifier) + (binary_expression "((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d" (parenthesized_expression "((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8))" ( (binary_expression "(param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)" (parenthesized_expression "(param_1 - ((int)param_8 >> 0x1f))" ( (binary_expression "param_1 - ((int)param_8 >> 0x1f)" identifier - (parenthesized_expression "((int)param_8 >> 0x1f)" ( (binary_expression "(int)param_8 >> 0x1f" (cast_expression "(int)param_8" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) )) - (call_expression "(uint)(param_2 < param_2 - param_8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(param_2 < param_2 - param_8)" ( (binary_expression "param_2 < param_2 - param_8" identifier < (binary_expression "param_2 - param_8" identifier - identifier)) )))) )) * number_literal)) + (cast_expression "(int)((ulonglong)lVar1 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar1 >> 0x20)" ( (binary_expression "(ulonglong)lVar1 >> 0x20" (cast_expression "(ulonglong)lVar1" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) )) - (parenthesized_expression "(param_9 >> 0x1f)" ( (binary_expression "param_9 >> 0x1f" identifier >> number_literal) ))) )) - (call_expression "(uint)(uVar2 < uVar2 - param_9)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar2 - param_9)" ( (binary_expression "uVar2 < uVar2 - param_9" identifier < (binary_expression "uVar2 - param_9" identifier - identifier)) )))) )))) ;) (expression_statement "uVar2 = uVar4 * 0x18 + param_5;" (assignment_expression "uVar2 = uVar4 * 0x18 + param_5" identifier = (binary_expression "uVar4 * 0x18 + param_5" (binary_expression "uVar4 * 0x18" identifier * number_literal) + identifier)) ;) (expression_statement "uVar5 = uVar2 - param_10;" (assignment_expression "uVar5 = uVar2 - param_10" identifier = (binary_expression "uVar2 - param_10" identifier - identifier)) ;) (expression_statement "iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5);" (assignment_expression "iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5)" identifier = (binary_expression "(((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5)" (parenthesized_expression "(((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f))" ( (binary_expression "((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)" (parenthesized_expression "((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f))" ( (binary_expression "(uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)" (binary_expression "(uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8)" (call_expression "(uint)(uVar2 < uVar4 * 0x18)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar4 * 0x18)" ( (binary_expression "uVar2 < uVar4 * 0x18" identifier < (binary_expression "uVar4 * 0x18" identifier * number_literal)) ))) + (parenthesized_expression "(uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8)" ( (binary_expression "uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8" (binary_expression "uVar4 * 3 >> 0x1d" (binary_expression "uVar4 * 3" identifier * number_literal) >> number_literal) | (binary_expression "((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8" (parenthesized_expression "((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3)" ( (binary_expression "(uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3" (binary_expression "(uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2)" (call_expression "(uint)(uVar4 * 3 < uVar4 * 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 * 3 < uVar4 * 2)" ( (binary_expression "uVar4 * 3 < uVar4 * 2" (binary_expression "uVar4 * 3" identifier * number_literal) < (binary_expression "uVar4 * 2" identifier * number_literal)) ))) + (parenthesized_expression "(uVar4 >> 0x1f | iVar3 * 2)" ( (binary_expression "uVar4 >> 0x1f | iVar3 * 2" (binary_expression "uVar4 >> 0x1f" identifier >> number_literal) | (binary_expression "iVar3 * 2" identifier * number_literal)) ))) + identifier) )) * number_literal)) ))) + (parenthesized_expression "(param_5 >> 0x1f)" ( (binary_expression "param_5 >> 0x1f" identifier >> number_literal) ))) )) - (parenthesized_expression "(param_10 >> 0x1f)" ( (binary_expression "param_10 >> 0x1f" identifier >> number_literal) ))) )) - (call_expression "(uint)(uVar2 < uVar5)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar5)" ( (binary_expression "uVar2 < uVar5" identifier < identifier) ))))) ;) (expression_statement "uVar4 = uVar5 * 0x3c + param_6;" (assignment_expression "uVar4 = uVar5 * 0x3c + param_6" identifier = (binary_expression "uVar5 * 0x3c + param_6" (binary_expression "uVar5 * 0x3c" identifier * number_literal) + identifier)) ;) (expression_statement "uVar2 = uVar4 - param_11;" (assignment_expression "uVar2 = uVar4 - param_11" identifier = (binary_expression "uVar4 - param_11" identifier - identifier)) ;) (expression_statement "iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2);" (assignment_expression "iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2)" identifier = (binary_expression "(((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2)" (parenthesized_expression "(((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f))" ( (binary_expression "((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)" (parenthesized_expression "((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f))" ( (binary_expression "(uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)" (binary_expression "(uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4)" (call_expression "(uint)(uVar4 < uVar5 * 0x3c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar5 * 0x3c)" ( (binary_expression "uVar4 < uVar5 * 0x3c" identifier < (binary_expression "uVar5 * 0x3c" identifier * number_literal)) ))) + (parenthesized_expression "(uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4)" ( (binary_expression "uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4" (binary_expression "uVar5 * 0xf >> 0x1e" (binary_expression "uVar5 * 0xf" identifier * number_literal) >> number_literal) | (binary_expression "(((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4" (parenthesized_expression "(((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf))" ( (binary_expression "((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)" (parenthesized_expression "((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3)" ( (binary_expression "(uVar5 >> 0x1c | iVar3 * 0x10) - iVar3" (parenthesized_expression "(uVar5 >> 0x1c | iVar3 * 0x10)" ( (binary_expression "uVar5 >> 0x1c | iVar3 * 0x10" (binary_expression "uVar5 >> 0x1c" identifier >> number_literal) | (binary_expression "iVar3 * 0x10" identifier * number_literal)) )) - identifier) )) - (call_expression "(uint)(uVar5 * 0x10 < uVar5 * 0xf)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 * 0x10 < uVar5 * 0xf)" ( (binary_expression "uVar5 * 0x10 < uVar5 * 0xf" (binary_expression "uVar5 * 0x10" identifier * number_literal) < (binary_expression "uVar5 * 0xf" identifier * number_literal)) )))) )) * number_literal)) ))) + (parenthesized_expression "(param_6 >> 0x1f)" ( (binary_expression "param_6 >> 0x1f" identifier >> number_literal) ))) )) - (parenthesized_expression "(param_11 >> 0x1f)" ( (binary_expression "param_11 >> 0x1f" identifier >> number_literal) ))) )) - (call_expression "(uint)(uVar4 < uVar2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar2)" ( (binary_expression "uVar4 < uVar2" identifier < identifier) ))))) ;) (expression_statement "uVar4 = uVar2 * 0x3c + param_7;" (assignment_expression "uVar4 = uVar2 * 0x3c + param_7" identifier = (binary_expression "uVar2 * 0x3c + param_7" (binary_expression "uVar2 * 0x3c" identifier * number_literal) + identifier)) ;) (return_statement "return (((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12);" return (binary_expression "(((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12)" (parenthesized_expression "(((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f))" ( (binary_expression "((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)" (parenthesized_expression "((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f))" ( (binary_expression "(uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)" (binary_expression "(uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4)" (call_expression "(uint)(uVar4 < uVar2 * 0x3c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar2 * 0x3c)" ( (binary_expression "uVar4 < uVar2 * 0x3c" identifier < (binary_expression "uVar2 * 0x3c" identifier * number_literal)) ))) + (parenthesized_expression "(uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4)" ( (binary_expression "uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4" (binary_expression "uVar2 * 0xf >> 0x1e" (binary_expression "uVar2 * 0xf" identifier * number_literal) >> number_literal) | (binary_expression "(((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4" (parenthesized_expression "(((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf))" ( (binary_expression "((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)" (parenthesized_expression "((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3)" ( (binary_expression "(uVar2 >> 0x1c | iVar3 * 0x10) - iVar3" (parenthesized_expression "(uVar2 >> 0x1c | iVar3 * 0x10)" ( (binary_expression "uVar2 >> 0x1c | iVar3 * 0x10" (binary_expression "uVar2 >> 0x1c" identifier >> number_literal) | (binary_expression "iVar3 * 0x10" identifier * number_literal)) )) - identifier) )) - (call_expression "(uint)(uVar2 * 0x10 < uVar2 * 0xf)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 * 0x10 < uVar2 * 0xf)" ( (binary_expression "uVar2 * 0x10 < uVar2 * 0xf" (binary_expression "uVar2 * 0x10" identifier * number_literal) < (binary_expression "uVar2 * 0xf" identifier * number_literal)) )))) )) * number_literal)) ))) + (parenthesized_expression "(param_7 >> 0x1f)" ( (binary_expression "param_7 >> 0x1f" identifier >> number_literal) ))) )) - (parenthesized_expression "(param_12 >> 0x1f)" ( (binary_expression "param_12 >> 0x1f" identifier >> number_literal) ))) )) - (call_expression "(uint)(uVar4 < uVar4 - param_12)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 < uVar4 - param_12)" ( (binary_expression "uVar4 < uVar4 - param_12" identifier < (binary_expression "uVar4 - param_12" identifier - identifier)) )))) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT << LIT) | (binary_expression IDENT >> LIT)) )) + LIT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )) << LIT) | (binary_expression IDENT >> LIT)) )) + LIT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT - IDENT) ))) * LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT / LIT) + (parenthesized_expression ( (binary_expression (binary_expression IDENT % LIT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT / LIT) + (parenthesized_expression ( (binary_expression (binary_expression IDENT % LIT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (parenthesized_expression ( (binary_expression IDENT - IDENT) ))) )) + (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )) << LIT) | (binary_expression IDENT >> LIT)) )) - (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )) << LIT) | (binary_expression IDENT >> LIT)) ))) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (parenthesized_expression ( (binary_expression IDENT - IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))) + (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) + (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))) + IDENT) + (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT - IDENT)) )))) )) * LIT)) + (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) )) - (parenthesized_expression ( (binary_expression IDENT >> LIT) ))) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT - IDENT)) )))) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT * LIT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT * LIT)) ))) + (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT * LIT) >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT * LIT) < (binary_expression IDENT * LIT)) ))) + (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) | (binary_expression IDENT * LIT)) ))) + IDENT) )) * LIT)) ))) + (parenthesized_expression ( (binary_expression IDENT >> LIT) ))) )) - (parenthesized_expression ( (binary_expression IDENT >> LIT) ))) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT * LIT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT * LIT)) ))) + (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT * LIT) >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) | (binary_expression IDENT * LIT)) )) - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT * LIT) < (binary_expression IDENT * LIT)) )))) )) * LIT)) ))) + (parenthesized_expression ( (binary_expression IDENT >> LIT) ))) )) - (parenthesized_expression ( (binary_expression IDENT >> LIT) ))) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT * LIT) + IDENT)) ;) (return_statement return (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT * LIT)) ))) + (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT * LIT) >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) | (binary_expression IDENT * LIT)) )) - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT * LIT) < (binary_expression IDENT * LIT)) )))) )) * LIT)) ))) + (parenthesized_expression ( (binary_expression IDENT >> LIT) ))) )) - (parenthesized_expression ( (binary_expression IDENT >> LIT) ))) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT - IDENT)) )))) ;) })))
(function_definition "int FUN_00020480(int param_1,uint param_2,int param_3,int param_4,int param_5,int param_6,\n                int param_7,uint param_8,int param_9,int param_10,int param_11,int param_12)\n\n{\n  longlong lVar1;\n  uint uVar2;\n  int iVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  uint uVar7;\n  \n  iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0);\n  iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0);\n  lVar1 = (ulonglong)(param_2 - param_8) * 0x16d;\n  uVar7 = (uint)lVar1;\n  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);\n  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);\n  uVar2 = param_4 + uVar7;\n  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );\n  uVar4 = uVar5 + (uVar2 - param_9);\n  iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9));\n  uVar2 = uVar4 * 0x18 + param_5;\n  uVar5 = uVar2 - param_10;\n  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5);\n  uVar4 = uVar5 * 0x3c + param_6;\n  uVar2 = uVar4 - param_11;\n  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2);\n  uVar4 = uVar2 * 0x3c + param_7;\n  return (((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12);\n}" (primitive_type "int") (function_declarator "FUN_00020480(int param_1,uint param_2,int param_3,int param_4,int param_5,int param_6,\n                int param_7,uint param_8,int param_9,int param_10,int param_11,int param_12)" (identifier "FUN_00020480") (parameter_list "(int param_1,uint param_2,int param_3,int param_4,int param_5,int param_6,\n                int param_7,uint param_8,int param_9,int param_10,int param_11,int param_12)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) (, ",") (parameter_declaration "uint param_2" (type_identifier "uint") (identifier "param_2")) (, ",") (parameter_declaration "int param_3" (primitive_type "int") (identifier "param_3")) (, ",") (parameter_declaration "int param_4" (primitive_type "int") (identifier "param_4")) (, ",") (parameter_declaration "int param_5" (primitive_type "int") (identifier "param_5")) (, ",") (parameter_declaration "int param_6" (primitive_type "int") (identifier "param_6")) (, ",") (parameter_declaration "int param_7" (primitive_type "int") (identifier "param_7")) (, ",") (parameter_declaration "uint param_8" (type_identifier "uint") (identifier "param_8")) (, ",") (parameter_declaration "int param_9" (primitive_type "int") (identifier "param_9")) (, ",") (parameter_declaration "int param_10" (primitive_type "int") (identifier "param_10")) (, ",") (parameter_declaration "int param_11" (primitive_type "int") (identifier "param_11")) (, ",") (parameter_declaration "int param_12" (primitive_type "int") (identifier "param_12")) () ")"))) (compound_statement "{\n  longlong lVar1;\n  uint uVar2;\n  int iVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  uint uVar7;\n  \n  iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0);\n  iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0);\n  lVar1 = (ulonglong)(param_2 - param_8) * 0x16d;\n  uVar7 = (uint)lVar1;\n  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);\n  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);\n  uVar2 = param_4 + uVar7;\n  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );\n  uVar4 = uVar5 + (uVar2 - param_9);\n  iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9));\n  uVar2 = uVar4 * 0x18 + param_5;\n  uVar5 = uVar2 - param_10;\n  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5);\n  uVar4 = uVar5 * 0x3c + param_6;\n  uVar2 = uVar4 - param_11;\n  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2);\n  uVar4 = uVar2 * 0x3c + param_7;\n  return (((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12);\n}" ({ "{") (declaration "longlong lVar1;" (type_identifier "longlong") (identifier "lVar1") (; ";")) (declaration "uint uVar2;" (type_identifier "uint") (identifier "uVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "uint uVar4;" (type_identifier "uint") (identifier "uVar4") (; ";")) (declaration "uint uVar5;" (type_identifier "uint") (identifier "uVar5") (; ";")) (declaration "int iVar6;" (primitive_type "int") (identifier "iVar6") (; ";")) (declaration "uint uVar7;" (type_identifier "uint") (identifier "uVar7") (; ";")) (expression_statement "iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0);" (assignment_expression "iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0)" (identifier "iVar3") (= "=") (binary_expression "((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0)" (parenthesized_expression "((param_1 << 0x1e | param_2 >> 2) + 0x1db)" (( "(") (binary_expression "(param_1 << 0x1e | param_2 >> 2) + 0x1db" (parenthesized_expression "(param_1 << 0x1e | param_2 >> 2)" (( "(") (binary_expression "param_1 << 0x1e | param_2 >> 2" (binary_expression "param_1 << 0x1e" (identifier "param_1") (<< "<<") (number_literal "0x1e")) (| "|") (binary_expression "param_2 >> 2" (identifier "param_2") (>> ">>") (number_literal "2"))) () ")")) (+ "+") (number_literal "0x1db")) () ")")) (- "-") (call_expression "(uint)((param_2 & 3) == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((param_2 & 3) == 0)" (( "(") (binary_expression "(param_2 & 3) == 0" (parenthesized_expression "(param_2 & 3)" (( "(") (binary_expression "param_2 & 3" (identifier "param_2") (& "&") (number_literal "3")) () ")")) (== "==") (number_literal "0")) () ")"))))) (; ";")) (expression_statement "iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0);" (assignment_expression "iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0)" (identifier "iVar6") (= "=") (binary_expression "((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0)" (parenthesized_expression "((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db)" (( "(") (binary_expression "(((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db" (parenthesized_expression "(((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2)" (( "(") (binary_expression "((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2" (binary_expression "((int)param_8 >> 0x1f) << 0x1e" (parenthesized_expression "((int)param_8 >> 0x1f)" (( "(") (binary_expression "(int)param_8 >> 0x1f" (cast_expression "(int)param_8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_8")) (>> ">>") (number_literal "0x1f")) () ")")) (<< "<<") (number_literal "0x1e")) (| "|") (binary_expression "param_8 >> 2" (identifier "param_8") (>> ">>") (number_literal "2"))) () ")")) (+ "+") (number_literal "0x1db")) () ")")) (- "-") (call_expression "(uint)((param_8 & 3) == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((param_8 & 3) == 0)" (( "(") (binary_expression "(param_8 & 3) == 0" (parenthesized_expression "(param_8 & 3)" (( "(") (binary_expression "param_8 & 3" (identifier "param_8") (& "&") (number_literal "3")) () ")")) (== "==") (number_literal "0")) () ")"))))) (; ";")) (expression_statement "lVar1 = (ulonglong)(param_2 - param_8) * 0x16d;" (assignment_expression "lVar1 = (ulonglong)(param_2 - param_8) * 0x16d" (identifier "lVar1") (= "=") (binary_expression "(ulonglong)(param_2 - param_8) * 0x16d" (call_expression "(ulonglong)(param_2 - param_8)" (parenthesized_expression "(ulonglong)" (( "(") (identifier "ulonglong") () ")")) (argument_list "(param_2 - param_8)" (( "(") (binary_expression "param_2 - param_8" (identifier "param_2") (- "-") (identifier "param_8")) () ")"))) (* "*") (number_literal "0x16d"))) (; ";")) (expression_statement "uVar7 = (uint)lVar1;" (assignment_expression "uVar7 = (uint)lVar1" (identifier "uVar7") (= "=") (cast_expression "(uint)lVar1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar1"))) (; ";")) (expression_statement "uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);" (assignment_expression "uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f)" (identifier "uVar4") (= "=") (binary_expression "iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f)" (binary_expression "iVar3 / 0x19" (identifier "iVar3") (/ "/") (number_literal "0x19")) (+ "+") (parenthesized_expression "(iVar3 % 0x19 >> 0x1f)" (( "(") (binary_expression "iVar3 % 0x19 >> 0x1f" (binary_expression "iVar3 % 0x19" (identifier "iVar3") (% "%") (number_literal "0x19")) (>> ">>") (number_literal "0x1f")) () ")")))) (; ";")) (expression_statement "uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);" (assignment_expression "uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f)" (identifier "uVar5") (= "=") (binary_expression "iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f)" (binary_expression "iVar6 / 0x19" (identifier "iVar6") (/ "/") (number_literal "0x19")) (+ "+") (parenthesized_expression "(iVar6 % 0x19 >> 0x1f)" (( "(") (binary_expression "iVar6 % 0x19 >> 0x1f" (binary_expression "iVar6 % 0x19" (identifier "iVar6") (% "%") (number_literal "0x19")) (>> ">>") (number_literal "0x1f")) () ")")))) (; ";")) (expression_statement "uVar2 = param_4 + uVar7;" (assignment_expression "uVar2 = param_4 + uVar7" (identifier "uVar2") (= "=") (binary_expression "param_4 + uVar7" (identifier "param_4") (+ "+") (identifier "uVar7"))) (; ";")) (expression_statement "uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          );" (assignment_expression "uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          )" (identifier "uVar5") (= "=") (binary_expression "((iVar3 - iVar6) - (uVar4 - uVar5)) +\n          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          )" (parenthesized_expression "((iVar3 - iVar6) - (uVar4 - uVar5))" (( "(") (binary_expression "(iVar3 - iVar6) - (uVar4 - uVar5)" (parenthesized_expression "(iVar3 - iVar6)" (( "(") (binary_expression "iVar3 - iVar6" (identifier "iVar3") (- "-") (identifier "iVar6")) () ")")) (- "-") (parenthesized_expression "(uVar4 - uVar5)" (( "(") (binary_expression "uVar4 - uVar5" (identifier "uVar4") (- "-") (identifier "uVar5")) () ")"))) () ")")) (+ "+") (parenthesized_expression "((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)\n          )" (( "(") (binary_expression "(((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)" (parenthesized_expression "(((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2)" (( "(") (binary_expression "((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2" (binary_expression "((int)uVar4 >> 0x1f) << 0x1e" (parenthesized_expression "((int)uVar4 >> 0x1f)" (( "(") (binary_expression "(int)uVar4 >> 0x1f" (cast_expression "(int)uVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar4")) (>> ">>") (number_literal "0x1f")) () ")")) (<< "<<") (number_literal "0x1e")) (| "|") (binary_expression "uVar4 >> 2" (identifier "uVar4") (>> ">>") (number_literal "2"))) () ")")) (- "-") (parenthesized_expression "(((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)" (( "(") (binary_expression "((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2" (binary_expression "((int)uVar5 >> 0x1f) << 0x1e" (parenthesized_expression "((int)uVar5 >> 0x1f)" (( "(") (binary_expression "(int)uVar5 >> 0x1f" (cast_expression "(int)uVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar5")) (>> ">>") (number_literal "0x1f")) () ")")) (<< "<<") (number_literal "0x1e")) (| "|") (binary_expression "uVar5 >> 2" (identifier "uVar5") (>> ">>") (number_literal "2"))) () ")"))) () ")")))) (; ";")) (expression_statement "uVar4 = uVar5 + (uVar2 - param_9);" (assignment_expression "uVar4 = uVar5 + (uVar2 - param_9)" (identifier "uVar4") (= "=") (binary_expression "uVar5 + (uVar2 - param_9)" (identifier "uVar5") (+ "+") (parenthesized_expression "(uVar2 - param_9)" (( "(") (binary_expression "uVar2 - param_9" (identifier "uVar2") (- "-") (identifier "param_9")) () ")")))) (; ";")) (expression_statement "iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9));" (assignment_expression "iVar3 = (uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9))" (identifier "iVar3") (= "=") (binary_expression "(uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f) +\n          ((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9))" (binary_expression "(uint)(uVar4 < uVar5) +\n          ((int)uVar5 >> 0x1f)" (call_expression "(uint)(uVar4 < uVar5)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar4 < uVar5)" (( "(") (binary_expression "uVar4 < uVar5" (identifier "uVar4") (< "<") (identifier "uVar5")) () ")"))) (+ "+") (parenthesized_expression "((int)uVar5 >> 0x1f)" (( "(") (binary_expression "(int)uVar5 >> 0x1f" (cast_expression "(int)uVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar5")) (>> ">>") (number_literal "0x1f")) () ")"))) (+ "+") (parenthesized_expression "((((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9))" (( "(") (binary_expression "(((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -\n          (uint)(uVar2 < uVar2 - param_9)" (parenthesized_expression "(((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f))" (( "(") (binary_expression "((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)" (parenthesized_expression "((uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20))" (( "(") (binary_expression "(uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d + (int)((ulonglong)lVar1 >> 0x20)" (binary_expression "(uint)(uVar2 < uVar7) +\n            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d" (binary_expression "(uint)(uVar2 < uVar7) +\n            param_3" (call_expression "(uint)(uVar2 < uVar7)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar2 < uVar7)" (( "(") (binary_expression "uVar2 < uVar7" (identifier "uVar2") (< "<") (identifier "uVar7")) () ")"))) (+ "+") (identifier "param_3")) (+ "+") (binary_expression "((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *\n                      0x16d" (parenthesized_expression "((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8))" (( "(") (binary_expression "(param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)" (parenthesized_expression "(param_1 - ((int)param_8 >> 0x1f))" (( "(") (binary_expression "param_1 - ((int)param_8 >> 0x1f)" (identifier "param_1") (- "-") (parenthesized_expression "((int)param_8 >> 0x1f)" (( "(") (binary_expression "(int)param_8 >> 0x1f" (cast_expression "(int)param_8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_8")) (>> ">>") (number_literal "0x1f")) () ")"))) () ")")) (- "-") (call_expression "(uint)(param_2 < param_2 - param_8)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(param_2 < param_2 - param_8)" (( "(") (binary_expression "param_2 < param_2 - param_8" (identifier "param_2") (< "<") (binary_expression "param_2 - param_8" (identifier "param_2") (- "-") (identifier "param_8"))) () ")")))) () ")")) (* "*") (number_literal "0x16d"))) (+ "+") (cast_expression "(int)((ulonglong)lVar1 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)lVar1 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar1 >> 0x20" (cast_expression "(ulonglong)lVar1" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar1")) (>> ">>") (number_literal "0x20")) () ")")))) () ")")) (- "-") (parenthesized_expression "(param_9 >> 0x1f)" (( "(") (binary_expression "param_9 >> 0x1f" (identifier "param_9") (>> ">>") (number_literal "0x1f")) () ")"))) () ")")) (- "-") (call_expression "(uint)(uVar2 < uVar2 - param_9)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar2 < uVar2 - param_9)" (( "(") (binary_expression "uVar2 < uVar2 - param_9" (identifier "uVar2") (< "<") (binary_expression "uVar2 - param_9" (identifier "uVar2") (- "-") (identifier "param_9"))) () ")")))) () ")")))) (; ";")) (expression_statement "uVar2 = uVar4 * 0x18 + param_5;" (assignment_expression "uVar2 = uVar4 * 0x18 + param_5" (identifier "uVar2") (= "=") (binary_expression "uVar4 * 0x18 + param_5" (binary_expression "uVar4 * 0x18" (identifier "uVar4") (* "*") (number_literal "0x18")) (+ "+") (identifier "param_5"))) (; ";")) (expression_statement "uVar5 = uVar2 - param_10;" (assignment_expression "uVar5 = uVar2 - param_10" (identifier "uVar5") (= "=") (binary_expression "uVar2 - param_10" (identifier "uVar2") (- "-") (identifier "param_10"))) (; ";")) (expression_statement "iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5);" (assignment_expression "iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5)" (identifier "iVar3") (= "=") (binary_expression "(((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5)" (parenthesized_expression "(((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f))" (( "(") (binary_expression "((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)) - (param_10 >> 0x1f)" (parenthesized_expression "((uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f))" (( "(") (binary_expression "(uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +\n           (param_5 >> 0x1f)" (binary_expression "(uint)(uVar2 < uVar4 * 0x18) +\n           (uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8)" (call_expression "(uint)(uVar2 < uVar4 * 0x18)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar2 < uVar4 * 0x18)" (( "(") (binary_expression "uVar2 < uVar4 * 0x18" (identifier "uVar2") (< "<") (binary_expression "uVar4 * 0x18" (identifier "uVar4") (* "*") (number_literal "0x18"))) () ")"))) (+ "+") (parenthesized_expression "(uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8)" (( "(") (binary_expression "uVar4 * 3 >> 0x1d |\n           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8" (binary_expression "uVar4 * 3 >> 0x1d" (binary_expression "uVar4 * 3" (identifier "uVar4") (* "*") (number_literal "3")) (>> ">>") (number_literal "0x1d")) (| "|") (binary_expression "((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8" (parenthesized_expression "((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3)" (( "(") (binary_expression "(uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3" (binary_expression "(uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2)" (call_expression "(uint)(uVar4 * 3 < uVar4 * 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar4 * 3 < uVar4 * 2)" (( "(") (binary_expression "uVar4 * 3 < uVar4 * 2" (binary_expression "uVar4 * 3" (identifier "uVar4") (* "*") (number_literal "3")) (< "<") (binary_expression "uVar4 * 2" (identifier "uVar4") (* "*") (number_literal "2"))) () ")"))) (+ "+") (parenthesized_expression "(uVar4 >> 0x1f | iVar3 * 2)" (( "(") (binary_expression "uVar4 >> 0x1f | iVar3 * 2" (binary_expression "uVar4 >> 0x1f" (identifier "uVar4") (>> ">>") (number_literal "0x1f")) (| "|") (binary_expression "iVar3 * 2" (identifier "iVar3") (* "*") (number_literal "2"))) () ")"))) (+ "+") (identifier "iVar3")) () ")")) (* "*") (number_literal "8"))) () ")"))) (+ "+") (parenthesized_expression "(param_5 >> 0x1f)" (( "(") (binary_expression "param_5 >> 0x1f" (identifier "param_5") (>> ">>") (number_literal "0x1f")) () ")"))) () ")")) (- "-") (parenthesized_expression "(param_10 >> 0x1f)" (( "(") (binary_expression "param_10 >> 0x1f" (identifier "param_10") (>> ">>") (number_literal "0x1f")) () ")"))) () ")")) (- "-") (call_expression "(uint)(uVar2 < uVar5)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar2 < uVar5)" (( "(") (binary_expression "uVar2 < uVar5" (identifier "uVar2") (< "<") (identifier "uVar5")) () ")"))))) (; ";")) (expression_statement "uVar4 = uVar5 * 0x3c + param_6;" (assignment_expression "uVar4 = uVar5 * 0x3c + param_6" (identifier "uVar4") (= "=") (binary_expression "uVar5 * 0x3c + param_6" (binary_expression "uVar5 * 0x3c" (identifier "uVar5") (* "*") (number_literal "0x3c")) (+ "+") (identifier "param_6"))) (; ";")) (expression_statement "uVar2 = uVar4 - param_11;" (assignment_expression "uVar2 = uVar4 - param_11" (identifier "uVar2") (= "=") (binary_expression "uVar4 - param_11" (identifier "uVar4") (- "-") (identifier "param_11"))) (; ";")) (expression_statement "iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2);" (assignment_expression "iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2)" (identifier "iVar3") (= "=") (binary_expression "(((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2)" (parenthesized_expression "(((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f))" (( "(") (binary_expression "((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)) - (param_11 >> 0x1f)" (parenthesized_expression "((uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f))" (( "(") (binary_expression "(uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +\n           (param_6 >> 0x1f)" (binary_expression "(uint)(uVar4 < uVar5 * 0x3c) +\n           (uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4)" (call_expression "(uint)(uVar4 < uVar5 * 0x3c)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar4 < uVar5 * 0x3c)" (( "(") (binary_expression "uVar4 < uVar5 * 0x3c" (identifier "uVar4") (< "<") (binary_expression "uVar5 * 0x3c" (identifier "uVar5") (* "*") (number_literal "0x3c"))) () ")"))) (+ "+") (parenthesized_expression "(uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4)" (( "(") (binary_expression "uVar5 * 0xf >> 0x1e |\n           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4" (binary_expression "uVar5 * 0xf >> 0x1e" (binary_expression "uVar5 * 0xf" (identifier "uVar5") (* "*") (number_literal "0xf")) (>> ">>") (number_literal "0x1e")) (| "|") (binary_expression "(((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4" (parenthesized_expression "(((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf))" (( "(") (binary_expression "((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)" (parenthesized_expression "((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3)" (( "(") (binary_expression "(uVar5 >> 0x1c | iVar3 * 0x10) - iVar3" (parenthesized_expression "(uVar5 >> 0x1c | iVar3 * 0x10)" (( "(") (binary_expression "uVar5 >> 0x1c | iVar3 * 0x10" (binary_expression "uVar5 >> 0x1c" (identifier "uVar5") (>> ">>") (number_literal "0x1c")) (| "|") (binary_expression "iVar3 * 0x10" (identifier "iVar3") (* "*") (number_literal "0x10"))) () ")")) (- "-") (identifier "iVar3")) () ")")) (- "-") (call_expression "(uint)(uVar5 * 0x10 < uVar5 * 0xf)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar5 * 0x10 < uVar5 * 0xf)" (( "(") (binary_expression "uVar5 * 0x10 < uVar5 * 0xf" (binary_expression "uVar5 * 0x10" (identifier "uVar5") (* "*") (number_literal "0x10")) (< "<") (binary_expression "uVar5 * 0xf" (identifier "uVar5") (* "*") (number_literal "0xf"))) () ")")))) () ")")) (* "*") (number_literal "4"))) () ")"))) (+ "+") (parenthesized_expression "(param_6 >> 0x1f)" (( "(") (binary_expression "param_6 >> 0x1f" (identifier "param_6") (>> ">>") (number_literal "0x1f")) () ")"))) () ")")) (- "-") (parenthesized_expression "(param_11 >> 0x1f)" (( "(") (binary_expression "param_11 >> 0x1f" (identifier "param_11") (>> ">>") (number_literal "0x1f")) () ")"))) () ")")) (- "-") (call_expression "(uint)(uVar4 < uVar2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar4 < uVar2)" (( "(") (binary_expression "uVar4 < uVar2" (identifier "uVar4") (< "<") (identifier "uVar2")) () ")"))))) (; ";")) (expression_statement "uVar4 = uVar2 * 0x3c + param_7;" (assignment_expression "uVar4 = uVar2 * 0x3c + param_7" (identifier "uVar4") (= "=") (binary_expression "uVar2 * 0x3c + param_7" (binary_expression "uVar2 * 0x3c" (identifier "uVar2") (* "*") (number_literal "0x3c")) (+ "+") (identifier "param_7"))) (; ";")) (return_statement "return (((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12);" (return "return") (binary_expression "(((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12)" (parenthesized_expression "(((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f))" (( "(") (binary_expression "((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)) - (param_12 >> 0x1f)" (parenthesized_expression "((uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f))" (( "(") (binary_expression "(uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +\n          (param_7 >> 0x1f)" (binary_expression "(uint)(uVar4 < uVar2 * 0x3c) +\n          (uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4)" (call_expression "(uint)(uVar4 < uVar2 * 0x3c)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar4 < uVar2 * 0x3c)" (( "(") (binary_expression "uVar4 < uVar2 * 0x3c" (identifier "uVar4") (< "<") (binary_expression "uVar2 * 0x3c" (identifier "uVar2") (* "*") (number_literal "0x3c"))) () ")"))) (+ "+") (parenthesized_expression "(uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4)" (( "(") (binary_expression "uVar2 * 0xf >> 0x1e |\n          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4" (binary_expression "uVar2 * 0xf >> 0x1e" (binary_expression "uVar2 * 0xf" (identifier "uVar2") (* "*") (number_literal "0xf")) (>> ">>") (number_literal "0x1e")) (| "|") (binary_expression "(((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4" (parenthesized_expression "(((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf))" (( "(") (binary_expression "((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)" (parenthesized_expression "((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3)" (( "(") (binary_expression "(uVar2 >> 0x1c | iVar3 * 0x10) - iVar3" (parenthesized_expression "(uVar2 >> 0x1c | iVar3 * 0x10)" (( "(") (binary_expression "uVar2 >> 0x1c | iVar3 * 0x10" (binary_expression "uVar2 >> 0x1c" (identifier "uVar2") (>> ">>") (number_literal "0x1c")) (| "|") (binary_expression "iVar3 * 0x10" (identifier "iVar3") (* "*") (number_literal "0x10"))) () ")")) (- "-") (identifier "iVar3")) () ")")) (- "-") (call_expression "(uint)(uVar2 * 0x10 < uVar2 * 0xf)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar2 * 0x10 < uVar2 * 0xf)" (( "(") (binary_expression "uVar2 * 0x10 < uVar2 * 0xf" (binary_expression "uVar2 * 0x10" (identifier "uVar2") (* "*") (number_literal "0x10")) (< "<") (binary_expression "uVar2 * 0xf" (identifier "uVar2") (* "*") (number_literal "0xf"))) () ")")))) () ")")) (* "*") (number_literal "4"))) () ")"))) (+ "+") (parenthesized_expression "(param_7 >> 0x1f)" (( "(") (binary_expression "param_7 >> 0x1f" (identifier "param_7") (>> ">>") (number_literal "0x1f")) () ")"))) () ")")) (- "-") (parenthesized_expression "(param_12 >> 0x1f)" (( "(") (binary_expression "param_12 >> 0x1f" (identifier "param_12") (>> ">>") (number_literal "0x1f")) () ")"))) () ")")) (- "-") (call_expression "(uint)(uVar4 < uVar4 - param_12)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar4 < uVar4 - param_12)" (( "(") (binary_expression "uVar4 < uVar4 - param_12" (identifier "uVar4") (< "<") (binary_expression "uVar4 - param_12" (identifier "uVar4") (- "-") (identifier "param_12"))) () ")")))) (; ";")) (} "}")))

type_1 function_1(type_1 year1,type_1 var_3,int var_1,int var_2,int var_12,int var_6,int var_11,
                   int var_13,int var_14,int var_16)

{
  type_2 lVar1;
  type_3 var_10;
  int var_4;
  type_3 var_8;
  type_3 var_9;
  int var_5;
  type_3 var_7;
  
  var_4 = ((var_1 << 0x1e | (type_3)var_2 >> 2) + 0x1db) - (type_3)((var_2 & 3U) == 0);
  var_5 = ((((int)var_3._4_4_ >> 0x1f) << 0x1e | var_3._4_4_ >> 2) + 0x1db) -
          (type_3)((var_3 & 3U) == 0);
  lVar1 = (type_4)(var_2 - var_3._4_4_) * 0x16d;
  var_7 = (type_3)lVar1;
  var_8 = var_4 / 0x19 + (var_4 % 0x19 >> 0x1f);
  var_9 = var_5 / 0x19 + (var_5 % 0x19 >> 0x1f);
  var_10 = var_6 + var_7;
  var_9 = ((var_4 - var_5) - (var_8 - var_9)) +
          ((((int)var_8 >> 0x1f) << 0x1e | var_8 >> 2) - (((int)var_9 >> 0x1f) << 0x1e | var_9 >> 2)
          );
  var_8 = var_9 + (var_10 - var_11);
  var_4 = (type_3)(var_8 < var_9) +
          ((int)var_9 >> 0x1f) +
          ((((type_3)(var_10 < var_7) +
            var_12 + ((var_1 - ((int)var_3._4_4_ >> 0x1f)) - (type_3)((type_3)var_2 < var_2 - var_3._4_4_))
                   * 0x16d + (int)((type_4)lVar1 >> 0x20)) - (var_11 >> 0x1f)) -
          (type_3)(var_10 < var_10 - var_11));
  var_10 = var_8 * 0x18 + year1._0_4_;
  var_9 = var_10 - var_13;
  var_4 = (((type_3)(var_10 < var_8 * 0x18) +
           (var_8 * 3 >> 0x1d |
           ((type_3)(var_8 * 3 < var_8 * 2) + (var_8 >> 0x1f | var_4 * 2) + var_4) * 8) +
           (year1._0_4_ >> 0x1f)) - (var_13 >> 0x1f)) - (type_3)(var_10 < var_9);
  var_8 = var_9 * 0x3c + year1._4_4_;
  var_10 = var_8 - var_14;
  var_4 = (((type_3)(var_8 < var_9 * 0x3c) +
           (var_9 * 0xf >> 0x1e |
           (((var_9 >> 0x1c | var_4 * 0x10) - var_4) - (type_3)(var_9 * 0x10 < var_9 * 0xf)) * 4) +
           (year1._4_4_ >> 0x1f)) - (var_14 >> 0x1f)) - (type_3)(var_8 < var_10);
  var_8 = var_10 * 0x3c + var_3._0_4_;
  return var_15((((type_3)(var_8 < var_10 * 0x3c) +
                   (var_10 * 0xf >> 0x1e |
                   (((var_10 >> 0x1c | var_4 * 0x10) - var_4) - (type_3)(var_10 * 0x10 < var_10 * 0xf)) *
                   4) + (var_3._0_4_ >> 0x1f)) - (var_16 >> 0x1f)) - (type_3)(var_8 < var_8 - var_16),
                  var_8 - var_16);
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)))) body: (compound_statement (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (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: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (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: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (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: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (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: (identifier) right: (number_literal)) right: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (identifier)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))))) right: (number_literal))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) right: (identifier))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier)))) (return_statement (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) right: (identifier))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))))))))

int MASKED(int param_1,uint param_2,int param_3,int param_4,int param_5,int param_6,
                int param_7,uint param_8,int param_9,int param_10,int param_11,int param_12)

{
  longlong lVar1;
  uint uVar2;
  int iVar3;
  uint uVar4;
  uint uVar5;
  int iVar6;
  uint uVar7;
  
  iVar3 = ((param_1 << 0x1e | param_2 >> 2) + 0x1db) - (uint)((param_2 & 3) == 0);
  iVar6 = ((((int)param_8 >> 0x1f) << 0x1e | param_8 >> 2) + 0x1db) - (uint)((param_8 & 3) == 0);
  lVar1 = (ulonglong)(param_2 - param_8) * 0x16d;
  uVar7 = (uint)lVar1;
  uVar4 = iVar3 / 0x19 + (iVar3 % 0x19 >> 0x1f);
  uVar5 = iVar6 / 0x19 + (iVar6 % 0x19 >> 0x1f);
  uVar2 = param_4 + uVar7;
  uVar5 = ((iVar3 - iVar6) - (uVar4 - uVar5)) +
          ((((int)uVar4 >> 0x1f) << 0x1e | uVar4 >> 2) - (((int)uVar5 >> 0x1f) << 0x1e | uVar5 >> 2)
          );
  uVar4 = uVar5 + (uVar2 - param_9);
  iVar3 = (uint)(uVar4 < uVar5) +
          ((int)uVar5 >> 0x1f) +
          ((((uint)(uVar2 < uVar7) +
            param_3 + ((param_1 - ((int)param_8 >> 0x1f)) - (uint)(param_2 < param_2 - param_8)) *
                      0x16d + (int)((ulonglong)lVar1 >> 0x20)) - (param_9 >> 0x1f)) -
          (uint)(uVar2 < uVar2 - param_9));
  uVar2 = uVar4 * 0x18 + param_5;
  uVar5 = uVar2 - param_10;
  iVar3 = (((uint)(uVar2 < uVar4 * 0x18) +
           (uVar4 * 3 >> 0x1d |
           ((uint)(uVar4 * 3 < uVar4 * 2) + (uVar4 >> 0x1f | iVar3 * 2) + iVar3) * 8) +
           (param_5 >> 0x1f)) - (param_10 >> 0x1f)) - (uint)(uVar2 < uVar5);
  uVar4 = uVar5 * 0x3c + param_6;
  uVar2 = uVar4 - param_11;
  iVar3 = (((uint)(uVar4 < uVar5 * 0x3c) +
           (uVar5 * 0xf >> 0x1e |
           (((uVar5 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar5 * 0x10 < uVar5 * 0xf)) * 4) +
           (param_6 >> 0x1f)) - (param_11 >> 0x1f)) - (uint)(uVar4 < uVar2);
  uVar4 = uVar2 * 0x3c + param_7;
  return (((uint)(uVar4 < uVar2 * 0x3c) +
          (uVar2 * 0xf >> 0x1e |
          (((uVar2 >> 0x1c | iVar3 * 0x10) - iVar3) - (uint)(uVar2 * 0x10 < uVar2 * 0xf)) * 4) +
          (param_7 >> 0x1f)) - (param_12 >> 0x1f)) - (uint)(uVar4 < uVar4 - param_12);
}

