
changes analyze_hunk(change *hunk,lin *first0,lin *last0,lin *first1,lin *last1)

{
  long lVar1;
  long lVar2;
  byte *pbVar3;
  char *pcVar4;
  bool bVar5;
  long lVar6;
  char **ppcVar7;
  char **ppcVar8;
  byte bVar9;
  changes cVar10;
  ushort **ppuVar11;
  byte *pbVar12;
  regoff_t rVar13;
  byte bVar14;
  long lVar15;
  change *local_68;
  long local_60;
  long local_58;
  int local_50;
  char local_4b;
  
  ppcVar8 = files[1].linbuf;
  ppcVar7 = files[0].linbuf;
  if (ignore_blank_lines) {
    bVar14 = ignore_blank_lines;
    if (IGNORE_TAB_EXPANSION < ignore_white_space) {
      bVar5 = IGNORE_TAB_EXPANSION_AND_TRAILING_SPACE < ignore_white_space;
      local_4b = ignore_blank_lines;
      local_50 = 0;
      goto LAB_0010e635;
    }
    local_50 = 0;
  }
  else {
    local_50 = -1;
    bVar14 = ignore_regexp.fastmap != (char *)0x0;
  }
  local_4b = '\0';
  bVar5 = false;
LAB_0010e635:
  *first0 = hunk->line0;
  *first1 = hunk->line1;
  local_58 = 0;
  local_60 = 0;
  local_68 = hunk;
  do {
    lVar15 = local_68->line0;
    lVar2 = local_68->deleted + -1 + lVar15;
    lVar1 = local_68->inserted + local_68->line1 + -1;
    local_60 = local_60 + local_68->deleted;
    local_58 = local_58 + local_68->inserted;
    bVar9 = lVar15 <= lVar2 & bVar14;
    if (bVar9 != 0) {
      do {
        pbVar3 = (byte *)ppcVar7[lVar15];
        pcVar4 = ppcVar7[lVar15 + 1];
        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;
        pbVar12 = pbVar3;
        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {
          ppuVar11 = __ctype_b_loc();
          do {
            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {
              if (!bVar5) {
                pbVar12 = pbVar3;
              }
              break;
            }
            pbVar12 = pbVar12 + 1;
            bVar14 = *pbVar12;
          } while (bVar14 != 10);
        }
        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&
           ((ignore_regexp.fastmap == (char *)0x0 ||
            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,
                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,
                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)
            , rVar13 < 0)))) {
          bVar14 = 0;
          goto LAB_0010e492;
        }
        lVar15 = lVar15 + 1;
        bVar14 = bVar9;
      } while (lVar15 <= lVar2);
    }
    lVar15 = local_68->line1;
    bVar9 = lVar15 <= lVar1 & bVar14;
    if (bVar9 != 0) {
      do {
        pbVar3 = (byte *)ppcVar8[lVar15];
        pcVar4 = ppcVar8[lVar15 + 1];
        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;
        pbVar12 = pbVar3;
        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {
          ppuVar11 = __ctype_b_loc();
          do {
            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {
              if (!bVar5) {
                pbVar12 = pbVar3;
              }
              break;
            }
            pbVar12 = pbVar12 + 1;
            bVar14 = *pbVar12;
          } while (bVar14 != 10);
        }
        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&
           ((ignore_regexp.fastmap == (char *)0x0 ||
            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,
                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,
                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)
            , rVar13 < 0)))) {
          bVar14 = 0;
          break;
        }
        lVar15 = lVar15 + 1;
        bVar14 = bVar9;
      } while (lVar15 <= lVar1);
    }
LAB_0010e492:
    local_68 = local_68->link;
    if (local_68 == (change *)0x0) {
      *last0 = lVar2;
      *last1 = lVar1;
      cVar10 = UNCHANGED;
      if (bVar14 == 0) {
        cVar10 = (uint)(local_60 != 0) | (uint)(local_58 != 0) * 2;
      }
      return cVar10;
    }
  } while( true );
}



byte FUN_0010e394(long *param_1,long *param_2,long *param_3,long *param_4,long *param_5)

