
_Bool lines_differ(char *s1,char *s2)

{
  char cVar1;
  byte *pbVar2;
  byte *pbVar3;
  int iVar4;
  int *piVar5;
  undefined1 uVar7;
  int *piVar6;
  uint uVar8;
  uint uVar9;
  uint uVar10;
  byte *pbVar11;
  byte *pbVar12;
  
  pbVar11 = (byte *)(s1 + 1);
  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;
  cVar1 = *PTR_ignore_case_0005b214;
  pbVar12 = (byte *)(s2 + 1);
  iVar4 = *(int *)PTR_tabsize_0005b1cc;
  uVar9 = (uint)(byte)*s1;
  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);
  uVar10 = (uint)(byte)*s2;
  pbVar2 = pbVar11;
  pbVar3 = pbVar12;
  if (uVar9 == uVar10) goto joined_r0x0001f52c;
  while( true ) {
    if (uVar8 < 6) {
                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */
                    /* WARNING: Treating indirect jump as call */
      uVar7 = (*(code *)(&_gp + *piVar5))();
      return (_Bool)uVar7;
    }
    if (cVar1 != '\0') {
      piVar6 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();
      uVar9 = (uint)*(byte *)(*piVar6 + uVar9 * 4 + 3);
      uVar10 = (uint)*(byte *)(*piVar6 + uVar10 * 4 + 3);
    }
    pbVar2 = pbVar11;
    pbVar3 = pbVar12;
    if (uVar9 != uVar10) break;
joined_r0x0001f52c:
    do {
      if (uVar10 == 10) {
        return false;
      }
      if ((uVar10 == 9) && (iVar4 == 0)) {
        trap(7);
      }
      pbVar11 = pbVar2 + 1;
      pbVar12 = pbVar3 + 1;
      uVar9 = (uint)*pbVar2;
      uVar10 = (uint)*pbVar3;
      pbVar2 = pbVar11;
      pbVar3 = pbVar12;
    } while (uVar9 == uVar10);
  }
  return true;
}



undefined4 lines_differ(byte *param_1,byte *param_2)

{
  char cVar1;
  byte *pbVar2;
  byte *pbVar3;
  int iVar4;
  int *piVar5;
  undefined4 uVar6;
  int *piVar7;
  uint uVar8;
  uint uVar9;
  uint uVar10;
  byte *pbVar11;
  byte *pbVar12;
  
  pbVar11 = param_1 + 1;
  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;
  cVar1 = *PTR_ignore_case_0005b214;
  pbVar12 = param_2 + 1;
  iVar4 = *(int *)PTR_tabsize_0005b1cc;
  uVar9 = (uint)*param_1;
  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);
  uVar10 = (uint)*param_2;
  pbVar2 = pbVar11;
  pbVar3 = pbVar12;
  if (uVar9 == uVar10) goto joined_r0x0001f52c;
  while( true ) {
    if (uVar8 < 6) {
                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */
                    /* WARNING: Treating indirect jump as call */
      uVar6 = (*(code *)(&_gp_1 + *piVar5))();
      return uVar6;
    }
    if (cVar1 != '\0') {
      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();
      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);
      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);
    }
    pbVar2 = pbVar11;
    pbVar3 = pbVar12;
    if (uVar9 != uVar10) break;
joined_r0x0001f52c:
    do {
      if (uVar10 == 10) {
        return 0;
      }
      if ((uVar10 == 9) && (iVar4 == 0)) {
        trap(7);
      }
      pbVar11 = pbVar2 + 1;
      pbVar12 = pbVar3 + 1;
      uVar9 = (uint)*pbVar2;
      uVar10 = (uint)*pbVar3;
      pbVar2 = pbVar11;
      pbVar3 = pbVar12;
    } while (uVar9 == uVar10);
  }
  return 1;
}


