
int udhcp_str2optset(char *const_str,void *arg,dhcp_optflag *optflags,char *option_strings)

{
  byte bVar1;
  long lVar2;
  ushort uVar3;
  uint uVar4;
  int iVar5;
  char *pcVar6;
  byte *s;
  size_t sVar7;
  byte *s_00;
  uint length;
  dhcp_optflag *optflag;
  long in_FS_OFFSET;
  uint8_t auStack_50 [2];
  dhcp_optflag userdef_optflag;
  char buffer [9];
  
  lVar2 = *(long *)(in_FS_OFFSET + 0x28);
  pcVar6 = strtok(const_str," \t=:");
  uVar4 = 0;
  if (pcVar6 != (char *)0x0) {
    uVar4 = bb_strtou(pcVar6,(char **)0x0,0);
    if ((*bb_errno == 0) && (uVar4 < 0xff)) {
      userdef_optflag.flags = '\t';
      userdef_optflag.code = (uint8_t)uVar4;
      optflag = &userdef_optflag;
    }
    else {
      uVar4 = udhcp_option_idx(pcVar6,option_strings);
      optflag = optflags + uVar4;
    }
    uVar4 = 0;
    do {
      if (optflag->flags == '\t') {
        s = (byte *)strtok((char *)0x0,"");
        trim((char *)s);
      }
      else {
        s = (byte *)strtok((char *)0x0,", \t");
      }
      if (s == (byte *)0x0) break;
      uVar4 = optflag->flags & 0xf;
      length = (uint)(byte)dhcp_option_lengths[uVar4];
      s_00 = s;
      switch(uVar4) {
      default:
        uVar4 = 0;
        break;
      case 1:
        uVar4 = udhcp_str2nip((char *)s,buffer);
        break;
      case 2:
        iVar5 = udhcp_str2nip((char *)s,buffer);
        pcVar6 = strtok((char *)0x0,", \t/-");
        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {
          uVar4 = udhcp_str2nip(pcVar6,buffer + 4);
          break;
        }
        goto LAB_00143552;
      case 3:
      case 4:
      case 0xc:
switchD_001432ff_caseD_3:
        sVar7 = strnlen((char *)s_00,0xfe);
        length = (uint)sVar7;
        s = s_00;
        if (0 < (int)length) goto LAB_00143566;
        goto LAB_00143552;
      case 5:
        uVar4 = bb_strtou((char *)s,(char **)0x0,0);
        buffer[0] = (char)uVar4;
        uVar4 = (uint)(*bb_errno == 0);
        break;
      case 6:
        uVar4 = bb_strtou((char *)s,(char **)0x0,0);
        uVar3 = (ushort)uVar4 << 8 | (ushort)uVar4 >> 8;
        buffer[0] = (char)uVar3;
        buffer[1] = (char)(uVar3 >> 8);
        uVar4 = (uint)(*bb_errno == 0);
        break;
      case 7:
        uVar4 = bb_strtou((char *)s,(char **)0x0,0);
        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |
                       uVar4 << 0x18;
        uVar4 = (uint)(*bb_errno == 0);
        break;
      case 8:
        uVar4 = bb_strtoi((char *)s,(char **)0x0,0);
        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |
                       uVar4 << 0x18;
        uVar4 = (uint)(*bb_errno == 0);
        break;
      case 9:
        bVar1 = *s;
        if ((bVar1 == 0x22) || (bVar1 == 0x27)) {
          s_00 = s + 1;
          pcVar6 = last_char_is((char *)s_00,(uint)bVar1);
          if (pcVar6 != (char *)0x0) {
            *pcVar6 = '\0';
            userdef_optflag.flags = '\x03';
            goto switchD_001432ff_caseD_3;
          }
        }
LAB_00143566:
        uVar4 = 1;
        goto LAB_00143345;
      case 10:
        pcVar6 = strchr((char *)s,0x2f);
        if (pcVar6 != (char *)0x0) {
          *pcVar6 = '\0';
          iVar5 = udhcp_str2nip((char *)s,buffer + 1);
          uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);
          buffer[0] = (char)uVar4;
          pcVar6 = strtok((char *)0x0,", \t/-");
          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {
            length = (uVar4 + 7 >> 3) + 5;
            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);
            break;
          }
        }
        goto LAB_00143552;
      }
      s = (byte *)buffer;
      if (uVar4 == 0) {
LAB_00143552:
        uVar4 = 0;
        break;
      }
LAB_00143345:
      attach_option((option_set **)arg,optflag,(char *)s,length);
    } while ((optflag->flags & 0x20) != 0);
  }
  if (lVar2 != *(long *)(in_FS_OFFSET + 0x28)) {
                    /* WARNING: Subroutine does not return */
    __stack_chk_fail();
  }
  return uVar4;
}



uint FUN_0014320f(char *param_1,undefined8 param_2,long param_3,undefined8 param_4)

{
  char cVar1;
  undefined1 uVar2;
  ushort uVar3;
  uint uVar4;
  int iVar5;
  char *pcVar6;
  char *pcVar7;
  undefined1 *puVar8;
  size_t sVar9;
  ulong uVar10;
  byte *pbVar11;
  long in_FS_OFFSET;
  byte abStack_50 [4];
  undefined4 local_4c;
  undefined1 local_48 [8];
  long local_40;
  
  local_40 = *(long *)(in_FS_OFFSET + 0x28);
  pcVar6 = strtok(param_1," \t=:");
  uVar4 = 0;
  if (pcVar6 != (char *)0x0) {
    uVar4 = FUN_001101c1(pcVar6,0,0);
    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {
      abStack_50[2] = 9;
      abStack_50[3] = (char)uVar4;
      pbVar11 = abStack_50 + 2;
    }
    else {
      uVar4 = FUN_00142cf5(pcVar6,param_4);
      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);
    }
    uVar4 = 0;
    do {
      if (*pbVar11 == 9) {
        pcVar6 = strtok((char *)0x0,"");
        FUN_001a4de3(pcVar6);
      }
      else {
        pcVar6 = strtok((char *)0x0,", \t");
      }
      if (pcVar6 == (char *)0x0) break;
      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];
      pcVar7 = pcVar6;
      switch(*pbVar11 & 0xf) {
      default:
        uVar4 = 0;
        break;
      case 1:
        uVar4 = FUN_001431de(pcVar6,&local_4c);
        break;
      case 2:
        iVar5 = FUN_001431de(pcVar6,&local_4c);
        pcVar6 = strtok((char *)0x0,", \t/-");
        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {
          uVar4 = FUN_001431de(pcVar6,local_48);
          break;
        }
        goto LAB_00143552;
      case 3:
      case 4:
      case 0xc:
switchD_001432ff_caseD_3:
        sVar9 = strnlen(pcVar7,0xfe);
        uVar10 = sVar9 & 0xffffffff;
        pcVar6 = pcVar7;
        if (0 < (int)sVar9) goto LAB_00143566;
        goto LAB_00143552;
      case 5:
        uVar2 = FUN_001101c1(pcVar6,0,0);
        local_4c = CONCAT31(local_4c._1_3_,uVar2);
        uVar4 = (uint)(*DAT_001c65c0 == 0);
        break;
      case 6:
        uVar3 = FUN_001101c1(pcVar6,0,0);
        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);
        uVar4 = (uint)(*DAT_001c65c0 == 0);
        break;
      case 7:
        uVar4 = FUN_001101c1(pcVar6,0,0);
        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;
        uVar4 = (uint)(*DAT_001c65c0 == 0);
        break;
      case 8:
        uVar4 = FUN_00110265(pcVar6,0,0);
        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;
        uVar4 = (uint)(*DAT_001c65c0 == 0);
        break;
      case 9:
        cVar1 = *pcVar6;
        if ((cVar1 == '\"') || (cVar1 == '\'')) {
          pcVar7 = pcVar6 + 1;
          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);
          if (puVar8 != (undefined1 *)0x0) {
            *puVar8 = 0;
            abStack_50[2] = 3;
            goto switchD_001432ff_caseD_3;
          }
        }
LAB_00143566:
        uVar4 = 1;
        goto LAB_00143345;
      case 10:
        pcVar7 = strchr(pcVar6,0x2f);
        if (pcVar7 != (char *)0x0) {
          *pcVar7 = '\0';
          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);
          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);
          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);
          pcVar6 = strtok((char *)0x0,", \t/-");
          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))
          {
            uVar4 = (uVar4 + 7 >> 3) + 5;
            uVar10 = (ulong)uVar4;
            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);
            break;
          }
        }
        goto LAB_00143552;
      }
      pcVar6 = (char *)&local_4c;
      if (uVar4 == 0) {
LAB_00143552:
        uVar4 = 0;
        break;
      }
LAB_00143345:
      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);
    } while ((*pbVar11 & 0x20) != 0);
  }
  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {
                    /* WARNING: Subroutine does not return */
    __stack_chk_fail();
  }
  return uVar4;
}


