
void wmap(void *handle,char *outkey,Conf *conf,int primary,int include_values)

{
  undefined *puVar1;
  char *pcVar2;
  int iVar3;
  int iVar4;
  char *ptr;
  char *pcVar5;
  undefined *puVar6;
  char cVar8;
  undefined1 *puVar7;
  size_t n;
  char *pcVar9;
  char *pcVar10;
  char *pcVar11;
  char *key;
  undefined4 local_2c;
  
  local_2c = *(undefined4 *)PTR___stack_chk_guard_000b0c9c;
  pcVar2 = conf_get_str_strs(conf,primary,(char *)0x0,&key);
  if (pcVar2 == (char *)0x0) {
    n = 1;
  }
  else {
    n = 1;
    do {
      pcVar5 = key;
      iVar3 = (*(code *)PTR_strlen_000b0be4)(key);
      iVar4 = (*(code *)PTR_strlen_000b0be4)(pcVar2);
      n = (iVar3 + iVar4 + 1) * 2 + n;
      pcVar2 = conf_get_str_strs(conf,primary,pcVar5,&key);
    } while (pcVar2 != (char *)0x0);
  }
  ptr = (char *)safemalloc(n,1);
  pcVar5 = conf_get_str_strs(conf,primary,(char *)0x0,&key);
  puVar1 = PTR_s_Present_000b0188;
  pcVar2 = ptr;
  if (pcVar5 != (char *)0x0) {
    puVar6 = PTR_s_Present_000b0188 + 0x2e20;
    do {
      if ((primary == 0x9b) &&
         (iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar9 = key, iVar3 == 0)) {
        key = dupstr(key);
        puVar7 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(key,0x4c);
        if (puVar7 == (undefined1 *)0x0) {
          pcVar5 = puVar1 + 0x2d54;
        }
        else {
          pcVar5 = puVar1 + 0x2d54;
          *puVar7 = 0x44;
        }
      }
      else {
        pcVar9 = (char *)0x0;
      }
      pcVar10 = pcVar2;
      if (ptr != pcVar2) {
        pcVar10 = pcVar2 + 1;
        *pcVar2 = ',';
      }
      cVar8 = *key;
      pcVar2 = pcVar10;
      pcVar10 = key;
      while (pcVar11 = pcVar2, cVar8 != '\0') {
        while (((cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\'))) {
          cVar8 = *pcVar10;
          pcVar10 = pcVar10 + 1;
          pcVar2 = pcVar11 + 1;
          *pcVar11 = cVar8;
          cVar8 = *pcVar10;
          pcVar11 = pcVar2;
          if (cVar8 == '\0') goto LAB_0002cdf8;
        }
        *pcVar11 = '\\';
        cVar8 = *pcVar10;
        pcVar10 = pcVar10 + 1;
        pcVar2 = pcVar11 + 2;
        pcVar11[1] = cVar8;
        cVar8 = *pcVar10;
      }
LAB_0002cdf8:
      if (include_values != 0) {
        *pcVar2 = '=';
        cVar8 = *pcVar5;
        while (pcVar2 = pcVar2 + 1, cVar8 != '\0') {
          if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {
            *pcVar2 = '\\';
            pcVar2 = pcVar2 + 1;
          }
          cVar8 = *pcVar5;
          pcVar5 = pcVar5 + 1;
          *pcVar2 = cVar8;
          cVar8 = *pcVar5;
        }
      }
      if (pcVar9 != (char *)0x0) {
        (*(code *)PTR_free_000b0ca4)(key);
        key = pcVar9;
      }
      pcVar5 = conf_get_str_strs(conf,primary,key,&key);
    } while (pcVar5 != (char *)0x0);
  }
  puVar1 = PTR_write_setting_s_000b0564;
  *pcVar2 = '\0';
  (*(code *)puVar1)(handle,outkey,ptr);
                    /* WARNING: Subroutine does not return */
  safefree(ptr);
}



void FUN_0002cc18(undefined4 param_1,undefined4 *param_2,undefined4 param_3,int param_4,int param_5)

{
  undefined *puVar1;
  int iVar2;
  int iVar3;
  char *pcVar4;
  char *pcVar5;
  undefined *puVar6;
  char cVar12;
  char *pcVar7;
  undefined1 *puVar8;
  uint uVar9;
  uint uVar10;
  undefined4 uVar11;
  char **ppcVar13;
  uint *puVar14;
  uint uVar15;
  int iVar16;
  char *pcVar17;
  undefined4 *puVar18;
  char *pcVar19;
  char *pcVar20;
  uint uVar21;
  undefined *puVar22;
  char *local_30;
  int local_2c;
  
  puVar22 = PTR___stack_chk_guard_000b0c9c;
  local_2c = *(int *)PTR___stack_chk_guard_000b0c9c;
  iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30);
  if (iVar2 == 0) {
    iVar16 = 1;
  }
  else {
    iVar16 = 1;
    do {
      pcVar5 = local_30;
      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);
      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);
      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;
      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);
    } while (iVar2 != 0);
  }
  pcVar4 = (char *)safemalloc(iVar16,1);
  ppcVar13 = &local_30;
  pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30);
  puVar1 = PTR_s_Present_000b0188;
  pcVar20 = pcVar4;
  if (pcVar5 == (char *)0x0) {
    pcVar5 = (char *)0x0;
  }
  else {
    puVar6 = PTR_s_Present_000b0188 + 0x2e20;
    do {
      if ((param_4 == 0x9b) &&
         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {
        local_30 = (char *)dupstr(local_30);
        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);
        if (puVar8 == (undefined1 *)0x0) {
          pcVar5 = puVar1 + 0x2d54;
        }
        else {
          pcVar5 = puVar1 + 0x2d54;
          *puVar8 = 0x44;
        }
      }
      else {
        pcVar17 = (char *)0x0;
      }
      pcVar19 = pcVar20;
      if (pcVar4 != pcVar20) {
        pcVar19 = pcVar20 + 1;
        *pcVar20 = ',';
      }
      cVar12 = *local_30;
      pcVar20 = pcVar19;
      pcVar19 = local_30;
      while (cVar12 != '\0') {
        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {
          *pcVar20 = '\\';
          pcVar7 = pcVar20 + 1;
          cVar12 = *pcVar19;
          pcVar19 = pcVar19 + 1;
          pcVar20 = pcVar20 + 2;
          *pcVar7 = cVar12;
          cVar12 = *pcVar19;
          if (cVar12 == '\0') goto LAB_0002cdf8;
        }
        cVar12 = *pcVar19;
        pcVar19 = pcVar19 + 1;
        *pcVar20 = cVar12;
        pcVar20 = pcVar20 + 1;
        cVar12 = *pcVar19;
      }
LAB_0002cdf8:
      if (param_5 != 0) {
        *pcVar20 = '=';
        cVar12 = *pcVar5;
        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {
          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {
            *pcVar20 = '\\';
            pcVar20 = pcVar20 + 1;
          }
          cVar12 = *pcVar5;
          pcVar5 = pcVar5 + 1;
          *pcVar20 = cVar12;
          cVar12 = *pcVar5;
        }
      }
      if (pcVar17 != (char *)0x0) {
        (*(code *)PTR_free_000b0ca4)(local_30);
        local_30 = pcVar17;
      }
      ppcVar13 = &local_30;
      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);
    } while (pcVar5 != (char *)0x0);
  }
  puVar1 = PTR_write_setting_s_000b0564;
  *pcVar20 = '\0';
  pcVar20 = pcVar4;
  (*(code *)puVar1)(param_1);
  safefree(pcVar4);
  if (local_2c == *(int *)puVar22) {
    return;
  }
  puVar22 = PTR___stack_chk_fail_000b0c70;
  (*(code *)PTR___stack_chk_fail_000b0c70)();
  uVar21 = 0;
  uVar15 = 0;
  puVar14 = (uint *)&DAT_0000002c;
  pcVar17 = (char *)dupstr();
  cVar12 = *pcVar17;
  pcVar4 = pcVar17;
  do {
    if (cVar12 == ',') {
      pcVar19 = pcVar4 + 1;
    }
    else {
      if (cVar12 == '\0') {
        safefree(pcVar17);
        if ((int)uVar15 < (int)pcVar20) {
          do {
            uVar9 = param_2[1];
            if (0x1f < (int)uVar9) goto LAB_0002d234;
            pcVar5 = (char *)0x0;
            puVar14 = param_2 + 1;
            while( true ) {
              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;
              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;
              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;
              uVar9 = 0;
              if (uVar15 == 0) break;
              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {
                uVar9 = uVar9 + 1;
                iVar2 = *(int *)(puVar22 + 0x831ec);
                if (uVar9 == uVar15) goto LAB_0002d26c;
              }
              if (-1 < (int)puVar14[2]) {
                uVar9 = uVar9 + 1;
              }
              while( true ) {
                iVar2 = uVar15 - 1;
                if ((int)uVar9 <= iVar2) {
                  do {
                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);
                    iVar16 = iVar2 + 1;
                    iVar2 = iVar2 + -1;
                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);
                  } while (iVar2 != uVar9 - 1);
                }
                uVar15 = uVar15 + 1;
                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);
                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);
LAB_0002d218:
                pcVar5 = pcVar5 + 1;
                puVar14 = puVar14 + 4;
                pcVar4 = pcVar20;
                if (pcVar20 == pcVar5) goto LAB_0002d28c;
                uVar9 = *puVar14;
                if ((int)uVar9 < 0x20) break;
LAB_0002d234:
                (**(code **)(puVar22 + 0x83b24))
                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,
                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);
LAB_0002d258:
                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;
              }
            }
            iVar2 = *(int *)(puVar22 + 0x831ec);
LAB_0002d26c:
            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))
                                       (*(int *)(puVar22 + 0x831ec) + -8,
                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);
LAB_0002d28c:
          } while ((int)uVar15 < (int)pcVar4);
        }
        return;
      }
      cVar12 = pcVar4[1];
      pcVar7 = pcVar4;
      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {
        if (cVar12 == ',') {
          *pcVar19 = '\0';
          pcVar19 = pcVar7 + 2;
          break;
        }
        cVar12 = pcVar7[2];
        pcVar7 = pcVar19;
      }
      if (0 < (int)pcVar20) {
        pcVar5 = (char *)0x0;
        puVar18 = param_2;
        do {
          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);
          if (iVar2 == 0) {
            if ((puVar18[1] != 0xffffffff) &&
               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {
              uVar21 = uVar21 | uVar9;
              conf_set_int_int(ppcVar13,&_gp_1,uVar15);
              uVar15 = uVar15 + 1;
            }
            break;
          }
          pcVar5 = pcVar5 + 1;
          puVar18 = puVar18 + 4;
        } while (pcVar20 != pcVar5);
      }
    }
    cVar12 = *pcVar19;
    pcVar4 = pcVar19;
  } while( true );
}