{
  long lVar1;
  long lVar2;
  byte *pbVar3;
  bool bVar4;
  long lVar5;
  long lVar6;
  byte bVar7;
  ushort **ppuVar8;
  byte *pbVar9;
  long lVar10;
  byte bVar11;
  long lVar12;
  long *local_68;
  long local_60;
  long local_58;
  int local_50;
  byte local_4b;
  
  lVar6 = DAT_00134cc8;
  lVar5 = DAT_00134b98;
  if (DAT_00134ac1 == 0) {
    local_50 = -1;
    bVar11 = DAT_00134aa0 != 0;
  }
  else {
    bVar11 = DAT_00134ac1;
    if (1 < DAT_001349a8) {
      bVar4 = 3 < DAT_001349a8;
      local_4b = DAT_00134ac1;
      local_50 = 0;
      goto LAB_0010e635;
    }
    local_50 = 0;
  }
  local_4b = 0;
  bVar4 = false;
LAB_0010e635:
  *param_2 = param_1[3];
  *param_4 = param_1[4];
  local_58 = 0;
  local_60 = 0;
  local_68 = param_1;
  do {
    lVar12 = local_68[3];
    lVar2 = local_68[2] + -1 + lVar12;
    lVar1 = local_68[1] + local_68[4] + -1;
    local_60 = local_60 + local_68[2];
    local_58 = local_58 + local_68[1];
    bVar7 = lVar12 <= lVar2 & bVar11;
    if (bVar7 != 0) {
      do {
        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);
        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);
        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');
        pbVar9 = pbVar3;
        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {
          ppuVar8 = __ctype_b_loc();
          do {
            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {
              if (!bVar4) {
                pbVar9 = pbVar3;
              }
              break;
            }
            pbVar9 = pbVar9 + 1;
            bVar11 = *pbVar9;
          } while (bVar11 != 10);
        }
        if ((lVar10 - (long)pbVar9 != (long)local_50) &&
           ((DAT_00134aa0 == 0 ||
            (lVar10 = lVar10 - (long)pbVar3,
            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {
          bVar11 = 0;
          goto LAB_0010e492;
        }
        lVar12 = lVar12 + 1;
        bVar11 = bVar7;
      } while (lVar12 <= lVar2);
    }
    lVar12 = local_68[4];
    bVar7 = lVar12 <= lVar1 & bVar11;
    if (bVar7 != 0) {
      do {
        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);
        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);
        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');
        pbVar9 = pbVar3;
        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {
          ppuVar8 = __ctype_b_loc();
          do {
            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {
              if (!bVar4) {
                pbVar9 = pbVar3;
              }
              break;
            }
            pbVar9 = pbVar9 + 1;
            bVar11 = *pbVar9;
          } while (bVar11 != 10);
        }
        if ((lVar10 - (long)pbVar9 != (long)local_50) &&
           ((DAT_00134aa0 == 0 ||
            (lVar10 = lVar10 - (long)pbVar3,
            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {
          bVar11 = 0;
          break;
        }
        lVar12 = lVar12 + 1;
        bVar11 = bVar7;
      } while (lVar12 <= lVar1);
    }
LAB_0010e492:
    local_68 = (long *)*local_68;
    if (local_68 == (long *)0x0) {
      *param_3 = lVar2;
      *param_5 = lVar1;
      bVar7 = 0;
      if (bVar11 == 0) {
        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';
      }
      return bVar7;
    }
  } while( true );
}


PUSH R15
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x48
MOV qword ptr [RSP + 0x10],RDI
MOV qword ptr [RSP + 0x30],RDX
MOV qword ptr [RSP + 0x38],R8
MOVZX EDX,byte ptr [0x00134ac1]
TEST DL,DL
JNZ 0x0010e615
CMP qword ptr [0x00134aa0],0x0
SETNZ DL
MOV dword ptr [RSP + 0x28],0xffffffff
MOV byte ptr [RSP + 0x2d],0x0
MOV EAX,0x0
JMP 0x0010e635
MOVZX EBX,byte ptr [R14]
CMP BL,0xa
JZ 0x0010e44b
CALL 0x001046c0
MOV RDX,qword ptr [RAX]
MOV RAX,R14
MOVZX EBX,BL
TEST byte ptr [RDX + RBX*0x2 + 0x1],0x20
JZ 0x0010e40e
ADD RAX,0x1
MOVZX EBX,byte ptr [RAX]
CMP BL,0xa
JNZ 0x0010e3f6
JMP 0x0010e44b
CMP byte ptr [RSP + 0x2e],0x0
CMOVZ RAX,R14
JMP 0x0010e44b
ADD RBP,0x1
CMP qword ptr [RSP + 0x8],RBP
JL 0x0010e508
MOV R14,qword ptr [R13 + RBP*0x8]
MOV RAX,qword ptr [R13 + RBP*0x8 + 0x8]
CMP byte ptr [RAX + -0x1],0xa
SETNZ DL
MOVZX EDX,DL
LEA R12,[RAX + RDX*0x1 + -0x1]
MOV RAX,R14
CMP byte ptr [RSP + 0x2d],0x0
JNZ 0x0010e3e2
MOV RDX,R12
SUB RDX,RAX
MOVSXD RAX,dword ptr [RSP + 0x28]
CMP RDX,RAX
JZ 0x0010e419
LEA RAX,[0x134a80]
CMP qword ptr [RAX + 0x20],0x0
JZ 0x0010e48d
MOV RDX,R12
SUB RDX,R14
MOV R9D,0x0
MOV R8,RDX
MOV ECX,0x0
MOV RSI,R14
MOV RDI,RAX
CALL 0x00122319
TEST RAX,RAX
JNS 0x0010e419
MOV EDX,0x0
MOV RAX,qword ptr [RSP + 0x10]
MOV RAX,qword ptr [RAX]
MOV qword ptr [RSP + 0x10],RAX
TEST RAX,RAX
JZ 0x0010e5c8
MOV RDI,qword ptr [RSP + 0x10]
MOV RBP,qword ptr [RDI + 0x18]
MOV RCX,qword ptr [RDI + 0x10]
LEA RBX,[RCX + RBP*0x1 + -0x1]
MOV qword ptr [RSP + 0x8],RBX
MOV RAX,qword ptr [RDI + 0x8]
MOV RSI,RAX
ADD RSI,qword ptr [RDI + 0x20]
LEA RDI,[RSI + -0x1]
MOV qword ptr [RSP],RDI
ADD qword ptr [RSP + 0x18],RCX
ADD qword ptr [RSP + 0x20],RAX
CMP RBP,RBX
SETLE AL
AND AL,DL
MOV byte ptr [RSP + 0x2f],AL
JNZ 0x0010e428
MOV RAX,qword ptr [RSP + 0x10]
MOV RBP,qword ptr [RAX + 0x20]
CMP qword ptr [RSP],RBP
SETGE AL
AND AL,DL
MOV byte ptr [RSP + 0x2f],AL
JNZ 0x0010e550
JMP 0x0010e492
MOVZX EDX,byte ptr [RSP + 0x2f]
JMP 0x0010e4ee
MOVZX EBX,byte ptr [R14]
CMP BL,0xa
JZ 0x0010e572
CALL 0x001046c0
MOV RDX,qword ptr [RAX]
MOV RAX,R14
MOVZX EBX,BL
TEST byte ptr [RDX + RBX*0x2 + 0x1],0x20
JZ 0x0010e53b
ADD RAX,0x1
MOVZX EBX,byte ptr [RAX]
CMP BL,0xa
JNZ 0x0010e523
JMP 0x0010e572
CMP byte ptr [RSP + 0x2e],0x0
CMOVZ RAX,R14
JMP 0x0010e572
ADD RBP,0x1
CMP qword ptr [RSP],RBP
JL 0x0010e5be
MOV R14,qword ptr [R15 + RBP*0x8]
MOV RAX,qword ptr [R15 + RBP*0x8 + 0x8]
CMP byte ptr [RAX + -0x1],0xa
SETNZ DL
MOVZX EDX,DL
LEA R12,[RAX + RDX*0x1 + -0x1]
MOV RAX,R14
CMP byte ptr [RSP + 0x2d],0x0
JNZ 0x0010e50f
MOV RDX,R12
SUB RDX,RAX
MOVSXD RAX,dword ptr [RSP + 0x28]
CMP RDX,RAX
JZ 0x0010e546
LEA RAX,[0x134a80]
CMP qword ptr [RAX + 0x20],0x0
JZ 0x0010e5b4
MOV RDX,R12
SUB RDX,R14
MOV R9D,0x0
MOV R8,RDX
MOV ECX,0x0
MOV RSI,R14
MOV RDI,RAX
CALL 0x00122319
TEST RAX,RAX
JNS 0x0010e546
MOV EDX,0x0
JMP 0x0010e492
MOVZX EDX,byte ptr [RSP + 0x2f]
JMP 0x0010e492
MOV RAX,qword ptr [RSP + 0x30]
MOV RCX,qword ptr [RSP + 0x8]
MOV qword ptr [RAX],RCX
MOV RAX,qword ptr [RSP + 0x38]
MOV RCX,qword ptr [RSP]
MOV qword ptr [RAX],RCX
MOV EAX,0x0
TEST DL,DL
JNZ 0x0010e606
CMP qword ptr [RSP + 0x18],0x0
SETNZ AL
MOVZX EAX,AL
CMP qword ptr [RSP + 0x20],0x0
SETNZ DL
MOVZX EDX,DL
ADD EDX,EDX
OR EAX,EDX
ADD RSP,0x48
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
MOV EAX,dword ptr [0x001349a8]
CMP EAX,0x1
JBE 0x0010e674
CMP EAX,0x3
SETA AL
MOVZX EAX,AL
MOV byte ptr [RSP + 0x2d],DL
MOV dword ptr [RSP + 0x28],0x0
AND EAX,0x1
MOV byte ptr [RSP + 0x2e],AL
MOV R13,qword ptr [0x00134b98]
MOV R15,qword ptr [0x00134cc8]
MOV RDI,qword ptr [RSP + 0x10]
MOV RAX,qword ptr [RDI + 0x18]
MOV qword ptr [RSI],RAX
MOV RAX,qword ptr [RDI + 0x20]
MOV qword ptr [RCX],RAX
MOV qword ptr [RSP + 0x20],0x0
MOV qword ptr [RSP + 0x18],0x0
JMP 0x0010e4a8
MOV dword ptr [RSP + 0x28],0x0
JMP 0x0010e3d3
(translation_unit "byte FUN_0010e394(long *param_1,long *param_2,long *param_3,long *param_4,long *param_5)\n\n{\n  long lVar1;\n  long lVar2;\n  byte *pbVar3;\n  bool bVar4;\n  long lVar5;\n  long lVar6;\n  byte bVar7;\n  ushort **ppuVar8;\n  byte *pbVar9;\n  long lVar10;\n  byte bVar11;\n  long lVar12;\n  long *local_68;\n  long local_60;\n  long local_58;\n  int local_50;\n  byte local_4b;\n  \n  lVar6 = DAT_00134cc8;\n  lVar5 = DAT_00134b98;\n  if (DAT_00134ac1 == 0) {\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }\n  else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }\n  local_4b = 0;\n  bVar4 = false;\nLAB_0010e635:\n  *param_2 = param_1[3];\n  *param_4 = param_1[4];\n  local_58 = 0;\n  local_60 = 0;\n  local_68 = param_1;\n  do {\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  } while( true );\n}\n\n" (function_definition "byte FUN_0010e394(long *param_1,long *param_2,long *param_3,long *param_4,long *param_5)\n\n{\n  long lVar1;\n  long lVar2;\n  byte *pbVar3;\n  bool bVar4;\n  long lVar5;\n  long lVar6;\n  byte bVar7;\n  ushort **ppuVar8;\n  byte *pbVar9;\n  long lVar10;\n  byte bVar11;\n  long lVar12;\n  long *local_68;\n  long local_60;\n  long local_58;\n  int local_50;\n  byte local_4b;\n  \n  lVar6 = DAT_00134cc8;\n  lVar5 = DAT_00134b98;\n  if (DAT_00134ac1 == 0) {\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }\n  else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }\n  local_4b = 0;\n  bVar4 = false;\nLAB_0010e635:\n  *param_2 = param_1[3];\n  *param_4 = param_1[4];\n  local_58 = 0;\n  local_60 = 0;\n  local_68 = param_1;\n  do {\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  } while( true );\n}" type_identifier (function_declarator "FUN_0010e394(long *param_1,long *param_2,long *param_3,long *param_4,long *param_5)" identifier (parameter_list "(long *param_1,long *param_2,long *param_3,long *param_4,long *param_5)" ( (parameter_declaration "long *param_1" (sized_type_specifier "long" long) (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "long *param_2" (sized_type_specifier "long" long) (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "long *param_3" (sized_type_specifier "long" long) (pointer_declarator "*param_3" * identifier)) , (parameter_declaration "long *param_4" (sized_type_specifier "long" long) (pointer_declarator "*param_4" * identifier)) , (parameter_declaration "long *param_5" (sized_type_specifier "long" long) (pointer_declarator "*param_5" * identifier)) ))) (compound_statement "{\n  long lVar1;\n  long lVar2;\n  byte *pbVar3;\n  bool bVar4;\n  long lVar5;\n  long lVar6;\n  byte bVar7;\n  ushort **ppuVar8;\n  byte *pbVar9;\n  long lVar10;\n  byte bVar11;\n  long lVar12;\n  long *local_68;\n  long local_60;\n  long local_58;\n  int local_50;\n  byte local_4b;\n  \n  lVar6 = DAT_00134cc8;\n  lVar5 = DAT_00134b98;\n  if (DAT_00134ac1 == 0) {\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }\n  else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }\n  local_4b = 0;\n  bVar4 = false;\nLAB_0010e635:\n  *param_2 = param_1[3];\n  *param_4 = param_1[4];\n  local_58 = 0;\n  local_60 = 0;\n  local_68 = param_1;\n  do {\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  } while( true );\n}" { (declaration "long lVar1;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "byte *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (declaration "bool bVar4;" primitive_type identifier ;) (declaration "long lVar5;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar6;" (sized_type_specifier "long" long) identifier ;) (declaration "byte bVar7;" type_identifier identifier ;) (declaration "ushort **ppuVar8;" type_identifier (pointer_declarator "**ppuVar8" * (pointer_declarator "*ppuVar8" * identifier)) ;) (declaration "byte *pbVar9;" type_identifier (pointer_declarator "*pbVar9" * identifier) ;) (declaration "long lVar10;" (sized_type_specifier "long" long) identifier ;) (declaration "byte bVar11;" type_identifier identifier ;) (declaration "long lVar12;" (sized_type_specifier "long" long) identifier ;) (declaration "long *local_68;" (sized_type_specifier "long" long) (pointer_declarator "*local_68" * identifier) ;) (declaration "long local_60;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_58;" (sized_type_specifier "long" long) identifier ;) (declaration "int local_50;" primitive_type identifier ;) (declaration "byte local_4b;" type_identifier identifier ;) (expression_statement "lVar6 = DAT_00134cc8;" (assignment_expression "lVar6 = DAT_00134cc8" identifier = identifier) ;) (expression_statement "lVar5 = DAT_00134b98;" (assignment_expression "lVar5 = DAT_00134b98" identifier = identifier) ;) (if_statement "if (DAT_00134ac1 == 0) {\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }\n  else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }" if (parenthesized_expression "(DAT_00134ac1 == 0)" ( (binary_expression "DAT_00134ac1 == 0" identifier == number_literal) )) (compound_statement "{\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }" { (expression_statement "local_50 = -1;" (assignment_expression "local_50 = -1" identifier = number_literal) ;) (expression_statement "bVar11 = DAT_00134aa0 != 0;" (assignment_expression "bVar11 = DAT_00134aa0 != 0" identifier = (binary_expression "DAT_00134aa0 != 0" identifier != number_literal)) ;) }) (else_clause "else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }" else (compound_statement "{\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }" { (expression_statement "bVar11 = DAT_00134ac1;" (assignment_expression "bVar11 = DAT_00134ac1" identifier = identifier) ;) (if_statement "if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }" if (parenthesized_expression "(1 < DAT_001349a8)" ( (binary_expression "1 < DAT_001349a8" number_literal < identifier) )) (compound_statement "{\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }" { (expression_statement "bVar4 = 3 < DAT_001349a8;" (assignment_expression "bVar4 = 3 < DAT_001349a8" identifier = (binary_expression "3 < DAT_001349a8" number_literal < identifier)) ;) (expression_statement "local_4b = DAT_00134ac1;" (assignment_expression "local_4b = DAT_00134ac1" identifier = identifier) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0010e635;" goto statement_identifier ;) })) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) }))) (expression_statement "local_4b = 0;" (assignment_expression "local_4b = 0" identifier = number_literal) ;) (expression_statement "bVar4 = false;" (assignment_expression "bVar4 = false" identifier = false) ;) (labeled_statement "LAB_0010e635:\n  *param_2 = param_1[3];" statement_identifier : (expression_statement "*param_2 = param_1[3];" (assignment_expression "*param_2 = param_1[3]" (pointer_expression "*param_2" * identifier) = (subscript_expression "param_1[3]" identifier [ number_literal ])) ;)) (expression_statement "*param_4 = param_1[4];" (assignment_expression "*param_4 = param_1[4]" (pointer_expression "*param_4" * identifier) = (subscript_expression "param_1[4]" identifier [ number_literal ])) ;) (expression_statement "local_58 = 0;" (assignment_expression "local_58 = 0" identifier = number_literal) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) (expression_statement "local_68 = param_1;" (assignment_expression "local_68 = param_1" identifier = identifier) ;) (do_statement "do {\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  } while( true );" do (compound_statement "{\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  }" { (expression_statement "lVar12 = local_68[3];" (assignment_expression "lVar12 = local_68[3]" identifier = (subscript_expression "local_68[3]" identifier [ number_literal ])) ;) (expression_statement "lVar2 = local_68[2] + -1 + lVar12;" (assignment_expression "lVar2 = local_68[2] + -1 + lVar12" identifier = (binary_expression "local_68[2] + -1 + lVar12" (binary_expression "local_68[2] + -1" (subscript_expression "local_68[2]" identifier [ number_literal ]) + number_literal) + identifier)) ;) (expression_statement "lVar1 = local_68[1] + local_68[4] + -1;" (assignment_expression "lVar1 = local_68[1] + local_68[4] + -1" identifier = (binary_expression "local_68[1] + local_68[4] + -1" (binary_expression "local_68[1] + local_68[4]" (subscript_expression "local_68[1]" identifier [ number_literal ]) + (subscript_expression "local_68[4]" identifier [ number_literal ])) + number_literal)) ;) (expression_statement "local_60 = local_60 + local_68[2];" (assignment_expression "local_60 = local_60 + local_68[2]" identifier = (binary_expression "local_60 + local_68[2]" identifier + (subscript_expression "local_68[2]" identifier [ number_literal ]))) ;) (expression_statement "local_58 = local_58 + local_68[1];" (assignment_expression "local_58 = local_58 + local_68[1]" identifier = (binary_expression "local_58 + local_68[1]" identifier + (subscript_expression "local_68[1]" identifier [ number_literal ]))) ;) (expression_statement "bVar7 = lVar12 <= lVar2 & bVar11;" (assignment_expression "bVar7 = lVar12 <= lVar2 & bVar11" identifier = (binary_expression "lVar12 <= lVar2 & bVar11" (binary_expression "lVar12 <= lVar2" identifier <= identifier) & identifier)) ;) (if_statement "if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }" if (parenthesized_expression "(bVar7 != 0)" ( (binary_expression "bVar7 != 0" identifier != number_literal) )) (compound_statement "{\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }" { (do_statement "do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);" do (compound_statement "{\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      }" { (expression_statement "pbVar3 = *(byte **)(lVar5 + lVar12 * 8);" (assignment_expression "pbVar3 = *(byte **)(lVar5 + lVar12 * 8)" identifier = (pointer_expression "*(byte **)(lVar5 + lVar12 * 8)" * (cast_expression "(byte **)(lVar5 + lVar12 * 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar5 + lVar12 * 8)" ( (binary_expression "lVar5 + lVar12 * 8" identifier + (binary_expression "lVar12 * 8" identifier * number_literal)) ))))) ;) (expression_statement "lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);" (assignment_expression "lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8)" identifier = (pointer_expression "*(long *)(lVar5 + 8 + lVar12 * 8)" * (cast_expression "(long *)(lVar5 + 8 + lVar12 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar5 + 8 + lVar12 * 8)" ( (binary_expression "lVar5 + 8 + lVar12 * 8" (binary_expression "lVar5 + 8" identifier + number_literal) + (binary_expression "lVar12 * 8" identifier * number_literal)) ))))) ;) (expression_statement "lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');" (assignment_expression "lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n')" identifier = (binary_expression "lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n')" (binary_expression "lVar10 + -1" identifier + number_literal) + (call_expression "(ulong)(*(char *)(lVar10 + -1) != '\n')" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(*(char *)(lVar10 + -1) != '\n')" ( (binary_expression "*(char *)(lVar10 + -1) != '\n'" (pointer_expression "*(char *)(lVar10 + -1)" * (cast_expression "(char *)(lVar10 + -1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar10 + -1)" ( (binary_expression "lVar10 + -1" identifier + number_literal) )))) != (char_literal "'\n'" ' escape_sequence ')) ))))) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (if_statement "if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }" if (parenthesized_expression "((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10))" ( (binary_expression "(local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)" (parenthesized_expression "(local_4b != 0)" ( (binary_expression "local_4b != 0" identifier != number_literal) )) && (parenthesized_expression "(bVar11 = *pbVar3, bVar11 != 10)" ( (comma_expression "bVar11 = *pbVar3, bVar11 != 10" (assignment_expression "bVar11 = *pbVar3" identifier = (pointer_expression "*pbVar3" * identifier)) , (binary_expression "bVar11 != 10" identifier != number_literal)) ))) )) (compound_statement "{\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }" { (expression_statement "ppuVar8 = __ctype_b_loc();" (assignment_expression "ppuVar8 = __ctype_b_loc()" identifier = (call_expression "__ctype_b_loc()" identifier (argument_list "()" ( )))) ;) (do_statement "do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);" do (compound_statement "{\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          }" { (if_statement "if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }" if (parenthesized_expression "((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0)" ( (binary_expression "(*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0" (parenthesized_expression "(*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20)" ( (binary_expression "*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20" (pointer_expression "*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" * (cast_expression "(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" ( (binary_expression "(long)*ppuVar8 + (ulong)bVar11 * 2 + 1" (binary_expression "(long)*ppuVar8 + (ulong)bVar11 * 2" (cast_expression "(long)*ppuVar8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*ppuVar8" * identifier)) + (binary_expression "(ulong)bVar11 * 2" (cast_expression "(ulong)bVar11" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }" { (if_statement "if (!bVar4) {\n                pbVar9 = pbVar3;\n              }" if (parenthesized_expression "(!bVar4)" ( (unary_expression "!bVar4" ! identifier) )) (compound_statement "{\n                pbVar9 = pbVar3;\n              }" { (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) })) (break_statement "break;" break ;) })) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "bVar11 = *pbVar9;" (assignment_expression "bVar11 = *pbVar9" identifier = (pointer_expression "*pbVar9" * identifier)) ;) }) while (parenthesized_expression "(bVar11 != 10)" ( (binary_expression "bVar11 != 10" identifier != number_literal) )) ;) })) (if_statement "if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }" if (parenthesized_expression "((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0))))" ( (binary_expression "(lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))" (parenthesized_expression "(lVar10 - (long)pbVar9 != (long)local_50)" ( (binary_expression "lVar10 - (long)pbVar9 != (long)local_50" (binary_expression "lVar10 - (long)pbVar9" identifier - (cast_expression "(long)pbVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) != (cast_expression "(long)local_50" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )) && (parenthesized_expression "((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))" ( (parenthesized_expression "(DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0))" ( (binary_expression "DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)" (binary_expression "DAT_00134aa0 == 0" identifier == number_literal) || (parenthesized_expression "(lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)" ( (comma_expression "lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0" (assignment_expression "lVar10 = lVar10 - (long)pbVar3" identifier = (binary_expression "lVar10 - (long)pbVar3" identifier - (cast_expression "(long)pbVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (comma_expression "lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0" (assignment_expression "lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" identifier = (call_expression "FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" identifier (argument_list "(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" ( (pointer_expression "&DAT_00134a80" & identifier) , identifier , identifier , number_literal , identifier , number_literal )))) , (binary_expression "lVar10 < 0" identifier < number_literal))) ))) )) ))) )) (compound_statement "{\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }" { (expression_statement "bVar11 = 0;" (assignment_expression "bVar11 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0010e492;" goto statement_identifier ;) })) (expression_statement "lVar12 = lVar12 + 1;" (assignment_expression "lVar12 = lVar12 + 1" identifier = (binary_expression "lVar12 + 1" identifier + number_literal)) ;) (expression_statement "bVar11 = bVar7;" (assignment_expression "bVar11 = bVar7" identifier = identifier) ;) }) while (parenthesized_expression "(lVar12 <= lVar2)" ( (binary_expression "lVar12 <= lVar2" identifier <= identifier) )) ;) })) (expression_statement "lVar12 = local_68[4];" (assignment_expression "lVar12 = local_68[4]" identifier = (subscript_expression "local_68[4]" identifier [ number_literal ])) ;) (expression_statement "bVar7 = lVar12 <= lVar1 & bVar11;" (assignment_expression "bVar7 = lVar12 <= lVar1 & bVar11" identifier = (binary_expression "lVar12 <= lVar1 & bVar11" (binary_expression "lVar12 <= lVar1" identifier <= identifier) & identifier)) ;) (if_statement "if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }" if (parenthesized_expression "(bVar7 != 0)" ( (binary_expression "bVar7 != 0" identifier != number_literal) )) (compound_statement "{\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }" { (do_statement "do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);" do (compound_statement "{\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      }" { (expression_statement "pbVar3 = *(byte **)(lVar6 + lVar12 * 8);" (assignment_expression "pbVar3 = *(byte **)(lVar6 + lVar12 * 8)" identifier = (pointer_expression "*(byte **)(lVar6 + lVar12 * 8)" * (cast_expression "(byte **)(lVar6 + lVar12 * 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar6 + lVar12 * 8)" ( (binary_expression "lVar6 + lVar12 * 8" identifier + (binary_expression "lVar12 * 8" identifier * number_literal)) ))))) ;) (expression_statement "lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);" (assignment_expression "lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8)" identifier = (pointer_expression "*(long *)(lVar6 + 8 + lVar12 * 8)" * (cast_expression "(long *)(lVar6 + 8 + lVar12 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar6 + 8 + lVar12 * 8)" ( (binary_expression "lVar6 + 8 + lVar12 * 8" (binary_expression "lVar6 + 8" identifier + number_literal) + (binary_expression "lVar12 * 8" identifier * number_literal)) ))))) ;) (expression_statement "lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');" (assignment_expression "lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n')" identifier = (binary_expression "lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n')" (binary_expression "lVar10 + -1" identifier + number_literal) + (call_expression "(ulong)(*(char *)(lVar10 + -1) != '\n')" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(*(char *)(lVar10 + -1) != '\n')" ( (binary_expression "*(char *)(lVar10 + -1) != '\n'" (pointer_expression "*(char *)(lVar10 + -1)" * (cast_expression "(char *)(lVar10 + -1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar10 + -1)" ( (binary_expression "lVar10 + -1" identifier + number_literal) )))) != (char_literal "'\n'" ' escape_sequence ')) ))))) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (if_statement "if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }" if (parenthesized_expression "((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10))" ( (binary_expression "(local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)" (parenthesized_expression "(local_4b != 0)" ( (binary_expression "local_4b != 0" identifier != number_literal) )) && (parenthesized_expression "(bVar11 = *pbVar3, bVar11 != 10)" ( (comma_expression "bVar11 = *pbVar3, bVar11 != 10" (assignment_expression "bVar11 = *pbVar3" identifier = (pointer_expression "*pbVar3" * identifier)) , (binary_expression "bVar11 != 10" identifier != number_literal)) ))) )) (compound_statement "{\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }" { (expression_statement "ppuVar8 = __ctype_b_loc();" (assignment_expression "ppuVar8 = __ctype_b_loc()" identifier = (call_expression "__ctype_b_loc()" identifier (argument_list "()" ( )))) ;) (do_statement "do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);" do (compound_statement "{\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          }" { (if_statement "if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }" if (parenthesized_expression "((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0)" ( (binary_expression "(*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0" (parenthesized_expression "(*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20)" ( (binary_expression "*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20" (pointer_expression "*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" * (cast_expression "(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" ( (binary_expression "(long)*ppuVar8 + (ulong)bVar11 * 2 + 1" (binary_expression "(long)*ppuVar8 + (ulong)bVar11 * 2" (cast_expression "(long)*ppuVar8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*ppuVar8" * identifier)) + (binary_expression "(ulong)bVar11 * 2" (cast_expression "(ulong)bVar11" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }" { (if_statement "if (!bVar4) {\n                pbVar9 = pbVar3;\n              }" if (parenthesized_expression "(!bVar4)" ( (unary_expression "!bVar4" ! identifier) )) (compound_statement "{\n                pbVar9 = pbVar3;\n              }" { (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) })) (break_statement "break;" break ;) })) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "bVar11 = *pbVar9;" (assignment_expression "bVar11 = *pbVar9" identifier = (pointer_expression "*pbVar9" * identifier)) ;) }) while (parenthesized_expression "(bVar11 != 10)" ( (binary_expression "bVar11 != 10" identifier != number_literal) )) ;) })) (if_statement "if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }" if (parenthesized_expression "((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0))))" ( (binary_expression "(lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))" (parenthesized_expression "(lVar10 - (long)pbVar9 != (long)local_50)" ( (binary_expression "lVar10 - (long)pbVar9 != (long)local_50" (binary_expression "lVar10 - (long)pbVar9" identifier - (cast_expression "(long)pbVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) != (cast_expression "(long)local_50" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )) && (parenthesized_expression "((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))" ( (parenthesized_expression "(DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0))" ( (binary_expression "DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)" (binary_expression "DAT_00134aa0 == 0" identifier == number_literal) || (parenthesized_expression "(lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)" ( (comma_expression "lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0" (assignment_expression "lVar10 = lVar10 - (long)pbVar3" identifier = (binary_expression "lVar10 - (long)pbVar3" identifier - (cast_expression "(long)pbVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (comma_expression "lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0" (assignment_expression "lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" identifier = (call_expression "FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" identifier (argument_list "(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" ( (pointer_expression "&DAT_00134a80" & identifier) , identifier , identifier , number_literal , identifier , number_literal )))) , (binary_expression "lVar10 < 0" identifier < number_literal))) ))) )) ))) )) (compound_statement "{\n          bVar11 = 0;\n          break;\n        }" { (expression_statement "bVar11 = 0;" (assignment_expression "bVar11 = 0" identifier = number_literal) ;) (break_statement "break;" break ;) })) (expression_statement "lVar12 = lVar12 + 1;" (assignment_expression "lVar12 = lVar12 + 1" identifier = (binary_expression "lVar12 + 1" identifier + number_literal)) ;) (expression_statement "bVar11 = bVar7;" (assignment_expression "bVar11 = bVar7" identifier = identifier) ;) }) while (parenthesized_expression "(lVar12 <= lVar1)" ( (binary_expression "lVar12 <= lVar1" identifier <= identifier) )) ;) })) (labeled_statement "LAB_0010e492:\n    local_68 = (long *)*local_68;" statement_identifier : (expression_statement "local_68 = (long *)*local_68;" (assignment_expression "local_68 = (long *)*local_68" identifier = (cast_expression "(long *)*local_68" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_68" * identifier))) ;)) (if_statement "if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }" if (parenthesized_expression "(local_68 == (long *)0x0)" ( (binary_expression "local_68 == (long *)0x0" identifier == (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }" { (expression_statement "*param_3 = lVar2;" (assignment_expression "*param_3 = lVar2" (pointer_expression "*param_3" * identifier) = identifier) ;) (expression_statement "*param_5 = lVar1;" (assignment_expression "*param_5 = lVar1" (pointer_expression "*param_5" * identifier) = identifier) ;) (expression_statement "bVar7 = 0;" (assignment_expression "bVar7 = 0" identifier = number_literal) ;) (if_statement "if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }" if (parenthesized_expression "(bVar11 == 0)" ( (binary_expression "bVar11 == 0" identifier == number_literal) )) (compound_statement "{\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }" { (expression_statement "bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';" (assignment_expression "bVar7 = local_60 != 0 | (local_58 != 0) * '\x02'" identifier = (binary_expression "local_60 != 0 | (local_58 != 0) * '\x02'" (binary_expression "local_60 != 0" identifier != number_literal) | (binary_expression "(local_58 != 0) * '\x02'" (parenthesized_expression "(local_58 != 0)" ( (binary_expression "local_58 != 0" identifier != number_literal) )) * (char_literal "'\x02'" ' escape_sequence ')))) ;) })) (return_statement "return bVar7;" return identifier ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit "changes analyze_hunk(change *hunk,lin *first0,lin *last0,lin *first1,lin *last1)\n\n{\n  long lVar1;\n  long lVar2;\n  byte *pbVar3;\n  char *pcVar4;\n  bool bVar5;\n  long lVar6;\n  char **ppcVar7;\n  char **ppcVar8;\n  byte bVar9;\n  changes cVar10;\n  ushort **ppuVar11;\n  byte *pbVar12;\n  regoff_t rVar13;\n  byte bVar14;\n  long lVar15;\n  change *local_68;\n  long local_60;\n  long local_58;\n  int local_50;\n  char local_4b;\n  \n  ppcVar8 = files[1].linbuf;\n  ppcVar7 = files[0].linbuf;\n  if (ignore_blank_lines) {\n    bVar14 = ignore_blank_lines;\n    if (IGNORE_TAB_EXPANSION < ignore_white_space) {\n      bVar5 = IGNORE_TAB_EXPANSION_AND_TRAILING_SPACE < ignore_white_space;\n      local_4b = ignore_blank_lines;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }\n  else {\n    local_50 = -1;\n    bVar14 = ignore_regexp.fastmap != (char *)0x0;\n  }\n  local_4b = '\0';\n  bVar5 = false;\nLAB_0010e635:\n  *first0 = hunk->line0;\n  *first1 = hunk->line1;\n  local_58 = 0;\n  local_60 = 0;\n  local_68 = hunk;\n  do {\n    lVar15 = local_68->line0;\n    lVar2 = local_68->deleted + -1 + lVar15;\n    lVar1 = local_68->inserted + local_68->line1 + -1;\n    local_60 = local_60 + local_68->deleted;\n    local_58 = local_58 + local_68->inserted;\n    bVar9 = lVar15 <= lVar2 & bVar14;\n    if (bVar9 != 0) {\n      do {\n        pbVar3 = (byte *)ppcVar7[lVar15];\n        pcVar4 = ppcVar7[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          goto LAB_0010e492;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar2);\n    }\n    lVar15 = local_68->line1;\n    bVar9 = lVar15 <= lVar1 & bVar14;\n    if (bVar9 != 0) {\n      do {\n        pbVar3 = (byte *)ppcVar8[lVar15];\n        pcVar4 = ppcVar8[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          break;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = local_68->link;\n    if (local_68 == (change *)0x0) {\n      *last0 = lVar2;\n      *last1 = lVar1;\n      cVar10 = UNCHANGED;\n      if (bVar14 == 0) {\n        cVar10 = (uint)(local_60 != 0) | (uint)(local_58 != 0) * 2;\n      }\n      return cVar10;\n    }\n  } while( true );\n}\n\n" (function_definition "changes analyze_hunk(change *hunk,lin *first0,lin *last0,lin *first1,lin *last1)\n\n{\n  long lVar1;\n  long lVar2;\n  byte *pbVar3;\n  char *pcVar4;\n  bool bVar5;\n  long lVar6;\n  char **ppcVar7;\n  char **ppcVar8;\n  byte bVar9;\n  changes cVar10;\n  ushort **ppuVar11;\n  byte *pbVar12;\n  regoff_t rVar13;\n  byte bVar14;\n  long lVar15;\n  change *local_68;\n  long local_60;\n  long local_58;\n  int local_50;\n  char local_4b;\n  \n  ppcVar8 = files[1].linbuf;\n  ppcVar7 = files[0].linbuf;\n  if (ignore_blank_lines) {\n    bVar14 = ignore_blank_lines;\n    if (IGNORE_TAB_EXPANSION < ignore_white_space) {\n      bVar5 = IGNORE_TAB_EXPANSION_AND_TRAILING_SPACE < ignore_white_space;\n      local_4b = ignore_blank_lines;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }\n  else {\n    local_50 = -1;\n    bVar14 = ignore_regexp.fastmap != (char *)0x0;\n  }\n  local_4b = '\0';\n  bVar5 = false;\nLAB_0010e635:\n  *first0 = hunk->line0;\n  *first1 = hunk->line1;\n  local_58 = 0;\n  local_60 = 0;\n  local_68 = hunk;\n  do {\n    lVar15 = local_68->line0;\n    lVar2 = local_68->deleted + -1 + lVar15;\n    lVar1 = local_68->inserted + local_68->line1 + -1;\n    local_60 = local_60 + local_68->deleted;\n    local_58 = local_58 + local_68->inserted;\n    bVar9 = lVar15 <= lVar2 & bVar14;\n    if (bVar9 != 0) {\n      do {\n        pbVar3 = (byte *)ppcVar7[lVar15];\n        pcVar4 = ppcVar7[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          goto LAB_0010e492;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar2);\n    }\n    lVar15 = local_68->line1;\n    bVar9 = lVar15 <= lVar1 & bVar14;\n    if (bVar9 != 0) {\n      do {\n        pbVar3 = (byte *)ppcVar8[lVar15];\n        pcVar4 = ppcVar8[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          break;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = local_68->link;\n    if (local_68 == (change *)0x0) {\n      *last0 = lVar2;\n      *last1 = lVar1;\n      cVar10 = UNCHANGED;\n      if (bVar14 == 0) {\n        cVar10 = (uint)(local_60 != 0) | (uint)(local_58 != 0) * 2;\n      }\n      return cVar10;\n    }\n  } while( true );\n}" type_identifier (function_declarator "analyze_hunk(change *hunk,lin *first0,lin *last0,lin *first1,lin *last1)" identifier (parameter_list "(change *hunk,lin *first0,lin *last0,lin *first1,lin *last1)" ( (parameter_declaration "change *hunk" type_identifier (pointer_declarator "*hunk" * identifier)) , (parameter_declaration "lin *first0" type_identifier (pointer_declarator "*first0" * identifier)) , (parameter_declaration "lin *last0" type_identifier (pointer_declarator "*last0" * identifier)) , (parameter_declaration "lin *first1" type_identifier (pointer_declarator "*first1" * identifier)) , (parameter_declaration "lin *last1" type_identifier (pointer_declarator "*last1" * identifier)) ))) (compound_statement "{\n  long lVar1;\n  long lVar2;\n  byte *pbVar3;\n  char *pcVar4;\n  bool bVar5;\n  long lVar6;\n  char **ppcVar7;\n  char **ppcVar8;\n  byte bVar9;\n  changes cVar10;\n  ushort **ppuVar11;\n  byte *pbVar12;\n  regoff_t rVar13;\n  byte bVar14;\n  long lVar15;\n  change *local_68;\n  long local_60;\n  long local_58;\n  int local_50;\n  char local_4b;\n  \n  ppcVar8 = files[1].linbuf;\n  ppcVar7 = files[0].linbuf;\n  if (ignore_blank_lines) {\n    bVar14 = ignore_blank_lines;\n    if (IGNORE_TAB_EXPANSION < ignore_white_space) {\n      bVar5 = IGNORE_TAB_EXPANSION_AND_TRAILING_SPACE < ignore_white_space;\n      local_4b = ignore_blank_lines;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }\n  else {\n    local_50 = -1;\n    bVar14 = ignore_regexp.fastmap != (char *)0x0;\n  }\n  local_4b = '\0';\n  bVar5 = false;\nLAB_0010e635:\n  *first0 = hunk->line0;\n  *first1 = hunk->line1;\n  local_58 = 0;\n  local_60 = 0;\n  local_68 = hunk;\n  do {\n    lVar15 = local_68->line0;\n    lVar2 = local_68->deleted + -1 + lVar15;\n    lVar1 = local_68->inserted + local_68->line1 + -1;\n    local_60 = local_60 + local_68->deleted;\n    local_58 = local_58 + local_68->inserted;\n    bVar9 = lVar15 <= lVar2 & bVar14;\n    if (bVar9 != 0) {\n      do {\n        pbVar3 = (byte *)ppcVar7[lVar15];\n        pcVar4 = ppcVar7[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          goto LAB_0010e492;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar2);\n    }\n    lVar15 = local_68->line1;\n    bVar9 = lVar15 <= lVar1 & bVar14;\n    if (bVar9 != 0) {\n      do {\n        pbVar3 = (byte *)ppcVar8[lVar15];\n        pcVar4 = ppcVar8[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          break;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = local_68->link;\n    if (local_68 == (change *)0x0) {\n      *last0 = lVar2;\n      *last1 = lVar1;\n      cVar10 = UNCHANGED;\n      if (bVar14 == 0) {\n        cVar10 = (uint)(local_60 != 0) | (uint)(local_58 != 0) * 2;\n      }\n      return cVar10;\n    }\n  } while( true );\n}" { (declaration "long lVar1;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "byte *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "bool bVar5;" primitive_type identifier ;) (declaration "long lVar6;" (sized_type_specifier "long" long) identifier ;) (declaration "char **ppcVar7;" primitive_type (pointer_declarator "**ppcVar7" * (pointer_declarator "*ppcVar7" * identifier)) ;) (declaration "char **ppcVar8;" primitive_type (pointer_declarator "**ppcVar8" * (pointer_declarator "*ppcVar8" * identifier)) ;) (declaration "byte bVar9;" type_identifier identifier ;) (declaration "changes cVar10;" type_identifier identifier ;) (declaration "ushort **ppuVar11;" type_identifier (pointer_declarator "**ppuVar11" * (pointer_declarator "*ppuVar11" * identifier)) ;) (declaration "byte *pbVar12;" type_identifier (pointer_declarator "*pbVar12" * identifier) ;) (declaration "regoff_t rVar13;" type_identifier identifier ;) (declaration "byte bVar14;" type_identifier identifier ;) (declaration "long lVar15;" (sized_type_specifier "long" long) identifier ;) (declaration "change *local_68;" type_identifier (pointer_declarator "*local_68" * identifier) ;) (declaration "long local_60;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_58;" (sized_type_specifier "long" long) identifier ;) (declaration "int local_50;" primitive_type identifier ;) (declaration "char local_4b;" primitive_type identifier ;) (expression_statement "ppcVar8 = files[1].linbuf;" (assignment_expression "ppcVar8 = files[1].linbuf" identifier = (field_expression "files[1].linbuf" (subscript_expression "files[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "ppcVar7 = files[0].linbuf;" (assignment_expression "ppcVar7 = files[0].linbuf" identifier = (field_expression "files[0].linbuf" (subscript_expression "files[0]" identifier [ number_literal ]) . field_identifier)) ;) (if_statement "if (ignore_blank_lines) {\n    bVar14 = ignore_blank_lines;\n    if (IGNORE_TAB_EXPANSION < ignore_white_space) {\n      bVar5 = IGNORE_TAB_EXPANSION_AND_TRAILING_SPACE < ignore_white_space;\n      local_4b = ignore_blank_lines;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }\n  else {\n    local_50 = -1;\n    bVar14 = ignore_regexp.fastmap != (char *)0x0;\n  }" if (parenthesized_expression "(ignore_blank_lines)" ( identifier )) (compound_statement "{\n    bVar14 = ignore_blank_lines;\n    if (IGNORE_TAB_EXPANSION < ignore_white_space) {\n      bVar5 = IGNORE_TAB_EXPANSION_AND_TRAILING_SPACE < ignore_white_space;\n      local_4b = ignore_blank_lines;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }" { (expression_statement "bVar14 = ignore_blank_lines;" (assignment_expression "bVar14 = ignore_blank_lines" identifier = identifier) ;) (if_statement "if (IGNORE_TAB_EXPANSION < ignore_white_space) {\n      bVar5 = IGNORE_TAB_EXPANSION_AND_TRAILING_SPACE < ignore_white_space;\n      local_4b = ignore_blank_lines;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }" if (parenthesized_expression "(IGNORE_TAB_EXPANSION < ignore_white_space)" ( (binary_expression "IGNORE_TAB_EXPANSION < ignore_white_space" identifier < identifier) )) (compound_statement "{\n      bVar5 = IGNORE_TAB_EXPANSION_AND_TRAILING_SPACE < ignore_white_space;\n      local_4b = ignore_blank_lines;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }" { (expression_statement "bVar5 = IGNORE_TAB_EXPANSION_AND_TRAILING_SPACE < ignore_white_space;" (assignment_expression "bVar5 = IGNORE_TAB_EXPANSION_AND_TRAILING_SPACE < ignore_white_space" identifier = (binary_expression "IGNORE_TAB_EXPANSION_AND_TRAILING_SPACE < ignore_white_space" identifier < identifier)) ;) (expression_statement "local_4b = ignore_blank_lines;" (assignment_expression "local_4b = ignore_blank_lines" identifier = identifier) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0010e635;" goto statement_identifier ;) })) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) }) (else_clause "else {\n    local_50 = -1;\n    bVar14 = ignore_regexp.fastmap != (char *)0x0;\n  }" else (compound_statement "{\n    local_50 = -1;\n    bVar14 = ignore_regexp.fastmap != (char *)0x0;\n  }" { (expression_statement "local_50 = -1;" (assignment_expression "local_50 = -1" identifier = number_literal) ;) (expression_statement "bVar14 = ignore_regexp.fastmap != (char *)0x0;" (assignment_expression "bVar14 = ignore_regexp.fastmap != (char *)0x0" identifier = (binary_expression "ignore_regexp.fastmap != (char *)0x0" (field_expression "ignore_regexp.fastmap" identifier . field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) }))) (expression_statement "local_4b = '\0';" (assignment_expression "local_4b = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "bVar5 = false;" (assignment_expression "bVar5 = false" identifier = false) ;) (labeled_statement "LAB_0010e635:\n  *first0 = hunk->line0;" statement_identifier : (expression_statement "*first0 = hunk->line0;" (assignment_expression "*first0 = hunk->line0" (pointer_expression "*first0" * identifier) = (field_expression "hunk->line0" identifier -> field_identifier)) ;)) (expression_statement "*first1 = hunk->line1;" (assignment_expression "*first1 = hunk->line1" (pointer_expression "*first1" * identifier) = (field_expression "hunk->line1" identifier -> field_identifier)) ;) (expression_statement "local_58 = 0;" (assignment_expression "local_58 = 0" identifier = number_literal) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) (expression_statement "local_68 = hunk;" (assignment_expression "local_68 = hunk" identifier = identifier) ;) (do_statement "do {\n    lVar15 = local_68->line0;\n    lVar2 = local_68->deleted + -1 + lVar15;\n    lVar1 = local_68->inserted + local_68->line1 + -1;\n    local_60 = local_60 + local_68->deleted;\n    local_58 = local_58 + local_68->inserted;\n    bVar9 = lVar15 <= lVar2 & bVar14;\n    if (bVar9 != 0) {\n      do {\n        pbVar3 = (byte *)ppcVar7[lVar15];\n        pcVar4 = ppcVar7[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          goto LAB_0010e492;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar2);\n    }\n    lVar15 = local_68->line1;\n    bVar9 = lVar15 <= lVar1 & bVar14;\n    if (bVar9 != 0) {\n      do {\n        pbVar3 = (byte *)ppcVar8[lVar15];\n        pcVar4 = ppcVar8[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          break;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = local_68->link;\n    if (local_68 == (change *)0x0) {\n      *last0 = lVar2;\n      *last1 = lVar1;\n      cVar10 = UNCHANGED;\n      if (bVar14 == 0) {\n        cVar10 = (uint)(local_60 != 0) | (uint)(local_58 != 0) * 2;\n      }\n      return cVar10;\n    }\n  } while( true );" do (compound_statement "{\n    lVar15 = local_68->line0;\n    lVar2 = local_68->deleted + -1 + lVar15;\n    lVar1 = local_68->inserted + local_68->line1 + -1;\n    local_60 = local_60 + local_68->deleted;\n    local_58 = local_58 + local_68->inserted;\n    bVar9 = lVar15 <= lVar2 & bVar14;\n    if (bVar9 != 0) {\n      do {\n        pbVar3 = (byte *)ppcVar7[lVar15];\n        pcVar4 = ppcVar7[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          goto LAB_0010e492;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar2);\n    }\n    lVar15 = local_68->line1;\n    bVar9 = lVar15 <= lVar1 & bVar14;\n    if (bVar9 != 0) {\n      do {\n        pbVar3 = (byte *)ppcVar8[lVar15];\n        pcVar4 = ppcVar8[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          break;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = local_68->link;\n    if (local_68 == (change *)0x0) {\n      *last0 = lVar2;\n      *last1 = lVar1;\n      cVar10 = UNCHANGED;\n      if (bVar14 == 0) {\n        cVar10 = (uint)(local_60 != 0) | (uint)(local_58 != 0) * 2;\n      }\n      return cVar10;\n    }\n  }" { (expression_statement "lVar15 = local_68->line0;" (assignment_expression "lVar15 = local_68->line0" identifier = (field_expression "local_68->line0" identifier -> field_identifier)) ;) (expression_statement "lVar2 = local_68->deleted + -1 + lVar15;" (assignment_expression "lVar2 = local_68->deleted + -1 + lVar15" identifier = (binary_expression "local_68->deleted + -1 + lVar15" (binary_expression "local_68->deleted + -1" (field_expression "local_68->deleted" identifier -> field_identifier) + number_literal) + identifier)) ;) (expression_statement "lVar1 = local_68->inserted + local_68->line1 + -1;" (assignment_expression "lVar1 = local_68->inserted + local_68->line1 + -1" identifier = (binary_expression "local_68->inserted + local_68->line1 + -1" (binary_expression "local_68->inserted + local_68->line1" (field_expression "local_68->inserted" identifier -> field_identifier) + (field_expression "local_68->line1" identifier -> field_identifier)) + number_literal)) ;) (expression_statement "local_60 = local_60 + local_68->deleted;" (assignment_expression "local_60 = local_60 + local_68->deleted" identifier = (binary_expression "local_60 + local_68->deleted" identifier + (field_expression "local_68->deleted" identifier -> field_identifier))) ;) (expression_statement "local_58 = local_58 + local_68->inserted;" (assignment_expression "local_58 = local_58 + local_68->inserted" identifier = (binary_expression "local_58 + local_68->inserted" identifier + (field_expression "local_68->inserted" identifier -> field_identifier))) ;) (expression_statement "bVar9 = lVar15 <= lVar2 & bVar14;" (assignment_expression "bVar9 = lVar15 <= lVar2 & bVar14" identifier = (binary_expression "lVar15 <= lVar2 & bVar14" (binary_expression "lVar15 <= lVar2" identifier <= identifier) & identifier)) ;) (if_statement "if (bVar9 != 0) {\n      do {\n        pbVar3 = (byte *)ppcVar7[lVar15];\n        pcVar4 = ppcVar7[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          goto LAB_0010e492;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar2);\n    }" if (parenthesized_expression "(bVar9 != 0)" ( (binary_expression "bVar9 != 0" identifier != number_literal) )) (compound_statement "{\n      do {\n        pbVar3 = (byte *)ppcVar7[lVar15];\n        pcVar4 = ppcVar7[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          goto LAB_0010e492;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar2);\n    }" { (do_statement "do {\n        pbVar3 = (byte *)ppcVar7[lVar15];\n        pcVar4 = ppcVar7[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          goto LAB_0010e492;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar2);" do (compound_statement "{\n        pbVar3 = (byte *)ppcVar7[lVar15];\n        pcVar4 = ppcVar7[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          goto LAB_0010e492;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      }" { (expression_statement "pbVar3 = (byte *)ppcVar7[lVar15];" (assignment_expression "pbVar3 = (byte *)ppcVar7[lVar15]" identifier = (cast_expression "(byte *)ppcVar7[lVar15]" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "ppcVar7[lVar15]" identifier [ identifier ]))) ;) (expression_statement "pcVar4 = ppcVar7[lVar15 + 1];" (assignment_expression "pcVar4 = ppcVar7[lVar15 + 1]" identifier = (subscript_expression "ppcVar7[lVar15 + 1]" identifier [ (binary_expression "lVar15 + 1" identifier + number_literal) ])) ;) (expression_statement "lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;" (assignment_expression "lVar6 = (ulong)(pcVar4[-1] != '\n') - 1" identifier = (binary_expression "(ulong)(pcVar4[-1] != '\n') - 1" (call_expression "(ulong)(pcVar4[-1] != '\n')" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(pcVar4[-1] != '\n')" ( (binary_expression "pcVar4[-1] != '\n'" (subscript_expression "pcVar4[-1]" identifier [ number_literal ]) != (char_literal "'\n'" ' escape_sequence ')) ))) - number_literal)) ;) (expression_statement "pbVar12 = pbVar3;" (assignment_expression "pbVar12 = pbVar3" identifier = identifier) ;) (if_statement "if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }" if (parenthesized_expression "((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10))" ( (binary_expression "(local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)" (parenthesized_expression "(local_4b != '\0')" ( (binary_expression "local_4b != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(bVar14 = *pbVar3, bVar14 != 10)" ( (comma_expression "bVar14 = *pbVar3, bVar14 != 10" (assignment_expression "bVar14 = *pbVar3" identifier = (pointer_expression "*pbVar3" * identifier)) , (binary_expression "bVar14 != 10" identifier != number_literal)) ))) )) (compound_statement "{\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }" { (expression_statement "ppuVar11 = __ctype_b_loc();" (assignment_expression "ppuVar11 = __ctype_b_loc()" identifier = (call_expression "__ctype_b_loc()" identifier (argument_list "()" ( )))) ;) (do_statement "do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);" do (compound_statement "{\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          }" { (if_statement "if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }" if (parenthesized_expression "((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0)" ( (binary_expression "(*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0" (parenthesized_expression "(*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20)" ( (binary_expression "*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20" (pointer_expression "*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1)" * (cast_expression "(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)*ppuVar11 + (ulong)bVar14 * 2 + 1)" ( (binary_expression "(long)*ppuVar11 + (ulong)bVar14 * 2 + 1" (binary_expression "(long)*ppuVar11 + (ulong)bVar14 * 2" (cast_expression "(long)*ppuVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*ppuVar11" * identifier)) + (binary_expression "(ulong)bVar14 * 2" (cast_expression "(ulong)bVar14" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }" { (if_statement "if (!bVar5) {\n                pbVar12 = pbVar3;\n              }" if (parenthesized_expression "(!bVar5)" ( (unary_expression "!bVar5" ! identifier) )) (compound_statement "{\n                pbVar12 = pbVar3;\n              }" { (expression_statement "pbVar12 = pbVar3;" (assignment_expression "pbVar12 = pbVar3" identifier = identifier) ;) })) (break_statement "break;" break ;) })) (expression_statement "pbVar12 = pbVar12 + 1;" (assignment_expression "pbVar12 = pbVar12 + 1" identifier = (binary_expression "pbVar12 + 1" identifier + number_literal)) ;) (expression_statement "bVar14 = *pbVar12;" (assignment_expression "bVar14 = *pbVar12" identifier = (pointer_expression "*pbVar12" * identifier)) ;) }) while (parenthesized_expression "(bVar14 != 10)" ( (binary_expression "bVar14 != 10" identifier != number_literal) )) ;) })) (if_statement "if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          goto LAB_0010e492;\n        }" if (parenthesized_expression "((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0))))" ( (binary_expression "(pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))" (parenthesized_expression "(pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50)" ( (binary_expression "pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50" (binary_expression "pcVar4 + (lVar6 - (long)pbVar12)" identifier + (parenthesized_expression "(lVar6 - (long)pbVar12)" ( (binary_expression "lVar6 - (long)pbVar12" identifier - (cast_expression "(long)pbVar12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) != (cast_expression "(char *)(long)local_50" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (cast_expression "(long)local_50" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) )) && (parenthesized_expression "((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))" ( (parenthesized_expression "(ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0))" ( (binary_expression "ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)" (binary_expression "ignore_regexp.fastmap == (char *)0x0" (field_expression "ignore_regexp.fastmap" identifier . field_identifier) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)" ( (comma_expression "rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0" (assignment_expression "rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)" identifier = (call_expression "rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)" identifier (argument_list "(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)" ( (pointer_expression "&ignore_regexp" & identifier) , (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (call_expression "(Idx)(pcVar4 + (lVar6 - (long)pbVar3))" (parenthesized_expression "(Idx)" ( identifier )) (argument_list "(pcVar4 + (lVar6 - (long)pbVar3))" ( (binary_expression "pcVar4 + (lVar6 - (long)pbVar3)" identifier + (parenthesized_expression "(lVar6 - (long)pbVar3)" ( (binary_expression "lVar6 - (long)pbVar3" identifier - (cast_expression "(long)pbVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) ))) , number_literal , (call_expression "(regoff_t)(pcVar4 + (lVar6 - (long)pbVar3))" (parenthesized_expression "(regoff_t)" ( identifier )) (argument_list "(pcVar4 + (lVar6 - (long)pbVar3))" ( (binary_expression "pcVar4 + (lVar6 - (long)pbVar3)" identifier + (parenthesized_expression "(lVar6 - (long)pbVar3)" ( (binary_expression "lVar6 - (long)pbVar3" identifier - (cast_expression "(long)pbVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) ))) , (cast_expression "(re_registers *)0x0" ( (type_descriptor "re_registers *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) )))) , (binary_expression "rVar13 < 0" identifier < number_literal)) ))) )) ))) )) (compound_statement "{\n          bVar14 = 0;\n          goto LAB_0010e492;\n        }" { (expression_statement "bVar14 = 0;" (assignment_expression "bVar14 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0010e492;" goto statement_identifier ;) })) (expression_statement "lVar15 = lVar15 + 1;" (assignment_expression "lVar15 = lVar15 + 1" identifier = (binary_expression "lVar15 + 1" identifier + number_literal)) ;) (expression_statement "bVar14 = bVar9;" (assignment_expression "bVar14 = bVar9" identifier = identifier) ;) }) while (parenthesized_expression "(lVar15 <= lVar2)" ( (binary_expression "lVar15 <= lVar2" identifier <= identifier) )) ;) })) (expression_statement "lVar15 = local_68->line1;" (assignment_expression "lVar15 = local_68->line1" identifier = (field_expression "local_68->line1" identifier -> field_identifier)) ;) (expression_statement "bVar9 = lVar15 <= lVar1 & bVar14;" (assignment_expression "bVar9 = lVar15 <= lVar1 & bVar14" identifier = (binary_expression "lVar15 <= lVar1 & bVar14" (binary_expression "lVar15 <= lVar1" identifier <= identifier) & identifier)) ;) (if_statement "if (bVar9 != 0) {\n      do {\n        pbVar3 = (byte *)ppcVar8[lVar15];\n        pcVar4 = ppcVar8[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          break;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar1);\n    }" if (parenthesized_expression "(bVar9 != 0)" ( (binary_expression "bVar9 != 0" identifier != number_literal) )) (compound_statement "{\n      do {\n        pbVar3 = (byte *)ppcVar8[lVar15];\n        pcVar4 = ppcVar8[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          break;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar1);\n    }" { (do_statement "do {\n        pbVar3 = (byte *)ppcVar8[lVar15];\n        pcVar4 = ppcVar8[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          break;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      } while (lVar15 <= lVar1);" do (compound_statement "{\n        pbVar3 = (byte *)ppcVar8[lVar15];\n        pcVar4 = ppcVar8[lVar15 + 1];\n        lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;\n        pbVar12 = pbVar3;\n        if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }\n        if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          break;\n        }\n        lVar15 = lVar15 + 1;\n        bVar14 = bVar9;\n      }" { (expression_statement "pbVar3 = (byte *)ppcVar8[lVar15];" (assignment_expression "pbVar3 = (byte *)ppcVar8[lVar15]" identifier = (cast_expression "(byte *)ppcVar8[lVar15]" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "ppcVar8[lVar15]" identifier [ identifier ]))) ;) (expression_statement "pcVar4 = ppcVar8[lVar15 + 1];" (assignment_expression "pcVar4 = ppcVar8[lVar15 + 1]" identifier = (subscript_expression "ppcVar8[lVar15 + 1]" identifier [ (binary_expression "lVar15 + 1" identifier + number_literal) ])) ;) (expression_statement "lVar6 = (ulong)(pcVar4[-1] != '\n') - 1;" (assignment_expression "lVar6 = (ulong)(pcVar4[-1] != '\n') - 1" identifier = (binary_expression "(ulong)(pcVar4[-1] != '\n') - 1" (call_expression "(ulong)(pcVar4[-1] != '\n')" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(pcVar4[-1] != '\n')" ( (binary_expression "pcVar4[-1] != '\n'" (subscript_expression "pcVar4[-1]" identifier [ number_literal ]) != (char_literal "'\n'" ' escape_sequence ')) ))) - number_literal)) ;) (expression_statement "pbVar12 = pbVar3;" (assignment_expression "pbVar12 = pbVar3" identifier = identifier) ;) (if_statement "if ((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)) {\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }" if (parenthesized_expression "((local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10))" ( (binary_expression "(local_4b != '\0') && (bVar14 = *pbVar3, bVar14 != 10)" (parenthesized_expression "(local_4b != '\0')" ( (binary_expression "local_4b != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(bVar14 = *pbVar3, bVar14 != 10)" ( (comma_expression "bVar14 = *pbVar3, bVar14 != 10" (assignment_expression "bVar14 = *pbVar3" identifier = (pointer_expression "*pbVar3" * identifier)) , (binary_expression "bVar14 != 10" identifier != number_literal)) ))) )) (compound_statement "{\n          ppuVar11 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);\n        }" { (expression_statement "ppuVar11 = __ctype_b_loc();" (assignment_expression "ppuVar11 = __ctype_b_loc()" identifier = (call_expression "__ctype_b_loc()" identifier (argument_list "()" ( )))) ;) (do_statement "do {\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          } while (bVar14 != 10);" do (compound_statement "{\n            if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }\n            pbVar12 = pbVar12 + 1;\n            bVar14 = *pbVar12;\n          }" { (if_statement "if ((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0) {\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }" if (parenthesized_expression "((*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0)" ( (binary_expression "(*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20) == 0" (parenthesized_expression "(*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20)" ( (binary_expression "*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1) & 0x20" (pointer_expression "*(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1)" * (cast_expression "(byte *)((long)*ppuVar11 + (ulong)bVar14 * 2 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)*ppuVar11 + (ulong)bVar14 * 2 + 1)" ( (binary_expression "(long)*ppuVar11 + (ulong)bVar14 * 2 + 1" (binary_expression "(long)*ppuVar11 + (ulong)bVar14 * 2" (cast_expression "(long)*ppuVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*ppuVar11" * identifier)) + (binary_expression "(ulong)bVar14 * 2" (cast_expression "(ulong)bVar14" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n              if (!bVar5) {\n                pbVar12 = pbVar3;\n              }\n              break;\n            }" { (if_statement "if (!bVar5) {\n                pbVar12 = pbVar3;\n              }" if (parenthesized_expression "(!bVar5)" ( (unary_expression "!bVar5" ! identifier) )) (compound_statement "{\n                pbVar12 = pbVar3;\n              }" { (expression_statement "pbVar12 = pbVar3;" (assignment_expression "pbVar12 = pbVar3" identifier = identifier) ;) })) (break_statement "break;" break ;) })) (expression_statement "pbVar12 = pbVar12 + 1;" (assignment_expression "pbVar12 = pbVar12 + 1" identifier = (binary_expression "pbVar12 + 1" identifier + number_literal)) ;) (expression_statement "bVar14 = *pbVar12;" (assignment_expression "bVar14 = *pbVar12" identifier = (pointer_expression "*pbVar12" * identifier)) ;) }) while (parenthesized_expression "(bVar14 != 10)" ( (binary_expression "bVar14 != 10" identifier != number_literal) )) ;) })) (if_statement "if ((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))) {\n          bVar14 = 0;\n          break;\n        }" if (parenthesized_expression "((pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0))))" ( (binary_expression "(pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50) &&\n           ((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))" (parenthesized_expression "(pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50)" ( (binary_expression "pcVar4 + (lVar6 - (long)pbVar12) != (char *)(long)local_50" (binary_expression "pcVar4 + (lVar6 - (long)pbVar12)" identifier + (parenthesized_expression "(lVar6 - (long)pbVar12)" ( (binary_expression "lVar6 - (long)pbVar12" identifier - (cast_expression "(long)pbVar12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) != (cast_expression "(char *)(long)local_50" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (cast_expression "(long)local_50" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) )) && (parenthesized_expression "((ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)))" ( (parenthesized_expression "(ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0))" ( (binary_expression "ignore_regexp.fastmap == (char *)0x0 ||\n            (rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)" (binary_expression "ignore_regexp.fastmap == (char *)0x0" (field_expression "ignore_regexp.fastmap" identifier . field_identifier) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0)" ( (comma_expression "rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)\n            , rVar13 < 0" (assignment_expression "rVar13 = rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)" identifier = (call_expression "rpl_re_search(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)" identifier (argument_list "(&ignore_regexp,(char *)pbVar3,\n                                    (Idx)(pcVar4 + (lVar6 - (long)pbVar3)),0,\n                                    (regoff_t)(pcVar4 + (lVar6 - (long)pbVar3)),(re_registers *)0x0)" ( (pointer_expression "&ignore_regexp" & identifier) , (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (call_expression "(Idx)(pcVar4 + (lVar6 - (long)pbVar3))" (parenthesized_expression "(Idx)" ( identifier )) (argument_list "(pcVar4 + (lVar6 - (long)pbVar3))" ( (binary_expression "pcVar4 + (lVar6 - (long)pbVar3)" identifier + (parenthesized_expression "(lVar6 - (long)pbVar3)" ( (binary_expression "lVar6 - (long)pbVar3" identifier - (cast_expression "(long)pbVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) ))) , number_literal , (call_expression "(regoff_t)(pcVar4 + (lVar6 - (long)pbVar3))" (parenthesized_expression "(regoff_t)" ( identifier )) (argument_list "(pcVar4 + (lVar6 - (long)pbVar3))" ( (binary_expression "pcVar4 + (lVar6 - (long)pbVar3)" identifier + (parenthesized_expression "(lVar6 - (long)pbVar3)" ( (binary_expression "lVar6 - (long)pbVar3" identifier - (cast_expression "(long)pbVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) ))) , (cast_expression "(re_registers *)0x0" ( (type_descriptor "re_registers *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) )))) , (binary_expression "rVar13 < 0" identifier < number_literal)) ))) )) ))) )) (compound_statement "{\n          bVar14 = 0;\n          break;\n        }" { (expression_statement "bVar14 = 0;" (assignment_expression "bVar14 = 0" identifier = number_literal) ;) (break_statement "break;" break ;) })) (expression_statement "lVar15 = lVar15 + 1;" (assignment_expression "lVar15 = lVar15 + 1" identifier = (binary_expression "lVar15 + 1" identifier + number_literal)) ;) (expression_statement "bVar14 = bVar9;" (assignment_expression "bVar14 = bVar9" identifier = identifier) ;) }) while (parenthesized_expression "(lVar15 <= lVar1)" ( (binary_expression "lVar15 <= lVar1" identifier <= identifier) )) ;) })) (labeled_statement "LAB_0010e492:\n    local_68 = local_68->link;" statement_identifier : (expression_statement "local_68 = local_68->link;" (assignment_expression "local_68 = local_68->link" identifier = (field_expression "local_68->link" identifier -> field_identifier)) ;)) (if_statement "if (local_68 == (change *)0x0) {\n      *last0 = lVar2;\n      *last1 = lVar1;\n      cVar10 = UNCHANGED;\n      if (bVar14 == 0) {\n        cVar10 = (uint)(local_60 != 0) | (uint)(local_58 != 0) * 2;\n      }\n      return cVar10;\n    }" if (parenthesized_expression "(local_68 == (change *)0x0)" ( (binary_expression "local_68 == (change *)0x0" identifier == (cast_expression "(change *)0x0" ( (type_descriptor "change *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *last0 = lVar2;\n      *last1 = lVar1;\n      cVar10 = UNCHANGED;\n      if (bVar14 == 0) {\n        cVar10 = (uint)(local_60 != 0) | (uint)(local_58 != 0) * 2;\n      }\n      return cVar10;\n    }" { (expression_statement "*last0 = lVar2;" (assignment_expression "*last0 = lVar2" (pointer_expression "*last0" * identifier) = identifier) ;) (expression_statement "*last1 = lVar1;" (assignment_expression "*last1 = lVar1" (pointer_expression "*last1" * identifier) = identifier) ;) (expression_statement "cVar10 = UNCHANGED;" (assignment_expression "cVar10 = UNCHANGED" identifier = identifier) ;) (if_statement "if (bVar14 == 0) {\n        cVar10 = (uint)(local_60 != 0) | (uint)(local_58 != 0) * 2;\n      }" if (parenthesized_expression "(bVar14 == 0)" ( (binary_expression "bVar14 == 0" identifier == number_literal) )) (compound_statement "{\n        cVar10 = (uint)(local_60 != 0) | (uint)(local_58 != 0) * 2;\n      }" { (expression_statement "cVar10 = (uint)(local_60 != 0) | (uint)(local_58 != 0) * 2;" (assignment_expression "cVar10 = (uint)(local_60 != 0) | (uint)(local_58 != 0) * 2" identifier = (binary_expression "(uint)(local_60 != 0) | (uint)(local_58 != 0) * 2" (call_expression "(uint)(local_60 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_60 != 0)" ( (binary_expression "local_60 != 0" identifier != number_literal) ))) | (binary_expression "(uint)(local_58 != 0) * 2" (call_expression "(uint)(local_58 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_58 != 0)" ( (binary_expression "local_58 != 0" identifier != number_literal) ))) * number_literal))) ;) })) (return_statement "return cVar10;" return identifier ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit "byte FUN_0010e394(long *param_1,long *param_2,long *param_3,long *param_4,long *param_5)\n\n{\n  long lVar1;\n  long lVar2;\n  byte *pbVar3;\n  bool bVar4;\n  long lVar5;\n  long lVar6;\n  byte bVar7;\n  ushort **ppuVar8;\n  byte *pbVar9;\n  long lVar10;\n  byte bVar11;\n  long lVar12;\n  long *local_68;\n  long local_60;\n  long local_58;\n  int local_50;\n  byte local_4b;\n  \n  lVar6 = DAT_00134cc8;\n  lVar5 = DAT_00134b98;\n  if (DAT_00134ac1 == 0) {\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }\n  else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }\n  local_4b = 0;\n  bVar4 = false;\nLAB_0010e635:\n  *param_2 = param_1[3];\n  *param_4 = param_1[4];\n  local_58 = 0;\n  local_60 = 0;\n  local_68 = param_1;\n  do {\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  } while( true );\n}\n\n" (function_definition "byte FUN_0010e394(long *param_1,long *param_2,long *param_3,long *param_4,long *param_5)\n\n{\n  long lVar1;\n  long lVar2;\n  byte *pbVar3;\n  bool bVar4;\n  long lVar5;\n  long lVar6;\n  byte bVar7;\n  ushort **ppuVar8;\n  byte *pbVar9;\n  long lVar10;\n  byte bVar11;\n  long lVar12;\n  long *local_68;\n  long local_60;\n  long local_58;\n  int local_50;\n  byte local_4b;\n  \n  lVar6 = DAT_00134cc8;\n  lVar5 = DAT_00134b98;\n  if (DAT_00134ac1 == 0) {\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }\n  else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }\n  local_4b = 0;\n  bVar4 = false;\nLAB_0010e635:\n  *param_2 = param_1[3];\n  *param_4 = param_1[4];\n  local_58 = 0;\n  local_60 = 0;\n  local_68 = param_1;\n  do {\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  } while( true );\n}" type_identifier (function_declarator "FUN_0010e394(long *param_1,long *param_2,long *param_3,long *param_4,long *param_5)" identifier (parameter_list "(long *param_1,long *param_2,long *param_3,long *param_4,long *param_5)" ( (parameter_declaration "long *param_1" (sized_type_specifier "long" long) (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "long *param_2" (sized_type_specifier "long" long) (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "long *param_3" (sized_type_specifier "long" long) (pointer_declarator "*param_3" * identifier)) , (parameter_declaration "long *param_4" (sized_type_specifier "long" long) (pointer_declarator "*param_4" * identifier)) , (parameter_declaration "long *param_5" (sized_type_specifier "long" long) (pointer_declarator "*param_5" * identifier)) ))) (compound_statement "{\n  long lVar1;\n  long lVar2;\n  byte *pbVar3;\n  bool bVar4;\n  long lVar5;\n  long lVar6;\n  byte bVar7;\n  ushort **ppuVar8;\n  byte *pbVar9;\n  long lVar10;\n  byte bVar11;\n  long lVar12;\n  long *local_68;\n  long local_60;\n  long local_58;\n  int local_50;\n  byte local_4b;\n  \n  lVar6 = DAT_00134cc8;\n  lVar5 = DAT_00134b98;\n  if (DAT_00134ac1 == 0) {\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }\n  else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }\n  local_4b = 0;\n  bVar4 = false;\nLAB_0010e635:\n  *param_2 = param_1[3];\n  *param_4 = param_1[4];\n  local_58 = 0;\n  local_60 = 0;\n  local_68 = param_1;\n  do {\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  } while( true );\n}" { (declaration "long lVar1;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "byte *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (declaration "bool bVar4;" primitive_type identifier ;) (declaration "long lVar5;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar6;" (sized_type_specifier "long" long) identifier ;) (declaration "byte bVar7;" type_identifier identifier ;) (declaration "ushort **ppuVar8;" type_identifier (pointer_declarator "**ppuVar8" * (pointer_declarator "*ppuVar8" * identifier)) ;) (declaration "byte *pbVar9;" type_identifier (pointer_declarator "*pbVar9" * identifier) ;) (declaration "long lVar10;" (sized_type_specifier "long" long) identifier ;) (declaration "byte bVar11;" type_identifier identifier ;) (declaration "long lVar12;" (sized_type_specifier "long" long) identifier ;) (declaration "long *local_68;" (sized_type_specifier "long" long) (pointer_declarator "*local_68" * identifier) ;) (declaration "long local_60;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_58;" (sized_type_specifier "long" long) identifier ;) (declaration "int local_50;" primitive_type identifier ;) (declaration "byte local_4b;" type_identifier identifier ;) (expression_statement "lVar6 = DAT_00134cc8;" (assignment_expression "lVar6 = DAT_00134cc8" identifier = identifier) ;) (expression_statement "lVar5 = DAT_00134b98;" (assignment_expression "lVar5 = DAT_00134b98" identifier = identifier) ;) (if_statement "if (DAT_00134ac1 == 0) {\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }\n  else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }" if (parenthesized_expression "(DAT_00134ac1 == 0)" ( (binary_expression "DAT_00134ac1 == 0" identifier == number_literal) )) (compound_statement "{\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }" { (expression_statement "local_50 = -1;" (assignment_expression "local_50 = -1" identifier = number_literal) ;) (expression_statement "bVar11 = DAT_00134aa0 != 0;" (assignment_expression "bVar11 = DAT_00134aa0 != 0" identifier = (binary_expression "DAT_00134aa0 != 0" identifier != number_literal)) ;) }) (else_clause "else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }" else (compound_statement "{\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }" { (expression_statement "bVar11 = DAT_00134ac1;" (assignment_expression "bVar11 = DAT_00134ac1" identifier = identifier) ;) (if_statement "if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }" if (parenthesized_expression "(1 < DAT_001349a8)" ( (binary_expression "1 < DAT_001349a8" number_literal < identifier) )) (compound_statement "{\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }" { (expression_statement "bVar4 = 3 < DAT_001349a8;" (assignment_expression "bVar4 = 3 < DAT_001349a8" identifier = (binary_expression "3 < DAT_001349a8" number_literal < identifier)) ;) (expression_statement "local_4b = DAT_00134ac1;" (assignment_expression "local_4b = DAT_00134ac1" identifier = identifier) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0010e635;" goto statement_identifier ;) })) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) }))) (expression_statement "local_4b = 0;" (assignment_expression "local_4b = 0" identifier = number_literal) ;) (expression_statement "bVar4 = false;" (assignment_expression "bVar4 = false" identifier = false) ;) (labeled_statement "LAB_0010e635:\n  *param_2 = param_1[3];" statement_identifier : (expression_statement "*param_2 = param_1[3];" (assignment_expression "*param_2 = param_1[3]" (pointer_expression "*param_2" * identifier) = (subscript_expression "param_1[3]" identifier [ number_literal ])) ;)) (expression_statement "*param_4 = param_1[4];" (assignment_expression "*param_4 = param_1[4]" (pointer_expression "*param_4" * identifier) = (subscript_expression "param_1[4]" identifier [ number_literal ])) ;) (expression_statement "local_58 = 0;" (assignment_expression "local_58 = 0" identifier = number_literal) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) (expression_statement "local_68 = param_1;" (assignment_expression "local_68 = param_1" identifier = identifier) ;) (do_statement "do {\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  } while( true );" do (compound_statement "{\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  }" { (expression_statement "lVar12 = local_68[3];" (assignment_expression "lVar12 = local_68[3]" identifier = (subscript_expression "local_68[3]" identifier [ number_literal ])) ;) (expression_statement "lVar2 = local_68[2] + -1 + lVar12;" (assignment_expression "lVar2 = local_68[2] + -1 + lVar12" identifier = (binary_expression "local_68[2] + -1 + lVar12" (binary_expression "local_68[2] + -1" (subscript_expression "local_68[2]" identifier [ number_literal ]) + number_literal) + identifier)) ;) (expression_statement "lVar1 = local_68[1] + local_68[4] + -1;" (assignment_expression "lVar1 = local_68[1] + local_68[4] + -1" identifier = (binary_expression "local_68[1] + local_68[4] + -1" (binary_expression "local_68[1] + local_68[4]" (subscript_expression "local_68[1]" identifier [ number_literal ]) + (subscript_expression "local_68[4]" identifier [ number_literal ])) + number_literal)) ;) (expression_statement "local_60 = local_60 + local_68[2];" (assignment_expression "local_60 = local_60 + local_68[2]" identifier = (binary_expression "local_60 + local_68[2]" identifier + (subscript_expression "local_68[2]" identifier [ number_literal ]))) ;) (expression_statement "local_58 = local_58 + local_68[1];" (assignment_expression "local_58 = local_58 + local_68[1]" identifier = (binary_expression "local_58 + local_68[1]" identifier + (subscript_expression "local_68[1]" identifier [ number_literal ]))) ;) (expression_statement "bVar7 = lVar12 <= lVar2 & bVar11;" (assignment_expression "bVar7 = lVar12 <= lVar2 & bVar11" identifier = (binary_expression "lVar12 <= lVar2 & bVar11" (binary_expression "lVar12 <= lVar2" identifier <= identifier) & identifier)) ;) (if_statement "if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }" if (parenthesized_expression "(bVar7 != 0)" ( (binary_expression "bVar7 != 0" identifier != number_literal) )) (compound_statement "{\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }" { (do_statement "do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);" do (compound_statement "{\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      }" { (expression_statement "pbVar3 = *(byte **)(lVar5 + lVar12 * 8);" (assignment_expression "pbVar3 = *(byte **)(lVar5 + lVar12 * 8)" identifier = (pointer_expression "*(byte **)(lVar5 + lVar12 * 8)" * (cast_expression "(byte **)(lVar5 + lVar12 * 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar5 + lVar12 * 8)" ( (binary_expression "lVar5 + lVar12 * 8" identifier + (binary_expression "lVar12 * 8" identifier * number_literal)) ))))) ;) (expression_statement "lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);" (assignment_expression "lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8)" identifier = (pointer_expression "*(long *)(lVar5 + 8 + lVar12 * 8)" * (cast_expression "(long *)(lVar5 + 8 + lVar12 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar5 + 8 + lVar12 * 8)" ( (binary_expression "lVar5 + 8 + lVar12 * 8" (binary_expression "lVar5 + 8" identifier + number_literal) + (binary_expression "lVar12 * 8" identifier * number_literal)) ))))) ;) (expression_statement "lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');" (assignment_expression "lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n')" identifier = (binary_expression "lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n')" (binary_expression "lVar10 + -1" identifier + number_literal) + (call_expression "(ulong)(*(char *)(lVar10 + -1) != '\n')" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(*(char *)(lVar10 + -1) != '\n')" ( (binary_expression "*(char *)(lVar10 + -1) != '\n'" (pointer_expression "*(char *)(lVar10 + -1)" * (cast_expression "(char *)(lVar10 + -1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar10 + -1)" ( (binary_expression "lVar10 + -1" identifier + number_literal) )))) != (char_literal "'\n'" ' escape_sequence ')) ))))) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (if_statement "if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }" if (parenthesized_expression "((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10))" ( (binary_expression "(local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)" (parenthesized_expression "(local_4b != 0)" ( (binary_expression "local_4b != 0" identifier != number_literal) )) && (parenthesized_expression "(bVar11 = *pbVar3, bVar11 != 10)" ( (comma_expression "bVar11 = *pbVar3, bVar11 != 10" (assignment_expression "bVar11 = *pbVar3" identifier = (pointer_expression "*pbVar3" * identifier)) , (binary_expression "bVar11 != 10" identifier != number_literal)) ))) )) (compound_statement "{\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }" { (expression_statement "ppuVar8 = __ctype_b_loc();" (assignment_expression "ppuVar8 = __ctype_b_loc()" identifier = (call_expression "__ctype_b_loc()" identifier (argument_list "()" ( )))) ;) (do_statement "do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);" do (compound_statement "{\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          }" { (if_statement "if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }" if (parenthesized_expression "((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0)" ( (binary_expression "(*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0" (parenthesized_expression "(*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20)" ( (binary_expression "*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20" (pointer_expression "*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" * (cast_expression "(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" ( (binary_expression "(long)*ppuVar8 + (ulong)bVar11 * 2 + 1" (binary_expression "(long)*ppuVar8 + (ulong)bVar11 * 2" (cast_expression "(long)*ppuVar8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*ppuVar8" * identifier)) + (binary_expression "(ulong)bVar11 * 2" (cast_expression "(ulong)bVar11" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }" { (if_statement "if (!bVar4) {\n                pbVar9 = pbVar3;\n              }" if (parenthesized_expression "(!bVar4)" ( (unary_expression "!bVar4" ! identifier) )) (compound_statement "{\n                pbVar9 = pbVar3;\n              }" { (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) })) (break_statement "break;" break ;) })) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "bVar11 = *pbVar9;" (assignment_expression "bVar11 = *pbVar9" identifier = (pointer_expression "*pbVar9" * identifier)) ;) }) while (parenthesized_expression "(bVar11 != 10)" ( (binary_expression "bVar11 != 10" identifier != number_literal) )) ;) })) (if_statement "if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }" if (parenthesized_expression "((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0))))" ( (binary_expression "(lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))" (parenthesized_expression "(lVar10 - (long)pbVar9 != (long)local_50)" ( (binary_expression "lVar10 - (long)pbVar9 != (long)local_50" (binary_expression "lVar10 - (long)pbVar9" identifier - (cast_expression "(long)pbVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) != (cast_expression "(long)local_50" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )) && (parenthesized_expression "((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))" ( (parenthesized_expression "(DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0))" ( (binary_expression "DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)" (binary_expression "DAT_00134aa0 == 0" identifier == number_literal) || (parenthesized_expression "(lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)" ( (comma_expression "lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0" (assignment_expression "lVar10 = lVar10 - (long)pbVar3" identifier = (binary_expression "lVar10 - (long)pbVar3" identifier - (cast_expression "(long)pbVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (comma_expression "lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0" (assignment_expression "lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" identifier = (call_expression "FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" identifier (argument_list "(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" ( (pointer_expression "&DAT_00134a80" & identifier) , identifier , identifier , number_literal , identifier , number_literal )))) , (binary_expression "lVar10 < 0" identifier < number_literal))) ))) )) ))) )) (compound_statement "{\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }" { (expression_statement "bVar11 = 0;" (assignment_expression "bVar11 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0010e492;" goto statement_identifier ;) })) (expression_statement "lVar12 = lVar12 + 1;" (assignment_expression "lVar12 = lVar12 + 1" identifier = (binary_expression "lVar12 + 1" identifier + number_literal)) ;) (expression_statement "bVar11 = bVar7;" (assignment_expression "bVar11 = bVar7" identifier = identifier) ;) }) while (parenthesized_expression "(lVar12 <= lVar2)" ( (binary_expression "lVar12 <= lVar2" identifier <= identifier) )) ;) })) (expression_statement "lVar12 = local_68[4];" (assignment_expression "lVar12 = local_68[4]" identifier = (subscript_expression "local_68[4]" identifier [ number_literal ])) ;) (expression_statement "bVar7 = lVar12 <= lVar1 & bVar11;" (assignment_expression "bVar7 = lVar12 <= lVar1 & bVar11" identifier = (binary_expression "lVar12 <= lVar1 & bVar11" (binary_expression "lVar12 <= lVar1" identifier <= identifier) & identifier)) ;) (if_statement "if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }" if (parenthesized_expression "(bVar7 != 0)" ( (binary_expression "bVar7 != 0" identifier != number_literal) )) (compound_statement "{\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }" { (do_statement "do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);" do (compound_statement "{\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      }" { (expression_statement "pbVar3 = *(byte **)(lVar6 + lVar12 * 8);" (assignment_expression "pbVar3 = *(byte **)(lVar6 + lVar12 * 8)" identifier = (pointer_expression "*(byte **)(lVar6 + lVar12 * 8)" * (cast_expression "(byte **)(lVar6 + lVar12 * 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar6 + lVar12 * 8)" ( (binary_expression "lVar6 + lVar12 * 8" identifier + (binary_expression "lVar12 * 8" identifier * number_literal)) ))))) ;) (expression_statement "lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);" (assignment_expression "lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8)" identifier = (pointer_expression "*(long *)(lVar6 + 8 + lVar12 * 8)" * (cast_expression "(long *)(lVar6 + 8 + lVar12 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar6 + 8 + lVar12 * 8)" ( (binary_expression "lVar6 + 8 + lVar12 * 8" (binary_expression "lVar6 + 8" identifier + number_literal) + (binary_expression "lVar12 * 8" identifier * number_literal)) ))))) ;) (expression_statement "lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');" (assignment_expression "lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n')" identifier = (binary_expression "lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n')" (binary_expression "lVar10 + -1" identifier + number_literal) + (call_expression "(ulong)(*(char *)(lVar10 + -1) != '\n')" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(*(char *)(lVar10 + -1) != '\n')" ( (binary_expression "*(char *)(lVar10 + -1) != '\n'" (pointer_expression "*(char *)(lVar10 + -1)" * (cast_expression "(char *)(lVar10 + -1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar10 + -1)" ( (binary_expression "lVar10 + -1" identifier + number_literal) )))) != (char_literal "'\n'" ' escape_sequence ')) ))))) ;) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) (if_statement "if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }" if (parenthesized_expression "((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10))" ( (binary_expression "(local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)" (parenthesized_expression "(local_4b != 0)" ( (binary_expression "local_4b != 0" identifier != number_literal) )) && (parenthesized_expression "(bVar11 = *pbVar3, bVar11 != 10)" ( (comma_expression "bVar11 = *pbVar3, bVar11 != 10" (assignment_expression "bVar11 = *pbVar3" identifier = (pointer_expression "*pbVar3" * identifier)) , (binary_expression "bVar11 != 10" identifier != number_literal)) ))) )) (compound_statement "{\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }" { (expression_statement "ppuVar8 = __ctype_b_loc();" (assignment_expression "ppuVar8 = __ctype_b_loc()" identifier = (call_expression "__ctype_b_loc()" identifier (argument_list "()" ( )))) ;) (do_statement "do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);" do (compound_statement "{\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          }" { (if_statement "if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }" if (parenthesized_expression "((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0)" ( (binary_expression "(*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0" (parenthesized_expression "(*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20)" ( (binary_expression "*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20" (pointer_expression "*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" * (cast_expression "(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" ( (binary_expression "(long)*ppuVar8 + (ulong)bVar11 * 2 + 1" (binary_expression "(long)*ppuVar8 + (ulong)bVar11 * 2" (cast_expression "(long)*ppuVar8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*ppuVar8" * identifier)) + (binary_expression "(ulong)bVar11 * 2" (cast_expression "(ulong)bVar11" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }" { (if_statement "if (!bVar4) {\n                pbVar9 = pbVar3;\n              }" if (parenthesized_expression "(!bVar4)" ( (unary_expression "!bVar4" ! identifier) )) (compound_statement "{\n                pbVar9 = pbVar3;\n              }" { (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" identifier = identifier) ;) })) (break_statement "break;" break ;) })) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "bVar11 = *pbVar9;" (assignment_expression "bVar11 = *pbVar9" identifier = (pointer_expression "*pbVar9" * identifier)) ;) }) while (parenthesized_expression "(bVar11 != 10)" ( (binary_expression "bVar11 != 10" identifier != number_literal) )) ;) })) (if_statement "if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }" if (parenthesized_expression "((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0))))" ( (binary_expression "(lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))" (parenthesized_expression "(lVar10 - (long)pbVar9 != (long)local_50)" ( (binary_expression "lVar10 - (long)pbVar9 != (long)local_50" (binary_expression "lVar10 - (long)pbVar9" identifier - (cast_expression "(long)pbVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) != (cast_expression "(long)local_50" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )) && (parenthesized_expression "((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))" ( (parenthesized_expression "(DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0))" ( (binary_expression "DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)" (binary_expression "DAT_00134aa0 == 0" identifier == number_literal) || (parenthesized_expression "(lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)" ( (comma_expression "lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0" (assignment_expression "lVar10 = lVar10 - (long)pbVar3" identifier = (binary_expression "lVar10 - (long)pbVar3" identifier - (cast_expression "(long)pbVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (comma_expression "lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0" (assignment_expression "lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" identifier = (call_expression "FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" identifier (argument_list "(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" ( (pointer_expression "&DAT_00134a80" & identifier) , identifier , identifier , number_literal , identifier , number_literal )))) , (binary_expression "lVar10 < 0" identifier < number_literal))) ))) )) ))) )) (compound_statement "{\n          bVar11 = 0;\n          break;\n        }" { (expression_statement "bVar11 = 0;" (assignment_expression "bVar11 = 0" identifier = number_literal) ;) (break_statement "break;" break ;) })) (expression_statement "lVar12 = lVar12 + 1;" (assignment_expression "lVar12 = lVar12 + 1" identifier = (binary_expression "lVar12 + 1" identifier + number_literal)) ;) (expression_statement "bVar11 = bVar7;" (assignment_expression "bVar11 = bVar7" identifier = identifier) ;) }) while (parenthesized_expression "(lVar12 <= lVar1)" ( (binary_expression "lVar12 <= lVar1" identifier <= identifier) )) ;) })) (labeled_statement "LAB_0010e492:\n    local_68 = (long *)*local_68;" statement_identifier : (expression_statement "local_68 = (long *)*local_68;" (assignment_expression "local_68 = (long *)*local_68" identifier = (cast_expression "(long *)*local_68" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_68" * identifier))) ;)) (if_statement "if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }" if (parenthesized_expression "(local_68 == (long *)0x0)" ( (binary_expression "local_68 == (long *)0x0" identifier == (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }" { (expression_statement "*param_3 = lVar2;" (assignment_expression "*param_3 = lVar2" (pointer_expression "*param_3" * identifier) = identifier) ;) (expression_statement "*param_5 = lVar1;" (assignment_expression "*param_5 = lVar1" (pointer_expression "*param_5" * identifier) = identifier) ;) (expression_statement "bVar7 = 0;" (assignment_expression "bVar7 = 0" identifier = number_literal) ;) (if_statement "if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }" if (parenthesized_expression "(bVar11 == 0)" ( (binary_expression "bVar11 == 0" identifier == number_literal) )) (compound_statement "{\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }" { (expression_statement "bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';" (assignment_expression "bVar7 = local_60 != 0 | (local_58 != 0) * '\x02'" identifier = (binary_expression "local_60 != 0 | (local_58 != 0) * '\x02'" (binary_expression "local_60 != 0" identifier != number_literal) | (binary_expression "(local_58 != 0) * '\x02'" (parenthesized_expression "(local_58 != 0)" ( (binary_expression "local_58 != 0" identifier != number_literal) )) * (char_literal "'\x02'" ' escape_sequence ')))) ;) })) (return_statement "return bVar7;" return identifier ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration (sized_type_specifier long) (pointer_declarator * IDENT)) , (parameter_declaration (sized_type_specifier long) (pointer_declarator * IDENT)) , (parameter_declaration (sized_type_specifier long) (pointer_declarator * IDENT)) , (parameter_declaration (sized_type_specifier long) (pointer_declarator * IDENT)) , (parameter_declaration (sized_type_specifier long) (pointer_declarator * IDENT)) ))) (compound_statement { (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT != LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression LIT < IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * IDENT) = (subscript_expression IDENT [ LIT ])) ;)) (expression_statement (assignment_expression (pointer_expression * IDENT) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) + (subscript_expression IDENT [ LIT ])) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT <= IDENT) & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + LIT) + (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * IDENT)) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression * IDENT)) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (break_statement break ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) != (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT))) , (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT , LIT , IDENT , LIT )))) , (binary_expression IDENT < LIT))) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT <= IDENT) & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + LIT) + (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * IDENT)) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression * IDENT)) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (break_statement break ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) != (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT))) , (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT , LIT , IDENT , LIT )))) , (binary_expression IDENT < LIT))) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (break_statement break ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT != LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) * (char_literal ' escape_sequence ')))) ;) })) (return_statement return IDENT ;) })) }) while (parenthesized_expression ( BOOL )) ;) })))
(function_definition "byte FUN_0010e394(long *param_1,long *param_2,long *param_3,long *param_4,long *param_5)\n\n{\n  long lVar1;\n  long lVar2;\n  byte *pbVar3;\n  bool bVar4;\n  long lVar5;\n  long lVar6;\n  byte bVar7;\n  ushort **ppuVar8;\n  byte *pbVar9;\n  long lVar10;\n  byte bVar11;\n  long lVar12;\n  long *local_68;\n  long local_60;\n  long local_58;\n  int local_50;\n  byte local_4b;\n  \n  lVar6 = DAT_00134cc8;\n  lVar5 = DAT_00134b98;\n  if (DAT_00134ac1 == 0) {\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }\n  else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }\n  local_4b = 0;\n  bVar4 = false;\nLAB_0010e635:\n  *param_2 = param_1[3];\n  *param_4 = param_1[4];\n  local_58 = 0;\n  local_60 = 0;\n  local_68 = param_1;\n  do {\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  } while( true );\n}" (type_identifier "byte") (function_declarator "FUN_0010e394(long *param_1,long *param_2,long *param_3,long *param_4,long *param_5)" (identifier "FUN_0010e394") (parameter_list "(long *param_1,long *param_2,long *param_3,long *param_4,long *param_5)" (( "(") (parameter_declaration "long *param_1" (sized_type_specifier "long" (long "long")) (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "long *param_2" (sized_type_specifier "long" (long "long")) (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "long *param_3" (sized_type_specifier "long" (long "long")) (pointer_declarator "*param_3" (* "*") (identifier "param_3"))) (, ",") (parameter_declaration "long *param_4" (sized_type_specifier "long" (long "long")) (pointer_declarator "*param_4" (* "*") (identifier "param_4"))) (, ",") (parameter_declaration "long *param_5" (sized_type_specifier "long" (long "long")) (pointer_declarator "*param_5" (* "*") (identifier "param_5"))) () ")"))) (compound_statement "{\n  long lVar1;\n  long lVar2;\n  byte *pbVar3;\n  bool bVar4;\n  long lVar5;\n  long lVar6;\n  byte bVar7;\n  ushort **ppuVar8;\n  byte *pbVar9;\n  long lVar10;\n  byte bVar11;\n  long lVar12;\n  long *local_68;\n  long local_60;\n  long local_58;\n  int local_50;\n  byte local_4b;\n  \n  lVar6 = DAT_00134cc8;\n  lVar5 = DAT_00134b98;\n  if (DAT_00134ac1 == 0) {\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }\n  else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }\n  local_4b = 0;\n  bVar4 = false;\nLAB_0010e635:\n  *param_2 = param_1[3];\n  *param_4 = param_1[4];\n  local_58 = 0;\n  local_60 = 0;\n  local_68 = param_1;\n  do {\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  } while( true );\n}" ({ "{") (declaration "long lVar1;" (sized_type_specifier "long" (long "long")) (identifier "lVar1") (; ";")) (declaration "long lVar2;" (sized_type_specifier "long" (long "long")) (identifier "lVar2") (; ";")) (declaration "byte *pbVar3;" (type_identifier "byte") (pointer_declarator "*pbVar3" (* "*") (identifier "pbVar3")) (; ";")) (declaration "bool bVar4;" (primitive_type "bool") (identifier "bVar4") (; ";")) (declaration "long lVar5;" (sized_type_specifier "long" (long "long")) (identifier "lVar5") (; ";")) (declaration "long lVar6;" (sized_type_specifier "long" (long "long")) (identifier "lVar6") (; ";")) (declaration "byte bVar7;" (type_identifier "byte") (identifier "bVar7") (; ";")) (declaration "ushort **ppuVar8;" (type_identifier "ushort") (pointer_declarator "**ppuVar8" (* "*") (pointer_declarator "*ppuVar8" (* "*") (identifier "ppuVar8"))) (; ";")) (declaration "byte *pbVar9;" (type_identifier "byte") (pointer_declarator "*pbVar9" (* "*") (identifier "pbVar9")) (; ";")) (declaration "long lVar10;" (sized_type_specifier "long" (long "long")) (identifier "lVar10") (; ";")) (declaration "byte bVar11;" (type_identifier "byte") (identifier "bVar11") (; ";")) (declaration "long lVar12;" (sized_type_specifier "long" (long "long")) (identifier "lVar12") (; ";")) (declaration "long *local_68;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*local_68" (* "*") (identifier "local_68")) (; ";")) (declaration "long local_60;" (sized_type_specifier "long" (long "long")) (identifier "local_60") (; ";")) (declaration "long local_58;" (sized_type_specifier "long" (long "long")) (identifier "local_58") (; ";")) (declaration "int local_50;" (primitive_type "int") (identifier "local_50") (; ";")) (declaration "byte local_4b;" (type_identifier "byte") (identifier "local_4b") (; ";")) (expression_statement "lVar6 = DAT_00134cc8;" (assignment_expression "lVar6 = DAT_00134cc8" (identifier "lVar6") (= "=") (identifier "DAT_00134cc8")) (; ";")) (expression_statement "lVar5 = DAT_00134b98;" (assignment_expression "lVar5 = DAT_00134b98" (identifier "lVar5") (= "=") (identifier "DAT_00134b98")) (; ";")) (if_statement "if (DAT_00134ac1 == 0) {\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }\n  else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }" (if "if") (parenthesized_expression "(DAT_00134ac1 == 0)" (( "(") (binary_expression "DAT_00134ac1 == 0" (identifier "DAT_00134ac1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    local_50 = -1;\n    bVar11 = DAT_00134aa0 != 0;\n  }" ({ "{") (expression_statement "local_50 = -1;" (assignment_expression "local_50 = -1" (identifier "local_50") (= "=") (number_literal "-1")) (; ";")) (expression_statement "bVar11 = DAT_00134aa0 != 0;" (assignment_expression "bVar11 = DAT_00134aa0 != 0" (identifier "bVar11") (= "=") (binary_expression "DAT_00134aa0 != 0" (identifier "DAT_00134aa0") (!= "!=") (number_literal "0"))) (; ";")) (} "}")) (else_clause "else {\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }" (else "else") (compound_statement "{\n    bVar11 = DAT_00134ac1;\n    if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }\n    local_50 = 0;\n  }" ({ "{") (expression_statement "bVar11 = DAT_00134ac1;" (assignment_expression "bVar11 = DAT_00134ac1" (identifier "bVar11") (= "=") (identifier "DAT_00134ac1")) (; ";")) (if_statement "if (1 < DAT_001349a8) {\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }" (if "if") (parenthesized_expression "(1 < DAT_001349a8)" (( "(") (binary_expression "1 < DAT_001349a8" (number_literal "1") (< "<") (identifier "DAT_001349a8")) () ")")) (compound_statement "{\n      bVar4 = 3 < DAT_001349a8;\n      local_4b = DAT_00134ac1;\n      local_50 = 0;\n      goto LAB_0010e635;\n    }" ({ "{") (expression_statement "bVar4 = 3 < DAT_001349a8;" (assignment_expression "bVar4 = 3 < DAT_001349a8" (identifier "bVar4") (= "=") (binary_expression "3 < DAT_001349a8" (number_literal "3") (< "<") (identifier "DAT_001349a8"))) (; ";")) (expression_statement "local_4b = DAT_00134ac1;" (assignment_expression "local_4b = DAT_00134ac1" (identifier "local_4b") (= "=") (identifier "DAT_00134ac1")) (; ";")) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" (identifier "local_50") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_0010e635;" (goto "goto") (statement_identifier "LAB_0010e635") (; ";")) (} "}"))) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" (identifier "local_50") (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "local_4b = 0;" (assignment_expression "local_4b = 0" (identifier "local_4b") (= "=") (number_literal "0")) (; ";")) (expression_statement "bVar4 = false;" (assignment_expression "bVar4 = false" (identifier "bVar4") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_0010e635:\n  *param_2 = param_1[3];" (statement_identifier "LAB_0010e635") (: ":") (expression_statement "*param_2 = param_1[3];" (assignment_expression "*param_2 = param_1[3]" (pointer_expression "*param_2" (* "*") (identifier "param_2")) (= "=") (subscript_expression "param_1[3]" (identifier "param_1") ([ "[") (number_literal "3") (] "]"))) (; ";"))) (expression_statement "*param_4 = param_1[4];" (assignment_expression "*param_4 = param_1[4]" (pointer_expression "*param_4" (* "*") (identifier "param_4")) (= "=") (subscript_expression "param_1[4]" (identifier "param_1") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "local_58 = 0;" (assignment_expression "local_58 = 0" (identifier "local_58") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" (identifier "local_60") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_68 = param_1;" (assignment_expression "local_68 = param_1" (identifier "local_68") (= "=") (identifier "param_1")) (; ";")) (do_statement "do {\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  } while( true );" (do "do") (compound_statement "{\n    lVar12 = local_68[3];\n    lVar2 = local_68[2] + -1 + lVar12;\n    lVar1 = local_68[1] + local_68[4] + -1;\n    local_60 = local_60 + local_68[2];\n    local_58 = local_58 + local_68[1];\n    bVar7 = lVar12 <= lVar2 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }\n    lVar12 = local_68[4];\n    bVar7 = lVar12 <= lVar1 & bVar11;\n    if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }\nLAB_0010e492:\n    local_68 = (long *)*local_68;\n    if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }\n  }" ({ "{") (expression_statement "lVar12 = local_68[3];" (assignment_expression "lVar12 = local_68[3]" (identifier "lVar12") (= "=") (subscript_expression "local_68[3]" (identifier "local_68") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "lVar2 = local_68[2] + -1 + lVar12;" (assignment_expression "lVar2 = local_68[2] + -1 + lVar12" (identifier "lVar2") (= "=") (binary_expression "local_68[2] + -1 + lVar12" (binary_expression "local_68[2] + -1" (subscript_expression "local_68[2]" (identifier "local_68") ([ "[") (number_literal "2") (] "]")) (+ "+") (number_literal "-1")) (+ "+") (identifier "lVar12"))) (; ";")) (expression_statement "lVar1 = local_68[1] + local_68[4] + -1;" (assignment_expression "lVar1 = local_68[1] + local_68[4] + -1" (identifier "lVar1") (= "=") (binary_expression "local_68[1] + local_68[4] + -1" (binary_expression "local_68[1] + local_68[4]" (subscript_expression "local_68[1]" (identifier "local_68") ([ "[") (number_literal "1") (] "]")) (+ "+") (subscript_expression "local_68[4]" (identifier "local_68") ([ "[") (number_literal "4") (] "]"))) (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "local_60 = local_60 + local_68[2];" (assignment_expression "local_60 = local_60 + local_68[2]" (identifier "local_60") (= "=") (binary_expression "local_60 + local_68[2]" (identifier "local_60") (+ "+") (subscript_expression "local_68[2]" (identifier "local_68") ([ "[") (number_literal "2") (] "]")))) (; ";")) (expression_statement "local_58 = local_58 + local_68[1];" (assignment_expression "local_58 = local_58 + local_68[1]" (identifier "local_58") (= "=") (binary_expression "local_58 + local_68[1]" (identifier "local_58") (+ "+") (subscript_expression "local_68[1]" (identifier "local_68") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "bVar7 = lVar12 <= lVar2 & bVar11;" (assignment_expression "bVar7 = lVar12 <= lVar2 & bVar11" (identifier "bVar7") (= "=") (binary_expression "lVar12 <= lVar2 & bVar11" (binary_expression "lVar12 <= lVar2" (identifier "lVar12") (<= "<=") (identifier "lVar2")) (& "&") (identifier "bVar11"))) (; ";")) (if_statement "if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }" (if "if") (parenthesized_expression "(bVar7 != 0)" (( "(") (binary_expression "bVar7 != 0" (identifier "bVar7") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);\n    }" ({ "{") (do_statement "do {\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar2);" (do "do") (compound_statement "{\n        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);\n        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      }" ({ "{") (expression_statement "pbVar3 = *(byte **)(lVar5 + lVar12 * 8);" (assignment_expression "pbVar3 = *(byte **)(lVar5 + lVar12 * 8)" (identifier "pbVar3") (= "=") (pointer_expression "*(byte **)(lVar5 + lVar12 * 8)" (* "*") (cast_expression "(byte **)(lVar5 + lVar12 * 8)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(lVar5 + lVar12 * 8)" (( "(") (binary_expression "lVar5 + lVar12 * 8" (identifier "lVar5") (+ "+") (binary_expression "lVar12 * 8" (identifier "lVar12") (* "*") (number_literal "8"))) () ")"))))) (; ";")) (expression_statement "lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);" (assignment_expression "lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8)" (identifier "lVar10") (= "=") (pointer_expression "*(long *)(lVar5 + 8 + lVar12 * 8)" (* "*") (cast_expression "(long *)(lVar5 + 8 + lVar12 * 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar5 + 8 + lVar12 * 8)" (( "(") (binary_expression "lVar5 + 8 + lVar12 * 8" (binary_expression "lVar5 + 8" (identifier "lVar5") (+ "+") (number_literal "8")) (+ "+") (binary_expression "lVar12 * 8" (identifier "lVar12") (* "*") (number_literal "8"))) () ")"))))) (; ";")) (expression_statement "lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');" (assignment_expression "lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n')" (identifier "lVar10") (= "=") (binary_expression "lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n')" (binary_expression "lVar10 + -1" (identifier "lVar10") (+ "+") (number_literal "-1")) (+ "+") (call_expression "(ulong)(*(char *)(lVar10 + -1) != '\n')" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(*(char *)(lVar10 + -1) != '\n')" (( "(") (binary_expression "*(char *)(lVar10 + -1) != '\n'" (pointer_expression "*(char *)(lVar10 + -1)" (* "*") (cast_expression "(char *)(lVar10 + -1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar10 + -1)" (( "(") (binary_expression "lVar10 + -1" (identifier "lVar10") (+ "+") (number_literal "-1")) () ")")))) (!= "!=") (char_literal "'\n'" (' "'") (escape_sequence "\n") (' "'"))) () ")"))))) (; ";")) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (if_statement "if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }" (if "if") (parenthesized_expression "((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10))" (( "(") (binary_expression "(local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)" (parenthesized_expression "(local_4b != 0)" (( "(") (binary_expression "local_4b != 0" (identifier "local_4b") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(bVar11 = *pbVar3, bVar11 != 10)" (( "(") (comma_expression "bVar11 = *pbVar3, bVar11 != 10" (assignment_expression "bVar11 = *pbVar3" (identifier "bVar11") (= "=") (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3"))) (, ",") (binary_expression "bVar11 != 10" (identifier "bVar11") (!= "!=") (number_literal "10"))) () ")"))) () ")")) (compound_statement "{\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }" ({ "{") (expression_statement "ppuVar8 = __ctype_b_loc();" (assignment_expression "ppuVar8 = __ctype_b_loc()" (identifier "ppuVar8") (= "=") (call_expression "__ctype_b_loc()" (identifier "__ctype_b_loc") (argument_list "()" (( "(") () ")")))) (; ";")) (do_statement "do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);" (do "do") (compound_statement "{\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          }" ({ "{") (if_statement "if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }" (if "if") (parenthesized_expression "((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0)" (( "(") (binary_expression "(*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0" (parenthesized_expression "(*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20)" (( "(") (binary_expression "*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20" (pointer_expression "*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" (* "*") (cast_expression "(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" (( "(") (binary_expression "(long)*ppuVar8 + (ulong)bVar11 * 2 + 1" (binary_expression "(long)*ppuVar8 + (ulong)bVar11 * 2" (cast_expression "(long)*ppuVar8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "*ppuVar8" (* "*") (identifier "ppuVar8"))) (+ "+") (binary_expression "(ulong)bVar11 * 2" (cast_expression "(ulong)bVar11" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar11")) (* "*") (number_literal "2"))) (+ "+") (number_literal "1")) () ")")))) (& "&") (number_literal "0x20")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }" ({ "{") (if_statement "if (!bVar4) {\n                pbVar9 = pbVar3;\n              }" (if "if") (parenthesized_expression "(!bVar4)" (( "(") (unary_expression "!bVar4" (! "!") (identifier "bVar4")) () ")")) (compound_statement "{\n                pbVar9 = pbVar3;\n              }" ({ "{") (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (} "}"))) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar11 = *pbVar9;" (assignment_expression "bVar11 = *pbVar9" (identifier "bVar11") (= "=") (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar11 != 10)" (( "(") (binary_expression "bVar11 != 10" (identifier "bVar11") (!= "!=") (number_literal "10")) () ")")) (; ";")) (} "}"))) (if_statement "if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }" (if "if") (parenthesized_expression "((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0))))" (( "(") (binary_expression "(lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))" (parenthesized_expression "(lVar10 - (long)pbVar9 != (long)local_50)" (( "(") (binary_expression "lVar10 - (long)pbVar9 != (long)local_50" (binary_expression "lVar10 - (long)pbVar9" (identifier "lVar10") (- "-") (cast_expression "(long)pbVar9" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "pbVar9"))) (!= "!=") (cast_expression "(long)local_50" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_50"))) () ")")) (&& "&&") (parenthesized_expression "((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))" (( "(") (parenthesized_expression "(DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0))" (( "(") (binary_expression "DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)" (binary_expression "DAT_00134aa0 == 0" (identifier "DAT_00134aa0") (== "==") (number_literal "0")) (|| "||") (parenthesized_expression "(lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)" (( "(") (comma_expression "lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0" (assignment_expression "lVar10 = lVar10 - (long)pbVar3" (identifier "lVar10") (= "=") (binary_expression "lVar10 - (long)pbVar3" (identifier "lVar10") (- "-") (cast_expression "(long)pbVar3" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "pbVar3")))) (, ",") (comma_expression "lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0" (assignment_expression "lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" (identifier "lVar10") (= "=") (call_expression "FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" (identifier "FUN_00122319") (argument_list "(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" (( "(") (pointer_expression "&DAT_00134a80" (& "&") (identifier "DAT_00134a80")) (, ",") (identifier "pbVar3") (, ",") (identifier "lVar10") (, ",") (number_literal "0") (, ",") (identifier "lVar10") (, ",") (number_literal "0") () ")")))) (, ",") (binary_expression "lVar10 < 0" (identifier "lVar10") (< "<") (number_literal "0")))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n          bVar11 = 0;\n          goto LAB_0010e492;\n        }" ({ "{") (expression_statement "bVar11 = 0;" (assignment_expression "bVar11 = 0" (identifier "bVar11") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_0010e492;" (goto "goto") (statement_identifier "LAB_0010e492") (; ";")) (} "}"))) (expression_statement "lVar12 = lVar12 + 1;" (assignment_expression "lVar12 = lVar12 + 1" (identifier "lVar12") (= "=") (binary_expression "lVar12 + 1" (identifier "lVar12") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar11 = bVar7;" (assignment_expression "bVar11 = bVar7" (identifier "bVar11") (= "=") (identifier "bVar7")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(lVar12 <= lVar2)" (( "(") (binary_expression "lVar12 <= lVar2" (identifier "lVar12") (<= "<=") (identifier "lVar2")) () ")")) (; ";")) (} "}"))) (expression_statement "lVar12 = local_68[4];" (assignment_expression "lVar12 = local_68[4]" (identifier "lVar12") (= "=") (subscript_expression "local_68[4]" (identifier "local_68") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "bVar7 = lVar12 <= lVar1 & bVar11;" (assignment_expression "bVar7 = lVar12 <= lVar1 & bVar11" (identifier "bVar7") (= "=") (binary_expression "lVar12 <= lVar1 & bVar11" (binary_expression "lVar12 <= lVar1" (identifier "lVar12") (<= "<=") (identifier "lVar1")) (& "&") (identifier "bVar11"))) (; ";")) (if_statement "if (bVar7 != 0) {\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }" (if "if") (parenthesized_expression "(bVar7 != 0)" (( "(") (binary_expression "bVar7 != 0" (identifier "bVar7") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);\n    }" ({ "{") (do_statement "do {\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      } while (lVar12 <= lVar1);" (do "do") (compound_statement "{\n        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);\n        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);\n        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');\n        pbVar9 = pbVar3;\n        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }\n        if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }\n        lVar12 = lVar12 + 1;\n        bVar11 = bVar7;\n      }" ({ "{") (expression_statement "pbVar3 = *(byte **)(lVar6 + lVar12 * 8);" (assignment_expression "pbVar3 = *(byte **)(lVar6 + lVar12 * 8)" (identifier "pbVar3") (= "=") (pointer_expression "*(byte **)(lVar6 + lVar12 * 8)" (* "*") (cast_expression "(byte **)(lVar6 + lVar12 * 8)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(lVar6 + lVar12 * 8)" (( "(") (binary_expression "lVar6 + lVar12 * 8" (identifier "lVar6") (+ "+") (binary_expression "lVar12 * 8" (identifier "lVar12") (* "*") (number_literal "8"))) () ")"))))) (; ";")) (expression_statement "lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);" (assignment_expression "lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8)" (identifier "lVar10") (= "=") (pointer_expression "*(long *)(lVar6 + 8 + lVar12 * 8)" (* "*") (cast_expression "(long *)(lVar6 + 8 + lVar12 * 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar6 + 8 + lVar12 * 8)" (( "(") (binary_expression "lVar6 + 8 + lVar12 * 8" (binary_expression "lVar6 + 8" (identifier "lVar6") (+ "+") (number_literal "8")) (+ "+") (binary_expression "lVar12 * 8" (identifier "lVar12") (* "*") (number_literal "8"))) () ")"))))) (; ";")) (expression_statement "lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');" (assignment_expression "lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n')" (identifier "lVar10") (= "=") (binary_expression "lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n')" (binary_expression "lVar10 + -1" (identifier "lVar10") (+ "+") (number_literal "-1")) (+ "+") (call_expression "(ulong)(*(char *)(lVar10 + -1) != '\n')" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(*(char *)(lVar10 + -1) != '\n')" (( "(") (binary_expression "*(char *)(lVar10 + -1) != '\n'" (pointer_expression "*(char *)(lVar10 + -1)" (* "*") (cast_expression "(char *)(lVar10 + -1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar10 + -1)" (( "(") (binary_expression "lVar10 + -1" (identifier "lVar10") (+ "+") (number_literal "-1")) () ")")))) (!= "!=") (char_literal "'\n'" (' "'") (escape_sequence "\n") (' "'"))) () ")"))))) (; ";")) (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (if_statement "if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }" (if "if") (parenthesized_expression "((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10))" (( "(") (binary_expression "(local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)" (parenthesized_expression "(local_4b != 0)" (( "(") (binary_expression "local_4b != 0" (identifier "local_4b") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(bVar11 = *pbVar3, bVar11 != 10)" (( "(") (comma_expression "bVar11 = *pbVar3, bVar11 != 10" (assignment_expression "bVar11 = *pbVar3" (identifier "bVar11") (= "=") (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3"))) (, ",") (binary_expression "bVar11 != 10" (identifier "bVar11") (!= "!=") (number_literal "10"))) () ")"))) () ")")) (compound_statement "{\n          ppuVar8 = __ctype_b_loc();\n          do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);\n        }" ({ "{") (expression_statement "ppuVar8 = __ctype_b_loc();" (assignment_expression "ppuVar8 = __ctype_b_loc()" (identifier "ppuVar8") (= "=") (call_expression "__ctype_b_loc()" (identifier "__ctype_b_loc") (argument_list "()" (( "(") () ")")))) (; ";")) (do_statement "do {\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          } while (bVar11 != 10);" (do "do") (compound_statement "{\n            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }\n            pbVar9 = pbVar9 + 1;\n            bVar11 = *pbVar9;\n          }" ({ "{") (if_statement "if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }" (if "if") (parenthesized_expression "((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0)" (( "(") (binary_expression "(*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0" (parenthesized_expression "(*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20)" (( "(") (binary_expression "*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20" (pointer_expression "*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" (* "*") (cast_expression "(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)*ppuVar8 + (ulong)bVar11 * 2 + 1)" (( "(") (binary_expression "(long)*ppuVar8 + (ulong)bVar11 * 2 + 1" (binary_expression "(long)*ppuVar8 + (ulong)bVar11 * 2" (cast_expression "(long)*ppuVar8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "*ppuVar8" (* "*") (identifier "ppuVar8"))) (+ "+") (binary_expression "(ulong)bVar11 * 2" (cast_expression "(ulong)bVar11" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar11")) (* "*") (number_literal "2"))) (+ "+") (number_literal "1")) () ")")))) (& "&") (number_literal "0x20")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              if (!bVar4) {\n                pbVar9 = pbVar3;\n              }\n              break;\n            }" ({ "{") (if_statement "if (!bVar4) {\n                pbVar9 = pbVar3;\n              }" (if "if") (parenthesized_expression "(!bVar4)" (( "(") (unary_expression "!bVar4" (! "!") (identifier "bVar4")) () ")")) (compound_statement "{\n                pbVar9 = pbVar3;\n              }" ({ "{") (expression_statement "pbVar9 = pbVar3;" (assignment_expression "pbVar9 = pbVar3" (identifier "pbVar9") (= "=") (identifier "pbVar3")) (; ";")) (} "}"))) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar11 = *pbVar9;" (assignment_expression "bVar11 = *pbVar9" (identifier "bVar11") (= "=") (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar11 != 10)" (( "(") (binary_expression "bVar11 != 10" (identifier "bVar11") (!= "!=") (number_literal "10")) () ")")) (; ";")) (} "}"))) (if_statement "if ((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {\n          bVar11 = 0;\n          break;\n        }" (if "if") (parenthesized_expression "((lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0))))" (( "(") (binary_expression "(lVar10 - (long)pbVar9 != (long)local_50) &&\n           ((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))" (parenthesized_expression "(lVar10 - (long)pbVar9 != (long)local_50)" (( "(") (binary_expression "lVar10 - (long)pbVar9 != (long)local_50" (binary_expression "lVar10 - (long)pbVar9" (identifier "lVar10") (- "-") (cast_expression "(long)pbVar9" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "pbVar9"))) (!= "!=") (cast_expression "(long)local_50" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_50"))) () ")")) (&& "&&") (parenthesized_expression "((DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))" (( "(") (parenthesized_expression "(DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0))" (( "(") (binary_expression "DAT_00134aa0 == 0 ||\n            (lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)" (binary_expression "DAT_00134aa0 == 0" (identifier "DAT_00134aa0") (== "==") (number_literal "0")) (|| "||") (parenthesized_expression "(lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)" (( "(") (comma_expression "lVar10 = lVar10 - (long)pbVar3,\n            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0" (assignment_expression "lVar10 = lVar10 - (long)pbVar3" (identifier "lVar10") (= "=") (binary_expression "lVar10 - (long)pbVar3" (identifier "lVar10") (- "-") (cast_expression "(long)pbVar3" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "pbVar3")))) (, ",") (comma_expression "lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0" (assignment_expression "lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" (identifier "lVar10") (= "=") (call_expression "FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" (identifier "FUN_00122319") (argument_list "(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0)" (( "(") (pointer_expression "&DAT_00134a80" (& "&") (identifier "DAT_00134a80")) (, ",") (identifier "pbVar3") (, ",") (identifier "lVar10") (, ",") (number_literal "0") (, ",") (identifier "lVar10") (, ",") (number_literal "0") () ")")))) (, ",") (binary_expression "lVar10 < 0" (identifier "lVar10") (< "<") (number_literal "0")))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n          bVar11 = 0;\n          break;\n        }" ({ "{") (expression_statement "bVar11 = 0;" (assignment_expression "bVar11 = 0" (identifier "bVar11") (= "=") (number_literal "0")) (; ";")) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "lVar12 = lVar12 + 1;" (assignment_expression "lVar12 = lVar12 + 1" (identifier "lVar12") (= "=") (binary_expression "lVar12 + 1" (identifier "lVar12") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar11 = bVar7;" (assignment_expression "bVar11 = bVar7" (identifier "bVar11") (= "=") (identifier "bVar7")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(lVar12 <= lVar1)" (( "(") (binary_expression "lVar12 <= lVar1" (identifier "lVar12") (<= "<=") (identifier "lVar1")) () ")")) (; ";")) (} "}"))) (labeled_statement "LAB_0010e492:\n    local_68 = (long *)*local_68;" (statement_identifier "LAB_0010e492") (: ":") (expression_statement "local_68 = (long *)*local_68;" (assignment_expression "local_68 = (long *)*local_68" (identifier "local_68") (= "=") (cast_expression "(long *)*local_68" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*local_68" (* "*") (identifier "local_68")))) (; ";"))) (if_statement "if (local_68 == (long *)0x0) {\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }" (if "if") (parenthesized_expression "(local_68 == (long *)0x0)" (( "(") (binary_expression "local_68 == (long *)0x0" (identifier "local_68") (== "==") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      *param_3 = lVar2;\n      *param_5 = lVar1;\n      bVar7 = 0;\n      if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }\n      return bVar7;\n    }" ({ "{") (expression_statement "*param_3 = lVar2;" (assignment_expression "*param_3 = lVar2" (pointer_expression "*param_3" (* "*") (identifier "param_3")) (= "=") (identifier "lVar2")) (; ";")) (expression_statement "*param_5 = lVar1;" (assignment_expression "*param_5 = lVar1" (pointer_expression "*param_5" (* "*") (identifier "param_5")) (= "=") (identifier "lVar1")) (; ";")) (expression_statement "bVar7 = 0;" (assignment_expression "bVar7 = 0" (identifier "bVar7") (= "=") (number_literal "0")) (; ";")) (if_statement "if (bVar11 == 0) {\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }" (if "if") (parenthesized_expression "(bVar11 == 0)" (( "(") (binary_expression "bVar11 == 0" (identifier "bVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';\n      }" ({ "{") (expression_statement "bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';" (assignment_expression "bVar7 = local_60 != 0 | (local_58 != 0) * '\x02'" (identifier "bVar7") (= "=") (binary_expression "local_60 != 0 | (local_58 != 0) * '\x02'" (binary_expression "local_60 != 0" (identifier "local_60") (!= "!=") (number_literal "0")) (| "|") (binary_expression "(local_58 != 0) * '\x02'" (parenthesized_expression "(local_58 != 0)" (( "(") (binary_expression "local_58 != 0" (identifier "local_58") (!= "!=") (number_literal "0")) () ")")) (* "*") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))))) (; ";")) (} "}"))) (return_statement "return bVar7;" (return "return") (identifier "bVar7") (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}")))

type_1 function_1(type_2 *hunk,type_3 *first0,type_3 *last0,type_3 *first1,type_3 *last1)

{
  long var_17;
  long var_7;
  type_4 *pbVar3;
  char *var_13;
  bool bVar5;
  long var_14;
  char **ppcVar7;
  char **ppcVar8;
  type_4 var_9;
  type_1 cVar10;
  type_5 **ppuVar11;
  type_4 *var_12;
  type_6 var_16;
  type_4 var_8;
  long var_4;
  type_2 *var_18;
  long var_5;
  long var_6;
  int local_50;
  char var_10;
  
  ppcVar8 = files[1].linbuf;
  ppcVar7 = files[0].linbuf;
  if (ignore_blank_lines) {
    var_8 = ignore_blank_lines;
    if (var_1 < var_2) {
      bVar5 = var_3 < var_2;
      var_10 = ignore_blank_lines;
      local_50 = 0;
      goto LAB_0010e635;
    }
    local_50 = 0;
  }
  else {
    local_50 = -1;
    var_8 = ignore_regexp.fastmap != (char *)0x0;
  }
  var_10 = '\0';
  bVar5 = false;
LAB_0010e635:
  *first0 = hunk->line0;
  *first1 = hunk->line1;
  var_6 = 0;
  var_5 = 0;
  var_18 = hunk;
  do {
    var_4 = var_18->line0;
    var_7 = var_18->deleted + -1 + var_4;
    var_17 = var_18->inserted + var_18->line1 + -1;
    var_5 = var_5 + var_18->deleted;
    var_6 = var_6 + var_18->inserted;
    var_9 = var_4 <= var_7 & var_8;
    if (var_9 != 0) {
      do {
        pbVar3 = (type_4 *)ppcVar7[var_4];
        var_13 = ppcVar7[var_4 + 1];
        var_14 = (type_7)(var_13[-1] != '\n') - 1;
        var_12 = pbVar3;
        if ((var_10 != '\0') && (var_8 = *pbVar3, var_8 != 10)) {
          ppuVar11 = var_11();
          do {
            if ((*(type_4 *)((long)*ppuVar11 + (type_7)var_8 * 2 + 1) & 0x20) == 0) {
              if (!bVar5) {
                var_12 = pbVar3;
              }
              break;
            }
            var_12 = var_12 + 1;
            var_8 = *var_12;
          } while (var_8 != 10);
        }
        if ((var_13 + (var_14 - (long)var_12) != (char *)(long)local_50) &&
           ((ignore_regexp.fastmap == (char *)0x0 ||
            (var_16 = var_15(&ignore_regexp,(char *)pbVar3,
                                    (Idx)(var_13 + (var_14 - (long)pbVar3)),0,
                                    (type_6)(var_13 + (var_14 - (long)pbVar3)),(type_8 *)0x0)
            , var_16 < 0)))) {
          var_8 = 0;
          goto LAB_0010e492;
        }
        var_4 = var_4 + 1;
        var_8 = var_9;
      } while (var_4 <= var_7);
    }
    var_4 = var_18->line1;
    var_9 = var_4 <= var_17 & var_8;
    if (var_9 != 0) {
      do {
        pbVar3 = (type_4 *)ppcVar8[var_4];
        var_13 = ppcVar8[var_4 + 1];
        var_14 = (type_7)(var_13[-1] != '\n') - 1;
        var_12 = pbVar3;
        if ((var_10 != '\0') && (var_8 = *pbVar3, var_8 != 10)) {
          ppuVar11 = var_11();
          do {
            if ((*(type_4 *)((long)*ppuVar11 + (type_7)var_8 * 2 + 1) & 0x20) == 0) {
              if (!bVar5) {
                var_12 = pbVar3;
              }
              break;
            }
            var_12 = var_12 + 1;
            var_8 = *var_12;
          } while (var_8 != 10);
        }
        if ((var_13 + (var_14 - (long)var_12) != (char *)(long)local_50) &&
           ((ignore_regexp.fastmap == (char *)0x0 ||
            (var_16 = var_15(&ignore_regexp,(char *)pbVar3,
                                    (Idx)(var_13 + (var_14 - (long)pbVar3)),0,
                                    (type_6)(var_13 + (var_14 - (long)pbVar3)),(type_8 *)0x0)
            , var_16 < 0)))) {
          var_8 = 0;
          break;
        }
        var_4 = var_4 + 1;
        var_8 = var_9;
      } while (var_4 <= var_17);
    }
LAB_0010e492:
    var_18 = var_18->link;
    if (var_18 == (type_2 *)0x0) {
      *last0 = var_7;
      *last1 = var_17;
      cVar10 = UNCHANGED;
      if (var_8 == 0) {
        cVar10 = (uint)(var_5 != 0) | (uint)(var_6 != 0) * 2;
      }
      return cVar10;
    }
  } while( true );
}


(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (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: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (number_literal) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (false))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_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: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (pointer_expression argument: (identifier))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (break_statement))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier))) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)))) right: (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (identifier) (number_literal) (identifier) (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_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: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (pointer_expression argument: (identifier))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (break_statement))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier))) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)))) right: (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (identifier) (number_literal) (identifier) (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (break_statement))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (char_literal (escape_sequence)))))))) (return_statement (identifier))))) condition: (parenthesized_expression (true))))))

byte MASKED(long *param_1,long *param_2,long *param_3,long *param_4,long *param_5)

{
  long lVar1;
  long lVar2;
  byte *pbVar3;
  bool bVar4;
  long lVar5;
  long lVar6;
  byte bVar7;
  ushort **ppuVar8;
  byte *pbVar9;
  long lVar10;
  byte bVar11;
  long lVar12;
  long *local_68;
  long local_60;
  long local_58;
  int local_50;
  byte local_4b;
  
  lVar6 = DAT_00134cc8;
  lVar5 = DAT_00134b98;
  if (DAT_00134ac1 == 0) {
    local_50 = -1;
    bVar11 = DAT_00134aa0 != 0;
  }
  else {
    bVar11 = DAT_00134ac1;
    if (1 < DAT_001349a8) {
      bVar4 = 3 < DAT_001349a8;
      local_4b = DAT_00134ac1;
      local_50 = 0;
      goto LAB_0010e635;
    }
    local_50 = 0;
  }
  local_4b = 0;
  bVar4 = false;
LAB_0010e635:
  *param_2 = param_1[3];
  *param_4 = param_1[4];
  local_58 = 0;
  local_60 = 0;
  local_68 = param_1;
  do {
    lVar12 = local_68[3];
    lVar2 = local_68[2] + -1 + lVar12;
    lVar1 = local_68[1] + local_68[4] + -1;
    local_60 = local_60 + local_68[2];
    local_58 = local_58 + local_68[1];
    bVar7 = lVar12 <= lVar2 & bVar11;
    if (bVar7 != 0) {
      do {
        pbVar3 = *(byte **)(lVar5 + lVar12 * 8);
        lVar10 = *(long *)(lVar5 + 8 + lVar12 * 8);
        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');
        pbVar9 = pbVar3;
        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {
          ppuVar8 = __ctype_b_loc();
          do {
            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {
              if (!bVar4) {
                pbVar9 = pbVar3;
              }
              break;
            }
            pbVar9 = pbVar9 + 1;
            bVar11 = *pbVar9;
          } while (bVar11 != 10);
        }
        if ((lVar10 - (long)pbVar9 != (long)local_50) &&
           ((DAT_00134aa0 == 0 ||
            (lVar10 = lVar10 - (long)pbVar3,
            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {
          bVar11 = 0;
          goto LAB_0010e492;
        }
        lVar12 = lVar12 + 1;
        bVar11 = bVar7;
      } while (lVar12 <= lVar2);
    }
    lVar12 = local_68[4];
    bVar7 = lVar12 <= lVar1 & bVar11;
    if (bVar7 != 0) {
      do {
        pbVar3 = *(byte **)(lVar6 + lVar12 * 8);
        lVar10 = *(long *)(lVar6 + 8 + lVar12 * 8);
        lVar10 = lVar10 + -1 + (ulong)(*(char *)(lVar10 + -1) != '\n');
        pbVar9 = pbVar3;
        if ((local_4b != 0) && (bVar11 = *pbVar3, bVar11 != 10)) {
          ppuVar8 = __ctype_b_loc();
          do {
            if ((*(byte *)((long)*ppuVar8 + (ulong)bVar11 * 2 + 1) & 0x20) == 0) {
              if (!bVar4) {
                pbVar9 = pbVar3;
              }
              break;
            }
            pbVar9 = pbVar9 + 1;
            bVar11 = *pbVar9;
          } while (bVar11 != 10);
        }
        if ((lVar10 - (long)pbVar9 != (long)local_50) &&
           ((DAT_00134aa0 == 0 ||
            (lVar10 = lVar10 - (long)pbVar3,
            lVar10 = FUN_00122319(&DAT_00134a80,pbVar3,lVar10,0,lVar10,0), lVar10 < 0)))) {
          bVar11 = 0;
          break;
        }
        lVar12 = lVar12 + 1;
        bVar11 = bVar7;
      } while (lVar12 <= lVar1);
    }
LAB_0010e492:
    local_68 = (long *)*local_68;
    if (local_68 == (long *)0x0) {
      *param_3 = lVar2;
      *param_5 = lVar1;
      bVar7 = 0;
      if (bVar11 == 0) {
        bVar7 = local_60 != 0 | (local_58 != 0) * '\x02';
      }
      return bVar7;
    }
  } while( true );
}