PUSH R15
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x38
MOV qword ptr [RSP],RSI
MOV R12,RDX
MOV R13,RCX
MOV RAX,qword ptr FS:[0x28]
MOV qword ptr [RSP + 0x28],RAX
XOR EAX,EAX
LEA RSI,[0x1bb7b2]
CALL 0x0010c1a0
MOV EBP,0x0
TEST RAX,RAX
JZ 0x00143361
MOV RBX,RAX
MOV EDX,0x0
MOV ESI,0x0
MOV RDI,RAX
CALL 0x001101c1
MOV RDX,qword ptr [0x001c65c0]
CMP dword ptr [RDX],0x0
JNZ 0x00143301
CMP EAX,0xfe
JA 0x00143301
MOV byte ptr [RSP + 0x1a],0x9
MOV byte ptr [RSP + 0x1b],AL
LEA R14,[RSP + 0x1a]
MOV EBP,0x0
LEA R13,[RSP + 0x1c]
LEA R15,[0x1af554]
LEA RAX,[R13 + 0x1]
MOV qword ptr [RSP + 0x8],RAX
CMP byte ptr [R14],0x9
JNZ 0x00143317
LEA RSI,[0x1c0d09]
MOV EDI,0x0
CALL 0x0010c1a0
MOV RBX,RAX
MOV RDI,RAX
CALL 0x001a4de3
TEST RBX,RBX
JZ 0x00143361
MOVZX EAX,byte ptr [R14]
AND EAX,0xf
MOV RDX,RAX
AND EDX,0xf
LEA RCX,[0x1bb7c1]
MOVZX R12D,byte ptr [RCX + RDX*0x1]
CMP AL,0xc
JA 0x0014355c
MOVZX EAX,AL
MOVSXD RAX,dword ptr [R15 + RAX*0x4]
ADD RAX,R15
JMP RAX
MOV RSI,R13
MOV RDI,RBX
CALL 0x00142cf5
MOV EAX,EAX
LEA R14,[R12 + RAX*0x2]
JMP 0x0014328f
LEA RSI,[0x1bb7b7]
MOV EDI,0x0
CALL 0x0010c1a0
MOV RBX,RAX
JMP 0x001432cb
MOV RSI,R13
MOV RDI,RBX
CALL 0x001431de
MOV EBP,EAX
TEST EBP,EBP
JZ 0x00143552
MOV RBX,R13
MOV ECX,R12D
MOV RDX,RBX
MOV RSI,R14
MOV RDI,qword ptr [RSP]
CALL 0x0014302a
TEST byte ptr [R14],0x20
JNZ 0x001432a9
MOV EAX,EBP
MOV RCX,qword ptr [RSP + 0x28]
XOR RCX,qword ptr FS:[0x28]
JZ 0x00143570
CALL 0x0010b500
MOV RSI,R13
MOV RDI,RBX
CALL 0x001431de
MOV EBX,EAX
LEA RSI,[0x1bb7bb]
MOV EDI,0x0
CALL 0x0010c1a0
TEST RAX,RAX
JZ 0x00143552
TEST EBX,EBX
JZ 0x00143552
LEA RSI,[R13 + 0x4]
MOV RDI,RAX
CALL 0x001431de
MOV EBP,EAX
JMP 0x0014333a
MOV EDX,0x0
MOV ESI,0x0
MOV RDI,RBX
CALL 0x001101c1
MOV byte ptr [RSP + 0x1c],AL
MOV RAX,qword ptr [0x001c65c0]
CMP dword ptr [RAX],0x0
SETZ BPL
MOVZX EBP,BPL
JMP 0x0014333a
MOV EDX,0x0
MOV ESI,0x0
MOV RDI,RBX
CALL 0x001101c1
ROL AX,0x8
MOV word ptr [RSP + 0x1c],AX
MOV RAX,qword ptr [0x001c65c0]
CMP dword ptr [RAX],0x0
SETZ BPL
MOVZX EBP,BPL
JMP 0x0014333a
MOV EDX,0x0
MOV ESI,0x0
MOV RDI,RBX
CALL 0x001101c1
BSWAP EAX
MOV dword ptr [RSP + 0x1c],EAX
MOV RAX,qword ptr [0x001c65c0]
CMP dword ptr [RAX],0x0
SETZ BPL
MOVZX EBP,BPL
JMP 0x0014333a
MOV EDX,0x0
MOV ESI,0x0
MOV RDI,RBX
CALL 0x00110265
BSWAP EAX
MOV dword ptr [RSP + 0x1c],EAX
MOV RAX,qword ptr [0x001c65c0]
CMP dword ptr [RAX],0x0
SETZ BPL
MOVZX EBP,BPL
JMP 0x0014333a
MOV ESI,0x2f
MOV RDI,RBX
CALL 0x0010b5a0
MOV RBP,RAX
TEST RAX,RAX
JZ 0x00143552
MOV byte ptr [RAX],0x0
MOV RSI,qword ptr [RSP + 0x8]
MOV RDI,RBX
CALL 0x001431de
MOV EBX,EAX
LEA RDI,[RBP + 0x1]
MOV EDX,0xa
MOV ESI,0x0
CALL 0x001101c1
MOV R12D,EAX
MOV byte ptr [RSP + 0x1c],AL
LEA RSI,[0x1bb7bb]
MOV EDI,0x0
CALL 0x0010c1a0
TEST RAX,RAX
JZ 0x00143552
CMP R12D,0x20
JA 0x00143552
MOV RDX,qword ptr [0x001c65c0]
CMP dword ptr [RDX],0x0
JNZ 0x00143552
TEST EBX,EBX
JZ 0x00143552
ADD R12D,0x7
SHR R12D,0x3
ADD R12D,0x5
MOVSXD RDX,R12D
LEA RSI,[R13 + RDX*0x1 + -0x4]
MOV RDI,RAX
CALL 0x001431de
MOV EBP,EAX
JMP 0x0014333a
MOVZX ESI,byte ptr [RBX]
CMP SIL,0x22
JZ 0x0014351e
CMP SIL,0x27
JNZ 0x00143566
LEA RBP,[RBX + 0x1]
MOVZX ESI,SIL
MOV RDI,RBP
CALL 0x0010d637
TEST RAX,RAX
JZ 0x00143566
MOV byte ptr [RAX],0x0
MOV byte ptr [RSP + 0x1a],0x3
MOV RBX,RBP
MOV ESI,0xfe
MOV RDI,RBX
CALL 0x0010b770
MOV R12D,EAX
TEST EAX,EAX
JG 0x00143566
MOV EBP,0x0
JMP 0x00143361
MOV EBP,0x0
JMP 0x0014333a
MOV EBP,0x1
JMP 0x00143345
ADD RSP,0x38
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
(translation_unit "uint FUN_0014320f(char *param_1,undefined8 param_2,long param_3,undefined8 param_4)\n\n{\n  char cVar1;\n  undefined1 uVar2;\n  ushort uVar3;\n  uint uVar4;\n  int iVar5;\n  char *pcVar6;\n  char *pcVar7;\n  undefined1 *puVar8;\n  size_t sVar9;\n  ulong uVar10;\n  byte *pbVar11;\n  long in_FS_OFFSET;\n  byte abStack_50 [4];\n  undefined4 local_4c;\n  undefined1 local_48 [8];\n  long local_40;\n  \n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  pcVar6 = strtok(param_1," \t=:");\n  uVar4 = 0;\n  if (pcVar6 != (char *)0x0) {\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }\n  return uVar4;\n}\n\n" (function_definition "uint FUN_0014320f(char *param_1,undefined8 param_2,long param_3,undefined8 param_4)\n\n{\n  char cVar1;\n  undefined1 uVar2;\n  ushort uVar3;\n  uint uVar4;\n  int iVar5;\n  char *pcVar6;\n  char *pcVar7;\n  undefined1 *puVar8;\n  size_t sVar9;\n  ulong uVar10;\n  byte *pbVar11;\n  long in_FS_OFFSET;\n  byte abStack_50 [4];\n  undefined4 local_4c;\n  undefined1 local_48 [8];\n  long local_40;\n  \n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  pcVar6 = strtok(param_1," \t=:");\n  uVar4 = 0;\n  if (pcVar6 != (char *)0x0) {\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }\n  return uVar4;\n}" type_identifier (function_declarator "FUN_0014320f(char *param_1,undefined8 param_2,long param_3,undefined8 param_4)" identifier (parameter_list "(char *param_1,undefined8 param_2,long param_3,undefined8 param_4)" ( (parameter_declaration "char *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined8 param_2" type_identifier identifier) , (parameter_declaration "long param_3" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined8 param_4" type_identifier identifier) ))) (compound_statement "{\n  char cVar1;\n  undefined1 uVar2;\n  ushort uVar3;\n  uint uVar4;\n  int iVar5;\n  char *pcVar6;\n  char *pcVar7;\n  undefined1 *puVar8;\n  size_t sVar9;\n  ulong uVar10;\n  byte *pbVar11;\n  long in_FS_OFFSET;\n  byte abStack_50 [4];\n  undefined4 local_4c;\n  undefined1 local_48 [8];\n  long local_40;\n  \n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  pcVar6 = strtok(param_1," \t=:");\n  uVar4 = 0;\n  if (pcVar6 != (char *)0x0) {\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }\n  return uVar4;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "undefined1 uVar2;" type_identifier identifier ;) (declaration "ushort uVar3;" type_identifier identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "undefined1 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "size_t sVar9;" primitive_type identifier ;) (declaration "ulong uVar10;" type_identifier identifier ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "long in_FS_OFFSET;" (sized_type_specifier "long" long) identifier ;) (declaration "byte abStack_50 [4];" type_identifier (array_declarator "abStack_50 [4]" identifier [ number_literal ]) ;) (declaration "undefined4 local_4c;" type_identifier identifier ;) (declaration "undefined1 local_48 [8];" type_identifier (array_declarator "local_48 [8]" identifier [ number_literal ]) ;) (declaration "long local_40;" (sized_type_specifier "long" long) identifier ;) (expression_statement "local_40 = *(long *)(in_FS_OFFSET + 0x28);" (assignment_expression "local_40 = *(long *)(in_FS_OFFSET + 0x28)" identifier = (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) ;) (expression_statement "pcVar6 = strtok(param_1," \t=:");" (assignment_expression "pcVar6 = strtok(param_1," \t=:")" identifier = (call_expression "strtok(param_1," \t=:")" identifier (argument_list "(param_1," \t=:")" ( identifier , (string_literal "" \t=:"" " string_content escape_sequence string_content ") )))) ;) (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;) (if_statement "if (pcVar6 != (char *)0x0) {\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }" if (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }" { (expression_statement "uVar4 = FUN_001101c1(pcVar6,0,0);" (assignment_expression "uVar4 = FUN_001101c1(pcVar6,0,0)" identifier = (call_expression "FUN_001101c1(pcVar6,0,0)" identifier (argument_list "(pcVar6,0,0)" ( identifier , number_literal , number_literal )))) ;) (if_statement "if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }" if (parenthesized_expression "((*DAT_001c65c0 == 0) && (uVar4 < 0xff))" ( (binary_expression "(*DAT_001c65c0 == 0) && (uVar4 < 0xff)" (parenthesized_expression "(*DAT_001c65c0 == 0)" ( (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" * identifier) == number_literal) )) && (parenthesized_expression "(uVar4 < 0xff)" ( (binary_expression "uVar4 < 0xff" identifier < number_literal) ))) )) (compound_statement "{\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }" { (expression_statement "abStack_50[2] = 9;" (assignment_expression "abStack_50[2] = 9" (subscript_expression "abStack_50[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "abStack_50[3] = (char)uVar4;" (assignment_expression "abStack_50[3] = (char)uVar4" (subscript_expression "abStack_50[3]" identifier [ number_literal ]) = (cast_expression "(char)uVar4" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "pbVar11 = abStack_50 + 2;" (assignment_expression "pbVar11 = abStack_50 + 2" identifier = (binary_expression "abStack_50 + 2" identifier + number_literal)) ;) }) (else_clause "else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }" else (compound_statement "{\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }" { (expression_statement "uVar4 = FUN_00142cf5(pcVar6,param_4);" (assignment_expression "uVar4 = FUN_00142cf5(pcVar6,param_4)" identifier = (call_expression "FUN_00142cf5(pcVar6,param_4)" identifier (argument_list "(pcVar6,param_4)" ( identifier , identifier )))) ;) (expression_statement "pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);" (assignment_expression "pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2)" identifier = (cast_expression "(byte *)(param_3 + (ulong)uVar4 * 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_3 + (ulong)uVar4 * 2)" ( (binary_expression "param_3 + (ulong)uVar4 * 2" identifier + (binary_expression "(ulong)uVar4 * 2" (cast_expression "(ulong)uVar4" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) )))) ;) }))) (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;) (do_statement "do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);" do (compound_statement "{\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    }" { (if_statement "if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }" if (parenthesized_expression "(*pbVar11 == 9)" ( (binary_expression "*pbVar11 == 9" (pointer_expression "*pbVar11" * identifier) == number_literal) )) (compound_statement "{\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }" { (expression_statement "pcVar6 = strtok((char *)0x0,"");" (assignment_expression "pcVar6 = strtok((char *)0x0,"")" identifier = (call_expression "strtok((char *)0x0,"")" identifier (argument_list "((char *)0x0,"")" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (string_literal """" " ") )))) ;) (expression_statement "FUN_001a4de3(pcVar6);" (call_expression "FUN_001a4de3(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) }) (else_clause "else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }" else (compound_statement "{\n        pcVar6 = strtok((char *)0x0,", \t");\n      }" { (expression_statement "pcVar6 = strtok((char *)0x0,", \t");" (assignment_expression "pcVar6 = strtok((char *)0x0,", \t")" identifier = (call_expression "strtok((char *)0x0,", \t")" identifier (argument_list "((char *)0x0,", \t")" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (string_literal "", \t"" " string_content escape_sequence ") )))) ;) }))) (if_statement "if (pcVar6 == (char *)0x0) break;" if (parenthesized_expression "(pcVar6 == (char *)0x0)" ( (binary_expression "pcVar6 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];" (assignment_expression "uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf]" identifier = (subscript_expression "(ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf]" (call_expression "(ulong)(byte)(&DAT_001bb7c1)" (call_expression "(ulong)(byte)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(byte)" ( identifier ))) (argument_list "(&DAT_001bb7c1)" ( (pointer_expression "&DAT_001bb7c1" & identifier) ))) [ (binary_expression "*pbVar11 & 0xf" (pointer_expression "*pbVar11" * identifier) & number_literal) ])) ;) (expression_statement "pcVar7 = pcVar6;" (assignment_expression "pcVar7 = pcVar6" identifier = identifier) ;) (switch_statement "switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }" switch (parenthesized_expression "(*pbVar11 & 0xf)" ( (binary_expression "*pbVar11 & 0xf" (pointer_expression "*pbVar11" * identifier) & number_literal) )) (compound_statement "{\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }" { (case_statement "default:\n        uVar4 = 0;\n        break;" default : (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;" case number_literal : (expression_statement "uVar4 = FUN_001431de(pcVar6,&local_4c);" (assignment_expression "uVar4 = FUN_001431de(pcVar6,&local_4c)" identifier = (call_expression "FUN_001431de(pcVar6,&local_4c)" identifier (argument_list "(pcVar6,&local_4c)" ( identifier , (pointer_expression "&local_4c" & identifier) )))) ;) (break_statement "break;" break ;)) (case_statement "case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;" case number_literal : (expression_statement "iVar5 = FUN_001431de(pcVar6,&local_4c);" (assignment_expression "iVar5 = FUN_001431de(pcVar6,&local_4c)" identifier = (call_expression "FUN_001431de(pcVar6,&local_4c)" identifier (argument_list "(pcVar6,&local_4c)" ( identifier , (pointer_expression "&local_4c" & identifier) )))) ;) (expression_statement "pcVar6 = strtok((char *)0x0,", \t/-");" (assignment_expression "pcVar6 = strtok((char *)0x0,", \t/-")" identifier = (call_expression "strtok((char *)0x0,", \t/-")" identifier (argument_list "((char *)0x0,", \t/-")" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (string_literal "", \t/-"" " string_content escape_sequence string_content ") )))) ;) (if_statement "if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }" if (parenthesized_expression "((pcVar6 != (char *)0x0) && (iVar5 != 0))" ( (binary_expression "(pcVar6 != (char *)0x0) && (iVar5 != 0)" (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) ))) )) (compound_statement "{\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }" { (expression_statement "uVar4 = FUN_001431de(pcVar6,local_48);" (assignment_expression "uVar4 = FUN_001431de(pcVar6,local_48)" identifier = (call_expression "FUN_001431de(pcVar6,local_48)" identifier (argument_list "(pcVar6,local_48)" ( identifier , identifier )))) ;) (break_statement "break;" break ;) })) (goto_statement "goto LAB_00143552;" goto statement_identifier ;)) (case_statement "case 3:" case number_literal :) (case_statement "case 4:" case number_literal :) (case_statement "case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;" case number_literal : (labeled_statement "switchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);" statement_identifier : (expression_statement "sVar9 = strnlen(pcVar7,0xfe);" (assignment_expression "sVar9 = strnlen(pcVar7,0xfe)" identifier = (call_expression "strnlen(pcVar7,0xfe)" identifier (argument_list "(pcVar7,0xfe)" ( identifier , number_literal )))) ;)) (expression_statement "uVar10 = sVar9 & 0xffffffff;" (assignment_expression "uVar10 = sVar9 & 0xffffffff" identifier = (binary_expression "sVar9 & 0xffffffff" identifier & number_literal)) ;) (expression_statement "pcVar6 = pcVar7;" (assignment_expression "pcVar6 = pcVar7" identifier = identifier) ;) (if_statement "if (0 < (int)sVar9) goto LAB_00143566;" if (parenthesized_expression "(0 < (int)sVar9)" ( (binary_expression "0 < (int)sVar9" number_literal < (cast_expression "(int)sVar9" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_00143566;" goto statement_identifier ;)) (goto_statement "goto LAB_00143552;" goto statement_identifier ;)) (case_statement "case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;" case number_literal : (expression_statement "uVar2 = FUN_001101c1(pcVar6,0,0);" (assignment_expression "uVar2 = FUN_001101c1(pcVar6,0,0)" identifier = (call_expression "FUN_001101c1(pcVar6,0,0)" identifier (argument_list "(pcVar6,0,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "local_4c = CONCAT31(local_4c._1_3_,uVar2);" (assignment_expression "local_4c = CONCAT31(local_4c._1_3_,uVar2)" identifier = (call_expression "CONCAT31(local_4c._1_3_,uVar2)" identifier (argument_list "(local_4c._1_3_,uVar2)" ( (field_expression "local_4c._1_3_" identifier . field_identifier) , identifier )))) ;) (expression_statement "uVar4 = (uint)(*DAT_001c65c0 == 0);" (assignment_expression "uVar4 = (uint)(*DAT_001c65c0 == 0)" identifier = (call_expression "(uint)(*DAT_001c65c0 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*DAT_001c65c0 == 0)" ( (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" * identifier) == number_literal) )))) ;) (break_statement "break;" break ;)) (case_statement "case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;" case number_literal : (expression_statement "uVar3 = FUN_001101c1(pcVar6,0,0);" (assignment_expression "uVar3 = FUN_001101c1(pcVar6,0,0)" identifier = (call_expression "FUN_001101c1(pcVar6,0,0)" identifier (argument_list "(pcVar6,0,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);" (assignment_expression "local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8)" identifier = (call_expression "CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8)" identifier (argument_list "(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8)" ( (field_expression "local_4c._2_2_" identifier . field_identifier) , (binary_expression "uVar3 << 8 | uVar3 >> 8" (binary_expression "uVar3 << 8" identifier << number_literal) | (binary_expression "uVar3 >> 8" identifier >> number_literal)) )))) ;) (expression_statement "uVar4 = (uint)(*DAT_001c65c0 == 0);" (assignment_expression "uVar4 = (uint)(*DAT_001c65c0 == 0)" identifier = (call_expression "(uint)(*DAT_001c65c0 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*DAT_001c65c0 == 0)" ( (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" * identifier) == number_literal) )))) ;) (break_statement "break;" break ;)) (case_statement "case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;" case number_literal : (expression_statement "uVar4 = FUN_001101c1(pcVar6,0,0);" (assignment_expression "uVar4 = FUN_001101c1(pcVar6,0,0)" identifier = (call_expression "FUN_001101c1(pcVar6,0,0)" identifier (argument_list "(pcVar6,0,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;" (assignment_expression "local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18" identifier = (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8" (binary_expression "uVar4 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar4 & 0xff0000) >> 8" (parenthesized_expression "(uVar4 & 0xff0000)" ( (binary_expression "uVar4 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar4 & 0xff00) << 8" (parenthesized_expression "(uVar4 & 0xff00)" ( (binary_expression "uVar4 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar4 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar4 = (uint)(*DAT_001c65c0 == 0);" (assignment_expression "uVar4 = (uint)(*DAT_001c65c0 == 0)" identifier = (call_expression "(uint)(*DAT_001c65c0 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*DAT_001c65c0 == 0)" ( (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" * identifier) == number_literal) )))) ;) (break_statement "break;" break ;)) (case_statement "case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;" case number_literal : (expression_statement "uVar4 = FUN_00110265(pcVar6,0,0);" (assignment_expression "uVar4 = FUN_00110265(pcVar6,0,0)" identifier = (call_expression "FUN_00110265(pcVar6,0,0)" identifier (argument_list "(pcVar6,0,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;" (assignment_expression "local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18" identifier = (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8" (binary_expression "uVar4 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar4 & 0xff0000) >> 8" (parenthesized_expression "(uVar4 & 0xff0000)" ( (binary_expression "uVar4 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar4 & 0xff00) << 8" (parenthesized_expression "(uVar4 & 0xff00)" ( (binary_expression "uVar4 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar4 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar4 = (uint)(*DAT_001c65c0 == 0);" (assignment_expression "uVar4 = (uint)(*DAT_001c65c0 == 0)" identifier = (call_expression "(uint)(*DAT_001c65c0 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*DAT_001c65c0 == 0)" ( (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" * identifier) == number_literal) )))) ;) (break_statement "break;" break ;)) (case_statement "case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;" case number_literal : (expression_statement "cVar1 = *pcVar6;" (assignment_expression "cVar1 = *pcVar6" identifier = (pointer_expression "*pcVar6" * identifier)) ;) (if_statement "if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }" if (parenthesized_expression "((cVar1 == '\"') || (cVar1 == '\''))" ( (binary_expression "(cVar1 == '\"') || (cVar1 == '\'')" (parenthesized_expression "(cVar1 == '\"')" ( (binary_expression "cVar1 == '\"'" identifier == (char_literal "'\"'" ' escape_sequence ')) )) || (parenthesized_expression "(cVar1 == '\'')" ( (binary_expression "cVar1 == '\''" identifier == (char_literal "'\''" ' escape_sequence ')) ))) )) (compound_statement "{\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }" { (expression_statement "pcVar7 = pcVar6 + 1;" (assignment_expression "pcVar7 = pcVar6 + 1" identifier = (binary_expression "pcVar6 + 1" identifier + number_literal)) ;) (expression_statement "puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);" (assignment_expression "puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1)" identifier = (cast_expression "(undefined1 *)FUN_0010d637(pcVar7,cVar1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0010d637(pcVar7,cVar1)" identifier (argument_list "(pcVar7,cVar1)" ( identifier , identifier ))))) ;) (if_statement "if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }" if (parenthesized_expression "(puVar8 != (undefined1 *)0x0)" ( (binary_expression "puVar8 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }" { (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" * identifier) = number_literal) ;) (expression_statement "abStack_50[2] = 3;" (assignment_expression "abStack_50[2] = 3" (subscript_expression "abStack_50[2]" identifier [ number_literal ]) = number_literal) ;) (goto_statement "goto switchD_001432ff_caseD_3;" goto statement_identifier ;) })) })) (labeled_statement "LAB_00143566:\n        uVar4 = 1;" statement_identifier : (expression_statement "uVar4 = 1;" (assignment_expression "uVar4 = 1" identifier = number_literal) ;)) (goto_statement "goto LAB_00143345;" goto statement_identifier ;)) (case_statement "case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;" case number_literal : (expression_statement "pcVar7 = strchr(pcVar6,0x2f);" (assignment_expression "pcVar7 = strchr(pcVar6,0x2f)" identifier = (call_expression "strchr(pcVar6,0x2f)" identifier (argument_list "(pcVar6,0x2f)" ( identifier , number_literal )))) ;) (if_statement "if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }" if (parenthesized_expression "(pcVar7 != (char *)0x0)" ( (binary_expression "pcVar7 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }" { (expression_statement "*pcVar7 = '\0';" (assignment_expression "*pcVar7 = '\0'" (pointer_expression "*pcVar7" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);" (assignment_expression "iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1)" identifier = (call_expression "FUN_001431de(pcVar6,(long)&local_4c + 1)" identifier (argument_list "(pcVar6,(long)&local_4c + 1)" ( identifier , (binary_expression "(long)&local_4c + 1" (cast_expression "(long)&local_4c" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&local_4c" & identifier)) + number_literal) )))) ;) (expression_statement "uVar4 = FUN_001101c1(pcVar7 + 1,0,10);" (assignment_expression "uVar4 = FUN_001101c1(pcVar7 + 1,0,10)" identifier = (call_expression "FUN_001101c1(pcVar7 + 1,0,10)" identifier (argument_list "(pcVar7 + 1,0,10)" ( (binary_expression "pcVar7 + 1" identifier + number_literal) , number_literal , number_literal )))) ;) (expression_statement "local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);" (assignment_expression "local_4c = CONCAT31(local_4c._1_3_,(char)uVar4)" identifier = (call_expression "CONCAT31(local_4c._1_3_,(char)uVar4)" identifier (argument_list "(local_4c._1_3_,(char)uVar4)" ( (field_expression "local_4c._1_3_" identifier . field_identifier) , (cast_expression "(char)uVar4" ( (type_descriptor "char" primitive_type) ) identifier) )))) ;) (expression_statement "pcVar6 = strtok((char *)0x0,", \t/-");" (assignment_expression "pcVar6 = strtok((char *)0x0,", \t/-")" identifier = (call_expression "strtok((char *)0x0,", \t/-")" identifier (argument_list "((char *)0x0,", \t/-")" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (string_literal "", \t/-"" " string_content escape_sequence string_content ") )))) ;) (if_statement "if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }" if (parenthesized_expression "((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))" ( (binary_expression "(((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0)" (parenthesized_expression "(((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0))" ( (binary_expression "((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)" (parenthesized_expression "((pcVar6 != (char *)0x0) && (uVar4 < 0x21))" ( (binary_expression "(pcVar6 != (char *)0x0) && (uVar4 < 0x21)" (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(uVar4 < 0x21)" ( (binary_expression "uVar4 < 0x21" identifier < number_literal) ))) )) && (parenthesized_expression "(*DAT_001c65c0 == 0)" ( (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" * identifier) == number_literal) ))) )) && (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) ))) )) (compound_statement "{\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }" { (expression_statement "uVar4 = (uVar4 + 7 >> 3) + 5;" (assignment_expression "uVar4 = (uVar4 + 7 >> 3) + 5" identifier = (binary_expression "(uVar4 + 7 >> 3) + 5" (parenthesized_expression "(uVar4 + 7 >> 3)" ( (binary_expression "uVar4 + 7 >> 3" (binary_expression "uVar4 + 7" identifier + number_literal) >> number_literal) )) + number_literal)) ;) (expression_statement "uVar10 = (ulong)uVar4;" (assignment_expression "uVar10 = (ulong)uVar4" identifier = (cast_expression "(ulong)uVar4" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);" (assignment_expression "uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4)" identifier = (call_expression "FUN_001431de(pcVar6,abStack_50 + (int)uVar4)" identifier (argument_list "(pcVar6,abStack_50 + (int)uVar4)" ( identifier , (binary_expression "abStack_50 + (int)uVar4" identifier + (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (break_statement "break;" break ;) })) })) (goto_statement "goto LAB_00143552;" goto statement_identifier ;)) })) (expression_statement "pcVar6 = (char *)&local_4c;" (assignment_expression "pcVar6 = (char *)&local_4c" identifier = (cast_expression "(char *)&local_4c" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_4c" & identifier))) ;) (if_statement "if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }" if (parenthesized_expression "(uVar4 == 0)" ( (binary_expression "uVar4 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }" { (labeled_statement "LAB_00143552:\n        uVar4 = 0;" statement_identifier : (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;)) (break_statement "break;" break ;) })) (labeled_statement "LAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);" statement_identifier : (expression_statement "FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);" (call_expression "FUN_0014302a(param_2,pbVar11,pcVar6,uVar10)" identifier (argument_list "(param_2,pbVar11,pcVar6,uVar10)" ( identifier , identifier , identifier , identifier ))) ;)) }) while (parenthesized_expression "((*pbVar11 & 0x20) != 0)" ( (binary_expression "(*pbVar11 & 0x20) != 0" (parenthesized_expression "(*pbVar11 & 0x20)" ( (binary_expression "*pbVar11 & 0x20" (pointer_expression "*pbVar11" * identifier) & number_literal) )) != number_literal) )) ;) })) (if_statement "if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }" if (parenthesized_expression "(local_40 != *(long *)(in_FS_OFFSET + 0x28))" ( (binary_expression "local_40 != *(long *)(in_FS_OFFSET + 0x28)" identifier != (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }" { comment (expression_statement "__stack_chk_fail();" (call_expression "__stack_chk_fail()" identifier (argument_list "()" ( ))) ;) })) (return_statement "return uVar4;" return identifier ;) })))
(translation_unit "int udhcp_str2optset(char *const_str,void *arg,dhcp_optflag *optflags,char *option_strings)\n\n{\n  byte bVar1;\n  long lVar2;\n  ushort uVar3;\n  uint uVar4;\n  int iVar5;\n  char *pcVar6;\n  byte *s;\n  size_t sVar7;\n  byte *s_00;\n  uint length;\n  dhcp_optflag *optflag;\n  long in_FS_OFFSET;\n  uint8_t auStack_50 [2];\n  dhcp_optflag userdef_optflag;\n  char buffer [9];\n  \n  lVar2 = *(long *)(in_FS_OFFSET + 0x28);\n  pcVar6 = strtok(const_str," \t=:");\n  uVar4 = 0;\n  if (pcVar6 != (char *)0x0) {\n    uVar4 = bb_strtou(pcVar6,(char **)0x0,0);\n    if ((*bb_errno == 0) && (uVar4 < 0xff)) {\n      userdef_optflag.flags = '\t';\n      userdef_optflag.code = (uint8_t)uVar4;\n      optflag = &userdef_optflag;\n    }\n    else {\n      uVar4 = udhcp_option_idx(pcVar6,option_strings);\n      optflag = optflags + uVar4;\n    }\n    uVar4 = 0;\n    do {\n      if (optflag->flags == '\t') {\n        s = (byte *)strtok((char *)0x0,"");\n        trim((char *)s);\n      }\n      else {\n        s = (byte *)strtok((char *)0x0,", \t");\n      }\n      if (s == (byte *)0x0) break;\n      uVar4 = optflag->flags & 0xf;\n      length = (uint)(byte)dhcp_option_lengths[uVar4];\n      s_00 = s;\n      switch(uVar4) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = udhcp_str2nip((char *)s,buffer);\n        break;\n      case 2:\n        iVar5 = udhcp_str2nip((char *)s,buffer);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = udhcp_str2nip(pcVar6,buffer + 4);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar7 = strnlen((char *)s_00,0xfe);\n        length = (uint)sVar7;\n        s = s_00;\n        if (0 < (int)length) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer[0] = (char)uVar4;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 6:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        uVar3 = (ushort)uVar4 << 8 | (ushort)uVar4 >> 8;\n        buffer[0] = (char)uVar3;\n        buffer[1] = (char)(uVar3 >> 8);\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 7:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 8:\n        uVar4 = bb_strtoi((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 9:\n        bVar1 = *s;\n        if ((bVar1 == 0x22) || (bVar1 == 0x27)) {\n          s_00 = s + 1;\n          pcVar6 = last_char_is((char *)s_00,(uint)bVar1);\n          if (pcVar6 != (char *)0x0) {\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar6 = strchr((char *)s,0x2f);\n        if (pcVar6 != (char *)0x0) {\n          *pcVar6 = '\0';\n          iVar5 = udhcp_str2nip((char *)s,buffer + 1);\n          uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);\n          buffer[0] = (char)uVar4;\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      s = (byte *)buffer;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      attach_option((option_set **)arg,optflag,(char *)s,length);\n    } while ((optflag->flags & 0x20) != 0);\n  }\n  if (lVar2 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }\n  return uVar4;\n}\n\n" (function_definition "int udhcp_str2optset(char *const_str,void *arg,dhcp_optflag *optflags,char *option_strings)\n\n{\n  byte bVar1;\n  long lVar2;\n  ushort uVar3;\n  uint uVar4;\n  int iVar5;\n  char *pcVar6;\n  byte *s;\n  size_t sVar7;\n  byte *s_00;\n  uint length;\n  dhcp_optflag *optflag;\n  long in_FS_OFFSET;\n  uint8_t auStack_50 [2];\n  dhcp_optflag userdef_optflag;\n  char buffer [9];\n  \n  lVar2 = *(long *)(in_FS_OFFSET + 0x28);\n  pcVar6 = strtok(const_str," \t=:");\n  uVar4 = 0;\n  if (pcVar6 != (char *)0x0) {\n    uVar4 = bb_strtou(pcVar6,(char **)0x0,0);\n    if ((*bb_errno == 0) && (uVar4 < 0xff)) {\n      userdef_optflag.flags = '\t';\n      userdef_optflag.code = (uint8_t)uVar4;\n      optflag = &userdef_optflag;\n    }\n    else {\n      uVar4 = udhcp_option_idx(pcVar6,option_strings);\n      optflag = optflags + uVar4;\n    }\n    uVar4 = 0;\n    do {\n      if (optflag->flags == '\t') {\n        s = (byte *)strtok((char *)0x0,"");\n        trim((char *)s);\n      }\n      else {\n        s = (byte *)strtok((char *)0x0,", \t");\n      }\n      if (s == (byte *)0x0) break;\n      uVar4 = optflag->flags & 0xf;\n      length = (uint)(byte)dhcp_option_lengths[uVar4];\n      s_00 = s;\n      switch(uVar4) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = udhcp_str2nip((char *)s,buffer);\n        break;\n      case 2:\n        iVar5 = udhcp_str2nip((char *)s,buffer);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = udhcp_str2nip(pcVar6,buffer + 4);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar7 = strnlen((char *)s_00,0xfe);\n        length = (uint)sVar7;\n        s = s_00;\n        if (0 < (int)length) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer[0] = (char)uVar4;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 6:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        uVar3 = (ushort)uVar4 << 8 | (ushort)uVar4 >> 8;\n        buffer[0] = (char)uVar3;\n        buffer[1] = (char)(uVar3 >> 8);\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 7:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 8:\n        uVar4 = bb_strtoi((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 9:\n        bVar1 = *s;\n        if ((bVar1 == 0x22) || (bVar1 == 0x27)) {\n          s_00 = s + 1;\n          pcVar6 = last_char_is((char *)s_00,(uint)bVar1);\n          if (pcVar6 != (char *)0x0) {\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar6 = strchr((char *)s,0x2f);\n        if (pcVar6 != (char *)0x0) {\n          *pcVar6 = '\0';\n          iVar5 = udhcp_str2nip((char *)s,buffer + 1);\n          uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);\n          buffer[0] = (char)uVar4;\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      s = (byte *)buffer;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      attach_option((option_set **)arg,optflag,(char *)s,length);\n    } while ((optflag->flags & 0x20) != 0);\n  }\n  if (lVar2 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }\n  return uVar4;\n}" primitive_type (function_declarator "udhcp_str2optset(char *const_str,void *arg,dhcp_optflag *optflags,char *option_strings)" identifier (parameter_list "(char *const_str,void *arg,dhcp_optflag *optflags,char *option_strings)" ( (parameter_declaration "char *const_str" primitive_type (pointer_declarator "*const_str" * identifier)) , (parameter_declaration "void *arg" primitive_type (pointer_declarator "*arg" * identifier)) , (parameter_declaration "dhcp_optflag *optflags" type_identifier (pointer_declarator "*optflags" * identifier)) , (parameter_declaration "char *option_strings" primitive_type (pointer_declarator "*option_strings" * identifier)) ))) (compound_statement "{\n  byte bVar1;\n  long lVar2;\n  ushort uVar3;\n  uint uVar4;\n  int iVar5;\n  char *pcVar6;\n  byte *s;\n  size_t sVar7;\n  byte *s_00;\n  uint length;\n  dhcp_optflag *optflag;\n  long in_FS_OFFSET;\n  uint8_t auStack_50 [2];\n  dhcp_optflag userdef_optflag;\n  char buffer [9];\n  \n  lVar2 = *(long *)(in_FS_OFFSET + 0x28);\n  pcVar6 = strtok(const_str," \t=:");\n  uVar4 = 0;\n  if (pcVar6 != (char *)0x0) {\n    uVar4 = bb_strtou(pcVar6,(char **)0x0,0);\n    if ((*bb_errno == 0) && (uVar4 < 0xff)) {\n      userdef_optflag.flags = '\t';\n      userdef_optflag.code = (uint8_t)uVar4;\n      optflag = &userdef_optflag;\n    }\n    else {\n      uVar4 = udhcp_option_idx(pcVar6,option_strings);\n      optflag = optflags + uVar4;\n    }\n    uVar4 = 0;\n    do {\n      if (optflag->flags == '\t') {\n        s = (byte *)strtok((char *)0x0,"");\n        trim((char *)s);\n      }\n      else {\n        s = (byte *)strtok((char *)0x0,", \t");\n      }\n      if (s == (byte *)0x0) break;\n      uVar4 = optflag->flags & 0xf;\n      length = (uint)(byte)dhcp_option_lengths[uVar4];\n      s_00 = s;\n      switch(uVar4) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = udhcp_str2nip((char *)s,buffer);\n        break;\n      case 2:\n        iVar5 = udhcp_str2nip((char *)s,buffer);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = udhcp_str2nip(pcVar6,buffer + 4);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar7 = strnlen((char *)s_00,0xfe);\n        length = (uint)sVar7;\n        s = s_00;\n        if (0 < (int)length) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer[0] = (char)uVar4;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 6:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        uVar3 = (ushort)uVar4 << 8 | (ushort)uVar4 >> 8;\n        buffer[0] = (char)uVar3;\n        buffer[1] = (char)(uVar3 >> 8);\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 7:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 8:\n        uVar4 = bb_strtoi((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 9:\n        bVar1 = *s;\n        if ((bVar1 == 0x22) || (bVar1 == 0x27)) {\n          s_00 = s + 1;\n          pcVar6 = last_char_is((char *)s_00,(uint)bVar1);\n          if (pcVar6 != (char *)0x0) {\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar6 = strchr((char *)s,0x2f);\n        if (pcVar6 != (char *)0x0) {\n          *pcVar6 = '\0';\n          iVar5 = udhcp_str2nip((char *)s,buffer + 1);\n          uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);\n          buffer[0] = (char)uVar4;\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      s = (byte *)buffer;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      attach_option((option_set **)arg,optflag,(char *)s,length);\n    } while ((optflag->flags & 0x20) != 0);\n  }\n  if (lVar2 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }\n  return uVar4;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "ushort uVar3;" type_identifier identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "byte *s;" type_identifier (pointer_declarator "*s" * identifier) ;) (declaration "size_t sVar7;" primitive_type identifier ;) (declaration "byte *s_00;" type_identifier (pointer_declarator "*s_00" * identifier) ;) (declaration "uint length;" type_identifier identifier ;) (declaration "dhcp_optflag *optflag;" type_identifier (pointer_declarator "*optflag" * identifier) ;) (declaration "long in_FS_OFFSET;" (sized_type_specifier "long" long) identifier ;) (declaration "uint8_t auStack_50 [2];" primitive_type (array_declarator "auStack_50 [2]" identifier [ number_literal ]) ;) (declaration "dhcp_optflag userdef_optflag;" type_identifier identifier ;) (declaration "char buffer [9];" primitive_type (array_declarator "buffer [9]" identifier [ number_literal ]) ;) (expression_statement "lVar2 = *(long *)(in_FS_OFFSET + 0x28);" (assignment_expression "lVar2 = *(long *)(in_FS_OFFSET + 0x28)" identifier = (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) ;) (expression_statement "pcVar6 = strtok(const_str," \t=:");" (assignment_expression "pcVar6 = strtok(const_str," \t=:")" identifier = (call_expression "strtok(const_str," \t=:")" identifier (argument_list "(const_str," \t=:")" ( identifier , (string_literal "" \t=:"" " string_content escape_sequence string_content ") )))) ;) (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;) (if_statement "if (pcVar6 != (char *)0x0) {\n    uVar4 = bb_strtou(pcVar6,(char **)0x0,0);\n    if ((*bb_errno == 0) && (uVar4 < 0xff)) {\n      userdef_optflag.flags = '\t';\n      userdef_optflag.code = (uint8_t)uVar4;\n      optflag = &userdef_optflag;\n    }\n    else {\n      uVar4 = udhcp_option_idx(pcVar6,option_strings);\n      optflag = optflags + uVar4;\n    }\n    uVar4 = 0;\n    do {\n      if (optflag->flags == '\t') {\n        s = (byte *)strtok((char *)0x0,"");\n        trim((char *)s);\n      }\n      else {\n        s = (byte *)strtok((char *)0x0,", \t");\n      }\n      if (s == (byte *)0x0) break;\n      uVar4 = optflag->flags & 0xf;\n      length = (uint)(byte)dhcp_option_lengths[uVar4];\n      s_00 = s;\n      switch(uVar4) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = udhcp_str2nip((char *)s,buffer);\n        break;\n      case 2:\n        iVar5 = udhcp_str2nip((char *)s,buffer);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = udhcp_str2nip(pcVar6,buffer + 4);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar7 = strnlen((char *)s_00,0xfe);\n        length = (uint)sVar7;\n        s = s_00;\n        if (0 < (int)length) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer[0] = (char)uVar4;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 6:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        uVar3 = (ushort)uVar4 << 8 | (ushort)uVar4 >> 8;\n        buffer[0] = (char)uVar3;\n        buffer[1] = (char)(uVar3 >> 8);\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 7:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 8:\n        uVar4 = bb_strtoi((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 9:\n        bVar1 = *s;\n        if ((bVar1 == 0x22) || (bVar1 == 0x27)) {\n          s_00 = s + 1;\n          pcVar6 = last_char_is((char *)s_00,(uint)bVar1);\n          if (pcVar6 != (char *)0x0) {\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar6 = strchr((char *)s,0x2f);\n        if (pcVar6 != (char *)0x0) {\n          *pcVar6 = '\0';\n          iVar5 = udhcp_str2nip((char *)s,buffer + 1);\n          uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);\n          buffer[0] = (char)uVar4;\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      s = (byte *)buffer;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      attach_option((option_set **)arg,optflag,(char *)s,length);\n    } while ((optflag->flags & 0x20) != 0);\n  }" if (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    uVar4 = bb_strtou(pcVar6,(char **)0x0,0);\n    if ((*bb_errno == 0) && (uVar4 < 0xff)) {\n      userdef_optflag.flags = '\t';\n      userdef_optflag.code = (uint8_t)uVar4;\n      optflag = &userdef_optflag;\n    }\n    else {\n      uVar4 = udhcp_option_idx(pcVar6,option_strings);\n      optflag = optflags + uVar4;\n    }\n    uVar4 = 0;\n    do {\n      if (optflag->flags == '\t') {\n        s = (byte *)strtok((char *)0x0,"");\n        trim((char *)s);\n      }\n      else {\n        s = (byte *)strtok((char *)0x0,", \t");\n      }\n      if (s == (byte *)0x0) break;\n      uVar4 = optflag->flags & 0xf;\n      length = (uint)(byte)dhcp_option_lengths[uVar4];\n      s_00 = s;\n      switch(uVar4) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = udhcp_str2nip((char *)s,buffer);\n        break;\n      case 2:\n        iVar5 = udhcp_str2nip((char *)s,buffer);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = udhcp_str2nip(pcVar6,buffer + 4);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar7 = strnlen((char *)s_00,0xfe);\n        length = (uint)sVar7;\n        s = s_00;\n        if (0 < (int)length) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer[0] = (char)uVar4;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 6:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        uVar3 = (ushort)uVar4 << 8 | (ushort)uVar4 >> 8;\n        buffer[0] = (char)uVar3;\n        buffer[1] = (char)(uVar3 >> 8);\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 7:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 8:\n        uVar4 = bb_strtoi((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 9:\n        bVar1 = *s;\n        if ((bVar1 == 0x22) || (bVar1 == 0x27)) {\n          s_00 = s + 1;\n          pcVar6 = last_char_is((char *)s_00,(uint)bVar1);\n          if (pcVar6 != (char *)0x0) {\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar6 = strchr((char *)s,0x2f);\n        if (pcVar6 != (char *)0x0) {\n          *pcVar6 = '\0';\n          iVar5 = udhcp_str2nip((char *)s,buffer + 1);\n          uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);\n          buffer[0] = (char)uVar4;\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      s = (byte *)buffer;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      attach_option((option_set **)arg,optflag,(char *)s,length);\n    } while ((optflag->flags & 0x20) != 0);\n  }" { (expression_statement "uVar4 = bb_strtou(pcVar6,(char **)0x0,0);" (assignment_expression "uVar4 = bb_strtou(pcVar6,(char **)0x0,0)" identifier = (call_expression "bb_strtou(pcVar6,(char **)0x0,0)" identifier (argument_list "(pcVar6,(char **)0x0,0)" ( identifier , (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal) , number_literal )))) ;) (if_statement "if ((*bb_errno == 0) && (uVar4 < 0xff)) {\n      userdef_optflag.flags = '\t';\n      userdef_optflag.code = (uint8_t)uVar4;\n      optflag = &userdef_optflag;\n    }\n    else {\n      uVar4 = udhcp_option_idx(pcVar6,option_strings);\n      optflag = optflags + uVar4;\n    }" if (parenthesized_expression "((*bb_errno == 0) && (uVar4 < 0xff))" ( (binary_expression "(*bb_errno == 0) && (uVar4 < 0xff)" (parenthesized_expression "(*bb_errno == 0)" ( (binary_expression "*bb_errno == 0" (pointer_expression "*bb_errno" * identifier) == number_literal) )) && (parenthesized_expression "(uVar4 < 0xff)" ( (binary_expression "uVar4 < 0xff" identifier < number_literal) ))) )) (compound_statement "{\n      userdef_optflag.flags = '\t';\n      userdef_optflag.code = (uint8_t)uVar4;\n      optflag = &userdef_optflag;\n    }" { (expression_statement "userdef_optflag.flags = '\t';" (assignment_expression "userdef_optflag.flags = '\t'" (field_expression "userdef_optflag.flags" identifier . field_identifier) = (char_literal "'\t'" ' escape_sequence ')) ;) (expression_statement "userdef_optflag.code = (uint8_t)uVar4;" (assignment_expression "userdef_optflag.code = (uint8_t)uVar4" (field_expression "userdef_optflag.code" identifier . field_identifier) = (cast_expression "(uint8_t)uVar4" ( (type_descriptor "uint8_t" primitive_type) ) identifier)) ;) (expression_statement "optflag = &userdef_optflag;" (assignment_expression "optflag = &userdef_optflag" identifier = (pointer_expression "&userdef_optflag" & identifier)) ;) }) (else_clause "else {\n      uVar4 = udhcp_option_idx(pcVar6,option_strings);\n      optflag = optflags + uVar4;\n    }" else (compound_statement "{\n      uVar4 = udhcp_option_idx(pcVar6,option_strings);\n      optflag = optflags + uVar4;\n    }" { (expression_statement "uVar4 = udhcp_option_idx(pcVar6,option_strings);" (assignment_expression "uVar4 = udhcp_option_idx(pcVar6,option_strings)" identifier = (call_expression "udhcp_option_idx(pcVar6,option_strings)" identifier (argument_list "(pcVar6,option_strings)" ( identifier , identifier )))) ;) (expression_statement "optflag = optflags + uVar4;" (assignment_expression "optflag = optflags + uVar4" identifier = (binary_expression "optflags + uVar4" identifier + identifier)) ;) }))) (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;) (do_statement "do {\n      if (optflag->flags == '\t') {\n        s = (byte *)strtok((char *)0x0,"");\n        trim((char *)s);\n      }\n      else {\n        s = (byte *)strtok((char *)0x0,", \t");\n      }\n      if (s == (byte *)0x0) break;\n      uVar4 = optflag->flags & 0xf;\n      length = (uint)(byte)dhcp_option_lengths[uVar4];\n      s_00 = s;\n      switch(uVar4) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = udhcp_str2nip((char *)s,buffer);\n        break;\n      case 2:\n        iVar5 = udhcp_str2nip((char *)s,buffer);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = udhcp_str2nip(pcVar6,buffer + 4);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar7 = strnlen((char *)s_00,0xfe);\n        length = (uint)sVar7;\n        s = s_00;\n        if (0 < (int)length) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer[0] = (char)uVar4;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 6:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        uVar3 = (ushort)uVar4 << 8 | (ushort)uVar4 >> 8;\n        buffer[0] = (char)uVar3;\n        buffer[1] = (char)(uVar3 >> 8);\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 7:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 8:\n        uVar4 = bb_strtoi((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 9:\n        bVar1 = *s;\n        if ((bVar1 == 0x22) || (bVar1 == 0x27)) {\n          s_00 = s + 1;\n          pcVar6 = last_char_is((char *)s_00,(uint)bVar1);\n          if (pcVar6 != (char *)0x0) {\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar6 = strchr((char *)s,0x2f);\n        if (pcVar6 != (char *)0x0) {\n          *pcVar6 = '\0';\n          iVar5 = udhcp_str2nip((char *)s,buffer + 1);\n          uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);\n          buffer[0] = (char)uVar4;\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      s = (byte *)buffer;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      attach_option((option_set **)arg,optflag,(char *)s,length);\n    } while ((optflag->flags & 0x20) != 0);" do (compound_statement "{\n      if (optflag->flags == '\t') {\n        s = (byte *)strtok((char *)0x0,"");\n        trim((char *)s);\n      }\n      else {\n        s = (byte *)strtok((char *)0x0,", \t");\n      }\n      if (s == (byte *)0x0) break;\n      uVar4 = optflag->flags & 0xf;\n      length = (uint)(byte)dhcp_option_lengths[uVar4];\n      s_00 = s;\n      switch(uVar4) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = udhcp_str2nip((char *)s,buffer);\n        break;\n      case 2:\n        iVar5 = udhcp_str2nip((char *)s,buffer);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = udhcp_str2nip(pcVar6,buffer + 4);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar7 = strnlen((char *)s_00,0xfe);\n        length = (uint)sVar7;\n        s = s_00;\n        if (0 < (int)length) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer[0] = (char)uVar4;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 6:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        uVar3 = (ushort)uVar4 << 8 | (ushort)uVar4 >> 8;\n        buffer[0] = (char)uVar3;\n        buffer[1] = (char)(uVar3 >> 8);\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 7:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 8:\n        uVar4 = bb_strtoi((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 9:\n        bVar1 = *s;\n        if ((bVar1 == 0x22) || (bVar1 == 0x27)) {\n          s_00 = s + 1;\n          pcVar6 = last_char_is((char *)s_00,(uint)bVar1);\n          if (pcVar6 != (char *)0x0) {\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar6 = strchr((char *)s,0x2f);\n        if (pcVar6 != (char *)0x0) {\n          *pcVar6 = '\0';\n          iVar5 = udhcp_str2nip((char *)s,buffer + 1);\n          uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);\n          buffer[0] = (char)uVar4;\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      s = (byte *)buffer;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      attach_option((option_set **)arg,optflag,(char *)s,length);\n    }" { (if_statement "if (optflag->flags == '\t') {\n        s = (byte *)strtok((char *)0x0,"");\n        trim((char *)s);\n      }\n      else {\n        s = (byte *)strtok((char *)0x0,", \t");\n      }" if (parenthesized_expression "(optflag->flags == '\t')" ( (binary_expression "optflag->flags == '\t'" (field_expression "optflag->flags" identifier -> field_identifier) == (char_literal "'\t'" ' escape_sequence ')) )) (compound_statement "{\n        s = (byte *)strtok((char *)0x0,"");\n        trim((char *)s);\n      }" { (expression_statement "s = (byte *)strtok((char *)0x0,"");" (assignment_expression "s = (byte *)strtok((char *)0x0,"")" identifier = (cast_expression "(byte *)strtok((char *)0x0,"")" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "strtok((char *)0x0,"")" identifier (argument_list "((char *)0x0,"")" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (string_literal """" " ") ))))) ;) (expression_statement "trim((char *)s);" (call_expression "trim((char *)s)" identifier (argument_list "((char *)s)" ( (cast_expression "(char *)s" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) }) (else_clause "else {\n        s = (byte *)strtok((char *)0x0,", \t");\n      }" else (compound_statement "{\n        s = (byte *)strtok((char *)0x0,", \t");\n      }" { (expression_statement "s = (byte *)strtok((char *)0x0,", \t");" (assignment_expression "s = (byte *)strtok((char *)0x0,", \t")" identifier = (cast_expression "(byte *)strtok((char *)0x0,", \t")" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "strtok((char *)0x0,", \t")" identifier (argument_list "((char *)0x0,", \t")" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (string_literal "", \t"" " string_content escape_sequence ") ))))) ;) }))) (if_statement "if (s == (byte *)0x0) break;" if (parenthesized_expression "(s == (byte *)0x0)" ( (binary_expression "s == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "uVar4 = optflag->flags & 0xf;" (assignment_expression "uVar4 = optflag->flags & 0xf" identifier = (binary_expression "optflag->flags & 0xf" (field_expression "optflag->flags" identifier -> field_identifier) & number_literal)) ;) (expression_statement "length = (uint)(byte)dhcp_option_lengths[uVar4];" (assignment_expression "length = (uint)(byte)dhcp_option_lengths[uVar4]" identifier = (cast_expression "(uint)(byte)dhcp_option_lengths[uVar4]" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)dhcp_option_lengths[uVar4]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "dhcp_option_lengths[uVar4]" identifier [ identifier ])))) ;) (expression_statement "s_00 = s;" (assignment_expression "s_00 = s" identifier = identifier) ;) (switch_statement "switch(uVar4) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = udhcp_str2nip((char *)s,buffer);\n        break;\n      case 2:\n        iVar5 = udhcp_str2nip((char *)s,buffer);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = udhcp_str2nip(pcVar6,buffer + 4);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar7 = strnlen((char *)s_00,0xfe);\n        length = (uint)sVar7;\n        s = s_00;\n        if (0 < (int)length) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer[0] = (char)uVar4;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 6:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        uVar3 = (ushort)uVar4 << 8 | (ushort)uVar4 >> 8;\n        buffer[0] = (char)uVar3;\n        buffer[1] = (char)(uVar3 >> 8);\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 7:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 8:\n        uVar4 = bb_strtoi((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 9:\n        bVar1 = *s;\n        if ((bVar1 == 0x22) || (bVar1 == 0x27)) {\n          s_00 = s + 1;\n          pcVar6 = last_char_is((char *)s_00,(uint)bVar1);\n          if (pcVar6 != (char *)0x0) {\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar6 = strchr((char *)s,0x2f);\n        if (pcVar6 != (char *)0x0) {\n          *pcVar6 = '\0';\n          iVar5 = udhcp_str2nip((char *)s,buffer + 1);\n          uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);\n          buffer[0] = (char)uVar4;\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }" switch (parenthesized_expression "(uVar4)" ( identifier )) (compound_statement "{\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = udhcp_str2nip((char *)s,buffer);\n        break;\n      case 2:\n        iVar5 = udhcp_str2nip((char *)s,buffer);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = udhcp_str2nip(pcVar6,buffer + 4);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar7 = strnlen((char *)s_00,0xfe);\n        length = (uint)sVar7;\n        s = s_00;\n        if (0 < (int)length) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer[0] = (char)uVar4;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 6:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        uVar3 = (ushort)uVar4 << 8 | (ushort)uVar4 >> 8;\n        buffer[0] = (char)uVar3;\n        buffer[1] = (char)(uVar3 >> 8);\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 7:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 8:\n        uVar4 = bb_strtoi((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;\n      case 9:\n        bVar1 = *s;\n        if ((bVar1 == 0x22) || (bVar1 == 0x27)) {\n          s_00 = s + 1;\n          pcVar6 = last_char_is((char *)s_00,(uint)bVar1);\n          if (pcVar6 != (char *)0x0) {\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar6 = strchr((char *)s,0x2f);\n        if (pcVar6 != (char *)0x0) {\n          *pcVar6 = '\0';\n          iVar5 = udhcp_str2nip((char *)s,buffer + 1);\n          uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);\n          buffer[0] = (char)uVar4;\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }" { (case_statement "default:\n        uVar4 = 0;\n        break;" default : (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case 1:\n        uVar4 = udhcp_str2nip((char *)s,buffer);\n        break;" case number_literal : (expression_statement "uVar4 = udhcp_str2nip((char *)s,buffer);" (assignment_expression "uVar4 = udhcp_str2nip((char *)s,buffer)" identifier = (call_expression "udhcp_str2nip((char *)s,buffer)" identifier (argument_list "((char *)s,buffer)" ( (cast_expression "(char *)s" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (break_statement "break;" break ;)) (case_statement "case 2:\n        iVar5 = udhcp_str2nip((char *)s,buffer);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = udhcp_str2nip(pcVar6,buffer + 4);\n          break;\n        }\n        goto LAB_00143552;" case number_literal : (expression_statement "iVar5 = udhcp_str2nip((char *)s,buffer);" (assignment_expression "iVar5 = udhcp_str2nip((char *)s,buffer)" identifier = (call_expression "udhcp_str2nip((char *)s,buffer)" identifier (argument_list "((char *)s,buffer)" ( (cast_expression "(char *)s" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (expression_statement "pcVar6 = strtok((char *)0x0,", \t/-");" (assignment_expression "pcVar6 = strtok((char *)0x0,", \t/-")" identifier = (call_expression "strtok((char *)0x0,", \t/-")" identifier (argument_list "((char *)0x0,", \t/-")" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (string_literal "", \t/-"" " string_content escape_sequence string_content ") )))) ;) (if_statement "if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = udhcp_str2nip(pcVar6,buffer + 4);\n          break;\n        }" if (parenthesized_expression "((pcVar6 != (char *)0x0) && (iVar5 != 0))" ( (binary_expression "(pcVar6 != (char *)0x0) && (iVar5 != 0)" (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) ))) )) (compound_statement "{\n          uVar4 = udhcp_str2nip(pcVar6,buffer + 4);\n          break;\n        }" { (expression_statement "uVar4 = udhcp_str2nip(pcVar6,buffer + 4);" (assignment_expression "uVar4 = udhcp_str2nip(pcVar6,buffer + 4)" identifier = (call_expression "udhcp_str2nip(pcVar6,buffer + 4)" identifier (argument_list "(pcVar6,buffer + 4)" ( identifier , (binary_expression "buffer + 4" identifier + number_literal) )))) ;) (break_statement "break;" break ;) })) (goto_statement "goto LAB_00143552;" goto statement_identifier ;)) (case_statement "case 3:" case number_literal :) (case_statement "case 4:" case number_literal :) (case_statement "case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar7 = strnlen((char *)s_00,0xfe);\n        length = (uint)sVar7;\n        s = s_00;\n        if (0 < (int)length) goto LAB_00143566;\n        goto LAB_00143552;" case number_literal : (labeled_statement "switchD_001432ff_caseD_3:\n        sVar7 = strnlen((char *)s_00,0xfe);" statement_identifier : (expression_statement "sVar7 = strnlen((char *)s_00,0xfe);" (assignment_expression "sVar7 = strnlen((char *)s_00,0xfe)" identifier = (call_expression "strnlen((char *)s_00,0xfe)" identifier (argument_list "((char *)s_00,0xfe)" ( (cast_expression "(char *)s_00" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , number_literal )))) ;)) (expression_statement "length = (uint)sVar7;" (assignment_expression "length = (uint)sVar7" identifier = (cast_expression "(uint)sVar7" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "s = s_00;" (assignment_expression "s = s_00" identifier = identifier) ;) (if_statement "if (0 < (int)length) goto LAB_00143566;" if (parenthesized_expression "(0 < (int)length)" ( (binary_expression "0 < (int)length" number_literal < (cast_expression "(int)length" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_00143566;" goto statement_identifier ;)) (goto_statement "goto LAB_00143552;" goto statement_identifier ;)) (case_statement "case 5:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer[0] = (char)uVar4;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;" case number_literal : (expression_statement "uVar4 = bb_strtou((char *)s,(char **)0x0,0);" (assignment_expression "uVar4 = bb_strtou((char *)s,(char **)0x0,0)" identifier = (call_expression "bb_strtou((char *)s,(char **)0x0,0)" identifier (argument_list "((char *)s,(char **)0x0,0)" ( (cast_expression "(char *)s" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal) , number_literal )))) ;) (expression_statement "buffer[0] = (char)uVar4;" (assignment_expression "buffer[0] = (char)uVar4" (subscript_expression "buffer[0]" identifier [ number_literal ]) = (cast_expression "(char)uVar4" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "uVar4 = (uint)(*bb_errno == 0);" (assignment_expression "uVar4 = (uint)(*bb_errno == 0)" identifier = (call_expression "(uint)(*bb_errno == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*bb_errno == 0)" ( (binary_expression "*bb_errno == 0" (pointer_expression "*bb_errno" * identifier) == number_literal) )))) ;) (break_statement "break;" break ;)) (case_statement "case 6:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        uVar3 = (ushort)uVar4 << 8 | (ushort)uVar4 >> 8;\n        buffer[0] = (char)uVar3;\n        buffer[1] = (char)(uVar3 >> 8);\n        uVar4 = (uint)(*bb_errno == 0);\n        break;" case number_literal : (expression_statement "uVar4 = bb_strtou((char *)s,(char **)0x0,0);" (assignment_expression "uVar4 = bb_strtou((char *)s,(char **)0x0,0)" identifier = (call_expression "bb_strtou((char *)s,(char **)0x0,0)" identifier (argument_list "((char *)s,(char **)0x0,0)" ( (cast_expression "(char *)s" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal) , number_literal )))) ;) (expression_statement "uVar3 = (ushort)uVar4 << 8 | (ushort)uVar4 >> 8;" (assignment_expression "uVar3 = (ushort)uVar4 << 8 | (ushort)uVar4 >> 8" identifier = (binary_expression "(ushort)uVar4 << 8 | (ushort)uVar4 >> 8" (binary_expression "(ushort)uVar4 << 8" (cast_expression "(ushort)uVar4" ( (type_descriptor "ushort" type_identifier) ) identifier) << number_literal) | (binary_expression "(ushort)uVar4 >> 8" (cast_expression "(ushort)uVar4" ( (type_descriptor "ushort" type_identifier) ) identifier) >> number_literal))) ;) (expression_statement "buffer[0] = (char)uVar3;" (assignment_expression "buffer[0] = (char)uVar3" (subscript_expression "buffer[0]" identifier [ number_literal ]) = (cast_expression "(char)uVar3" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "buffer[1] = (char)(uVar3 >> 8);" (assignment_expression "buffer[1] = (char)(uVar3 >> 8)" (subscript_expression "buffer[1]" identifier [ number_literal ]) = (cast_expression "(char)(uVar3 >> 8)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(uVar3 >> 8)" ( (binary_expression "uVar3 >> 8" identifier >> number_literal) )))) ;) (expression_statement "uVar4 = (uint)(*bb_errno == 0);" (assignment_expression "uVar4 = (uint)(*bb_errno == 0)" identifier = (call_expression "(uint)(*bb_errno == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*bb_errno == 0)" ( (binary_expression "*bb_errno == 0" (pointer_expression "*bb_errno" * identifier) == number_literal) )))) ;) (break_statement "break;" break ;)) (case_statement "case 7:\n        uVar4 = bb_strtou((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;" case number_literal : (expression_statement "uVar4 = bb_strtou((char *)s,(char **)0x0,0);" (assignment_expression "uVar4 = bb_strtou((char *)s,(char **)0x0,0)" identifier = (call_expression "bb_strtou((char *)s,(char **)0x0,0)" identifier (argument_list "((char *)s,(char **)0x0,0)" ( (cast_expression "(char *)s" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal) , number_literal )))) ;) (expression_statement "buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;" (assignment_expression "buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18" (field_expression "buffer._0_4_" identifier . field_identifier) = (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8" (binary_expression "uVar4 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar4 & 0xff0000) >> 8" (parenthesized_expression "(uVar4 & 0xff0000)" ( (binary_expression "uVar4 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar4 & 0xff00) << 8" (parenthesized_expression "(uVar4 & 0xff00)" ( (binary_expression "uVar4 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar4 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar4 = (uint)(*bb_errno == 0);" (assignment_expression "uVar4 = (uint)(*bb_errno == 0)" identifier = (call_expression "(uint)(*bb_errno == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*bb_errno == 0)" ( (binary_expression "*bb_errno == 0" (pointer_expression "*bb_errno" * identifier) == number_literal) )))) ;) (break_statement "break;" break ;)) (case_statement "case 8:\n        uVar4 = bb_strtoi((char *)s,(char **)0x0,0);\n        buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;\n        uVar4 = (uint)(*bb_errno == 0);\n        break;" case number_literal : (expression_statement "uVar4 = bb_strtoi((char *)s,(char **)0x0,0);" (assignment_expression "uVar4 = bb_strtoi((char *)s,(char **)0x0,0)" identifier = (call_expression "bb_strtoi((char *)s,(char **)0x0,0)" identifier (argument_list "((char *)s,(char **)0x0,0)" ( (cast_expression "(char *)s" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal) , number_literal )))) ;) (expression_statement "buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18;" (assignment_expression "buffer._0_4_ = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18" (field_expression "buffer._0_4_" identifier . field_identifier) = (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 |\n                       uVar4 << 0x18" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8" (binary_expression "uVar4 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar4 & 0xff0000) >> 8" (parenthesized_expression "(uVar4 & 0xff0000)" ( (binary_expression "uVar4 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar4 & 0xff00) << 8" (parenthesized_expression "(uVar4 & 0xff00)" ( (binary_expression "uVar4 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar4 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar4 = (uint)(*bb_errno == 0);" (assignment_expression "uVar4 = (uint)(*bb_errno == 0)" identifier = (call_expression "(uint)(*bb_errno == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*bb_errno == 0)" ( (binary_expression "*bb_errno == 0" (pointer_expression "*bb_errno" * identifier) == number_literal) )))) ;) (break_statement "break;" break ;)) (case_statement "case 9:\n        bVar1 = *s;\n        if ((bVar1 == 0x22) || (bVar1 == 0x27)) {\n          s_00 = s + 1;\n          pcVar6 = last_char_is((char *)s_00,(uint)bVar1);\n          if (pcVar6 != (char *)0x0) {\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;" case number_literal : (expression_statement "bVar1 = *s;" (assignment_expression "bVar1 = *s" identifier = (pointer_expression "*s" * identifier)) ;) (if_statement "if ((bVar1 == 0x22) || (bVar1 == 0x27)) {\n          s_00 = s + 1;\n          pcVar6 = last_char_is((char *)s_00,(uint)bVar1);\n          if (pcVar6 != (char *)0x0) {\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }\n        }" if (parenthesized_expression "((bVar1 == 0x22) || (bVar1 == 0x27))" ( (binary_expression "(bVar1 == 0x22) || (bVar1 == 0x27)" (parenthesized_expression "(bVar1 == 0x22)" ( (binary_expression "bVar1 == 0x22" identifier == number_literal) )) || (parenthesized_expression "(bVar1 == 0x27)" ( (binary_expression "bVar1 == 0x27" identifier == number_literal) ))) )) (compound_statement "{\n          s_00 = s + 1;\n          pcVar6 = last_char_is((char *)s_00,(uint)bVar1);\n          if (pcVar6 != (char *)0x0) {\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }\n        }" { (expression_statement "s_00 = s + 1;" (assignment_expression "s_00 = s + 1" identifier = (binary_expression "s + 1" identifier + number_literal)) ;) (expression_statement "pcVar6 = last_char_is((char *)s_00,(uint)bVar1);" (assignment_expression "pcVar6 = last_char_is((char *)s_00,(uint)bVar1)" identifier = (call_expression "last_char_is((char *)s_00,(uint)bVar1)" identifier (argument_list "((char *)s_00,(uint)bVar1)" ( (cast_expression "(char *)s_00" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uint)bVar1" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (if_statement "if (pcVar6 != (char *)0x0) {\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }" if (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            *pcVar6 = '\0';\n            userdef_optflag.flags = '\x03';\n            goto switchD_001432ff_caseD_3;\n          }" { (expression_statement "*pcVar6 = '\0';" (assignment_expression "*pcVar6 = '\0'" (pointer_expression "*pcVar6" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "userdef_optflag.flags = '\x03';" (assignment_expression "userdef_optflag.flags = '\x03'" (field_expression "userdef_optflag.flags" identifier . field_identifier) = (char_literal "'\x03'" ' escape_sequence ')) ;) (goto_statement "goto switchD_001432ff_caseD_3;" goto statement_identifier ;) })) })) (labeled_statement "LAB_00143566:\n        uVar4 = 1;" statement_identifier : (expression_statement "uVar4 = 1;" (assignment_expression "uVar4 = 1" identifier = number_literal) ;)) (goto_statement "goto LAB_00143345;" goto statement_identifier ;)) (case_statement "case 10:\n        pcVar6 = strchr((char *)s,0x2f);\n        if (pcVar6 != (char *)0x0) {\n          *pcVar6 = '\0';\n          iVar5 = udhcp_str2nip((char *)s,buffer + 1);\n          uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);\n          buffer[0] = (char)uVar4;\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }\n        }\n        goto LAB_00143552;" case number_literal : (expression_statement "pcVar6 = strchr((char *)s,0x2f);" (assignment_expression "pcVar6 = strchr((char *)s,0x2f)" identifier = (call_expression "strchr((char *)s,0x2f)" identifier (argument_list "((char *)s,0x2f)" ( (cast_expression "(char *)s" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , number_literal )))) ;) (if_statement "if (pcVar6 != (char *)0x0) {\n          *pcVar6 = '\0';\n          iVar5 = udhcp_str2nip((char *)s,buffer + 1);\n          uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);\n          buffer[0] = (char)uVar4;\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }\n        }" if (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          *pcVar6 = '\0';\n          iVar5 = udhcp_str2nip((char *)s,buffer + 1);\n          uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);\n          buffer[0] = (char)uVar4;\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }\n        }" { (expression_statement "*pcVar6 = '\0';" (assignment_expression "*pcVar6 = '\0'" (pointer_expression "*pcVar6" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "iVar5 = udhcp_str2nip((char *)s,buffer + 1);" (assignment_expression "iVar5 = udhcp_str2nip((char *)s,buffer + 1)" identifier = (call_expression "udhcp_str2nip((char *)s,buffer + 1)" identifier (argument_list "((char *)s,buffer + 1)" ( (cast_expression "(char *)s" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "buffer + 1" identifier + number_literal) )))) ;) (expression_statement "uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10);" (assignment_expression "uVar4 = bb_strtou(pcVar6 + 1,(char **)0x0,10)" identifier = (call_expression "bb_strtou(pcVar6 + 1,(char **)0x0,10)" identifier (argument_list "(pcVar6 + 1,(char **)0x0,10)" ( (binary_expression "pcVar6 + 1" identifier + number_literal) , (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal) , number_literal )))) ;) (expression_statement "buffer[0] = (char)uVar4;" (assignment_expression "buffer[0] = (char)uVar4" (subscript_expression "buffer[0]" identifier [ number_literal ]) = (cast_expression "(char)uVar4" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "pcVar6 = strtok((char *)0x0,", \t/-");" (assignment_expression "pcVar6 = strtok((char *)0x0,", \t/-")" identifier = (call_expression "strtok((char *)0x0,", \t/-")" identifier (argument_list "((char *)0x0,", \t/-")" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (string_literal "", \t/-"" " string_content escape_sequence string_content ") )))) ;) (if_statement "if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)) {\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }" if (parenthesized_expression "((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0))" ( (binary_expression "(((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)) && (iVar5 != 0)" (parenthesized_expression "(((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0))" ( (binary_expression "((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*bb_errno == 0)" (parenthesized_expression "((pcVar6 != (char *)0x0) && (uVar4 < 0x21))" ( (binary_expression "(pcVar6 != (char *)0x0) && (uVar4 < 0x21)" (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(uVar4 < 0x21)" ( (binary_expression "uVar4 < 0x21" identifier < number_literal) ))) )) && (parenthesized_expression "(*bb_errno == 0)" ( (binary_expression "*bb_errno == 0" (pointer_expression "*bb_errno" * identifier) == number_literal) ))) )) && (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) ))) )) (compound_statement "{\n            length = (uVar4 + 7 >> 3) + 5;\n            uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);\n            break;\n          }" { (expression_statement "length = (uVar4 + 7 >> 3) + 5;" (assignment_expression "length = (uVar4 + 7 >> 3) + 5" identifier = (binary_expression "(uVar4 + 7 >> 3) + 5" (parenthesized_expression "(uVar4 + 7 >> 3)" ( (binary_expression "uVar4 + 7 >> 3" (binary_expression "uVar4 + 7" identifier + number_literal) >> number_literal) )) + number_literal)) ;) (expression_statement "uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length);" (assignment_expression "uVar4 = udhcp_str2nip(pcVar6,auStack_50 + (int)length)" identifier = (call_expression "udhcp_str2nip(pcVar6,auStack_50 + (int)length)" identifier (argument_list "(pcVar6,auStack_50 + (int)length)" ( identifier , (binary_expression "auStack_50 + (int)length" identifier + (cast_expression "(int)length" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (break_statement "break;" break ;) })) })) (goto_statement "goto LAB_00143552;" goto statement_identifier ;)) })) (expression_statement "s = (byte *)buffer;" (assignment_expression "s = (byte *)buffer" identifier = (cast_expression "(byte *)buffer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }" if (parenthesized_expression "(uVar4 == 0)" ( (binary_expression "uVar4 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }" { (labeled_statement "LAB_00143552:\n        uVar4 = 0;" statement_identifier : (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;)) (break_statement "break;" break ;) })) (labeled_statement "LAB_00143345:\n      attach_option((option_set **)arg,optflag,(char *)s,length);" statement_identifier : (expression_statement "attach_option((option_set **)arg,optflag,(char *)s,length);" (call_expression "attach_option((option_set **)arg,optflag,(char *)s,length)" identifier (argument_list "((option_set **)arg,optflag,(char *)s,length)" ( (cast_expression "(option_set **)arg" ( (type_descriptor "option_set **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) , identifier , (cast_expression "(char *)s" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier ))) ;)) }) while (parenthesized_expression "((optflag->flags & 0x20) != 0)" ( (binary_expression "(optflag->flags & 0x20) != 0" (parenthesized_expression "(optflag->flags & 0x20)" ( (binary_expression "optflag->flags & 0x20" (field_expression "optflag->flags" identifier -> field_identifier) & number_literal) )) != number_literal) )) ;) })) (if_statement "if (lVar2 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }" if (parenthesized_expression "(lVar2 != *(long *)(in_FS_OFFSET + 0x28))" ( (binary_expression "lVar2 != *(long *)(in_FS_OFFSET + 0x28)" identifier != (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    __stack_chk_fail();\n  }" { comment (expression_statement "__stack_chk_fail();" (call_expression "__stack_chk_fail()" identifier (argument_list "()" ( ))) ;) })) (return_statement "return uVar4;" return identifier ;) })))
(translation_unit "uint FUN_0014320f(char *param_1,undefined8 param_2,long param_3,undefined8 param_4)\n\n{\n  char cVar1;\n  undefined1 uVar2;\n  ushort uVar3;\n  uint uVar4;\n  int iVar5;\n  char *pcVar6;\n  char *pcVar7;\n  undefined1 *puVar8;\n  size_t sVar9;\n  ulong uVar10;\n  byte *pbVar11;\n  long in_FS_OFFSET;\n  byte abStack_50 [4];\n  undefined4 local_4c;\n  undefined1 local_48 [8];\n  long local_40;\n  \n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  pcVar6 = strtok(param_1," \t=:");\n  uVar4 = 0;\n  if (pcVar6 != (char *)0x0) {\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }\n  return uVar4;\n}\n\n" (function_definition "uint FUN_0014320f(char *param_1,undefined8 param_2,long param_3,undefined8 param_4)\n\n{\n  char cVar1;\n  undefined1 uVar2;\n  ushort uVar3;\n  uint uVar4;\n  int iVar5;\n  char *pcVar6;\n  char *pcVar7;\n  undefined1 *puVar8;\n  size_t sVar9;\n  ulong uVar10;\n  byte *pbVar11;\n  long in_FS_OFFSET;\n  byte abStack_50 [4];\n  undefined4 local_4c;\n  undefined1 local_48 [8];\n  long local_40;\n  \n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  pcVar6 = strtok(param_1," \t=:");\n  uVar4 = 0;\n  if (pcVar6 != (char *)0x0) {\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }\n  return uVar4;\n}" type_identifier (function_declarator "FUN_0014320f(char *param_1,undefined8 param_2,long param_3,undefined8 param_4)" identifier (parameter_list "(char *param_1,undefined8 param_2,long param_3,undefined8 param_4)" ( (parameter_declaration "char *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined8 param_2" type_identifier identifier) , (parameter_declaration "long param_3" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined8 param_4" type_identifier identifier) ))) (compound_statement "{\n  char cVar1;\n  undefined1 uVar2;\n  ushort uVar3;\n  uint uVar4;\n  int iVar5;\n  char *pcVar6;\n  char *pcVar7;\n  undefined1 *puVar8;\n  size_t sVar9;\n  ulong uVar10;\n  byte *pbVar11;\n  long in_FS_OFFSET;\n  byte abStack_50 [4];\n  undefined4 local_4c;\n  undefined1 local_48 [8];\n  long local_40;\n  \n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  pcVar6 = strtok(param_1," \t=:");\n  uVar4 = 0;\n  if (pcVar6 != (char *)0x0) {\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }\n  return uVar4;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "undefined1 uVar2;" type_identifier identifier ;) (declaration "ushort uVar3;" type_identifier identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "undefined1 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "size_t sVar9;" primitive_type identifier ;) (declaration "ulong uVar10;" type_identifier identifier ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "long in_FS_OFFSET;" (sized_type_specifier "long" long) identifier ;) (declaration "byte abStack_50 [4];" type_identifier (array_declarator "abStack_50 [4]" identifier [ number_literal ]) ;) (declaration "undefined4 local_4c;" type_identifier identifier ;) (declaration "undefined1 local_48 [8];" type_identifier (array_declarator "local_48 [8]" identifier [ number_literal ]) ;) (declaration "long local_40;" (sized_type_specifier "long" long) identifier ;) (expression_statement "local_40 = *(long *)(in_FS_OFFSET + 0x28);" (assignment_expression "local_40 = *(long *)(in_FS_OFFSET + 0x28)" identifier = (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) ;) (expression_statement "pcVar6 = strtok(param_1," \t=:");" (assignment_expression "pcVar6 = strtok(param_1," \t=:")" identifier = (call_expression "strtok(param_1," \t=:")" identifier (argument_list "(param_1," \t=:")" ( identifier , (string_literal "" \t=:"" " string_content escape_sequence string_content ") )))) ;) (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;) (if_statement "if (pcVar6 != (char *)0x0) {\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }" if (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }" { (expression_statement "uVar4 = FUN_001101c1(pcVar6,0,0);" (assignment_expression "uVar4 = FUN_001101c1(pcVar6,0,0)" identifier = (call_expression "FUN_001101c1(pcVar6,0,0)" identifier (argument_list "(pcVar6,0,0)" ( identifier , number_literal , number_literal )))) ;) (if_statement "if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }" if (parenthesized_expression "((*DAT_001c65c0 == 0) && (uVar4 < 0xff))" ( (binary_expression "(*DAT_001c65c0 == 0) && (uVar4 < 0xff)" (parenthesized_expression "(*DAT_001c65c0 == 0)" ( (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" * identifier) == number_literal) )) && (parenthesized_expression "(uVar4 < 0xff)" ( (binary_expression "uVar4 < 0xff" identifier < number_literal) ))) )) (compound_statement "{\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }" { (expression_statement "abStack_50[2] = 9;" (assignment_expression "abStack_50[2] = 9" (subscript_expression "abStack_50[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "abStack_50[3] = (char)uVar4;" (assignment_expression "abStack_50[3] = (char)uVar4" (subscript_expression "abStack_50[3]" identifier [ number_literal ]) = (cast_expression "(char)uVar4" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "pbVar11 = abStack_50 + 2;" (assignment_expression "pbVar11 = abStack_50 + 2" identifier = (binary_expression "abStack_50 + 2" identifier + number_literal)) ;) }) (else_clause "else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }" else (compound_statement "{\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }" { (expression_statement "uVar4 = FUN_00142cf5(pcVar6,param_4);" (assignment_expression "uVar4 = FUN_00142cf5(pcVar6,param_4)" identifier = (call_expression "FUN_00142cf5(pcVar6,param_4)" identifier (argument_list "(pcVar6,param_4)" ( identifier , identifier )))) ;) (expression_statement "pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);" (assignment_expression "pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2)" identifier = (cast_expression "(byte *)(param_3 + (ulong)uVar4 * 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_3 + (ulong)uVar4 * 2)" ( (binary_expression "param_3 + (ulong)uVar4 * 2" identifier + (binary_expression "(ulong)uVar4 * 2" (cast_expression "(ulong)uVar4" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) )))) ;) }))) (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;) (do_statement "do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);" do (compound_statement "{\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    }" { (if_statement "if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }" if (parenthesized_expression "(*pbVar11 == 9)" ( (binary_expression "*pbVar11 == 9" (pointer_expression "*pbVar11" * identifier) == number_literal) )) (compound_statement "{\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }" { (expression_statement "pcVar6 = strtok((char *)0x0,"");" (assignment_expression "pcVar6 = strtok((char *)0x0,"")" identifier = (call_expression "strtok((char *)0x0,"")" identifier (argument_list "((char *)0x0,"")" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (string_literal """" " ") )))) ;) (expression_statement "FUN_001a4de3(pcVar6);" (call_expression "FUN_001a4de3(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) }) (else_clause "else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }" else (compound_statement "{\n        pcVar6 = strtok((char *)0x0,", \t");\n      }" { (expression_statement "pcVar6 = strtok((char *)0x0,", \t");" (assignment_expression "pcVar6 = strtok((char *)0x0,", \t")" identifier = (call_expression "strtok((char *)0x0,", \t")" identifier (argument_list "((char *)0x0,", \t")" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (string_literal "", \t"" " string_content escape_sequence ") )))) ;) }))) (if_statement "if (pcVar6 == (char *)0x0) break;" if (parenthesized_expression "(pcVar6 == (char *)0x0)" ( (binary_expression "pcVar6 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];" (assignment_expression "uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf]" identifier = (subscript_expression "(ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf]" (call_expression "(ulong)(byte)(&DAT_001bb7c1)" (call_expression "(ulong)(byte)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(byte)" ( identifier ))) (argument_list "(&DAT_001bb7c1)" ( (pointer_expression "&DAT_001bb7c1" & identifier) ))) [ (binary_expression "*pbVar11 & 0xf" (pointer_expression "*pbVar11" * identifier) & number_literal) ])) ;) (expression_statement "pcVar7 = pcVar6;" (assignment_expression "pcVar7 = pcVar6" identifier = identifier) ;) (switch_statement "switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }" switch (parenthesized_expression "(*pbVar11 & 0xf)" ( (binary_expression "*pbVar11 & 0xf" (pointer_expression "*pbVar11" * identifier) & number_literal) )) (compound_statement "{\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }" { (case_statement "default:\n        uVar4 = 0;\n        break;" default : (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;" case number_literal : (expression_statement "uVar4 = FUN_001431de(pcVar6,&local_4c);" (assignment_expression "uVar4 = FUN_001431de(pcVar6,&local_4c)" identifier = (call_expression "FUN_001431de(pcVar6,&local_4c)" identifier (argument_list "(pcVar6,&local_4c)" ( identifier , (pointer_expression "&local_4c" & identifier) )))) ;) (break_statement "break;" break ;)) (case_statement "case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;" case number_literal : (expression_statement "iVar5 = FUN_001431de(pcVar6,&local_4c);" (assignment_expression "iVar5 = FUN_001431de(pcVar6,&local_4c)" identifier = (call_expression "FUN_001431de(pcVar6,&local_4c)" identifier (argument_list "(pcVar6,&local_4c)" ( identifier , (pointer_expression "&local_4c" & identifier) )))) ;) (expression_statement "pcVar6 = strtok((char *)0x0,", \t/-");" (assignment_expression "pcVar6 = strtok((char *)0x0,", \t/-")" identifier = (call_expression "strtok((char *)0x0,", \t/-")" identifier (argument_list "((char *)0x0,", \t/-")" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (string_literal "", \t/-"" " string_content escape_sequence string_content ") )))) ;) (if_statement "if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }" if (parenthesized_expression "((pcVar6 != (char *)0x0) && (iVar5 != 0))" ( (binary_expression "(pcVar6 != (char *)0x0) && (iVar5 != 0)" (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) ))) )) (compound_statement "{\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }" { (expression_statement "uVar4 = FUN_001431de(pcVar6,local_48);" (assignment_expression "uVar4 = FUN_001431de(pcVar6,local_48)" identifier = (call_expression "FUN_001431de(pcVar6,local_48)" identifier (argument_list "(pcVar6,local_48)" ( identifier , identifier )))) ;) (break_statement "break;" break ;) })) (goto_statement "goto LAB_00143552;" goto statement_identifier ;)) (case_statement "case 3:" case number_literal :) (case_statement "case 4:" case number_literal :) (case_statement "case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;" case number_literal : (labeled_statement "switchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);" statement_identifier : (expression_statement "sVar9 = strnlen(pcVar7,0xfe);" (assignment_expression "sVar9 = strnlen(pcVar7,0xfe)" identifier = (call_expression "strnlen(pcVar7,0xfe)" identifier (argument_list "(pcVar7,0xfe)" ( identifier , number_literal )))) ;)) (expression_statement "uVar10 = sVar9 & 0xffffffff;" (assignment_expression "uVar10 = sVar9 & 0xffffffff" identifier = (binary_expression "sVar9 & 0xffffffff" identifier & number_literal)) ;) (expression_statement "pcVar6 = pcVar7;" (assignment_expression "pcVar6 = pcVar7" identifier = identifier) ;) (if_statement "if (0 < (int)sVar9) goto LAB_00143566;" if (parenthesized_expression "(0 < (int)sVar9)" ( (binary_expression "0 < (int)sVar9" number_literal < (cast_expression "(int)sVar9" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_00143566;" goto statement_identifier ;)) (goto_statement "goto LAB_00143552;" goto statement_identifier ;)) (case_statement "case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;" case number_literal : (expression_statement "uVar2 = FUN_001101c1(pcVar6,0,0);" (assignment_expression "uVar2 = FUN_001101c1(pcVar6,0,0)" identifier = (call_expression "FUN_001101c1(pcVar6,0,0)" identifier (argument_list "(pcVar6,0,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "local_4c = CONCAT31(local_4c._1_3_,uVar2);" (assignment_expression "local_4c = CONCAT31(local_4c._1_3_,uVar2)" identifier = (call_expression "CONCAT31(local_4c._1_3_,uVar2)" identifier (argument_list "(local_4c._1_3_,uVar2)" ( (field_expression "local_4c._1_3_" identifier . field_identifier) , identifier )))) ;) (expression_statement "uVar4 = (uint)(*DAT_001c65c0 == 0);" (assignment_expression "uVar4 = (uint)(*DAT_001c65c0 == 0)" identifier = (call_expression "(uint)(*DAT_001c65c0 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*DAT_001c65c0 == 0)" ( (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" * identifier) == number_literal) )))) ;) (break_statement "break;" break ;)) (case_statement "case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;" case number_literal : (expression_statement "uVar3 = FUN_001101c1(pcVar6,0,0);" (assignment_expression "uVar3 = FUN_001101c1(pcVar6,0,0)" identifier = (call_expression "FUN_001101c1(pcVar6,0,0)" identifier (argument_list "(pcVar6,0,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);" (assignment_expression "local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8)" identifier = (call_expression "CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8)" identifier (argument_list "(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8)" ( (field_expression "local_4c._2_2_" identifier . field_identifier) , (binary_expression "uVar3 << 8 | uVar3 >> 8" (binary_expression "uVar3 << 8" identifier << number_literal) | (binary_expression "uVar3 >> 8" identifier >> number_literal)) )))) ;) (expression_statement "uVar4 = (uint)(*DAT_001c65c0 == 0);" (assignment_expression "uVar4 = (uint)(*DAT_001c65c0 == 0)" identifier = (call_expression "(uint)(*DAT_001c65c0 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*DAT_001c65c0 == 0)" ( (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" * identifier) == number_literal) )))) ;) (break_statement "break;" break ;)) (case_statement "case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;" case number_literal : (expression_statement "uVar4 = FUN_001101c1(pcVar6,0,0);" (assignment_expression "uVar4 = FUN_001101c1(pcVar6,0,0)" identifier = (call_expression "FUN_001101c1(pcVar6,0,0)" identifier (argument_list "(pcVar6,0,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;" (assignment_expression "local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18" identifier = (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8" (binary_expression "uVar4 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar4 & 0xff0000) >> 8" (parenthesized_expression "(uVar4 & 0xff0000)" ( (binary_expression "uVar4 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar4 & 0xff00) << 8" (parenthesized_expression "(uVar4 & 0xff00)" ( (binary_expression "uVar4 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar4 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar4 = (uint)(*DAT_001c65c0 == 0);" (assignment_expression "uVar4 = (uint)(*DAT_001c65c0 == 0)" identifier = (call_expression "(uint)(*DAT_001c65c0 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*DAT_001c65c0 == 0)" ( (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" * identifier) == number_literal) )))) ;) (break_statement "break;" break ;)) (case_statement "case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;" case number_literal : (expression_statement "uVar4 = FUN_00110265(pcVar6,0,0);" (assignment_expression "uVar4 = FUN_00110265(pcVar6,0,0)" identifier = (call_expression "FUN_00110265(pcVar6,0,0)" identifier (argument_list "(pcVar6,0,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;" (assignment_expression "local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18" identifier = (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8" (binary_expression "uVar4 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar4 & 0xff0000) >> 8" (parenthesized_expression "(uVar4 & 0xff0000)" ( (binary_expression "uVar4 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar4 & 0xff00) << 8" (parenthesized_expression "(uVar4 & 0xff00)" ( (binary_expression "uVar4 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar4 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar4 = (uint)(*DAT_001c65c0 == 0);" (assignment_expression "uVar4 = (uint)(*DAT_001c65c0 == 0)" identifier = (call_expression "(uint)(*DAT_001c65c0 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*DAT_001c65c0 == 0)" ( (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" * identifier) == number_literal) )))) ;) (break_statement "break;" break ;)) (case_statement "case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;" case number_literal : (expression_statement "cVar1 = *pcVar6;" (assignment_expression "cVar1 = *pcVar6" identifier = (pointer_expression "*pcVar6" * identifier)) ;) (if_statement "if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }" if (parenthesized_expression "((cVar1 == '\"') || (cVar1 == '\''))" ( (binary_expression "(cVar1 == '\"') || (cVar1 == '\'')" (parenthesized_expression "(cVar1 == '\"')" ( (binary_expression "cVar1 == '\"'" identifier == (char_literal "'\"'" ' escape_sequence ')) )) || (parenthesized_expression "(cVar1 == '\'')" ( (binary_expression "cVar1 == '\''" identifier == (char_literal "'\''" ' escape_sequence ')) ))) )) (compound_statement "{\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }" { (expression_statement "pcVar7 = pcVar6 + 1;" (assignment_expression "pcVar7 = pcVar6 + 1" identifier = (binary_expression "pcVar6 + 1" identifier + number_literal)) ;) (expression_statement "puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);" (assignment_expression "puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1)" identifier = (cast_expression "(undefined1 *)FUN_0010d637(pcVar7,cVar1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0010d637(pcVar7,cVar1)" identifier (argument_list "(pcVar7,cVar1)" ( identifier , identifier ))))) ;) (if_statement "if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }" if (parenthesized_expression "(puVar8 != (undefined1 *)0x0)" ( (binary_expression "puVar8 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }" { (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" * identifier) = number_literal) ;) (expression_statement "abStack_50[2] = 3;" (assignment_expression "abStack_50[2] = 3" (subscript_expression "abStack_50[2]" identifier [ number_literal ]) = number_literal) ;) (goto_statement "goto switchD_001432ff_caseD_3;" goto statement_identifier ;) })) })) (labeled_statement "LAB_00143566:\n        uVar4 = 1;" statement_identifier : (expression_statement "uVar4 = 1;" (assignment_expression "uVar4 = 1" identifier = number_literal) ;)) (goto_statement "goto LAB_00143345;" goto statement_identifier ;)) (case_statement "case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;" case number_literal : (expression_statement "pcVar7 = strchr(pcVar6,0x2f);" (assignment_expression "pcVar7 = strchr(pcVar6,0x2f)" identifier = (call_expression "strchr(pcVar6,0x2f)" identifier (argument_list "(pcVar6,0x2f)" ( identifier , number_literal )))) ;) (if_statement "if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }" if (parenthesized_expression "(pcVar7 != (char *)0x0)" ( (binary_expression "pcVar7 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }" { (expression_statement "*pcVar7 = '\0';" (assignment_expression "*pcVar7 = '\0'" (pointer_expression "*pcVar7" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);" (assignment_expression "iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1)" identifier = (call_expression "FUN_001431de(pcVar6,(long)&local_4c + 1)" identifier (argument_list "(pcVar6,(long)&local_4c + 1)" ( identifier , (binary_expression "(long)&local_4c + 1" (cast_expression "(long)&local_4c" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&local_4c" & identifier)) + number_literal) )))) ;) (expression_statement "uVar4 = FUN_001101c1(pcVar7 + 1,0,10);" (assignment_expression "uVar4 = FUN_001101c1(pcVar7 + 1,0,10)" identifier = (call_expression "FUN_001101c1(pcVar7 + 1,0,10)" identifier (argument_list "(pcVar7 + 1,0,10)" ( (binary_expression "pcVar7 + 1" identifier + number_literal) , number_literal , number_literal )))) ;) (expression_statement "local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);" (assignment_expression "local_4c = CONCAT31(local_4c._1_3_,(char)uVar4)" identifier = (call_expression "CONCAT31(local_4c._1_3_,(char)uVar4)" identifier (argument_list "(local_4c._1_3_,(char)uVar4)" ( (field_expression "local_4c._1_3_" identifier . field_identifier) , (cast_expression "(char)uVar4" ( (type_descriptor "char" primitive_type) ) identifier) )))) ;) (expression_statement "pcVar6 = strtok((char *)0x0,", \t/-");" (assignment_expression "pcVar6 = strtok((char *)0x0,", \t/-")" identifier = (call_expression "strtok((char *)0x0,", \t/-")" identifier (argument_list "((char *)0x0,", \t/-")" ( (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (string_literal "", \t/-"" " string_content escape_sequence string_content ") )))) ;) (if_statement "if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }" if (parenthesized_expression "((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))" ( (binary_expression "(((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0)" (parenthesized_expression "(((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0))" ( (binary_expression "((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)" (parenthesized_expression "((pcVar6 != (char *)0x0) && (uVar4 < 0x21))" ( (binary_expression "(pcVar6 != (char *)0x0) && (uVar4 < 0x21)" (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(uVar4 < 0x21)" ( (binary_expression "uVar4 < 0x21" identifier < number_literal) ))) )) && (parenthesized_expression "(*DAT_001c65c0 == 0)" ( (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" * identifier) == number_literal) ))) )) && (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) ))) )) (compound_statement "{\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }" { (expression_statement "uVar4 = (uVar4 + 7 >> 3) + 5;" (assignment_expression "uVar4 = (uVar4 + 7 >> 3) + 5" identifier = (binary_expression "(uVar4 + 7 >> 3) + 5" (parenthesized_expression "(uVar4 + 7 >> 3)" ( (binary_expression "uVar4 + 7 >> 3" (binary_expression "uVar4 + 7" identifier + number_literal) >> number_literal) )) + number_literal)) ;) (expression_statement "uVar10 = (ulong)uVar4;" (assignment_expression "uVar10 = (ulong)uVar4" identifier = (cast_expression "(ulong)uVar4" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);" (assignment_expression "uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4)" identifier = (call_expression "FUN_001431de(pcVar6,abStack_50 + (int)uVar4)" identifier (argument_list "(pcVar6,abStack_50 + (int)uVar4)" ( identifier , (binary_expression "abStack_50 + (int)uVar4" identifier + (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (break_statement "break;" break ;) })) })) (goto_statement "goto LAB_00143552;" goto statement_identifier ;)) })) (expression_statement "pcVar6 = (char *)&local_4c;" (assignment_expression "pcVar6 = (char *)&local_4c" identifier = (cast_expression "(char *)&local_4c" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_4c" & identifier))) ;) (if_statement "if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }" if (parenthesized_expression "(uVar4 == 0)" ( (binary_expression "uVar4 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }" { (labeled_statement "LAB_00143552:\n        uVar4 = 0;" statement_identifier : (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;)) (break_statement "break;" break ;) })) (labeled_statement "LAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);" statement_identifier : (expression_statement "FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);" (call_expression "FUN_0014302a(param_2,pbVar11,pcVar6,uVar10)" identifier (argument_list "(param_2,pbVar11,pcVar6,uVar10)" ( identifier , identifier , identifier , identifier ))) ;)) }) while (parenthesized_expression "((*pbVar11 & 0x20) != 0)" ( (binary_expression "(*pbVar11 & 0x20) != 0" (parenthesized_expression "(*pbVar11 & 0x20)" ( (binary_expression "*pbVar11 & 0x20" (pointer_expression "*pbVar11" * identifier) & number_literal) )) != number_literal) )) ;) })) (if_statement "if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }" if (parenthesized_expression "(local_40 != *(long *)(in_FS_OFFSET + 0x28))" ( (binary_expression "local_40 != *(long *)(in_FS_OFFSET + 0x28)" identifier != (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" * (cast_expression "(long *)(in_FS_OFFSET + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_FS_OFFSET + 0x28)" ( (binary_expression "in_FS_OFFSET + 0x28" identifier + number_literal) ))))) )) (compound_statement "{\n                    \n    __stack_chk_fail();\n  }" { (expression_statement "__stack_chk_fail();" (call_expression "__stack_chk_fail()" identifier (argument_list "()" ( ))) ;) })) (return_statement "return uVar4;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration (sized_type_specifier long) IDENT ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content escape_sequence string_content ") )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) && (parenthesized_expression ( (binary_expression IDENT < LIT) ))) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) )))) ;) }))) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) , (string_literal " ") )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) , (string_literal " string_content escape_sequence ") )))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (subscript_expression (call_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( IDENT ))) (argument_list ( (pointer_expression & IDENT) ))) [ (binary_expression (pointer_expression * IDENT) & LIT) ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (switch_statement switch (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) (compound_statement { (case_statement default : (expression_statement (assignment_expression IDENT = LIT) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) )))) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) , (string_literal " string_content escape_sequence string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (break_statement break ;) })) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * IDENT) == LIT) )))) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (binary_expression (binary_expression IDENT << LIT) | (binary_expression IDENT >> LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * IDENT) == LIT) )))) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * IDENT) == LIT) )))) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * IDENT) == LIT) )))) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (goto_statement goto statement_identifier ;) })) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression & IDENT)) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (cast_expression ( (type_descriptor TYPE) ) IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) , (string_literal " string_content escape_sequence string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) && (parenthesized_expression ( (binary_expression IDENT < LIT) ))) )) && (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) ))) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) >> LIT) )) + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (break_statement break ;) })) })) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (break_statement break ;) })) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT ))) ;)) }) while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != LIT) )) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (return_statement return IDENT ;) })))
(function_definition "uint FUN_0014320f(char *param_1,undefined8 param_2,long param_3,undefined8 param_4)\n\n{\n  char cVar1;\n  undefined1 uVar2;\n  ushort uVar3;\n  uint uVar4;\n  int iVar5;\n  char *pcVar6;\n  char *pcVar7;\n  undefined1 *puVar8;\n  size_t sVar9;\n  ulong uVar10;\n  byte *pbVar11;\n  long in_FS_OFFSET;\n  byte abStack_50 [4];\n  undefined4 local_4c;\n  undefined1 local_48 [8];\n  long local_40;\n  \n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  pcVar6 = strtok(param_1," \t=:");\n  uVar4 = 0;\n  if (pcVar6 != (char *)0x0) {\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }\n  return uVar4;\n}" (type_identifier "uint") (function_declarator "FUN_0014320f(char *param_1,undefined8 param_2,long param_3,undefined8 param_4)" (identifier "FUN_0014320f") (parameter_list "(char *param_1,undefined8 param_2,long param_3,undefined8 param_4)" (( "(") (parameter_declaration "char *param_1" (primitive_type "char") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "undefined8 param_2" (type_identifier "undefined8") (identifier "param_2")) (, ",") (parameter_declaration "long param_3" (sized_type_specifier "long" (long "long")) (identifier "param_3")) (, ",") (parameter_declaration "undefined8 param_4" (type_identifier "undefined8") (identifier "param_4")) () ")"))) (compound_statement "{\n  char cVar1;\n  undefined1 uVar2;\n  ushort uVar3;\n  uint uVar4;\n  int iVar5;\n  char *pcVar6;\n  char *pcVar7;\n  undefined1 *puVar8;\n  size_t sVar9;\n  ulong uVar10;\n  byte *pbVar11;\n  long in_FS_OFFSET;\n  byte abStack_50 [4];\n  undefined4 local_4c;\n  undefined1 local_48 [8];\n  long local_40;\n  \n  local_40 = *(long *)(in_FS_OFFSET + 0x28);\n  pcVar6 = strtok(param_1," \t=:");\n  uVar4 = 0;\n  if (pcVar6 != (char *)0x0) {\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }\n  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }\n  return uVar4;\n}" ({ "{") (declaration "char cVar1;" (primitive_type "char") (identifier "cVar1") (; ";")) (declaration "undefined1 uVar2;" (type_identifier "undefined1") (identifier "uVar2") (; ";")) (declaration "ushort uVar3;" (type_identifier "ushort") (identifier "uVar3") (; ";")) (declaration "uint uVar4;" (type_identifier "uint") (identifier "uVar4") (; ";")) (declaration "int iVar5;" (primitive_type "int") (identifier "iVar5") (; ";")) (declaration "char *pcVar6;" (primitive_type "char") (pointer_declarator "*pcVar6" (* "*") (identifier "pcVar6")) (; ";")) (declaration "char *pcVar7;" (primitive_type "char") (pointer_declarator "*pcVar7" (* "*") (identifier "pcVar7")) (; ";")) (declaration "undefined1 *puVar8;" (type_identifier "undefined1") (pointer_declarator "*puVar8" (* "*") (identifier "puVar8")) (; ";")) (declaration "size_t sVar9;" (primitive_type "size_t") (identifier "sVar9") (; ";")) (declaration "ulong uVar10;" (type_identifier "ulong") (identifier "uVar10") (; ";")) (declaration "byte *pbVar11;" (type_identifier "byte") (pointer_declarator "*pbVar11" (* "*") (identifier "pbVar11")) (; ";")) (declaration "long in_FS_OFFSET;" (sized_type_specifier "long" (long "long")) (identifier "in_FS_OFFSET") (; ";")) (declaration "byte abStack_50 [4];" (type_identifier "byte") (array_declarator "abStack_50 [4]" (identifier "abStack_50") ([ "[") (number_literal "4") (] "]")) (; ";")) (declaration "undefined4 local_4c;" (type_identifier "undefined4") (identifier "local_4c") (; ";")) (declaration "undefined1 local_48 [8];" (type_identifier "undefined1") (array_declarator "local_48 [8]" (identifier "local_48") ([ "[") (number_literal "8") (] "]")) (; ";")) (declaration "long local_40;" (sized_type_specifier "long" (long "long")) (identifier "local_40") (; ";")) (expression_statement "local_40 = *(long *)(in_FS_OFFSET + 0x28);" (assignment_expression "local_40 = *(long *)(in_FS_OFFSET + 0x28)" (identifier "local_40") (= "=") (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" (* "*") (cast_expression "(long *)(in_FS_OFFSET + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_FS_OFFSET + 0x28)" (( "(") (binary_expression "in_FS_OFFSET + 0x28" (identifier "in_FS_OFFSET") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (expression_statement "pcVar6 = strtok(param_1," \t=:");" (assignment_expression "pcVar6 = strtok(param_1," \t=:")" (identifier "pcVar6") (= "=") (call_expression "strtok(param_1," \t=:")" (identifier "strtok") (argument_list "(param_1," \t=:")" (( "(") (identifier "param_1") (, ",") (string_literal "" \t=:"" (" """) (string_content " ") (escape_sequence "\t") (string_content "=:") (" """)) () ")")))) (; ";")) (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" (identifier "uVar4") (= "=") (number_literal "0")) (; ";")) (if_statement "if (pcVar6 != (char *)0x0) {\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }" (if "if") (parenthesized_expression "(pcVar6 != (char *)0x0)" (( "(") (binary_expression "pcVar6 != (char *)0x0" (identifier "pcVar6") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    uVar4 = FUN_001101c1(pcVar6,0,0);\n    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }\n    uVar4 = 0;\n    do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);\n  }" ({ "{") (expression_statement "uVar4 = FUN_001101c1(pcVar6,0,0);" (assignment_expression "uVar4 = FUN_001101c1(pcVar6,0,0)" (identifier "uVar4") (= "=") (call_expression "FUN_001101c1(pcVar6,0,0)" (identifier "FUN_001101c1") (argument_list "(pcVar6,0,0)" (( "(") (identifier "pcVar6") (, ",") (number_literal "0") (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }\n    else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }" (if "if") (parenthesized_expression "((*DAT_001c65c0 == 0) && (uVar4 < 0xff))" (( "(") (binary_expression "(*DAT_001c65c0 == 0) && (uVar4 < 0xff)" (parenthesized_expression "(*DAT_001c65c0 == 0)" (( "(") (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" (* "*") (identifier "DAT_001c65c0")) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(uVar4 < 0xff)" (( "(") (binary_expression "uVar4 < 0xff" (identifier "uVar4") (< "<") (number_literal "0xff")) () ")"))) () ")")) (compound_statement "{\n      abStack_50[2] = 9;\n      abStack_50[3] = (char)uVar4;\n      pbVar11 = abStack_50 + 2;\n    }" ({ "{") (expression_statement "abStack_50[2] = 9;" (assignment_expression "abStack_50[2] = 9" (subscript_expression "abStack_50[2]" (identifier "abStack_50") ([ "[") (number_literal "2") (] "]")) (= "=") (number_literal "9")) (; ";")) (expression_statement "abStack_50[3] = (char)uVar4;" (assignment_expression "abStack_50[3] = (char)uVar4" (subscript_expression "abStack_50[3]" (identifier "abStack_50") ([ "[") (number_literal "3") (] "]")) (= "=") (cast_expression "(char)uVar4" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "uVar4"))) (; ";")) (expression_statement "pbVar11 = abStack_50 + 2;" (assignment_expression "pbVar11 = abStack_50 + 2" (identifier "pbVar11") (= "=") (binary_expression "abStack_50 + 2" (identifier "abStack_50") (+ "+") (number_literal "2"))) (; ";")) (} "}")) (else_clause "else {\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }" (else "else") (compound_statement "{\n      uVar4 = FUN_00142cf5(pcVar6,param_4);\n      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);\n    }" ({ "{") (expression_statement "uVar4 = FUN_00142cf5(pcVar6,param_4);" (assignment_expression "uVar4 = FUN_00142cf5(pcVar6,param_4)" (identifier "uVar4") (= "=") (call_expression "FUN_00142cf5(pcVar6,param_4)" (identifier "FUN_00142cf5") (argument_list "(pcVar6,param_4)" (( "(") (identifier "pcVar6") (, ",") (identifier "param_4") () ")")))) (; ";")) (expression_statement "pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);" (assignment_expression "pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2)" (identifier "pbVar11") (= "=") (cast_expression "(byte *)(param_3 + (ulong)uVar4 * 2)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_3 + (ulong)uVar4 * 2)" (( "(") (binary_expression "param_3 + (ulong)uVar4 * 2" (identifier "param_3") (+ "+") (binary_expression "(ulong)uVar4 * 2" (cast_expression "(ulong)uVar4" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar4")) (* "*") (number_literal "2"))) () ")")))) (; ";")) (} "}")))) (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" (identifier "uVar4") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    } while ((*pbVar11 & 0x20) != 0);" (do "do") (compound_statement "{\n      if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }\n      if (pcVar6 == (char *)0x0) break;\n      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];\n      pcVar7 = pcVar6;\n      switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }\n      pcVar6 = (char *)&local_4c;\n      if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }\nLAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);\n    }" ({ "{") (if_statement "if (*pbVar11 == 9) {\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }\n      else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }" (if "if") (parenthesized_expression "(*pbVar11 == 9)" (( "(") (binary_expression "*pbVar11 == 9" (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")) (== "==") (number_literal "9")) () ")")) (compound_statement "{\n        pcVar6 = strtok((char *)0x0,"");\n        FUN_001a4de3(pcVar6);\n      }" ({ "{") (expression_statement "pcVar6 = strtok((char *)0x0,"");" (assignment_expression "pcVar6 = strtok((char *)0x0,"")" (identifier "pcVar6") (= "=") (call_expression "strtok((char *)0x0,"")" (identifier "strtok") (argument_list "((char *)0x0,"")" (( "(") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (, ",") (string_literal """" (" """) (" """)) () ")")))) (; ";")) (expression_statement "FUN_001a4de3(pcVar6);" (call_expression "FUN_001a4de3(pcVar6)" (identifier "FUN_001a4de3") (argument_list "(pcVar6)" (( "(") (identifier "pcVar6") () ")"))) (; ";")) (} "}")) (else_clause "else {\n        pcVar6 = strtok((char *)0x0,", \t");\n      }" (else "else") (compound_statement "{\n        pcVar6 = strtok((char *)0x0,", \t");\n      }" ({ "{") (expression_statement "pcVar6 = strtok((char *)0x0,", \t");" (assignment_expression "pcVar6 = strtok((char *)0x0,", \t")" (identifier "pcVar6") (= "=") (call_expression "strtok((char *)0x0,", \t")" (identifier "strtok") (argument_list "((char *)0x0,", \t")" (( "(") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (, ",") (string_literal "", \t"" (" """) (string_content ", ") (escape_sequence "\t") (" """)) () ")")))) (; ";")) (} "}")))) (if_statement "if (pcVar6 == (char *)0x0) break;" (if "if") (parenthesized_expression "(pcVar6 == (char *)0x0)" (( "(") (binary_expression "pcVar6 == (char *)0x0" (identifier "pcVar6") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];" (assignment_expression "uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf]" (identifier "uVar10") (= "=") (subscript_expression "(ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf]" (call_expression "(ulong)(byte)(&DAT_001bb7c1)" (call_expression "(ulong)(byte)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(byte)" (( "(") (identifier "byte") () ")"))) (argument_list "(&DAT_001bb7c1)" (( "(") (pointer_expression "&DAT_001bb7c1" (& "&") (identifier "DAT_001bb7c1")) () ")"))) ([ "[") (binary_expression "*pbVar11 & 0xf" (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")) (& "&") (number_literal "0xf")) (] "]"))) (; ";")) (expression_statement "pcVar7 = pcVar6;" (assignment_expression "pcVar7 = pcVar6" (identifier "pcVar7") (= "=") (identifier "pcVar6")) (; ";")) (switch_statement "switch(*pbVar11 & 0xf) {\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }" (switch "switch") (parenthesized_expression "(*pbVar11 & 0xf)" (( "(") (binary_expression "*pbVar11 & 0xf" (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")) (& "&") (number_literal "0xf")) () ")")) (compound_statement "{\n      default:\n        uVar4 = 0;\n        break;\n      case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;\n      case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;\n      case 3:\n      case 4:\n      case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;\n      case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;\n      case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;\n      case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;\n      }" ({ "{") (case_statement "default:\n        uVar4 = 0;\n        break;" (default "default") (: ":") (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" (identifier "uVar4") (= "=") (number_literal "0")) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 1:\n        uVar4 = FUN_001431de(pcVar6,&local_4c);\n        break;" (case "case") (number_literal "1") (: ":") (expression_statement "uVar4 = FUN_001431de(pcVar6,&local_4c);" (assignment_expression "uVar4 = FUN_001431de(pcVar6,&local_4c)" (identifier "uVar4") (= "=") (call_expression "FUN_001431de(pcVar6,&local_4c)" (identifier "FUN_001431de") (argument_list "(pcVar6,&local_4c)" (( "(") (identifier "pcVar6") (, ",") (pointer_expression "&local_4c" (& "&") (identifier "local_4c")) () ")")))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 2:\n        iVar5 = FUN_001431de(pcVar6,&local_4c);\n        pcVar6 = strtok((char *)0x0,", \t/-");\n        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }\n        goto LAB_00143552;" (case "case") (number_literal "2") (: ":") (expression_statement "iVar5 = FUN_001431de(pcVar6,&local_4c);" (assignment_expression "iVar5 = FUN_001431de(pcVar6,&local_4c)" (identifier "iVar5") (= "=") (call_expression "FUN_001431de(pcVar6,&local_4c)" (identifier "FUN_001431de") (argument_list "(pcVar6,&local_4c)" (( "(") (identifier "pcVar6") (, ",") (pointer_expression "&local_4c" (& "&") (identifier "local_4c")) () ")")))) (; ";")) (expression_statement "pcVar6 = strtok((char *)0x0,", \t/-");" (assignment_expression "pcVar6 = strtok((char *)0x0,", \t/-")" (identifier "pcVar6") (= "=") (call_expression "strtok((char *)0x0,", \t/-")" (identifier "strtok") (argument_list "((char *)0x0,", \t/-")" (( "(") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (, ",") (string_literal "", \t/-"" (" """) (string_content ", ") (escape_sequence "\t") (string_content "/-") (" """)) () ")")))) (; ";")) (if_statement "if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }" (if "if") (parenthesized_expression "((pcVar6 != (char *)0x0) && (iVar5 != 0))" (( "(") (binary_expression "(pcVar6 != (char *)0x0) && (iVar5 != 0)" (parenthesized_expression "(pcVar6 != (char *)0x0)" (( "(") (binary_expression "pcVar6 != (char *)0x0" (identifier "pcVar6") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (&& "&&") (parenthesized_expression "(iVar5 != 0)" (( "(") (binary_expression "iVar5 != 0" (identifier "iVar5") (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n          uVar4 = FUN_001431de(pcVar6,local_48);\n          break;\n        }" ({ "{") (expression_statement "uVar4 = FUN_001431de(pcVar6,local_48);" (assignment_expression "uVar4 = FUN_001431de(pcVar6,local_48)" (identifier "uVar4") (= "=") (call_expression "FUN_001431de(pcVar6,local_48)" (identifier "FUN_001431de") (argument_list "(pcVar6,local_48)" (( "(") (identifier "pcVar6") (, ",") (identifier "local_48") () ")")))) (; ";")) (break_statement "break;" (break "break") (; ";")) (} "}"))) (goto_statement "goto LAB_00143552;" (goto "goto") (statement_identifier "LAB_00143552") (; ";"))) (case_statement "case 3:" (case "case") (number_literal "3") (: ":")) (case_statement "case 4:" (case "case") (number_literal "4") (: ":")) (case_statement "case 0xc:\nswitchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);\n        uVar10 = sVar9 & 0xffffffff;\n        pcVar6 = pcVar7;\n        if (0 < (int)sVar9) goto LAB_00143566;\n        goto LAB_00143552;" (case "case") (number_literal "0xc") (: ":") (labeled_statement "switchD_001432ff_caseD_3:\n        sVar9 = strnlen(pcVar7,0xfe);" (statement_identifier "switchD_001432ff_caseD_3") (: ":") (expression_statement "sVar9 = strnlen(pcVar7,0xfe);" (assignment_expression "sVar9 = strnlen(pcVar7,0xfe)" (identifier "sVar9") (= "=") (call_expression "strnlen(pcVar7,0xfe)" (identifier "strnlen") (argument_list "(pcVar7,0xfe)" (( "(") (identifier "pcVar7") (, ",") (number_literal "0xfe") () ")")))) (; ";"))) (expression_statement "uVar10 = sVar9 & 0xffffffff;" (assignment_expression "uVar10 = sVar9 & 0xffffffff" (identifier "uVar10") (= "=") (binary_expression "sVar9 & 0xffffffff" (identifier "sVar9") (& "&") (number_literal "0xffffffff"))) (; ";")) (expression_statement "pcVar6 = pcVar7;" (assignment_expression "pcVar6 = pcVar7" (identifier "pcVar6") (= "=") (identifier "pcVar7")) (; ";")) (if_statement "if (0 < (int)sVar9) goto LAB_00143566;" (if "if") (parenthesized_expression "(0 < (int)sVar9)" (( "(") (binary_expression "0 < (int)sVar9" (number_literal "0") (< "<") (cast_expression "(int)sVar9" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "sVar9"))) () ")")) (goto_statement "goto LAB_00143566;" (goto "goto") (statement_identifier "LAB_00143566") (; ";"))) (goto_statement "goto LAB_00143552;" (goto "goto") (statement_identifier "LAB_00143552") (; ";"))) (case_statement "case 5:\n        uVar2 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT31(local_4c._1_3_,uVar2);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;" (case "case") (number_literal "5") (: ":") (expression_statement "uVar2 = FUN_001101c1(pcVar6,0,0);" (assignment_expression "uVar2 = FUN_001101c1(pcVar6,0,0)" (identifier "uVar2") (= "=") (call_expression "FUN_001101c1(pcVar6,0,0)" (identifier "FUN_001101c1") (argument_list "(pcVar6,0,0)" (( "(") (identifier "pcVar6") (, ",") (number_literal "0") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "local_4c = CONCAT31(local_4c._1_3_,uVar2);" (assignment_expression "local_4c = CONCAT31(local_4c._1_3_,uVar2)" (identifier "local_4c") (= "=") (call_expression "CONCAT31(local_4c._1_3_,uVar2)" (identifier "CONCAT31") (argument_list "(local_4c._1_3_,uVar2)" (( "(") (field_expression "local_4c._1_3_" (identifier "local_4c") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "uVar2") () ")")))) (; ";")) (expression_statement "uVar4 = (uint)(*DAT_001c65c0 == 0);" (assignment_expression "uVar4 = (uint)(*DAT_001c65c0 == 0)" (identifier "uVar4") (= "=") (call_expression "(uint)(*DAT_001c65c0 == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*DAT_001c65c0 == 0)" (( "(") (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" (* "*") (identifier "DAT_001c65c0")) (== "==") (number_literal "0")) () ")")))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 6:\n        uVar3 = FUN_001101c1(pcVar6,0,0);\n        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;" (case "case") (number_literal "6") (: ":") (expression_statement "uVar3 = FUN_001101c1(pcVar6,0,0);" (assignment_expression "uVar3 = FUN_001101c1(pcVar6,0,0)" (identifier "uVar3") (= "=") (call_expression "FUN_001101c1(pcVar6,0,0)" (identifier "FUN_001101c1") (argument_list "(pcVar6,0,0)" (( "(") (identifier "pcVar6") (, ",") (number_literal "0") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);" (assignment_expression "local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8)" (identifier "local_4c") (= "=") (call_expression "CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8)" (identifier "CONCAT22") (argument_list "(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8)" (( "(") (field_expression "local_4c._2_2_" (identifier "local_4c") (. ".") (field_identifier "_2_2_")) (, ",") (binary_expression "uVar3 << 8 | uVar3 >> 8" (binary_expression "uVar3 << 8" (identifier "uVar3") (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar3 >> 8" (identifier "uVar3") (>> ">>") (number_literal "8"))) () ")")))) (; ";")) (expression_statement "uVar4 = (uint)(*DAT_001c65c0 == 0);" (assignment_expression "uVar4 = (uint)(*DAT_001c65c0 == 0)" (identifier "uVar4") (= "=") (call_expression "(uint)(*DAT_001c65c0 == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*DAT_001c65c0 == 0)" (( "(") (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" (* "*") (identifier "DAT_001c65c0")) (== "==") (number_literal "0")) () ")")))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 7:\n        uVar4 = FUN_001101c1(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;" (case "case") (number_literal "7") (: ":") (expression_statement "uVar4 = FUN_001101c1(pcVar6,0,0);" (assignment_expression "uVar4 = FUN_001101c1(pcVar6,0,0)" (identifier "uVar4") (= "=") (call_expression "FUN_001101c1(pcVar6,0,0)" (identifier "FUN_001101c1") (argument_list "(pcVar6,0,0)" (( "(") (identifier "pcVar6") (, ",") (number_literal "0") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;" (assignment_expression "local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18" (identifier "local_4c") (= "=") (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8" (binary_expression "uVar4 >> 0x18" (identifier "uVar4") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar4 & 0xff0000) >> 8" (parenthesized_expression "(uVar4 & 0xff0000)" (( "(") (binary_expression "uVar4 & 0xff0000" (identifier "uVar4") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar4 & 0xff00) << 8" (parenthesized_expression "(uVar4 & 0xff00)" (( "(") (binary_expression "uVar4 & 0xff00" (identifier "uVar4") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar4 << 0x18" (identifier "uVar4") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "uVar4 = (uint)(*DAT_001c65c0 == 0);" (assignment_expression "uVar4 = (uint)(*DAT_001c65c0 == 0)" (identifier "uVar4") (= "=") (call_expression "(uint)(*DAT_001c65c0 == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*DAT_001c65c0 == 0)" (( "(") (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" (* "*") (identifier "DAT_001c65c0")) (== "==") (number_literal "0")) () ")")))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 8:\n        uVar4 = FUN_00110265(pcVar6,0,0);\n        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;\n        uVar4 = (uint)(*DAT_001c65c0 == 0);\n        break;" (case "case") (number_literal "8") (: ":") (expression_statement "uVar4 = FUN_00110265(pcVar6,0,0);" (assignment_expression "uVar4 = FUN_00110265(pcVar6,0,0)" (identifier "uVar4") (= "=") (call_expression "FUN_00110265(pcVar6,0,0)" (identifier "FUN_00110265") (argument_list "(pcVar6,0,0)" (( "(") (identifier "pcVar6") (, ",") (number_literal "0") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;" (assignment_expression "local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18" (identifier "local_4c") (= "=") (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8" (binary_expression "uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8" (binary_expression "uVar4 >> 0x18" (identifier "uVar4") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar4 & 0xff0000) >> 8" (parenthesized_expression "(uVar4 & 0xff0000)" (( "(") (binary_expression "uVar4 & 0xff0000" (identifier "uVar4") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar4 & 0xff00) << 8" (parenthesized_expression "(uVar4 & 0xff00)" (( "(") (binary_expression "uVar4 & 0xff00" (identifier "uVar4") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar4 << 0x18" (identifier "uVar4") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "uVar4 = (uint)(*DAT_001c65c0 == 0);" (assignment_expression "uVar4 = (uint)(*DAT_001c65c0 == 0)" (identifier "uVar4") (= "=") (call_expression "(uint)(*DAT_001c65c0 == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*DAT_001c65c0 == 0)" (( "(") (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" (* "*") (identifier "DAT_001c65c0")) (== "==") (number_literal "0")) () ")")))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 9:\n        cVar1 = *pcVar6;\n        if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }\nLAB_00143566:\n        uVar4 = 1;\n        goto LAB_00143345;" (case "case") (number_literal "9") (: ":") (expression_statement "cVar1 = *pcVar6;" (assignment_expression "cVar1 = *pcVar6" (identifier "cVar1") (= "=") (pointer_expression "*pcVar6" (* "*") (identifier "pcVar6"))) (; ";")) (if_statement "if ((cVar1 == '\"') || (cVar1 == '\'')) {\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }" (if "if") (parenthesized_expression "((cVar1 == '\"') || (cVar1 == '\''))" (( "(") (binary_expression "(cVar1 == '\"') || (cVar1 == '\'')" (parenthesized_expression "(cVar1 == '\"')" (( "(") (binary_expression "cVar1 == '\"'" (identifier "cVar1") (== "==") (char_literal "'\"'" (' "'") (escape_sequence "\"") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(cVar1 == '\'')" (( "(") (binary_expression "cVar1 == '\''" (identifier "cVar1") (== "==") (char_literal "'\''" (' "'") (escape_sequence "\'") (' "'"))) () ")"))) () ")")) (compound_statement "{\n          pcVar7 = pcVar6 + 1;\n          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);\n          if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }\n        }" ({ "{") (expression_statement "pcVar7 = pcVar6 + 1;" (assignment_expression "pcVar7 = pcVar6 + 1" (identifier "pcVar7") (= "=") (binary_expression "pcVar6 + 1" (identifier "pcVar6") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);" (assignment_expression "puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1)" (identifier "puVar8") (= "=") (cast_expression "(undefined1 *)FUN_0010d637(pcVar7,cVar1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0010d637(pcVar7,cVar1)" (identifier "FUN_0010d637") (argument_list "(pcVar7,cVar1)" (( "(") (identifier "pcVar7") (, ",") (identifier "cVar1") () ")"))))) (; ";")) (if_statement "if (puVar8 != (undefined1 *)0x0) {\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }" (if "if") (parenthesized_expression "(puVar8 != (undefined1 *)0x0)" (( "(") (binary_expression "puVar8 != (undefined1 *)0x0" (identifier "puVar8") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            *puVar8 = 0;\n            abStack_50[2] = 3;\n            goto switchD_001432ff_caseD_3;\n          }" ({ "{") (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" (* "*") (identifier "puVar8")) (= "=") (number_literal "0")) (; ";")) (expression_statement "abStack_50[2] = 3;" (assignment_expression "abStack_50[2] = 3" (subscript_expression "abStack_50[2]" (identifier "abStack_50") ([ "[") (number_literal "2") (] "]")) (= "=") (number_literal "3")) (; ";")) (goto_statement "goto switchD_001432ff_caseD_3;" (goto "goto") (statement_identifier "switchD_001432ff_caseD_3") (; ";")) (} "}"))) (} "}"))) (labeled_statement "LAB_00143566:\n        uVar4 = 1;" (statement_identifier "LAB_00143566") (: ":") (expression_statement "uVar4 = 1;" (assignment_expression "uVar4 = 1" (identifier "uVar4") (= "=") (number_literal "1")) (; ";"))) (goto_statement "goto LAB_00143345;" (goto "goto") (statement_identifier "LAB_00143345") (; ";"))) (case_statement "case 10:\n        pcVar7 = strchr(pcVar6,0x2f);\n        if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }\n        goto LAB_00143552;" (case "case") (number_literal "10") (: ":") (expression_statement "pcVar7 = strchr(pcVar6,0x2f);" (assignment_expression "pcVar7 = strchr(pcVar6,0x2f)" (identifier "pcVar7") (= "=") (call_expression "strchr(pcVar6,0x2f)" (identifier "strchr") (argument_list "(pcVar6,0x2f)" (( "(") (identifier "pcVar6") (, ",") (number_literal "0x2f") () ")")))) (; ";")) (if_statement "if (pcVar7 != (char *)0x0) {\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }" (if "if") (parenthesized_expression "(pcVar7 != (char *)0x0)" (( "(") (binary_expression "pcVar7 != (char *)0x0" (identifier "pcVar7") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          *pcVar7 = '\0';\n          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);\n          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);\n          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);\n          pcVar6 = strtok((char *)0x0,", \t/-");\n          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }\n        }" ({ "{") (expression_statement "*pcVar7 = '\0';" (assignment_expression "*pcVar7 = '\0'" (pointer_expression "*pcVar7" (* "*") (identifier "pcVar7")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);" (assignment_expression "iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1)" (identifier "iVar5") (= "=") (call_expression "FUN_001431de(pcVar6,(long)&local_4c + 1)" (identifier "FUN_001431de") (argument_list "(pcVar6,(long)&local_4c + 1)" (( "(") (identifier "pcVar6") (, ",") (binary_expression "(long)&local_4c + 1" (cast_expression "(long)&local_4c" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "&local_4c" (& "&") (identifier "local_4c"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "uVar4 = FUN_001101c1(pcVar7 + 1,0,10);" (assignment_expression "uVar4 = FUN_001101c1(pcVar7 + 1,0,10)" (identifier "uVar4") (= "=") (call_expression "FUN_001101c1(pcVar7 + 1,0,10)" (identifier "FUN_001101c1") (argument_list "(pcVar7 + 1,0,10)" (( "(") (binary_expression "pcVar7 + 1" (identifier "pcVar7") (+ "+") (number_literal "1")) (, ",") (number_literal "0") (, ",") (number_literal "10") () ")")))) (; ";")) (expression_statement "local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);" (assignment_expression "local_4c = CONCAT31(local_4c._1_3_,(char)uVar4)" (identifier "local_4c") (= "=") (call_expression "CONCAT31(local_4c._1_3_,(char)uVar4)" (identifier "CONCAT31") (argument_list "(local_4c._1_3_,(char)uVar4)" (( "(") (field_expression "local_4c._1_3_" (identifier "local_4c") (. ".") (field_identifier "_1_3_")) (, ",") (cast_expression "(char)uVar4" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "uVar4")) () ")")))) (; ";")) (expression_statement "pcVar6 = strtok((char *)0x0,", \t/-");" (assignment_expression "pcVar6 = strtok((char *)0x0,", \t/-")" (identifier "pcVar6") (= "=") (call_expression "strtok((char *)0x0,", \t/-")" (identifier "strtok") (argument_list "((char *)0x0,", \t/-")" (( "(") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (, ",") (string_literal "", \t/-"" (" """) (string_content ", ") (escape_sequence "\t") (string_content "/-") (" """)) () ")")))) (; ";")) (if_statement "if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))\n          {\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }" (if "if") (parenthesized_expression "((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))" (( "(") (binary_expression "(((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0)" (parenthesized_expression "(((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0))" (( "(") (binary_expression "((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)" (parenthesized_expression "((pcVar6 != (char *)0x0) && (uVar4 < 0x21))" (( "(") (binary_expression "(pcVar6 != (char *)0x0) && (uVar4 < 0x21)" (parenthesized_expression "(pcVar6 != (char *)0x0)" (( "(") (binary_expression "pcVar6 != (char *)0x0" (identifier "pcVar6") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (&& "&&") (parenthesized_expression "(uVar4 < 0x21)" (( "(") (binary_expression "uVar4 < 0x21" (identifier "uVar4") (< "<") (number_literal "0x21")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*DAT_001c65c0 == 0)" (( "(") (binary_expression "*DAT_001c65c0 == 0" (pointer_expression "*DAT_001c65c0" (* "*") (identifier "DAT_001c65c0")) (== "==") (number_literal "0")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(iVar5 != 0)" (( "(") (binary_expression "iVar5 != 0" (identifier "iVar5") (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n            uVar4 = (uVar4 + 7 >> 3) + 5;\n            uVar10 = (ulong)uVar4;\n            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);\n            break;\n          }" ({ "{") (expression_statement "uVar4 = (uVar4 + 7 >> 3) + 5;" (assignment_expression "uVar4 = (uVar4 + 7 >> 3) + 5" (identifier "uVar4") (= "=") (binary_expression "(uVar4 + 7 >> 3) + 5" (parenthesized_expression "(uVar4 + 7 >> 3)" (( "(") (binary_expression "uVar4 + 7 >> 3" (binary_expression "uVar4 + 7" (identifier "uVar4") (+ "+") (number_literal "7")) (>> ">>") (number_literal "3")) () ")")) (+ "+") (number_literal "5"))) (; ";")) (expression_statement "uVar10 = (ulong)uVar4;" (assignment_expression "uVar10 = (ulong)uVar4" (identifier "uVar10") (= "=") (cast_expression "(ulong)uVar4" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar4"))) (; ";")) (expression_statement "uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);" (assignment_expression "uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4)" (identifier "uVar4") (= "=") (call_expression "FUN_001431de(pcVar6,abStack_50 + (int)uVar4)" (identifier "FUN_001431de") (argument_list "(pcVar6,abStack_50 + (int)uVar4)" (( "(") (identifier "pcVar6") (, ",") (binary_expression "abStack_50 + (int)uVar4" (identifier "abStack_50") (+ "+") (cast_expression "(int)uVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar4"))) () ")")))) (; ";")) (break_statement "break;" (break "break") (; ";")) (} "}"))) (} "}"))) (goto_statement "goto LAB_00143552;" (goto "goto") (statement_identifier "LAB_00143552") (; ";"))) (} "}"))) (expression_statement "pcVar6 = (char *)&local_4c;" (assignment_expression "pcVar6 = (char *)&local_4c" (identifier "pcVar6") (= "=") (cast_expression "(char *)&local_4c" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_4c" (& "&") (identifier "local_4c")))) (; ";")) (if_statement "if (uVar4 == 0) {\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }" (if "if") (parenthesized_expression "(uVar4 == 0)" (( "(") (binary_expression "uVar4 == 0" (identifier "uVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00143552:\n        uVar4 = 0;\n        break;\n      }" ({ "{") (labeled_statement "LAB_00143552:\n        uVar4 = 0;" (statement_identifier "LAB_00143552") (: ":") (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" (identifier "uVar4") (= "=") (number_literal "0")) (; ";"))) (break_statement "break;" (break "break") (; ";")) (} "}"))) (labeled_statement "LAB_00143345:\n      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);" (statement_identifier "LAB_00143345") (: ":") (expression_statement "FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);" (call_expression "FUN_0014302a(param_2,pbVar11,pcVar6,uVar10)" (identifier "FUN_0014302a") (argument_list "(param_2,pbVar11,pcVar6,uVar10)" (( "(") (identifier "param_2") (, ",") (identifier "pbVar11") (, ",") (identifier "pcVar6") (, ",") (identifier "uVar10") () ")"))) (; ";"))) (} "}")) (while "while") (parenthesized_expression "((*pbVar11 & 0x20) != 0)" (( "(") (binary_expression "(*pbVar11 & 0x20) != 0" (parenthesized_expression "(*pbVar11 & 0x20)" (( "(") (binary_expression "*pbVar11 & 0x20" (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")) (& "&") (number_literal "0x20")) () ")")) (!= "!=") (number_literal "0")) () ")")) (; ";")) (} "}"))) (if_statement "if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {\n                    \n    __stack_chk_fail();\n  }" (if "if") (parenthesized_expression "(local_40 != *(long *)(in_FS_OFFSET + 0x28))" (( "(") (binary_expression "local_40 != *(long *)(in_FS_OFFSET + 0x28)" (identifier "local_40") (!= "!=") (pointer_expression "*(long *)(in_FS_OFFSET + 0x28)" (* "*") (cast_expression "(long *)(in_FS_OFFSET + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_FS_OFFSET + 0x28)" (( "(") (binary_expression "in_FS_OFFSET + 0x28" (identifier "in_FS_OFFSET") (+ "+") (number_literal "0x28")) () ")"))))) () ")")) (compound_statement "{\n                    \n    __stack_chk_fail();\n  }" ({ "{") (expression_statement "__stack_chk_fail();" (call_expression "__stack_chk_fail()" (identifier "__stack_chk_fail") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (return_statement "return uVar4;" (return "return") (identifier "uVar4") (; ";")) (} "}")))

int function_1(char *const_str,void *arg,type_1 *var_7,char *option_strings)

{
  type_2 var_16;
  long var_21;
  type_3 var_14;
  type_4 var_5;
  int var_11;
  char *var_3;
  type_2 *var_9;
  size_t sVar7;
  type_2 *s_00;
  type_4 length;
  type_1 *optflag;
  long var_1;
  uint8_t var_19 [2];
  type_1 userdef_optflag;
  char var_12 [9];
  
  var_21 = *(long *)(var_1 + 0x28);
  var_3 = var_2(const_str," \t=:");
  var_5 = 0;
  if (var_3 != (char *)0x0) {
    var_5 = var_4(var_3,(char **)0x0,0);
    if ((*bb_errno == 0) && (var_5 < 0xff)) {
      userdef_optflag.flags = '\t';
      userdef_optflag.code = (uint8_t)var_5;
      optflag = &userdef_optflag;
    }
    else {
      var_5 = var_6(var_3,option_strings);
      optflag = var_7 + var_5;
    }
    var_5 = 0;
    do {
      if (optflag->flags == '\t') {
        var_9 = (type_2 *)var_2((char *)0x0,"");
        var_8((char *)var_9);
      }
      else {
        var_9 = (type_2 *)var_2((char *)0x0,", \t");
      }
      if (var_9 == (type_2 *)0x0) break;
      var_5 = optflag->flags & 0xf;
      length = (type_4)(type_2)dhcp_option_lengths[var_5];
      s_00 = var_9;
      switch(var_5) {
      default:
        var_5 = 0;
        break;
      case 1:
        var_5 = var_10((char *)var_9,var_12);
        break;
      case 2:
        var_11 = var_10((char *)var_9,var_12);
        var_3 = var_2((char *)0x0,", \t/-");
        if ((var_3 != (char *)0x0) && (var_11 != 0)) {
          var_5 = var_10(var_3,var_12 + 4);
          break;
        }
        goto LAB_00143552;
      case 3:
      case 4:
      case 0xc:
switchD_001432ff_caseD_3:
        sVar7 = var_13((char *)s_00,0xfe);
        length = (type_4)sVar7;
        var_9 = s_00;
        if (0 < (int)length) goto LAB_00143566;
        goto LAB_00143552;
      case 5:
        var_5 = var_4((char *)var_9,(char **)0x0,0);
        var_12[0] = (char)var_5;
        var_5 = (type_4)(*bb_errno == 0);
        break;
      case 6:
        var_5 = var_4((char *)var_9,(char **)0x0,0);
        var_14 = (type_3)var_5 << 8 | (type_3)var_5 >> 8;
        var_12[0] = (char)var_14;
        var_12[1] = (char)(var_14 >> 8);
        var_5 = (type_4)(*bb_errno == 0);
        break;
      case 7:
        var_5 = var_4((char *)var_9,(char **)0x0,0);
        var_12._0_4_ = var_5 >> 0x18 | (var_5 & 0xff0000) >> 8 | (var_5 & 0xff00) << 8 |
                       var_5 << 0x18;
        var_5 = (type_4)(*bb_errno == 0);
        break;
      case 8:
        var_5 = var_15((char *)var_9,(char **)0x0,0);
        var_12._0_4_ = var_5 >> 0x18 | (var_5 & 0xff0000) >> 8 | (var_5 & 0xff00) << 8 |
                       var_5 << 0x18;
        var_5 = (type_4)(*bb_errno == 0);
        break;
      case 9:
        var_16 = *var_9;
        if ((var_16 == 0x22) || (var_16 == 0x27)) {
          s_00 = var_9 + 1;
          var_3 = var_17((char *)s_00,(type_4)var_16);
          if (var_3 != (char *)0x0) {
            *var_3 = '\0';
            userdef_optflag.flags = '\x03';
            goto switchD_001432ff_caseD_3;
          }
        }
LAB_00143566:
        var_5 = 1;
        goto LAB_00143345;
      case 10:
        var_3 = var_18((char *)var_9,0x2f);
        if (var_3 != (char *)0x0) {
          *var_3 = '\0';
          var_11 = var_10((char *)var_9,var_12 + 1);
          var_5 = var_4(var_3 + 1,(char **)0x0,10);
          var_12[0] = (char)var_5;
          var_3 = var_2((char *)0x0,", \t/-");
          if ((((var_3 != (char *)0x0) && (var_5 < 0x21)) && (*bb_errno == 0)) && (var_11 != 0)) {
            length = (var_5 + 7 >> 3) + 5;
            var_5 = var_10(var_3,var_19 + (int)length);
            break;
          }
        }
        goto LAB_00143552;
      }
      var_9 = (type_2 *)var_12;
      if (var_5 == 0) {
LAB_00143552:
        var_5 = 0;
        break;
      }
LAB_00143345:
      var_20((type_5 **)arg,optflag,(char *)var_9,length);
    } while ((optflag->flags & 0x20) != 0);
  }
  if (var_21 != *(long *)(var_1 + 0x28)) {
                    /* WARNING: Subroutine does not return */
    var_22();
  }
  return var_5;
}


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

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

{
  char cVar1;
  undefined1 uVar2;
  ushort uVar3;
  uint uVar4;
  int iVar5;
  char *pcVar6;
  char *pcVar7;
  undefined1 *puVar8;
  size_t sVar9;
  ulong uVar10;
  byte *pbVar11;
  long in_FS_OFFSET;
  byte abStack_50 [4];
  undefined4 local_4c;
  undefined1 local_48 [8];
  long local_40;
  
  local_40 = *(long *)(in_FS_OFFSET + 0x28);
  pcVar6 = strtok(param_1," \t=:");
  uVar4 = 0;
  if (pcVar6 != (char *)0x0) {
    uVar4 = FUN_001101c1(pcVar6,0,0);
    if ((*DAT_001c65c0 == 0) && (uVar4 < 0xff)) {
      abStack_50[2] = 9;
      abStack_50[3] = (char)uVar4;
      pbVar11 = abStack_50 + 2;
    }
    else {
      uVar4 = FUN_00142cf5(pcVar6,param_4);
      pbVar11 = (byte *)(param_3 + (ulong)uVar4 * 2);
    }
    uVar4 = 0;
    do {
      if (*pbVar11 == 9) {
        pcVar6 = strtok((char *)0x0,"");
        FUN_001a4de3(pcVar6);
      }
      else {
        pcVar6 = strtok((char *)0x0,", \t");
      }
      if (pcVar6 == (char *)0x0) break;
      uVar10 = (ulong)(byte)(&DAT_001bb7c1)[*pbVar11 & 0xf];
      pcVar7 = pcVar6;
      switch(*pbVar11 & 0xf) {
      default:
        uVar4 = 0;
        break;
      case 1:
        uVar4 = FUN_001431de(pcVar6,&local_4c);
        break;
      case 2:
        iVar5 = FUN_001431de(pcVar6,&local_4c);
        pcVar6 = strtok((char *)0x0,", \t/-");
        if ((pcVar6 != (char *)0x0) && (iVar5 != 0)) {
          uVar4 = FUN_001431de(pcVar6,local_48);
          break;
        }
        goto LAB_00143552;
      case 3:
      case 4:
      case 0xc:
switchD_001432ff_caseD_3:
        sVar9 = strnlen(pcVar7,0xfe);
        uVar10 = sVar9 & 0xffffffff;
        pcVar6 = pcVar7;
        if (0 < (int)sVar9) goto LAB_00143566;
        goto LAB_00143552;
      case 5:
        uVar2 = FUN_001101c1(pcVar6,0,0);
        local_4c = CONCAT31(local_4c._1_3_,uVar2);
        uVar4 = (uint)(*DAT_001c65c0 == 0);
        break;
      case 6:
        uVar3 = FUN_001101c1(pcVar6,0,0);
        local_4c = CONCAT22(local_4c._2_2_,uVar3 << 8 | uVar3 >> 8);
        uVar4 = (uint)(*DAT_001c65c0 == 0);
        break;
      case 7:
        uVar4 = FUN_001101c1(pcVar6,0,0);
        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;
        uVar4 = (uint)(*DAT_001c65c0 == 0);
        break;
      case 8:
        uVar4 = FUN_00110265(pcVar6,0,0);
        local_4c = uVar4 >> 0x18 | (uVar4 & 0xff0000) >> 8 | (uVar4 & 0xff00) << 8 | uVar4 << 0x18;
        uVar4 = (uint)(*DAT_001c65c0 == 0);
        break;
      case 9:
        cVar1 = *pcVar6;
        if ((cVar1 == '\"') || (cVar1 == '\'')) {
          pcVar7 = pcVar6 + 1;
          puVar8 = (undefined1 *)FUN_0010d637(pcVar7,cVar1);
          if (puVar8 != (undefined1 *)0x0) {
            *puVar8 = 0;
            abStack_50[2] = 3;
            goto switchD_001432ff_caseD_3;
          }
        }
LAB_00143566:
        uVar4 = 1;
        goto LAB_00143345;
      case 10:
        pcVar7 = strchr(pcVar6,0x2f);
        if (pcVar7 != (char *)0x0) {
          *pcVar7 = '\0';
          iVar5 = FUN_001431de(pcVar6,(long)&local_4c + 1);
          uVar4 = FUN_001101c1(pcVar7 + 1,0,10);
          local_4c = CONCAT31(local_4c._1_3_,(char)uVar4);
          pcVar6 = strtok((char *)0x0,", \t/-");
          if ((((pcVar6 != (char *)0x0) && (uVar4 < 0x21)) && (*DAT_001c65c0 == 0)) && (iVar5 != 0))
          {
            uVar4 = (uVar4 + 7 >> 3) + 5;
            uVar10 = (ulong)uVar4;
            uVar4 = FUN_001431de(pcVar6,abStack_50 + (int)uVar4);
            break;
          }
        }
        goto LAB_00143552;
      }
      pcVar6 = (char *)&local_4c;
      if (uVar4 == 0) {
LAB_00143552:
        uVar4 = 0;
        break;
      }
LAB_00143345:
      FUN_0014302a(param_2,pbVar11,pcVar6,uVar10);
    } while ((*pbVar11 & 0x20) != 0);
  }
  if (local_40 != *(long *)(in_FS_OFFSET + 0x28)) {
                    /* WARNING: Subroutine does not return */
    __stack_chk_fail();
  }
  return uVar4;
}