lui gp,0x9
addiu gp,gp,-0x4ac8
addu gp,gp,t9
lw v0,-0x74b4(gp)
addiu sp,sp,-0x60
lw t9,-0x7be8(gp)
sw v0,0x28(sp)
sw s2,0x40(sp)
addiu s2,sp,0x30
sw s1,0x3c(sp)
or s1,a2,zero
sw s0,0x38(sp)
or a2,zero,zero
sw gp,0x10(sp)
or s0,a3,zero
sw s4,0x48(sp)
or a3,s2,zero
sw a0,0x20(sp)
or a0,s1,zero
sw a1,0x24(sp)
or a1,s0,zero
sw ra,0x5c(sp)
sw s8,0x58(sp)
sw s7,0x54(sp)
sw s6,0x50(sp)
sw s5,0x4c(sp)
sw s3,0x44(sp)
lw v0,0x0(v0)
lw s4,0x70(sp)
sw v0,0x34(sp)
bal 0x0001c138
_nop
beq v0,zero,0x0002cf88
_lw gp,0x10(sp)
li s5,0x1
or s6,v0,zero
lw s7,0x30(sp)
lw t9,-0x756c(gp)
jalr t9
_or a0,s7,zero
or a0,s6,zero
lw gp,0x10(sp)
lw t9,-0x756c(gp)
jalr t9
_or s3,v0,zero
or a3,s2,zero
lw gp,0x10(sp)
addu v0,s3,v0
or a2,s7,zero
addiu v0,v0,0x1
or a1,s0,zero
lw t9,-0x7be8(gp)
sll v0,v0,0x1
or a0,s1,zero
bal 0x0001c138
_addu s5,v0,s5
or s3,s5,zero
lw gp,0x10(sp)
bne v0,zero,0x0002cca8
_or s6,v0,zero
lw t9,-0x7f68(gp)
li a1,0x1
bal 0x00020374
_or a0,s3,zero
or a2,zero,zero
lw gp,0x10(sp)
or a3,s2,zero
or a1,s0,zero
or a0,s1,zero
lw t9,-0x7be8(gp)
bal 0x0001c138
_or s3,v0,zero
lw gp,0x10(sp)
beq v0,zero,0x0002cf80
_or s6,v0,zero
lw v0,-0x7fc8(gp)
li s8,0x5c
lw s5,-0x7fc8(gp)
or s7,s3,zero
sw v0,0x2c(sp)
addiu v0,s5,0x2e20
sw v0,0x1c(sp)
li v0,0x9b
beq s0,v0,0x0002ceac
_lw t9,-0x7478(gp)
or s5,zero,zero
beq s3,s7,0x0002cd80
_li v0,0x2c
addiu s7,s7,0x1
sb v0,-0x1(s7)
lw v1,0x30(sp)
lb v0,0x0(v1)
beq v0,zero,0x0002cdf8
_nop
li a1,0x3d
li a3,0x2c
b 0x0002cdcc
_li t3,0x5c
beq v0,a3,0x0002cdd4
_nop
beq v0,t3,0x0002cdd4
_or v0,s7,zero
lb a0,0x0(v1)
addiu v1,v1,0x1
addiu s7,v0,0x1
sb a0,0x0(v0)
lb v0,0x0(v1)
beq v0,zero,0x0002cdf8
_nop
bne v0,a1,0x0002cda0
_nop
sb s8,0x0(s7)
addiu v0,s7,0x1
lb a0,0x0(v1)
addiu v1,v1,0x1
addiu s7,v0,0x1
sb a0,0x0(v0)
lb v0,0x0(v1)
bne v0,zero,0x0002cdcc
_nop
bne s4,zero,0x0002cf04
_li v0,0x3d
beq s5,zero,0x0002ce20
_lw a2,0x30(sp)
lw t9,-0x74ac(gp)
jalr t9
_or a0,a2,zero
or a2,s5,zero
lw gp,0x10(sp)
sw s5,0x30(sp)
lw t9,-0x7be8(gp)
or a3,s2,zero
or a1,s0,zero
bal 0x0001c138
_or a0,s1,zero
lw gp,0x10(sp)
bne v0,zero,0x0002cd60
_or s6,v0,zero
lw t9,-0x7bec(gp)
or a2,s3,zero
lw a0,0x20(sp)
lw a1,0x24(sp)
jalr t9
_sb zero,0x0(s7)
lw gp,0x10(sp)
lw t9,-0x7fa0(gp)
bal 0x000210a4
_or a0,s3,zero
lw v0,0x28(sp)
lw v1,0x34(sp)
lw gp,0x10(sp)
lw v0,0x0(v0)
bne v1,v0,0x0002cf90
_lw ra,0x5c(sp)
lw s8,0x58(sp)
lw s7,0x54(sp)
lw s6,0x50(sp)
lw s5,0x4c(sp)
lw s4,0x48(sp)
lw s3,0x44(sp)
lw s2,0x40(sp)
lw s1,0x3c(sp)
lw s0,0x38(sp)
jr ra
_addiu sp,sp,0x60
or a0,s6,zero
jalr t9
_lw a1,0x1c(sp)
bne v0,zero,0x0002cd6c
_lw gp,0x10(sp)
lw s5,0x30(sp)
lw t9,-0x7f60(gp)
bal 0x000204bc
_or a0,s5,zero
li a1,0x4c
lw gp,0x10(sp)
or a0,v0,zero
lw t9,-0x7564(gp)
jalr t9
_sw v0,0x30(sp)
beq v0,zero,0x0002cf6c
_lw gp,0x10(sp)
lw v1,0x2c(sp)
addiu s6,v1,0x2d54
li v1,0x44
b 0x0002cd70
_sb v1,0x0(v0)
sb v0,0x0(s7)
lb v0,0x0(s6)
beq v0,zero,0x0002cf78
_addiu v1,s7,0x1
li a0,0x3d
li a1,0x2c
li a3,0x5c
b 0x0002cf58
_or s7,v1,zero
beq v0,a1,0x0002cf60
_nop
beq v0,a3,0x0002cf64
_addiu v0,s7,0x1
or v0,s7,zero
lb v1,0x0(s6)
addiu s6,s6,0x1
addiu s7,v0,0x1
sb v1,0x0(v0)
lb v0,0x0(s6)
beq v0,zero,0x0002ce00
_nop
bne v0,a0,0x0002cf28
_nop
addiu v0,s7,0x1
b 0x0002cf3c
_sb s8,0x0(s7)
lw v0,0x2c(sp)
b 0x0002cd70
_addiu s6,v0,0x2d54
b 0x0002ce00
_or s7,v1,zero
b 0x0002ce40
_or s7,s3,zero
b 0x0002cd08
_li s3,0x1
lw t9,-0x74e0(gp)
jalr t9
_nop
(translation_unit "void FUN_0002cc18(undefined4 param_1,undefined4 *param_2,undefined4 param_3,int param_4,int param_5)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  char *pcVar4;\n  char *pcVar5;\n  undefined *puVar6;\n  char cVar12;\n  char *pcVar7;\n  undefined1 *puVar8;\n  uint uVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char **ppcVar13;\n  uint *puVar14;\n  uint uVar15;\n  int iVar16;\n  char *pcVar17;\n  undefined4 *puVar18;\n  char *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  undefined *puVar22;\n  char *local_30;\n  int local_2c;\n  \n  puVar22 = PTR___stack_chk_guard_000b0c9c;\n  local_2c = *(int *)PTR___stack_chk_guard_000b0c9c;\n  iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30);\n  if (iVar2 == 0) {\n    iVar16 = 1;\n  }\n  else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }\n  pcVar4 = (char *)safemalloc(iVar16,1);\n  ppcVar13 = &local_30;\n  pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30);\n  puVar1 = PTR_s_Present_000b0188;\n  pcVar20 = pcVar4;\n  if (pcVar5 == (char *)0x0) {\n    pcVar5 = (char *)0x0;\n  }\n  else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }\n  puVar1 = PTR_write_setting_s_000b0564;\n  *pcVar20 = '\0';\n  pcVar20 = pcVar4;\n  (*(code *)puVar1)(param_1);\n  safefree(pcVar4);\n  if (local_2c == *(int *)puVar22) {\n    return;\n  }\n  puVar22 = PTR___stack_chk_fail_000b0c70;\n  (*(code *)PTR___stack_chk_fail_000b0c70)();\n  uVar21 = 0;\n  uVar15 = 0;\n  puVar14 = (uint *)&DAT_0000002c;\n  pcVar17 = (char *)dupstr();\n  cVar12 = *pcVar17;\n  pcVar4 = pcVar17;\n  do {\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  } while( true );\n}\n\n" (function_definition "void FUN_0002cc18(undefined4 param_1,undefined4 *param_2,undefined4 param_3,int param_4,int param_5)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  char *pcVar4;\n  char *pcVar5;\n  undefined *puVar6;\n  char cVar12;\n  char *pcVar7;\n  undefined1 *puVar8;\n  uint uVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char **ppcVar13;\n  uint *puVar14;\n  uint uVar15;\n  int iVar16;\n  char *pcVar17;\n  undefined4 *puVar18;\n  char *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  undefined *puVar22;\n  char *local_30;\n  int local_2c;\n  \n  puVar22 = PTR___stack_chk_guard_000b0c9c;\n  local_2c = *(int *)PTR___stack_chk_guard_000b0c9c;\n  iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30);\n  if (iVar2 == 0) {\n    iVar16 = 1;\n  }\n  else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }\n  pcVar4 = (char *)safemalloc(iVar16,1);\n  ppcVar13 = &local_30;\n  pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30);\n  puVar1 = PTR_s_Present_000b0188;\n  pcVar20 = pcVar4;\n  if (pcVar5 == (char *)0x0) {\n    pcVar5 = (char *)0x0;\n  }\n  else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }\n  puVar1 = PTR_write_setting_s_000b0564;\n  *pcVar20 = '\0';\n  pcVar20 = pcVar4;\n  (*(code *)puVar1)(param_1);\n  safefree(pcVar4);\n  if (local_2c == *(int *)puVar22) {\n    return;\n  }\n  puVar22 = PTR___stack_chk_fail_000b0c70;\n  (*(code *)PTR___stack_chk_fail_000b0c70)();\n  uVar21 = 0;\n  uVar15 = 0;\n  puVar14 = (uint *)&DAT_0000002c;\n  pcVar17 = (char *)dupstr();\n  cVar12 = *pcVar17;\n  pcVar4 = pcVar17;\n  do {\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  } while( true );\n}" primitive_type (function_declarator "FUN_0002cc18(undefined4 param_1,undefined4 *param_2,undefined4 param_3,int param_4,int param_5)" identifier (parameter_list "(undefined4 param_1,undefined4 *param_2,undefined4 param_3,int param_4,int param_5)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "undefined4 *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "int param_4" primitive_type identifier) , (parameter_declaration "int param_5" primitive_type identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  char *pcVar4;\n  char *pcVar5;\n  undefined *puVar6;\n  char cVar12;\n  char *pcVar7;\n  undefined1 *puVar8;\n  uint uVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char **ppcVar13;\n  uint *puVar14;\n  uint uVar15;\n  int iVar16;\n  char *pcVar17;\n  undefined4 *puVar18;\n  char *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  undefined *puVar22;\n  char *local_30;\n  int local_2c;\n  \n  puVar22 = PTR___stack_chk_guard_000b0c9c;\n  local_2c = *(int *)PTR___stack_chk_guard_000b0c9c;\n  iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30);\n  if (iVar2 == 0) {\n    iVar16 = 1;\n  }\n  else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }\n  pcVar4 = (char *)safemalloc(iVar16,1);\n  ppcVar13 = &local_30;\n  pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30);\n  puVar1 = PTR_s_Present_000b0188;\n  pcVar20 = pcVar4;\n  if (pcVar5 == (char *)0x0) {\n    pcVar5 = (char *)0x0;\n  }\n  else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }\n  puVar1 = PTR_write_setting_s_000b0564;\n  *pcVar20 = '\0';\n  pcVar20 = pcVar4;\n  (*(code *)puVar1)(param_1);\n  safefree(pcVar4);\n  if (local_2c == *(int *)puVar22) {\n    return;\n  }\n  puVar22 = PTR___stack_chk_fail_000b0c70;\n  (*(code *)PTR___stack_chk_fail_000b0c70)();\n  uVar21 = 0;\n  uVar15 = 0;\n  puVar14 = (uint *)&DAT_0000002c;\n  pcVar17 = (char *)dupstr();\n  cVar12 = *pcVar17;\n  pcVar4 = pcVar17;\n  do {\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  } while( true );\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "char *pcVar5;" primitive_type (pointer_declarator "*pcVar5" * identifier) ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "char cVar12;" primitive_type identifier ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "undefined1 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "char **ppcVar13;" primitive_type (pointer_declarator "**ppcVar13" * (pointer_declarator "*ppcVar13" * identifier)) ;) (declaration "uint *puVar14;" type_identifier (pointer_declarator "*puVar14" * identifier) ;) (declaration "uint uVar15;" type_identifier identifier ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "char *pcVar17;" primitive_type (pointer_declarator "*pcVar17" * identifier) ;) (declaration "undefined4 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "char *pcVar19;" primitive_type (pointer_declarator "*pcVar19" * identifier) ;) (declaration "char *pcVar20;" primitive_type (pointer_declarator "*pcVar20" * identifier) ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "undefined *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "char *local_30;" primitive_type (pointer_declarator "*local_30" * identifier) ;) (declaration "int local_2c;" primitive_type identifier ;) (expression_statement "puVar22 = PTR___stack_chk_guard_000b0c9c;" (assignment_expression "puVar22 = PTR___stack_chk_guard_000b0c9c" identifier = identifier) ;) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_000b0c9c;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_000b0c9c" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_000b0c9c" * (cast_expression "(int *)PTR___stack_chk_guard_000b0c9c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30);" (assignment_expression "iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30)" identifier = (call_expression "conf_get_str_strs(param_3,param_4,0,&local_30)" identifier (argument_list "(param_3,param_4,0,&local_30)" ( identifier , identifier , number_literal , (pointer_expression "&local_30" & identifier) )))) ;) (if_statement "if (iVar2 == 0) {\n    iVar16 = 1;\n  }\n  else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar16 = 1;\n  }" { (expression_statement "iVar16 = 1;" (assignment_expression "iVar16 = 1" identifier = number_literal) ;) }) (else_clause "else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }" else (compound_statement "{\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }" { (expression_statement "iVar16 = 1;" (assignment_expression "iVar16 = 1" identifier = number_literal) ;) (do_statement "do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);" do (compound_statement "{\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    }" { (expression_statement "pcVar5 = local_30;" (assignment_expression "pcVar5 = local_30" identifier = identifier) ;) (expression_statement "iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);" (assignment_expression "iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30)" identifier = (call_expression "(*(code *)PTR_strlen_000b0be4)(local_30)" (parenthesized_expression "(*(code *)PTR_strlen_000b0be4)" ( (pointer_expression "*(code *)PTR_strlen_000b0be4" * (cast_expression "(code *)PTR_strlen_000b0be4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_30)" ( identifier )))) ;) (expression_statement "iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);" (assignment_expression "iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2)" identifier = (call_expression "(*(code *)PTR_strlen_000b0be4)(iVar2)" (parenthesized_expression "(*(code *)PTR_strlen_000b0be4)" ( (pointer_expression "*(code *)PTR_strlen_000b0be4" * (cast_expression "(code *)PTR_strlen_000b0be4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar2)" ( identifier )))) ;) (expression_statement "iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;" (assignment_expression "iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16" identifier = (binary_expression "(iVar3 + iVar2 + 1) * 2 + iVar16" (binary_expression "(iVar3 + iVar2 + 1) * 2" (parenthesized_expression "(iVar3 + iVar2 + 1)" ( (binary_expression "iVar3 + iVar2 + 1" (binary_expression "iVar3 + iVar2" identifier + identifier) + number_literal) )) * number_literal) + identifier)) ;) (expression_statement "iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);" (assignment_expression "iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30)" identifier = (call_expression "conf_get_str_strs(param_3,param_4,pcVar5,&local_30)" identifier (argument_list "(param_3,param_4,pcVar5,&local_30)" ( identifier , identifier , identifier , (pointer_expression "&local_30" & identifier) )))) ;) }) while (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) ;) }))) (expression_statement "pcVar4 = (char *)safemalloc(iVar16,1);" (assignment_expression "pcVar4 = (char *)safemalloc(iVar16,1)" identifier = (cast_expression "(char *)safemalloc(iVar16,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "safemalloc(iVar16,1)" identifier (argument_list "(iVar16,1)" ( identifier , number_literal ))))) ;) (expression_statement "ppcVar13 = &local_30;" (assignment_expression "ppcVar13 = &local_30" identifier = (pointer_expression "&local_30" & identifier)) ;) (expression_statement "pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30);" (assignment_expression "pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30)" identifier = (cast_expression "(char *)conf_get_str_strs(param_3,param_4,0,&local_30)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "conf_get_str_strs(param_3,param_4,0,&local_30)" identifier (argument_list "(param_3,param_4,0,&local_30)" ( identifier , identifier , number_literal , (pointer_expression "&local_30" & identifier) ))))) ;) (expression_statement "puVar1 = PTR_s_Present_000b0188;" (assignment_expression "puVar1 = PTR_s_Present_000b0188" identifier = identifier) ;) (expression_statement "pcVar20 = pcVar4;" (assignment_expression "pcVar20 = pcVar4" identifier = identifier) ;) (if_statement "if (pcVar5 == (char *)0x0) {\n    pcVar5 = (char *)0x0;\n  }\n  else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }" if (parenthesized_expression "(pcVar5 == (char *)0x0)" ( (binary_expression "pcVar5 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar5 = (char *)0x0;\n  }" { (expression_statement "pcVar5 = (char *)0x0;" (assignment_expression "pcVar5 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }" else (compound_statement "{\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }" { (expression_statement "puVar6 = PTR_s_Present_000b0188 + 0x2e20;" (assignment_expression "puVar6 = PTR_s_Present_000b0188 + 0x2e20" identifier = (binary_expression "PTR_s_Present_000b0188 + 0x2e20" identifier + number_literal)) ;) (do_statement "do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);" do (compound_statement "{\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    }" { (if_statement "if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }" if (parenthesized_expression "((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0))" ( (binary_expression "(param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)" (parenthesized_expression "(param_4 == 0x9b)" ( (binary_expression "param_4 == 0x9b" identifier == number_literal) )) && (parenthesized_expression "(iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)" ( (comma_expression "iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0" (assignment_expression "iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6)" identifier = (call_expression "(*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6)" (parenthesized_expression "(*(code *)PTR_strcmp_000b0cd8)" ( (pointer_expression "*(code *)PTR_strcmp_000b0cd8" * (cast_expression "(code *)PTR_strcmp_000b0cd8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar5,puVar6)" ( identifier , identifier )))) , (comma_expression "pcVar17 = local_30, iVar2 == 0" (assignment_expression "pcVar17 = local_30" identifier = identifier) , (binary_expression "iVar2 == 0" identifier == number_literal))) ))) )) (compound_statement "{\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }" { (expression_statement "local_30 = (char *)dupstr(local_30);" (assignment_expression "local_30 = (char *)dupstr(local_30)" identifier = (cast_expression "(char *)dupstr(local_30)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dupstr(local_30)" identifier (argument_list "(local_30)" ( identifier ))))) ;) (expression_statement "puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);" (assignment_expression "puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c)" identifier = (cast_expression "(undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_strchr_000b0bec)(local_30,0x4c)" (parenthesized_expression "(*(code *)PTR_strchr_000b0bec)" ( (pointer_expression "*(code *)PTR_strchr_000b0bec" * (cast_expression "(code *)PTR_strchr_000b0bec" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_30,0x4c)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\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          pcVar5 = puVar1 + 0x2d54;\n        }" { (expression_statement "pcVar5 = puVar1 + 0x2d54;" (assignment_expression "pcVar5 = puVar1 + 0x2d54" identifier = (binary_expression "puVar1 + 0x2d54" identifier + number_literal)) ;) }) (else_clause "else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }" else (compound_statement "{\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }" { (expression_statement "pcVar5 = puVar1 + 0x2d54;" (assignment_expression "pcVar5 = puVar1 + 0x2d54" identifier = (binary_expression "puVar1 + 0x2d54" identifier + number_literal)) ;) (expression_statement "*puVar8 = 0x44;" (assignment_expression "*puVar8 = 0x44" (pointer_expression "*puVar8" * identifier) = number_literal) ;) }))) }) (else_clause "else {\n        pcVar17 = (char *)0x0;\n      }" else (compound_statement "{\n        pcVar17 = (char *)0x0;\n      }" { (expression_statement "pcVar17 = (char *)0x0;" (assignment_expression "pcVar17 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (expression_statement "pcVar19 = pcVar20;" (assignment_expression "pcVar19 = pcVar20" identifier = identifier) ;) (if_statement "if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }" if (parenthesized_expression "(pcVar4 != pcVar20)" ( (binary_expression "pcVar4 != pcVar20" identifier != identifier) )) (compound_statement "{\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }" { (expression_statement "pcVar19 = pcVar20 + 1;" (assignment_expression "pcVar19 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar20 = ',';" (assignment_expression "*pcVar20 = ','" (pointer_expression "*pcVar20" * identifier) = (char_literal "','" ' character ')) ;) })) (expression_statement "cVar12 = *local_30;" (assignment_expression "cVar12 = *local_30" identifier = (pointer_expression "*local_30" * identifier)) ;) (expression_statement "pcVar20 = pcVar19;" (assignment_expression "pcVar20 = pcVar19" identifier = identifier) ;) (expression_statement "pcVar19 = local_30;" (assignment_expression "pcVar19 = local_30" identifier = identifier) ;) (while_statement "while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }" while (parenthesized_expression "(cVar12 != '\0')" ( (binary_expression "cVar12 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }" { (while_statement "while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }" while (parenthesized_expression "(((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\')))" ( (parenthesized_expression "((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))" ( (binary_expression "(cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\')" (parenthesized_expression "(cVar12 == '=' || (cVar12 == ','))" ( (binary_expression "cVar12 == '=' || (cVar12 == ',')" (binary_expression "cVar12 == '='" identifier == (char_literal "'='" ' character ')) || (parenthesized_expression "(cVar12 == ',')" ( (binary_expression "cVar12 == ','" identifier == (char_literal "','" ' character ')) ))) )) || (parenthesized_expression "(cVar12 == '\\')" ( (binary_expression "cVar12 == '\\'" identifier == (char_literal "'\\'" ' escape_sequence ')) ))) )) )) (compound_statement "{\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }" { (expression_statement "*pcVar20 = '\\';" (assignment_expression "*pcVar20 = '\\'" (pointer_expression "*pcVar20" * identifier) = (char_literal "'\\'" ' escape_sequence ')) ;) (expression_statement "pcVar7 = pcVar20 + 1;" (assignment_expression "pcVar7 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" identifier = (pointer_expression "*pcVar19" * identifier)) ;) (expression_statement "pcVar19 = pcVar19 + 1;" (assignment_expression "pcVar19 = pcVar19 + 1" identifier = (binary_expression "pcVar19 + 1" identifier + number_literal)) ;) (expression_statement "pcVar20 = pcVar20 + 2;" (assignment_expression "pcVar20 = pcVar20 + 2" identifier = (binary_expression "pcVar20 + 2" identifier + number_literal)) ;) (expression_statement "*pcVar7 = cVar12;" (assignment_expression "*pcVar7 = cVar12" (pointer_expression "*pcVar7" * identifier) = identifier) ;) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" identifier = (pointer_expression "*pcVar19" * identifier)) ;) (if_statement "if (cVar12 == '\0') goto LAB_0002cdf8;" if (parenthesized_expression "(cVar12 == '\0')" ( (binary_expression "cVar12 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0002cdf8;" goto statement_identifier ;)) })) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" identifier = (pointer_expression "*pcVar19" * identifier)) ;) (expression_statement "pcVar19 = pcVar19 + 1;" (assignment_expression "pcVar19 = pcVar19 + 1" identifier = (binary_expression "pcVar19 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar20 = cVar12;" (assignment_expression "*pcVar20 = cVar12" (pointer_expression "*pcVar20" * identifier) = identifier) ;) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" identifier = (pointer_expression "*pcVar19" * identifier)) ;) })) (labeled_statement "LAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }" statement_identifier : (if_statement "if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }" if (parenthesized_expression "(param_5 != 0)" ( (binary_expression "param_5 != 0" identifier != number_literal) )) (compound_statement "{\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }" { (expression_statement "*pcVar20 = '=';" (assignment_expression "*pcVar20 = '='" (pointer_expression "*pcVar20" * identifier) = (char_literal "'='" ' character ')) ;) (expression_statement "cVar12 = *pcVar5;" (assignment_expression "cVar12 = *pcVar5" identifier = (pointer_expression "*pcVar5" * identifier)) ;) (while_statement "while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }" while (parenthesized_expression "(pcVar20 = pcVar20 + 1, cVar12 != '\0')" ( (comma_expression "pcVar20 = pcVar20 + 1, cVar12 != '\0'" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) , (binary_expression "cVar12 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) )) (compound_statement "{\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }" { (if_statement "if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }" if (parenthesized_expression "(((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\'))" ( (binary_expression "((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')" (parenthesized_expression "((cVar12 == '=') || (cVar12 == ','))" ( (binary_expression "(cVar12 == '=') || (cVar12 == ',')" (parenthesized_expression "(cVar12 == '=')" ( (binary_expression "cVar12 == '='" identifier == (char_literal "'='" ' character ')) )) || (parenthesized_expression "(cVar12 == ',')" ( (binary_expression "cVar12 == ','" identifier == (char_literal "','" ' character ')) ))) )) || (parenthesized_expression "(cVar12 == '\\')" ( (binary_expression "cVar12 == '\\'" identifier == (char_literal "'\\'" ' escape_sequence ')) ))) )) (compound_statement "{\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }" { (expression_statement "*pcVar20 = '\\';" (assignment_expression "*pcVar20 = '\\'" (pointer_expression "*pcVar20" * identifier) = (char_literal "'\\'" ' escape_sequence ')) ;) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) })) (expression_statement "cVar12 = *pcVar5;" (assignment_expression "cVar12 = *pcVar5" identifier = (pointer_expression "*pcVar5" * identifier)) ;) (expression_statement "pcVar5 = pcVar5 + 1;" (assignment_expression "pcVar5 = pcVar5 + 1" identifier = (binary_expression "pcVar5 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar20 = cVar12;" (assignment_expression "*pcVar20 = cVar12" (pointer_expression "*pcVar20" * identifier) = identifier) ;) (expression_statement "cVar12 = *pcVar5;" (assignment_expression "cVar12 = *pcVar5" identifier = (pointer_expression "*pcVar5" * identifier)) ;) })) }))) (if_statement "if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }" if (parenthesized_expression "(pcVar17 != (char *)0x0)" ( (binary_expression "pcVar17 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }" { (expression_statement "(*(code *)PTR_free_000b0ca4)(local_30);" (call_expression "(*(code *)PTR_free_000b0ca4)(local_30)" (parenthesized_expression "(*(code *)PTR_free_000b0ca4)" ( (pointer_expression "*(code *)PTR_free_000b0ca4" * (cast_expression "(code *)PTR_free_000b0ca4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_30)" ( identifier ))) ;) (expression_statement "local_30 = pcVar17;" (assignment_expression "local_30 = pcVar17" identifier = identifier) ;) })) (expression_statement "ppcVar13 = &local_30;" (assignment_expression "ppcVar13 = &local_30" identifier = (pointer_expression "&local_30" & identifier)) ;) (expression_statement "pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);" (assignment_expression "pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30)" identifier = (cast_expression "(char *)conf_get_str_strs(param_3,param_4,local_30,&local_30)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "conf_get_str_strs(param_3,param_4,local_30,&local_30)" identifier (argument_list "(param_3,param_4,local_30,&local_30)" ( identifier , identifier , identifier , (pointer_expression "&local_30" & identifier) ))))) ;) }) while (parenthesized_expression "(pcVar5 != (char *)0x0)" ( (binary_expression "pcVar5 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) }))) (expression_statement "puVar1 = PTR_write_setting_s_000b0564;" (assignment_expression "puVar1 = PTR_write_setting_s_000b0564" identifier = identifier) ;) (expression_statement "*pcVar20 = '\0';" (assignment_expression "*pcVar20 = '\0'" (pointer_expression "*pcVar20" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar20 = pcVar4;" (assignment_expression "pcVar20 = pcVar4" identifier = identifier) ;) (expression_statement "(*(code *)puVar1)(param_1);" (call_expression "(*(code *)puVar1)(param_1)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1)" ( identifier ))) ;) (expression_statement "safefree(pcVar4);" (call_expression "safefree(pcVar4)" identifier (argument_list "(pcVar4)" ( identifier ))) ;) (if_statement "if (local_2c == *(int *)puVar22) {\n    return;\n  }" if (parenthesized_expression "(local_2c == *(int *)puVar22)" ( (binary_expression "local_2c == *(int *)puVar22" identifier == (pointer_expression "*(int *)puVar22" * (cast_expression "(int *)puVar22" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "puVar22 = PTR___stack_chk_fail_000b0c70;" (assignment_expression "puVar22 = PTR___stack_chk_fail_000b0c70" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_000b0c70)();" (call_expression "(*(code *)PTR___stack_chk_fail_000b0c70)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000b0c70)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_000b0c70" * (cast_expression "(code *)PTR___stack_chk_fail_000b0c70" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (expression_statement "uVar15 = 0;" (assignment_expression "uVar15 = 0" identifier = number_literal) ;) (expression_statement "puVar14 = (uint *)&DAT_0000002c;" (assignment_expression "puVar14 = (uint *)&DAT_0000002c" identifier = (cast_expression "(uint *)&DAT_0000002c" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0000002c" & identifier))) ;) (expression_statement "pcVar17 = (char *)dupstr();" (assignment_expression "pcVar17 = (char *)dupstr()" identifier = (cast_expression "(char *)dupstr()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dupstr()" identifier (argument_list "()" ( ))))) ;) (expression_statement "cVar12 = *pcVar17;" (assignment_expression "cVar12 = *pcVar17" identifier = (pointer_expression "*pcVar17" * identifier)) ;) (expression_statement "pcVar4 = pcVar17;" (assignment_expression "pcVar4 = pcVar17" identifier = identifier) ;) (do_statement "do {\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  } while( true );" do (compound_statement "{\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  }" { (if_statement "if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }" if (parenthesized_expression "(cVar12 == ',')" ( (binary_expression "cVar12 == ','" identifier == (char_literal "','" ' character ')) )) (compound_statement "{\n      pcVar19 = pcVar4 + 1;\n    }" { (expression_statement "pcVar19 = pcVar4 + 1;" (assignment_expression "pcVar19 = pcVar4 + 1" identifier = (binary_expression "pcVar4 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }" else (compound_statement "{\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }" { (if_statement "if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }" if (parenthesized_expression "(cVar12 == '\0')" ( (binary_expression "cVar12 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }" { (expression_statement "safefree(pcVar17);" (call_expression "safefree(pcVar17)" identifier (argument_list "(pcVar17)" ( identifier ))) ;) (if_statement "if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }" if (parenthesized_expression "((int)uVar15 < (int)pcVar20)" ( (binary_expression "(int)uVar15 < (int)pcVar20" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)pcVar20" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }" { (do_statement "do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);" do (compound_statement "{\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          }" { (expression_statement "uVar9 = param_2[1];" (assignment_expression "uVar9 = param_2[1]" identifier = (subscript_expression "param_2[1]" identifier [ number_literal ])) ;) (if_statement "if (0x1f < (int)uVar9) goto LAB_0002d234;" if (parenthesized_expression "(0x1f < (int)uVar9)" ( (binary_expression "0x1f < (int)uVar9" number_literal < (cast_expression "(int)uVar9" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_0002d234;" goto statement_identifier ;)) (expression_statement "pcVar5 = (char *)0x0;" (assignment_expression "pcVar5 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar14 = param_2 + 1;" (assignment_expression "puVar14 = param_2 + 1" identifier = (binary_expression "param_2 + 1" identifier + number_literal)) ;) (while_statement "while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }" { (if_statement "if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;" if (parenthesized_expression "((1 << (uVar9 & 0x1f) & uVar21) != 0)" ( (binary_expression "(1 << (uVar9 & 0x1f) & uVar21) != 0" (parenthesized_expression "(1 << (uVar9 & 0x1f) & uVar21)" ( (binary_expression "1 << (uVar9 & 0x1f) & uVar21" (binary_expression "1 << (uVar9 & 0x1f)" number_literal << (parenthesized_expression "(uVar9 & 0x1f)" ( (binary_expression "uVar9 & 0x1f" identifier & number_literal) ))) & identifier) )) != number_literal) )) (goto_statement "goto LAB_0002d218;" goto statement_identifier ;)) (if_statement "if (puVar14[1] == 0xffffffff) goto LAB_0002d258;" if (parenthesized_expression "(puVar14[1] == 0xffffffff)" ( (binary_expression "puVar14[1] == 0xffffffff" (subscript_expression "puVar14[1]" identifier [ number_literal ]) == number_literal) )) (goto_statement "goto LAB_0002d258;" goto statement_identifier ;)) (if_statement "if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;" if (parenthesized_expression "((1 << (puVar14[1] & 0x1f) & uVar21) == 0)" ( (binary_expression "(1 << (puVar14[1] & 0x1f) & uVar21) == 0" (parenthesized_expression "(1 << (puVar14[1] & 0x1f) & uVar21)" ( (binary_expression "1 << (puVar14[1] & 0x1f) & uVar21" (binary_expression "1 << (puVar14[1] & 0x1f)" number_literal << (parenthesized_expression "(puVar14[1] & 0x1f)" ( (binary_expression "puVar14[1] & 0x1f" (subscript_expression "puVar14[1]" identifier [ number_literal ]) & number_literal) ))) & identifier) )) == number_literal) )) (goto_statement "goto LAB_0002d218;" goto statement_identifier ;)) (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" identifier = number_literal) ;) (if_statement "if (uVar15 == 0) break;" if (parenthesized_expression "(uVar15 == 0)" ( (binary_expression "uVar15 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (while_statement "while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }" while (parenthesized_expression "(uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1])" ( (comma_expression "uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]" (assignment_expression "uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9)" identifier = (call_expression "conf_get_int_int(ppcVar13,&_gp_1,uVar9)" identifier (argument_list "(ppcVar13,&_gp_1,uVar9)" ( identifier , (pointer_expression "&_gp_1" & identifier) , identifier )))) , (binary_expression "uVar10 != puVar14[1]" identifier != (subscript_expression "puVar14[1]" identifier [ number_literal ]))) )) (compound_statement "{\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }" { (expression_statement "uVar9 = uVar9 + 1;" (assignment_expression "uVar9 = uVar9 + 1" identifier = (binary_expression "uVar9 + 1" identifier + number_literal)) ;) (expression_statement "iVar2 = *(int *)(puVar22 + 0x831ec);" (assignment_expression "iVar2 = *(int *)(puVar22 + 0x831ec)" identifier = (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) ))))) ;) (if_statement "if (uVar9 == uVar15) goto LAB_0002d26c;" if (parenthesized_expression "(uVar9 == uVar15)" ( (binary_expression "uVar9 == uVar15" identifier == identifier) )) (goto_statement "goto LAB_0002d26c;" goto statement_identifier ;)) })) (if_statement "if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }" if (parenthesized_expression "(-1 < (int)puVar14[2])" ( (binary_expression "-1 < (int)puVar14[2]" number_literal < (cast_expression "(int)puVar14[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar14[2]" identifier [ number_literal ]))) )) (compound_statement "{\n                uVar9 = uVar9 + 1;\n              }" { (expression_statement "uVar9 = uVar9 + 1;" (assignment_expression "uVar9 = uVar9 + 1" identifier = (binary_expression "uVar9 + 1" identifier + number_literal)) ;) })) (while_statement "while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }" { (expression_statement "iVar2 = uVar15 - 1;" (assignment_expression "iVar2 = uVar15 - 1" identifier = (binary_expression "uVar15 - 1" identifier - number_literal)) ;) (if_statement "if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }" if (parenthesized_expression "((int)uVar9 <= iVar2)" ( (binary_expression "(int)uVar9 <= iVar2" (cast_expression "(int)uVar9" ( (type_descriptor "int" primitive_type) ) identifier) <= identifier) )) (compound_statement "{\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }" { (do_statement "do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);" do (compound_statement "{\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  }" { (expression_statement "uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);" (assignment_expression "uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2)" identifier = (call_expression "conf_get_int_int(ppcVar13,&_gp_1,iVar2)" identifier (argument_list "(ppcVar13,&_gp_1,iVar2)" ( identifier , (pointer_expression "&_gp_1" & identifier) , identifier )))) ;) (expression_statement "iVar16 = iVar2 + 1;" (assignment_expression "iVar16 = iVar2 + 1" identifier = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);" (call_expression "conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11)" identifier (argument_list "(ppcVar13,&_gp_1,iVar16,uVar11)" ( identifier , (pointer_expression "&_gp_1" & identifier) , identifier , identifier ))) ;) }) while (parenthesized_expression "(iVar2 != uVar9 - 1)" ( (binary_expression "iVar2 != uVar9 - 1" identifier != (binary_expression "uVar9 - 1" identifier - number_literal)) )) ;) })) (expression_statement "uVar15 = uVar15 + 1;" (assignment_expression "uVar15 = uVar15 + 1" identifier = (binary_expression "uVar15 + 1" identifier + number_literal)) ;) (expression_statement "conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);" (call_expression "conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14)" identifier (argument_list "(ppcVar13,&_gp_1,uVar9,*puVar14)" ( identifier , (pointer_expression "&_gp_1" & identifier) , identifier , (pointer_expression "*puVar14" * identifier) ))) ;) (expression_statement "uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);" (assignment_expression "uVar21 = uVar21 | 1 << (*puVar14 & 0x1f)" identifier = (binary_expression "uVar21 | 1 << (*puVar14 & 0x1f)" identifier | (binary_expression "1 << (*puVar14 & 0x1f)" number_literal << (parenthesized_expression "(*puVar14 & 0x1f)" ( (binary_expression "*puVar14 & 0x1f" (pointer_expression "*puVar14" * identifier) & number_literal) ))))) ;) (labeled_statement "LAB_0002d218:\n                pcVar5 = pcVar5 + 1;" statement_identifier : (expression_statement "pcVar5 = pcVar5 + 1;" (assignment_expression "pcVar5 = pcVar5 + 1" identifier = (binary_expression "pcVar5 + 1" identifier + number_literal)) ;)) (expression_statement "puVar14 = puVar14 + 4;" (assignment_expression "puVar14 = puVar14 + 4" identifier = (binary_expression "puVar14 + 4" identifier + number_literal)) ;) (expression_statement "pcVar4 = pcVar20;" (assignment_expression "pcVar4 = pcVar20" identifier = identifier) ;) (if_statement "if (pcVar20 == pcVar5) goto LAB_0002d28c;" if (parenthesized_expression "(pcVar20 == pcVar5)" ( (binary_expression "pcVar20 == pcVar5" identifier == identifier) )) (goto_statement "goto LAB_0002d28c;" goto statement_identifier ;)) (expression_statement "uVar9 = *puVar14;" (assignment_expression "uVar9 = *puVar14" identifier = (pointer_expression "*puVar14" * identifier)) ;) (if_statement "if ((int)uVar9 < 0x20) break;" if (parenthesized_expression "((int)uVar9 < 0x20)" ( (binary_expression "(int)uVar9 < 0x20" (cast_expression "(int)uVar9" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (break_statement "break;" break ;)) (labeled_statement "LAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);" statement_identifier : (expression_statement "(**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);" (call_expression "(**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84)" (parenthesized_expression "(**(code **)(puVar22 + 0x83b24))" ( (pointer_expression "**(code **)(puVar22 + 0x83b24)" * (pointer_expression "*(code **)(puVar22 + 0x83b24)" * (cast_expression "(code **)(puVar22 + 0x83b24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + 0x83b24)" ( (binary_expression "puVar22 + 0x83b24" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84)" ( (binary_expression "*(int *)(puVar22 + 0x831ec) + -0x1c" (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar22 + 0x831ec) + -0x3c" (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar22 + 0x831ec) + 0xf84" (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;" statement_identifier : (expression_statement "uVar9 = (int)puVar14[2] >> 0x1f & uVar15;" (assignment_expression "uVar9 = (int)puVar14[2] >> 0x1f & uVar15" identifier = (binary_expression "(int)puVar14[2] >> 0x1f & uVar15" (binary_expression "(int)puVar14[2] >> 0x1f" (cast_expression "(int)puVar14[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar14[2]" identifier [ number_literal ])) >> number_literal) & identifier)) ;)) })) })) (expression_statement "iVar2 = *(int *)(puVar22 + 0x831ec);" (assignment_expression "iVar2 = *(int *)(puVar22 + 0x831ec)" identifier = (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) ))))) ;) (labeled_statement "LAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);" statement_identifier : (expression_statement "pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);" (assignment_expression "pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84)" identifier = (cast_expression "(char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84)" (parenthesized_expression "(**(code **)(puVar22 + 0x83b24))" ( (pointer_expression "**(code **)(puVar22 + 0x83b24)" * (pointer_expression "*(code **)(puVar22 + 0x83b24)" * (cast_expression "(code **)(puVar22 + 0x83b24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + 0x83b24)" ( (binary_expression "puVar22 + 0x83b24" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84)" ( (binary_expression "*(int *)(puVar22 + 0x831ec) + -8" (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar22 + 0x831ec) + -0x3c" (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + 0xf84" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_0002d28c:" statement_identifier : (expression_statement "" ;)) }) while (parenthesized_expression "((int)uVar15 < (int)pcVar4)" ( (binary_expression "(int)uVar15 < (int)pcVar4" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)pcVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) (return_statement "return;" return ;) })) (expression_statement "cVar12 = pcVar4[1];" (assignment_expression "cVar12 = pcVar4[1]" identifier = (subscript_expression "pcVar4[1]" identifier [ number_literal ])) ;) (expression_statement "pcVar7 = pcVar4;" (assignment_expression "pcVar7 = pcVar4" identifier = identifier) ;) (while_statement "while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }" while (parenthesized_expression "(pcVar19 = pcVar7 + 1, cVar12 != '\0')" ( (comma_expression "pcVar19 = pcVar7 + 1, cVar12 != '\0'" (assignment_expression "pcVar19 = pcVar7 + 1" identifier = (binary_expression "pcVar7 + 1" identifier + number_literal)) , (binary_expression "cVar12 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) )) (compound_statement "{\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }" { (if_statement "if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }" if (parenthesized_expression "(cVar12 == ',')" ( (binary_expression "cVar12 == ','" identifier == (char_literal "','" ' character ')) )) (compound_statement "{\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }" { (expression_statement "*pcVar19 = '\0';" (assignment_expression "*pcVar19 = '\0'" (pointer_expression "*pcVar19" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar19 = pcVar7 + 2;" (assignment_expression "pcVar19 = pcVar7 + 2" identifier = (binary_expression "pcVar7 + 2" identifier + number_literal)) ;) (break_statement "break;" break ;) })) (expression_statement "cVar12 = pcVar7[2];" (assignment_expression "cVar12 = pcVar7[2]" identifier = (subscript_expression "pcVar7[2]" identifier [ number_literal ])) ;) (expression_statement "pcVar7 = pcVar19;" (assignment_expression "pcVar7 = pcVar19" identifier = identifier) ;) })) (if_statement "if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }" if (parenthesized_expression "(0 < (int)pcVar20)" ( (binary_expression "0 < (int)pcVar20" number_literal < (cast_expression "(int)pcVar20" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }" { (expression_statement "pcVar5 = (char *)0x0;" (assignment_expression "pcVar5 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar18 = param_2;" (assignment_expression "puVar18 = param_2" identifier = identifier) ;) (do_statement "do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);" do (compound_statement "{\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        }" { (expression_statement "iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);" (assignment_expression "iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4)" identifier = (call_expression "(**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4)" (parenthesized_expression "(**(code **)(puVar22 + 0x83d3c))" ( (pointer_expression "**(code **)(puVar22 + 0x83d3c)" * (pointer_expression "*(code **)(puVar22 + 0x83d3c)" * (cast_expression "(code **)(puVar22 + 0x83d3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + 0x83d3c)" ( (binary_expression "puVar22 + 0x83d3c" identifier + number_literal) ))))) )) (argument_list "(*puVar18,pcVar4)" ( (pointer_expression "*puVar18" * identifier) , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }" { (if_statement "if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }" if (parenthesized_expression "((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0))" ( (binary_expression "(puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)" (parenthesized_expression "(puVar18[1] != 0xffffffff)" ( (binary_expression "puVar18[1] != 0xffffffff" (subscript_expression "puVar18[1]" identifier [ number_literal ]) != number_literal) )) && (parenthesized_expression "(uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)" ( (comma_expression "uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0" (assignment_expression "uVar9 = 1 << (puVar18[1] & 0x1f)" identifier = (binary_expression "1 << (puVar18[1] & 0x1f)" number_literal << (parenthesized_expression "(puVar18[1] & 0x1f)" ( (binary_expression "puVar18[1] & 0x1f" (subscript_expression "puVar18[1]" identifier [ number_literal ]) & number_literal) )))) , (binary_expression "(uVar9 & uVar21) == 0" (parenthesized_expression "(uVar9 & uVar21)" ( (binary_expression "uVar9 & uVar21" identifier & identifier) )) == number_literal)) ))) )) (compound_statement "{\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }" { (expression_statement "uVar21 = uVar21 | uVar9;" (assignment_expression "uVar21 = uVar21 | uVar9" identifier = (binary_expression "uVar21 | uVar9" identifier | identifier)) ;) (expression_statement "conf_set_int_int(ppcVar13,&_gp_1,uVar15);" (call_expression "conf_set_int_int(ppcVar13,&_gp_1,uVar15)" identifier (argument_list "(ppcVar13,&_gp_1,uVar15)" ( identifier , (pointer_expression "&_gp_1" & identifier) , identifier ))) ;) (expression_statement "uVar15 = uVar15 + 1;" (assignment_expression "uVar15 = uVar15 + 1" identifier = (binary_expression "uVar15 + 1" identifier + number_literal)) ;) })) (break_statement "break;" break ;) })) (expression_statement "pcVar5 = pcVar5 + 1;" (assignment_expression "pcVar5 = pcVar5 + 1" identifier = (binary_expression "pcVar5 + 1" identifier + number_literal)) ;) (expression_statement "puVar18 = puVar18 + 4;" (assignment_expression "puVar18 = puVar18 + 4" identifier = (binary_expression "puVar18 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(pcVar20 != pcVar5)" ( (binary_expression "pcVar20 != pcVar5" identifier != identifier) )) ;) })) }))) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" identifier = (pointer_expression "*pcVar19" * identifier)) ;) (expression_statement "pcVar4 = pcVar19;" (assignment_expression "pcVar4 = pcVar19" identifier = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit "void wmap(void *handle,char *outkey,Conf *conf,int primary,int include_values)\n\n{\n  undefined *puVar1;\n  char *pcVar2;\n  int iVar3;\n  int iVar4;\n  char *ptr;\n  char *pcVar5;\n  undefined *puVar6;\n  char cVar8;\n  undefined1 *puVar7;\n  size_t n;\n  char *pcVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *key;\n  undefined4 local_2c;\n  \n  local_2c = *(undefined4 *)PTR___stack_chk_guard_000b0c9c;\n  pcVar2 = conf_get_str_strs(conf,primary,(char *)0x0,&key);\n  if (pcVar2 == (char *)0x0) {\n    n = 1;\n  }\n  else {\n    n = 1;\n    do {\n      pcVar5 = key;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(key);\n      iVar4 = (*(code *)PTR_strlen_000b0be4)(pcVar2);\n      n = (iVar3 + iVar4 + 1) * 2 + n;\n      pcVar2 = conf_get_str_strs(conf,primary,pcVar5,&key);\n    } while (pcVar2 != (char *)0x0);\n  }\n  ptr = (char *)safemalloc(n,1);\n  pcVar5 = conf_get_str_strs(conf,primary,(char *)0x0,&key);\n  puVar1 = PTR_s_Present_000b0188;\n  pcVar2 = ptr;\n  if (pcVar5 != (char *)0x0) {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((primary == 0x9b) &&\n         (iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar9 = key, iVar3 == 0)) {\n        key = dupstr(key);\n        puVar7 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(key,0x4c);\n        if (puVar7 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar7 = 0x44;\n        }\n      }\n      else {\n        pcVar9 = (char *)0x0;\n      }\n      pcVar10 = pcVar2;\n      if (ptr != pcVar2) {\n        pcVar10 = pcVar2 + 1;\n        *pcVar2 = ',';\n      }\n      cVar8 = *key;\n      pcVar2 = pcVar10;\n      pcVar10 = key;\n      while (pcVar11 = pcVar2, cVar8 != '\0') {\n        while (((cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\'))) {\n          cVar8 = *pcVar10;\n          pcVar10 = pcVar10 + 1;\n          pcVar2 = pcVar11 + 1;\n          *pcVar11 = cVar8;\n          cVar8 = *pcVar10;\n          pcVar11 = pcVar2;\n          if (cVar8 == '\0') goto LAB_0002cdf8;\n        }\n        *pcVar11 = '\\';\n        cVar8 = *pcVar10;\n        pcVar10 = pcVar10 + 1;\n        pcVar2 = pcVar11 + 2;\n        pcVar11[1] = cVar8;\n        cVar8 = *pcVar10;\n      }\nLAB_0002cdf8:\n      if (include_values != 0) {\n        *pcVar2 = '=';\n        cVar8 = *pcVar5;\n        while (pcVar2 = pcVar2 + 1, cVar8 != '\0') {\n          if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }\n          cVar8 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar2 = cVar8;\n          cVar8 = *pcVar5;\n        }\n      }\n      if (pcVar9 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(key);\n        key = pcVar9;\n      }\n      pcVar5 = conf_get_str_strs(conf,primary,key,&key);\n    } while (pcVar5 != (char *)0x0);\n  }\n  puVar1 = PTR_write_setting_s_000b0564;\n  *pcVar2 = '\0';\n  (*(code *)puVar1)(handle,outkey,ptr);\n                    /* WARNING: Subroutine does not return */\n  safefree(ptr);\n}\n\n" (function_definition "void wmap(void *handle,char *outkey,Conf *conf,int primary,int include_values)\n\n{\n  undefined *puVar1;\n  char *pcVar2;\n  int iVar3;\n  int iVar4;\n  char *ptr;\n  char *pcVar5;\n  undefined *puVar6;\n  char cVar8;\n  undefined1 *puVar7;\n  size_t n;\n  char *pcVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *key;\n  undefined4 local_2c;\n  \n  local_2c = *(undefined4 *)PTR___stack_chk_guard_000b0c9c;\n  pcVar2 = conf_get_str_strs(conf,primary,(char *)0x0,&key);\n  if (pcVar2 == (char *)0x0) {\n    n = 1;\n  }\n  else {\n    n = 1;\n    do {\n      pcVar5 = key;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(key);\n      iVar4 = (*(code *)PTR_strlen_000b0be4)(pcVar2);\n      n = (iVar3 + iVar4 + 1) * 2 + n;\n      pcVar2 = conf_get_str_strs(conf,primary,pcVar5,&key);\n    } while (pcVar2 != (char *)0x0);\n  }\n  ptr = (char *)safemalloc(n,1);\n  pcVar5 = conf_get_str_strs(conf,primary,(char *)0x0,&key);\n  puVar1 = PTR_s_Present_000b0188;\n  pcVar2 = ptr;\n  if (pcVar5 != (char *)0x0) {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((primary == 0x9b) &&\n         (iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar9 = key, iVar3 == 0)) {\n        key = dupstr(key);\n        puVar7 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(key,0x4c);\n        if (puVar7 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar7 = 0x44;\n        }\n      }\n      else {\n        pcVar9 = (char *)0x0;\n      }\n      pcVar10 = pcVar2;\n      if (ptr != pcVar2) {\n        pcVar10 = pcVar2 + 1;\n        *pcVar2 = ',';\n      }\n      cVar8 = *key;\n      pcVar2 = pcVar10;\n      pcVar10 = key;\n      while (pcVar11 = pcVar2, cVar8 != '\0') {\n        while (((cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\'))) {\n          cVar8 = *pcVar10;\n          pcVar10 = pcVar10 + 1;\n          pcVar2 = pcVar11 + 1;\n          *pcVar11 = cVar8;\n          cVar8 = *pcVar10;\n          pcVar11 = pcVar2;\n          if (cVar8 == '\0') goto LAB_0002cdf8;\n        }\n        *pcVar11 = '\\';\n        cVar8 = *pcVar10;\n        pcVar10 = pcVar10 + 1;\n        pcVar2 = pcVar11 + 2;\n        pcVar11[1] = cVar8;\n        cVar8 = *pcVar10;\n      }\nLAB_0002cdf8:\n      if (include_values != 0) {\n        *pcVar2 = '=';\n        cVar8 = *pcVar5;\n        while (pcVar2 = pcVar2 + 1, cVar8 != '\0') {\n          if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }\n          cVar8 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar2 = cVar8;\n          cVar8 = *pcVar5;\n        }\n      }\n      if (pcVar9 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(key);\n        key = pcVar9;\n      }\n      pcVar5 = conf_get_str_strs(conf,primary,key,&key);\n    } while (pcVar5 != (char *)0x0);\n  }\n  puVar1 = PTR_write_setting_s_000b0564;\n  *pcVar2 = '\0';\n  (*(code *)puVar1)(handle,outkey,ptr);\n                    /* WARNING: Subroutine does not return */\n  safefree(ptr);\n}" primitive_type (function_declarator "wmap(void *handle,char *outkey,Conf *conf,int primary,int include_values)" identifier (parameter_list "(void *handle,char *outkey,Conf *conf,int primary,int include_values)" ( (parameter_declaration "void *handle" primitive_type (pointer_declarator "*handle" * identifier)) , (parameter_declaration "char *outkey" primitive_type (pointer_declarator "*outkey" * identifier)) , (parameter_declaration "Conf *conf" type_identifier (pointer_declarator "*conf" * identifier)) , (parameter_declaration "int primary" primitive_type identifier) , (parameter_declaration "int include_values" primitive_type identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  char *pcVar2;\n  int iVar3;\n  int iVar4;\n  char *ptr;\n  char *pcVar5;\n  undefined *puVar6;\n  char cVar8;\n  undefined1 *puVar7;\n  size_t n;\n  char *pcVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *key;\n  undefined4 local_2c;\n  \n  local_2c = *(undefined4 *)PTR___stack_chk_guard_000b0c9c;\n  pcVar2 = conf_get_str_strs(conf,primary,(char *)0x0,&key);\n  if (pcVar2 == (char *)0x0) {\n    n = 1;\n  }\n  else {\n    n = 1;\n    do {\n      pcVar5 = key;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(key);\n      iVar4 = (*(code *)PTR_strlen_000b0be4)(pcVar2);\n      n = (iVar3 + iVar4 + 1) * 2 + n;\n      pcVar2 = conf_get_str_strs(conf,primary,pcVar5,&key);\n    } while (pcVar2 != (char *)0x0);\n  }\n  ptr = (char *)safemalloc(n,1);\n  pcVar5 = conf_get_str_strs(conf,primary,(char *)0x0,&key);\n  puVar1 = PTR_s_Present_000b0188;\n  pcVar2 = ptr;\n  if (pcVar5 != (char *)0x0) {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((primary == 0x9b) &&\n         (iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar9 = key, iVar3 == 0)) {\n        key = dupstr(key);\n        puVar7 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(key,0x4c);\n        if (puVar7 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar7 = 0x44;\n        }\n      }\n      else {\n        pcVar9 = (char *)0x0;\n      }\n      pcVar10 = pcVar2;\n      if (ptr != pcVar2) {\n        pcVar10 = pcVar2 + 1;\n        *pcVar2 = ',';\n      }\n      cVar8 = *key;\n      pcVar2 = pcVar10;\n      pcVar10 = key;\n      while (pcVar11 = pcVar2, cVar8 != '\0') {\n        while (((cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\'))) {\n          cVar8 = *pcVar10;\n          pcVar10 = pcVar10 + 1;\n          pcVar2 = pcVar11 + 1;\n          *pcVar11 = cVar8;\n          cVar8 = *pcVar10;\n          pcVar11 = pcVar2;\n          if (cVar8 == '\0') goto LAB_0002cdf8;\n        }\n        *pcVar11 = '\\';\n        cVar8 = *pcVar10;\n        pcVar10 = pcVar10 + 1;\n        pcVar2 = pcVar11 + 2;\n        pcVar11[1] = cVar8;\n        cVar8 = *pcVar10;\n      }\nLAB_0002cdf8:\n      if (include_values != 0) {\n        *pcVar2 = '=';\n        cVar8 = *pcVar5;\n        while (pcVar2 = pcVar2 + 1, cVar8 != '\0') {\n          if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }\n          cVar8 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar2 = cVar8;\n          cVar8 = *pcVar5;\n        }\n      }\n      if (pcVar9 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(key);\n        key = pcVar9;\n      }\n      pcVar5 = conf_get_str_strs(conf,primary,key,&key);\n    } while (pcVar5 != (char *)0x0);\n  }\n  puVar1 = PTR_write_setting_s_000b0564;\n  *pcVar2 = '\0';\n  (*(code *)puVar1)(handle,outkey,ptr);\n                    /* WARNING: Subroutine does not return */\n  safefree(ptr);\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "char *pcVar2;" primitive_type (pointer_declarator "*pcVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "char *ptr;" primitive_type (pointer_declarator "*ptr" * identifier) ;) (declaration "char *pcVar5;" primitive_type (pointer_declarator "*pcVar5" * identifier) ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "char cVar8;" primitive_type identifier ;) (declaration "undefined1 *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "size_t n;" primitive_type identifier ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "char *pcVar11;" primitive_type (pointer_declarator "*pcVar11" * identifier) ;) (declaration "char *key;" primitive_type (pointer_declarator "*key" * identifier) ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (expression_statement "local_2c = *(undefined4 *)PTR___stack_chk_guard_000b0c9c;" (assignment_expression "local_2c = *(undefined4 *)PTR___stack_chk_guard_000b0c9c" identifier = (pointer_expression "*(undefined4 *)PTR___stack_chk_guard_000b0c9c" * (cast_expression "(undefined4 *)PTR___stack_chk_guard_000b0c9c" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pcVar2 = conf_get_str_strs(conf,primary,(char *)0x0,&key);" (assignment_expression "pcVar2 = conf_get_str_strs(conf,primary,(char *)0x0,&key)" identifier = (call_expression "conf_get_str_strs(conf,primary,(char *)0x0,&key)" identifier (argument_list "(conf,primary,(char *)0x0,&key)" ( identifier , identifier , (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (pointer_expression "&key" & identifier) )))) ;) (if_statement "if (pcVar2 == (char *)0x0) {\n    n = 1;\n  }\n  else {\n    n = 1;\n    do {\n      pcVar5 = key;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(key);\n      iVar4 = (*(code *)PTR_strlen_000b0be4)(pcVar2);\n      n = (iVar3 + iVar4 + 1) * 2 + n;\n      pcVar2 = conf_get_str_strs(conf,primary,pcVar5,&key);\n    } while (pcVar2 != (char *)0x0);\n  }" if (parenthesized_expression "(pcVar2 == (char *)0x0)" ( (binary_expression "pcVar2 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    n = 1;\n  }" { (expression_statement "n = 1;" (assignment_expression "n = 1" identifier = number_literal) ;) }) (else_clause "else {\n    n = 1;\n    do {\n      pcVar5 = key;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(key);\n      iVar4 = (*(code *)PTR_strlen_000b0be4)(pcVar2);\n      n = (iVar3 + iVar4 + 1) * 2 + n;\n      pcVar2 = conf_get_str_strs(conf,primary,pcVar5,&key);\n    } while (pcVar2 != (char *)0x0);\n  }" else (compound_statement "{\n    n = 1;\n    do {\n      pcVar5 = key;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(key);\n      iVar4 = (*(code *)PTR_strlen_000b0be4)(pcVar2);\n      n = (iVar3 + iVar4 + 1) * 2 + n;\n      pcVar2 = conf_get_str_strs(conf,primary,pcVar5,&key);\n    } while (pcVar2 != (char *)0x0);\n  }" { (expression_statement "n = 1;" (assignment_expression "n = 1" identifier = number_literal) ;) (do_statement "do {\n      pcVar5 = key;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(key);\n      iVar4 = (*(code *)PTR_strlen_000b0be4)(pcVar2);\n      n = (iVar3 + iVar4 + 1) * 2 + n;\n      pcVar2 = conf_get_str_strs(conf,primary,pcVar5,&key);\n    } while (pcVar2 != (char *)0x0);" do (compound_statement "{\n      pcVar5 = key;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(key);\n      iVar4 = (*(code *)PTR_strlen_000b0be4)(pcVar2);\n      n = (iVar3 + iVar4 + 1) * 2 + n;\n      pcVar2 = conf_get_str_strs(conf,primary,pcVar5,&key);\n    }" { (expression_statement "pcVar5 = key;" (assignment_expression "pcVar5 = key" identifier = identifier) ;) (expression_statement "iVar3 = (*(code *)PTR_strlen_000b0be4)(key);" (assignment_expression "iVar3 = (*(code *)PTR_strlen_000b0be4)(key)" identifier = (call_expression "(*(code *)PTR_strlen_000b0be4)(key)" (parenthesized_expression "(*(code *)PTR_strlen_000b0be4)" ( (pointer_expression "*(code *)PTR_strlen_000b0be4" * (cast_expression "(code *)PTR_strlen_000b0be4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(key)" ( identifier )))) ;) (expression_statement "iVar4 = (*(code *)PTR_strlen_000b0be4)(pcVar2);" (assignment_expression "iVar4 = (*(code *)PTR_strlen_000b0be4)(pcVar2)" identifier = (call_expression "(*(code *)PTR_strlen_000b0be4)(pcVar2)" (parenthesized_expression "(*(code *)PTR_strlen_000b0be4)" ( (pointer_expression "*(code *)PTR_strlen_000b0be4" * (cast_expression "(code *)PTR_strlen_000b0be4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar2)" ( identifier )))) ;) (expression_statement "n = (iVar3 + iVar4 + 1) * 2 + n;" (assignment_expression "n = (iVar3 + iVar4 + 1) * 2 + n" identifier = (binary_expression "(iVar3 + iVar4 + 1) * 2 + n" (binary_expression "(iVar3 + iVar4 + 1) * 2" (parenthesized_expression "(iVar3 + iVar4 + 1)" ( (binary_expression "iVar3 + iVar4 + 1" (binary_expression "iVar3 + iVar4" identifier + identifier) + number_literal) )) * number_literal) + identifier)) ;) (expression_statement "pcVar2 = conf_get_str_strs(conf,primary,pcVar5,&key);" (assignment_expression "pcVar2 = conf_get_str_strs(conf,primary,pcVar5,&key)" identifier = (call_expression "conf_get_str_strs(conf,primary,pcVar5,&key)" identifier (argument_list "(conf,primary,pcVar5,&key)" ( identifier , identifier , identifier , (pointer_expression "&key" & identifier) )))) ;) }) while (parenthesized_expression "(pcVar2 != (char *)0x0)" ( (binary_expression "pcVar2 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) }))) (expression_statement "ptr = (char *)safemalloc(n,1);" (assignment_expression "ptr = (char *)safemalloc(n,1)" identifier = (cast_expression "(char *)safemalloc(n,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "safemalloc(n,1)" identifier (argument_list "(n,1)" ( identifier , number_literal ))))) ;) (expression_statement "pcVar5 = conf_get_str_strs(conf,primary,(char *)0x0,&key);" (assignment_expression "pcVar5 = conf_get_str_strs(conf,primary,(char *)0x0,&key)" identifier = (call_expression "conf_get_str_strs(conf,primary,(char *)0x0,&key)" identifier (argument_list "(conf,primary,(char *)0x0,&key)" ( identifier , identifier , (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (pointer_expression "&key" & identifier) )))) ;) (expression_statement "puVar1 = PTR_s_Present_000b0188;" (assignment_expression "puVar1 = PTR_s_Present_000b0188" identifier = identifier) ;) (expression_statement "pcVar2 = ptr;" (assignment_expression "pcVar2 = ptr" identifier = identifier) ;) (if_statement "if (pcVar5 != (char *)0x0) {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((primary == 0x9b) &&\n         (iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar9 = key, iVar3 == 0)) {\n        key = dupstr(key);\n        puVar7 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(key,0x4c);\n        if (puVar7 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar7 = 0x44;\n        }\n      }\n      else {\n        pcVar9 = (char *)0x0;\n      }\n      pcVar10 = pcVar2;\n      if (ptr != pcVar2) {\n        pcVar10 = pcVar2 + 1;\n        *pcVar2 = ',';\n      }\n      cVar8 = *key;\n      pcVar2 = pcVar10;\n      pcVar10 = key;\n      while (pcVar11 = pcVar2, cVar8 != '\0') {\n        while (((cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\'))) {\n          cVar8 = *pcVar10;\n          pcVar10 = pcVar10 + 1;\n          pcVar2 = pcVar11 + 1;\n          *pcVar11 = cVar8;\n          cVar8 = *pcVar10;\n          pcVar11 = pcVar2;\n          if (cVar8 == '\0') goto LAB_0002cdf8;\n        }\n        *pcVar11 = '\\';\n        cVar8 = *pcVar10;\n        pcVar10 = pcVar10 + 1;\n        pcVar2 = pcVar11 + 2;\n        pcVar11[1] = cVar8;\n        cVar8 = *pcVar10;\n      }\nLAB_0002cdf8:\n      if (include_values != 0) {\n        *pcVar2 = '=';\n        cVar8 = *pcVar5;\n        while (pcVar2 = pcVar2 + 1, cVar8 != '\0') {\n          if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }\n          cVar8 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar2 = cVar8;\n          cVar8 = *pcVar5;\n        }\n      }\n      if (pcVar9 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(key);\n        key = pcVar9;\n      }\n      pcVar5 = conf_get_str_strs(conf,primary,key,&key);\n    } while (pcVar5 != (char *)0x0);\n  }" if (parenthesized_expression "(pcVar5 != (char *)0x0)" ( (binary_expression "pcVar5 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((primary == 0x9b) &&\n         (iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar9 = key, iVar3 == 0)) {\n        key = dupstr(key);\n        puVar7 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(key,0x4c);\n        if (puVar7 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar7 = 0x44;\n        }\n      }\n      else {\n        pcVar9 = (char *)0x0;\n      }\n      pcVar10 = pcVar2;\n      if (ptr != pcVar2) {\n        pcVar10 = pcVar2 + 1;\n        *pcVar2 = ',';\n      }\n      cVar8 = *key;\n      pcVar2 = pcVar10;\n      pcVar10 = key;\n      while (pcVar11 = pcVar2, cVar8 != '\0') {\n        while (((cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\'))) {\n          cVar8 = *pcVar10;\n          pcVar10 = pcVar10 + 1;\n          pcVar2 = pcVar11 + 1;\n          *pcVar11 = cVar8;\n          cVar8 = *pcVar10;\n          pcVar11 = pcVar2;\n          if (cVar8 == '\0') goto LAB_0002cdf8;\n        }\n        *pcVar11 = '\\';\n        cVar8 = *pcVar10;\n        pcVar10 = pcVar10 + 1;\n        pcVar2 = pcVar11 + 2;\n        pcVar11[1] = cVar8;\n        cVar8 = *pcVar10;\n      }\nLAB_0002cdf8:\n      if (include_values != 0) {\n        *pcVar2 = '=';\n        cVar8 = *pcVar5;\n        while (pcVar2 = pcVar2 + 1, cVar8 != '\0') {\n          if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }\n          cVar8 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar2 = cVar8;\n          cVar8 = *pcVar5;\n        }\n      }\n      if (pcVar9 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(key);\n        key = pcVar9;\n      }\n      pcVar5 = conf_get_str_strs(conf,primary,key,&key);\n    } while (pcVar5 != (char *)0x0);\n  }" { (expression_statement "puVar6 = PTR_s_Present_000b0188 + 0x2e20;" (assignment_expression "puVar6 = PTR_s_Present_000b0188 + 0x2e20" identifier = (binary_expression "PTR_s_Present_000b0188 + 0x2e20" identifier + number_literal)) ;) (do_statement "do {\n      if ((primary == 0x9b) &&\n         (iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar9 = key, iVar3 == 0)) {\n        key = dupstr(key);\n        puVar7 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(key,0x4c);\n        if (puVar7 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar7 = 0x44;\n        }\n      }\n      else {\n        pcVar9 = (char *)0x0;\n      }\n      pcVar10 = pcVar2;\n      if (ptr != pcVar2) {\n        pcVar10 = pcVar2 + 1;\n        *pcVar2 = ',';\n      }\n      cVar8 = *key;\n      pcVar2 = pcVar10;\n      pcVar10 = key;\n      while (pcVar11 = pcVar2, cVar8 != '\0') {\n        while (((cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\'))) {\n          cVar8 = *pcVar10;\n          pcVar10 = pcVar10 + 1;\n          pcVar2 = pcVar11 + 1;\n          *pcVar11 = cVar8;\n          cVar8 = *pcVar10;\n          pcVar11 = pcVar2;\n          if (cVar8 == '\0') goto LAB_0002cdf8;\n        }\n        *pcVar11 = '\\';\n        cVar8 = *pcVar10;\n        pcVar10 = pcVar10 + 1;\n        pcVar2 = pcVar11 + 2;\n        pcVar11[1] = cVar8;\n        cVar8 = *pcVar10;\n      }\nLAB_0002cdf8:\n      if (include_values != 0) {\n        *pcVar2 = '=';\n        cVar8 = *pcVar5;\n        while (pcVar2 = pcVar2 + 1, cVar8 != '\0') {\n          if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }\n          cVar8 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar2 = cVar8;\n          cVar8 = *pcVar5;\n        }\n      }\n      if (pcVar9 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(key);\n        key = pcVar9;\n      }\n      pcVar5 = conf_get_str_strs(conf,primary,key,&key);\n    } while (pcVar5 != (char *)0x0);" do (compound_statement "{\n      if ((primary == 0x9b) &&\n         (iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar9 = key, iVar3 == 0)) {\n        key = dupstr(key);\n        puVar7 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(key,0x4c);\n        if (puVar7 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar7 = 0x44;\n        }\n      }\n      else {\n        pcVar9 = (char *)0x0;\n      }\n      pcVar10 = pcVar2;\n      if (ptr != pcVar2) {\n        pcVar10 = pcVar2 + 1;\n        *pcVar2 = ',';\n      }\n      cVar8 = *key;\n      pcVar2 = pcVar10;\n      pcVar10 = key;\n      while (pcVar11 = pcVar2, cVar8 != '\0') {\n        while (((cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\'))) {\n          cVar8 = *pcVar10;\n          pcVar10 = pcVar10 + 1;\n          pcVar2 = pcVar11 + 1;\n          *pcVar11 = cVar8;\n          cVar8 = *pcVar10;\n          pcVar11 = pcVar2;\n          if (cVar8 == '\0') goto LAB_0002cdf8;\n        }\n        *pcVar11 = '\\';\n        cVar8 = *pcVar10;\n        pcVar10 = pcVar10 + 1;\n        pcVar2 = pcVar11 + 2;\n        pcVar11[1] = cVar8;\n        cVar8 = *pcVar10;\n      }\nLAB_0002cdf8:\n      if (include_values != 0) {\n        *pcVar2 = '=';\n        cVar8 = *pcVar5;\n        while (pcVar2 = pcVar2 + 1, cVar8 != '\0') {\n          if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }\n          cVar8 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar2 = cVar8;\n          cVar8 = *pcVar5;\n        }\n      }\n      if (pcVar9 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(key);\n        key = pcVar9;\n      }\n      pcVar5 = conf_get_str_strs(conf,primary,key,&key);\n    }" { (if_statement "if ((primary == 0x9b) &&\n         (iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar9 = key, iVar3 == 0)) {\n        key = dupstr(key);\n        puVar7 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(key,0x4c);\n        if (puVar7 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar7 = 0x44;\n        }\n      }\n      else {\n        pcVar9 = (char *)0x0;\n      }" if (parenthesized_expression "((primary == 0x9b) &&\n         (iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar9 = key, iVar3 == 0))" ( (binary_expression "(primary == 0x9b) &&\n         (iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar9 = key, iVar3 == 0)" (parenthesized_expression "(primary == 0x9b)" ( (binary_expression "primary == 0x9b" identifier == number_literal) )) && (parenthesized_expression "(iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar9 = key, iVar3 == 0)" ( (comma_expression "iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar9 = key, iVar3 == 0" (assignment_expression "iVar3 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6)" identifier = (call_expression "(*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6)" (parenthesized_expression "(*(code *)PTR_strcmp_000b0cd8)" ( (pointer_expression "*(code *)PTR_strcmp_000b0cd8" * (cast_expression "(code *)PTR_strcmp_000b0cd8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar5,puVar6)" ( identifier , identifier )))) , (comma_expression "pcVar9 = key, iVar3 == 0" (assignment_expression "pcVar9 = key" identifier = identifier) , (binary_expression "iVar3 == 0" identifier == number_literal))) ))) )) (compound_statement "{\n        key = dupstr(key);\n        puVar7 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(key,0x4c);\n        if (puVar7 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar7 = 0x44;\n        }\n      }" { (expression_statement "key = dupstr(key);" (assignment_expression "key = dupstr(key)" identifier = (call_expression "dupstr(key)" identifier (argument_list "(key)" ( identifier )))) ;) (expression_statement "puVar7 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(key,0x4c);" (assignment_expression "puVar7 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(key,0x4c)" identifier = (cast_expression "(undefined1 *)(*(code *)PTR_strchr_000b0bec)(key,0x4c)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_strchr_000b0bec)(key,0x4c)" (parenthesized_expression "(*(code *)PTR_strchr_000b0bec)" ( (pointer_expression "*(code *)PTR_strchr_000b0bec" * (cast_expression "(code *)PTR_strchr_000b0bec" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(key,0x4c)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar7 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar7 = 0x44;\n        }" if (parenthesized_expression "(puVar7 == (undefined1 *)0x0)" ( (binary_expression "puVar7 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          pcVar5 = puVar1 + 0x2d54;\n        }" { (expression_statement "pcVar5 = puVar1 + 0x2d54;" (assignment_expression "pcVar5 = puVar1 + 0x2d54" identifier = (binary_expression "puVar1 + 0x2d54" identifier + number_literal)) ;) }) (else_clause "else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar7 = 0x44;\n        }" else (compound_statement "{\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar7 = 0x44;\n        }" { (expression_statement "pcVar5 = puVar1 + 0x2d54;" (assignment_expression "pcVar5 = puVar1 + 0x2d54" identifier = (binary_expression "puVar1 + 0x2d54" identifier + number_literal)) ;) (expression_statement "*puVar7 = 0x44;" (assignment_expression "*puVar7 = 0x44" (pointer_expression "*puVar7" * identifier) = number_literal) ;) }))) }) (else_clause "else {\n        pcVar9 = (char *)0x0;\n      }" else (compound_statement "{\n        pcVar9 = (char *)0x0;\n      }" { (expression_statement "pcVar9 = (char *)0x0;" (assignment_expression "pcVar9 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (expression_statement "pcVar10 = pcVar2;" (assignment_expression "pcVar10 = pcVar2" identifier = identifier) ;) (if_statement "if (ptr != pcVar2) {\n        pcVar10 = pcVar2 + 1;\n        *pcVar2 = ',';\n      }" if (parenthesized_expression "(ptr != pcVar2)" ( (binary_expression "ptr != pcVar2" identifier != identifier) )) (compound_statement "{\n        pcVar10 = pcVar2 + 1;\n        *pcVar2 = ',';\n      }" { (expression_statement "pcVar10 = pcVar2 + 1;" (assignment_expression "pcVar10 = pcVar2 + 1" identifier = (binary_expression "pcVar2 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar2 = ',';" (assignment_expression "*pcVar2 = ','" (pointer_expression "*pcVar2" * identifier) = (char_literal "','" ' character ')) ;) })) (expression_statement "cVar8 = *key;" (assignment_expression "cVar8 = *key" identifier = (pointer_expression "*key" * identifier)) ;) (expression_statement "pcVar2 = pcVar10;" (assignment_expression "pcVar2 = pcVar10" identifier = identifier) ;) (expression_statement "pcVar10 = key;" (assignment_expression "pcVar10 = key" identifier = identifier) ;) (while_statement "while (pcVar11 = pcVar2, cVar8 != '\0') {\n        while (((cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\'))) {\n          cVar8 = *pcVar10;\n          pcVar10 = pcVar10 + 1;\n          pcVar2 = pcVar11 + 1;\n          *pcVar11 = cVar8;\n          cVar8 = *pcVar10;\n          pcVar11 = pcVar2;\n          if (cVar8 == '\0') goto LAB_0002cdf8;\n        }\n        *pcVar11 = '\\';\n        cVar8 = *pcVar10;\n        pcVar10 = pcVar10 + 1;\n        pcVar2 = pcVar11 + 2;\n        pcVar11[1] = cVar8;\n        cVar8 = *pcVar10;\n      }" while (parenthesized_expression "(pcVar11 = pcVar2, cVar8 != '\0')" ( (comma_expression "pcVar11 = pcVar2, cVar8 != '\0'" (assignment_expression "pcVar11 = pcVar2" identifier = identifier) , (binary_expression "cVar8 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) )) (compound_statement "{\n        while (((cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\'))) {\n          cVar8 = *pcVar10;\n          pcVar10 = pcVar10 + 1;\n          pcVar2 = pcVar11 + 1;\n          *pcVar11 = cVar8;\n          cVar8 = *pcVar10;\n          pcVar11 = pcVar2;\n          if (cVar8 == '\0') goto LAB_0002cdf8;\n        }\n        *pcVar11 = '\\';\n        cVar8 = *pcVar10;\n        pcVar10 = pcVar10 + 1;\n        pcVar2 = pcVar11 + 2;\n        pcVar11[1] = cVar8;\n        cVar8 = *pcVar10;\n      }" { (while_statement "while (((cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\'))) {\n          cVar8 = *pcVar10;\n          pcVar10 = pcVar10 + 1;\n          pcVar2 = pcVar11 + 1;\n          *pcVar11 = cVar8;\n          cVar8 = *pcVar10;\n          pcVar11 = pcVar2;\n          if (cVar8 == '\0') goto LAB_0002cdf8;\n        }" while (parenthesized_expression "(((cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\')))" ( (parenthesized_expression "((cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\'))" ( (binary_expression "(cVar8 != '=' && (cVar8 != ',')) && (cVar8 != '\\')" (parenthesized_expression "(cVar8 != '=' && (cVar8 != ','))" ( (binary_expression "cVar8 != '=' && (cVar8 != ',')" (binary_expression "cVar8 != '='" identifier != (char_literal "'='" ' character ')) && (parenthesized_expression "(cVar8 != ',')" ( (binary_expression "cVar8 != ','" identifier != (char_literal "','" ' character ')) ))) )) && (parenthesized_expression "(cVar8 != '\\')" ( (binary_expression "cVar8 != '\\'" identifier != (char_literal "'\\'" ' escape_sequence ')) ))) )) )) (compound_statement "{\n          cVar8 = *pcVar10;\n          pcVar10 = pcVar10 + 1;\n          pcVar2 = pcVar11 + 1;\n          *pcVar11 = cVar8;\n          cVar8 = *pcVar10;\n          pcVar11 = pcVar2;\n          if (cVar8 == '\0') goto LAB_0002cdf8;\n        }" { (expression_statement "cVar8 = *pcVar10;" (assignment_expression "cVar8 = *pcVar10" identifier = (pointer_expression "*pcVar10" * identifier)) ;) (expression_statement "pcVar10 = pcVar10 + 1;" (assignment_expression "pcVar10 = pcVar10 + 1" identifier = (binary_expression "pcVar10 + 1" identifier + number_literal)) ;) (expression_statement "pcVar2 = pcVar11 + 1;" (assignment_expression "pcVar2 = pcVar11 + 1" identifier = (binary_expression "pcVar11 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar11 = cVar8;" (assignment_expression "*pcVar11 = cVar8" (pointer_expression "*pcVar11" * identifier) = identifier) ;) (expression_statement "cVar8 = *pcVar10;" (assignment_expression "cVar8 = *pcVar10" identifier = (pointer_expression "*pcVar10" * identifier)) ;) (expression_statement "pcVar11 = pcVar2;" (assignment_expression "pcVar11 = pcVar2" identifier = identifier) ;) (if_statement "if (cVar8 == '\0') goto LAB_0002cdf8;" if (parenthesized_expression "(cVar8 == '\0')" ( (binary_expression "cVar8 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0002cdf8;" goto statement_identifier ;)) })) (expression_statement "*pcVar11 = '\\';" (assignment_expression "*pcVar11 = '\\'" (pointer_expression "*pcVar11" * identifier) = (char_literal "'\\'" ' escape_sequence ')) ;) (expression_statement "cVar8 = *pcVar10;" (assignment_expression "cVar8 = *pcVar10" identifier = (pointer_expression "*pcVar10" * identifier)) ;) (expression_statement "pcVar10 = pcVar10 + 1;" (assignment_expression "pcVar10 = pcVar10 + 1" identifier = (binary_expression "pcVar10 + 1" identifier + number_literal)) ;) (expression_statement "pcVar2 = pcVar11 + 2;" (assignment_expression "pcVar2 = pcVar11 + 2" identifier = (binary_expression "pcVar11 + 2" identifier + number_literal)) ;) (expression_statement "pcVar11[1] = cVar8;" (assignment_expression "pcVar11[1] = cVar8" (subscript_expression "pcVar11[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "cVar8 = *pcVar10;" (assignment_expression "cVar8 = *pcVar10" identifier = (pointer_expression "*pcVar10" * identifier)) ;) })) (labeled_statement "LAB_0002cdf8:\n      if (include_values != 0) {\n        *pcVar2 = '=';\n        cVar8 = *pcVar5;\n        while (pcVar2 = pcVar2 + 1, cVar8 != '\0') {\n          if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }\n          cVar8 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar2 = cVar8;\n          cVar8 = *pcVar5;\n        }\n      }" statement_identifier : (if_statement "if (include_values != 0) {\n        *pcVar2 = '=';\n        cVar8 = *pcVar5;\n        while (pcVar2 = pcVar2 + 1, cVar8 != '\0') {\n          if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }\n          cVar8 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar2 = cVar8;\n          cVar8 = *pcVar5;\n        }\n      }" if (parenthesized_expression "(include_values != 0)" ( (binary_expression "include_values != 0" identifier != number_literal) )) (compound_statement "{\n        *pcVar2 = '=';\n        cVar8 = *pcVar5;\n        while (pcVar2 = pcVar2 + 1, cVar8 != '\0') {\n          if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }\n          cVar8 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar2 = cVar8;\n          cVar8 = *pcVar5;\n        }\n      }" { (expression_statement "*pcVar2 = '=';" (assignment_expression "*pcVar2 = '='" (pointer_expression "*pcVar2" * identifier) = (char_literal "'='" ' character ')) ;) (expression_statement "cVar8 = *pcVar5;" (assignment_expression "cVar8 = *pcVar5" identifier = (pointer_expression "*pcVar5" * identifier)) ;) (while_statement "while (pcVar2 = pcVar2 + 1, cVar8 != '\0') {\n          if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }\n          cVar8 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar2 = cVar8;\n          cVar8 = *pcVar5;\n        }" while (parenthesized_expression "(pcVar2 = pcVar2 + 1, cVar8 != '\0')" ( (comma_expression "pcVar2 = pcVar2 + 1, cVar8 != '\0'" (assignment_expression "pcVar2 = pcVar2 + 1" identifier = (binary_expression "pcVar2 + 1" identifier + number_literal)) , (binary_expression "cVar8 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) )) (compound_statement "{\n          if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }\n          cVar8 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar2 = cVar8;\n          cVar8 = *pcVar5;\n        }" { (if_statement "if (((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')) {\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }" if (parenthesized_expression "(((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\'))" ( (binary_expression "((cVar8 == '=') || (cVar8 == ',')) || (cVar8 == '\\')" (parenthesized_expression "((cVar8 == '=') || (cVar8 == ','))" ( (binary_expression "(cVar8 == '=') || (cVar8 == ',')" (parenthesized_expression "(cVar8 == '=')" ( (binary_expression "cVar8 == '='" identifier == (char_literal "'='" ' character ')) )) || (parenthesized_expression "(cVar8 == ',')" ( (binary_expression "cVar8 == ','" identifier == (char_literal "','" ' character ')) ))) )) || (parenthesized_expression "(cVar8 == '\\')" ( (binary_expression "cVar8 == '\\'" identifier == (char_literal "'\\'" ' escape_sequence ')) ))) )) (compound_statement "{\n            *pcVar2 = '\\';\n            pcVar2 = pcVar2 + 1;\n          }" { (expression_statement "*pcVar2 = '\\';" (assignment_expression "*pcVar2 = '\\'" (pointer_expression "*pcVar2" * identifier) = (char_literal "'\\'" ' escape_sequence ')) ;) (expression_statement "pcVar2 = pcVar2 + 1;" (assignment_expression "pcVar2 = pcVar2 + 1" identifier = (binary_expression "pcVar2 + 1" identifier + number_literal)) ;) })) (expression_statement "cVar8 = *pcVar5;" (assignment_expression "cVar8 = *pcVar5" identifier = (pointer_expression "*pcVar5" * identifier)) ;) (expression_statement "pcVar5 = pcVar5 + 1;" (assignment_expression "pcVar5 = pcVar5 + 1" identifier = (binary_expression "pcVar5 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar2 = cVar8;" (assignment_expression "*pcVar2 = cVar8" (pointer_expression "*pcVar2" * identifier) = identifier) ;) (expression_statement "cVar8 = *pcVar5;" (assignment_expression "cVar8 = *pcVar5" identifier = (pointer_expression "*pcVar5" * identifier)) ;) })) }))) (if_statement "if (pcVar9 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(key);\n        key = pcVar9;\n      }" if (parenthesized_expression "(pcVar9 != (char *)0x0)" ( (binary_expression "pcVar9 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (*(code *)PTR_free_000b0ca4)(key);\n        key = pcVar9;\n      }" { (expression_statement "(*(code *)PTR_free_000b0ca4)(key);" (call_expression "(*(code *)PTR_free_000b0ca4)(key)" (parenthesized_expression "(*(code *)PTR_free_000b0ca4)" ( (pointer_expression "*(code *)PTR_free_000b0ca4" * (cast_expression "(code *)PTR_free_000b0ca4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(key)" ( identifier ))) ;) (expression_statement "key = pcVar9;" (assignment_expression "key = pcVar9" identifier = identifier) ;) })) (expression_statement "pcVar5 = conf_get_str_strs(conf,primary,key,&key);" (assignment_expression "pcVar5 = conf_get_str_strs(conf,primary,key,&key)" identifier = (call_expression "conf_get_str_strs(conf,primary,key,&key)" identifier (argument_list "(conf,primary,key,&key)" ( identifier , identifier , identifier , (pointer_expression "&key" & identifier) )))) ;) }) while (parenthesized_expression "(pcVar5 != (char *)0x0)" ( (binary_expression "pcVar5 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) })) (expression_statement "puVar1 = PTR_write_setting_s_000b0564;" (assignment_expression "puVar1 = PTR_write_setting_s_000b0564" identifier = identifier) ;) (expression_statement "*pcVar2 = '\0';" (assignment_expression "*pcVar2 = '\0'" (pointer_expression "*pcVar2" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "(*(code *)puVar1)(handle,outkey,ptr);" (call_expression "(*(code *)puVar1)(handle,outkey,ptr)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(handle,outkey,ptr)" ( identifier , identifier , identifier ))) ;) comment (expression_statement "safefree(ptr);" (call_expression "safefree(ptr)" identifier (argument_list "(ptr)" ( identifier ))) ;) })))
(translation_unit "void FUN_0002cc18(undefined4 param_1,undefined4 *param_2,undefined4 param_3,int param_4,int param_5)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  char *pcVar4;\n  char *pcVar5;\n  undefined *puVar6;\n  char cVar12;\n  char *pcVar7;\n  undefined1 *puVar8;\n  uint uVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char **ppcVar13;\n  uint *puVar14;\n  uint uVar15;\n  int iVar16;\n  char *pcVar17;\n  undefined4 *puVar18;\n  char *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  undefined *puVar22;\n  char *local_30;\n  int local_2c;\n  \n  puVar22 = PTR___stack_chk_guard_000b0c9c;\n  local_2c = *(int *)PTR___stack_chk_guard_000b0c9c;\n  iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30);\n  if (iVar2 == 0) {\n    iVar16 = 1;\n  }\n  else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }\n  pcVar4 = (char *)safemalloc(iVar16,1);\n  ppcVar13 = &local_30;\n  pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30);\n  puVar1 = PTR_s_Present_000b0188;\n  pcVar20 = pcVar4;\n  if (pcVar5 == (char *)0x0) {\n    pcVar5 = (char *)0x0;\n  }\n  else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }\n  puVar1 = PTR_write_setting_s_000b0564;\n  *pcVar20 = '\0';\n  pcVar20 = pcVar4;\n  (*(code *)puVar1)(param_1);\n  safefree(pcVar4);\n  if (local_2c == *(int *)puVar22) {\n    return;\n  }\n  puVar22 = PTR___stack_chk_fail_000b0c70;\n  (*(code *)PTR___stack_chk_fail_000b0c70)();\n  uVar21 = 0;\n  uVar15 = 0;\n  puVar14 = (uint *)&DAT_0000002c;\n  pcVar17 = (char *)dupstr();\n  cVar12 = *pcVar17;\n  pcVar4 = pcVar17;\n  do {\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  } while( true );\n}\n\n" (function_definition "void FUN_0002cc18(undefined4 param_1,undefined4 *param_2,undefined4 param_3,int param_4,int param_5)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  char *pcVar4;\n  char *pcVar5;\n  undefined *puVar6;\n  char cVar12;\n  char *pcVar7;\n  undefined1 *puVar8;\n  uint uVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char **ppcVar13;\n  uint *puVar14;\n  uint uVar15;\n  int iVar16;\n  char *pcVar17;\n  undefined4 *puVar18;\n  char *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  undefined *puVar22;\n  char *local_30;\n  int local_2c;\n  \n  puVar22 = PTR___stack_chk_guard_000b0c9c;\n  local_2c = *(int *)PTR___stack_chk_guard_000b0c9c;\n  iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30);\n  if (iVar2 == 0) {\n    iVar16 = 1;\n  }\n  else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }\n  pcVar4 = (char *)safemalloc(iVar16,1);\n  ppcVar13 = &local_30;\n  pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30);\n  puVar1 = PTR_s_Present_000b0188;\n  pcVar20 = pcVar4;\n  if (pcVar5 == (char *)0x0) {\n    pcVar5 = (char *)0x0;\n  }\n  else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }\n  puVar1 = PTR_write_setting_s_000b0564;\n  *pcVar20 = '\0';\n  pcVar20 = pcVar4;\n  (*(code *)puVar1)(param_1);\n  safefree(pcVar4);\n  if (local_2c == *(int *)puVar22) {\n    return;\n  }\n  puVar22 = PTR___stack_chk_fail_000b0c70;\n  (*(code *)PTR___stack_chk_fail_000b0c70)();\n  uVar21 = 0;\n  uVar15 = 0;\n  puVar14 = (uint *)&DAT_0000002c;\n  pcVar17 = (char *)dupstr();\n  cVar12 = *pcVar17;\n  pcVar4 = pcVar17;\n  do {\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  } while( true );\n}" primitive_type (function_declarator "FUN_0002cc18(undefined4 param_1,undefined4 *param_2,undefined4 param_3,int param_4,int param_5)" identifier (parameter_list "(undefined4 param_1,undefined4 *param_2,undefined4 param_3,int param_4,int param_5)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "undefined4 *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "int param_4" primitive_type identifier) , (parameter_declaration "int param_5" primitive_type identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  char *pcVar4;\n  char *pcVar5;\n  undefined *puVar6;\n  char cVar12;\n  char *pcVar7;\n  undefined1 *puVar8;\n  uint uVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char **ppcVar13;\n  uint *puVar14;\n  uint uVar15;\n  int iVar16;\n  char *pcVar17;\n  undefined4 *puVar18;\n  char *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  undefined *puVar22;\n  char *local_30;\n  int local_2c;\n  \n  puVar22 = PTR___stack_chk_guard_000b0c9c;\n  local_2c = *(int *)PTR___stack_chk_guard_000b0c9c;\n  iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30);\n  if (iVar2 == 0) {\n    iVar16 = 1;\n  }\n  else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }\n  pcVar4 = (char *)safemalloc(iVar16,1);\n  ppcVar13 = &local_30;\n  pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30);\n  puVar1 = PTR_s_Present_000b0188;\n  pcVar20 = pcVar4;\n  if (pcVar5 == (char *)0x0) {\n    pcVar5 = (char *)0x0;\n  }\n  else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }\n  puVar1 = PTR_write_setting_s_000b0564;\n  *pcVar20 = '\0';\n  pcVar20 = pcVar4;\n  (*(code *)puVar1)(param_1);\n  safefree(pcVar4);\n  if (local_2c == *(int *)puVar22) {\n    return;\n  }\n  puVar22 = PTR___stack_chk_fail_000b0c70;\n  (*(code *)PTR___stack_chk_fail_000b0c70)();\n  uVar21 = 0;\n  uVar15 = 0;\n  puVar14 = (uint *)&DAT_0000002c;\n  pcVar17 = (char *)dupstr();\n  cVar12 = *pcVar17;\n  pcVar4 = pcVar17;\n  do {\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  } while( true );\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "char *pcVar5;" primitive_type (pointer_declarator "*pcVar5" * identifier) ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "char cVar12;" primitive_type identifier ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "undefined1 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "char **ppcVar13;" primitive_type (pointer_declarator "**ppcVar13" * (pointer_declarator "*ppcVar13" * identifier)) ;) (declaration "uint *puVar14;" type_identifier (pointer_declarator "*puVar14" * identifier) ;) (declaration "uint uVar15;" type_identifier identifier ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "char *pcVar17;" primitive_type (pointer_declarator "*pcVar17" * identifier) ;) (declaration "undefined4 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "char *pcVar19;" primitive_type (pointer_declarator "*pcVar19" * identifier) ;) (declaration "char *pcVar20;" primitive_type (pointer_declarator "*pcVar20" * identifier) ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "undefined *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "char *local_30;" primitive_type (pointer_declarator "*local_30" * identifier) ;) (declaration "int local_2c;" primitive_type identifier ;) (expression_statement "puVar22 = PTR___stack_chk_guard_000b0c9c;" (assignment_expression "puVar22 = PTR___stack_chk_guard_000b0c9c" identifier = identifier) ;) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_000b0c9c;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_000b0c9c" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_000b0c9c" * (cast_expression "(int *)PTR___stack_chk_guard_000b0c9c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30);" (assignment_expression "iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30)" identifier = (call_expression "conf_get_str_strs(param_3,param_4,0,&local_30)" identifier (argument_list "(param_3,param_4,0,&local_30)" ( identifier , identifier , number_literal , (pointer_expression "&local_30" & identifier) )))) ;) (if_statement "if (iVar2 == 0) {\n    iVar16 = 1;\n  }\n  else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar16 = 1;\n  }" { (expression_statement "iVar16 = 1;" (assignment_expression "iVar16 = 1" identifier = number_literal) ;) }) (else_clause "else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }" else (compound_statement "{\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }" { (expression_statement "iVar16 = 1;" (assignment_expression "iVar16 = 1" identifier = number_literal) ;) (do_statement "do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);" do (compound_statement "{\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    }" { (expression_statement "pcVar5 = local_30;" (assignment_expression "pcVar5 = local_30" identifier = identifier) ;) (expression_statement "iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);" (assignment_expression "iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30)" identifier = (call_expression "(*(code *)PTR_strlen_000b0be4)(local_30)" (parenthesized_expression "(*(code *)PTR_strlen_000b0be4)" ( (pointer_expression "*(code *)PTR_strlen_000b0be4" * (cast_expression "(code *)PTR_strlen_000b0be4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_30)" ( identifier )))) ;) (expression_statement "iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);" (assignment_expression "iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2)" identifier = (call_expression "(*(code *)PTR_strlen_000b0be4)(iVar2)" (parenthesized_expression "(*(code *)PTR_strlen_000b0be4)" ( (pointer_expression "*(code *)PTR_strlen_000b0be4" * (cast_expression "(code *)PTR_strlen_000b0be4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar2)" ( identifier )))) ;) (expression_statement "iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;" (assignment_expression "iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16" identifier = (binary_expression "(iVar3 + iVar2 + 1) * 2 + iVar16" (binary_expression "(iVar3 + iVar2 + 1) * 2" (parenthesized_expression "(iVar3 + iVar2 + 1)" ( (binary_expression "iVar3 + iVar2 + 1" (binary_expression "iVar3 + iVar2" identifier + identifier) + number_literal) )) * number_literal) + identifier)) ;) (expression_statement "iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);" (assignment_expression "iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30)" identifier = (call_expression "conf_get_str_strs(param_3,param_4,pcVar5,&local_30)" identifier (argument_list "(param_3,param_4,pcVar5,&local_30)" ( identifier , identifier , identifier , (pointer_expression "&local_30" & identifier) )))) ;) }) while (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) ;) }))) (expression_statement "pcVar4 = (char *)safemalloc(iVar16,1);" (assignment_expression "pcVar4 = (char *)safemalloc(iVar16,1)" identifier = (cast_expression "(char *)safemalloc(iVar16,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "safemalloc(iVar16,1)" identifier (argument_list "(iVar16,1)" ( identifier , number_literal ))))) ;) (expression_statement "ppcVar13 = &local_30;" (assignment_expression "ppcVar13 = &local_30" identifier = (pointer_expression "&local_30" & identifier)) ;) (expression_statement "pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30);" (assignment_expression "pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30)" identifier = (cast_expression "(char *)conf_get_str_strs(param_3,param_4,0,&local_30)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "conf_get_str_strs(param_3,param_4,0,&local_30)" identifier (argument_list "(param_3,param_4,0,&local_30)" ( identifier , identifier , number_literal , (pointer_expression "&local_30" & identifier) ))))) ;) (expression_statement "puVar1 = PTR_s_Present_000b0188;" (assignment_expression "puVar1 = PTR_s_Present_000b0188" identifier = identifier) ;) (expression_statement "pcVar20 = pcVar4;" (assignment_expression "pcVar20 = pcVar4" identifier = identifier) ;) (if_statement "if (pcVar5 == (char *)0x0) {\n    pcVar5 = (char *)0x0;\n  }\n  else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }" if (parenthesized_expression "(pcVar5 == (char *)0x0)" ( (binary_expression "pcVar5 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar5 = (char *)0x0;\n  }" { (expression_statement "pcVar5 = (char *)0x0;" (assignment_expression "pcVar5 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }" else (compound_statement "{\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }" { (expression_statement "puVar6 = PTR_s_Present_000b0188 + 0x2e20;" (assignment_expression "puVar6 = PTR_s_Present_000b0188 + 0x2e20" identifier = (binary_expression "PTR_s_Present_000b0188 + 0x2e20" identifier + number_literal)) ;) (do_statement "do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);" do (compound_statement "{\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    }" { (if_statement "if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }" if (parenthesized_expression "((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0))" ( (binary_expression "(param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)" (parenthesized_expression "(param_4 == 0x9b)" ( (binary_expression "param_4 == 0x9b" identifier == number_literal) )) && (parenthesized_expression "(iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)" ( (comma_expression "iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0" (assignment_expression "iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6)" identifier = (call_expression "(*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6)" (parenthesized_expression "(*(code *)PTR_strcmp_000b0cd8)" ( (pointer_expression "*(code *)PTR_strcmp_000b0cd8" * (cast_expression "(code *)PTR_strcmp_000b0cd8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar5,puVar6)" ( identifier , identifier )))) , (comma_expression "pcVar17 = local_30, iVar2 == 0" (assignment_expression "pcVar17 = local_30" identifier = identifier) , (binary_expression "iVar2 == 0" identifier == number_literal))) ))) )) (compound_statement "{\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }" { (expression_statement "local_30 = (char *)dupstr(local_30);" (assignment_expression "local_30 = (char *)dupstr(local_30)" identifier = (cast_expression "(char *)dupstr(local_30)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dupstr(local_30)" identifier (argument_list "(local_30)" ( identifier ))))) ;) (expression_statement "puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);" (assignment_expression "puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c)" identifier = (cast_expression "(undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_strchr_000b0bec)(local_30,0x4c)" (parenthesized_expression "(*(code *)PTR_strchr_000b0bec)" ( (pointer_expression "*(code *)PTR_strchr_000b0bec" * (cast_expression "(code *)PTR_strchr_000b0bec" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_30,0x4c)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\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          pcVar5 = puVar1 + 0x2d54;\n        }" { (expression_statement "pcVar5 = puVar1 + 0x2d54;" (assignment_expression "pcVar5 = puVar1 + 0x2d54" identifier = (binary_expression "puVar1 + 0x2d54" identifier + number_literal)) ;) }) (else_clause "else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }" else (compound_statement "{\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }" { (expression_statement "pcVar5 = puVar1 + 0x2d54;" (assignment_expression "pcVar5 = puVar1 + 0x2d54" identifier = (binary_expression "puVar1 + 0x2d54" identifier + number_literal)) ;) (expression_statement "*puVar8 = 0x44;" (assignment_expression "*puVar8 = 0x44" (pointer_expression "*puVar8" * identifier) = number_literal) ;) }))) }) (else_clause "else {\n        pcVar17 = (char *)0x0;\n      }" else (compound_statement "{\n        pcVar17 = (char *)0x0;\n      }" { (expression_statement "pcVar17 = (char *)0x0;" (assignment_expression "pcVar17 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (expression_statement "pcVar19 = pcVar20;" (assignment_expression "pcVar19 = pcVar20" identifier = identifier) ;) (if_statement "if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }" if (parenthesized_expression "(pcVar4 != pcVar20)" ( (binary_expression "pcVar4 != pcVar20" identifier != identifier) )) (compound_statement "{\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }" { (expression_statement "pcVar19 = pcVar20 + 1;" (assignment_expression "pcVar19 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar20 = ',';" (assignment_expression "*pcVar20 = ','" (pointer_expression "*pcVar20" * identifier) = (char_literal "','" ' character ')) ;) })) (expression_statement "cVar12 = *local_30;" (assignment_expression "cVar12 = *local_30" identifier = (pointer_expression "*local_30" * identifier)) ;) (expression_statement "pcVar20 = pcVar19;" (assignment_expression "pcVar20 = pcVar19" identifier = identifier) ;) (expression_statement "pcVar19 = local_30;" (assignment_expression "pcVar19 = local_30" identifier = identifier) ;) (while_statement "while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }" while (parenthesized_expression "(cVar12 != '\0')" ( (binary_expression "cVar12 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }" { (while_statement "while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }" while (parenthesized_expression "(((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\')))" ( (parenthesized_expression "((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))" ( (binary_expression "(cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\')" (parenthesized_expression "(cVar12 == '=' || (cVar12 == ','))" ( (binary_expression "cVar12 == '=' || (cVar12 == ',')" (binary_expression "cVar12 == '='" identifier == (char_literal "'='" ' character ')) || (parenthesized_expression "(cVar12 == ',')" ( (binary_expression "cVar12 == ','" identifier == (char_literal "','" ' character ')) ))) )) || (parenthesized_expression "(cVar12 == '\\')" ( (binary_expression "cVar12 == '\\'" identifier == (char_literal "'\\'" ' escape_sequence ')) ))) )) )) (compound_statement "{\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }" { (expression_statement "*pcVar20 = '\\';" (assignment_expression "*pcVar20 = '\\'" (pointer_expression "*pcVar20" * identifier) = (char_literal "'\\'" ' escape_sequence ')) ;) (expression_statement "pcVar7 = pcVar20 + 1;" (assignment_expression "pcVar7 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" identifier = (pointer_expression "*pcVar19" * identifier)) ;) (expression_statement "pcVar19 = pcVar19 + 1;" (assignment_expression "pcVar19 = pcVar19 + 1" identifier = (binary_expression "pcVar19 + 1" identifier + number_literal)) ;) (expression_statement "pcVar20 = pcVar20 + 2;" (assignment_expression "pcVar20 = pcVar20 + 2" identifier = (binary_expression "pcVar20 + 2" identifier + number_literal)) ;) (expression_statement "*pcVar7 = cVar12;" (assignment_expression "*pcVar7 = cVar12" (pointer_expression "*pcVar7" * identifier) = identifier) ;) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" identifier = (pointer_expression "*pcVar19" * identifier)) ;) (if_statement "if (cVar12 == '\0') goto LAB_0002cdf8;" if (parenthesized_expression "(cVar12 == '\0')" ( (binary_expression "cVar12 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0002cdf8;" goto statement_identifier ;)) })) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" identifier = (pointer_expression "*pcVar19" * identifier)) ;) (expression_statement "pcVar19 = pcVar19 + 1;" (assignment_expression "pcVar19 = pcVar19 + 1" identifier = (binary_expression "pcVar19 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar20 = cVar12;" (assignment_expression "*pcVar20 = cVar12" (pointer_expression "*pcVar20" * identifier) = identifier) ;) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" identifier = (pointer_expression "*pcVar19" * identifier)) ;) })) (labeled_statement "LAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }" statement_identifier : (if_statement "if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }" if (parenthesized_expression "(param_5 != 0)" ( (binary_expression "param_5 != 0" identifier != number_literal) )) (compound_statement "{\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }" { (expression_statement "*pcVar20 = '=';" (assignment_expression "*pcVar20 = '='" (pointer_expression "*pcVar20" * identifier) = (char_literal "'='" ' character ')) ;) (expression_statement "cVar12 = *pcVar5;" (assignment_expression "cVar12 = *pcVar5" identifier = (pointer_expression "*pcVar5" * identifier)) ;) (while_statement "while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }" while (parenthesized_expression "(pcVar20 = pcVar20 + 1, cVar12 != '\0')" ( (comma_expression "pcVar20 = pcVar20 + 1, cVar12 != '\0'" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) , (binary_expression "cVar12 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) )) (compound_statement "{\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }" { (if_statement "if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }" if (parenthesized_expression "(((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\'))" ( (binary_expression "((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')" (parenthesized_expression "((cVar12 == '=') || (cVar12 == ','))" ( (binary_expression "(cVar12 == '=') || (cVar12 == ',')" (parenthesized_expression "(cVar12 == '=')" ( (binary_expression "cVar12 == '='" identifier == (char_literal "'='" ' character ')) )) || (parenthesized_expression "(cVar12 == ',')" ( (binary_expression "cVar12 == ','" identifier == (char_literal "','" ' character ')) ))) )) || (parenthesized_expression "(cVar12 == '\\')" ( (binary_expression "cVar12 == '\\'" identifier == (char_literal "'\\'" ' escape_sequence ')) ))) )) (compound_statement "{\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }" { (expression_statement "*pcVar20 = '\\';" (assignment_expression "*pcVar20 = '\\'" (pointer_expression "*pcVar20" * identifier) = (char_literal "'\\'" ' escape_sequence ')) ;) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) })) (expression_statement "cVar12 = *pcVar5;" (assignment_expression "cVar12 = *pcVar5" identifier = (pointer_expression "*pcVar5" * identifier)) ;) (expression_statement "pcVar5 = pcVar5 + 1;" (assignment_expression "pcVar5 = pcVar5 + 1" identifier = (binary_expression "pcVar5 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar20 = cVar12;" (assignment_expression "*pcVar20 = cVar12" (pointer_expression "*pcVar20" * identifier) = identifier) ;) (expression_statement "cVar12 = *pcVar5;" (assignment_expression "cVar12 = *pcVar5" identifier = (pointer_expression "*pcVar5" * identifier)) ;) })) }))) (if_statement "if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }" if (parenthesized_expression "(pcVar17 != (char *)0x0)" ( (binary_expression "pcVar17 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }" { (expression_statement "(*(code *)PTR_free_000b0ca4)(local_30);" (call_expression "(*(code *)PTR_free_000b0ca4)(local_30)" (parenthesized_expression "(*(code *)PTR_free_000b0ca4)" ( (pointer_expression "*(code *)PTR_free_000b0ca4" * (cast_expression "(code *)PTR_free_000b0ca4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_30)" ( identifier ))) ;) (expression_statement "local_30 = pcVar17;" (assignment_expression "local_30 = pcVar17" identifier = identifier) ;) })) (expression_statement "ppcVar13 = &local_30;" (assignment_expression "ppcVar13 = &local_30" identifier = (pointer_expression "&local_30" & identifier)) ;) (expression_statement "pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);" (assignment_expression "pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30)" identifier = (cast_expression "(char *)conf_get_str_strs(param_3,param_4,local_30,&local_30)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "conf_get_str_strs(param_3,param_4,local_30,&local_30)" identifier (argument_list "(param_3,param_4,local_30,&local_30)" ( identifier , identifier , identifier , (pointer_expression "&local_30" & identifier) ))))) ;) }) while (parenthesized_expression "(pcVar5 != (char *)0x0)" ( (binary_expression "pcVar5 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) }))) (expression_statement "puVar1 = PTR_write_setting_s_000b0564;" (assignment_expression "puVar1 = PTR_write_setting_s_000b0564" identifier = identifier) ;) (expression_statement "*pcVar20 = '\0';" (assignment_expression "*pcVar20 = '\0'" (pointer_expression "*pcVar20" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar20 = pcVar4;" (assignment_expression "pcVar20 = pcVar4" identifier = identifier) ;) (expression_statement "(*(code *)puVar1)(param_1);" (call_expression "(*(code *)puVar1)(param_1)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1)" ( identifier ))) ;) (expression_statement "safefree(pcVar4);" (call_expression "safefree(pcVar4)" identifier (argument_list "(pcVar4)" ( identifier ))) ;) (if_statement "if (local_2c == *(int *)puVar22) {\n    return;\n  }" if (parenthesized_expression "(local_2c == *(int *)puVar22)" ( (binary_expression "local_2c == *(int *)puVar22" identifier == (pointer_expression "*(int *)puVar22" * (cast_expression "(int *)puVar22" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "puVar22 = PTR___stack_chk_fail_000b0c70;" (assignment_expression "puVar22 = PTR___stack_chk_fail_000b0c70" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_000b0c70)();" (call_expression "(*(code *)PTR___stack_chk_fail_000b0c70)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000b0c70)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_000b0c70" * (cast_expression "(code *)PTR___stack_chk_fail_000b0c70" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (expression_statement "uVar15 = 0;" (assignment_expression "uVar15 = 0" identifier = number_literal) ;) (expression_statement "puVar14 = (uint *)&DAT_0000002c;" (assignment_expression "puVar14 = (uint *)&DAT_0000002c" identifier = (cast_expression "(uint *)&DAT_0000002c" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0000002c" & identifier))) ;) (expression_statement "pcVar17 = (char *)dupstr();" (assignment_expression "pcVar17 = (char *)dupstr()" identifier = (cast_expression "(char *)dupstr()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dupstr()" identifier (argument_list "()" ( ))))) ;) (expression_statement "cVar12 = *pcVar17;" (assignment_expression "cVar12 = *pcVar17" identifier = (pointer_expression "*pcVar17" * identifier)) ;) (expression_statement "pcVar4 = pcVar17;" (assignment_expression "pcVar4 = pcVar17" identifier = identifier) ;) (do_statement "do {\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  } while( true );" do (compound_statement "{\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  }" { (if_statement "if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }" if (parenthesized_expression "(cVar12 == ',')" ( (binary_expression "cVar12 == ','" identifier == (char_literal "','" ' character ')) )) (compound_statement "{\n      pcVar19 = pcVar4 + 1;\n    }" { (expression_statement "pcVar19 = pcVar4 + 1;" (assignment_expression "pcVar19 = pcVar4 + 1" identifier = (binary_expression "pcVar4 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }" else (compound_statement "{\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }" { (if_statement "if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }" if (parenthesized_expression "(cVar12 == '\0')" ( (binary_expression "cVar12 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }" { (expression_statement "safefree(pcVar17);" (call_expression "safefree(pcVar17)" identifier (argument_list "(pcVar17)" ( identifier ))) ;) (if_statement "if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }" if (parenthesized_expression "((int)uVar15 < (int)pcVar20)" ( (binary_expression "(int)uVar15 < (int)pcVar20" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)pcVar20" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }" { (do_statement "do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);" do (compound_statement "{\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          }" { (expression_statement "uVar9 = param_2[1];" (assignment_expression "uVar9 = param_2[1]" identifier = (subscript_expression "param_2[1]" identifier [ number_literal ])) ;) (if_statement "if (0x1f < (int)uVar9) goto LAB_0002d234;" if (parenthesized_expression "(0x1f < (int)uVar9)" ( (binary_expression "0x1f < (int)uVar9" number_literal < (cast_expression "(int)uVar9" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_0002d234;" goto statement_identifier ;)) (expression_statement "pcVar5 = (char *)0x0;" (assignment_expression "pcVar5 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar14 = param_2 + 1;" (assignment_expression "puVar14 = param_2 + 1" identifier = (binary_expression "param_2 + 1" identifier + number_literal)) ;) (while_statement "while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }" { (if_statement "if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;" if (parenthesized_expression "((1 << (uVar9 & 0x1f) & uVar21) != 0)" ( (binary_expression "(1 << (uVar9 & 0x1f) & uVar21) != 0" (parenthesized_expression "(1 << (uVar9 & 0x1f) & uVar21)" ( (binary_expression "1 << (uVar9 & 0x1f) & uVar21" (binary_expression "1 << (uVar9 & 0x1f)" number_literal << (parenthesized_expression "(uVar9 & 0x1f)" ( (binary_expression "uVar9 & 0x1f" identifier & number_literal) ))) & identifier) )) != number_literal) )) (goto_statement "goto LAB_0002d218;" goto statement_identifier ;)) (if_statement "if (puVar14[1] == 0xffffffff) goto LAB_0002d258;" if (parenthesized_expression "(puVar14[1] == 0xffffffff)" ( (binary_expression "puVar14[1] == 0xffffffff" (subscript_expression "puVar14[1]" identifier [ number_literal ]) == number_literal) )) (goto_statement "goto LAB_0002d258;" goto statement_identifier ;)) (if_statement "if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;" if (parenthesized_expression "((1 << (puVar14[1] & 0x1f) & uVar21) == 0)" ( (binary_expression "(1 << (puVar14[1] & 0x1f) & uVar21) == 0" (parenthesized_expression "(1 << (puVar14[1] & 0x1f) & uVar21)" ( (binary_expression "1 << (puVar14[1] & 0x1f) & uVar21" (binary_expression "1 << (puVar14[1] & 0x1f)" number_literal << (parenthesized_expression "(puVar14[1] & 0x1f)" ( (binary_expression "puVar14[1] & 0x1f" (subscript_expression "puVar14[1]" identifier [ number_literal ]) & number_literal) ))) & identifier) )) == number_literal) )) (goto_statement "goto LAB_0002d218;" goto statement_identifier ;)) (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" identifier = number_literal) ;) (if_statement "if (uVar15 == 0) break;" if (parenthesized_expression "(uVar15 == 0)" ( (binary_expression "uVar15 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (while_statement "while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }" while (parenthesized_expression "(uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1])" ( (comma_expression "uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]" (assignment_expression "uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9)" identifier = (call_expression "conf_get_int_int(ppcVar13,&_gp_1,uVar9)" identifier (argument_list "(ppcVar13,&_gp_1,uVar9)" ( identifier , (pointer_expression "&_gp_1" & identifier) , identifier )))) , (binary_expression "uVar10 != puVar14[1]" identifier != (subscript_expression "puVar14[1]" identifier [ number_literal ]))) )) (compound_statement "{\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }" { (expression_statement "uVar9 = uVar9 + 1;" (assignment_expression "uVar9 = uVar9 + 1" identifier = (binary_expression "uVar9 + 1" identifier + number_literal)) ;) (expression_statement "iVar2 = *(int *)(puVar22 + 0x831ec);" (assignment_expression "iVar2 = *(int *)(puVar22 + 0x831ec)" identifier = (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) ))))) ;) (if_statement "if (uVar9 == uVar15) goto LAB_0002d26c;" if (parenthesized_expression "(uVar9 == uVar15)" ( (binary_expression "uVar9 == uVar15" identifier == identifier) )) (goto_statement "goto LAB_0002d26c;" goto statement_identifier ;)) })) (if_statement "if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }" if (parenthesized_expression "(-1 < (int)puVar14[2])" ( (binary_expression "-1 < (int)puVar14[2]" number_literal < (cast_expression "(int)puVar14[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar14[2]" identifier [ number_literal ]))) )) (compound_statement "{\n                uVar9 = uVar9 + 1;\n              }" { (expression_statement "uVar9 = uVar9 + 1;" (assignment_expression "uVar9 = uVar9 + 1" identifier = (binary_expression "uVar9 + 1" identifier + number_literal)) ;) })) (while_statement "while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }" { (expression_statement "iVar2 = uVar15 - 1;" (assignment_expression "iVar2 = uVar15 - 1" identifier = (binary_expression "uVar15 - 1" identifier - number_literal)) ;) (if_statement "if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }" if (parenthesized_expression "((int)uVar9 <= iVar2)" ( (binary_expression "(int)uVar9 <= iVar2" (cast_expression "(int)uVar9" ( (type_descriptor "int" primitive_type) ) identifier) <= identifier) )) (compound_statement "{\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }" { (do_statement "do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);" do (compound_statement "{\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  }" { (expression_statement "uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);" (assignment_expression "uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2)" identifier = (call_expression "conf_get_int_int(ppcVar13,&_gp_1,iVar2)" identifier (argument_list "(ppcVar13,&_gp_1,iVar2)" ( identifier , (pointer_expression "&_gp_1" & identifier) , identifier )))) ;) (expression_statement "iVar16 = iVar2 + 1;" (assignment_expression "iVar16 = iVar2 + 1" identifier = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);" (call_expression "conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11)" identifier (argument_list "(ppcVar13,&_gp_1,iVar16,uVar11)" ( identifier , (pointer_expression "&_gp_1" & identifier) , identifier , identifier ))) ;) }) while (parenthesized_expression "(iVar2 != uVar9 - 1)" ( (binary_expression "iVar2 != uVar9 - 1" identifier != (binary_expression "uVar9 - 1" identifier - number_literal)) )) ;) })) (expression_statement "uVar15 = uVar15 + 1;" (assignment_expression "uVar15 = uVar15 + 1" identifier = (binary_expression "uVar15 + 1" identifier + number_literal)) ;) (expression_statement "conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);" (call_expression "conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14)" identifier (argument_list "(ppcVar13,&_gp_1,uVar9,*puVar14)" ( identifier , (pointer_expression "&_gp_1" & identifier) , identifier , (pointer_expression "*puVar14" * identifier) ))) ;) (expression_statement "uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);" (assignment_expression "uVar21 = uVar21 | 1 << (*puVar14 & 0x1f)" identifier = (binary_expression "uVar21 | 1 << (*puVar14 & 0x1f)" identifier | (binary_expression "1 << (*puVar14 & 0x1f)" number_literal << (parenthesized_expression "(*puVar14 & 0x1f)" ( (binary_expression "*puVar14 & 0x1f" (pointer_expression "*puVar14" * identifier) & number_literal) ))))) ;) (labeled_statement "LAB_0002d218:\n                pcVar5 = pcVar5 + 1;" statement_identifier : (expression_statement "pcVar5 = pcVar5 + 1;" (assignment_expression "pcVar5 = pcVar5 + 1" identifier = (binary_expression "pcVar5 + 1" identifier + number_literal)) ;)) (expression_statement "puVar14 = puVar14 + 4;" (assignment_expression "puVar14 = puVar14 + 4" identifier = (binary_expression "puVar14 + 4" identifier + number_literal)) ;) (expression_statement "pcVar4 = pcVar20;" (assignment_expression "pcVar4 = pcVar20" identifier = identifier) ;) (if_statement "if (pcVar20 == pcVar5) goto LAB_0002d28c;" if (parenthesized_expression "(pcVar20 == pcVar5)" ( (binary_expression "pcVar20 == pcVar5" identifier == identifier) )) (goto_statement "goto LAB_0002d28c;" goto statement_identifier ;)) (expression_statement "uVar9 = *puVar14;" (assignment_expression "uVar9 = *puVar14" identifier = (pointer_expression "*puVar14" * identifier)) ;) (if_statement "if ((int)uVar9 < 0x20) break;" if (parenthesized_expression "((int)uVar9 < 0x20)" ( (binary_expression "(int)uVar9 < 0x20" (cast_expression "(int)uVar9" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (break_statement "break;" break ;)) (labeled_statement "LAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);" statement_identifier : (expression_statement "(**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);" (call_expression "(**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84)" (parenthesized_expression "(**(code **)(puVar22 + 0x83b24))" ( (pointer_expression "**(code **)(puVar22 + 0x83b24)" * (pointer_expression "*(code **)(puVar22 + 0x83b24)" * (cast_expression "(code **)(puVar22 + 0x83b24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + 0x83b24)" ( (binary_expression "puVar22 + 0x83b24" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84)" ( (binary_expression "*(int *)(puVar22 + 0x831ec) + -0x1c" (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar22 + 0x831ec) + -0x3c" (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar22 + 0x831ec) + 0xf84" (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;" statement_identifier : (expression_statement "uVar9 = (int)puVar14[2] >> 0x1f & uVar15;" (assignment_expression "uVar9 = (int)puVar14[2] >> 0x1f & uVar15" identifier = (binary_expression "(int)puVar14[2] >> 0x1f & uVar15" (binary_expression "(int)puVar14[2] >> 0x1f" (cast_expression "(int)puVar14[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar14[2]" identifier [ number_literal ])) >> number_literal) & identifier)) ;)) })) })) (expression_statement "iVar2 = *(int *)(puVar22 + 0x831ec);" (assignment_expression "iVar2 = *(int *)(puVar22 + 0x831ec)" identifier = (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) ))))) ;) (labeled_statement "LAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);" statement_identifier : (expression_statement "pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);" (assignment_expression "pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84)" identifier = (cast_expression "(char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84)" (parenthesized_expression "(**(code **)(puVar22 + 0x83b24))" ( (pointer_expression "**(code **)(puVar22 + 0x83b24)" * (pointer_expression "*(code **)(puVar22 + 0x83b24)" * (cast_expression "(code **)(puVar22 + 0x83b24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + 0x83b24)" ( (binary_expression "puVar22 + 0x83b24" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84)" ( (binary_expression "*(int *)(puVar22 + 0x831ec) + -8" (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar22 + 0x831ec) + -0x3c" (pointer_expression "*(int *)(puVar22 + 0x831ec)" * (cast_expression "(int *)(puVar22 + 0x831ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0x831ec)" ( (binary_expression "puVar22 + 0x831ec" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + 0xf84" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_0002d28c:" statement_identifier : (expression_statement "" ;)) }) while (parenthesized_expression "((int)uVar15 < (int)pcVar4)" ( (binary_expression "(int)uVar15 < (int)pcVar4" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)pcVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) (return_statement "return;" return ;) })) (expression_statement "cVar12 = pcVar4[1];" (assignment_expression "cVar12 = pcVar4[1]" identifier = (subscript_expression "pcVar4[1]" identifier [ number_literal ])) ;) (expression_statement "pcVar7 = pcVar4;" (assignment_expression "pcVar7 = pcVar4" identifier = identifier) ;) (while_statement "while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }" while (parenthesized_expression "(pcVar19 = pcVar7 + 1, cVar12 != '\0')" ( (comma_expression "pcVar19 = pcVar7 + 1, cVar12 != '\0'" (assignment_expression "pcVar19 = pcVar7 + 1" identifier = (binary_expression "pcVar7 + 1" identifier + number_literal)) , (binary_expression "cVar12 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) )) (compound_statement "{\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }" { (if_statement "if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }" if (parenthesized_expression "(cVar12 == ',')" ( (binary_expression "cVar12 == ','" identifier == (char_literal "','" ' character ')) )) (compound_statement "{\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }" { (expression_statement "*pcVar19 = '\0';" (assignment_expression "*pcVar19 = '\0'" (pointer_expression "*pcVar19" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar19 = pcVar7 + 2;" (assignment_expression "pcVar19 = pcVar7 + 2" identifier = (binary_expression "pcVar7 + 2" identifier + number_literal)) ;) (break_statement "break;" break ;) })) (expression_statement "cVar12 = pcVar7[2];" (assignment_expression "cVar12 = pcVar7[2]" identifier = (subscript_expression "pcVar7[2]" identifier [ number_literal ])) ;) (expression_statement "pcVar7 = pcVar19;" (assignment_expression "pcVar7 = pcVar19" identifier = identifier) ;) })) (if_statement "if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }" if (parenthesized_expression "(0 < (int)pcVar20)" ( (binary_expression "0 < (int)pcVar20" number_literal < (cast_expression "(int)pcVar20" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }" { (expression_statement "pcVar5 = (char *)0x0;" (assignment_expression "pcVar5 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar18 = param_2;" (assignment_expression "puVar18 = param_2" identifier = identifier) ;) (do_statement "do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);" do (compound_statement "{\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        }" { (expression_statement "iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);" (assignment_expression "iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4)" identifier = (call_expression "(**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4)" (parenthesized_expression "(**(code **)(puVar22 + 0x83d3c))" ( (pointer_expression "**(code **)(puVar22 + 0x83d3c)" * (pointer_expression "*(code **)(puVar22 + 0x83d3c)" * (cast_expression "(code **)(puVar22 + 0x83d3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + 0x83d3c)" ( (binary_expression "puVar22 + 0x83d3c" identifier + number_literal) ))))) )) (argument_list "(*puVar18,pcVar4)" ( (pointer_expression "*puVar18" * identifier) , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }" { (if_statement "if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }" if (parenthesized_expression "((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0))" ( (binary_expression "(puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)" (parenthesized_expression "(puVar18[1] != 0xffffffff)" ( (binary_expression "puVar18[1] != 0xffffffff" (subscript_expression "puVar18[1]" identifier [ number_literal ]) != number_literal) )) && (parenthesized_expression "(uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)" ( (comma_expression "uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0" (assignment_expression "uVar9 = 1 << (puVar18[1] & 0x1f)" identifier = (binary_expression "1 << (puVar18[1] & 0x1f)" number_literal << (parenthesized_expression "(puVar18[1] & 0x1f)" ( (binary_expression "puVar18[1] & 0x1f" (subscript_expression "puVar18[1]" identifier [ number_literal ]) & number_literal) )))) , (binary_expression "(uVar9 & uVar21) == 0" (parenthesized_expression "(uVar9 & uVar21)" ( (binary_expression "uVar9 & uVar21" identifier & identifier) )) == number_literal)) ))) )) (compound_statement "{\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }" { (expression_statement "uVar21 = uVar21 | uVar9;" (assignment_expression "uVar21 = uVar21 | uVar9" identifier = (binary_expression "uVar21 | uVar9" identifier | identifier)) ;) (expression_statement "conf_set_int_int(ppcVar13,&_gp_1,uVar15);" (call_expression "conf_set_int_int(ppcVar13,&_gp_1,uVar15)" identifier (argument_list "(ppcVar13,&_gp_1,uVar15)" ( identifier , (pointer_expression "&_gp_1" & identifier) , identifier ))) ;) (expression_statement "uVar15 = uVar15 + 1;" (assignment_expression "uVar15 = uVar15 + 1" identifier = (binary_expression "uVar15 + 1" identifier + number_literal)) ;) })) (break_statement "break;" break ;) })) (expression_statement "pcVar5 = pcVar5 + 1;" (assignment_expression "pcVar5 = pcVar5 + 1" identifier = (binary_expression "pcVar5 + 1" identifier + number_literal)) ;) (expression_statement "puVar18 = puVar18 + 4;" (assignment_expression "puVar18 = puVar18 + 4" identifier = (binary_expression "puVar18 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(pcVar20 != pcVar5)" ( (binary_expression "pcVar20 != pcVar5" identifier != identifier) )) ;) })) }))) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" identifier = (pointer_expression "*pcVar19" * identifier)) ;) (expression_statement "pcVar4 = pcVar19;" (assignment_expression "pcVar4 = pcVar19" identifier = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * 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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , (pointer_expression & IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT + IDENT) + LIT) )) * LIT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , (pointer_expression & IDENT) )))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , (pointer_expression & IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression 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 IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT )))) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT == LIT))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( 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 = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' character ')) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (while_statement while (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT == (char_literal ' character ')) || (parenthesized_expression ( (binary_expression IDENT == (char_literal ' character ')) ))) )) || (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) ))) )) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' character ')) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT + LIT)) , (binary_expression IDENT != (char_literal ' escape_sequence '))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' character ')) )) || (parenthesized_expression ( (binary_expression IDENT == (char_literal ' character ')) ))) )) || (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , (pointer_expression & IDENT) ))))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) (compound_statement { (return_statement return ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression LIT << (parenthesized_expression ( (binary_expression IDENT & LIT) ))) & IDENT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression LIT << (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) & LIT) ))) & IDENT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , IDENT )))) , (binary_expression IDENT != (subscript_expression IDENT [ LIT ]))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (goto_statement goto statement_identifier ;)) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) <= IDENT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , IDENT , IDENT ))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (binary_expression IDENT - LIT)) )) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , IDENT , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | (binary_expression LIT << (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (break_statement break ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT) & IDENT)) ;)) })) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))))) ;)) (labeled_statement statement_identifier : (expression_statement ;)) }) while (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) ;) })) (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT + LIT)) , (binary_expression IDENT != (char_literal ' escape_sequence '))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (break_statement break ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * IDENT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression LIT << (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) & LIT) )))) , (binary_expression (parenthesized_expression ( (binary_expression IDENT & IDENT) )) == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (break_statement break ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( BOOL )) ;) })))
(function_definition "void FUN_0002cc18(undefined4 param_1,undefined4 *param_2,undefined4 param_3,int param_4,int param_5)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  char *pcVar4;\n  char *pcVar5;\n  undefined *puVar6;\n  char cVar12;\n  char *pcVar7;\n  undefined1 *puVar8;\n  uint uVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char **ppcVar13;\n  uint *puVar14;\n  uint uVar15;\n  int iVar16;\n  char *pcVar17;\n  undefined4 *puVar18;\n  char *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  undefined *puVar22;\n  char *local_30;\n  int local_2c;\n  \n  puVar22 = PTR___stack_chk_guard_000b0c9c;\n  local_2c = *(int *)PTR___stack_chk_guard_000b0c9c;\n  iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30);\n  if (iVar2 == 0) {\n    iVar16 = 1;\n  }\n  else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }\n  pcVar4 = (char *)safemalloc(iVar16,1);\n  ppcVar13 = &local_30;\n  pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30);\n  puVar1 = PTR_s_Present_000b0188;\n  pcVar20 = pcVar4;\n  if (pcVar5 == (char *)0x0) {\n    pcVar5 = (char *)0x0;\n  }\n  else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }\n  puVar1 = PTR_write_setting_s_000b0564;\n  *pcVar20 = '\0';\n  pcVar20 = pcVar4;\n  (*(code *)puVar1)(param_1);\n  safefree(pcVar4);\n  if (local_2c == *(int *)puVar22) {\n    return;\n  }\n  puVar22 = PTR___stack_chk_fail_000b0c70;\n  (*(code *)PTR___stack_chk_fail_000b0c70)();\n  uVar21 = 0;\n  uVar15 = 0;\n  puVar14 = (uint *)&DAT_0000002c;\n  pcVar17 = (char *)dupstr();\n  cVar12 = *pcVar17;\n  pcVar4 = pcVar17;\n  do {\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  } while( true );\n}" (primitive_type "void") (function_declarator "FUN_0002cc18(undefined4 param_1,undefined4 *param_2,undefined4 param_3,int param_4,int param_5)" (identifier "FUN_0002cc18") (parameter_list "(undefined4 param_1,undefined4 *param_2,undefined4 param_3,int param_4,int param_5)" (( "(") (parameter_declaration "undefined4 param_1" (type_identifier "undefined4") (identifier "param_1")) (, ",") (parameter_declaration "undefined4 *param_2" (type_identifier "undefined4") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "undefined4 param_3" (type_identifier "undefined4") (identifier "param_3")) (, ",") (parameter_declaration "int param_4" (primitive_type "int") (identifier "param_4")) (, ",") (parameter_declaration "int param_5" (primitive_type "int") (identifier "param_5")) () ")"))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  char *pcVar4;\n  char *pcVar5;\n  undefined *puVar6;\n  char cVar12;\n  char *pcVar7;\n  undefined1 *puVar8;\n  uint uVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char **ppcVar13;\n  uint *puVar14;\n  uint uVar15;\n  int iVar16;\n  char *pcVar17;\n  undefined4 *puVar18;\n  char *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  undefined *puVar22;\n  char *local_30;\n  int local_2c;\n  \n  puVar22 = PTR___stack_chk_guard_000b0c9c;\n  local_2c = *(int *)PTR___stack_chk_guard_000b0c9c;\n  iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30);\n  if (iVar2 == 0) {\n    iVar16 = 1;\n  }\n  else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }\n  pcVar4 = (char *)safemalloc(iVar16,1);\n  ppcVar13 = &local_30;\n  pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30);\n  puVar1 = PTR_s_Present_000b0188;\n  pcVar20 = pcVar4;\n  if (pcVar5 == (char *)0x0) {\n    pcVar5 = (char *)0x0;\n  }\n  else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }\n  puVar1 = PTR_write_setting_s_000b0564;\n  *pcVar20 = '\0';\n  pcVar20 = pcVar4;\n  (*(code *)puVar1)(param_1);\n  safefree(pcVar4);\n  if (local_2c == *(int *)puVar22) {\n    return;\n  }\n  puVar22 = PTR___stack_chk_fail_000b0c70;\n  (*(code *)PTR___stack_chk_fail_000b0c70)();\n  uVar21 = 0;\n  uVar15 = 0;\n  puVar14 = (uint *)&DAT_0000002c;\n  pcVar17 = (char *)dupstr();\n  cVar12 = *pcVar17;\n  pcVar4 = pcVar17;\n  do {\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  } while( true );\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "char *pcVar4;" (primitive_type "char") (pointer_declarator "*pcVar4" (* "*") (identifier "pcVar4")) (; ";")) (declaration "char *pcVar5;" (primitive_type "char") (pointer_declarator "*pcVar5" (* "*") (identifier "pcVar5")) (; ";")) (declaration "undefined *puVar6;" (type_identifier "undefined") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "char cVar12;" (primitive_type "char") (identifier "cVar12") (; ";")) (declaration "char *pcVar7;" (primitive_type "char") (pointer_declarator "*pcVar7" (* "*") (identifier "pcVar7")) (; ";")) (declaration "undefined1 *puVar8;" (type_identifier "undefined1") (pointer_declarator "*puVar8" (* "*") (identifier "puVar8")) (; ";")) (declaration "uint uVar9;" (type_identifier "uint") (identifier "uVar9") (; ";")) (declaration "uint uVar10;" (type_identifier "uint") (identifier "uVar10") (; ";")) (declaration "undefined4 uVar11;" (type_identifier "undefined4") (identifier "uVar11") (; ";")) (declaration "char **ppcVar13;" (primitive_type "char") (pointer_declarator "**ppcVar13" (* "*") (pointer_declarator "*ppcVar13" (* "*") (identifier "ppcVar13"))) (; ";")) (declaration "uint *puVar14;" (type_identifier "uint") (pointer_declarator "*puVar14" (* "*") (identifier "puVar14")) (; ";")) (declaration "uint uVar15;" (type_identifier "uint") (identifier "uVar15") (; ";")) (declaration "int iVar16;" (primitive_type "int") (identifier "iVar16") (; ";")) (declaration "char *pcVar17;" (primitive_type "char") (pointer_declarator "*pcVar17" (* "*") (identifier "pcVar17")) (; ";")) (declaration "undefined4 *puVar18;" (type_identifier "undefined4") (pointer_declarator "*puVar18" (* "*") (identifier "puVar18")) (; ";")) (declaration "char *pcVar19;" (primitive_type "char") (pointer_declarator "*pcVar19" (* "*") (identifier "pcVar19")) (; ";")) (declaration "char *pcVar20;" (primitive_type "char") (pointer_declarator "*pcVar20" (* "*") (identifier "pcVar20")) (; ";")) (declaration "uint uVar21;" (type_identifier "uint") (identifier "uVar21") (; ";")) (declaration "undefined *puVar22;" (type_identifier "undefined") (pointer_declarator "*puVar22" (* "*") (identifier "puVar22")) (; ";")) (declaration "char *local_30;" (primitive_type "char") (pointer_declarator "*local_30" (* "*") (identifier "local_30")) (; ";")) (declaration "int local_2c;" (primitive_type "int") (identifier "local_2c") (; ";")) (expression_statement "puVar22 = PTR___stack_chk_guard_000b0c9c;" (assignment_expression "puVar22 = PTR___stack_chk_guard_000b0c9c" (identifier "puVar22") (= "=") (identifier "PTR___stack_chk_guard_000b0c9c")) (; ";")) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_000b0c9c;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_000b0c9c" (identifier "local_2c") (= "=") (pointer_expression "*(int *)PTR___stack_chk_guard_000b0c9c" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_000b0c9c" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_000b0c9c")))) (; ";")) (expression_statement "iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30);" (assignment_expression "iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30)" (identifier "iVar2") (= "=") (call_expression "conf_get_str_strs(param_3,param_4,0,&local_30)" (identifier "conf_get_str_strs") (argument_list "(param_3,param_4,0,&local_30)" (( "(") (identifier "param_3") (, ",") (identifier "param_4") (, ",") (number_literal "0") (, ",") (pointer_expression "&local_30" (& "&") (identifier "local_30")) () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n    iVar16 = 1;\n  }\n  else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar16 = 1;\n  }" ({ "{") (expression_statement "iVar16 = 1;" (assignment_expression "iVar16 = 1" (identifier "iVar16") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }" (else "else") (compound_statement "{\n    iVar16 = 1;\n    do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);\n  }" ({ "{") (expression_statement "iVar16 = 1;" (assignment_expression "iVar16 = 1" (identifier "iVar16") (= "=") (number_literal "1")) (; ";")) (do_statement "do {\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    } while (iVar2 != 0);" (do "do") (compound_statement "{\n      pcVar5 = local_30;\n      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);\n      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);\n      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;\n      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);\n    }" ({ "{") (expression_statement "pcVar5 = local_30;" (assignment_expression "pcVar5 = local_30" (identifier "pcVar5") (= "=") (identifier "local_30")) (; ";")) (expression_statement "iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);" (assignment_expression "iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30)" (identifier "iVar3") (= "=") (call_expression "(*(code *)PTR_strlen_000b0be4)(local_30)" (parenthesized_expression "(*(code *)PTR_strlen_000b0be4)" (( "(") (pointer_expression "*(code *)PTR_strlen_000b0be4" (* "*") (cast_expression "(code *)PTR_strlen_000b0be4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strlen_000b0be4"))) () ")")) (argument_list "(local_30)" (( "(") (identifier "local_30") () ")")))) (; ";")) (expression_statement "iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);" (assignment_expression "iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2)" (identifier "iVar2") (= "=") (call_expression "(*(code *)PTR_strlen_000b0be4)(iVar2)" (parenthesized_expression "(*(code *)PTR_strlen_000b0be4)" (( "(") (pointer_expression "*(code *)PTR_strlen_000b0be4" (* "*") (cast_expression "(code *)PTR_strlen_000b0be4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strlen_000b0be4"))) () ")")) (argument_list "(iVar2)" (( "(") (identifier "iVar2") () ")")))) (; ";")) (expression_statement "iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;" (assignment_expression "iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16" (identifier "iVar16") (= "=") (binary_expression "(iVar3 + iVar2 + 1) * 2 + iVar16" (binary_expression "(iVar3 + iVar2 + 1) * 2" (parenthesized_expression "(iVar3 + iVar2 + 1)" (( "(") (binary_expression "iVar3 + iVar2 + 1" (binary_expression "iVar3 + iVar2" (identifier "iVar3") (+ "+") (identifier "iVar2")) (+ "+") (number_literal "1")) () ")")) (* "*") (number_literal "2")) (+ "+") (identifier "iVar16"))) (; ";")) (expression_statement "iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);" (assignment_expression "iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30)" (identifier "iVar2") (= "=") (call_expression "conf_get_str_strs(param_3,param_4,pcVar5,&local_30)" (identifier "conf_get_str_strs") (argument_list "(param_3,param_4,pcVar5,&local_30)" (( "(") (identifier "param_3") (, ",") (identifier "param_4") (, ",") (identifier "pcVar5") (, ",") (pointer_expression "&local_30" (& "&") (identifier "local_30")) () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (; ";")) (} "}")))) (expression_statement "pcVar4 = (char *)safemalloc(iVar16,1);" (assignment_expression "pcVar4 = (char *)safemalloc(iVar16,1)" (identifier "pcVar4") (= "=") (cast_expression "(char *)safemalloc(iVar16,1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "safemalloc(iVar16,1)" (identifier "safemalloc") (argument_list "(iVar16,1)" (( "(") (identifier "iVar16") (, ",") (number_literal "1") () ")"))))) (; ";")) (expression_statement "ppcVar13 = &local_30;" (assignment_expression "ppcVar13 = &local_30" (identifier "ppcVar13") (= "=") (pointer_expression "&local_30" (& "&") (identifier "local_30"))) (; ";")) (expression_statement "pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30);" (assignment_expression "pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30)" (identifier "pcVar5") (= "=") (cast_expression "(char *)conf_get_str_strs(param_3,param_4,0,&local_30)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "conf_get_str_strs(param_3,param_4,0,&local_30)" (identifier "conf_get_str_strs") (argument_list "(param_3,param_4,0,&local_30)" (( "(") (identifier "param_3") (, ",") (identifier "param_4") (, ",") (number_literal "0") (, ",") (pointer_expression "&local_30" (& "&") (identifier "local_30")) () ")"))))) (; ";")) (expression_statement "puVar1 = PTR_s_Present_000b0188;" (assignment_expression "puVar1 = PTR_s_Present_000b0188" (identifier "puVar1") (= "=") (identifier "PTR_s_Present_000b0188")) (; ";")) (expression_statement "pcVar20 = pcVar4;" (assignment_expression "pcVar20 = pcVar4" (identifier "pcVar20") (= "=") (identifier "pcVar4")) (; ";")) (if_statement "if (pcVar5 == (char *)0x0) {\n    pcVar5 = (char *)0x0;\n  }\n  else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }" (if "if") (parenthesized_expression "(pcVar5 == (char *)0x0)" (( "(") (binary_expression "pcVar5 == (char *)0x0" (identifier "pcVar5") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    pcVar5 = (char *)0x0;\n  }" ({ "{") (expression_statement "pcVar5 = (char *)0x0;" (assignment_expression "pcVar5 = (char *)0x0" (identifier "pcVar5") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }" (else "else") (compound_statement "{\n    puVar6 = PTR_s_Present_000b0188 + 0x2e20;\n    do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);\n  }" ({ "{") (expression_statement "puVar6 = PTR_s_Present_000b0188 + 0x2e20;" (assignment_expression "puVar6 = PTR_s_Present_000b0188 + 0x2e20" (identifier "puVar6") (= "=") (binary_expression "PTR_s_Present_000b0188 + 0x2e20" (identifier "PTR_s_Present_000b0188") (+ "+") (number_literal "0x2e20"))) (; ";")) (do_statement "do {\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    } while (pcVar5 != (char *)0x0);" (do "do") (compound_statement "{\n      if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }\n      pcVar19 = pcVar20;\n      if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }\n      cVar12 = *local_30;\n      pcVar20 = pcVar19;\n      pcVar19 = local_30;\n      while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }\nLAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }\n      if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }\n      ppcVar13 = &local_30;\n      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);\n    }" ({ "{") (if_statement "if ((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }\n      else {\n        pcVar17 = (char *)0x0;\n      }" (if "if") (parenthesized_expression "((param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0))" (( "(") (binary_expression "(param_4 == 0x9b) &&\n         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)" (parenthesized_expression "(param_4 == 0x9b)" (( "(") (binary_expression "param_4 == 0x9b" (identifier "param_4") (== "==") (number_literal "0x9b")) () ")")) (&& "&&") (parenthesized_expression "(iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)" (( "(") (comma_expression "iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0" (assignment_expression "iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6)" (identifier "iVar2") (= "=") (call_expression "(*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6)" (parenthesized_expression "(*(code *)PTR_strcmp_000b0cd8)" (( "(") (pointer_expression "*(code *)PTR_strcmp_000b0cd8" (* "*") (cast_expression "(code *)PTR_strcmp_000b0cd8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strcmp_000b0cd8"))) () ")")) (argument_list "(pcVar5,puVar6)" (( "(") (identifier "pcVar5") (, ",") (identifier "puVar6") () ")")))) (, ",") (comma_expression "pcVar17 = local_30, iVar2 == 0" (assignment_expression "pcVar17 = local_30" (identifier "pcVar17") (= "=") (identifier "local_30")) (, ",") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")))) () ")"))) () ")")) (compound_statement "{\n        local_30 = (char *)dupstr(local_30);\n        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);\n        if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }\n      }" ({ "{") (expression_statement "local_30 = (char *)dupstr(local_30);" (assignment_expression "local_30 = (char *)dupstr(local_30)" (identifier "local_30") (= "=") (cast_expression "(char *)dupstr(local_30)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dupstr(local_30)" (identifier "dupstr") (argument_list "(local_30)" (( "(") (identifier "local_30") () ")"))))) (; ";")) (expression_statement "puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);" (assignment_expression "puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c)" (identifier "puVar8") (= "=") (cast_expression "(undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_strchr_000b0bec)(local_30,0x4c)" (parenthesized_expression "(*(code *)PTR_strchr_000b0bec)" (( "(") (pointer_expression "*(code *)PTR_strchr_000b0bec" (* "*") (cast_expression "(code *)PTR_strchr_000b0bec" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strchr_000b0bec"))) () ")")) (argument_list "(local_30,0x4c)" (( "(") (identifier "local_30") (, ",") (number_literal "0x4c") () ")"))))) (; ";")) (if_statement "if (puVar8 == (undefined1 *)0x0) {\n          pcVar5 = puVar1 + 0x2d54;\n        }\n        else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\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          pcVar5 = puVar1 + 0x2d54;\n        }" ({ "{") (expression_statement "pcVar5 = puVar1 + 0x2d54;" (assignment_expression "pcVar5 = puVar1 + 0x2d54" (identifier "pcVar5") (= "=") (binary_expression "puVar1 + 0x2d54" (identifier "puVar1") (+ "+") (number_literal "0x2d54"))) (; ";")) (} "}")) (else_clause "else {\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }" (else "else") (compound_statement "{\n          pcVar5 = puVar1 + 0x2d54;\n          *puVar8 = 0x44;\n        }" ({ "{") (expression_statement "pcVar5 = puVar1 + 0x2d54;" (assignment_expression "pcVar5 = puVar1 + 0x2d54" (identifier "pcVar5") (= "=") (binary_expression "puVar1 + 0x2d54" (identifier "puVar1") (+ "+") (number_literal "0x2d54"))) (; ";")) (expression_statement "*puVar8 = 0x44;" (assignment_expression "*puVar8 = 0x44" (pointer_expression "*puVar8" (* "*") (identifier "puVar8")) (= "=") (number_literal "0x44")) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n        pcVar17 = (char *)0x0;\n      }" (else "else") (compound_statement "{\n        pcVar17 = (char *)0x0;\n      }" ({ "{") (expression_statement "pcVar17 = (char *)0x0;" (assignment_expression "pcVar17 = (char *)0x0" (identifier "pcVar17") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (expression_statement "pcVar19 = pcVar20;" (assignment_expression "pcVar19 = pcVar20" (identifier "pcVar19") (= "=") (identifier "pcVar20")) (; ";")) (if_statement "if (pcVar4 != pcVar20) {\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }" (if "if") (parenthesized_expression "(pcVar4 != pcVar20)" (( "(") (binary_expression "pcVar4 != pcVar20" (identifier "pcVar4") (!= "!=") (identifier "pcVar20")) () ")")) (compound_statement "{\n        pcVar19 = pcVar20 + 1;\n        *pcVar20 = ',';\n      }" ({ "{") (expression_statement "pcVar19 = pcVar20 + 1;" (assignment_expression "pcVar19 = pcVar20 + 1" (identifier "pcVar19") (= "=") (binary_expression "pcVar20 + 1" (identifier "pcVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*pcVar20 = ',';" (assignment_expression "*pcVar20 = ','" (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) (= "=") (char_literal "','" (' "'") (character ",") (' "'"))) (; ";")) (} "}"))) (expression_statement "cVar12 = *local_30;" (assignment_expression "cVar12 = *local_30" (identifier "cVar12") (= "=") (pointer_expression "*local_30" (* "*") (identifier "local_30"))) (; ";")) (expression_statement "pcVar20 = pcVar19;" (assignment_expression "pcVar20 = pcVar19" (identifier "pcVar20") (= "=") (identifier "pcVar19")) (; ";")) (expression_statement "pcVar19 = local_30;" (assignment_expression "pcVar19 = local_30" (identifier "pcVar19") (= "=") (identifier "local_30")) (; ";")) (while_statement "while (cVar12 != '\0') {\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }" (while "while") (parenthesized_expression "(cVar12 != '\0')" (( "(") (binary_expression "cVar12 != '\0'" (identifier "cVar12") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }\n        cVar12 = *pcVar19;\n        pcVar19 = pcVar19 + 1;\n        *pcVar20 = cVar12;\n        pcVar20 = pcVar20 + 1;\n        cVar12 = *pcVar19;\n      }" ({ "{") (while_statement "while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }" (while "while") (parenthesized_expression "(((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\')))" (( "(") (parenthesized_expression "((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))" (( "(") (binary_expression "(cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\')" (parenthesized_expression "(cVar12 == '=' || (cVar12 == ','))" (( "(") (binary_expression "cVar12 == '=' || (cVar12 == ',')" (binary_expression "cVar12 == '='" (identifier "cVar12") (== "==") (char_literal "'='" (' "'") (character "=") (' "'"))) (|| "||") (parenthesized_expression "(cVar12 == ',')" (( "(") (binary_expression "cVar12 == ','" (identifier "cVar12") (== "==") (char_literal "','" (' "'") (character ",") (' "'"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(cVar12 == '\\')" (( "(") (binary_expression "cVar12 == '\\'" (identifier "cVar12") (== "==") (char_literal "'\\'" (' "'") (escape_sequence "\\") (' "'"))) () ")"))) () ")")) () ")")) (compound_statement "{\n          *pcVar20 = '\\';\n          pcVar7 = pcVar20 + 1;\n          cVar12 = *pcVar19;\n          pcVar19 = pcVar19 + 1;\n          pcVar20 = pcVar20 + 2;\n          *pcVar7 = cVar12;\n          cVar12 = *pcVar19;\n          if (cVar12 == '\0') goto LAB_0002cdf8;\n        }" ({ "{") (expression_statement "*pcVar20 = '\\';" (assignment_expression "*pcVar20 = '\\'" (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) (= "=") (char_literal "'\\'" (' "'") (escape_sequence "\\") (' "'"))) (; ";")) (expression_statement "pcVar7 = pcVar20 + 1;" (assignment_expression "pcVar7 = pcVar20 + 1" (identifier "pcVar7") (= "=") (binary_expression "pcVar20 + 1" (identifier "pcVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" (identifier "cVar12") (= "=") (pointer_expression "*pcVar19" (* "*") (identifier "pcVar19"))) (; ";")) (expression_statement "pcVar19 = pcVar19 + 1;" (assignment_expression "pcVar19 = pcVar19 + 1" (identifier "pcVar19") (= "=") (binary_expression "pcVar19 + 1" (identifier "pcVar19") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar20 = pcVar20 + 2;" (assignment_expression "pcVar20 = pcVar20 + 2" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + 2" (identifier "pcVar20") (+ "+") (number_literal "2"))) (; ";")) (expression_statement "*pcVar7 = cVar12;" (assignment_expression "*pcVar7 = cVar12" (pointer_expression "*pcVar7" (* "*") (identifier "pcVar7")) (= "=") (identifier "cVar12")) (; ";")) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" (identifier "cVar12") (= "=") (pointer_expression "*pcVar19" (* "*") (identifier "pcVar19"))) (; ";")) (if_statement "if (cVar12 == '\0') goto LAB_0002cdf8;" (if "if") (parenthesized_expression "(cVar12 == '\0')" (( "(") (binary_expression "cVar12 == '\0'" (identifier "cVar12") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_0002cdf8;" (goto "goto") (statement_identifier "LAB_0002cdf8") (; ";"))) (} "}"))) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" (identifier "cVar12") (= "=") (pointer_expression "*pcVar19" (* "*") (identifier "pcVar19"))) (; ";")) (expression_statement "pcVar19 = pcVar19 + 1;" (assignment_expression "pcVar19 = pcVar19 + 1" (identifier "pcVar19") (= "=") (binary_expression "pcVar19 + 1" (identifier "pcVar19") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*pcVar20 = cVar12;" (assignment_expression "*pcVar20 = cVar12" (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) (= "=") (identifier "cVar12")) (; ";")) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + 1" (identifier "pcVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" (identifier "cVar12") (= "=") (pointer_expression "*pcVar19" (* "*") (identifier "pcVar19"))) (; ";")) (} "}"))) (labeled_statement "LAB_0002cdf8:\n      if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }" (statement_identifier "LAB_0002cdf8") (: ":") (if_statement "if (param_5 != 0) {\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }" (if "if") (parenthesized_expression "(param_5 != 0)" (( "(") (binary_expression "param_5 != 0" (identifier "param_5") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        *pcVar20 = '=';\n        cVar12 = *pcVar5;\n        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }\n      }" ({ "{") (expression_statement "*pcVar20 = '=';" (assignment_expression "*pcVar20 = '='" (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) (= "=") (char_literal "'='" (' "'") (character "=") (' "'"))) (; ";")) (expression_statement "cVar12 = *pcVar5;" (assignment_expression "cVar12 = *pcVar5" (identifier "cVar12") (= "=") (pointer_expression "*pcVar5" (* "*") (identifier "pcVar5"))) (; ";")) (while_statement "while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }" (while "while") (parenthesized_expression "(pcVar20 = pcVar20 + 1, cVar12 != '\0')" (( "(") (comma_expression "pcVar20 = pcVar20 + 1, cVar12 != '\0'" (assignment_expression "pcVar20 = pcVar20 + 1" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + 1" (identifier "pcVar20") (+ "+") (number_literal "1"))) (, ",") (binary_expression "cVar12 != '\0'" (identifier "cVar12") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) () ")")) (compound_statement "{\n          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }\n          cVar12 = *pcVar5;\n          pcVar5 = pcVar5 + 1;\n          *pcVar20 = cVar12;\n          cVar12 = *pcVar5;\n        }" ({ "{") (if_statement "if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }" (if "if") (parenthesized_expression "(((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\'))" (( "(") (binary_expression "((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')" (parenthesized_expression "((cVar12 == '=') || (cVar12 == ','))" (( "(") (binary_expression "(cVar12 == '=') || (cVar12 == ',')" (parenthesized_expression "(cVar12 == '=')" (( "(") (binary_expression "cVar12 == '='" (identifier "cVar12") (== "==") (char_literal "'='" (' "'") (character "=") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(cVar12 == ',')" (( "(") (binary_expression "cVar12 == ','" (identifier "cVar12") (== "==") (char_literal "','" (' "'") (character ",") (' "'"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(cVar12 == '\\')" (( "(") (binary_expression "cVar12 == '\\'" (identifier "cVar12") (== "==") (char_literal "'\\'" (' "'") (escape_sequence "\\") (' "'"))) () ")"))) () ")")) (compound_statement "{\n            *pcVar20 = '\\';\n            pcVar20 = pcVar20 + 1;\n          }" ({ "{") (expression_statement "*pcVar20 = '\\';" (assignment_expression "*pcVar20 = '\\'" (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) (= "=") (char_literal "'\\'" (' "'") (escape_sequence "\\") (' "'"))) (; ";")) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + 1" (identifier "pcVar20") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "cVar12 = *pcVar5;" (assignment_expression "cVar12 = *pcVar5" (identifier "cVar12") (= "=") (pointer_expression "*pcVar5" (* "*") (identifier "pcVar5"))) (; ";")) (expression_statement "pcVar5 = pcVar5 + 1;" (assignment_expression "pcVar5 = pcVar5 + 1" (identifier "pcVar5") (= "=") (binary_expression "pcVar5 + 1" (identifier "pcVar5") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*pcVar20 = cVar12;" (assignment_expression "*pcVar20 = cVar12" (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) (= "=") (identifier "cVar12")) (; ";")) (expression_statement "cVar12 = *pcVar5;" (assignment_expression "cVar12 = *pcVar5" (identifier "cVar12") (= "=") (pointer_expression "*pcVar5" (* "*") (identifier "pcVar5"))) (; ";")) (} "}"))) (} "}")))) (if_statement "if (pcVar17 != (char *)0x0) {\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }" (if "if") (parenthesized_expression "(pcVar17 != (char *)0x0)" (( "(") (binary_expression "pcVar17 != (char *)0x0" (identifier "pcVar17") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        (*(code *)PTR_free_000b0ca4)(local_30);\n        local_30 = pcVar17;\n      }" ({ "{") (expression_statement "(*(code *)PTR_free_000b0ca4)(local_30);" (call_expression "(*(code *)PTR_free_000b0ca4)(local_30)" (parenthesized_expression "(*(code *)PTR_free_000b0ca4)" (( "(") (pointer_expression "*(code *)PTR_free_000b0ca4" (* "*") (cast_expression "(code *)PTR_free_000b0ca4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_free_000b0ca4"))) () ")")) (argument_list "(local_30)" (( "(") (identifier "local_30") () ")"))) (; ";")) (expression_statement "local_30 = pcVar17;" (assignment_expression "local_30 = pcVar17" (identifier "local_30") (= "=") (identifier "pcVar17")) (; ";")) (} "}"))) (expression_statement "ppcVar13 = &local_30;" (assignment_expression "ppcVar13 = &local_30" (identifier "ppcVar13") (= "=") (pointer_expression "&local_30" (& "&") (identifier "local_30"))) (; ";")) (expression_statement "pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);" (assignment_expression "pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30)" (identifier "pcVar5") (= "=") (cast_expression "(char *)conf_get_str_strs(param_3,param_4,local_30,&local_30)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "conf_get_str_strs(param_3,param_4,local_30,&local_30)" (identifier "conf_get_str_strs") (argument_list "(param_3,param_4,local_30,&local_30)" (( "(") (identifier "param_3") (, ",") (identifier "param_4") (, ",") (identifier "local_30") (, ",") (pointer_expression "&local_30" (& "&") (identifier "local_30")) () ")"))))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pcVar5 != (char *)0x0)" (( "(") (binary_expression "pcVar5 != (char *)0x0" (identifier "pcVar5") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (} "}")))) (expression_statement "puVar1 = PTR_write_setting_s_000b0564;" (assignment_expression "puVar1 = PTR_write_setting_s_000b0564" (identifier "puVar1") (= "=") (identifier "PTR_write_setting_s_000b0564")) (; ";")) (expression_statement "*pcVar20 = '\0';" (assignment_expression "*pcVar20 = '\0'" (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar20 = pcVar4;" (assignment_expression "pcVar20 = pcVar4" (identifier "pcVar20") (= "=") (identifier "pcVar4")) (; ";")) (expression_statement "(*(code *)puVar1)(param_1);" (call_expression "(*(code *)puVar1)(param_1)" (parenthesized_expression "(*(code *)puVar1)" (( "(") (pointer_expression "*(code *)puVar1" (* "*") (cast_expression "(code *)puVar1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1"))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))) (; ";")) (expression_statement "safefree(pcVar4);" (call_expression "safefree(pcVar4)" (identifier "safefree") (argument_list "(pcVar4)" (( "(") (identifier "pcVar4") () ")"))) (; ";")) (if_statement "if (local_2c == *(int *)puVar22) {\n    return;\n  }" (if "if") (parenthesized_expression "(local_2c == *(int *)puVar22)" (( "(") (binary_expression "local_2c == *(int *)puVar22" (identifier "local_2c") (== "==") (pointer_expression "*(int *)puVar22" (* "*") (cast_expression "(int *)puVar22" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar22")))) () ")")) (compound_statement "{\n    return;\n  }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "puVar22 = PTR___stack_chk_fail_000b0c70;" (assignment_expression "puVar22 = PTR___stack_chk_fail_000b0c70" (identifier "puVar22") (= "=") (identifier "PTR___stack_chk_fail_000b0c70")) (; ";")) (expression_statement "(*(code *)PTR___stack_chk_fail_000b0c70)();" (call_expression "(*(code *)PTR___stack_chk_fail_000b0c70)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000b0c70)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_000b0c70" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_000b0c70" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_000b0c70"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" (identifier "uVar21") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar15 = 0;" (assignment_expression "uVar15 = 0" (identifier "uVar15") (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar14 = (uint *)&DAT_0000002c;" (assignment_expression "puVar14 = (uint *)&DAT_0000002c" (identifier "puVar14") (= "=") (cast_expression "(uint *)&DAT_0000002c" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_0000002c" (& "&") (identifier "DAT_0000002c")))) (; ";")) (expression_statement "pcVar17 = (char *)dupstr();" (assignment_expression "pcVar17 = (char *)dupstr()" (identifier "pcVar17") (= "=") (cast_expression "(char *)dupstr()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dupstr()" (identifier "dupstr") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "cVar12 = *pcVar17;" (assignment_expression "cVar12 = *pcVar17" (identifier "cVar12") (= "=") (pointer_expression "*pcVar17" (* "*") (identifier "pcVar17"))) (; ";")) (expression_statement "pcVar4 = pcVar17;" (assignment_expression "pcVar4 = pcVar17" (identifier "pcVar4") (= "=") (identifier "pcVar17")) (; ";")) (do_statement "do {\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  } while( true );" (do "do") (compound_statement "{\n    if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }\n    cVar12 = *pcVar19;\n    pcVar4 = pcVar19;\n  }" ({ "{") (if_statement "if (cVar12 == ',') {\n      pcVar19 = pcVar4 + 1;\n    }\n    else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }" (if "if") (parenthesized_expression "(cVar12 == ',')" (( "(") (binary_expression "cVar12 == ','" (identifier "cVar12") (== "==") (char_literal "','" (' "'") (character ",") (' "'"))) () ")")) (compound_statement "{\n      pcVar19 = pcVar4 + 1;\n    }" ({ "{") (expression_statement "pcVar19 = pcVar4 + 1;" (assignment_expression "pcVar19 = pcVar4 + 1" (identifier "pcVar19") (= "=") (binary_expression "pcVar4 + 1" (identifier "pcVar4") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }" (else "else") (compound_statement "{\n      if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }\n      cVar12 = pcVar4[1];\n      pcVar7 = pcVar4;\n      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }\n      if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }\n    }" ({ "{") (if_statement "if (cVar12 == '\0') {\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }" (if "if") (parenthesized_expression "(cVar12 == '\0')" (( "(") (binary_expression "cVar12 == '\0'" (identifier "cVar12") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        safefree(pcVar17);\n        if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }\n        return;\n      }" ({ "{") (expression_statement "safefree(pcVar17);" (call_expression "safefree(pcVar17)" (identifier "safefree") (argument_list "(pcVar17)" (( "(") (identifier "pcVar17") () ")"))) (; ";")) (if_statement "if ((int)uVar15 < (int)pcVar20) {\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }" (if "if") (parenthesized_expression "((int)uVar15 < (int)pcVar20)" (( "(") (binary_expression "(int)uVar15 < (int)pcVar20" (cast_expression "(int)uVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar15")) (< "<") (cast_expression "(int)pcVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar20"))) () ")")) (compound_statement "{\n          do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);\n        }" ({ "{") (do_statement "do {\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          } while ((int)uVar15 < (int)pcVar4);" (do "do") (compound_statement "{\n            uVar9 = param_2[1];\n            if (0x1f < (int)uVar9) goto LAB_0002d234;\n            pcVar5 = (char *)0x0;\n            puVar14 = param_2 + 1;\n            while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }\n            iVar2 = *(int *)(puVar22 + 0x831ec);\nLAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);\nLAB_0002d28c:\n          }" ({ "{") (expression_statement "uVar9 = param_2[1];" (assignment_expression "uVar9 = param_2[1]" (identifier "uVar9") (= "=") (subscript_expression "param_2[1]" (identifier "param_2") ([ "[") (number_literal "1") (] "]"))) (; ";")) (if_statement "if (0x1f < (int)uVar9) goto LAB_0002d234;" (if "if") (parenthesized_expression "(0x1f < (int)uVar9)" (( "(") (binary_expression "0x1f < (int)uVar9" (number_literal "0x1f") (< "<") (cast_expression "(int)uVar9" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar9"))) () ")")) (goto_statement "goto LAB_0002d234;" (goto "goto") (statement_identifier "LAB_0002d234") (; ";"))) (expression_statement "pcVar5 = (char *)0x0;" (assignment_expression "pcVar5 = (char *)0x0" (identifier "pcVar5") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "puVar14 = param_2 + 1;" (assignment_expression "puVar14 = param_2 + 1" (identifier "puVar14") (= "=") (binary_expression "param_2 + 1" (identifier "param_2") (+ "+") (number_literal "1"))) (; ";")) (while_statement "while( true ) {\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;\n              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;\n              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;\n              uVar9 = 0;\n              if (uVar15 == 0) break;\n              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }\n              if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }\n              while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }\n            }" ({ "{") (if_statement "if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;" (if "if") (parenthesized_expression "((1 << (uVar9 & 0x1f) & uVar21) != 0)" (( "(") (binary_expression "(1 << (uVar9 & 0x1f) & uVar21) != 0" (parenthesized_expression "(1 << (uVar9 & 0x1f) & uVar21)" (( "(") (binary_expression "1 << (uVar9 & 0x1f) & uVar21" (binary_expression "1 << (uVar9 & 0x1f)" (number_literal "1") (<< "<<") (parenthesized_expression "(uVar9 & 0x1f)" (( "(") (binary_expression "uVar9 & 0x1f" (identifier "uVar9") (& "&") (number_literal "0x1f")) () ")"))) (& "&") (identifier "uVar21")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0002d218;" (goto "goto") (statement_identifier "LAB_0002d218") (; ";"))) (if_statement "if (puVar14[1] == 0xffffffff) goto LAB_0002d258;" (if "if") (parenthesized_expression "(puVar14[1] == 0xffffffff)" (( "(") (binary_expression "puVar14[1] == 0xffffffff" (subscript_expression "puVar14[1]" (identifier "puVar14") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "0xffffffff")) () ")")) (goto_statement "goto LAB_0002d258;" (goto "goto") (statement_identifier "LAB_0002d258") (; ";"))) (if_statement "if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;" (if "if") (parenthesized_expression "((1 << (puVar14[1] & 0x1f) & uVar21) == 0)" (( "(") (binary_expression "(1 << (puVar14[1] & 0x1f) & uVar21) == 0" (parenthesized_expression "(1 << (puVar14[1] & 0x1f) & uVar21)" (( "(") (binary_expression "1 << (puVar14[1] & 0x1f) & uVar21" (binary_expression "1 << (puVar14[1] & 0x1f)" (number_literal "1") (<< "<<") (parenthesized_expression "(puVar14[1] & 0x1f)" (( "(") (binary_expression "puVar14[1] & 0x1f" (subscript_expression "puVar14[1]" (identifier "puVar14") ([ "[") (number_literal "1") (] "]")) (& "&") (number_literal "0x1f")) () ")"))) (& "&") (identifier "uVar21")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0002d218;" (goto "goto") (statement_identifier "LAB_0002d218") (; ";"))) (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" (identifier "uVar9") (= "=") (number_literal "0")) (; ";")) (if_statement "if (uVar15 == 0) break;" (if "if") (parenthesized_expression "(uVar15 == 0)" (( "(") (binary_expression "uVar15 == 0" (identifier "uVar15") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (while_statement "while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }" (while "while") (parenthesized_expression "(uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1])" (( "(") (comma_expression "uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]" (assignment_expression "uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9)" (identifier "uVar10") (= "=") (call_expression "conf_get_int_int(ppcVar13,&_gp_1,uVar9)" (identifier "conf_get_int_int") (argument_list "(ppcVar13,&_gp_1,uVar9)" (( "(") (identifier "ppcVar13") (, ",") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1")) (, ",") (identifier "uVar9") () ")")))) (, ",") (binary_expression "uVar10 != puVar14[1]" (identifier "uVar10") (!= "!=") (subscript_expression "puVar14[1]" (identifier "puVar14") ([ "[") (number_literal "1") (] "]")))) () ")")) (compound_statement "{\n                uVar9 = uVar9 + 1;\n                iVar2 = *(int *)(puVar22 + 0x831ec);\n                if (uVar9 == uVar15) goto LAB_0002d26c;\n              }" ({ "{") (expression_statement "uVar9 = uVar9 + 1;" (assignment_expression "uVar9 = uVar9 + 1" (identifier "uVar9") (= "=") (binary_expression "uVar9 + 1" (identifier "uVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar2 = *(int *)(puVar22 + 0x831ec);" (assignment_expression "iVar2 = *(int *)(puVar22 + 0x831ec)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar22 + 0x831ec)" (* "*") (cast_expression "(int *)(puVar22 + 0x831ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar22 + 0x831ec)" (( "(") (binary_expression "puVar22 + 0x831ec" (identifier "puVar22") (+ "+") (number_literal "0x831ec")) () ")"))))) (; ";")) (if_statement "if (uVar9 == uVar15) goto LAB_0002d26c;" (if "if") (parenthesized_expression "(uVar9 == uVar15)" (( "(") (binary_expression "uVar9 == uVar15" (identifier "uVar9") (== "==") (identifier "uVar15")) () ")")) (goto_statement "goto LAB_0002d26c;" (goto "goto") (statement_identifier "LAB_0002d26c") (; ";"))) (} "}"))) (if_statement "if (-1 < (int)puVar14[2]) {\n                uVar9 = uVar9 + 1;\n              }" (if "if") (parenthesized_expression "(-1 < (int)puVar14[2])" (( "(") (binary_expression "-1 < (int)puVar14[2]" (number_literal "-1") (< "<") (cast_expression "(int)puVar14[2]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "puVar14[2]" (identifier "puVar14") ([ "[") (number_literal "2") (] "]")))) () ")")) (compound_statement "{\n                uVar9 = uVar9 + 1;\n              }" ({ "{") (expression_statement "uVar9 = uVar9 + 1;" (assignment_expression "uVar9 = uVar9 + 1" (identifier "uVar9") (= "=") (binary_expression "uVar9 + 1" (identifier "uVar9") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (while_statement "while( true ) {\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n                iVar2 = uVar15 - 1;\n                if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }\n                uVar15 = uVar15 + 1;\n                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);\n                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);\nLAB_0002d218:\n                pcVar5 = pcVar5 + 1;\n                puVar14 = puVar14 + 4;\n                pcVar4 = pcVar20;\n                if (pcVar20 == pcVar5) goto LAB_0002d28c;\n                uVar9 = *puVar14;\n                if ((int)uVar9 < 0x20) break;\nLAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);\nLAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;\n              }" ({ "{") (expression_statement "iVar2 = uVar15 - 1;" (assignment_expression "iVar2 = uVar15 - 1" (identifier "iVar2") (= "=") (binary_expression "uVar15 - 1" (identifier "uVar15") (- "-") (number_literal "1"))) (; ";")) (if_statement "if ((int)uVar9 <= iVar2) {\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }" (if "if") (parenthesized_expression "((int)uVar9 <= iVar2)" (( "(") (binary_expression "(int)uVar9 <= iVar2" (cast_expression "(int)uVar9" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar9")) (<= "<=") (identifier "iVar2")) () ")")) (compound_statement "{\n                  do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);\n                }" ({ "{") (do_statement "do {\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  } while (iVar2 != uVar9 - 1);" (do "do") (compound_statement "{\n                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);\n                    iVar16 = iVar2 + 1;\n                    iVar2 = iVar2 + -1;\n                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);\n                  }" ({ "{") (expression_statement "uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);" (assignment_expression "uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2)" (identifier "uVar11") (= "=") (call_expression "conf_get_int_int(ppcVar13,&_gp_1,iVar2)" (identifier "conf_get_int_int") (argument_list "(ppcVar13,&_gp_1,iVar2)" (( "(") (identifier "ppcVar13") (, ",") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1")) (, ",") (identifier "iVar2") () ")")))) (; ";")) (expression_statement "iVar16 = iVar2 + 1;" (assignment_expression "iVar16 = iVar2 + 1" (identifier "iVar16") (= "=") (binary_expression "iVar2 + 1" (identifier "iVar2") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);" (call_expression "conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11)" (identifier "conf_set_int_int") (argument_list "(ppcVar13,&_gp_1,iVar16,uVar11)" (( "(") (identifier "ppcVar13") (, ",") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1")) (, ",") (identifier "iVar16") (, ",") (identifier "uVar11") () ")"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar2 != uVar9 - 1)" (( "(") (binary_expression "iVar2 != uVar9 - 1" (identifier "iVar2") (!= "!=") (binary_expression "uVar9 - 1" (identifier "uVar9") (- "-") (number_literal "1"))) () ")")) (; ";")) (} "}"))) (expression_statement "uVar15 = uVar15 + 1;" (assignment_expression "uVar15 = uVar15 + 1" (identifier "uVar15") (= "=") (binary_expression "uVar15 + 1" (identifier "uVar15") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);" (call_expression "conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14)" (identifier "conf_set_int_int") (argument_list "(ppcVar13,&_gp_1,uVar9,*puVar14)" (( "(") (identifier "ppcVar13") (, ",") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1")) (, ",") (identifier "uVar9") (, ",") (pointer_expression "*puVar14" (* "*") (identifier "puVar14")) () ")"))) (; ";")) (expression_statement "uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);" (assignment_expression "uVar21 = uVar21 | 1 << (*puVar14 & 0x1f)" (identifier "uVar21") (= "=") (binary_expression "uVar21 | 1 << (*puVar14 & 0x1f)" (identifier "uVar21") (| "|") (binary_expression "1 << (*puVar14 & 0x1f)" (number_literal "1") (<< "<<") (parenthesized_expression "(*puVar14 & 0x1f)" (( "(") (binary_expression "*puVar14 & 0x1f" (pointer_expression "*puVar14" (* "*") (identifier "puVar14")) (& "&") (number_literal "0x1f")) () ")"))))) (; ";")) (labeled_statement "LAB_0002d218:\n                pcVar5 = pcVar5 + 1;" (statement_identifier "LAB_0002d218") (: ":") (expression_statement "pcVar5 = pcVar5 + 1;" (assignment_expression "pcVar5 = pcVar5 + 1" (identifier "pcVar5") (= "=") (binary_expression "pcVar5 + 1" (identifier "pcVar5") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "puVar14 = puVar14 + 4;" (assignment_expression "puVar14 = puVar14 + 4" (identifier "puVar14") (= "=") (binary_expression "puVar14 + 4" (identifier "puVar14") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "pcVar4 = pcVar20;" (assignment_expression "pcVar4 = pcVar20" (identifier "pcVar4") (= "=") (identifier "pcVar20")) (; ";")) (if_statement "if (pcVar20 == pcVar5) goto LAB_0002d28c;" (if "if") (parenthesized_expression "(pcVar20 == pcVar5)" (( "(") (binary_expression "pcVar20 == pcVar5" (identifier "pcVar20") (== "==") (identifier "pcVar5")) () ")")) (goto_statement "goto LAB_0002d28c;" (goto "goto") (statement_identifier "LAB_0002d28c") (; ";"))) (expression_statement "uVar9 = *puVar14;" (assignment_expression "uVar9 = *puVar14" (identifier "uVar9") (= "=") (pointer_expression "*puVar14" (* "*") (identifier "puVar14"))) (; ";")) (if_statement "if ((int)uVar9 < 0x20) break;" (if "if") (parenthesized_expression "((int)uVar9 < 0x20)" (( "(") (binary_expression "(int)uVar9 < 0x20" (cast_expression "(int)uVar9" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar9")) (< "<") (number_literal "0x20")) () ")")) (break_statement "break;" (break "break") (; ";"))) (labeled_statement "LAB_0002d234:\n                (**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);" (statement_identifier "LAB_0002d234") (: ":") (expression_statement "(**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);" (call_expression "(**(code **)(puVar22 + 0x83b24))\n                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84)" (parenthesized_expression "(**(code **)(puVar22 + 0x83b24))" (( "(") (pointer_expression "**(code **)(puVar22 + 0x83b24)" (* "*") (pointer_expression "*(code **)(puVar22 + 0x83b24)" (* "*") (cast_expression "(code **)(puVar22 + 0x83b24)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar22 + 0x83b24)" (( "(") (binary_expression "puVar22 + 0x83b24" (identifier "puVar22") (+ "+") (number_literal "0x83b24")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,\n                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84)" (( "(") (binary_expression "*(int *)(puVar22 + 0x831ec) + -0x1c" (pointer_expression "*(int *)(puVar22 + 0x831ec)" (* "*") (cast_expression "(int *)(puVar22 + 0x831ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar22 + 0x831ec)" (( "(") (binary_expression "puVar22 + 0x831ec" (identifier "puVar22") (+ "+") (number_literal "0x831ec")) () ")")))) (+ "+") (number_literal "-0x1c")) (, ",") (binary_expression "*(int *)(puVar22 + 0x831ec) + -0x3c" (pointer_expression "*(int *)(puVar22 + 0x831ec)" (* "*") (cast_expression "(int *)(puVar22 + 0x831ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar22 + 0x831ec)" (( "(") (binary_expression "puVar22 + 0x831ec" (identifier "puVar22") (+ "+") (number_literal "0x831ec")) () ")")))) (+ "+") (number_literal "-0x3c")) (, ",") (number_literal "0x168") (, ",") (binary_expression "*(int *)(puVar22 + 0x831ec) + 0xf84" (pointer_expression "*(int *)(puVar22 + 0x831ec)" (* "*") (cast_expression "(int *)(puVar22 + 0x831ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar22 + 0x831ec)" (( "(") (binary_expression "puVar22 + 0x831ec" (identifier "puVar22") (+ "+") (number_literal "0x831ec")) () ")")))) (+ "+") (number_literal "0xf84")) () ")"))) (; ";"))) (labeled_statement "LAB_0002d258:\n                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;" (statement_identifier "LAB_0002d258") (: ":") (expression_statement "uVar9 = (int)puVar14[2] >> 0x1f & uVar15;" (assignment_expression "uVar9 = (int)puVar14[2] >> 0x1f & uVar15" (identifier "uVar9") (= "=") (binary_expression "(int)puVar14[2] >> 0x1f & uVar15" (binary_expression "(int)puVar14[2] >> 0x1f" (cast_expression "(int)puVar14[2]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "puVar14[2]" (identifier "puVar14") ([ "[") (number_literal "2") (] "]"))) (>> ">>") (number_literal "0x1f")) (& "&") (identifier "uVar15"))) (; ";"))) (} "}"))) (} "}"))) (expression_statement "iVar2 = *(int *)(puVar22 + 0x831ec);" (assignment_expression "iVar2 = *(int *)(puVar22 + 0x831ec)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar22 + 0x831ec)" (* "*") (cast_expression "(int *)(puVar22 + 0x831ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar22 + 0x831ec)" (( "(") (binary_expression "puVar22 + 0x831ec" (identifier "puVar22") (+ "+") (number_literal "0x831ec")) () ")"))))) (; ";")) (labeled_statement "LAB_0002d26c:\n            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);" (statement_identifier "LAB_0002d26c") (: ":") (expression_statement "pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);" (assignment_expression "pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84)" (identifier "pcVar4") (= "=") (cast_expression "(char *)(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar22 + 0x83b24))\n                                       (*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84)" (parenthesized_expression "(**(code **)(puVar22 + 0x83b24))" (( "(") (pointer_expression "**(code **)(puVar22 + 0x83b24)" (* "*") (pointer_expression "*(code **)(puVar22 + 0x83b24)" (* "*") (cast_expression "(code **)(puVar22 + 0x83b24)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar22 + 0x83b24)" (( "(") (binary_expression "puVar22 + 0x83b24" (identifier "puVar22") (+ "+") (number_literal "0x83b24")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar22 + 0x831ec) + -8,\n                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84)" (( "(") (binary_expression "*(int *)(puVar22 + 0x831ec) + -8" (pointer_expression "*(int *)(puVar22 + 0x831ec)" (* "*") (cast_expression "(int *)(puVar22 + 0x831ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar22 + 0x831ec)" (( "(") (binary_expression "puVar22 + 0x831ec" (identifier "puVar22") (+ "+") (number_literal "0x831ec")) () ")")))) (+ "+") (number_literal "-8")) (, ",") (binary_expression "*(int *)(puVar22 + 0x831ec) + -0x3c" (pointer_expression "*(int *)(puVar22 + 0x831ec)" (* "*") (cast_expression "(int *)(puVar22 + 0x831ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar22 + 0x831ec)" (( "(") (binary_expression "puVar22 + 0x831ec" (identifier "puVar22") (+ "+") (number_literal "0x831ec")) () ")")))) (+ "+") (number_literal "-0x3c")) (, ",") (number_literal "0x17c") (, ",") (binary_expression "iVar2 + 0xf84" (identifier "iVar2") (+ "+") (number_literal "0xf84")) () ")"))))) (; ";"))) (labeled_statement "LAB_0002d28c:" (statement_identifier "LAB_0002d28c") (: ":") (expression_statement "" (; ""))) (} "}")) (while "while") (parenthesized_expression "((int)uVar15 < (int)pcVar4)" (( "(") (binary_expression "(int)uVar15 < (int)pcVar4" (cast_expression "(int)uVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar15")) (< "<") (cast_expression "(int)pcVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar4"))) () ")")) (; ";")) (} "}"))) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "cVar12 = pcVar4[1];" (assignment_expression "cVar12 = pcVar4[1]" (identifier "cVar12") (= "=") (subscript_expression "pcVar4[1]" (identifier "pcVar4") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "pcVar7 = pcVar4;" (assignment_expression "pcVar7 = pcVar4" (identifier "pcVar7") (= "=") (identifier "pcVar4")) (; ";")) (while_statement "while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }" (while "while") (parenthesized_expression "(pcVar19 = pcVar7 + 1, cVar12 != '\0')" (( "(") (comma_expression "pcVar19 = pcVar7 + 1, cVar12 != '\0'" (assignment_expression "pcVar19 = pcVar7 + 1" (identifier "pcVar19") (= "=") (binary_expression "pcVar7 + 1" (identifier "pcVar7") (+ "+") (number_literal "1"))) (, ",") (binary_expression "cVar12 != '\0'" (identifier "cVar12") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) () ")")) (compound_statement "{\n        if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }\n        cVar12 = pcVar7[2];\n        pcVar7 = pcVar19;\n      }" ({ "{") (if_statement "if (cVar12 == ',') {\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }" (if "if") (parenthesized_expression "(cVar12 == ',')" (( "(") (binary_expression "cVar12 == ','" (identifier "cVar12") (== "==") (char_literal "','" (' "'") (character ",") (' "'"))) () ")")) (compound_statement "{\n          *pcVar19 = '\0';\n          pcVar19 = pcVar7 + 2;\n          break;\n        }" ({ "{") (expression_statement "*pcVar19 = '\0';" (assignment_expression "*pcVar19 = '\0'" (pointer_expression "*pcVar19" (* "*") (identifier "pcVar19")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar19 = pcVar7 + 2;" (assignment_expression "pcVar19 = pcVar7 + 2" (identifier "pcVar19") (= "=") (binary_expression "pcVar7 + 2" (identifier "pcVar7") (+ "+") (number_literal "2"))) (; ";")) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "cVar12 = pcVar7[2];" (assignment_expression "cVar12 = pcVar7[2]" (identifier "cVar12") (= "=") (subscript_expression "pcVar7[2]" (identifier "pcVar7") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "pcVar7 = pcVar19;" (assignment_expression "pcVar7 = pcVar19" (identifier "pcVar7") (= "=") (identifier "pcVar19")) (; ";")) (} "}"))) (if_statement "if (0 < (int)pcVar20) {\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }" (if "if") (parenthesized_expression "(0 < (int)pcVar20)" (( "(") (binary_expression "0 < (int)pcVar20" (number_literal "0") (< "<") (cast_expression "(int)pcVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar20"))) () ")")) (compound_statement "{\n        pcVar5 = (char *)0x0;\n        puVar18 = param_2;\n        do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);\n      }" ({ "{") (expression_statement "pcVar5 = (char *)0x0;" (assignment_expression "pcVar5 = (char *)0x0" (identifier "pcVar5") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "puVar18 = param_2;" (assignment_expression "puVar18 = param_2" (identifier "puVar18") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        } while (pcVar20 != pcVar5);" (do "do") (compound_statement "{\n          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);\n          if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }\n          pcVar5 = pcVar5 + 1;\n          puVar18 = puVar18 + 4;\n        }" ({ "{") (expression_statement "iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);" (assignment_expression "iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4)" (parenthesized_expression "(**(code **)(puVar22 + 0x83d3c))" (( "(") (pointer_expression "**(code **)(puVar22 + 0x83d3c)" (* "*") (pointer_expression "*(code **)(puVar22 + 0x83d3c)" (* "*") (cast_expression "(code **)(puVar22 + 0x83d3c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar22 + 0x83d3c)" (( "(") (binary_expression "puVar22 + 0x83d3c" (identifier "puVar22") (+ "+") (number_literal "0x83d3c")) () ")"))))) () ")")) (argument_list "(*puVar18,pcVar4)" (( "(") (pointer_expression "*puVar18" (* "*") (identifier "puVar18")) (, ",") (identifier "pcVar4") () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }\n            break;\n          }" ({ "{") (if_statement "if ((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }" (if "if") (parenthesized_expression "((puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0))" (( "(") (binary_expression "(puVar18[1] != 0xffffffff) &&\n               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)" (parenthesized_expression "(puVar18[1] != 0xffffffff)" (( "(") (binary_expression "puVar18[1] != 0xffffffff" (subscript_expression "puVar18[1]" (identifier "puVar18") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "0xffffffff")) () ")")) (&& "&&") (parenthesized_expression "(uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)" (( "(") (comma_expression "uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0" (assignment_expression "uVar9 = 1 << (puVar18[1] & 0x1f)" (identifier "uVar9") (= "=") (binary_expression "1 << (puVar18[1] & 0x1f)" (number_literal "1") (<< "<<") (parenthesized_expression "(puVar18[1] & 0x1f)" (( "(") (binary_expression "puVar18[1] & 0x1f" (subscript_expression "puVar18[1]" (identifier "puVar18") ([ "[") (number_literal "1") (] "]")) (& "&") (number_literal "0x1f")) () ")")))) (, ",") (binary_expression "(uVar9 & uVar21) == 0" (parenthesized_expression "(uVar9 & uVar21)" (( "(") (binary_expression "uVar9 & uVar21" (identifier "uVar9") (& "&") (identifier "uVar21")) () ")")) (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n              uVar21 = uVar21 | uVar9;\n              conf_set_int_int(ppcVar13,&_gp_1,uVar15);\n              uVar15 = uVar15 + 1;\n            }" ({ "{") (expression_statement "uVar21 = uVar21 | uVar9;" (assignment_expression "uVar21 = uVar21 | uVar9" (identifier "uVar21") (= "=") (binary_expression "uVar21 | uVar9" (identifier "uVar21") (| "|") (identifier "uVar9"))) (; ";")) (expression_statement "conf_set_int_int(ppcVar13,&_gp_1,uVar15);" (call_expression "conf_set_int_int(ppcVar13,&_gp_1,uVar15)" (identifier "conf_set_int_int") (argument_list "(ppcVar13,&_gp_1,uVar15)" (( "(") (identifier "ppcVar13") (, ",") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1")) (, ",") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "uVar15 = uVar15 + 1;" (assignment_expression "uVar15 = uVar15 + 1" (identifier "uVar15") (= "=") (binary_expression "uVar15 + 1" (identifier "uVar15") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "pcVar5 = pcVar5 + 1;" (assignment_expression "pcVar5 = pcVar5 + 1" (identifier "pcVar5") (= "=") (binary_expression "pcVar5 + 1" (identifier "pcVar5") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar18 = puVar18 + 4;" (assignment_expression "puVar18 = puVar18 + 4" (identifier "puVar18") (= "=") (binary_expression "puVar18 + 4" (identifier "puVar18") (+ "+") (number_literal "4"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pcVar20 != pcVar5)" (( "(") (binary_expression "pcVar20 != pcVar5" (identifier "pcVar20") (!= "!=") (identifier "pcVar5")) () ")")) (; ";")) (} "}"))) (} "}")))) (expression_statement "cVar12 = *pcVar19;" (assignment_expression "cVar12 = *pcVar19" (identifier "cVar12") (= "=") (pointer_expression "*pcVar19" (* "*") (identifier "pcVar19"))) (; ";")) (expression_statement "pcVar4 = pcVar19;" (assignment_expression "pcVar4 = pcVar19" (identifier "pcVar4") (= "=") (identifier "pcVar19")) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}")))

void function_1(void *handle,char *outkey,type_1 *conf,int var_9,int var_17)

{
  type_2 *var_12;
  char *var_2;
  int var_3;
  int var_4;
  char *var_13;
  char *var_7;
  type_2 *puVar6;
  char var_14;
  type_3 *var_11;
  size_t var_5;
  char *var_18;
  char *var_15;
  char *var_16;
  char *key;
  type_4 local_2c;
  
  local_2c = *(type_4 *)PTR___stack_chk_guard_000b0c9c;
  var_2 = var_1(conf,var_9,(char *)0x0,&key);
  if (var_2 == (char *)0x0) {
    var_5 = 1;
  }
  else {
    var_5 = 1;
    do {
      var_7 = key;
      var_3 = (*(type_5 *)PTR_strlen_000b0be4)(key);
      var_4 = (*(type_5 *)PTR_strlen_000b0be4)(var_2);
      var_5 = (var_3 + var_4 + 1) * 2 + var_5;
      var_2 = var_1(conf,var_9,var_7,&key);
    } while (var_2 != (char *)0x0);
  }
  var_13 = (char *)var_6(var_5,1);
  var_7 = var_1(conf,var_9,(char *)0x0,&key);
  var_12 = var_8;
  var_2 = var_13;
  if (var_7 != (char *)0x0) {
    puVar6 = var_8 + 0x2e20;
    do {
      if ((var_9 == 0x9b) &&
         (var_3 = (*(type_5 *)PTR_strcmp_000b0cd8)(var_7,puVar6), var_18 = key, var_3 == 0)) {
        key = var_10(key);
        var_11 = (type_3 *)(*(type_5 *)PTR_strchr_000b0bec)(key,0x4c);
        if (var_11 == (type_3 *)0x0) {
          var_7 = var_12 + 0x2d54;
        }
        else {
          var_7 = var_12 + 0x2d54;
          *var_11 = 0x44;
        }
      }
      else {
        var_18 = (char *)0x0;
      }
      var_15 = var_2;
      if (var_13 != var_2) {
        var_15 = var_2 + 1;
        *var_2 = ',';
      }
      var_14 = *key;
      var_2 = var_15;
      var_15 = key;
      while (var_16 = var_2, var_14 != '\0') {
        while (((var_14 != '=' && (var_14 != ',')) && (var_14 != '\\'))) {
          var_14 = *var_15;
          var_15 = var_15 + 1;
          var_2 = var_16 + 1;
          *var_16 = var_14;
          var_14 = *var_15;
          var_16 = var_2;
          if (var_14 == '\0') goto LAB_0002cdf8;
        }
        *var_16 = '\\';
        var_14 = *var_15;
        var_15 = var_15 + 1;
        var_2 = var_16 + 2;
        var_16[1] = var_14;
        var_14 = *var_15;
      }
LAB_0002cdf8:
      if (var_17 != 0) {
        *var_2 = '=';
        var_14 = *var_7;
        while (var_2 = var_2 + 1, var_14 != '\0') {
          if (((var_14 == '=') || (var_14 == ',')) || (var_14 == '\\')) {
            *var_2 = '\\';
            var_2 = var_2 + 1;
          }
          var_14 = *var_7;
          var_7 = var_7 + 1;
          *var_2 = var_14;
          var_14 = *var_7;
        }
      }
      if (var_18 != (char *)0x0) {
        (*(type_5 *)PTR_free_000b0ca4)(key);
        key = var_18;
      }
      var_7 = var_1(conf,var_9,key,&key);
    } while (var_7 != (char *)0x0);
  }
  var_12 = PTR_write_setting_s_000b0564;
  *var_2 = '\0';
  (*(type_5 *)var_12)(handle,outkey,var_13);
                    /* WARNING: Subroutine does not return */
  var_19(var_13);
}


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

void MASKED(undefined4 param_1,undefined4 *param_2,undefined4 param_3,int param_4,int param_5)

{
  undefined *puVar1;
  int iVar2;
  int iVar3;
  char *pcVar4;
  char *pcVar5;
  undefined *puVar6;
  char cVar12;
  char *pcVar7;
  undefined1 *puVar8;
  uint uVar9;
  uint uVar10;
  undefined4 uVar11;
  char **ppcVar13;
  uint *puVar14;
  uint uVar15;
  int iVar16;
  char *pcVar17;
  undefined4 *puVar18;
  char *pcVar19;
  char *pcVar20;
  uint uVar21;
  undefined *puVar22;
  char *local_30;
  int local_2c;
  
  puVar22 = PTR___stack_chk_guard_000b0c9c;
  local_2c = *(int *)PTR___stack_chk_guard_000b0c9c;
  iVar2 = conf_get_str_strs(param_3,param_4,0,&local_30);
  if (iVar2 == 0) {
    iVar16 = 1;
  }
  else {
    iVar16 = 1;
    do {
      pcVar5 = local_30;
      iVar3 = (*(code *)PTR_strlen_000b0be4)(local_30);
      iVar2 = (*(code *)PTR_strlen_000b0be4)(iVar2);
      iVar16 = (iVar3 + iVar2 + 1) * 2 + iVar16;
      iVar2 = conf_get_str_strs(param_3,param_4,pcVar5,&local_30);
    } while (iVar2 != 0);
  }
  pcVar4 = (char *)safemalloc(iVar16,1);
  ppcVar13 = &local_30;
  pcVar5 = (char *)conf_get_str_strs(param_3,param_4,0,&local_30);
  puVar1 = PTR_s_Present_000b0188;
  pcVar20 = pcVar4;
  if (pcVar5 == (char *)0x0) {
    pcVar5 = (char *)0x0;
  }
  else {
    puVar6 = PTR_s_Present_000b0188 + 0x2e20;
    do {
      if ((param_4 == 0x9b) &&
         (iVar2 = (*(code *)PTR_strcmp_000b0cd8)(pcVar5,puVar6), pcVar17 = local_30, iVar2 == 0)) {
        local_30 = (char *)dupstr(local_30);
        puVar8 = (undefined1 *)(*(code *)PTR_strchr_000b0bec)(local_30,0x4c);
        if (puVar8 == (undefined1 *)0x0) {
          pcVar5 = puVar1 + 0x2d54;
        }
        else {
          pcVar5 = puVar1 + 0x2d54;
          *puVar8 = 0x44;
        }
      }
      else {
        pcVar17 = (char *)0x0;
      }
      pcVar19 = pcVar20;
      if (pcVar4 != pcVar20) {
        pcVar19 = pcVar20 + 1;
        *pcVar20 = ',';
      }
      cVar12 = *local_30;
      pcVar20 = pcVar19;
      pcVar19 = local_30;
      while (cVar12 != '\0') {
        while (((cVar12 == '=' || (cVar12 == ',')) || (cVar12 == '\\'))) {
          *pcVar20 = '\\';
          pcVar7 = pcVar20 + 1;
          cVar12 = *pcVar19;
          pcVar19 = pcVar19 + 1;
          pcVar20 = pcVar20 + 2;
          *pcVar7 = cVar12;
          cVar12 = *pcVar19;
          if (cVar12 == '\0') goto LAB_0002cdf8;
        }
        cVar12 = *pcVar19;
        pcVar19 = pcVar19 + 1;
        *pcVar20 = cVar12;
        pcVar20 = pcVar20 + 1;
        cVar12 = *pcVar19;
      }
LAB_0002cdf8:
      if (param_5 != 0) {
        *pcVar20 = '=';
        cVar12 = *pcVar5;
        while (pcVar20 = pcVar20 + 1, cVar12 != '\0') {
          if (((cVar12 == '=') || (cVar12 == ',')) || (cVar12 == '\\')) {
            *pcVar20 = '\\';
            pcVar20 = pcVar20 + 1;
          }
          cVar12 = *pcVar5;
          pcVar5 = pcVar5 + 1;
          *pcVar20 = cVar12;
          cVar12 = *pcVar5;
        }
      }
      if (pcVar17 != (char *)0x0) {
        (*(code *)PTR_free_000b0ca4)(local_30);
        local_30 = pcVar17;
      }
      ppcVar13 = &local_30;
      pcVar5 = (char *)conf_get_str_strs(param_3,param_4,local_30,&local_30);
    } while (pcVar5 != (char *)0x0);
  }
  puVar1 = PTR_write_setting_s_000b0564;
  *pcVar20 = '\0';
  pcVar20 = pcVar4;
  (*(code *)puVar1)(param_1);
  safefree(pcVar4);
  if (local_2c == *(int *)puVar22) {
    return;
  }
  puVar22 = PTR___stack_chk_fail_000b0c70;
  (*(code *)PTR___stack_chk_fail_000b0c70)();
  uVar21 = 0;
  uVar15 = 0;
  puVar14 = (uint *)&DAT_0000002c;
  pcVar17 = (char *)dupstr();
  cVar12 = *pcVar17;
  pcVar4 = pcVar17;
  do {
    if (cVar12 == ',') {
      pcVar19 = pcVar4 + 1;
    }
    else {
      if (cVar12 == '\0') {
        safefree(pcVar17);
        if ((int)uVar15 < (int)pcVar20) {
          do {
            uVar9 = param_2[1];
            if (0x1f < (int)uVar9) goto LAB_0002d234;
            pcVar5 = (char *)0x0;
            puVar14 = param_2 + 1;
            while( true ) {
              if ((1 << (uVar9 & 0x1f) & uVar21) != 0) goto LAB_0002d218;
              if (puVar14[1] == 0xffffffff) goto LAB_0002d258;
              if ((1 << (puVar14[1] & 0x1f) & uVar21) == 0) goto LAB_0002d218;
              uVar9 = 0;
              if (uVar15 == 0) break;
              while (uVar10 = conf_get_int_int(ppcVar13,&_gp_1,uVar9), uVar10 != puVar14[1]) {
                uVar9 = uVar9 + 1;
                iVar2 = *(int *)(puVar22 + 0x831ec);
                if (uVar9 == uVar15) goto LAB_0002d26c;
              }
              if (-1 < (int)puVar14[2]) {
                uVar9 = uVar9 + 1;
              }
              while( true ) {
                iVar2 = uVar15 - 1;
                if ((int)uVar9 <= iVar2) {
                  do {
                    uVar11 = conf_get_int_int(ppcVar13,&_gp_1,iVar2);
                    iVar16 = iVar2 + 1;
                    iVar2 = iVar2 + -1;
                    conf_set_int_int(ppcVar13,&_gp_1,iVar16,uVar11);
                  } while (iVar2 != uVar9 - 1);
                }
                uVar15 = uVar15 + 1;
                conf_set_int_int(ppcVar13,&_gp_1,uVar9,*puVar14);
                uVar21 = uVar21 | 1 << (*puVar14 & 0x1f);
LAB_0002d218:
                pcVar5 = pcVar5 + 1;
                puVar14 = puVar14 + 4;
                pcVar4 = pcVar20;
                if (pcVar20 == pcVar5) goto LAB_0002d28c;
                uVar9 = *puVar14;
                if ((int)uVar9 < 0x20) break;
LAB_0002d234:
                (**(code **)(puVar22 + 0x83b24))
                          (*(int *)(puVar22 + 0x831ec) + -0x1c,*(int *)(puVar22 + 0x831ec) + -0x3c,
                           0x168,*(int *)(puVar22 + 0x831ec) + 0xf84);
LAB_0002d258:
                uVar9 = (int)puVar14[2] >> 0x1f & uVar15;
              }
            }
            iVar2 = *(int *)(puVar22 + 0x831ec);
LAB_0002d26c:
            pcVar4 = (char *)(**(code **)(puVar22 + 0x83b24))
                                       (*(int *)(puVar22 + 0x831ec) + -8,
                                        *(int *)(puVar22 + 0x831ec) + -0x3c,0x17c,iVar2 + 0xf84);
LAB_0002d28c:
          } while ((int)uVar15 < (int)pcVar4);
        }
        return;
      }
      cVar12 = pcVar4[1];
      pcVar7 = pcVar4;
      while (pcVar19 = pcVar7 + 1, cVar12 != '\0') {
        if (cVar12 == ',') {
          *pcVar19 = '\0';
          pcVar19 = pcVar7 + 2;
          break;
        }
        cVar12 = pcVar7[2];
        pcVar7 = pcVar19;
      }
      if (0 < (int)pcVar20) {
        pcVar5 = (char *)0x0;
        puVar18 = param_2;
        do {
          iVar2 = (**(code **)(puVar22 + 0x83d3c))(*puVar18,pcVar4);
          if (iVar2 == 0) {
            if ((puVar18[1] != 0xffffffff) &&
               (uVar9 = 1 << (puVar18[1] & 0x1f), (uVar9 & uVar21) == 0)) {
              uVar21 = uVar21 | uVar9;
              conf_set_int_int(ppcVar13,&_gp_1,uVar15);
              uVar15 = uVar15 + 1;
            }
            break;
          }
          pcVar5 = pcVar5 + 1;
          puVar18 = puVar18 + 4;
        } while (pcVar20 != pcVar5);
      }
    }
    cVar12 = *pcVar19;
    pcVar4 = pcVar19;
  } while( true );
}