lui gp,0x4
addiu gp,gp,0x3d04
addu gp,gp,t9
lw v0,-0x7f04(gp)
addiu sp,sp,-0x60
lw v1,-0x7edc(gp)
sw s4,0x48(sp)
addiu s4,a0,0x1
sw s1,0x3c(sp)
or s1,a0,zero
sw s2,0x40(sp)
lw a0,0x0(v0)
lw v0,-0x7f24(gp)
lw s2,-0x7fc8(gp)
lbu v1,0x0(v1)
sw s3,0x44(sp)
or s3,a1,zero
sw s8,0x58(sp)
addiu s2,s2,0x7ab8
sw s7,0x54(sp)
li s8,0xa
sw s6,0x50(sp)
li s7,0x9
sw s5,0x4c(sp)
addiu s5,a1,0x1
sw gp,0x10(sp)
or s6,zero,zero
sw ra,0x5c(sp)
sw s0,0x38(sp)
lw v0,0x0(v0)
lbu s0,0x0(s1)
sw v1,0x20(sp)
sltiu v1,a0,0x6
sw v0,0x18(sp)
sll v0,a0,0x2
sw a0,0x2c(sp)
addu v0,s2,v0
sw s4,0x30(sp)
sw s5,0x34(sp)
sw v1,0x1c(sp)
sw v0,0x24(sp)
lbu s2,0x0(s3)
beq s0,s2,0x0001f558
_or t4,s5,zero
lw v0,0x1c(sp)
beq v0,zero,0x0001f4e8
_lw v0,0x24(sp)
lw v0,0x0(v0)
addu v0,v0,gp
jr v0
_nop
lw v0,0x2c(sp)
li v1,0x2
beq v0,v1,0x0001f4ec
_or s3,s5,zero
li v0,0x20
beq s0,v0,0x0001f770
_nop
bne s0,s7,0x0001f4ec
_or s3,s5,zero
li v0,0x20
beq s2,v0,0x0001f77c
_li v1,0x20
or s3,s5,zero
or s1,s4,zero
lw v0,0x20(sp)
beq v0,zero,0x0001f524
_lw t9,-0x7cdc(gp)
jalr t9
_nop
sll a2,s0,0x2
lw v0,0x0(v0)
sll v1,s2,0x2
lw gp,0x10(sp)
addu a2,v0,a2
addu v0,v0,v1
lbu s0,0x3(a2)
lbu s2,0x3(v0)
bne s0,s2,0x0001f9b0
_lw ra,0x5c(sp)
beq s2,s8,0x0001f56c
_or v0,zero,zero
beq s2,s7,0x0001f808
_li v0,0x1
addu s6,s6,v0
addiu s4,s1,0x1
addiu s5,s3,0x1
lbu s0,0x0(s1)
lbu s2,0x0(s3)
bne s0,s2,0x0001f49c
_or t4,s5,zero
or s3,s5,zero
bne s2,s8,0x0001f534
_or s1,s4,zero
lw ra,0x5c(sp)
or v0,zero,zero
lw s8,0x58(sp)
lw s7,0x54(sp)
lw s6,0x50(sp)
lw s5,0x4c(sp)
lw s4,0x48(sp)
lw s3,0x44(sp)
lw s2,0x40(sp)
lw s1,0x3c(sp)
lw s0,0x38(sp)
jr ra
_addiu sp,sp,0x60
lw t9,-0x7ce4(gp)
jalr t9
_or s1,s4,zero
lw gp,0x10(sp)
b 0x0001f5c0
_lw t2,0x0(v0)
beq s0,s8,0x0001f5dc
_addu v0,t2,v0
addiu s1,s1,0x1
lbu s0,-0x1(s1)
sll v0,s0,0x1
addu v0,t2,v0
lhu v0,0x0(v0)
andi v0,v0,0x20
bne v0,zero,0x0001f5b0
_sll v0,s2,0x1
addu v0,t2,v0
lhu v0,0x0(v0)
andi v0,v0,0x20
bne v0,zero,0x0001f610
_or s3,s5,zero
b 0x0001f4f4
_lw v0,0x20(sp)
lbu s2,-0x1(s3)
sll v0,s2,0x1
addu v0,t2,v0
lhu v0,0x0(v0)
andi v0,v0,0x20
beq v0,zero,0x0001f4f4
_lw v0,0x20(sp)
bne s2,s8,0x0001f5f4
_addiu s3,s3,0x1
addiu s3,s3,-0x1
b 0x0001f4f4
_lw v0,0x20(sp)
lw t9,-0x7ce4(gp)
jalr t9
_sw s4,0x28(sp)
sll t6,s0,0x1
lw t4,0x0(v0)
sll v0,s2,0x1
lw gp,0x10(sp)
lw t5,0x28(sp)
addu t6,t4,t6
addu v0,t4,v0
lhu t7,0x0(t6)
lhu t6,0x0(v0)
andi v0,t7,0x20
bne v0,zero,0x0001f888
_andi t6,t6,0x20
bne t6,zero,0x0001f824
_li v0,0x20
beq s2,v0,0x0001f944
_nop
beq s0,v0,0x0001f904
_or s3,s5,zero
b 0x0001f4f0
_or s1,t5,zero
lw t9,-0x7ce4(gp)
jalr t9
_sw s5,0x28(sp)
sll t6,s0,0x1
lw t5,0x0(v0)
lw gp,0x10(sp)
addu t6,t5,t6
lhu v0,0x0(t6)
andi v0,v0,0x20
beq v0,zero,0x0001f4b8
_lw t4,0x28(sp)
sll v0,s2,0x1
addu v0,t5,v0
lhu v0,0x0(v0)
andi v0,v0,0x20
beq v0,zero,0x0001f4bc
_lw v0,0x2c(sp)
beq s0,s8,0x0001f714
_nop
lbu v0,0x1(s1)
beq v0,s8,0x0001f714
_sll v0,v0,0x1
addu v0,t5,v0
lhu v0,0x0(v0)
andi v0,v0,0x20
beq v0,zero,0x0001f4e8
_or a0,s4,zero
b 0x0001f708
_addiu a0,a0,0x1
addu v0,t5,v0
lhu v0,0x0(v0)
andi v0,v0,0x20
beq v0,zero,0x0001f4e8
_addiu a0,a0,0x1
lbu v0,0x0(a0)
bne v0,s8,0x0001f6f4
_sll v0,v0,0x1
beq s2,s8,0x0001f568
_lw ra,0x5c(sp)
lbu v0,0x1(s3)
beq v0,s8,0x0001f568
_sll v0,v0,0x1
addu v0,t5,v0
lhu v0,0x0(v0)
andi v0,v0,0x20
beq v0,zero,0x0001f4e8
_or a0,s5,zero
b 0x0001f75c
_addiu a0,a0,0x1
addu v0,t5,v0
lhu v0,0x0(v0)
andi v0,v0,0x20
beq v0,zero,0x0001f4ec
_or s3,s5,zero
addiu a0,a0,0x1
lbu v0,0x0(a0)
bne v0,s8,0x0001f744
_sll v0,v0,0x1
b 0x0001f568
_lw ra,0x5c(sp)
bne s2,s7,0x0001f4ec
_or s3,s5,zero
li v1,0x20
or v0,s6,zero
beq s0,v1,0x0001f7b8
_or s1,s4,zero
bne s0,s7,0x0001f7d4
_lw v1,0x18(sp)
addiu s1,s1,0x1
lbu s0,-0x1(s1)
teq v1,zero
divu v0,v1
addu v0,v1,v0
mfhi a1
subu v0,v0,a1
li v1,0x20
bne s0,v1,0x0001f788
_nop
addiu s1,s1,0x1
lbu s0,-0x1(s1)
b 0x0001f7ac
_addiu v0,v0,0x1
addiu t4,t4,0x1
lbu s2,-0x1(t4)
addiu s6,s6,0x1
li v1,0x20
beq s2,v1,0x0001f7c8
_nop
bne s2,s7,0x0001f8f4
_lw a0,0x18(sp)
addiu t4,t4,0x1
lbu s2,-0x1(t4)
teq a0,zero
divu s6,a0
addu t0,a0,s6
mfhi v1
b 0x0001f7d4
_subu s6,t0,v1
lw v1,0x18(sp)
teq v1,zero
divu s6,v1
mfhi v0
subu v0,v1,v0
b 0x0001f540
_addu s6,s6,v0
beq s2,s8,0x0001fa18
_nop
lbu v1,0x1(s3)
sll v0,v1,0x1
addu v0,t4,v0
lhu v0,0x0(v0)
andi v0,v0,0x20
bne v0,zero,0x0001f870
_addiu a1,s3,0x2
b 0x0001f98c
_or a1,s5,zero
lbu v1,0x0(a1)
sll v0,v1,0x1
addu v0,t4,v0
lhu v0,0x0(v0)
andi v0,v0,0x20
beq v0,zero,0x0001f98c
_addiu a0,a1,0x1
or a1,a0,zero
bne v1,s8,0x0001f850
_nop
or s3,a1,zero
or s1,t5,zero
b 0x0001f4f0
_li s2,0xa
beq s0,s8,0x0001fa10
_nop
lbu s0,0x1(s1)
sll v0,s0,0x1
addu v0,t4,v0
lhu v0,0x0(v0)
andi v0,v0,0x20
beq v0,zero,0x0001fa20
_addiu a0,s1,0x2
b 0x0001f8d4
_or s1,a0,zero
lbu s0,0x0(s1)
sll v0,s0,0x1
addu v0,t4,v0
lhu v0,0x0(v0)
andi v0,v0,0x20
beq v0,zero,0x0001f9a4
_addiu s4,s1,0x1
or s1,s4,zero
bne s0,s8,0x0001f8b4
_nop
bne t6,zero,0x0001f824
_or t5,s1,zero
beq s0,s2,0x0001f4f0
_or s3,s5,zero
b 0x0001f668
_li v0,0x20
bne v0,s6,0x0001f9ac
_or s3,t4,zero
b 0x0001f4f4
_lw v0,0x20(sp)
beq s2,s8,0x0001f678
_nop
or s1,t5,zero
lw v0,0x34(sp)
sltu v0,v0,s3
beq v0,zero,0x0001f93c
_nop
lbu v0,-0x2(s3)
sll v0,v0,0x1
addu t4,t4,v0
lhu v0,0x0(t4)
andi v0,v0,0x20
bne v0,zero,0x0001f9f8
_addiu s4,s1,0x1
b 0x0001f4f0
_li s0,0x20
or s1,t5,zero
or s3,s5,zero
beq s0,s8,0x0001f984
_lw v0,0x30(sp)
sltu v0,v0,t5
beq v0,zero,0x0001f97c
_li v0,0x20
lbu v0,-0x2(t5)
sll v0,v0,0x1
addu v0,t4,v0
lhu v0,0x0(v0)
andi v0,v0,0x20
bne v0,zero,0x0001f9e8
_li v0,0x20
beq s0,v0,0x0001f9e0
_nop
b 0x0001f4f0
_li s2,0x20
li v0,0x20
beq s0,v0,0x0001fa04
_li s2,0x20
or s1,t5,zero
b 0x0001f94c
_or s3,a1,zero
b 0x0001f8dc
_li s0,0x20
lw ra,0x5c(sp)
li v0,0x1
lw s8,0x58(sp)
lw s7,0x54(sp)
lw s6,0x50(sp)
lw s5,0x4c(sp)
lw s4,0x48(sp)
lw s3,0x44(sp)
lw s2,0x40(sp)
lw s1,0x3c(sp)
lw s0,0x38(sp)
jr ra
_addiu sp,sp,0x60
b 0x0001f910
_li s2,0x20
addiu s1,t5,-0x1
addiu s5,s3,0x1
b 0x0001f548
_addiu s4,s1,0x1
addiu s3,s3,-0x1
b 0x0001f548
_addiu s5,s3,0x1
or s3,a1,zero
b 0x0001f4f0
_or s1,t5,zero
b 0x0001f8dc
_or s1,s4,zero
b 0x0001f878
_or a1,s5,zero
or s1,s4,zero
b 0x0001f8dc
_li s0,0x20
(translation_unit "undefined4 lines_differ(byte *param_1,byte *param_2)\n\n{\n  char cVar1;\n  byte *pbVar2;\n  byte *pbVar3;\n  int iVar4;\n  int *piVar5;\n  undefined4 uVar6;\n  int *piVar7;\n  uint uVar8;\n  uint uVar9;\n  uint uVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  \n  pbVar11 = param_1 + 1;\n  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;\n  cVar1 = *PTR_ignore_case_0005b214;\n  pbVar12 = param_2 + 1;\n  iVar4 = *(int *)PTR_tabsize_0005b1cc;\n  uVar9 = (uint)*param_1;\n  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);\n  uVar10 = (uint)*param_2;\n  pbVar2 = pbVar11;\n  pbVar3 = pbVar12;\n  if (uVar9 == uVar10) goto joined_r0x0001f52c;\n  while( true ) {\n    if (uVar8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }\n  return 1;\n}\n\n" (function_definition "undefined4 lines_differ(byte *param_1,byte *param_2)\n\n{\n  char cVar1;\n  byte *pbVar2;\n  byte *pbVar3;\n  int iVar4;\n  int *piVar5;\n  undefined4 uVar6;\n  int *piVar7;\n  uint uVar8;\n  uint uVar9;\n  uint uVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  \n  pbVar11 = param_1 + 1;\n  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;\n  cVar1 = *PTR_ignore_case_0005b214;\n  pbVar12 = param_2 + 1;\n  iVar4 = *(int *)PTR_tabsize_0005b1cc;\n  uVar9 = (uint)*param_1;\n  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);\n  uVar10 = (uint)*param_2;\n  pbVar2 = pbVar11;\n  pbVar3 = pbVar12;\n  if (uVar9 == uVar10) goto joined_r0x0001f52c;\n  while( true ) {\n    if (uVar8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }\n  return 1;\n}" type_identifier (function_declarator "lines_differ(byte *param_1,byte *param_2)" identifier (parameter_list "(byte *param_1,byte *param_2)" ( (parameter_declaration "byte *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "byte *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  char cVar1;\n  byte *pbVar2;\n  byte *pbVar3;\n  int iVar4;\n  int *piVar5;\n  undefined4 uVar6;\n  int *piVar7;\n  uint uVar8;\n  uint uVar9;\n  uint uVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  \n  pbVar11 = param_1 + 1;\n  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;\n  cVar1 = *PTR_ignore_case_0005b214;\n  pbVar12 = param_2 + 1;\n  iVar4 = *(int *)PTR_tabsize_0005b1cc;\n  uVar9 = (uint)*param_1;\n  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);\n  uVar10 = (uint)*param_2;\n  pbVar2 = pbVar11;\n  pbVar3 = pbVar12;\n  if (uVar9 == uVar10) goto joined_r0x0001f52c;\n  while( true ) {\n    if (uVar8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }\n  return 1;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "byte *pbVar2;" type_identifier (pointer_declarator "*pbVar2" * identifier) ;) (declaration "byte *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "undefined4 uVar6;" type_identifier identifier ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "byte *pbVar12;" type_identifier (pointer_declarator "*pbVar12" * identifier) ;) (expression_statement "pbVar11 = param_1 + 1;" (assignment_expression "pbVar11 = param_1 + 1" identifier = (binary_expression "param_1 + 1" identifier + number_literal)) ;) (expression_statement "uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;" (assignment_expression "uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec" identifier = (pointer_expression "*(uint *)PTR_ignore_white_space_0005b1ec" * (cast_expression "(uint *)PTR_ignore_white_space_0005b1ec" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "cVar1 = *PTR_ignore_case_0005b214;" (assignment_expression "cVar1 = *PTR_ignore_case_0005b214" identifier = (pointer_expression "*PTR_ignore_case_0005b214" * identifier)) ;) (expression_statement "pbVar12 = param_2 + 1;" (assignment_expression "pbVar12 = param_2 + 1" identifier = (binary_expression "param_2 + 1" identifier + number_literal)) ;) (expression_statement "iVar4 = *(int *)PTR_tabsize_0005b1cc;" (assignment_expression "iVar4 = *(int *)PTR_tabsize_0005b1cc" identifier = (pointer_expression "*(int *)PTR_tabsize_0005b1cc" * (cast_expression "(int *)PTR_tabsize_0005b1cc" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar9 = (uint)*param_1;" (assignment_expression "uVar9 = (uint)*param_1" identifier = (binary_expression "(uint)*param_1" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);" (assignment_expression "piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8)" identifier = (cast_expression "(int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8)" ( (binary_expression "PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8" (binary_expression "PTR_LAB_0005b128 + uVar8 * 4" identifier + (binary_expression "uVar8 * 4" identifier * number_literal)) + number_literal) )))) ;) (expression_statement "uVar10 = (uint)*param_2;" (assignment_expression "uVar10 = (uint)*param_2" identifier = (binary_expression "(uint)*param_2" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "pbVar2 = pbVar11;" (assignment_expression "pbVar2 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar3 = pbVar12;" (assignment_expression "pbVar3 = pbVar12" identifier = identifier) ;) (if_statement "if (uVar9 == uVar10) goto joined_r0x0001f52c;" if (parenthesized_expression "(uVar9 == uVar10)" ( (binary_expression "uVar9 == uVar10" identifier == identifier) )) (goto_statement "goto joined_r0x0001f52c;" goto statement_identifier ;)) (while_statement "while( true ) {\n    if (uVar8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    if (uVar8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }" { (if_statement "if (uVar8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }" if (parenthesized_expression "(uVar8 < 6)" ( (binary_expression "uVar8 < 6" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }" { comment comment (expression_statement "uVar6 = (*(code *)(&_gp_1 + *piVar5))();" (assignment_expression "uVar6 = (*(code *)(&_gp_1 + *piVar5))()" identifier = (call_expression "(*(code *)(&_gp_1 + *piVar5))()" (parenthesized_expression "(*(code *)(&_gp_1 + *piVar5))" ( (pointer_expression "*(code *)(&_gp_1 + *piVar5)" * (cast_expression "(code *)(&_gp_1 + *piVar5)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&_gp_1 + *piVar5)" ( (binary_expression "&_gp_1 + *piVar5" (pointer_expression "&_gp_1" & identifier) + (pointer_expression "*piVar5" * identifier)) )))) )) (argument_list "()" ( )))) ;) (return_statement "return uVar6;" return identifier ;) })) (if_statement "if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }" if (parenthesized_expression "(cVar1 != '\0')" ( (binary_expression "cVar1 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }" { (expression_statement "piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();" (assignment_expression "piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)()" identifier = (cast_expression "(int *)(*(code *)PTR___ctype_tolower_loc_0005b414)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___ctype_tolower_loc_0005b414)()" (parenthesized_expression "(*(code *)PTR___ctype_tolower_loc_0005b414)" ( (pointer_expression "*(code *)PTR___ctype_tolower_loc_0005b414" * (cast_expression "(code *)PTR___ctype_tolower_loc_0005b414" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);" (assignment_expression "uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3)" identifier = (binary_expression "(uint)*(byte *)(*piVar7 + uVar9 * 4 + 3)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(*piVar7 + uVar9 * 4 + 3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*piVar7 + uVar9 * 4 + 3)" ( (binary_expression "*piVar7 + uVar9 * 4 + 3" (binary_expression "*piVar7 + uVar9 * 4" (pointer_expression "*piVar7" * identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) + number_literal) ))))) ;) (expression_statement "uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);" (assignment_expression "uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3)" identifier = (binary_expression "(uint)*(byte *)(*piVar7 + uVar10 * 4 + 3)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(*piVar7 + uVar10 * 4 + 3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*piVar7 + uVar10 * 4 + 3)" ( (binary_expression "*piVar7 + uVar10 * 4 + 3" (binary_expression "*piVar7 + uVar10 * 4" (pointer_expression "*piVar7" * identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) + number_literal) ))))) ;) })) (expression_statement "pbVar2 = pbVar11;" (assignment_expression "pbVar2 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar3 = pbVar12;" (assignment_expression "pbVar3 = pbVar12" identifier = identifier) ;) (if_statement "if (uVar9 != uVar10) break;" if (parenthesized_expression "(uVar9 != uVar10)" ( (binary_expression "uVar9 != uVar10" identifier != identifier) )) (break_statement "break;" break ;)) (labeled_statement "joined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);" statement_identifier : (do_statement "do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);" do (compound_statement "{\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    }" { (if_statement "if (uVar10 == 10) {\n        return 0;\n      }" if (parenthesized_expression "(uVar10 == 10)" ( (binary_expression "uVar10 == 10" identifier == number_literal) )) (compound_statement "{\n        return 0;\n      }" { (return_statement "return 0;" return number_literal ;) })) (if_statement "if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }" if (parenthesized_expression "((uVar10 == 9) && (iVar4 == 0))" ( (binary_expression "(uVar10 == 9) && (iVar4 == 0)" (parenthesized_expression "(uVar10 == 9)" ( (binary_expression "uVar10 == 9" identifier == number_literal) )) && (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) ))) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "pbVar11 = pbVar2 + 1;" (assignment_expression "pbVar11 = pbVar2 + 1" identifier = (binary_expression "pbVar2 + 1" identifier + number_literal)) ;) (expression_statement "pbVar12 = pbVar3 + 1;" (assignment_expression "pbVar12 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = (uint)*pbVar2;" (assignment_expression "uVar9 = (uint)*pbVar2" identifier = (binary_expression "(uint)*pbVar2" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar10 = (uint)*pbVar3;" (assignment_expression "uVar10 = (uint)*pbVar3" identifier = (binary_expression "(uint)*pbVar3" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "pbVar2 = pbVar11;" (assignment_expression "pbVar2 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar3 = pbVar12;" (assignment_expression "pbVar3 = pbVar12" identifier = identifier) ;) }) while (parenthesized_expression "(uVar9 == uVar10)" ( (binary_expression "uVar9 == uVar10" identifier == identifier) )) ;)) })) (return_statement "return 1;" return number_literal ;) })))
(translation_unit "_Bool lines_differ(char *s1,char *s2)\n\n{\n  char cVar1;\n  byte *pbVar2;\n  byte *pbVar3;\n  int iVar4;\n  int *piVar5;\n  undefined1 uVar7;\n  int *piVar6;\n  uint uVar8;\n  uint uVar9;\n  uint uVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  \n  pbVar11 = (byte *)(s1 + 1);\n  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;\n  cVar1 = *PTR_ignore_case_0005b214;\n  pbVar12 = (byte *)(s2 + 1);\n  iVar4 = *(int *)PTR_tabsize_0005b1cc;\n  uVar9 = (uint)(byte)*s1;\n  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);\n  uVar10 = (uint)(byte)*s2;\n  pbVar2 = pbVar11;\n  pbVar3 = pbVar12;\n  if (uVar9 == uVar10) goto joined_r0x0001f52c;\n  while( true ) {\n    if (uVar8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar7 = (*(code *)(&_gp + *piVar5))();\n      return (_Bool)uVar7;\n    }\n    if (cVar1 != '\0') {\n      piVar6 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar6 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar6 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return false;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }\n  return true;\n}\n\n" (function_definition "_Bool lines_differ(char *s1,char *s2)\n\n{\n  char cVar1;\n  byte *pbVar2;\n  byte *pbVar3;\n  int iVar4;\n  int *piVar5;\n  undefined1 uVar7;\n  int *piVar6;\n  uint uVar8;\n  uint uVar9;\n  uint uVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  \n  pbVar11 = (byte *)(s1 + 1);\n  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;\n  cVar1 = *PTR_ignore_case_0005b214;\n  pbVar12 = (byte *)(s2 + 1);\n  iVar4 = *(int *)PTR_tabsize_0005b1cc;\n  uVar9 = (uint)(byte)*s1;\n  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);\n  uVar10 = (uint)(byte)*s2;\n  pbVar2 = pbVar11;\n  pbVar3 = pbVar12;\n  if (uVar9 == uVar10) goto joined_r0x0001f52c;\n  while( true ) {\n    if (uVar8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar7 = (*(code *)(&_gp + *piVar5))();\n      return (_Bool)uVar7;\n    }\n    if (cVar1 != '\0') {\n      piVar6 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar6 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar6 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return false;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }\n  return true;\n}" type_identifier (function_declarator "lines_differ(char *s1,char *s2)" identifier (parameter_list "(char *s1,char *s2)" ( (parameter_declaration "char *s1" primitive_type (pointer_declarator "*s1" * identifier)) , (parameter_declaration "char *s2" primitive_type (pointer_declarator "*s2" * identifier)) ))) (compound_statement "{\n  char cVar1;\n  byte *pbVar2;\n  byte *pbVar3;\n  int iVar4;\n  int *piVar5;\n  undefined1 uVar7;\n  int *piVar6;\n  uint uVar8;\n  uint uVar9;\n  uint uVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  \n  pbVar11 = (byte *)(s1 + 1);\n  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;\n  cVar1 = *PTR_ignore_case_0005b214;\n  pbVar12 = (byte *)(s2 + 1);\n  iVar4 = *(int *)PTR_tabsize_0005b1cc;\n  uVar9 = (uint)(byte)*s1;\n  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);\n  uVar10 = (uint)(byte)*s2;\n  pbVar2 = pbVar11;\n  pbVar3 = pbVar12;\n  if (uVar9 == uVar10) goto joined_r0x0001f52c;\n  while( true ) {\n    if (uVar8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar7 = (*(code *)(&_gp + *piVar5))();\n      return (_Bool)uVar7;\n    }\n    if (cVar1 != '\0') {\n      piVar6 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar6 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar6 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return false;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }\n  return true;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "byte *pbVar2;" type_identifier (pointer_declarator "*pbVar2" * identifier) ;) (declaration "byte *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "undefined1 uVar7;" type_identifier identifier ;) (declaration "int *piVar6;" primitive_type (pointer_declarator "*piVar6" * identifier) ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "byte *pbVar12;" type_identifier (pointer_declarator "*pbVar12" * identifier) ;) (expression_statement "pbVar11 = (byte *)(s1 + 1);" (assignment_expression "pbVar11 = (byte *)(s1 + 1)" identifier = (cast_expression "(byte *)(s1 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(s1 + 1)" ( (binary_expression "s1 + 1" identifier + number_literal) )))) ;) (expression_statement "uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;" (assignment_expression "uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec" identifier = (pointer_expression "*(uint *)PTR_ignore_white_space_0005b1ec" * (cast_expression "(uint *)PTR_ignore_white_space_0005b1ec" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "cVar1 = *PTR_ignore_case_0005b214;" (assignment_expression "cVar1 = *PTR_ignore_case_0005b214" identifier = (pointer_expression "*PTR_ignore_case_0005b214" * identifier)) ;) (expression_statement "pbVar12 = (byte *)(s2 + 1);" (assignment_expression "pbVar12 = (byte *)(s2 + 1)" identifier = (cast_expression "(byte *)(s2 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(s2 + 1)" ( (binary_expression "s2 + 1" identifier + number_literal) )))) ;) (expression_statement "iVar4 = *(int *)PTR_tabsize_0005b1cc;" (assignment_expression "iVar4 = *(int *)PTR_tabsize_0005b1cc" identifier = (pointer_expression "*(int *)PTR_tabsize_0005b1cc" * (cast_expression "(int *)PTR_tabsize_0005b1cc" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar9 = (uint)(byte)*s1;" (assignment_expression "uVar9 = (uint)(byte)*s1" identifier = (binary_expression "(uint)(byte)*s1" (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(byte)" ( identifier ))) * identifier)) ;) (expression_statement "piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);" (assignment_expression "piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8)" identifier = (cast_expression "(int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8)" ( (binary_expression "PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8" (binary_expression "PTR_LAB_0005b128 + uVar8 * 4" identifier + (binary_expression "uVar8 * 4" identifier * number_literal)) + number_literal) )))) ;) (expression_statement "uVar10 = (uint)(byte)*s2;" (assignment_expression "uVar10 = (uint)(byte)*s2" identifier = (binary_expression "(uint)(byte)*s2" (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(byte)" ( identifier ))) * identifier)) ;) (expression_statement "pbVar2 = pbVar11;" (assignment_expression "pbVar2 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar3 = pbVar12;" (assignment_expression "pbVar3 = pbVar12" identifier = identifier) ;) (if_statement "if (uVar9 == uVar10) goto joined_r0x0001f52c;" if (parenthesized_expression "(uVar9 == uVar10)" ( (binary_expression "uVar9 == uVar10" identifier == identifier) )) (goto_statement "goto joined_r0x0001f52c;" goto statement_identifier ;)) (while_statement "while( true ) {\n    if (uVar8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar7 = (*(code *)(&_gp + *piVar5))();\n      return (_Bool)uVar7;\n    }\n    if (cVar1 != '\0') {\n      piVar6 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar6 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar6 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return false;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    if (uVar8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar7 = (*(code *)(&_gp + *piVar5))();\n      return (_Bool)uVar7;\n    }\n    if (cVar1 != '\0') {\n      piVar6 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar6 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar6 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return false;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }" { (if_statement "if (uVar8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar7 = (*(code *)(&_gp + *piVar5))();\n      return (_Bool)uVar7;\n    }" if (parenthesized_expression "(uVar8 < 6)" ( (binary_expression "uVar8 < 6" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      uVar7 = (*(code *)(&_gp + *piVar5))();\n      return (_Bool)uVar7;\n    }" { comment comment (expression_statement "uVar7 = (*(code *)(&_gp + *piVar5))();" (assignment_expression "uVar7 = (*(code *)(&_gp + *piVar5))()" identifier = (call_expression "(*(code *)(&_gp + *piVar5))()" (parenthesized_expression "(*(code *)(&_gp + *piVar5))" ( (pointer_expression "*(code *)(&_gp + *piVar5)" * (cast_expression "(code *)(&_gp + *piVar5)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&_gp + *piVar5)" ( (binary_expression "&_gp + *piVar5" (pointer_expression "&_gp" & identifier) + (pointer_expression "*piVar5" * identifier)) )))) )) (argument_list "()" ( )))) ;) (return_statement "return (_Bool)uVar7;" return (cast_expression "(_Bool)uVar7" ( (type_descriptor "_Bool" type_identifier) ) identifier) ;) })) (if_statement "if (cVar1 != '\0') {\n      piVar6 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar6 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar6 + uVar10 * 4 + 3);\n    }" if (parenthesized_expression "(cVar1 != '\0')" ( (binary_expression "cVar1 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      piVar6 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar6 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar6 + uVar10 * 4 + 3);\n    }" { (expression_statement "piVar6 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();" (assignment_expression "piVar6 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)()" identifier = (cast_expression "(int *)(*(code *)PTR___ctype_tolower_loc_0005b414)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___ctype_tolower_loc_0005b414)()" (parenthesized_expression "(*(code *)PTR___ctype_tolower_loc_0005b414)" ( (pointer_expression "*(code *)PTR___ctype_tolower_loc_0005b414" * (cast_expression "(code *)PTR___ctype_tolower_loc_0005b414" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar9 = (uint)*(byte *)(*piVar6 + uVar9 * 4 + 3);" (assignment_expression "uVar9 = (uint)*(byte *)(*piVar6 + uVar9 * 4 + 3)" identifier = (binary_expression "(uint)*(byte *)(*piVar6 + uVar9 * 4 + 3)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(*piVar6 + uVar9 * 4 + 3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*piVar6 + uVar9 * 4 + 3)" ( (binary_expression "*piVar6 + uVar9 * 4 + 3" (binary_expression "*piVar6 + uVar9 * 4" (pointer_expression "*piVar6" * identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) + number_literal) ))))) ;) (expression_statement "uVar10 = (uint)*(byte *)(*piVar6 + uVar10 * 4 + 3);" (assignment_expression "uVar10 = (uint)*(byte *)(*piVar6 + uVar10 * 4 + 3)" identifier = (binary_expression "(uint)*(byte *)(*piVar6 + uVar10 * 4 + 3)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(*piVar6 + uVar10 * 4 + 3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*piVar6 + uVar10 * 4 + 3)" ( (binary_expression "*piVar6 + uVar10 * 4 + 3" (binary_expression "*piVar6 + uVar10 * 4" (pointer_expression "*piVar6" * identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) + number_literal) ))))) ;) })) (expression_statement "pbVar2 = pbVar11;" (assignment_expression "pbVar2 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar3 = pbVar12;" (assignment_expression "pbVar3 = pbVar12" identifier = identifier) ;) (if_statement "if (uVar9 != uVar10) break;" if (parenthesized_expression "(uVar9 != uVar10)" ( (binary_expression "uVar9 != uVar10" identifier != identifier) )) (break_statement "break;" break ;)) (labeled_statement "joined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return false;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);" statement_identifier : (do_statement "do {\n      if (uVar10 == 10) {\n        return false;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);" do (compound_statement "{\n      if (uVar10 == 10) {\n        return false;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    }" { (if_statement "if (uVar10 == 10) {\n        return false;\n      }" if (parenthesized_expression "(uVar10 == 10)" ( (binary_expression "uVar10 == 10" identifier == number_literal) )) (compound_statement "{\n        return false;\n      }" { (return_statement "return false;" return false ;) })) (if_statement "if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }" if (parenthesized_expression "((uVar10 == 9) && (iVar4 == 0))" ( (binary_expression "(uVar10 == 9) && (iVar4 == 0)" (parenthesized_expression "(uVar10 == 9)" ( (binary_expression "uVar10 == 9" identifier == number_literal) )) && (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) ))) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "pbVar11 = pbVar2 + 1;" (assignment_expression "pbVar11 = pbVar2 + 1" identifier = (binary_expression "pbVar2 + 1" identifier + number_literal)) ;) (expression_statement "pbVar12 = pbVar3 + 1;" (assignment_expression "pbVar12 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = (uint)*pbVar2;" (assignment_expression "uVar9 = (uint)*pbVar2" identifier = (binary_expression "(uint)*pbVar2" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar10 = (uint)*pbVar3;" (assignment_expression "uVar10 = (uint)*pbVar3" identifier = (binary_expression "(uint)*pbVar3" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "pbVar2 = pbVar11;" (assignment_expression "pbVar2 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar3 = pbVar12;" (assignment_expression "pbVar3 = pbVar12" identifier = identifier) ;) }) while (parenthesized_expression "(uVar9 == uVar10)" ( (binary_expression "uVar9 == uVar10" identifier == identifier) )) ;)) })) (return_statement "return true;" return true ;) })))
(translation_unit "undefined4 lines_differ(byte *param_1,byte *param_2)\n\n{\n  char cVar1;\n  byte *pbVar2;\n  byte *pbVar3;\n  int iVar4;\n  int *piVar5;\n  undefined4 uVar6;\n  int *piVar7;\n  uint uVar8;\n  uint uVar9;\n  uint uVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  \n  pbVar11 = param_1 + 1;\n  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;\n  cVar1 = *PTR_ignore_case_0005b214;\n  pbVar12 = param_2 + 1;\n  iVar4 = *(int *)PTR_tabsize_0005b1cc;\n  uVar9 = (uint)*param_1;\n  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);\n  uVar10 = (uint)*param_2;\n  pbVar2 = pbVar11;\n  pbVar3 = pbVar12;\n  if (uVar9 == uVar10) goto joined_r0x0001f52c;\n  while( true ) {\n    if (uVar8 < 6) {\n                    \n                    \n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }\n  return 1;\n}\n\n" (function_definition "undefined4 lines_differ(byte *param_1,byte *param_2)\n\n{\n  char cVar1;\n  byte *pbVar2;\n  byte *pbVar3;\n  int iVar4;\n  int *piVar5;\n  undefined4 uVar6;\n  int *piVar7;\n  uint uVar8;\n  uint uVar9;\n  uint uVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  \n  pbVar11 = param_1 + 1;\n  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;\n  cVar1 = *PTR_ignore_case_0005b214;\n  pbVar12 = param_2 + 1;\n  iVar4 = *(int *)PTR_tabsize_0005b1cc;\n  uVar9 = (uint)*param_1;\n  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);\n  uVar10 = (uint)*param_2;\n  pbVar2 = pbVar11;\n  pbVar3 = pbVar12;\n  if (uVar9 == uVar10) goto joined_r0x0001f52c;\n  while( true ) {\n    if (uVar8 < 6) {\n                    \n                    \n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }\n  return 1;\n}" type_identifier (function_declarator "lines_differ(byte *param_1,byte *param_2)" identifier (parameter_list "(byte *param_1,byte *param_2)" ( (parameter_declaration "byte *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "byte *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  char cVar1;\n  byte *pbVar2;\n  byte *pbVar3;\n  int iVar4;\n  int *piVar5;\n  undefined4 uVar6;\n  int *piVar7;\n  uint uVar8;\n  uint uVar9;\n  uint uVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  \n  pbVar11 = param_1 + 1;\n  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;\n  cVar1 = *PTR_ignore_case_0005b214;\n  pbVar12 = param_2 + 1;\n  iVar4 = *(int *)PTR_tabsize_0005b1cc;\n  uVar9 = (uint)*param_1;\n  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);\n  uVar10 = (uint)*param_2;\n  pbVar2 = pbVar11;\n  pbVar3 = pbVar12;\n  if (uVar9 == uVar10) goto joined_r0x0001f52c;\n  while( true ) {\n    if (uVar8 < 6) {\n                    \n                    \n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }\n  return 1;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "byte *pbVar2;" type_identifier (pointer_declarator "*pbVar2" * identifier) ;) (declaration "byte *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "undefined4 uVar6;" type_identifier identifier ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "byte *pbVar12;" type_identifier (pointer_declarator "*pbVar12" * identifier) ;) (expression_statement "pbVar11 = param_1 + 1;" (assignment_expression "pbVar11 = param_1 + 1" identifier = (binary_expression "param_1 + 1" identifier + number_literal)) ;) (expression_statement "uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;" (assignment_expression "uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec" identifier = (pointer_expression "*(uint *)PTR_ignore_white_space_0005b1ec" * (cast_expression "(uint *)PTR_ignore_white_space_0005b1ec" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "cVar1 = *PTR_ignore_case_0005b214;" (assignment_expression "cVar1 = *PTR_ignore_case_0005b214" identifier = (pointer_expression "*PTR_ignore_case_0005b214" * identifier)) ;) (expression_statement "pbVar12 = param_2 + 1;" (assignment_expression "pbVar12 = param_2 + 1" identifier = (binary_expression "param_2 + 1" identifier + number_literal)) ;) (expression_statement "iVar4 = *(int *)PTR_tabsize_0005b1cc;" (assignment_expression "iVar4 = *(int *)PTR_tabsize_0005b1cc" identifier = (pointer_expression "*(int *)PTR_tabsize_0005b1cc" * (cast_expression "(int *)PTR_tabsize_0005b1cc" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar9 = (uint)*param_1;" (assignment_expression "uVar9 = (uint)*param_1" identifier = (binary_expression "(uint)*param_1" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);" (assignment_expression "piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8)" identifier = (cast_expression "(int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8)" ( (binary_expression "PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8" (binary_expression "PTR_LAB_0005b128 + uVar8 * 4" identifier + (binary_expression "uVar8 * 4" identifier * number_literal)) + number_literal) )))) ;) (expression_statement "uVar10 = (uint)*param_2;" (assignment_expression "uVar10 = (uint)*param_2" identifier = (binary_expression "(uint)*param_2" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "pbVar2 = pbVar11;" (assignment_expression "pbVar2 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar3 = pbVar12;" (assignment_expression "pbVar3 = pbVar12" identifier = identifier) ;) (if_statement "if (uVar9 == uVar10) goto joined_r0x0001f52c;" if (parenthesized_expression "(uVar9 == uVar10)" ( (binary_expression "uVar9 == uVar10" identifier == identifier) )) (goto_statement "goto joined_r0x0001f52c;" goto statement_identifier ;)) (while_statement "while( true ) {\n    if (uVar8 < 6) {\n                    \n                    \n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    if (uVar8 < 6) {\n                    \n                    \n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }" { (if_statement "if (uVar8 < 6) {\n                    \n                    \n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }" if (parenthesized_expression "(uVar8 < 6)" ( (binary_expression "uVar8 < 6" identifier < number_literal) )) (compound_statement "{\n                    \n                    \n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }" { (expression_statement "uVar6 = (*(code *)(&_gp_1 + *piVar5))();" (assignment_expression "uVar6 = (*(code *)(&_gp_1 + *piVar5))()" identifier = (call_expression "(*(code *)(&_gp_1 + *piVar5))()" (parenthesized_expression "(*(code *)(&_gp_1 + *piVar5))" ( (pointer_expression "*(code *)(&_gp_1 + *piVar5)" * (cast_expression "(code *)(&_gp_1 + *piVar5)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&_gp_1 + *piVar5)" ( (binary_expression "&_gp_1 + *piVar5" (pointer_expression "&_gp_1" & identifier) + (pointer_expression "*piVar5" * identifier)) )))) )) (argument_list "()" ( )))) ;) (return_statement "return uVar6;" return identifier ;) })) (if_statement "if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }" if (parenthesized_expression "(cVar1 != '\0')" ( (binary_expression "cVar1 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }" { (expression_statement "piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();" (assignment_expression "piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)()" identifier = (cast_expression "(int *)(*(code *)PTR___ctype_tolower_loc_0005b414)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___ctype_tolower_loc_0005b414)()" (parenthesized_expression "(*(code *)PTR___ctype_tolower_loc_0005b414)" ( (pointer_expression "*(code *)PTR___ctype_tolower_loc_0005b414" * (cast_expression "(code *)PTR___ctype_tolower_loc_0005b414" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);" (assignment_expression "uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3)" identifier = (binary_expression "(uint)*(byte *)(*piVar7 + uVar9 * 4 + 3)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(*piVar7 + uVar9 * 4 + 3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*piVar7 + uVar9 * 4 + 3)" ( (binary_expression "*piVar7 + uVar9 * 4 + 3" (binary_expression "*piVar7 + uVar9 * 4" (pointer_expression "*piVar7" * identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) + number_literal) ))))) ;) (expression_statement "uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);" (assignment_expression "uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3)" identifier = (binary_expression "(uint)*(byte *)(*piVar7 + uVar10 * 4 + 3)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(*piVar7 + uVar10 * 4 + 3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*piVar7 + uVar10 * 4 + 3)" ( (binary_expression "*piVar7 + uVar10 * 4 + 3" (binary_expression "*piVar7 + uVar10 * 4" (pointer_expression "*piVar7" * identifier) + (binary_expression "uVar10 * 4" identifier * number_literal)) + number_literal) ))))) ;) })) (expression_statement "pbVar2 = pbVar11;" (assignment_expression "pbVar2 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar3 = pbVar12;" (assignment_expression "pbVar3 = pbVar12" identifier = identifier) ;) (if_statement "if (uVar9 != uVar10) break;" if (parenthesized_expression "(uVar9 != uVar10)" ( (binary_expression "uVar9 != uVar10" identifier != identifier) )) (break_statement "break;" break ;)) (labeled_statement "joined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);" statement_identifier : (do_statement "do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);" do (compound_statement "{\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    }" { (if_statement "if (uVar10 == 10) {\n        return 0;\n      }" if (parenthesized_expression "(uVar10 == 10)" ( (binary_expression "uVar10 == 10" identifier == number_literal) )) (compound_statement "{\n        return 0;\n      }" { (return_statement "return 0;" return number_literal ;) })) (if_statement "if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }" if (parenthesized_expression "((uVar10 == 9) && (iVar4 == 0))" ( (binary_expression "(uVar10 == 9) && (iVar4 == 0)" (parenthesized_expression "(uVar10 == 9)" ( (binary_expression "uVar10 == 9" identifier == number_literal) )) && (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) ))) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "pbVar11 = pbVar2 + 1;" (assignment_expression "pbVar11 = pbVar2 + 1" identifier = (binary_expression "pbVar2 + 1" identifier + number_literal)) ;) (expression_statement "pbVar12 = pbVar3 + 1;" (assignment_expression "pbVar12 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = (uint)*pbVar2;" (assignment_expression "uVar9 = (uint)*pbVar2" identifier = (binary_expression "(uint)*pbVar2" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar10 = (uint)*pbVar3;" (assignment_expression "uVar10 = (uint)*pbVar3" identifier = (binary_expression "(uint)*pbVar3" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "pbVar2 = pbVar11;" (assignment_expression "pbVar2 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar3 = pbVar12;" (assignment_expression "pbVar3 = pbVar12" identifier = identifier) ;) }) while (parenthesized_expression "(uVar9 == uVar10)" ( (binary_expression "uVar9 == uVar10" identifier == identifier) )) ;)) })) (return_statement "return 1;" return number_literal ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (goto_statement goto statement_identifier ;)) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (pointer_expression * IDENT)) )))) )) (argument_list ( )))) ;) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * IDENT) + (binary_expression IDENT * LIT)) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * IDENT) + (binary_expression IDENT * LIT)) + LIT) ))))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (break_statement break ;)) (labeled_statement statement_identifier : (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT == IDENT) )) ;)) })) (return_statement return LIT ;) })))
(function_definition "undefined4 lines_differ(byte *param_1,byte *param_2)\n\n{\n  char cVar1;\n  byte *pbVar2;\n  byte *pbVar3;\n  int iVar4;\n  int *piVar5;\n  undefined4 uVar6;\n  int *piVar7;\n  uint uVar8;\n  uint uVar9;\n  uint uVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  \n  pbVar11 = param_1 + 1;\n  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;\n  cVar1 = *PTR_ignore_case_0005b214;\n  pbVar12 = param_2 + 1;\n  iVar4 = *(int *)PTR_tabsize_0005b1cc;\n  uVar9 = (uint)*param_1;\n  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);\n  uVar10 = (uint)*param_2;\n  pbVar2 = pbVar11;\n  pbVar3 = pbVar12;\n  if (uVar9 == uVar10) goto joined_r0x0001f52c;\n  while( true ) {\n    if (uVar8 < 6) {\n                    \n                    \n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }\n  return 1;\n}" (type_identifier "undefined4") (function_declarator "lines_differ(byte *param_1,byte *param_2)" (identifier "lines_differ") (parameter_list "(byte *param_1,byte *param_2)" (( "(") (parameter_declaration "byte *param_1" (type_identifier "byte") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "byte *param_2" (type_identifier "byte") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) () ")"))) (compound_statement "{\n  char cVar1;\n  byte *pbVar2;\n  byte *pbVar3;\n  int iVar4;\n  int *piVar5;\n  undefined4 uVar6;\n  int *piVar7;\n  uint uVar8;\n  uint uVar9;\n  uint uVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  \n  pbVar11 = param_1 + 1;\n  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;\n  cVar1 = *PTR_ignore_case_0005b214;\n  pbVar12 = param_2 + 1;\n  iVar4 = *(int *)PTR_tabsize_0005b1cc;\n  uVar9 = (uint)*param_1;\n  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);\n  uVar10 = (uint)*param_2;\n  pbVar2 = pbVar11;\n  pbVar3 = pbVar12;\n  if (uVar9 == uVar10) goto joined_r0x0001f52c;\n  while( true ) {\n    if (uVar8 < 6) {\n                    \n                    \n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }\n  return 1;\n}" ({ "{") (declaration "char cVar1;" (primitive_type "char") (identifier "cVar1") (; ";")) (declaration "byte *pbVar2;" (type_identifier "byte") (pointer_declarator "*pbVar2" (* "*") (identifier "pbVar2")) (; ";")) (declaration "byte *pbVar3;" (type_identifier "byte") (pointer_declarator "*pbVar3" (* "*") (identifier "pbVar3")) (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "int *piVar5;" (primitive_type "int") (pointer_declarator "*piVar5" (* "*") (identifier "piVar5")) (; ";")) (declaration "undefined4 uVar6;" (type_identifier "undefined4") (identifier "uVar6") (; ";")) (declaration "int *piVar7;" (primitive_type "int") (pointer_declarator "*piVar7" (* "*") (identifier "piVar7")) (; ";")) (declaration "uint uVar8;" (type_identifier "uint") (identifier "uVar8") (; ";")) (declaration "uint uVar9;" (type_identifier "uint") (identifier "uVar9") (; ";")) (declaration "uint uVar10;" (type_identifier "uint") (identifier "uVar10") (; ";")) (declaration "byte *pbVar11;" (type_identifier "byte") (pointer_declarator "*pbVar11" (* "*") (identifier "pbVar11")) (; ";")) (declaration "byte *pbVar12;" (type_identifier "byte") (pointer_declarator "*pbVar12" (* "*") (identifier "pbVar12")) (; ";")) (expression_statement "pbVar11 = param_1 + 1;" (assignment_expression "pbVar11 = param_1 + 1" (identifier "pbVar11") (= "=") (binary_expression "param_1 + 1" (identifier "param_1") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;" (assignment_expression "uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec" (identifier "uVar8") (= "=") (pointer_expression "*(uint *)PTR_ignore_white_space_0005b1ec" (* "*") (cast_expression "(uint *)PTR_ignore_white_space_0005b1ec" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ignore_white_space_0005b1ec")))) (; ";")) (expression_statement "cVar1 = *PTR_ignore_case_0005b214;" (assignment_expression "cVar1 = *PTR_ignore_case_0005b214" (identifier "cVar1") (= "=") (pointer_expression "*PTR_ignore_case_0005b214" (* "*") (identifier "PTR_ignore_case_0005b214"))) (; ";")) (expression_statement "pbVar12 = param_2 + 1;" (assignment_expression "pbVar12 = param_2 + 1" (identifier "pbVar12") (= "=") (binary_expression "param_2 + 1" (identifier "param_2") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar4 = *(int *)PTR_tabsize_0005b1cc;" (assignment_expression "iVar4 = *(int *)PTR_tabsize_0005b1cc" (identifier "iVar4") (= "=") (pointer_expression "*(int *)PTR_tabsize_0005b1cc" (* "*") (cast_expression "(int *)PTR_tabsize_0005b1cc" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_tabsize_0005b1cc")))) (; ";")) (expression_statement "uVar9 = (uint)*param_1;" (assignment_expression "uVar9 = (uint)*param_1" (identifier "uVar9") (= "=") (binary_expression "(uint)*param_1" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_1"))) (; ";")) (expression_statement "piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);" (assignment_expression "piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8)" (identifier "piVar5") (= "=") (cast_expression "(int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8)" (( "(") (binary_expression "PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8" (binary_expression "PTR_LAB_0005b128 + uVar8 * 4" (identifier "PTR_LAB_0005b128") (+ "+") (binary_expression "uVar8 * 4" (identifier "uVar8") (* "*") (number_literal "4"))) (+ "+") (number_literal "0x7ab8")) () ")")))) (; ";")) (expression_statement "uVar10 = (uint)*param_2;" (assignment_expression "uVar10 = (uint)*param_2" (identifier "uVar10") (= "=") (binary_expression "(uint)*param_2" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_2"))) (; ";")) (expression_statement "pbVar2 = pbVar11;" (assignment_expression "pbVar2 = pbVar11" (identifier "pbVar2") (= "=") (identifier "pbVar11")) (; ";")) (expression_statement "pbVar3 = pbVar12;" (assignment_expression "pbVar3 = pbVar12" (identifier "pbVar3") (= "=") (identifier "pbVar12")) (; ";")) (if_statement "if (uVar9 == uVar10) goto joined_r0x0001f52c;" (if "if") (parenthesized_expression "(uVar9 == uVar10)" (( "(") (binary_expression "uVar9 == uVar10" (identifier "uVar9") (== "==") (identifier "uVar10")) () ")")) (goto_statement "goto joined_r0x0001f52c;" (goto "goto") (statement_identifier "joined_r0x0001f52c") (; ";"))) (while_statement "while( true ) {\n    if (uVar8 < 6) {\n                    \n                    \n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n    if (uVar8 < 6) {\n                    \n                    \n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }\n    if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }\n    pbVar2 = pbVar11;\n    pbVar3 = pbVar12;\n    if (uVar9 != uVar10) break;\njoined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);\n  }" ({ "{") (if_statement "if (uVar8 < 6) {\n                    \n                    \n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }" (if "if") (parenthesized_expression "(uVar8 < 6)" (( "(") (binary_expression "uVar8 < 6" (identifier "uVar8") (< "<") (number_literal "6")) () ")")) (compound_statement "{\n                    \n                    \n      uVar6 = (*(code *)(&_gp_1 + *piVar5))();\n      return uVar6;\n    }" ({ "{") (expression_statement "uVar6 = (*(code *)(&_gp_1 + *piVar5))();" (assignment_expression "uVar6 = (*(code *)(&_gp_1 + *piVar5))()" (identifier "uVar6") (= "=") (call_expression "(*(code *)(&_gp_1 + *piVar5))()" (parenthesized_expression "(*(code *)(&_gp_1 + *piVar5))" (( "(") (pointer_expression "*(code *)(&_gp_1 + *piVar5)" (* "*") (cast_expression "(code *)(&_gp_1 + *piVar5)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&_gp_1 + *piVar5)" (( "(") (binary_expression "&_gp_1 + *piVar5" (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1")) (+ "+") (pointer_expression "*piVar5" (* "*") (identifier "piVar5"))) () ")")))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (return_statement "return uVar6;" (return "return") (identifier "uVar6") (; ";")) (} "}"))) (if_statement "if (cVar1 != '\0') {\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }" (if "if") (parenthesized_expression "(cVar1 != '\0')" (( "(") (binary_expression "cVar1 != '\0'" (identifier "cVar1") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();\n      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);\n      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);\n    }" ({ "{") (expression_statement "piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();" (assignment_expression "piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)()" (identifier "piVar7") (= "=") (cast_expression "(int *)(*(code *)PTR___ctype_tolower_loc_0005b414)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___ctype_tolower_loc_0005b414)()" (parenthesized_expression "(*(code *)PTR___ctype_tolower_loc_0005b414)" (( "(") (pointer_expression "*(code *)PTR___ctype_tolower_loc_0005b414" (* "*") (cast_expression "(code *)PTR___ctype_tolower_loc_0005b414" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___ctype_tolower_loc_0005b414"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);" (assignment_expression "uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3)" (identifier "uVar9") (= "=") (binary_expression "(uint)*(byte *)(*piVar7 + uVar9 * 4 + 3)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(byte *)(*piVar7 + uVar9 * 4 + 3)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*piVar7 + uVar9 * 4 + 3)" (( "(") (binary_expression "*piVar7 + uVar9 * 4 + 3" (binary_expression "*piVar7 + uVar9 * 4" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (binary_expression "uVar9 * 4" (identifier "uVar9") (* "*") (number_literal "4"))) (+ "+") (number_literal "3")) () ")"))))) (; ";")) (expression_statement "uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);" (assignment_expression "uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3)" (identifier "uVar10") (= "=") (binary_expression "(uint)*(byte *)(*piVar7 + uVar10 * 4 + 3)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(byte *)(*piVar7 + uVar10 * 4 + 3)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*piVar7 + uVar10 * 4 + 3)" (( "(") (binary_expression "*piVar7 + uVar10 * 4 + 3" (binary_expression "*piVar7 + uVar10 * 4" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) (+ "+") (number_literal "3")) () ")"))))) (; ";")) (} "}"))) (expression_statement "pbVar2 = pbVar11;" (assignment_expression "pbVar2 = pbVar11" (identifier "pbVar2") (= "=") (identifier "pbVar11")) (; ";")) (expression_statement "pbVar3 = pbVar12;" (assignment_expression "pbVar3 = pbVar12" (identifier "pbVar3") (= "=") (identifier "pbVar12")) (; ";")) (if_statement "if (uVar9 != uVar10) break;" (if "if") (parenthesized_expression "(uVar9 != uVar10)" (( "(") (binary_expression "uVar9 != uVar10" (identifier "uVar9") (!= "!=") (identifier "uVar10")) () ")")) (break_statement "break;" (break "break") (; ";"))) (labeled_statement "joined_r0x0001f52c:\n    do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);" (statement_identifier "joined_r0x0001f52c") (: ":") (do_statement "do {\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    } while (uVar9 == uVar10);" (do "do") (compound_statement "{\n      if (uVar10 == 10) {\n        return 0;\n      }\n      if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }\n      pbVar11 = pbVar2 + 1;\n      pbVar12 = pbVar3 + 1;\n      uVar9 = (uint)*pbVar2;\n      uVar10 = (uint)*pbVar3;\n      pbVar2 = pbVar11;\n      pbVar3 = pbVar12;\n    }" ({ "{") (if_statement "if (uVar10 == 10) {\n        return 0;\n      }" (if "if") (parenthesized_expression "(uVar10 == 10)" (( "(") (binary_expression "uVar10 == 10" (identifier "uVar10") (== "==") (number_literal "10")) () ")")) (compound_statement "{\n        return 0;\n      }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (if_statement "if ((uVar10 == 9) && (iVar4 == 0)) {\n        trap(7);\n      }" (if "if") (parenthesized_expression "((uVar10 == 9) && (iVar4 == 0))" (( "(") (binary_expression "(uVar10 == 9) && (iVar4 == 0)" (parenthesized_expression "(uVar10 == 9)" (( "(") (binary_expression "uVar10 == 9" (identifier "uVar10") (== "==") (number_literal "9")) () ")")) (&& "&&") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        trap(7);\n      }" ({ "{") (expression_statement "trap(7);" (call_expression "trap(7)" (identifier "trap") (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (} "}"))) (expression_statement "pbVar11 = pbVar2 + 1;" (assignment_expression "pbVar11 = pbVar2 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar2 + 1" (identifier "pbVar2") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar12 = pbVar3 + 1;" (assignment_expression "pbVar12 = pbVar3 + 1" (identifier "pbVar12") (= "=") (binary_expression "pbVar3 + 1" (identifier "pbVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar9 = (uint)*pbVar2;" (assignment_expression "uVar9 = (uint)*pbVar2" (identifier "uVar9") (= "=") (binary_expression "(uint)*pbVar2" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "pbVar2"))) (; ";")) (expression_statement "uVar10 = (uint)*pbVar3;" (assignment_expression "uVar10 = (uint)*pbVar3" (identifier "uVar10") (= "=") (binary_expression "(uint)*pbVar3" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "pbVar3"))) (; ";")) (expression_statement "pbVar2 = pbVar11;" (assignment_expression "pbVar2 = pbVar11" (identifier "pbVar2") (= "=") (identifier "pbVar11")) (; ";")) (expression_statement "pbVar3 = pbVar12;" (assignment_expression "pbVar3 = pbVar12" (identifier "pbVar3") (= "=") (identifier "pbVar12")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar9 == uVar10)" (( "(") (binary_expression "uVar9 == uVar10" (identifier "uVar9") (== "==") (identifier "uVar10")) () ")")) (; ";"))) (} "}"))) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}")))

type_1 function_1(char *var_1,char *var_2)

{
  char var_7;
  type_2 *var_10;
  type_2 *var_11;
  int var_8;
  int *piVar5;
  type_3 uVar7;
  int *piVar6;
  type_4 var_4;
  type_4 var_5;
  type_4 var_6;
  type_2 *pbVar11;
  type_2 *pbVar12;
  
  pbVar11 = (type_2 *)(var_1 + 1);
  var_4 = *(type_4 *)PTR_ignore_white_space_0005b1ec;
  var_7 = *PTR_ignore_case_0005b214;
  pbVar12 = (type_2 *)(var_2 + 1);
  var_8 = *(int *)PTR_tabsize_0005b1cc;
  var_5 = (type_4)(type_2)*var_1;
  piVar5 = (int *)(var_3 + var_4 * 4 + 0x7ab8);
  var_6 = (type_4)(type_2)*var_2;
  var_10 = pbVar11;
  var_11 = pbVar12;
  if (var_5 == var_6) goto joined_r0x0001f52c;
  while( true ) {
    if (var_4 < 6) {
                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */
                    /* WARNING: Treating indirect jump as call */
      uVar7 = (*(type_5 *)(&_gp + *piVar5))();
      return (type_1)uVar7;
    }
    if (var_7 != '\0') {
      piVar6 = (int *)(*(type_5 *)PTR___ctype_tolower_loc_0005b414)();
      var_5 = (type_4)*(type_2 *)(*piVar6 + var_5 * 4 + 3);
      var_6 = (type_4)*(type_2 *)(*piVar6 + var_6 * 4 + 3);
    }
    var_10 = pbVar11;
    var_11 = pbVar12;
    if (var_5 != var_6) break;
joined_r0x0001f52c:
    do {
      if (var_6 == 10) {
        return false;
      }
      if ((var_6 == 9) && (var_8 == 0)) {
        var_9(7);
      }
      pbVar11 = var_10 + 1;
      pbVar12 = var_11 + 1;
      var_5 = (type_4)*var_10;
      var_6 = (type_4)*var_11;
      var_10 = pbVar11;
      var_11 = pbVar12;
    } while (var_5 == var_6);
  }
  return true;
}


(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))))) arguments: (argument_list)))) (return_statement (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (break_statement)) (labeled_statement label: (statement_identifier) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))))) (return_statement (number_literal)))))

undefined4 MASKED(byte *param_1,byte *param_2)

{
  char cVar1;
  byte *pbVar2;
  byte *pbVar3;
  int iVar4;
  int *piVar5;
  undefined4 uVar6;
  int *piVar7;
  uint uVar8;
  uint uVar9;
  uint uVar10;
  byte *pbVar11;
  byte *pbVar12;
  
  pbVar11 = param_1 + 1;
  uVar8 = *(uint *)PTR_ignore_white_space_0005b1ec;
  cVar1 = *PTR_ignore_case_0005b214;
  pbVar12 = param_2 + 1;
  iVar4 = *(int *)PTR_tabsize_0005b1cc;
  uVar9 = (uint)*param_1;
  piVar5 = (int *)(PTR_LAB_0005b128 + uVar8 * 4 + 0x7ab8);
  uVar10 = (uint)*param_2;
  pbVar2 = pbVar11;
  pbVar3 = pbVar12;
  if (uVar9 == uVar10) goto joined_r0x0001f52c;
  while( true ) {
    if (uVar8 < 6) {
                    /* WARNING: Could not recover jumptable at 0x0001f4b0. Too many branches */
                    /* WARNING: Treating indirect jump as call */
      uVar6 = (*(code *)(&_gp_1 + *piVar5))();
      return uVar6;
    }
    if (cVar1 != '\0') {
      piVar7 = (int *)(*(code *)PTR___ctype_tolower_loc_0005b414)();
      uVar9 = (uint)*(byte *)(*piVar7 + uVar9 * 4 + 3);
      uVar10 = (uint)*(byte *)(*piVar7 + uVar10 * 4 + 3);
    }
    pbVar2 = pbVar11;
    pbVar3 = pbVar12;
    if (uVar9 != uVar10) break;
joined_r0x0001f52c:
    do {
      if (uVar10 == 10) {
        return 0;
      }
      if ((uVar10 == 9) && (iVar4 == 0)) {
        trap(7);
      }
      pbVar11 = pbVar2 + 1;
      pbVar12 = pbVar3 + 1;
      uVar9 = (uint)*pbVar2;
      uVar10 = (uint)*pbVar3;
      pbVar2 = pbVar11;
      pbVar3 = pbVar12;
    } while (uVar9 == uVar10);
  }
  return 1;
}

