
void do_cmd(int c)

{
  undefined *puVar1;
  undefined *puVar2;
  int iVar3;
  int iVar4;
  undefined4 uVar5;
  char *pcVar6;
  undefined4 *puVar7;
  uint uVar8;
  uint uVar9;
  char *pcVar10;
  char *pcVar11;
  int in_stack_ffffff20;
  char *p;
  char *q;
  char buf [12];
  char buf_1 [128];
  
  puVar2 = PTR___stack_chk_guard_0012b14c;
  puVar1 = PTR_ptr_to_globals_0012a304;
  uVar9 = c + 0xb;
  buf[0] = '\0';
  buf[1] = '\0';
  buf[2] = '\0';
  buf[3] = '\0';
  buf[4] = '\0';
  buf[5] = '\0';
  buf[6] = '\0';
  buf[7] = '\0';
  buf[8] = '\0';
  buf[9] = '\0';
  buf[10] = '\0';
  buf[0xb] = '\0';
  iVar3 = *(int *)PTR___stack_chk_guard_0012b14c;
  show_status_line();
  puVar7 = *(undefined4 **)puVar1;
  if ((uVar9 < 10) && ((1 << (uVar9 & 0x1f) & 0x3f7U) != 0)) {
LAB_000dd3d4:
    if (0x8a < uVar9) {
      buf._0_4_ = CONCAT13((char)c,(int3)buf._0_4_) & 0xff00ffff;
      print_literal(buf_1,buf);
      status_line_bold(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x2948,buf_1);
      FUN_000dea0c();
      return;
    }
                    /* WARNING: Could not emulate address calculation at 0x000dd430 */
                    /* WARNING: Treating indirect jump as call */
    (*(code *)(&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 +
                              uVar9 * 4 + -0x27e0)))();
    return;
  }
  if (*(char *)((int)puVar7 + 0x13) == '\x02') {
    uVar8 = 200;
    if (c == -8) {
      *(undefined1 *)((int)puVar7 + 0x13) = 1;
      undo_queue_commit();
      pcVar10 = (char *)puVar7[1];
      pcVar11 = (char *)*puVar7;
      goto LAB_000dd4e8;
    }
    pcVar10 = (char *)puVar7[2];
    if (*pcVar10 == '\n') {
      *(undefined1 *)((int)puVar7 + 0x13) = 1;
      undo_queue_commit();
      if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;
      goto LAB_000df934;
    }
    uVar9 = c & 0xff;
    uVar8 = uVar9 - 0x30 & 0xff;
    if (c < 1) {
      if (0x1f < uVar9) {
        if (uVar9 != 0x9b) {
          pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);
          puVar7[2] = pcVar10;
          goto LAB_000df9cc;
        }
        goto LAB_000df980;
      }
      goto LAB_000dddf4;
    }
    if (c != 0x1b) {
      pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);
      puVar7[2] = pcVar10;
    }
LAB_000df9cc:
    iVar4 = 2;
  }
  else {
    if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;
    if (c == -8) {
      *(undefined1 *)((int)puVar7 + 0x13) = 2;
      undo_queue_commit();
      pcVar10 = (char *)puVar7[1];
      pcVar11 = (char *)*puVar7;
      uVar8 = 200;
      goto LAB_000dd4e8;
    }
LAB_000df934:
    uVar9 = c & 0xff;
    uVar8 = uVar9 - 0x30 & 0xff;
    if (c < 1) {
      if (uVar9 < 0x20) {
LAB_000dddf4:
        pcVar10 = (char *)puVar7[1];
        pcVar11 = (char *)*puVar7;
        goto LAB_000dd4e8;
      }
      if (uVar9 == 0x9b) {
LAB_000df980:
        pcVar10 = (char *)puVar7[1];
        uVar8 = 0x6b;
        pcVar11 = (char *)*puVar7;
        goto LAB_000dd4e8;
      }
    }
    pcVar10 = (char *)puVar7[2];
    iVar4 = 3;
  }
  pcVar6 = char_insert(pcVar10,(char)c,iVar4);
  pcVar10 = (char *)puVar7[1];
  pcVar11 = (char *)*puVar7;
  puVar7[2] = pcVar6;
LAB_000dd4e8:
  if (pcVar11 == pcVar10) goto LAB_000dd6ac;
  pcVar11 = (char *)puVar7[2];
  do {
    if (pcVar11 != pcVar10) {
      pcVar10 = bound_dot(pcVar11);
      puVar7[2] = pcVar10;
    }
    if (pcVar10 < (char *)puVar7[0x5a]) {
      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);
joined_r0x000dd690:
      if (iVar4 != 0) {
        uVar5 = puVar7[0x58];
        puVar7[0x58] = pcVar10;
        puVar7[0x59] = uVar5;
        pcVar11 = prev_line(pcVar10);
        pcVar11 = prev_line(pcVar11);
        c = (int)(PTR_LAB_0012abe4 + -0x652c);
        puVar7[0x5a] = pcVar11;
        pcVar11 = next_line(pcVar10);
        pcVar11 = next_line(pcVar11);
        puVar7[0x5b] = pcVar11;
      }
    }
    else if ((char *)puVar7[0x5b] < pcVar10) {
      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);
      goto joined_r0x000dd690;
    }
    uVar8 = (uint)(uVar8 < 10);
    if (uVar8 == 0) {
      puVar7[8] = 0;
    }
    if (((*pcVar10 == '\n') && (pcVar11 = begin_line(pcVar10), 0 < (int)pcVar10 - (int)pcVar11)) &&
       (*(char *)((int)puVar7 + 0x13) == '\0')) {
      puVar7[2] = pcVar10 + -1;
    }
    if (iVar3 == *(int *)puVar2) {
      return;
    }
    (*(code *)PTR___stack_chk_fail_0012b0c8)();
LAB_000dd6ac:
    char_insert(pcVar10,'\n',0);
    pcVar11 = (char *)*puVar7;
    pcVar10 = (char *)puVar7[1];
    puVar7[2] = pcVar11;
  } while( true );
}



void FUN_000dd2a8(undefined *param_1)

{
  undefined *puVar1;
  undefined *puVar2;
  int iVar3;
  undefined4 uVar4;
  undefined4 *puVar5;
  uint uVar6;
  uint uVar7;
  undefined *puVar8;
  char *pcVar9;
  char *pcVar10;
  uint local_b8;
  undefined4 local_b4;
  undefined4 local_b0;
  undefined1 auStack_ac [128];
  int local_2c;
  
  puVar2 = PTR___stack_chk_guard_0012b14c;
  puVar1 = PTR_DAT_0012a304;
  puVar8 = param_1 + 0xb;
  local_b8 = 0;
  local_b4 = 0;
  local_b0 = 0;
  local_2c = *(int *)PTR___stack_chk_guard_0012b14c;
  FUN_000db254();
  puVar5 = *(undefined4 **)puVar1;
  if (((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)) {
    if (*(char *)((int)puVar5 + 0x13) == '\x02') {
      uVar6 = 200;
      if (param_1 == (undefined *)0xfffffff8) {
        *(undefined1 *)((int)puVar5 + 0x13) = 1;
        FUN_000d8b3c();
        pcVar9 = (char *)puVar5[1];
        pcVar10 = (char *)*puVar5;
        goto LAB_000dd4e8;
      }
      pcVar9 = (char *)puVar5[2];
      if (*pcVar9 != '\n') {
        uVar7 = (uint)param_1 & 0xff;
        uVar6 = uVar7 - 0x30 & 0xff;
        if ((int)param_1 < 1) {
          if (uVar7 < 0x20) goto LAB_000dddf4;
          if (uVar7 == 0x9b) goto LAB_000df980;
          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);
          puVar5[2] = pcVar9;
        }
        else if (param_1 != (undefined *)0x1b) {
          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);
          puVar5[2] = pcVar9;
        }
        uVar4 = 2;
        goto LAB_000df948;
      }
      *(undefined1 *)((int)puVar5 + 0x13) = 1;
      FUN_000d8b3c();
      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;
    }
    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {
      if (param_1 == (undefined *)0xfffffff8) {
        *(undefined1 *)((int)puVar5 + 0x13) = 2;
        FUN_000d8b3c();
        pcVar9 = (char *)puVar5[1];
        pcVar10 = (char *)*puVar5;
        uVar6 = 200;
        goto LAB_000dd4e8;
      }
LAB_000df934:
      uVar7 = (uint)param_1 & 0xff;
      uVar6 = uVar7 - 0x30 & 0xff;
      if ((int)param_1 < 1) {
        if (uVar7 < 0x20) {
LAB_000dddf4:
          pcVar9 = (char *)puVar5[1];
          pcVar10 = (char *)*puVar5;
          goto LAB_000dd4e8;
        }
        if (uVar7 == 0x9b) {
LAB_000df980:
          pcVar9 = (char *)puVar5[1];
          uVar6 = 0x6b;
          pcVar10 = (char *)*puVar5;
          goto LAB_000dd4e8;
        }
      }
      pcVar9 = (char *)puVar5[2];
      uVar4 = 3;
LAB_000df948:
      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);
      pcVar9 = (char *)puVar5[1];
      pcVar10 = (char *)*puVar5;
      puVar5[2] = uVar4;
      goto LAB_000dd4e8;
    }
  }
  if (puVar8 < (undefined *)0x8b) {
                    /* WARNING: Could not emulate address calculation at 0x000dd430 */
                    /* WARNING: Treating indirect jump as call */
    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();
    return;
  }
  local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff;
  FUN_000d8c6c(auStack_ac,&local_b8);
  FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac);
  pcVar9 = (char *)puVar5[1];
  pcVar10 = (char *)*puVar5;
  uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff;
  puVar5[0x20] = 0x1a;
  *(undefined1 *)((int)puVar5 + 0x5e) = 0;
LAB_000dd4e8:
  if (pcVar10 == pcVar9) goto LAB_000dd6ac;
  pcVar10 = (char *)puVar5[2];
  do {
    if (pcVar10 != pcVar9) {
      pcVar9 = (char *)FUN_000dbd84();
      puVar5[2] = pcVar9;
    }
    if (pcVar9 < (char *)puVar5[0x5a]) {
      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);
joined_r0x000dd690:
      if (iVar3 != 0) {
        uVar4 = puVar5[0x58];
        puVar5[0x58] = pcVar9;
        puVar5[0x59] = uVar4;
        uVar4 = FUN_000d9850(pcVar9);
        uVar4 = FUN_000d9850(uVar4);
        param_1 = PTR_LAB_0012abe4 + -0x652c;
        puVar5[0x5a] = uVar4;
        uVar4 = FUN_000d9ad4(pcVar9);
        uVar4 = FUN_000d9ad4(uVar4);
        puVar5[0x5b] = uVar4;
      }
    }
    else if ((char *)puVar5[0x5b] < pcVar9) {
      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);
      goto joined_r0x000dd690;
    }
    uVar6 = (uint)(uVar6 < 10);
    if (uVar6 == 0) {
      puVar5[8] = 0;
    }
    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&
       (*(char *)((int)puVar5 + 0x13) == '\0')) {
      puVar5[2] = pcVar9 + -1;
    }
    if (local_2c == *(int *)puVar2) {
      return;
    }
    (*(code *)PTR___stack_chk_fail_0012b0c8)();
LAB_000dd6ac:
    FUN_000db844(pcVar9,10,0);
    pcVar10 = (char *)*puVar5;
    pcVar9 = (char *)puVar5[1];
    puVar5[2] = pcVar10;
  } while( true );
}


lui gp,0x5
addiu gp,gp,0x4ea8
addu gp,gp,t9
lw v0,-0x7004(gp)
addiu sp,sp,-0xf0
lw t9,-0x756c(gp)
sw s3,0xd4(sp)
addiu s3,sp,0x38
sw v0,0x24(sp)
addiu t9,t9,-0x4dac
sw s4,0xd8(sp)
sw gp,0x18(sp)
sw s5,0xdc(sp)
addiu s5,a0,0xb
sw s2,0xd0(sp)
or s2,a0,zero
sw s0,0xc8(sp)
sw ra,0xec(sp)
sw s8,0xe8(sp)
sw s7,0xe4(sp)
sw s6,0xe0(sp)
sw s1,0xcc(sp)
sw zero,0x38(sp)
sw zero,0x4(s3)
sw zero,0x8(s3)
lw v0,0x0(v0)
lw s4,-0x7e4c(gp)
sw v0,0xc4(sp)
bal 0x000db254
_nop
sltiu v0,s5,0xa
lw gp,0x18(sp)
beq v0,zero,0x000dd344
_lw s0,0x0(s4)
li v0,0x1
sllv v0,v0,s5
andi v0,v0,0x3f7
bne v0,zero,0x000dd3d4
_sltiu v0,s5,0x8b
lb v0,0x13(s0)
li v1,0x2
bne v0,v1,0x000dd368
_li v1,0x1
li v0,-0x8
bne s2,v0,0x000dd394
_li s1,0xc8
b 0x000ddc80
_lw t9,-0x756c(gp)
bne v0,v1,0x000dd3d0
_li v0,-0x8
bne s2,v0,0x000df934
_andi a1,s2,0xff
lw t9,-0x756c(gp)
li v0,0x2
addiu t9,t9,-0x74c4
bal 0x000d8b3c
_sb v0,0x13(s0)
b 0x000ddf68
_lw gp,0x18(sp)
lw v0,0x8(s0)
li v1,0xa
lbu a0,0x0(v0)
bne a0,v1,0x000df990
_nop
lw s1,-0x756c(gp)
li v0,0x1
addiu s1,s1,-0x74c4
or t9,s1,zero
bal 0x000d8b3c
_sb v0,0x13(s0)
li v0,0x1
lb v1,0x13(s0)
beq v1,v0,0x000df930
_lw gp,0x18(sp)
sltiu v0,s5,0x8b
bne v0,zero,0x000dd428
_lw v0,-0x7fa8(gp)
lw t9,-0x756c(gp)
or a1,s3,zero
addiu s3,sp,0x44
sb zero,0x39(sp)
andi s1,s2,0xff
addiu t9,t9,-0x7394
sb s1,0x38(sp)
bal 0x000d8c6c
_or a0,s3,zero
or a1,s3,zero
lw gp,0x18(sp)
addiu s1,s1,-0x30
lw a0,-0x7fa8(gp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x71d4
bal 0x000d8e2c
_addiu a0,a0,-0x2948
b 0x000dea0c
_lw gp,0x18(sp)
sll s5,s5,0x2
addiu v0,v0,-0x27e0
addu s5,v0,s5
lw v0,0x0(s5)
addu v0,v0,gp
jr v0
_nop
lw s1,-0x756c(gp)
lw s3,-0x756c(gp)
addiu s1,s1,-0x73fc
addiu s3,s3,-0x78b8
lw a0,0x8(s0)
lbu v0,0x0(a0)
addiu v1,v0,-0x61
sltiu v1,v1,0x1a
beq v1,zero,0x000dd620
_li a2,0x1
or t9,s3,zero
bal 0x000d8748
_li a1,0x1
lw a0,0x8(s0)
lbu v0,0x0(a0)
addiu v1,v0,-0x61
sltiu v1,v1,0x1a
beq v1,zero,0x000dd498
_nop
addiu v0,v0,-0x20
andi v0,v0,0xff
sb v0,0x0(a0)
li a2,0x2
lw a0,0x8(s0)
or t9,s3,zero
bal 0x000d8748
_li a1,0x1
or t9,s1,zero
bal 0x000d8c04
_nop
lw v0,0x20(s0)
lw gp,0x18(sp)
addiu v0,v0,-0x1
bgtz v0,0x000dd454
_sw v0,0x20(s0)
li v0,0x1a
lw s7,0x4(s0)
lw s8,0x0(s0)
li s1,0x4e
sw v0,0x80(s0)
sb zero,0x5e(s0)
beq s8,s7,0x000dd6ac
_lw t9,-0x756c(gp)
lw a0,0x8(s0)
beq a0,s7,0x000dd514
_lw t9,-0x756c(gp)
addiu t9,t9,-0x427c
bal 0x000dbd84
_nop
lw gp,0x18(sp)
or s7,v0,zero
sw v0,0x8(s0)
lw v0,0x168(s0)
sltu v0,s7,v0
beq v0,zero,0x000dd674
_lw a0,-0x7570(gp)
andi a1,s2,0xff
lw t9,-0x71fc(gp)
jalr t9
_addiu a0,a0,-0x7fed
beq v0,zero,0x000dd598
_lw gp,0x18(sp)
lw s2,-0x756c(gp)
or a0,s7,zero
lw v0,0x160(s0)
sw s7,0x160(s0)
addiu s2,s2,-0x67b0
or t9,s2,zero
bal 0x000d9850
_sw v0,0x164(s0)
or t9,s2,zero
bal 0x000d9850
_or a0,v0,zero
or a0,s7,zero
lw gp,0x18(sp)
lw s2,-0x756c(gp)
addiu s2,s2,-0x652c
or t9,s2,zero
bal 0x000d9ad4
_sw v0,0x168(s0)
or t9,s2,zero
bal 0x000d9ad4
_or a0,v0,zero
lw gp,0x18(sp)
sw v0,0x16c(s0)
sltiu s1,s1,0xa
bne s1,zero,0x000dd5a8
_nop
sw zero,0x20(s0)
lbu a0,0x0(s7)
li v0,0xa
bne a0,v0,0x000dd5e0
_lw t9,-0x756c(gp)
addiu t9,t9,-0x6828
bal 0x000d97d8
_or a0,s7,zero
subu v0,s7,v0
blez v0,0x000dd5e0
_lw gp,0x18(sp)
lb v0,0x13(s0)
bne v0,zero,0x000dd5e0
_addiu v1,s7,-0x1
sw v1,0x8(s0)
lw v0,0x24(sp)
lw v1,0xc4(sp)
lw v0,0x0(v0)
bne v1,v0,0x000dd6a0
_lw ra,0xec(sp)
lw s8,0xe8(sp)
lw s7,0xe4(sp)
lw s6,0xe0(sp)
lw s5,0xdc(sp)
lw s4,0xd8(sp)
lw s3,0xd4(sp)
lw s2,0xd0(sp)
lw s1,0xcc(sp)
lw s0,0xc8(sp)
jr ra
_addiu sp,sp,0xf0
addiu v0,v0,-0x41
sltiu v0,v0,0x1a
beq v0,zero,0x000dd4b0
_or t9,s3,zero
bal 0x000d8748
_li a1,0x1
lw a0,0x8(s0)
lbu v0,0x0(a0)
addiu v1,v0,-0x41
sltiu v1,v1,0x1a
beq v1,zero,0x000dd498
_li a2,0x2
addiu v0,v0,0x20
andi v0,v0,0xff
sb v0,0x0(a0)
li a1,0x1
or t9,s3,zero
bal 0x000d8748
_lw a0,0x8(s0)
b 0x000dd4b4
_or t9,s1,zero
lw v0,0x16c(s0)
sltu v0,v0,s7
beq v0,zero,0x000dd598
_andi a1,s2,0xff
lw t9,-0x71fc(gp)
jalr t9
_addiu a0,a0,-0x7fed
beq v0,zero,0x000dd598
_lw gp,0x18(sp)
b 0x000dd540
_lw s2,-0x756c(gp)
lw t9,-0x7088(gp)
jalr t9
_nop
or a2,zero,zero
li a1,0xa
addiu t9,t9,-0x47bc
bal 0x000db844
_or a0,s7,zero
lw a0,0x0(s0)
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4f4
_sw a0,0x8(s0)
lw a1,-0x7fc4(gp)
li a2,0x3
lw t9,-0x756c(gp)
lw a0,0x8(s0)
addiu t9,t9,-0x5834
bal 0x000da7cc
_addiu a1,a1,0x4e08
lw gp,0x18(sp)
beq v0,zero,0x000dd724
_sw v0,0x34(sp)
lw t9,-0x756c(gp)
or a0,v0,zero
addiu t9,t9,-0x652c
bal 0x000d9ad4
_li s1,0x4d
lw gp,0x18(sp)
lw s7,0x4(s0)
lw s8,0x0(s0)
b 0x000dd4e8
_sw v0,0x8(s0)
lw s7,0x4(s0)
li s1,0x4d
b 0x000dd4e8
_lw s8,0x0(s0)
lw t9,-0x756c(gp)
li s1,0x4c
lw a1,0x20(s0)
lw a0,0x8(s0)
addiu t9,t9,-0x66e0
bal 0x000d9920
_addiu a1,a1,-0x1
lw gp,0x18(sp)
lw s7,0x4(s0)
lw s8,0x0(s0)
b 0x000dd4e8
_sw v0,0x8(s0)
lw a1,-0x7fc4(gp)
li a2,-0x1
lw t9,-0x756c(gp)
lw a0,0x8(s0)
addiu t9,t9,-0x5834
bal 0x000da7cc
_addiu a1,a1,0x4e08
lw gp,0x18(sp)
beq v0,zero,0x000dd7b4
_sw v0,0x34(sp)
lw t9,-0x756c(gp)
or a0,v0,zero
addiu t9,t9,-0x652c
bal 0x000d9ad4
_li s1,0x4b
lw gp,0x18(sp)
lw s7,0x4(s0)
lw s8,0x0(s0)
b 0x000dd4e8
_sw v0,0x8(s0)
lw s7,0x4(s0)
li s1,0x4b
b 0x000dd4e8
_lw s8,0x0(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x51dc
bal 0x000dae24
_nop
li v1,0x2e
bne v0,v1,0x000dd82c
_lw gp,0x18(sp)
lw s1,0x24(s0)
addiu s1,s1,-0x2
srl s1,s1,0x1
lw t9,-0x756c(gp)
addiu t9,t9,-0x6828
bal 0x000d97d8
_lw a0,0x8(s0)
li a1,-0x1
lw gp,0x18(sp)
or a0,s1,zero
sw v0,0x48(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x6308
bal 0x000d9cf8
_li s1,0x4a
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
li v1,0x2d
bne v0,v1,0x000dd7ec
_or s1,zero,zero
lw s1,0x24(s0)
b 0x000dd7ec
_addiu s1,s1,-0x2
lw s7,0x4(s0)
li s6,0x5f
lw s1,-0x756c(gp)
lw s4,-0x7fa8(gp)
lw s3,0x20(s0)
addiu s5,s7,-0x1
addiu s1,s1,-0x6ca4
addiu s4,s4,-0x2d68
lw s8,0x8(s0)
lbu a1,0x0(s8)
addiu v0,a1,-0x30
sltiu v0,v0,0xa
beq v0,zero,0x000dd884
_ori v0,a1,0x20
b 0x000dd8b4
_li a3,0x5
addiu v0,v0,-0x61
sltiu v0,v0,0x1a
bne v0,zero,0x000dd8b4
_li a3,0x5
beq a1,s6,0x000dd87c
_lw t9,-0x6ff0(gp)
jalr t9
_or a0,s4,zero
lbu v0,0x0(v0)
beq v0,zero,0x000dd8d4
_lw gp,0x18(sp)
li a3,0x4
li a2,0x1
li a1,0x1
or t9,s1,zero
bal 0x000d935c
_or a0,s8,zero
lw gp,0x18(sp)
or s8,v0,zero
sw v0,0x8(s0)
sltu v0,s8,s5
beq v0,zero,0x000dd8e8
_nop
addiu s8,s8,0x1
sw s8,0x8(s0)
lbu v0,0x0(s8)
li a0,0x17
addiu v0,v0,-0x9
andi v0,v0,0xff
bne v0,a0,0x000dd934
_li a3,0x3
li a2,0x1
li a1,0x2
or t9,s1,zero
bal 0x000d935c
_or a0,s8,zero
lw gp,0x18(sp)
sw v0,0x8(s0)
addiu s3,s3,-0x1
bgtz s3,0x000dd864
_sw s3,0x20(s0)
lw s8,0x0(s0)
b 0x000dd4e8
_li s1,0x47
sltiu v0,v0,0x5
beq v0,zero,0x000dd91c
_li a2,0x1
li a1,0x2
or t9,s1,zero
bal 0x000d935c
_or a0,s8,zero
lw gp,0x18(sp)
b 0x000dd91c
_sw v0,0x8(s0)
lw s4,-0x756c(gp)
lw s1,-0x756c(gp)
lw s5,-0x756c(gp)
lw s3,-0x756c(gp)
addiu v0,s4,-0x7644
lw s8,-0x7fa8(gp)
addiu s1,s1,-0x74c4
lw s6,-0x7fa8(gp)
addiu s5,s5,-0x79e0
addiu s3,s3,-0x7274
sw v0,0x28(sp)
or t9,s1,zero
bal 0x000d8b3c
_nop
lw s7,0x9c4(s0)
bne s7,zero,0x000dd9c8
_lw gp,0x18(sp)
lw a0,-0x7fa8(gp)
li s1,0x45
lw t9,-0x756c(gp)
addiu t9,t9,-0x7274
bal 0x000d8d8c
_addiu a0,a0,-0x2890
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lbu v0,0xc(s7)
li a0,0x1
bne v0,a0,0x000ddac0
_nop
lw a3,0x0(s0)
or t9,s5,zero
lw v0,0x4(s7)
lw a1,0x8(s7)
addu s4,a3,v0
bal 0x000d8620
_or a0,s4,zero
addiu a1,s7,0xd
lw gp,0x18(sp)
or a0,s4,zero
lw t9,-0x7000(gp)
jalr t9
_lw a2,0x8(s7)
addiu a2,s8,-0x2874
lw v0,0x4(s7)
addiu a0,s6,-0x2868
lw a3,0x8(s7)
or t9,s3,zero
lw a1,0x14(s0)
bal 0x000d8d8c
_sw v0,0x10(sp)
lbu v0,0xc(s7)
sltiu a0,v0,0x2
beq a0,zero,0x000dda94
_lw gp,0x18(sp)
lw a1,0x4(s7)
or a0,zero,zero
lw v0,0x0(s0)
lw t9,-0x756c(gp)
addu v0,v0,a1
addiu t9,t9,-0x5cd4
bal 0x000da32c
_sw v0,0x8(s0)
or a0,s7,zero
lw gp,0x18(sp)
lw v0,0x0(s7)
lw t9,-0x6fe8(gp)
li s1,0x45
jalr t9
_sw v0,0x9c4(s0)
lw v0,0x14(s0)
lw gp,0x18(sp)
lw s7,0x4(s0)
addiu v0,v0,-0x1
lw s8,0x0(s0)
b 0x000dd4e8
_sw v0,0x14(s0)
sltiu v0,v0,0x4
beq v0,zero,0x000ddae0
_lw t9,-0x6fe8(gp)
lw v0,0x0(s7)
or a0,s7,zero
jalr t9
_sw v0,0x9c4(s0)
lw v0,0x14(s0)
addiu v0,v0,-0x1
b 0x000dd988
_sw v0,0x14(s0)
beq v0,zero,0x000ddaec
_nop
li a0,0x2
beq v0,a0,0x000ddaec
_nop
li a0,0x3
beq v0,a0,0x000dd9d8
_nop
lw v0,0x0(s7)
b 0x000dda68
_or a0,s7,zero
lw a0,0x4(s7)
or a2,zero,zero
lw v0,0x0(s0)
lw a1,0x8(s7)
lw t9,0x28(sp)
addu v0,v0,a0
addiu a1,a1,-0x1
or a0,v0,zero
jalr t9
_addu a1,v0,a1
addiu a0,s6,-0x2868
lw gp,0x18(sp)
lw v0,0x4(s7)
lw a2,-0x7fa8(gp)
b 0x000dda18
_addiu a2,a2,-0x2840
lw t9,-0x756c(gp)
addiu t9,t9,-0x51dc
bal 0x000dae24
_nop
li a0,0x3b
lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x2d58
bal 0x000dd2a8
_sw v0,0x58(s0)
lw v1,0x8(s0)
lw v0,0x58(s0)
lbu v1,0x0(v1)
bne v1,v0,0x000ddb7c
_lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x7460
bal 0x000d8ba0
_nop
lw gp,0x18(sp)
lw s7,0x4(s0)
li s1,0x44
lw s8,0x0(s0)
b 0x000dd4e8
_sw zero,0x58(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x51dc
bal 0x000dae24
_nop
li v1,0xa
lw a0,0x8(s0)
or s3,v0,zero
lbu v0,0x0(a0)
beq v0,v1,0x000ddbf0
_lw gp,0x18(sp)
lw s1,-0x756c(gp)
li a2,0x1
addiu s1,s1,-0x78b8
or t9,s1,zero
bal 0x000d8748
_li a1,0x1
li a2,0x2
lw v1,0x8(s0)
li a1,0x1
or t9,s1,zero
sb s3,0x0(v1)
bal 0x000d8748
_lw a0,0x8(s0)
lw gp,0x18(sp)
li v0,0x1a
lw s7,0x4(s0)
lw s8,0x0(s0)
li s1,0x42
sw v0,0x80(s0)
b 0x000dd4e8
_sb zero,0x5e(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x6828
bal 0x000d97d8
_lw a0,0x8(s0)
li v1,0xa
lw gp,0x18(sp)
sw v0,0x30(sp)
lbu v0,-0x1(v0)
bne v0,v1,0x000deaa4
_lw t9,-0x756c(gp)
addiu t9,t9,-0x673c
bal 0x000d98c4
_nop
lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu s1,s2,-0x30
addiu t9,t9,-0x5eb0
bal 0x000da150
_andi s1,s1,0xff
li a2,0x1
lw gp,0x18(sp)
li a1,0xa
lw t9,-0x756c(gp)
addiu t9,t9,-0x47bc
bal 0x000db844
_lw a0,0x8(s0)
lw gp,0x18(sp)
sw v0,0x8(s0)
lw t9,-0x756c(gp)
li v0,0x1
addiu t9,t9,-0x74c4
bal 0x000d8b3c
_sb v0,0x13(s0)
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lw t9,-0x756c(gp)
li s1,0x3e
lw v0,0x70(s0)
addiu s3,t9,-0x5834
lw v1,0x8(s0)
li a1,0x3f
addiu a0,v1,0x1
sw a0,0x30(sp)
lbu a2,0x0(v0)
bne a2,a1,0x000ddd40
_li a2,0x3
addiu a0,v1,-0x1
sw a0,0x30(sp)
li a2,-0x1
or t9,s3,zero
bal 0x000da7cc
_addiu a1,v0,0x1
lw gp,0x18(sp)
beq v0,zero,0x000dde24
_sw v0,0x34(sp)
sw v0,0x8(s0)
lw v0,0x20(s0)
addiu v0,v0,-0x1
blez v0,0x000dddf4
_sw v0,0x20(s0)
b 0x000ddcb0
_lw v0,0x70(s0)
lw v1,0x8(s0)
li a1,0x3f
lw v0,0x70(s0)
addiu a0,v1,-0x1
sw a0,0x30(sp)
lbu a2,0x0(v0)
bne a2,a1,0x000deaec
_lw t9,-0x756c(gp)
addiu a0,v1,0x1
li s1,0x1e
addiu s3,t9,-0x5834
sw a0,0x30(sp)
li a2,0x3
or t9,s3,zero
bal 0x000da7cc
_addiu a1,v0,0x1
lw gp,0x18(sp)
bne v0,zero,0x000ddcf0
_sw v0,0x34(sp)
lw a1,0x70(s0)
li a2,0x3
lw a0,0x0(s0)
or t9,s3,zero
li s4,0x1
addiu a1,a1,0x1
bal 0x000da7cc
_sw a0,0x30(sp)
lw gp,0x18(sp)
bne v0,zero,0x000dde00
_sw v0,0x34(sp)
lw a1,-0x7fa8(gp)
addiu a1,a1,-0x28e4
lw a0,-0x7fa8(gp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x71d4
bal 0x000d8e2c
_addiu a0,a0,-0xc7c
lw v0,0x20(s0)
lw gp,0x18(sp)
addiu v0,v0,-0x1
bgtz v0,0x000ddd04
_sw v0,0x20(s0)
b 0x000dddf8
_lw s7,0x4(s0)
lw s1,0x8(s0)
lw s5,0x4(s0)
sltu v0,s1,s5
beq v0,zero,0x000df520
_sw s1,0x34(sp)
lbu s3,0x0(s1)
li v0,0xa
bne s3,v0,0x000df4c8
_lw s4,-0x7fa8(gp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x489c
bal 0x000db764
_li s1,0xf5
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
li v1,-0x1
bne s4,v1,0x000dde18
_sw v0,0x8(s0)
lw a1,-0x7fa8(gp)
b 0x000ddd8c
_addiu a1,a1,-0x28d0
lw a1,-0x7fa8(gp)
b 0x000ddd8c
_addiu a1,a1,-0x290c
lw a0,0x4(s0)
li a2,-0x1
lw a1,0x70(s0)
or t9,s3,zero
li s4,-0x1
addiu a0,a0,-0x1
addiu a1,a1,0x1
bal 0x000da7cc
_sw a0,0x30(sp)
lw gp,0x18(sp)
beq v0,zero,0x000ddd84
_sw v0,0x34(sp)
b 0x000dde04
_li v1,-0x1
lw t9,-0x756c(gp)
addiu t9,t9,-0x51dc
bal 0x000dae24
_nop
ori v0,v0,0x20
addiu v1,v0,-0x61
sltiu v1,v1,0x1a
beq v1,zero,0x000ddea4
_lw gp,0x18(sp)
addiu v0,v0,-0x23
lw a0,0x8(s0)
lw s7,0x4(s0)
li s1,0x3d
sll v0,v0,0x2
lw s8,0x0(s0)
addu v0,s0,v0
b 0x000dd4e8
_sw a0,0x0(v0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x489c
bal 0x000db764
_li s1,0x3d
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x51dc
bal 0x000dae24
_nop
li v1,0x67
beq v0,v1,0x000ddf3c
_lw gp,0x18(sp)
bgez v0,0x000ddeec
_sb v1,0x38(sp)
li v0,0x2a
lw t9,-0x756c(gp)
addiu s1,sp,0x44
or a1,s3,zero
sb v0,0x39(sp)
or a0,s1,zero
addiu t9,t9,-0x7394
bal 0x000d8c6c
_sb zero,0x3a(sp)
or a1,s1,zero
lw gp,0x18(sp)
li s1,0x37
lw a0,-0x7fa8(gp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x71d4
bal 0x000d8e2c
_addiu a0,a0,-0x2948
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lw s3,0x20(s0)
bne s3,zero,0x000ddf80
_li v1,0x1
lw v0,0x0(s0)
sw v1,0x20(s0)
sw v0,0x8(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x7d3c
bal 0x000d82c4
_nop
lw gp,0x18(sp)
addiu s1,s2,-0x30
lw s7,0x4(s0)
lw s8,0x0(s0)
b 0x000dd4e8
_andi s1,s1,0xff
lw s3,0x20(s0)
lw v0,0x4(s0)
addiu v0,v0,-0x1
blez s3,0x000ddf54
_sw v0,0x8(s0)
li v1,0x1
beq s3,v1,0x000ddf50
_lw v0,0x0(s0)
lw s1,-0x756c(gp)
li s4,0x1
addiu s1,s1,-0x652c
addiu s3,s3,-0x1
or t9,s1,zero
bal 0x000d9ad4
_or a0,v0,zero
bne s3,s4,0x000ddfa8
_lw gp,0x18(sp)
b 0x000ddf54
_sw v0,0x8(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x51dc
bal 0x000dae24
_nop
lw gp,0x18(sp)
sw v0,0x58(s0)
lw s7,0x4(s0)
li t0,0xa
addiu a3,s7,-0x1
bne v0,zero,0x000de000
_addiu s1,s2,-0x30
lw s8,0x0(s0)
b 0x000dd4e8
_andi s1,s1,0xff
lw a1,0x8(s0)
addiu a0,a1,0x1
sw a0,0x34(sp)
sltu a2,a0,a3
beq a2,zero,0x000de078
_lbu a1,0x1(a1)
beq a1,t0,0x000de088
_nop
beq v0,a1,0x000de048
_nop
addiu a2,a0,0x1
sw a2,0x34(sp)
beq a2,a3,0x000de074
_lbu a1,0x1(a0)
beq a1,t0,0x000de09c
_nop
bne a1,v0,0x000de028
_or a0,a2,zero
sw a0,0x8(s0)
lw a0,0x20(s0)
addiu a0,a0,-0x1
bgtz a0,0x000ddfec
_sw a0,0x20(s0)
lw s0,0x0(s4)
addiu s1,s2,-0x30
andi s1,s1,0xff
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
or a0,a3,zero
bne v0,a1,0x000de04c
_nop
b 0x000de04c
_sw a0,0x8(s0)
li a1,0xa
bne v0,a1,0x000de04c
_nop
b 0x000de04c
_sw a0,0x8(s0)
li a1,0xa
bne v0,a1,0x000de04c
_or a0,a2,zero
b 0x000de04c
_sw a0,0x8(s0)
li v0,0x1
lw s7,0x4(s0)
li a0,-0x1
lw s1,-0x756c(gp)
xori s3,s2,0x62
lw s5,-0x7fa8(gp)
movn a0,v0,s3
xori s6,s2,0x65
addiu s1,s1,-0x6ca4
lw s8,0x0(s0)
addiu s5,s5,-0x2d68
or s3,a0,zero
li a0,0x2
or s4,s3,zero
movz v0,a0,s6
or s6,v0,zero
addiu v0,s7,-0x1
sw v0,0x28(sp)
lw t1,0x8(s0)
addu t1,t1,s3
sltu v0,t1,s8
beq v0,zero,0x000de118
_lw v0,0x28(sp)
addiu s1,s2,-0x30
b 0x000dd4e8
_andi s1,s1,0xff
sltu v0,v0,t1
bne v0,zero,0x000de10c
_li a0,0x17
sw t1,0x8(s0)
lbu a1,0x0(t1)
addiu v0,a1,-0x9
andi v0,v0,0xff
bne v0,a0,0x000de180
_li a3,0x3
or a0,t1,zero
or a1,s6,zero
or t9,s1,zero
bal 0x000d935c
_or a2,s4,zero
lw gp,0x18(sp)
or t1,v0,zero
sw v0,0x8(s0)
lbu a1,0x0(v0)
addiu v0,a1,-0x30
sltiu v0,v0,0xa
beq v0,zero,0x000de194
_ori v0,a1,0x20
li a3,0x5
li a1,0x1
b 0x000de1d4
_or a2,s4,zero
sltiu v0,v0,0x5
beq v0,zero,0x000de160
_or a0,t1,zero
b 0x000de140
_nop
addiu v0,v0,-0x61
sltiu v0,v0,0x1a
bne v0,zero,0x000de170
_li v0,0x5f
beq a1,v0,0x000de170
_lw t9,-0x6ff0(gp)
or a0,s5,zero
jalr t9
_sw t1,0x2c(sp)
lbu v0,0x0(v0)
beq v0,zero,0x000de1e8
_lw gp,0x18(sp)
lw t1,0x2c(sp)
li a3,0x4
li a1,0x1
or a2,s4,zero
or t9,s1,zero
bal 0x000d935c
_or a0,t1,zero
lw gp,0x18(sp)
sw v0,0x8(s0)
lw v0,0x20(s0)
addiu v0,v0,-0x1
bgtz v0,0x000de0f8
_sw v0,0x20(s0)
addiu s1,s2,-0x30
b 0x000dd4e8
_andi s1,s1,0xff
lw t9,-0x756c(gp)
addiu t9,t9,-0x5eb0
bal 0x000da150
_nop
lw gp,0x18(sp)
lw v0,0x8(s0)
addiu s1,s2,-0x30
li v1,0xa
lbu a0,0x0(v0)
beq a0,v1,0x000ddc7c
_andi s1,s1,0xff
addiu v0,v0,0x1
b 0x000ddc7c
_sw v0,0x8(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x65e8
bal 0x000d9a18
_li s1,0x2e
lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x7d3c
bal 0x000d82c4
_nop
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x51dc
bal 0x000dae24
_nop
li v1,0x5a
beq v0,v1,0x000de2ac
_lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x489c
bal 0x000db764
_li s1,0x2a
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lw v0,0x14(s0)
beq v0,zero,0x000de2e0
_li s2,0x5a
lb v0,0x11(s0)
beq v0,zero,0x000de2f4
_lw a0,-0x7fa8(gp)
lw t9,-0x756c(gp)
lw a1,0x44(s0)
addiu t9,t9,-0x71d4
bal 0x000d8e2c
_addiu a0,a0,-0x2998
b 0x000de338
_lw gp,0x18(sp)
lw s7,0x4(s0)
lw s8,0x0(s0)
li s1,0x2a
b 0x000dd4e8
_sb zero,0x12(s0)
lw t9,-0x756c(gp)
lw a2,0x4(s0)
lw a1,0x0(s0)
lw a0,0x44(s0)
addiu t9,t9,-0x6924
bal 0x000d96dc
_addiu a2,a2,-0x1
bgez v0,0x000de34c
_lw gp,0x18(sp)
li v1,-0x1
bne v0,v1,0x000de37c
_lw a0,-0x7fa8(gp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x71d4
bal 0x000d8e2c
_addiu a0,a0,-0x2838
lw gp,0x18(sp)
li s2,0x5a
lw s7,0x4(s0)
li s1,0x2a
b 0x000dd4e8
_lw s8,0x0(s0)
lw s7,0x4(s0)
lw s8,0x0(s0)
subu a0,s7,s8
bne a0,v0,0x000de370
_nop
sb zero,0x12(s0)
li s2,0x5a
b 0x000dd4e8
_li s1,0x2a
li s2,0x5a
b 0x000dd4e8
_li s1,0x2a
lw s7,0x4(s0)
li s2,0x5a
lw s8,0x0(s0)
b 0x000dd4e8
_li s1,0x2a
li v0,0x79
bne s2,v0,0x000de40c
_li v0,0x59
or s4,zero,zero
lw t9,-0x756c(gp)
addiu t9,t9,-0x51dc
bal 0x000dae24
_nop
addiu a1,sp,0x34
lw gp,0x18(sp)
addiu a0,sp,0x30
andi a2,v0,0xff
lw t9,-0x756c(gp)
addiu t9,t9,-0x5ec
bal 0x000dfa14
_or s1,v0,zero
or a1,zero,zero
lw gp,0x18(sp)
or a0,zero,zero
lw t9,-0x756c(gp)
addiu t9,t9,-0x5db4
bal 0x000da24c
_or s5,v0,zero
li v0,0x1b
bne s1,v0,0x000de504
_lw gp,0x18(sp)
lw s7,0x4(s0)
li s2,0x1b
lw s8,0x0(s0)
b 0x000dd4e8
_li s1,0xeb
bne s2,v0,0x000de3a0
_li s4,0x1
lw t9,-0x756c(gp)
li a2,0x79
addiu a1,sp,0x34
addiu a0,sp,0x30
addiu t9,t9,-0x5ec
bal 0x000dfa14
_or s4,zero,zero
or a1,zero,zero
lw gp,0x18(sp)
or a0,zero,zero
or s5,v0,zero
lw t9,-0x756c(gp)
addiu t9,t9,-0x5db4
bal 0x000da24c
_li s1,0x79
lw gp,0x18(sp)
lw a0,-0x7fa8(gp)
or a1,s1,zero
lw t9,-0x71fc(gp)
jalr t9
_addiu a0,a0,-0x2814
beq v0,zero,0x000de6b4
_lw gp,0x18(sp)
lw t9,-0x756c(gp)
or a3,s4,zero
lw a1,0x34(sp)
or a2,s5,zero
addiu t9,t9,-0x4990
bal 0x000db670
_lw a0,0x30(sp)
lw gp,0x18(sp)
beq s5,zero,0x000de5ac
_sw v0,0x8(s0)
li v1,0x63
bne s2,v1,0x000de6d8
_lw t9,-0x756c(gp)
li a2,0x2
li a1,0xa
addiu t9,t9,-0x47bc
bal 0x000db844
_or a0,v0,zero
lw v1,0x4(s0)
lw gp,0x18(sp)
addiu v1,v1,-0x1
beq v0,v1,0x000de4e0
_sw v0,0x8(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x673c
bal 0x000d98c4
_nop
lw gp,0x18(sp)
li v0,0x6765
sb zero,0x6(s3)
li s1,0x33
sh v0,0x4(s3)
lui v0,0x4368
li s2,0x63
addiu v0,v0,0x616e
b 0x000ddc7c
_sw v0,0x38(sp)
lw a0,-0x7fa8(gp)
or a1,s1,zero
lw t9,-0x71fc(gp)
jalr t9
_addiu a0,a0,-0x2828
beq v0,zero,0x000de568
_lw gp,0x18(sp)
li v0,0x63
bne s2,v0,0x000de558
_lw a1,0x34(sp)
li a3,0x20
li a2,0x9
li a0,0xa
or v0,a1,zero
lbu v1,0x0(v0)
bne v1,a3,0x000de75c
_or a1,v0,zero
lw v1,0x0(s0)
sltu v1,v1,v0
bne v1,zero,0x000de774
_addiu v0,v0,-0x1
or a3,s4,zero
lw a0,0x30(sp)
b 0x000de594
_or a2,s5,zero
lw a0,-0x7fa8(gp)
or a1,s1,zero
lw t9,-0x71fc(gp)
jalr t9
_addiu a0,a0,-0x2824
beq v0,zero,0x000de454
_lw gp,0x18(sp)
lw a1,0x34(sp)
or a3,s4,zero
lw a0,0x30(sp)
or a2,s5,zero
lw t9,-0x756c(gp)
addiu t9,t9,-0x4990
bal 0x000db670
_nop
lw gp,0x18(sp)
sw v0,0x8(s0)
li v0,0x63
beq s2,v0,0x000de4e0
_li v0,-0x21
addiu s1,s2,-0x30
li v1,0x64
andi s1,s1,0xff
bne s2,v1,0x000de6f0
_and v0,s2,v0
li v0,0x7465
sb zero,0x6(s3)
sh v0,0x4(s3)
lui v0,0x4465
addiu v0,v0,0x6c65
sw v0,0x38(sp)
lw s4,0x80(s0)
or s6,zero,zero
lw t9,-0x7214(gp)
addiu v0,s4,0x22
sll v0,v0,0x2
addu v0,s0,v0
lw s5,0x0(v0)
or a0,s5,zero
jalr t9
_sw s5,0x30(sp)
addu v0,s5,v0
lw gp,0x18(sp)
sltu v1,v0,s5
bne v1,zero,0x000de648
_sw v0,0x34(sp)
addiu v0,v0,0x1
li a0,0xa
or v1,s5,zero
lbu a1,0x0(v1)
bne a1,a0,0x000de63c
_nop
addiu s6,s6,0x1
addiu v1,v1,0x1
bne v1,v0,0x000de62c
_sw v1,0x30(sp)
sltiu v0,s4,0x1a
bne v0,zero,0x000de70c
_li v1,0x44
li v0,0x55
xori s4,s4,0x1b
movn v0,v1,s4
or s4,v0,zero
lw t9,-0x7214(gp)
jalr t9
_or a0,s5,zero
or a2,s6,zero
lw gp,0x18(sp)
or a3,v0,zero
or a1,s3,zero
sw s4,0x10(sp)
lw a0,-0x7fa8(gp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x7274
bal 0x000d8d8c
_addiu a0,a0,-0x2804
li v0,0x1a
lw gp,0x18(sp)
lw s7,0x4(s0)
lw s8,0x0(s0)
sw v0,0x80(s0)
b 0x000dd4e8
_sb zero,0x5e(s0)
lw t9,-0x756c(gp)
li s1,0xeb
addiu t9,t9,-0x489c
bal 0x000db764
_li s2,0x1b
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
li v0,0x64
beq s2,v0,0x000de718
_li v0,-0x21
addiu s1,s2,-0x30
andi s1,s1,0xff
and v0,s2,v0
li v1,0x59
bne v0,v1,0x000de5e4
_lui v0,0x5961
sb zero,0x4(s3)
addiu v0,v0,0x6e6b
b 0x000de5e4
_sw v0,0x38(sp)
addiu s4,s4,0x61
b 0x000de664
_andi s4,s4,0xff
lw t9,-0x756c(gp)
addiu t9,t9,-0x65e8
bal 0x000d9a18
_li s1,0x34
lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x7d3c
bal 0x000d82c4
_nop
li v0,0x7465
lw gp,0x18(sp)
sh v0,0x4(s3)
lui v0,0x4465
sb zero,0x6(s3)
addiu v0,v0,0x6c65
b 0x000de5e4
_sw v0,0x38(sp)
bne v1,a2,0x000de558
_nop
lw v1,0x0(s0)
sltu v1,v1,v0
beq v1,zero,0x000de558
_addiu v0,v0,-0x1
lbu v1,0x0(v0)
beq v1,a0,0x000de558
_nop
b 0x000de53c
_sw v0,0x34(sp)
lw s3,-0x756c(gp)
xori s1,s2,0x58
sltiu s1,s1,0x1
subu s1,zero,s1
li s5,0xa
li s4,0x58
addiu s3,s3,-0x4990
lw a1,0x8(s0)
addu v0,a1,s1
lbu v0,0x0(v0)
beq v0,s5,0x000de7e0
_nop
bne s2,s4,0x000de7c8
_li a3,0x1
addiu a1,a1,-0x1
sw a1,0x8(s0)
or a2,zero,zero
or t9,s3,zero
bal 0x000db670
_or a0,a1,zero
lw gp,0x18(sp)
sw v0,0x8(s0)
lw v0,0x20(s0)
addiu v0,v0,-0x1
bgtz v0,0x000de7a4
_sw v0,0x20(s0)
li v1,0x1a
sb zero,0x5e(s0)
li v0,0x73
bne s2,v0,0x000de858
_sw v1,0x80(s0)
b 0x000ddc7c
_li s1,0x43
lw s1,-0x756c(gp)
lw s3,-0x756c(gp)
addiu s1,s1,-0x66e0
addiu s3,s3,-0x673c
or t9,s3,zero
bal 0x000d98c4
_nop
or t9,s1,zero
lw a1,0x34(s0)
lw v0,0x38(s0)
lw a0,0x8(s0)
bal 0x000d9920
_addu a1,a1,v0
lw v1,0x20(s0)
lw gp,0x18(sp)
sw v0,0x8(s0)
addiu v0,v1,-0x1
bgtz v0,0x000de81c
_sw v0,0x20(s0)
addiu s1,s2,-0x30
lw s7,0x4(s0)
lw s8,0x0(s0)
b 0x000dd4e8
_andi s1,s1,0xff
lw v0,0x84(s0)
addiu v0,v0,0x22
sll v0,v0,0x2
addu v0,s0,v0
lw v0,0x0(v0)
beq v0,zero,0x000de938
_lw t9,-0x756c(gp)
lw s1,0x8(s0)
addiu t9,t9,-0x6828
bal 0x000d97d8
_or a0,s1,zero
or a0,s1,zero
lw gp,0x18(sp)
or s1,v0,zero
lw t9,-0x756c(gp)
addiu t9,t9,-0x658c
bal 0x000d9a74
_sw v0,0x30(sp)
li a2,0x1
lw gp,0x18(sp)
or a0,s1,zero
or a1,v0,zero
sw v0,0x34(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x7644
bal 0x000d89bc
_li s1,0x25
li a2,0x2
lw v1,0x84(s0)
or a0,v0,zero
lw gp,0x18(sp)
sw v0,0x30(sp)
addiu v1,v1,0x22
sll v1,v1,0x2
lw t9,-0x756c(gp)
addu v1,s0,v1
addiu t9,t9,-0x6de0
bal 0x000d9220
_lw a1,0x0(v1)
lw gp,0x18(sp)
lw v1,0x30(sp)
lw t9,-0x756c(gp)
addu v0,v1,v0
sw v0,0x8(s0)
addiu t9,t9,-0x7d3c
bal 0x000d82c4
_sw v0,0x30(sp)
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lw s7,0x4(s0)
li s1,0x25
b 0x000dd4e8
_lw s8,0x0(s0)
lw a1,0x80(s0)
addiu v0,a1,0x22
sll v0,v0,0x2
addu v0,s0,v0
lw s1,0x0(v0)
bne s1,zero,0x000de9a0
_sw s1,0x30(sp)
sltiu v0,a1,0x1a
bne v0,zero,0x000dea98
_li v1,0x44
li v0,0x55
xori a1,a1,0x1b
movn v0,v1,a1
or a1,v0,zero
lw a0,-0x7fa8(gp)
lw t9,-0x756c(gp)
addiu a0,a0,-0x28a8
addiu t9,t9,-0x71d4
jalr t9
_addiu s1,s2,-0x30
b 0x000ddf6c
_lw gp,0x18(sp)
lw t9,-0x71fc(gp)
li a1,0xa
jalr t9
_or a0,s1,zero
beq v0,zero,0x000de9e0
_lw gp,0x18(sp)
li v0,0x50
bne s2,v0,0x000dea44
_lw t9,-0x756c(gp)
addiu t9,t9,-0x65e8
bal 0x000d9a18
_nop
lw gp,0x18(sp)
lw a0,0x8(s0)
b 0x000de9f0
_lw s1,0x30(sp)
li v0,0x70
beq s2,v0,0x000dea28
_lw t9,-0x756c(gp)
lw a0,0x8(s0)
lw t9,-0x756c(gp)
li a2,0x1
addiu t9,t9,-0x6de0
bal 0x000d9220
_or a1,s1,zero
lw gp,0x18(sp)
addiu s1,s2,-0x30
li v0,0x1a
lw s7,0x4(s0)
lw s8,0x0(s0)
andi s1,s1,0xff
sw v0,0x80(s0)
b 0x000dd4e8
_sb zero,0x5e(s0)
addiu t9,t9,-0x73fc
bal 0x000d8c04
_nop
lw gp,0x18(sp)
lw a0,0x8(s0)
b 0x000de9f0
_lw s1,0x30(sp)
li v0,0x70
bne s2,v0,0x000de9f0
_lw a0,0x8(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x658c
bal 0x000d9a74
_nop
lw a0,0x4(s0)
addiu v1,a0,-0x1
bne v1,v0,0x000dea78
_lw gp,0x18(sp)
b 0x000de9f0
_sw a0,0x8(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x64c8
bal 0x000d9b38
_nop
lw gp,0x18(sp)
lw a0,0x8(s0)
b 0x000de9f0
_lw s1,0x30(sp)
addiu a1,a1,0x61
b 0x000de980
_andi a1,a1,0xff
lw t9,-0x756c(gp)
addiu t9,t9,-0x65e8
bal 0x000d9a18
_li s1,0x1f
li a2,0x1
lw gp,0x18(sp)
li a1,0xa
lw t9,-0x756c(gp)
addiu t9,t9,-0x47bc
bal 0x000db844
_lw a0,0x8(s0)
lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x673c
bal 0x000d98c4
_sw v0,0x8(s0)
b 0x000ddc7c
_lw gp,0x18(sp)
li s1,0x1e
b 0x000ddcd4
_addiu s3,t9,-0x5834
lw s3,0x24(s0)
li s1,0x1d
lw v0,0x48(s0)
lw s8,0x0(s0)
addiu s3,s3,-0x1
lw s7,0x4(s0)
srl s3,s3,0x1
beq s3,zero,0x000dd4e8
_sw v0,0x8(s0)
lw s1,-0x756c(gp)
or s4,zero,zero
addiu s1,s1,-0x652c
or a0,v0,zero
or t9,s1,zero
bal 0x000d9ad4
_addiu s4,s4,0x1
lw gp,0x18(sp)
bne s4,s3,0x000deb28
_sw v0,0x8(s0)
b 0x000dd4e8
_li s1,0x1d
lw t9,-0x756c(gp)
addiu t9,t9,-0x6388
bal 0x000d9c78
_nop
lw a0,0x24(s0)
lw v1,0x20(s0)
lw gp,0x18(sp)
sw v0,0x8(s0)
addiu v0,a0,-0x1
sltu a0,v0,v1
movn v1,v0,a0
addiu v1,v1,-0x1
blez v1,0x000deb98
_sw v1,0x20(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x2d58
bal 0x000dd2a8
_li a0,0x2d
lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x65e8
bal 0x000d9a18
_li s1,0x1c
lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x7d3c
bal 0x000d82c4
_nop
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lw s4,-0x756c(gp)
lw s1,-0x756c(gp)
lw s3,-0x756c(gp)
addiu s4,s4,-0x5eb0
addiu s1,s1,-0x78b8
addiu s3,s3,-0x7644
or t9,s4,zero
bal 0x000da150
_nop
lw v0,0x4(s0)
lw a0,0x8(s0)
addiu v0,v0,-0x1
sltu v0,a0,v0
beq v0,zero,0x000dec7c
_lw gp,0x18(sp)
li a2,0x1
or t9,s1,zero
bal 0x000d8748
_li a1,0x1
li a2,0x2
lw v0,0x8(s0)
li a1,0x1
or t9,s1,zero
li s6,0x20
addiu v1,v0,0x1
li s5,0x9
sw v1,0x8(s0)
li v1,0x20
sb v1,0x0(v0)
lw a0,0x8(s0)
bal 0x000d8748
_addiu a0,a0,-0x1
lw gp,0x18(sp)
lw a1,0x8(s0)
lbu v0,0x0(a1)
bne v0,s6,0x000dec74
_li a2,0x2
or t9,s3,zero
bal 0x000d89bc
_or a0,a1,zero
b 0x000dec50
_lw gp,0x18(sp)
beq v0,s5,0x000dec60
_nop
lw v0,0x20(s0)
addiu v0,v0,-0x1
bgtz v0,0x000debe4
_sw v0,0x20(s0)
li v0,0x1a
lw s7,0x4(s0)
lw s8,0x0(s0)
li s1,0x1a
sw v0,0x80(s0)
b 0x000dd4e8
_sb zero,0x5e(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x65e8
bal 0x000d9a18
_li s1,0x19
lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x7d3c
bal 0x000d82c4
_nop
b 0x000ddc7c
_lw gp,0x18(sp)
lw v1,0x24(s0)
lw v0,0x20(s0)
lw a1,0x48(s0)
addiu v1,v1,-0x1
sltu a0,v1,v0
sw a1,0x8(s0)
movn v0,v1,a0
addiu v0,v0,-0x1
blez v0,0x000ded10
_sw v0,0x20(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x2d58
bal 0x000dd2a8
_li a0,0x2b
lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x7d3c
bal 0x000d82c4
_li s1,0x18
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lw t9,-0x756c(gp)
lw s3,0x8(s0)
addiu t9,t9,-0x658c
bal 0x000d9a74
_or a0,s3,zero
li v1,0xa
or s1,v0,zero
lbu v0,0x0(v0)
bne v0,v1,0x000ded78
_lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x6828
bal 0x000d97d8
_or a0,s1,zero
subu v0,s1,v0
blez v0,0x000ded78
_lw gp,0x18(sp)
addiu s1,s1,-0x1
lw t9,-0x756c(gp)
li a3,0x1
or a2,zero,zero
sw s1,0x8(s0)
or a1,s1,zero
addiu t9,t9,-0x4990
bal 0x000db670
_or a0,s3,zero
li v1,0x43
lw gp,0x18(sp)
bne s2,v1,0x000dedb0
_sw v0,0x8(s0)
b 0x000ddc7c
_li s1,0x13
li v0,0x1a
lw s7,0x4(s0)
lw s8,0x0(s0)
li s1,0x14
sw v0,0x80(s0)
li s2,0x44
b 0x000dd4e8
_sb zero,0x5e(s0)
li v1,0x1
lw s3,-0x756c(gp)
li v0,-0x1
lw s5,0x20(s0)
xori s1,s2,0x42
movn v0,v1,s1
addiu s3,s3,-0x6ca4
li s8,0x57
li s6,0x17
or s1,v0,zero
bne s2,s8,0x000dee5c
_lw a0,0x8(s0)
li a3,0x2
li a1,0x1
or t9,s3,zero
bal 0x000d935c
_or a2,s1,zero
li a3,0x3
li a1,0x2
sw v0,0x8(s0)
or a2,s1,zero
or a0,v0,zero
or t9,s3,zero
bal 0x000d935c
_addiu s5,s5,-0x1
lw gp,0x18(sp)
sw v0,0x8(s0)
bgtz s5,0x000dedf8
_sw s5,0x20(s0)
lw s0,0x0(s4)
addiu s1,s2,-0x30
andi s1,s1,0xff
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
addu v0,a0,s1
lbu v1,0x0(v0)
addiu v1,v1,-0x9
andi v1,v1,0xff
bne v1,s6,0x000deedc
_sltiu v1,v1,0x5
li a3,0x2
li a1,0x1
or t9,s3,zero
bal 0x000d935c
_or a2,s1,zero
li a3,0x3
li a1,0x2
sw v0,0x8(s0)
or a0,v0,zero
or t9,s3,zero
bal 0x000d935c
_or a2,s1,zero
or a0,v0,zero
sw v0,0x8(s0)
li a3,0x1
li a1,0x1
or a2,s1,zero
or t9,s3,zero
bal 0x000d935c
_addiu s5,s5,-0x1
lw gp,0x18(sp)
sw v0,0x8(s0)
bgtz s5,0x000dedf8
_sw s5,0x20(s0)
b 0x000dee48
_lw s0,0x0(s4)
bne v1,zero,0x000dee74
_li a3,0x1
b 0x000deeb4
_li a1,0x1
lw s1,-0x756c(gp)
lw a1,0x8(s0)
addiu s1,s1,-0x646c
or t9,s1,zero
bal 0x000d9b94
_lw a0,0x0(s0)
lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x51dc
bal 0x000dae24
_or s3,v0,zero
addiu a1,sp,0x34
lw gp,0x18(sp)
addiu a0,sp,0x30
lw t9,-0x756c(gp)
addiu t9,t9,-0x5ec
bal 0x000dfa14
_andi a2,v0,0xff
lw a0,0x30(sp)
lw a1,0x34(sp)
sltu v0,a1,a0
beq v0,zero,0x000def54
_lw gp,0x18(sp)
or v0,a0,zero
or a0,a1,zero
or a1,v0,zero
lw t9,-0x756c(gp)
addiu t9,t9,-0x7cd4
bal 0x000d832c
_lw a2,0x80(s0)
lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x6828
bal 0x000d97d8
_lw a0,0x30(sp)
lw gp,0x18(sp)
or s7,v0,zero
lw a0,0x34(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x658c
bal 0x000d9a74
_sw v0,0x30(sp)
or a0,s7,zero
or a1,v0,zero
or t9,s1,zero
bal 0x000d9b94
_sw v0,0x34(sp)
lw gp,0x18(sp)
blez v0,0x000df01c
_or s5,v0,zero
lw s6,-0x756c(gp)
li s8,0x3c
lw s1,-0x756c(gp)
lw s4,-0x756c(gp)
addiu v0,s6,-0x47bc
addiu s1,s1,-0x652c
addiu s4,s4,-0x7644
sw v0,0x28(sp)
bne s2,s8,0x000df064
_li a0,0x9
lbu v0,0x0(s7)
bne v0,a0,0x000df088
_or a2,zero,zero
or a1,s7,zero
or t9,s4,zero
bal 0x000d89bc
_or a0,s7,zero
lw s7,0x30(sp)
or a0,s7,zero
or t9,s1,zero
bal 0x000d9ad4
_addiu s5,s5,-0x1
lw gp,0x18(sp)
or s7,v0,zero
bne s5,zero,0x000defd4
_sw v0,0x30(sp)
slti v1,s3,0x2
bne v1,zero,0x000df04c
_lw v0,0x0(s0)
lw s1,-0x756c(gp)
li s4,0x1
addiu s1,s1,-0x652c
addiu s3,s3,-0x1
or t9,s1,zero
bal 0x000d9ad4
_or a0,v0,zero
bne s3,s4,0x000df034
_lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x7d3c
bal 0x000d82c4
_sw v0,0x8(s0)
b 0x000dea08
_lw gp,0x18(sp)
li v0,0x3e
bne s2,v0,0x000deffc
_lw t9,0x28(sp)
li a2,0x1
li a1,0x9
jalr t9
_or a0,s7,zero
b 0x000deffc
_lw s7,0x30(sp)
li a0,0x20
bne v0,a0,0x000df000
_or a0,s7,zero
lw v0,0x54(s0)
blez v0,0x000df000
_or a3,zero,zero
li s6,0x20
or a2,zero,zero
sw a3,0x2c(sp)
or a1,s7,zero
or t9,s4,zero
bal 0x000d89bc
_or a0,s7,zero
lw s7,0x30(sp)
lbu v0,0x0(s7)
bne v0,s6,0x000deffc
_lw a3,0x2c(sp)
lw v0,0x54(s0)
addiu a3,a3,0x1
slt v0,a3,v0
bne v0,zero,0x000df0a4
_or a0,s7,zero
b 0x000df004
_or t9,s1,zero
b 0x000ddfe0
_lw v0,0x58(s0)
lw a0,-0x7fa8(gp)
li s1,0xa
lw t9,-0x756c(gp)
addiu t9,t9,-0x50fc
bal 0x000daf04
_addiu a0,a0,-0x64a0
lw gp,0x18(sp)
or a0,v0,zero
lw t9,-0x756c(gp)
addiu t9,t9,-0x41e8
bal 0x000dbe18
_sw v0,0x30(sp)
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
li v0,0x30
bne s2,v0,0x000df160
_lw a1,0x20(s0)
bgtz a1,0x000df160
_lw t9,-0x756c(gp)
addiu t9,t9,-0x65e8
bal 0x000d9a18
_or s1,zero,zero
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
sll a0,a1,0x2
lw s7,0x4(s0)
addiu v0,s2,-0x30
lw s8,0x0(s0)
addu a0,a0,a1
andi s1,v0,0xff
or a1,v0,zero
sll v0,a0,0x1
addu v0,v0,a1
b 0x000dd4e8
_sw v0,0x20(s0)
lw t9,-0x756c(gp)
andi s4,s2,0xff
or a0,s3,zero
sb s4,0x38(sp)
sb zero,0x39(sp)
addiu s1,s4,-0x30
addiu t9,t9,-0x50fc
bal 0x000daf04
_andi s1,s1,0xff
lw gp,0x18(sp)
sw v0,0x34(sp)
lbu v1,0x0(v0)
beq v1,zero,0x000dddf4
_nop
lbu v1,0x1(v0)
bne v1,zero,0x000df1ec
_lw v0,0x70(s0)
lbu v1,0x0(v0)
beq v1,zero,0x000ddcac
_lw t9,-0x756c(gp)
sb s4,0x0(v0)
addiu s3,t9,-0x5834
b 0x000ddcb0
_lw v0,0x70(s0)
lw t9,-0x6fe8(gp)
jalr t9
_or a0,v0,zero
lw gp,0x18(sp)
lw t9,-0x7ea8(gp)
jalr t9
_lw a0,0x34(sp)
lw gp,0x18(sp)
sw v0,0x70(s0)
lw t9,-0x756c(gp)
b 0x000ddcb0
_addiu s3,t9,-0x5834
lw v0,0x60(s0)
blez v0,0x000df254
_addu v0,s0,v0
lw t9,-0x7ea8(gp)
addiu a0,s0,0x378
li s1,0xfe
jalr t9
_sb zero,0x378(v0)
lw gp,0x18(sp)
lw s7,0x4(s0)
lw s8,0x0(s0)
sw v0,0x68(s0)
b 0x000dd4e8
_sw v0,0x64(s0)
lw s7,0x4(s0)
li s1,0xfe
b 0x000dd4e8
_lw s8,0x0(s0)
lw s1,-0x756c(gp)
lw s3,-0x756c(gp)
addiu s1,s1,-0x7d3c
addiu s3,s3,-0x673c
or t9,s3,zero
bal 0x000d98c4
_nop
or t9,s1,zero
bal 0x000d82c4
_nop
lw v0,0x20(s0)
lw gp,0x18(sp)
addiu v0,v0,-0x1
bgtz v0,0x000df274
_sw v0,0x20(s0)
lw s7,0x4(s0)
li s1,0xfd
b 0x000dd4e8
_lw s8,0x0(s0)
lw a1,0x58(s0)
li s1,0xfc
lw s8,0x0(s0)
beq a1,zero,0x000dd4e8
_lw s7,0x4(s0)
lw a0,0x20(s0)
li a3,0xa
addiu t2,s8,-0x1
lw v0,0x8(s0)
addiu a2,v0,-0x1
sltu t1,a2,s8
bne t1,zero,0x000df320
_sw a2,0x34(sp)
lbu t1,-0x1(v0)
beq t1,a3,0x000df334
_nop
beq a1,t1,0x000df31c
_nop
addiu v0,v0,-0x2
or a2,v0,zero
beq t2,v0,0x000df320
_sw v0,0x34(sp)
lbu t1,0x0(v0)
beq t1,a3,0x000df334
_nop
bne a1,t1,0x000df2fc
_addiu v0,v0,-0x1
sw a2,0x8(s0)
addiu a0,a0,-0x1
bgtz a0,0x000df2d0
_sw a0,0x20(s0)
b 0x000dd4e8
_li s1,0xfc
bne a1,a3,0x000df320
_nop
b 0x000df320
_sw a2,0x8(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x51dc
bal 0x000dae24
_nop
ori s1,v0,0x20
addiu v0,s1,-0x61
sltiu v0,v0,0x1a
beq v0,zero,0x000df3cc
_lw gp,0x18(sp)
addiu s1,s1,-0x23
lw s8,0x0(s0)
lw s7,0x4(s0)
sll s1,s1,0x2
addu s1,s0,s1
lw v0,0x0(s1)
li s1,0xf7
sltu v1,v0,s8
bne v1,zero,0x000dd4e8
_sw v0,0x34(sp)
sltu a0,v0,s7
beq a0,zero,0x000dd4e8
_lw t9,-0x756c(gp)
addiu t9,t9,-0x65e8
bal 0x000d9a18
_sw v0,0x8(s0)
lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x7d3c
bal 0x000d82c4
_nop
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
li v0,0x27
bne s1,v0,0x000df4ac
_lw t9,-0x756c(gp)
lw s2,0x164(s0)
lw v0,0x0(s0)
sltu v0,s2,v0
bne v0,zero,0x000df470
_lw v1,0x8(s0)
lw v0,0x4(s0)
addiu v0,v0,-0x1
sltu v0,v0,s2
bne v0,zero,0x000df470
_or a0,s2,zero
lw s3,-0x756c(gp)
sw v1,0x164(s0)
addiu s3,s3,-0x67b0
or t9,s3,zero
bal 0x000d9850
_sw s2,0x160(s0)
or t9,s3,zero
bal 0x000d9850
_or a0,v0,zero
or t9,s3,zero
bal 0x000d9850
_or a0,v0,zero
or a0,s2,zero
lw gp,0x18(sp)
lw s3,-0x756c(gp)
addiu s3,s3,-0x652c
or t9,s3,zero
bal 0x000d9ad4
_sw v0,0x168(s0)
or t9,s3,zero
bal 0x000d9ad4
_or a0,v0,zero
or t9,s3,zero
bal 0x000d9ad4
_or a0,v0,zero
or v1,s2,zero
lw gp,0x18(sp)
sw v0,0x16c(s0)
lw t9,-0x756c(gp)
or s2,s1,zero
sw v1,0x8(s0)
addiu t9,t9,-0x65e8
bal 0x000d9a18
_li s1,0xf7
lw gp,0x18(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x7d3c
bal 0x000d82c4
_nop
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
addiu t9,t9,-0x489c
bal 0x000db764
_li s1,0xf7
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
li s6,0xa
addiu s4,s4,-0x2dac
lw t9,-0x71fc(gp)
or a1,s3,zero
jalr t9
_or a0,s4,zero
beq v0,zero,0x000df540
_lw gp,0x18(sp)
lw t9,-0x756c(gp)
or a1,s3,zero
addiu t9,t9,-0x7c4c
bal 0x000d83b4
_or a0,s1,zero
lw gp,0x18(sp)
bne v0,zero,0x000df56c
_sw v0,0x30(sp)
lw t9,-0x756c(gp)
addiu t9,t9,-0x489c
bal 0x000db764
_nop
lw gp,0x18(sp)
lw s1,0x34(sp)
lbu v1,0x0(s1)
li v0,0xa
beq v1,v0,0x000ddde4
_lw t9,-0x756c(gp)
lw s7,0x4(s0)
li s1,0xf5
b 0x000dd4e8
_lw s8,0x0(s0)
addiu s1,s1,0x1
beq s1,s5,0x000df520
_sw s1,0x34(sp)
lbu s3,0x0(s1)
bne s3,s6,0x000df4d0
_lw t9,-0x756c(gp)
addiu t9,t9,-0x489c
bal 0x000db764
_li s1,0xf5
b 0x000dddf4
_lw gp,0x18(sp)
lw s1,0x34(sp)
sw v0,0x8(s0)
li v0,0xa
lbu v1,0x0(s1)
beq v1,v0,0x000ddde4
_lw t9,-0x756c(gp)
b 0x000df534
_lw s7,0x4(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x51dc
bal 0x000dae24
_nop
ori v0,v0,0x20
addiu v0,v0,-0x61
sltiu v1,v0,0x1a
beq v1,zero,0x000df5c4
_lw gp,0x18(sp)
lw s7,0x4(s0)
li s1,0xf2
lw s8,0x0(s0)
b 0x000dd4e8
_sw v0,0x80(s0)
lw t9,-0x756c(gp)
addiu t9,t9,-0x489c
bal 0x000db764
_li s1,0xf2
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lb v0,0x13(s0)
bne v0,zero,0x000df600
_lw t9,-0x756c(gp)
addiu t9,t9,-0x489c
bal 0x000db764
_nop
lw gp,0x18(sp)
lw t9,-0x756c(gp)
li s1,0xeb
addiu t9,t9,-0x74c4
bal 0x000d8b3c
_sb zero,0x13(s0)
li v0,0x1a
lw gp,0x18(sp)
lw s7,0x4(s0)
lw s8,0x0(s0)
sw v0,0x80(s0)
sb zero,0x5e(s0)
b 0x000dd4e8
_sw zero,0x40(s0)
lw t9,-0x756c(gp)
li a1,-0x1
li a0,0x1
addiu t9,t9,-0x6308
bal 0x000d9cf8
_li s1,0xe9
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lw a0,0x24(s0)
li a1,-0x1
lw t9,-0x756c(gp)
li s1,0xe5
addiu a0,a0,-0x2
addiu t9,t9,-0x6308
bal 0x000d9cf8
_srl a0,a0,0x1
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lw s3,-0x756c(gp)
lw s1,-0x756c(gp)
addiu s3,s3,-0x64c8
addiu s1,s1,-0x7d3c
or t9,s3,zero
bal 0x000d9b38
_nop
or t9,s1,zero
bal 0x000d82c4
_nop
lw v0,0x20(s0)
lw gp,0x18(sp)
addiu v0,v0,-0x1
bgtz v0,0x000df69c
_sw v0,0x20(s0)
addiu s1,s2,-0x30
lw s7,0x4(s0)
lw s8,0x0(s0)
b 0x000dd4e8
_andi s1,s1,0xff
lw t9,-0x756c(gp)
addiu t9,t9,-0x4f38
bal 0x000db0c8
_li a0,0x1
b 0x000ddf68
_lw gp,0x18(sp)
lw s7,0x4(s0)
li s1,0xd7
lw s8,0x0(s0)
b 0x000dd4e8
_sw zero,0x40(s0)
lw t9,-0x756c(gp)
li a1,0x1
li a0,0x1
addiu t9,t9,-0x6308
bal 0x000d9cf8
_li s1,0xd5
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lw a0,0x24(s0)
li a1,0x1
lw t9,-0x756c(gp)
li s1,0xd4
addiu a0,a0,-0x2
addiu t9,t9,-0x6308
bal 0x000d9cf8
_srl a0,a0,0x1
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lw s7,0x4(s0)
li s1,0xd0
b 0x000dd4e8
_lw s8,0x0(s0)
lw s3,-0x756c(gp)
lw s1,-0x756c(gp)
addiu s3,s3,-0x64c8
addiu s1,s1,-0x66e0
or t9,s3,zero
bal 0x000d9b38
_nop
or t9,s1,zero
lw a1,0x34(s0)
lw v0,0x38(s0)
lw a0,0x8(s0)
bal 0x000d9920
_addu a1,a1,v0
lw v1,0x20(s0)
lw gp,0x18(sp)
sw v0,0x8(s0)
addiu v0,v1,-0x1
bgtz v0,0x000df780
_sw v0,0x20(s0)
addiu s1,s2,-0x30
lw s7,0x4(s0)
lw s8,0x0(s0)
b 0x000dd4e8
_andi s1,s1,0xff
lw s1,-0x756c(gp)
addiu s1,s1,-0x73fc
or t9,s1,zero
bal 0x000d8c04
_nop
lw v0,0x20(s0)
lw gp,0x18(sp)
addiu v0,v0,-0x1
bgtz v0,0x000df7d8
_sw v0,0x20(s0)
addiu s1,s2,-0x30
lw s7,0x4(s0)
lw s8,0x0(s0)
b 0x000dd4e8
_andi s1,s1,0xff
lw s1,-0x756c(gp)
addiu s1,s1,-0x7460
or t9,s1,zero
bal 0x000d8ba0
_nop
lw v0,0x20(s0)
lw gp,0x18(sp)
addiu v0,v0,-0x1
bgtz v0,0x000df814
_sw v0,0x20(s0)
addiu s1,s2,-0x30
lw s7,0x4(s0)
lw s8,0x0(s0)
b 0x000dd4e8
_andi s1,s1,0xff
lw t9,-0x756c(gp)
addiu t9,t9,-0x65e8
bal 0x000d9a18
_li s1,0xca
lw gp,0x18(sp)
lw s7,0x4(s0)
b 0x000dd4e8
_lw s8,0x0(s0)
lw s3,-0x756c(gp)
lw s1,-0x756c(gp)
addiu s3,s3,-0x658c
addiu s1,s1,-0x64c8
or t9,s3,zero
bal 0x000d9a74
_lw a0,0x8(s0)
lw v1,0x20(s0)
lw gp,0x18(sp)
sw v0,0x8(s0)
addiu v0,v1,-0x1
blez v0,0x000de858
_sw v0,0x20(s0)
or t9,s1,zero
bal 0x000d9b38
_nop
b 0x000df87c
_or t9,s3,zero
addiu s1,s2,-0x30
b 0x000ddc7c
_andi s1,s1,0xff
lw s7,0x4(s0)
lw a1,0x8(s0)
addiu v0,s7,-0x1
sltu v0,a1,v0
beq v0,zero,0x000df900
_lw t9,-0x756c(gp)
li a3,0x1
li a2,0x1
or a0,a1,zero
addiu t9,t9,-0x4990
bal 0x000db670
_li s1,0xc7
lw gp,0x18(sp)
lw s7,0x4(s0)
lw s8,0x0(s0)
b 0x000dd4e8
_sw v0,0x8(s0)
lw s8,0x0(s0)
b 0x000dd4e8
_li s1,0xc7
lw a0,0x24(s0)
li a1,-0x1
lw t9,-0x756c(gp)
addiu a0,a0,-0x2
b 0x000de990
_addiu t9,t9,-0x6308
lw a0,0x24(s0)
b 0x000df914
_li a1,0x1
andi a1,s2,0xff
addiu s1,a1,-0x30
blez s2,0x000df96c
_andi s1,s1,0xff
lw a0,0x8(s0)
li a2,0x3
lw t9,-0x756c(gp)
addiu t9,t9,-0x47bc
bal 0x000db844
_nop
lw gp,0x18(sp)
lw s7,0x4(s0)
lw s8,0x0(s0)
b 0x000dd4e8
_sw v0,0x8(s0)
sltiu v0,a1,0x20
bne v0,zero,0x000dddf4
_li v0,0x9b
bne a1,v0,0x000df940
_nop
lw s7,0x4(s0)
li s1,0x6b
b 0x000dd4e8
_lw s8,0x0(s0)
andi s3,s2,0xff
addiu s1,s3,-0x30
blez s2,0x000df9dc
_andi s1,s1,0xff
li v1,0x1b
beq s2,v1,0x000df9cc
_lw t9,-0x756c(gp)
li a3,0x1
or a2,zero,zero
or a1,v0,zero
addiu t9,t9,-0x4990
bal 0x000db670
_or a0,v0,zero
lw gp,0x18(sp)
sw v0,0x8(s0)
li a2,0x2
or a1,s3,zero
b 0x000df948
_or a0,v0,zero
sltiu v1,s3,0x20
bne v1,zero,0x000dddf4
_li v1,0x9b
beq s3,v1,0x000df980
_lw t9,-0x756c(gp)
li a3,0x1
or a2,zero,zero
or a1,v0,zero
addiu t9,t9,-0x4990
bal 0x000db670
_or a0,v0,zero
lw gp,0x18(sp)
b 0x000df9cc
_sw v0,0x8(s0)
(translation_unit "void FUN_000dd2a8(undefined *param_1)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 *puVar5;\n  uint uVar6;\n  uint uVar7;\n  undefined *puVar8;\n  char *pcVar9;\n  char *pcVar10;\n  uint local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined1 auStack_ac [128];\n  int local_2c;\n  \n  puVar2 = PTR___stack_chk_guard_0012b14c;\n  puVar1 = PTR_DAT_0012a304;\n  puVar8 = param_1 + 0xb;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_2c = *(int *)PTR___stack_chk_guard_0012b14c;\n  FUN_000db254();\n  puVar5 = *(undefined4 **)puVar1;\n  if (((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)) {\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }\n  if (puVar8 < (undefined *)0x8b) {\n                    /* WARNING: Could not emulate address calculation at 0x000dd430 */\n                    /* WARNING: Treating indirect jump as call */\n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }\n  local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff;\n  FUN_000d8c6c(auStack_ac,&local_b8);\n  FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac);\n  pcVar9 = (char *)puVar5[1];\n  pcVar10 = (char *)*puVar5;\n  uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff;\n  puVar5[0x20] = 0x1a;\n  *(undefined1 *)((int)puVar5 + 0x5e) = 0;\nLAB_000dd4e8:\n  if (pcVar10 == pcVar9) goto LAB_000dd6ac;\n  pcVar10 = (char *)puVar5[2];\n  do {\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  } while( true );\n}\n\n" (function_definition "void FUN_000dd2a8(undefined *param_1)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 *puVar5;\n  uint uVar6;\n  uint uVar7;\n  undefined *puVar8;\n  char *pcVar9;\n  char *pcVar10;\n  uint local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined1 auStack_ac [128];\n  int local_2c;\n  \n  puVar2 = PTR___stack_chk_guard_0012b14c;\n  puVar1 = PTR_DAT_0012a304;\n  puVar8 = param_1 + 0xb;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_2c = *(int *)PTR___stack_chk_guard_0012b14c;\n  FUN_000db254();\n  puVar5 = *(undefined4 **)puVar1;\n  if (((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)) {\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }\n  if (puVar8 < (undefined *)0x8b) {\n                    /* WARNING: Could not emulate address calculation at 0x000dd430 */\n                    /* WARNING: Treating indirect jump as call */\n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }\n  local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff;\n  FUN_000d8c6c(auStack_ac,&local_b8);\n  FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac);\n  pcVar9 = (char *)puVar5[1];\n  pcVar10 = (char *)*puVar5;\n  uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff;\n  puVar5[0x20] = 0x1a;\n  *(undefined1 *)((int)puVar5 + 0x5e) = 0;\nLAB_000dd4e8:\n  if (pcVar10 == pcVar9) goto LAB_000dd6ac;\n  pcVar10 = (char *)puVar5[2];\n  do {\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  } while( true );\n}" primitive_type (function_declarator "FUN_000dd2a8(undefined *param_1)" identifier (parameter_list "(undefined *param_1)" ( (parameter_declaration "undefined *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) ))) (compound_statement "{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 *puVar5;\n  uint uVar6;\n  uint uVar7;\n  undefined *puVar8;\n  char *pcVar9;\n  char *pcVar10;\n  uint local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined1 auStack_ac [128];\n  int local_2c;\n  \n  puVar2 = PTR___stack_chk_guard_0012b14c;\n  puVar1 = PTR_DAT_0012a304;\n  puVar8 = param_1 + 0xb;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_2c = *(int *)PTR___stack_chk_guard_0012b14c;\n  FUN_000db254();\n  puVar5 = *(undefined4 **)puVar1;\n  if (((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)) {\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }\n  if (puVar8 < (undefined *)0x8b) {\n                    /* WARNING: Could not emulate address calculation at 0x000dd430 */\n                    /* WARNING: Treating indirect jump as call */\n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }\n  local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff;\n  FUN_000d8c6c(auStack_ac,&local_b8);\n  FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac);\n  pcVar9 = (char *)puVar5[1];\n  pcVar10 = (char *)*puVar5;\n  uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff;\n  puVar5[0x20] = 0x1a;\n  *(undefined1 *)((int)puVar5 + 0x5e) = 0;\nLAB_000dd4e8:\n  if (pcVar10 == pcVar9) goto LAB_000dd6ac;\n  pcVar10 = (char *)puVar5[2];\n  do {\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  } while( true );\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (declaration "undefined4 *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "uint local_b8;" type_identifier identifier ;) (declaration "undefined4 local_b4;" type_identifier identifier ;) (declaration "undefined4 local_b0;" type_identifier identifier ;) (declaration "undefined1 auStack_ac [128];" type_identifier (array_declarator "auStack_ac [128]" identifier [ number_literal ]) ;) (declaration "int local_2c;" primitive_type identifier ;) (expression_statement "puVar2 = PTR___stack_chk_guard_0012b14c;" (assignment_expression "puVar2 = PTR___stack_chk_guard_0012b14c" identifier = identifier) ;) (expression_statement "puVar1 = PTR_DAT_0012a304;" (assignment_expression "puVar1 = PTR_DAT_0012a304" identifier = identifier) ;) (expression_statement "puVar8 = param_1 + 0xb;" (assignment_expression "puVar8 = param_1 + 0xb" identifier = (binary_expression "param_1 + 0xb" identifier + number_literal)) ;) (expression_statement "local_b8 = 0;" (assignment_expression "local_b8 = 0" identifier = number_literal) ;) (expression_statement "local_b4 = 0;" (assignment_expression "local_b4 = 0" identifier = number_literal) ;) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_0012b14c;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_0012b14c" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0012b14c" * (cast_expression "(int *)PTR___stack_chk_guard_0012b14c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "FUN_000db254();" (call_expression "FUN_000db254()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar5 = *(undefined4 **)puVar1;" (assignment_expression "puVar5 = *(undefined4 **)puVar1" identifier = (pointer_expression "*(undefined4 **)puVar1" * (cast_expression "(undefined4 **)puVar1" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (if_statement "if (((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)) {\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }" if (parenthesized_expression "(((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0))" ( (binary_expression "((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)" (parenthesized_expression "((undefined *)0x9 < puVar8)" ( (binary_expression "(undefined *)0x9 < puVar8" (cast_expression "(undefined *)0x9" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < identifier) )) || (parenthesized_expression "((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)" ( (binary_expression "(1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0" (parenthesized_expression "(1 << ((uint)puVar8 & 0x1f) & 0x3f7U)" ( (binary_expression "1 << ((uint)puVar8 & 0x1f) & 0x3f7U" (binary_expression "1 << ((uint)puVar8 & 0x1f)" number_literal << (parenthesized_expression "((uint)puVar8 & 0x1f)" ( (binary_expression "(uint)puVar8 & 0x1f" (cast_expression "(uint)puVar8" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }" { (if_statement "if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }" if (parenthesized_expression "(*(char *)((int)puVar5 + 0x13) == '\x02')" ( (binary_expression "*(char *)((int)puVar5 + 0x13) == '\x02'" (pointer_expression "*(char *)((int)puVar5 + 0x13)" * (cast_expression "(char *)((int)puVar5 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }" { (expression_statement "uVar6 = 200;" (assignment_expression "uVar6 = 200" identifier = number_literal) ;) (if_statement "if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }" if (parenthesized_expression "(param_1 == (undefined *)0xfffffff8)" ( (binary_expression "param_1 == (undefined *)0xfffffff8" identifier == (cast_expression "(undefined *)0xfffffff8" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }" { (expression_statement "*(undefined1 *)((int)puVar5 + 0x13) = 1;" (assignment_expression "*(undefined1 *)((int)puVar5 + 0x13) = 1" (pointer_expression "*(undefined1 *)((int)puVar5 + 0x13)" * (cast_expression "(undefined1 *)((int)puVar5 + 0x13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000d8b3c();" (call_expression "FUN_000d8b3c()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })) (expression_statement "pcVar9 = (char *)puVar5[2];" (assignment_expression "pcVar9 = (char *)puVar5[2]" identifier = (cast_expression "(char *)puVar5[2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[2]" identifier [ number_literal ]))) ;) (if_statement "if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }" if (parenthesized_expression "(*pcVar9 != '\n')" ( (binary_expression "*pcVar9 != '\n'" (pointer_expression "*pcVar9" * identifier) != (char_literal "'\n'" ' escape_sequence ')) )) (compound_statement "{\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }" { (expression_statement "uVar7 = (uint)param_1 & 0xff;" (assignment_expression "uVar7 = (uint)param_1 & 0xff" identifier = (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "uVar6 = uVar7 - 0x30 & 0xff;" (assignment_expression "uVar6 = uVar7 - 0x30 & 0xff" identifier = (binary_expression "uVar7 - 0x30 & 0xff" (binary_expression "uVar7 - 0x30" identifier - number_literal) & number_literal)) ;) (if_statement "if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" if (parenthesized_expression "((int)param_1 < 1)" ( (binary_expression "(int)param_1 < 1" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" { (if_statement "if (uVar7 < 0x20) goto LAB_000dddf4;" if (parenthesized_expression "(uVar7 < 0x20)" ( (binary_expression "uVar7 < 0x20" identifier < number_literal) )) (goto_statement "goto LAB_000dddf4;" goto statement_identifier ;)) (if_statement "if (uVar7 == 0x9b) goto LAB_000df980;" if (parenthesized_expression "(uVar7 == 0x9b)" ( (binary_expression "uVar7 == 0x9b" identifier == number_literal) )) (goto_statement "goto LAB_000df980;" goto statement_identifier ;)) (expression_statement "pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);" (assignment_expression "pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1)" identifier = (cast_expression "(char *)FUN_000db670(pcVar9,pcVar9,0,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000db670(pcVar9,pcVar9,0,1)" identifier (argument_list "(pcVar9,pcVar9,0,1)" ( identifier , identifier , number_literal , number_literal ))))) ;) (expression_statement "puVar5[2] = pcVar9;" (assignment_expression "puVar5[2] = pcVar9" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = identifier) ;) }) (else_clause "else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" else (if_statement "if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" if (parenthesized_expression "(param_1 != (undefined *)0x1b)" ( (binary_expression "param_1 != (undefined *)0x1b" identifier != (cast_expression "(undefined *)0x1b" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" { (expression_statement "pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);" (assignment_expression "pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1)" identifier = (cast_expression "(char *)FUN_000db670(pcVar9,pcVar9,0,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000db670(pcVar9,pcVar9,0,1)" identifier (argument_list "(pcVar9,pcVar9,0,1)" ( identifier , identifier , number_literal , number_literal ))))) ;) (expression_statement "puVar5[2] = pcVar9;" (assignment_expression "puVar5[2] = pcVar9" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = identifier) ;) })))) (expression_statement "uVar4 = 2;" (assignment_expression "uVar4 = 2" identifier = number_literal) ;) (goto_statement "goto LAB_000df948;" goto statement_identifier ;) })) (expression_statement "*(undefined1 *)((int)puVar5 + 0x13) = 1;" (assignment_expression "*(undefined1 *)((int)puVar5 + 0x13) = 1" (pointer_expression "*(undefined1 *)((int)puVar5 + 0x13)" * (cast_expression "(undefined1 *)((int)puVar5 + 0x13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000d8b3c();" (call_expression "FUN_000d8b3c()" identifier (argument_list "()" ( ))) ;) (if_statement "if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;" if (parenthesized_expression "(*(char *)((int)puVar5 + 0x13) == '\x01')" ( (binary_expression "*(char *)((int)puVar5 + 0x13) == '\x01'" (pointer_expression "*(char *)((int)puVar5 + 0x13)" * (cast_expression "(char *)((int)puVar5 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\x01'" ' escape_sequence ')) )) (goto_statement "goto LAB_000df934;" goto statement_identifier ;)) }) (else_clause "else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }" else (if_statement "if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }" if (parenthesized_expression "(*(char *)((int)puVar5 + 0x13) == '\x01')" ( (binary_expression "*(char *)((int)puVar5 + 0x13) == '\x01'" (pointer_expression "*(char *)((int)puVar5 + 0x13)" * (cast_expression "(char *)((int)puVar5 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }" { (if_statement "if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }" if (parenthesized_expression "(param_1 == (undefined *)0xfffffff8)" ( (binary_expression "param_1 == (undefined *)0xfffffff8" identifier == (cast_expression "(undefined *)0xfffffff8" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }" { (expression_statement "*(undefined1 *)((int)puVar5 + 0x13) = 2;" (assignment_expression "*(undefined1 *)((int)puVar5 + 0x13) = 2" (pointer_expression "*(undefined1 *)((int)puVar5 + 0x13)" * (cast_expression "(undefined1 *)((int)puVar5 + 0x13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000d8b3c();" (call_expression "FUN_000d8b3c()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (expression_statement "uVar6 = 200;" (assignment_expression "uVar6 = 200" identifier = number_literal) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })) (labeled_statement "LAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;" statement_identifier : (expression_statement "uVar7 = (uint)param_1 & 0xff;" (assignment_expression "uVar7 = (uint)param_1 & 0xff" identifier = (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;)) (expression_statement "uVar6 = uVar7 - 0x30 & 0xff;" (assignment_expression "uVar6 = uVar7 - 0x30 & 0xff" identifier = (binary_expression "uVar7 - 0x30 & 0xff" (binary_expression "uVar7 - 0x30" identifier - number_literal) & number_literal)) ;) (if_statement "if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }" if (parenthesized_expression "((int)param_1 < 1)" ( (binary_expression "(int)param_1 < 1" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }" { (if_statement "if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }" if (parenthesized_expression "(uVar7 < 0x20)" ( (binary_expression "uVar7 < 0x20" identifier < number_literal) )) (compound_statement "{\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }" { (labeled_statement "LAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];" statement_identifier : (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;)) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })) (if_statement "if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }" if (parenthesized_expression "(uVar7 == 0x9b)" ( (binary_expression "uVar7 == 0x9b" identifier == number_literal) )) (compound_statement "{\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }" { (labeled_statement "LAB_000df980:\n          pcVar9 = (char *)puVar5[1];" statement_identifier : (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;)) (expression_statement "uVar6 = 0x6b;" (assignment_expression "uVar6 = 0x6b" identifier = number_literal) ;) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })) })) (expression_statement "pcVar9 = (char *)puVar5[2];" (assignment_expression "pcVar9 = (char *)puVar5[2]" identifier = (cast_expression "(char *)puVar5[2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[2]" identifier [ number_literal ]))) ;) (expression_statement "uVar4 = 3;" (assignment_expression "uVar4 = 3" identifier = number_literal) ;) (labeled_statement "LAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);" statement_identifier : (expression_statement "uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);" (assignment_expression "uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4)" identifier = (call_expression "FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4)" identifier (argument_list "(pcVar9,(uint)param_1 & 0xff,uVar4)" ( identifier , (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) , identifier )))) ;)) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (expression_statement "puVar5[2] = uVar4;" (assignment_expression "puVar5[2] = uVar4" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = identifier) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })))) })) (if_statement "if (puVar8 < (undefined *)0x8b) {\n                    /* WARNING: Could not emulate address calculation at 0x000dd430 */\n                    /* WARNING: Treating indirect jump as call */\n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }" if (parenthesized_expression "(puVar8 < (undefined *)0x8b)" ( (binary_expression "puVar8 < (undefined *)0x8b" identifier < (cast_expression "(undefined *)0x8b" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Could not emulate address calculation at 0x000dd430 */\n                    /* WARNING: Treating indirect jump as call */\n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }" { comment comment (expression_statement "(*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();" (call_expression "(*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))()" (parenthesized_expression "(*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))" ( (pointer_expression "*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0))" * (cast_expression "(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0))" ( (binary_expression "&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)" (pointer_expression "&_gp_1" & identifier) + (pointer_expression "*(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)" * (cast_expression "(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)" ( (binary_expression "PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0" (binary_expression "PTR_FUN_0012a1a8 + (int)puVar8 * 4" identifier + (binary_expression "(int)puVar8 * 4" (cast_expression "(int)puVar8" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) + number_literal) ))))) )))) )) (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })) (expression_statement "local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff;" (assignment_expression "local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff" identifier = (binary_expression "CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff" (call_expression "CONCAT13((char)param_1,(int3)local_b8)" identifier (argument_list "((char)param_1,(int3)local_b8)" ( (cast_expression "(char)param_1" ( (type_descriptor "char" primitive_type) ) identifier) , (cast_expression "(int3)local_b8" ( (type_descriptor "int3" type_identifier) ) identifier) ))) & number_literal)) ;) (expression_statement "FUN_000d8c6c(auStack_ac,&local_b8);" (call_expression "FUN_000d8c6c(auStack_ac,&local_b8)" identifier (argument_list "(auStack_ac,&local_b8)" ( identifier , (pointer_expression "&local_b8" & identifier) ))) ;) (expression_statement "FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac);" (call_expression "FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac)" identifier (argument_list "(PTR_FUN_0012a1a8 + -0x2948,auStack_ac)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x2948" identifier + number_literal) , identifier ))) ;) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (expression_statement "uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff;" (assignment_expression "uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff" identifier = (binary_expression "((uint)param_1 & 0xff) - 0x30 & 0xff" (binary_expression "((uint)param_1 & 0xff) - 0x30" (parenthesized_expression "((uint)param_1 & 0xff)" ( (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) - number_literal) & number_literal)) ;) (expression_statement "puVar5[0x20] = 0x1a;" (assignment_expression "puVar5[0x20] = 0x1a" (subscript_expression "puVar5[0x20]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*(undefined1 *)((int)puVar5 + 0x5e) = 0;" (assignment_expression "*(undefined1 *)((int)puVar5 + 0x5e) = 0" (pointer_expression "*(undefined1 *)((int)puVar5 + 0x5e)" * (cast_expression "(undefined1 *)((int)puVar5 + 0x5e)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x5e)" ( (binary_expression "(int)puVar5 + 0x5e" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (labeled_statement "LAB_000dd4e8:\n  if (pcVar10 == pcVar9) goto LAB_000dd6ac;" statement_identifier : (if_statement "if (pcVar10 == pcVar9) goto LAB_000dd6ac;" if (parenthesized_expression "(pcVar10 == pcVar9)" ( (binary_expression "pcVar10 == pcVar9" identifier == identifier) )) (goto_statement "goto LAB_000dd6ac;" goto statement_identifier ;))) (expression_statement "pcVar10 = (char *)puVar5[2];" (assignment_expression "pcVar10 = (char *)puVar5[2]" identifier = (cast_expression "(char *)puVar5[2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[2]" identifier [ number_literal ]))) ;) (do_statement "do {\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  } while( true );" do (compound_statement "{\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  }" { (if_statement "if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }" if (parenthesized_expression "(pcVar10 != pcVar9)" ( (binary_expression "pcVar10 != pcVar9" identifier != identifier) )) (compound_statement "{\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }" { (expression_statement "pcVar9 = (char *)FUN_000dbd84();" (assignment_expression "pcVar9 = (char *)FUN_000dbd84()" identifier = (cast_expression "(char *)FUN_000dbd84()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000dbd84()" identifier (argument_list "()" ( ))))) ;) (expression_statement "puVar5[2] = pcVar9;" (assignment_expression "puVar5[2] = pcVar9" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = identifier) ;) })) (if_statement "if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }" if (parenthesized_expression "(pcVar9 < (char *)puVar5[0x5a])" ( (binary_expression "pcVar9 < (char *)puVar5[0x5a]" identifier < (cast_expression "(char *)puVar5[0x5a]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[0x5a]" identifier [ number_literal ]))) )) (compound_statement "{\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }" { (expression_statement "iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);" (assignment_expression "iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" identifier = (call_expression "(*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" (parenthesized_expression "(*(code *)PTR_strchr_0012af54)" ( (pointer_expression "*(code *)PTR_strchr_0012af54" * (cast_expression "(code *)PTR_strchr_0012af54" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" ( (binary_expression "PTR_DAT_0012abe0 + -0x7fed" identifier + number_literal) , (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (labeled_statement "joined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }" statement_identifier : (if_statement "if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }" { (expression_statement "uVar4 = puVar5[0x58];" (assignment_expression "uVar4 = puVar5[0x58]" identifier = (subscript_expression "puVar5[0x58]" identifier [ number_literal ])) ;) (expression_statement "puVar5[0x58] = pcVar9;" (assignment_expression "puVar5[0x58] = pcVar9" (subscript_expression "puVar5[0x58]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar5[0x59] = uVar4;" (assignment_expression "puVar5[0x59] = uVar4" (subscript_expression "puVar5[0x59]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar4 = FUN_000d9850(pcVar9);" (assignment_expression "uVar4 = FUN_000d9850(pcVar9)" identifier = (call_expression "FUN_000d9850(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier )))) ;) (expression_statement "uVar4 = FUN_000d9850(uVar4);" (assignment_expression "uVar4 = FUN_000d9850(uVar4)" identifier = (call_expression "FUN_000d9850(uVar4)" identifier (argument_list "(uVar4)" ( identifier )))) ;) (expression_statement "param_1 = PTR_LAB_0012abe4 + -0x652c;" (assignment_expression "param_1 = PTR_LAB_0012abe4 + -0x652c" identifier = (binary_expression "PTR_LAB_0012abe4 + -0x652c" identifier + number_literal)) ;) (expression_statement "puVar5[0x5a] = uVar4;" (assignment_expression "puVar5[0x5a] = uVar4" (subscript_expression "puVar5[0x5a]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar4 = FUN_000d9ad4(pcVar9);" (assignment_expression "uVar4 = FUN_000d9ad4(pcVar9)" identifier = (call_expression "FUN_000d9ad4(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier )))) ;) (expression_statement "uVar4 = FUN_000d9ad4(uVar4);" (assignment_expression "uVar4 = FUN_000d9ad4(uVar4)" identifier = (call_expression "FUN_000d9ad4(uVar4)" identifier (argument_list "(uVar4)" ( identifier )))) ;) (expression_statement "puVar5[0x5b] = uVar4;" (assignment_expression "puVar5[0x5b] = uVar4" (subscript_expression "puVar5[0x5b]" identifier [ number_literal ]) = identifier) ;) }))) }) (else_clause "else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }" else (if_statement "if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }" if (parenthesized_expression "((char *)puVar5[0x5b] < pcVar9)" ( (binary_expression "(char *)puVar5[0x5b] < pcVar9" (cast_expression "(char *)puVar5[0x5b]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[0x5b]" identifier [ number_literal ])) < identifier) )) (compound_statement "{\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }" { (expression_statement "iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);" (assignment_expression "iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" identifier = (call_expression "(*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" (parenthesized_expression "(*(code *)PTR_strchr_0012af54)" ( (pointer_expression "*(code *)PTR_strchr_0012af54" * (cast_expression "(code *)PTR_strchr_0012af54" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" ( (binary_expression "PTR_DAT_0012abe0 + -0x7fed" identifier + number_literal) , (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (goto_statement "goto joined_r0x000dd690;" goto statement_identifier ;) })))) (expression_statement "uVar6 = (uint)(uVar6 < 10);" (assignment_expression "uVar6 = (uint)(uVar6 < 10)" identifier = (call_expression "(uint)(uVar6 < 10)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar6 < 10)" ( (binary_expression "uVar6 < 10" identifier < number_literal) )))) ;) (if_statement "if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (compound_statement "{\n      puVar5[8] = 0;\n    }" { (expression_statement "puVar5[8] = 0;" (assignment_expression "puVar5[8] = 0" (subscript_expression "puVar5[8]" identifier [ number_literal ]) = number_literal) ;) })) (if_statement "if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }" if (parenthesized_expression "(((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0'))" ( (binary_expression "((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')" (parenthesized_expression "((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3))" ( (binary_expression "(*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)" (parenthesized_expression "(*pcVar9 == '\n')" ( (binary_expression "*pcVar9 == '\n'" (pointer_expression "*pcVar9" * identifier) == (char_literal "'\n'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)" ( (comma_expression "iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3" (assignment_expression "iVar3 = FUN_000d97d8(pcVar9)" identifier = (call_expression "FUN_000d97d8(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier )))) , (binary_expression "0 < (int)pcVar9 - iVar3" number_literal < (binary_expression "(int)pcVar9 - iVar3" (cast_expression "(int)pcVar9" ( (type_descriptor "int" primitive_type) ) identifier) - identifier))) ))) )) && (parenthesized_expression "(*(char *)((int)puVar5 + 0x13) == '\0')" ( (binary_expression "*(char *)((int)puVar5 + 0x13) == '\0'" (pointer_expression "*(char *)((int)puVar5 + 0x13)" * (cast_expression "(char *)((int)puVar5 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n      puVar5[2] = pcVar9 + -1;\n    }" { (expression_statement "puVar5[2] = pcVar9 + -1;" (assignment_expression "puVar5[2] = pcVar9 + -1" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = (binary_expression "pcVar9 + -1" identifier + number_literal)) ;) })) (if_statement "if (local_2c == *(int *)puVar2) {\n      return;\n    }" if (parenthesized_expression "(local_2c == *(int *)puVar2)" ( (binary_expression "local_2c == *(int *)puVar2" identifier == (pointer_expression "*(int *)puVar2" * (cast_expression "(int *)puVar2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "(*(code *)PTR___stack_chk_fail_0012b0c8)();" (call_expression "(*(code *)PTR___stack_chk_fail_0012b0c8)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0012b0c8)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0012b0c8" * (cast_expression "(code *)PTR___stack_chk_fail_0012b0c8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (labeled_statement "LAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);" statement_identifier : (expression_statement "FUN_000db844(pcVar9,10,0);" (call_expression "FUN_000db844(pcVar9,10,0)" identifier (argument_list "(pcVar9,10,0)" ( identifier , number_literal , number_literal ))) ;)) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;) (expression_statement "puVar5[2] = pcVar10;" (assignment_expression "puVar5[2] = pcVar10" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit "void do_cmd(int c)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  int iVar4;\n  undefined4 uVar5;\n  char *pcVar6;\n  undefined4 *puVar7;\n  uint uVar8;\n  uint uVar9;\n  char *pcVar10;\n  char *pcVar11;\n  int in_stack_ffffff20;\n  char *p;\n  char *q;\n  char buf [12];\n  char buf_1 [128];\n  \n  puVar2 = PTR___stack_chk_guard_0012b14c;\n  puVar1 = PTR_ptr_to_globals_0012a304;\n  uVar9 = c + 0xb;\n  buf[0] = '\0';\n  buf[1] = '\0';\n  buf[2] = '\0';\n  buf[3] = '\0';\n  buf[4] = '\0';\n  buf[5] = '\0';\n  buf[6] = '\0';\n  buf[7] = '\0';\n  buf[8] = '\0';\n  buf[9] = '\0';\n  buf[10] = '\0';\n  buf[0xb] = '\0';\n  iVar3 = *(int *)PTR___stack_chk_guard_0012b14c;\n  show_status_line();\n  puVar7 = *(undefined4 **)puVar1;\n  if ((uVar9 < 10) && ((1 << (uVar9 & 0x1f) & 0x3f7U) != 0)) {\nLAB_000dd3d4:\n    if (0x8a < uVar9) {\n      buf._0_4_ = CONCAT13((char)c,(int3)buf._0_4_) & 0xff00ffff;\n      print_literal(buf_1,buf);\n      status_line_bold(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x2948,buf_1);\n      FUN_000dea0c();\n      return;\n    }\n                    /* WARNING: Could not emulate address calculation at 0x000dd430 */\n                    /* WARNING: Treating indirect jump as call */\n    (*(code *)(&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 +\n                              uVar9 * 4 + -0x27e0)))();\n    return;\n  }\n  if (*(char *)((int)puVar7 + 0x13) == '\x02') {\n    uVar8 = 200;\n    if (c == -8) {\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      goto LAB_000dd4e8;\n    }\n    pcVar10 = (char *)puVar7[2];\n    if (*pcVar10 == '\n') {\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;\n      goto LAB_000df934;\n    }\n    uVar9 = c & 0xff;\n    uVar8 = uVar9 - 0x30 & 0xff;\n    if (c < 1) {\n      if (0x1f < uVar9) {\n        if (uVar9 != 0x9b) {\n          pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n          puVar7[2] = pcVar10;\n          goto LAB_000df9cc;\n        }\n        goto LAB_000df980;\n      }\n      goto LAB_000dddf4;\n    }\n    if (c != 0x1b) {\n      pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n      puVar7[2] = pcVar10;\n    }\nLAB_000df9cc:\n    iVar4 = 2;\n  }\n  else {\n    if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;\n    if (c == -8) {\n      *(undefined1 *)((int)puVar7 + 0x13) = 2;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      uVar8 = 200;\n      goto LAB_000dd4e8;\n    }\nLAB_000df934:\n    uVar9 = c & 0xff;\n    uVar8 = uVar9 - 0x30 & 0xff;\n    if (c < 1) {\n      if (uVar9 < 0x20) {\nLAB_000dddf4:\n        pcVar10 = (char *)puVar7[1];\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n      if (uVar9 == 0x9b) {\nLAB_000df980:\n        pcVar10 = (char *)puVar7[1];\n        uVar8 = 0x6b;\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n    }\n    pcVar10 = (char *)puVar7[2];\n    iVar4 = 3;\n  }\n  pcVar6 = char_insert(pcVar10,(char)c,iVar4);\n  pcVar10 = (char *)puVar7[1];\n  pcVar11 = (char *)*puVar7;\n  puVar7[2] = pcVar6;\nLAB_000dd4e8:\n  if (pcVar11 == pcVar10) goto LAB_000dd6ac;\n  pcVar11 = (char *)puVar7[2];\n  do {\n    if (pcVar11 != pcVar10) {\n      pcVar10 = bound_dot(pcVar11);\n      puVar7[2] = pcVar10;\n    }\n    if (pcVar10 < (char *)puVar7[0x5a]) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\njoined_r0x000dd690:\n      if (iVar4 != 0) {\n        uVar5 = puVar7[0x58];\n        puVar7[0x58] = pcVar10;\n        puVar7[0x59] = uVar5;\n        pcVar11 = prev_line(pcVar10);\n        pcVar11 = prev_line(pcVar11);\n        c = (int)(PTR_LAB_0012abe4 + -0x652c);\n        puVar7[0x5a] = pcVar11;\n        pcVar11 = next_line(pcVar10);\n        pcVar11 = next_line(pcVar11);\n        puVar7[0x5b] = pcVar11;\n      }\n    }\n    else if ((char *)puVar7[0x5b] < pcVar10) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar8 = (uint)(uVar8 < 10);\n    if (uVar8 == 0) {\n      puVar7[8] = 0;\n    }\n    if (((*pcVar10 == '\n') && (pcVar11 = begin_line(pcVar10), 0 < (int)pcVar10 - (int)pcVar11)) &&\n       (*(char *)((int)puVar7 + 0x13) == '\0')) {\n      puVar7[2] = pcVar10 + -1;\n    }\n    if (iVar3 == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    char_insert(pcVar10,'\n',0);\n    pcVar11 = (char *)*puVar7;\n    pcVar10 = (char *)puVar7[1];\n    puVar7[2] = pcVar11;\n  } while( true );\n}\n\n" (function_definition "void do_cmd(int c)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  int iVar4;\n  undefined4 uVar5;\n  char *pcVar6;\n  undefined4 *puVar7;\n  uint uVar8;\n  uint uVar9;\n  char *pcVar10;\n  char *pcVar11;\n  int in_stack_ffffff20;\n  char *p;\n  char *q;\n  char buf [12];\n  char buf_1 [128];\n  \n  puVar2 = PTR___stack_chk_guard_0012b14c;\n  puVar1 = PTR_ptr_to_globals_0012a304;\n  uVar9 = c + 0xb;\n  buf[0] = '\0';\n  buf[1] = '\0';\n  buf[2] = '\0';\n  buf[3] = '\0';\n  buf[4] = '\0';\n  buf[5] = '\0';\n  buf[6] = '\0';\n  buf[7] = '\0';\n  buf[8] = '\0';\n  buf[9] = '\0';\n  buf[10] = '\0';\n  buf[0xb] = '\0';\n  iVar3 = *(int *)PTR___stack_chk_guard_0012b14c;\n  show_status_line();\n  puVar7 = *(undefined4 **)puVar1;\n  if ((uVar9 < 10) && ((1 << (uVar9 & 0x1f) & 0x3f7U) != 0)) {\nLAB_000dd3d4:\n    if (0x8a < uVar9) {\n      buf._0_4_ = CONCAT13((char)c,(int3)buf._0_4_) & 0xff00ffff;\n      print_literal(buf_1,buf);\n      status_line_bold(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x2948,buf_1);\n      FUN_000dea0c();\n      return;\n    }\n                    /* WARNING: Could not emulate address calculation at 0x000dd430 */\n                    /* WARNING: Treating indirect jump as call */\n    (*(code *)(&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 +\n                              uVar9 * 4 + -0x27e0)))();\n    return;\n  }\n  if (*(char *)((int)puVar7 + 0x13) == '\x02') {\n    uVar8 = 200;\n    if (c == -8) {\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      goto LAB_000dd4e8;\n    }\n    pcVar10 = (char *)puVar7[2];\n    if (*pcVar10 == '\n') {\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;\n      goto LAB_000df934;\n    }\n    uVar9 = c & 0xff;\n    uVar8 = uVar9 - 0x30 & 0xff;\n    if (c < 1) {\n      if (0x1f < uVar9) {\n        if (uVar9 != 0x9b) {\n          pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n          puVar7[2] = pcVar10;\n          goto LAB_000df9cc;\n        }\n        goto LAB_000df980;\n      }\n      goto LAB_000dddf4;\n    }\n    if (c != 0x1b) {\n      pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n      puVar7[2] = pcVar10;\n    }\nLAB_000df9cc:\n    iVar4 = 2;\n  }\n  else {\n    if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;\n    if (c == -8) {\n      *(undefined1 *)((int)puVar7 + 0x13) = 2;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      uVar8 = 200;\n      goto LAB_000dd4e8;\n    }\nLAB_000df934:\n    uVar9 = c & 0xff;\n    uVar8 = uVar9 - 0x30 & 0xff;\n    if (c < 1) {\n      if (uVar9 < 0x20) {\nLAB_000dddf4:\n        pcVar10 = (char *)puVar7[1];\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n      if (uVar9 == 0x9b) {\nLAB_000df980:\n        pcVar10 = (char *)puVar7[1];\n        uVar8 = 0x6b;\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n    }\n    pcVar10 = (char *)puVar7[2];\n    iVar4 = 3;\n  }\n  pcVar6 = char_insert(pcVar10,(char)c,iVar4);\n  pcVar10 = (char *)puVar7[1];\n  pcVar11 = (char *)*puVar7;\n  puVar7[2] = pcVar6;\nLAB_000dd4e8:\n  if (pcVar11 == pcVar10) goto LAB_000dd6ac;\n  pcVar11 = (char *)puVar7[2];\n  do {\n    if (pcVar11 != pcVar10) {\n      pcVar10 = bound_dot(pcVar11);\n      puVar7[2] = pcVar10;\n    }\n    if (pcVar10 < (char *)puVar7[0x5a]) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\njoined_r0x000dd690:\n      if (iVar4 != 0) {\n        uVar5 = puVar7[0x58];\n        puVar7[0x58] = pcVar10;\n        puVar7[0x59] = uVar5;\n        pcVar11 = prev_line(pcVar10);\n        pcVar11 = prev_line(pcVar11);\n        c = (int)(PTR_LAB_0012abe4 + -0x652c);\n        puVar7[0x5a] = pcVar11;\n        pcVar11 = next_line(pcVar10);\n        pcVar11 = next_line(pcVar11);\n        puVar7[0x5b] = pcVar11;\n      }\n    }\n    else if ((char *)puVar7[0x5b] < pcVar10) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar8 = (uint)(uVar8 < 10);\n    if (uVar8 == 0) {\n      puVar7[8] = 0;\n    }\n    if (((*pcVar10 == '\n') && (pcVar11 = begin_line(pcVar10), 0 < (int)pcVar10 - (int)pcVar11)) &&\n       (*(char *)((int)puVar7 + 0x13) == '\0')) {\n      puVar7[2] = pcVar10 + -1;\n    }\n    if (iVar3 == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    char_insert(pcVar10,'\n',0);\n    pcVar11 = (char *)*puVar7;\n    pcVar10 = (char *)puVar7[1];\n    puVar7[2] = pcVar11;\n  } while( true );\n}" primitive_type (function_declarator "do_cmd(int c)" identifier (parameter_list "(int c)" ( (parameter_declaration "int c" primitive_type identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  int iVar4;\n  undefined4 uVar5;\n  char *pcVar6;\n  undefined4 *puVar7;\n  uint uVar8;\n  uint uVar9;\n  char *pcVar10;\n  char *pcVar11;\n  int in_stack_ffffff20;\n  char *p;\n  char *q;\n  char buf [12];\n  char buf_1 [128];\n  \n  puVar2 = PTR___stack_chk_guard_0012b14c;\n  puVar1 = PTR_ptr_to_globals_0012a304;\n  uVar9 = c + 0xb;\n  buf[0] = '\0';\n  buf[1] = '\0';\n  buf[2] = '\0';\n  buf[3] = '\0';\n  buf[4] = '\0';\n  buf[5] = '\0';\n  buf[6] = '\0';\n  buf[7] = '\0';\n  buf[8] = '\0';\n  buf[9] = '\0';\n  buf[10] = '\0';\n  buf[0xb] = '\0';\n  iVar3 = *(int *)PTR___stack_chk_guard_0012b14c;\n  show_status_line();\n  puVar7 = *(undefined4 **)puVar1;\n  if ((uVar9 < 10) && ((1 << (uVar9 & 0x1f) & 0x3f7U) != 0)) {\nLAB_000dd3d4:\n    if (0x8a < uVar9) {\n      buf._0_4_ = CONCAT13((char)c,(int3)buf._0_4_) & 0xff00ffff;\n      print_literal(buf_1,buf);\n      status_line_bold(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x2948,buf_1);\n      FUN_000dea0c();\n      return;\n    }\n                    /* WARNING: Could not emulate address calculation at 0x000dd430 */\n                    /* WARNING: Treating indirect jump as call */\n    (*(code *)(&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 +\n                              uVar9 * 4 + -0x27e0)))();\n    return;\n  }\n  if (*(char *)((int)puVar7 + 0x13) == '\x02') {\n    uVar8 = 200;\n    if (c == -8) {\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      goto LAB_000dd4e8;\n    }\n    pcVar10 = (char *)puVar7[2];\n    if (*pcVar10 == '\n') {\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;\n      goto LAB_000df934;\n    }\n    uVar9 = c & 0xff;\n    uVar8 = uVar9 - 0x30 & 0xff;\n    if (c < 1) {\n      if (0x1f < uVar9) {\n        if (uVar9 != 0x9b) {\n          pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n          puVar7[2] = pcVar10;\n          goto LAB_000df9cc;\n        }\n        goto LAB_000df980;\n      }\n      goto LAB_000dddf4;\n    }\n    if (c != 0x1b) {\n      pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n      puVar7[2] = pcVar10;\n    }\nLAB_000df9cc:\n    iVar4 = 2;\n  }\n  else {\n    if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;\n    if (c == -8) {\n      *(undefined1 *)((int)puVar7 + 0x13) = 2;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      uVar8 = 200;\n      goto LAB_000dd4e8;\n    }\nLAB_000df934:\n    uVar9 = c & 0xff;\n    uVar8 = uVar9 - 0x30 & 0xff;\n    if (c < 1) {\n      if (uVar9 < 0x20) {\nLAB_000dddf4:\n        pcVar10 = (char *)puVar7[1];\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n      if (uVar9 == 0x9b) {\nLAB_000df980:\n        pcVar10 = (char *)puVar7[1];\n        uVar8 = 0x6b;\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n    }\n    pcVar10 = (char *)puVar7[2];\n    iVar4 = 3;\n  }\n  pcVar6 = char_insert(pcVar10,(char)c,iVar4);\n  pcVar10 = (char *)puVar7[1];\n  pcVar11 = (char *)*puVar7;\n  puVar7[2] = pcVar6;\nLAB_000dd4e8:\n  if (pcVar11 == pcVar10) goto LAB_000dd6ac;\n  pcVar11 = (char *)puVar7[2];\n  do {\n    if (pcVar11 != pcVar10) {\n      pcVar10 = bound_dot(pcVar11);\n      puVar7[2] = pcVar10;\n    }\n    if (pcVar10 < (char *)puVar7[0x5a]) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\njoined_r0x000dd690:\n      if (iVar4 != 0) {\n        uVar5 = puVar7[0x58];\n        puVar7[0x58] = pcVar10;\n        puVar7[0x59] = uVar5;\n        pcVar11 = prev_line(pcVar10);\n        pcVar11 = prev_line(pcVar11);\n        c = (int)(PTR_LAB_0012abe4 + -0x652c);\n        puVar7[0x5a] = pcVar11;\n        pcVar11 = next_line(pcVar10);\n        pcVar11 = next_line(pcVar11);\n        puVar7[0x5b] = pcVar11;\n      }\n    }\n    else if ((char *)puVar7[0x5b] < pcVar10) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar8 = (uint)(uVar8 < 10);\n    if (uVar8 == 0) {\n      puVar7[8] = 0;\n    }\n    if (((*pcVar10 == '\n') && (pcVar11 = begin_line(pcVar10), 0 < (int)pcVar10 - (int)pcVar11)) &&\n       (*(char *)((int)puVar7 + 0x13) == '\0')) {\n      puVar7[2] = pcVar10 + -1;\n    }\n    if (iVar3 == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    char_insert(pcVar10,'\n',0);\n    pcVar11 = (char *)*puVar7;\n    pcVar10 = (char *)puVar7[1];\n    puVar7[2] = pcVar11;\n  } while( true );\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "undefined4 uVar5;" type_identifier identifier ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "undefined4 *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "char *pcVar11;" primitive_type (pointer_declarator "*pcVar11" * identifier) ;) (declaration "int in_stack_ffffff20;" primitive_type identifier ;) (declaration "char *p;" primitive_type (pointer_declarator "*p" * identifier) ;) (declaration "char *q;" primitive_type (pointer_declarator "*q" * identifier) ;) (declaration "char buf [12];" primitive_type (array_declarator "buf [12]" identifier [ number_literal ]) ;) (declaration "char buf_1 [128];" primitive_type (array_declarator "buf_1 [128]" identifier [ number_literal ]) ;) (expression_statement "puVar2 = PTR___stack_chk_guard_0012b14c;" (assignment_expression "puVar2 = PTR___stack_chk_guard_0012b14c" identifier = identifier) ;) (expression_statement "puVar1 = PTR_ptr_to_globals_0012a304;" (assignment_expression "puVar1 = PTR_ptr_to_globals_0012a304" identifier = identifier) ;) (expression_statement "uVar9 = c + 0xb;" (assignment_expression "uVar9 = c + 0xb" identifier = (binary_expression "c + 0xb" identifier + number_literal)) ;) (expression_statement "buf[0] = '\0';" (assignment_expression "buf[0] = '\0'" (subscript_expression "buf[0]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "buf[1] = '\0';" (assignment_expression "buf[1] = '\0'" (subscript_expression "buf[1]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "buf[2] = '\0';" (assignment_expression "buf[2] = '\0'" (subscript_expression "buf[2]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "buf[3] = '\0';" (assignment_expression "buf[3] = '\0'" (subscript_expression "buf[3]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "buf[4] = '\0';" (assignment_expression "buf[4] = '\0'" (subscript_expression "buf[4]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "buf[5] = '\0';" (assignment_expression "buf[5] = '\0'" (subscript_expression "buf[5]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "buf[6] = '\0';" (assignment_expression "buf[6] = '\0'" (subscript_expression "buf[6]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "buf[7] = '\0';" (assignment_expression "buf[7] = '\0'" (subscript_expression "buf[7]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "buf[8] = '\0';" (assignment_expression "buf[8] = '\0'" (subscript_expression "buf[8]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "buf[9] = '\0';" (assignment_expression "buf[9] = '\0'" (subscript_expression "buf[9]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "buf[10] = '\0';" (assignment_expression "buf[10] = '\0'" (subscript_expression "buf[10]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "buf[0xb] = '\0';" (assignment_expression "buf[0xb] = '\0'" (subscript_expression "buf[0xb]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "iVar3 = *(int *)PTR___stack_chk_guard_0012b14c;" (assignment_expression "iVar3 = *(int *)PTR___stack_chk_guard_0012b14c" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0012b14c" * (cast_expression "(int *)PTR___stack_chk_guard_0012b14c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "show_status_line();" (call_expression "show_status_line()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar7 = *(undefined4 **)puVar1;" (assignment_expression "puVar7 = *(undefined4 **)puVar1" identifier = (pointer_expression "*(undefined4 **)puVar1" * (cast_expression "(undefined4 **)puVar1" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (if_statement "if ((uVar9 < 10) && ((1 << (uVar9 & 0x1f) & 0x3f7U) != 0)) {\nLAB_000dd3d4:\n    if (0x8a < uVar9) {\n      buf._0_4_ = CONCAT13((char)c,(int3)buf._0_4_) & 0xff00ffff;\n      print_literal(buf_1,buf);\n      status_line_bold(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x2948,buf_1);\n      FUN_000dea0c();\n      return;\n    }\n                    /* WARNING: Could not emulate address calculation at 0x000dd430 */\n                    /* WARNING: Treating indirect jump as call */\n    (*(code *)(&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 +\n                              uVar9 * 4 + -0x27e0)))();\n    return;\n  }" if (parenthesized_expression "((uVar9 < 10) && ((1 << (uVar9 & 0x1f) & 0x3f7U) != 0))" ( (binary_expression "(uVar9 < 10) && ((1 << (uVar9 & 0x1f) & 0x3f7U) != 0)" (parenthesized_expression "(uVar9 < 10)" ( (binary_expression "uVar9 < 10" identifier < number_literal) )) && (parenthesized_expression "((1 << (uVar9 & 0x1f) & 0x3f7U) != 0)" ( (binary_expression "(1 << (uVar9 & 0x1f) & 0x3f7U) != 0" (parenthesized_expression "(1 << (uVar9 & 0x1f) & 0x3f7U)" ( (binary_expression "1 << (uVar9 & 0x1f) & 0x3f7U" (binary_expression "1 << (uVar9 & 0x1f)" number_literal << (parenthesized_expression "(uVar9 & 0x1f)" ( (binary_expression "uVar9 & 0x1f" identifier & number_literal) ))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\nLAB_000dd3d4:\n    if (0x8a < uVar9) {\n      buf._0_4_ = CONCAT13((char)c,(int3)buf._0_4_) & 0xff00ffff;\n      print_literal(buf_1,buf);\n      status_line_bold(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x2948,buf_1);\n      FUN_000dea0c();\n      return;\n    }\n                    /* WARNING: Could not emulate address calculation at 0x000dd430 */\n                    /* WARNING: Treating indirect jump as call */\n    (*(code *)(&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 +\n                              uVar9 * 4 + -0x27e0)))();\n    return;\n  }" { (labeled_statement "LAB_000dd3d4:\n    if (0x8a < uVar9) {\n      buf._0_4_ = CONCAT13((char)c,(int3)buf._0_4_) & 0xff00ffff;\n      print_literal(buf_1,buf);\n      status_line_bold(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x2948,buf_1);\n      FUN_000dea0c();\n      return;\n    }" statement_identifier : (if_statement "if (0x8a < uVar9) {\n      buf._0_4_ = CONCAT13((char)c,(int3)buf._0_4_) & 0xff00ffff;\n      print_literal(buf_1,buf);\n      status_line_bold(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x2948,buf_1);\n      FUN_000dea0c();\n      return;\n    }" if (parenthesized_expression "(0x8a < uVar9)" ( (binary_expression "0x8a < uVar9" number_literal < identifier) )) (compound_statement "{\n      buf._0_4_ = CONCAT13((char)c,(int3)buf._0_4_) & 0xff00ffff;\n      print_literal(buf_1,buf);\n      status_line_bold(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x2948,buf_1);\n      FUN_000dea0c();\n      return;\n    }" { (expression_statement "buf._0_4_ = CONCAT13((char)c,(int3)buf._0_4_) & 0xff00ffff;" (assignment_expression "buf._0_4_ = CONCAT13((char)c,(int3)buf._0_4_) & 0xff00ffff" (field_expression "buf._0_4_" identifier . field_identifier) = (binary_expression "CONCAT13((char)c,(int3)buf._0_4_) & 0xff00ffff" (call_expression "CONCAT13((char)c,(int3)buf._0_4_)" identifier (argument_list "((char)c,(int3)buf._0_4_)" ( (cast_expression "(char)c" ( (type_descriptor "char" primitive_type) ) identifier) , (cast_expression "(int3)buf._0_4_" ( (type_descriptor "int3" type_identifier) ) (field_expression "buf._0_4_" identifier . field_identifier)) ))) & number_literal)) ;) (expression_statement "print_literal(buf_1,buf);" (call_expression "print_literal(buf_1,buf)" identifier (argument_list "(buf_1,buf)" ( identifier , identifier ))) ;) (expression_statement "status_line_bold(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x2948,buf_1);" (comma_expression "status_line_bold(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x2948,buf_1" (binary_expression "status_line_bold(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x2948" (call_expression "status_line_bold(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" identifier (argument_list "(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" ( (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier) ))) (ERROR "9__f_l_0012a1a8" number_literal identifier) + number_literal) , identifier) (ERROR ")" )) ;) (expression_statement "FUN_000dea0c();" (call_expression "FUN_000dea0c()" identifier (argument_list "()" ( ))) ;) (return_statement "return;" return ;) }))) comment comment (expression_statement "(*(code *)(&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 +\n                              uVar9 * 4 + -0x27e0)))();" (parenthesized_expression "(*(code *)(&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 +\n                              uVar9 * 4 + -0x27e0))" ( (pointer_expression "*(code *)(&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 +\n                              uVar9 * 4 + -0x27e0)" * (cast_expression "(code *)(&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 +\n                              uVar9 * 4 + -0x27e0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 +\n                              uVar9 * 4 + -0x27e0)" ( (binary_expression "&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 +\n                              uVar9 * 4 + -0x27e0" (binary_expression "&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 +\n                              uVar9 * 4" (binary_expression "&_gp + *(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" (pointer_expression "&_gp" & identifier) + (pointer_expression "*(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" * (cast_expression "(int *)(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" ( (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier) ))))) (ERROR "9__f_l_0012a1a8" number_literal identifier) + (binary_expression "uVar9 * 4" identifier * number_literal)) + number_literal) )))) )) (ERROR ")()" ) ( )) ;) (return_statement "return;" return ;) })) (if_statement "if (*(char *)((int)puVar7 + 0x13) == '\x02') {\n    uVar8 = 200;\n    if (c == -8) {\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      goto LAB_000dd4e8;\n    }\n    pcVar10 = (char *)puVar7[2];\n    if (*pcVar10 == '\n') {\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;\n      goto LAB_000df934;\n    }\n    uVar9 = c & 0xff;\n    uVar8 = uVar9 - 0x30 & 0xff;\n    if (c < 1) {\n      if (0x1f < uVar9) {\n        if (uVar9 != 0x9b) {\n          pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n          puVar7[2] = pcVar10;\n          goto LAB_000df9cc;\n        }\n        goto LAB_000df980;\n      }\n      goto LAB_000dddf4;\n    }\n    if (c != 0x1b) {\n      pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n      puVar7[2] = pcVar10;\n    }\nLAB_000df9cc:\n    iVar4 = 2;\n  }\n  else {\n    if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;\n    if (c == -8) {\n      *(undefined1 *)((int)puVar7 + 0x13) = 2;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      uVar8 = 200;\n      goto LAB_000dd4e8;\n    }\nLAB_000df934:\n    uVar9 = c & 0xff;\n    uVar8 = uVar9 - 0x30 & 0xff;\n    if (c < 1) {\n      if (uVar9 < 0x20) {\nLAB_000dddf4:\n        pcVar10 = (char *)puVar7[1];\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n      if (uVar9 == 0x9b) {\nLAB_000df980:\n        pcVar10 = (char *)puVar7[1];\n        uVar8 = 0x6b;\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n    }\n    pcVar10 = (char *)puVar7[2];\n    iVar4 = 3;\n  }" if (parenthesized_expression "(*(char *)((int)puVar7 + 0x13) == '\x02')" ( (binary_expression "*(char *)((int)puVar7 + 0x13) == '\x02'" (pointer_expression "*(char *)((int)puVar7 + 0x13)" * (cast_expression "(char *)((int)puVar7 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar7 + 0x13)" ( (binary_expression "(int)puVar7 + 0x13" (cast_expression "(int)puVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n    uVar8 = 200;\n    if (c == -8) {\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      goto LAB_000dd4e8;\n    }\n    pcVar10 = (char *)puVar7[2];\n    if (*pcVar10 == '\n') {\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;\n      goto LAB_000df934;\n    }\n    uVar9 = c & 0xff;\n    uVar8 = uVar9 - 0x30 & 0xff;\n    if (c < 1) {\n      if (0x1f < uVar9) {\n        if (uVar9 != 0x9b) {\n          pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n          puVar7[2] = pcVar10;\n          goto LAB_000df9cc;\n        }\n        goto LAB_000df980;\n      }\n      goto LAB_000dddf4;\n    }\n    if (c != 0x1b) {\n      pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n      puVar7[2] = pcVar10;\n    }\nLAB_000df9cc:\n    iVar4 = 2;\n  }" { (expression_statement "uVar8 = 200;" (assignment_expression "uVar8 = 200" identifier = number_literal) ;) (if_statement "if (c == -8) {\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      goto LAB_000dd4e8;\n    }" if (parenthesized_expression "(c == -8)" ( (binary_expression "c == -8" identifier == number_literal) )) (compound_statement "{\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      goto LAB_000dd4e8;\n    }" { (expression_statement "*(undefined1 *)((int)puVar7 + 0x13) = 1;" (assignment_expression "*(undefined1 *)((int)puVar7 + 0x13) = 1" (pointer_expression "*(undefined1 *)((int)puVar7 + 0x13)" * (cast_expression "(undefined1 *)((int)puVar7 + 0x13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar7 + 0x13)" ( (binary_expression "(int)puVar7 + 0x13" (cast_expression "(int)puVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "undo_queue_commit();" (call_expression "undo_queue_commit()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar10 = (char *)puVar7[1];" (assignment_expression "pcVar10 = (char *)puVar7[1]" identifier = (cast_expression "(char *)puVar7[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar7[1]" identifier [ number_literal ]))) ;) (expression_statement "pcVar11 = (char *)*puVar7;" (assignment_expression "pcVar11 = (char *)*puVar7" identifier = (cast_expression "(char *)*puVar7" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar7" * identifier))) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })) (expression_statement "pcVar10 = (char *)puVar7[2];" (assignment_expression "pcVar10 = (char *)puVar7[2]" identifier = (cast_expression "(char *)puVar7[2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar7[2]" identifier [ number_literal ]))) ;) (if_statement "if (*pcVar10 == '\n') {\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;\n      goto LAB_000df934;\n    }" if (parenthesized_expression "(*pcVar10 == '\n')" ( (binary_expression "*pcVar10 == '\n'" (pointer_expression "*pcVar10" * identifier) == (char_literal "'\n'" ' escape_sequence ')) )) (compound_statement "{\n      *(undefined1 *)((int)puVar7 + 0x13) = 1;\n      undo_queue_commit();\n      if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;\n      goto LAB_000df934;\n    }" { (expression_statement "*(undefined1 *)((int)puVar7 + 0x13) = 1;" (assignment_expression "*(undefined1 *)((int)puVar7 + 0x13) = 1" (pointer_expression "*(undefined1 *)((int)puVar7 + 0x13)" * (cast_expression "(undefined1 *)((int)puVar7 + 0x13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar7 + 0x13)" ( (binary_expression "(int)puVar7 + 0x13" (cast_expression "(int)puVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "undo_queue_commit();" (call_expression "undo_queue_commit()" identifier (argument_list "()" ( ))) ;) (if_statement "if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;" if (parenthesized_expression "(*(char *)((int)puVar7 + 0x13) != '\x01')" ( (binary_expression "*(char *)((int)puVar7 + 0x13) != '\x01'" (pointer_expression "*(char *)((int)puVar7 + 0x13)" * (cast_expression "(char *)((int)puVar7 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar7 + 0x13)" ( (binary_expression "(int)puVar7 + 0x13" (cast_expression "(int)puVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\x01'" ' escape_sequence ')) )) (goto_statement "goto LAB_000dd3d4;" goto statement_identifier ;)) (goto_statement "goto LAB_000df934;" goto statement_identifier ;) })) (expression_statement "uVar9 = c & 0xff;" (assignment_expression "uVar9 = c & 0xff" identifier = (binary_expression "c & 0xff" identifier & number_literal)) ;) (expression_statement "uVar8 = uVar9 - 0x30 & 0xff;" (assignment_expression "uVar8 = uVar9 - 0x30 & 0xff" identifier = (binary_expression "uVar9 - 0x30 & 0xff" (binary_expression "uVar9 - 0x30" identifier - number_literal) & number_literal)) ;) (if_statement "if (c < 1) {\n      if (0x1f < uVar9) {\n        if (uVar9 != 0x9b) {\n          pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n          puVar7[2] = pcVar10;\n          goto LAB_000df9cc;\n        }\n        goto LAB_000df980;\n      }\n      goto LAB_000dddf4;\n    }" if (parenthesized_expression "(c < 1)" ( (binary_expression "c < 1" identifier < number_literal) )) (compound_statement "{\n      if (0x1f < uVar9) {\n        if (uVar9 != 0x9b) {\n          pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n          puVar7[2] = pcVar10;\n          goto LAB_000df9cc;\n        }\n        goto LAB_000df980;\n      }\n      goto LAB_000dddf4;\n    }" { (if_statement "if (0x1f < uVar9) {\n        if (uVar9 != 0x9b) {\n          pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n          puVar7[2] = pcVar10;\n          goto LAB_000df9cc;\n        }\n        goto LAB_000df980;\n      }" if (parenthesized_expression "(0x1f < uVar9)" ( (binary_expression "0x1f < uVar9" number_literal < identifier) )) (compound_statement "{\n        if (uVar9 != 0x9b) {\n          pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n          puVar7[2] = pcVar10;\n          goto LAB_000df9cc;\n        }\n        goto LAB_000df980;\n      }" { (if_statement "if (uVar9 != 0x9b) {\n          pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n          puVar7[2] = pcVar10;\n          goto LAB_000df9cc;\n        }" if (parenthesized_expression "(uVar9 != 0x9b)" ( (binary_expression "uVar9 != 0x9b" identifier != number_literal) )) (compound_statement "{\n          pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n          puVar7[2] = pcVar10;\n          goto LAB_000df9cc;\n        }" { (expression_statement "pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);" (assignment_expression "pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20)" identifier = (call_expression "yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20)" identifier (argument_list "(pcVar10,pcVar10,0,1,in_stack_ffffff20)" ( identifier , identifier , number_literal , number_literal , identifier )))) ;) (expression_statement "puVar7[2] = pcVar10;" (assignment_expression "puVar7[2] = pcVar10" (subscript_expression "puVar7[2]" identifier [ number_literal ]) = identifier) ;) (goto_statement "goto LAB_000df9cc;" goto statement_identifier ;) })) (goto_statement "goto LAB_000df980;" goto statement_identifier ;) })) (goto_statement "goto LAB_000dddf4;" goto statement_identifier ;) })) (if_statement "if (c != 0x1b) {\n      pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n      puVar7[2] = pcVar10;\n    }" if (parenthesized_expression "(c != 0x1b)" ( (binary_expression "c != 0x1b" identifier != number_literal) )) (compound_statement "{\n      pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);\n      puVar7[2] = pcVar10;\n    }" { (expression_statement "pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20);" (assignment_expression "pcVar10 = yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20)" identifier = (call_expression "yank_delete(pcVar10,pcVar10,0,1,in_stack_ffffff20)" identifier (argument_list "(pcVar10,pcVar10,0,1,in_stack_ffffff20)" ( identifier , identifier , number_literal , number_literal , identifier )))) ;) (expression_statement "puVar7[2] = pcVar10;" (assignment_expression "puVar7[2] = pcVar10" (subscript_expression "puVar7[2]" identifier [ number_literal ]) = identifier) ;) })) (labeled_statement "LAB_000df9cc:\n    iVar4 = 2;" statement_identifier : (expression_statement "iVar4 = 2;" (assignment_expression "iVar4 = 2" identifier = number_literal) ;)) }) (else_clause "else {\n    if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;\n    if (c == -8) {\n      *(undefined1 *)((int)puVar7 + 0x13) = 2;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      uVar8 = 200;\n      goto LAB_000dd4e8;\n    }\nLAB_000df934:\n    uVar9 = c & 0xff;\n    uVar8 = uVar9 - 0x30 & 0xff;\n    if (c < 1) {\n      if (uVar9 < 0x20) {\nLAB_000dddf4:\n        pcVar10 = (char *)puVar7[1];\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n      if (uVar9 == 0x9b) {\nLAB_000df980:\n        pcVar10 = (char *)puVar7[1];\n        uVar8 = 0x6b;\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n    }\n    pcVar10 = (char *)puVar7[2];\n    iVar4 = 3;\n  }" else (compound_statement "{\n    if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;\n    if (c == -8) {\n      *(undefined1 *)((int)puVar7 + 0x13) = 2;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      uVar8 = 200;\n      goto LAB_000dd4e8;\n    }\nLAB_000df934:\n    uVar9 = c & 0xff;\n    uVar8 = uVar9 - 0x30 & 0xff;\n    if (c < 1) {\n      if (uVar9 < 0x20) {\nLAB_000dddf4:\n        pcVar10 = (char *)puVar7[1];\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n      if (uVar9 == 0x9b) {\nLAB_000df980:\n        pcVar10 = (char *)puVar7[1];\n        uVar8 = 0x6b;\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n    }\n    pcVar10 = (char *)puVar7[2];\n    iVar4 = 3;\n  }" { (if_statement "if (*(char *)((int)puVar7 + 0x13) != '\x01') goto LAB_000dd3d4;" if (parenthesized_expression "(*(char *)((int)puVar7 + 0x13) != '\x01')" ( (binary_expression "*(char *)((int)puVar7 + 0x13) != '\x01'" (pointer_expression "*(char *)((int)puVar7 + 0x13)" * (cast_expression "(char *)((int)puVar7 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar7 + 0x13)" ( (binary_expression "(int)puVar7 + 0x13" (cast_expression "(int)puVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\x01'" ' escape_sequence ')) )) (goto_statement "goto LAB_000dd3d4;" goto statement_identifier ;)) (if_statement "if (c == -8) {\n      *(undefined1 *)((int)puVar7 + 0x13) = 2;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      uVar8 = 200;\n      goto LAB_000dd4e8;\n    }" if (parenthesized_expression "(c == -8)" ( (binary_expression "c == -8" identifier == number_literal) )) (compound_statement "{\n      *(undefined1 *)((int)puVar7 + 0x13) = 2;\n      undo_queue_commit();\n      pcVar10 = (char *)puVar7[1];\n      pcVar11 = (char *)*puVar7;\n      uVar8 = 200;\n      goto LAB_000dd4e8;\n    }" { (expression_statement "*(undefined1 *)((int)puVar7 + 0x13) = 2;" (assignment_expression "*(undefined1 *)((int)puVar7 + 0x13) = 2" (pointer_expression "*(undefined1 *)((int)puVar7 + 0x13)" * (cast_expression "(undefined1 *)((int)puVar7 + 0x13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar7 + 0x13)" ( (binary_expression "(int)puVar7 + 0x13" (cast_expression "(int)puVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "undo_queue_commit();" (call_expression "undo_queue_commit()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar10 = (char *)puVar7[1];" (assignment_expression "pcVar10 = (char *)puVar7[1]" identifier = (cast_expression "(char *)puVar7[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar7[1]" identifier [ number_literal ]))) ;) (expression_statement "pcVar11 = (char *)*puVar7;" (assignment_expression "pcVar11 = (char *)*puVar7" identifier = (cast_expression "(char *)*puVar7" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar7" * identifier))) ;) (expression_statement "uVar8 = 200;" (assignment_expression "uVar8 = 200" identifier = number_literal) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })) (labeled_statement "LAB_000df934:\n    uVar9 = c & 0xff;" statement_identifier : (expression_statement "uVar9 = c & 0xff;" (assignment_expression "uVar9 = c & 0xff" identifier = (binary_expression "c & 0xff" identifier & number_literal)) ;)) (expression_statement "uVar8 = uVar9 - 0x30 & 0xff;" (assignment_expression "uVar8 = uVar9 - 0x30 & 0xff" identifier = (binary_expression "uVar9 - 0x30 & 0xff" (binary_expression "uVar9 - 0x30" identifier - number_literal) & number_literal)) ;) (if_statement "if (c < 1) {\n      if (uVar9 < 0x20) {\nLAB_000dddf4:\n        pcVar10 = (char *)puVar7[1];\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n      if (uVar9 == 0x9b) {\nLAB_000df980:\n        pcVar10 = (char *)puVar7[1];\n        uVar8 = 0x6b;\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n    }" if (parenthesized_expression "(c < 1)" ( (binary_expression "c < 1" identifier < number_literal) )) (compound_statement "{\n      if (uVar9 < 0x20) {\nLAB_000dddf4:\n        pcVar10 = (char *)puVar7[1];\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n      if (uVar9 == 0x9b) {\nLAB_000df980:\n        pcVar10 = (char *)puVar7[1];\n        uVar8 = 0x6b;\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }\n    }" { (if_statement "if (uVar9 < 0x20) {\nLAB_000dddf4:\n        pcVar10 = (char *)puVar7[1];\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }" if (parenthesized_expression "(uVar9 < 0x20)" ( (binary_expression "uVar9 < 0x20" identifier < number_literal) )) (compound_statement "{\nLAB_000dddf4:\n        pcVar10 = (char *)puVar7[1];\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }" { (labeled_statement "LAB_000dddf4:\n        pcVar10 = (char *)puVar7[1];" statement_identifier : (expression_statement "pcVar10 = (char *)puVar7[1];" (assignment_expression "pcVar10 = (char *)puVar7[1]" identifier = (cast_expression "(char *)puVar7[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar7[1]" identifier [ number_literal ]))) ;)) (expression_statement "pcVar11 = (char *)*puVar7;" (assignment_expression "pcVar11 = (char *)*puVar7" identifier = (cast_expression "(char *)*puVar7" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar7" * identifier))) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })) (if_statement "if (uVar9 == 0x9b) {\nLAB_000df980:\n        pcVar10 = (char *)puVar7[1];\n        uVar8 = 0x6b;\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }" if (parenthesized_expression "(uVar9 == 0x9b)" ( (binary_expression "uVar9 == 0x9b" identifier == number_literal) )) (compound_statement "{\nLAB_000df980:\n        pcVar10 = (char *)puVar7[1];\n        uVar8 = 0x6b;\n        pcVar11 = (char *)*puVar7;\n        goto LAB_000dd4e8;\n      }" { (labeled_statement "LAB_000df980:\n        pcVar10 = (char *)puVar7[1];" statement_identifier : (expression_statement "pcVar10 = (char *)puVar7[1];" (assignment_expression "pcVar10 = (char *)puVar7[1]" identifier = (cast_expression "(char *)puVar7[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar7[1]" identifier [ number_literal ]))) ;)) (expression_statement "uVar8 = 0x6b;" (assignment_expression "uVar8 = 0x6b" identifier = number_literal) ;) (expression_statement "pcVar11 = (char *)*puVar7;" (assignment_expression "pcVar11 = (char *)*puVar7" identifier = (cast_expression "(char *)*puVar7" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar7" * identifier))) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })) })) (expression_statement "pcVar10 = (char *)puVar7[2];" (assignment_expression "pcVar10 = (char *)puVar7[2]" identifier = (cast_expression "(char *)puVar7[2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar7[2]" identifier [ number_literal ]))) ;) (expression_statement "iVar4 = 3;" (assignment_expression "iVar4 = 3" identifier = number_literal) ;) }))) (expression_statement "pcVar6 = char_insert(pcVar10,(char)c,iVar4);" (assignment_expression "pcVar6 = char_insert(pcVar10,(char)c,iVar4)" identifier = (call_expression "char_insert(pcVar10,(char)c,iVar4)" identifier (argument_list "(pcVar10,(char)c,iVar4)" ( identifier , (cast_expression "(char)c" ( (type_descriptor "char" primitive_type) ) identifier) , identifier )))) ;) (expression_statement "pcVar10 = (char *)puVar7[1];" (assignment_expression "pcVar10 = (char *)puVar7[1]" identifier = (cast_expression "(char *)puVar7[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar7[1]" identifier [ number_literal ]))) ;) (expression_statement "pcVar11 = (char *)*puVar7;" (assignment_expression "pcVar11 = (char *)*puVar7" identifier = (cast_expression "(char *)*puVar7" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar7" * identifier))) ;) (expression_statement "puVar7[2] = pcVar6;" (assignment_expression "puVar7[2] = pcVar6" (subscript_expression "puVar7[2]" identifier [ number_literal ]) = identifier) ;) (labeled_statement "LAB_000dd4e8:\n  if (pcVar11 == pcVar10) goto LAB_000dd6ac;" statement_identifier : (if_statement "if (pcVar11 == pcVar10) goto LAB_000dd6ac;" if (parenthesized_expression "(pcVar11 == pcVar10)" ( (binary_expression "pcVar11 == pcVar10" identifier == identifier) )) (goto_statement "goto LAB_000dd6ac;" goto statement_identifier ;))) (expression_statement "pcVar11 = (char *)puVar7[2];" (assignment_expression "pcVar11 = (char *)puVar7[2]" identifier = (cast_expression "(char *)puVar7[2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar7[2]" identifier [ number_literal ]))) ;) (do_statement "do {\n    if (pcVar11 != pcVar10) {\n      pcVar10 = bound_dot(pcVar11);\n      puVar7[2] = pcVar10;\n    }\n    if (pcVar10 < (char *)puVar7[0x5a]) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\njoined_r0x000dd690:\n      if (iVar4 != 0) {\n        uVar5 = puVar7[0x58];\n        puVar7[0x58] = pcVar10;\n        puVar7[0x59] = uVar5;\n        pcVar11 = prev_line(pcVar10);\n        pcVar11 = prev_line(pcVar11);\n        c = (int)(PTR_LAB_0012abe4 + -0x652c);\n        puVar7[0x5a] = pcVar11;\n        pcVar11 = next_line(pcVar10);\n        pcVar11 = next_line(pcVar11);\n        puVar7[0x5b] = pcVar11;\n      }\n    }\n    else if ((char *)puVar7[0x5b] < pcVar10) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar8 = (uint)(uVar8 < 10);\n    if (uVar8 == 0) {\n      puVar7[8] = 0;\n    }\n    if (((*pcVar10 == '\n') && (pcVar11 = begin_line(pcVar10), 0 < (int)pcVar10 - (int)pcVar11)) &&\n       (*(char *)((int)puVar7 + 0x13) == '\0')) {\n      puVar7[2] = pcVar10 + -1;\n    }\n    if (iVar3 == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    char_insert(pcVar10,'\n',0);\n    pcVar11 = (char *)*puVar7;\n    pcVar10 = (char *)puVar7[1];\n    puVar7[2] = pcVar11;\n  } while( true );" do (compound_statement "{\n    if (pcVar11 != pcVar10) {\n      pcVar10 = bound_dot(pcVar11);\n      puVar7[2] = pcVar10;\n    }\n    if (pcVar10 < (char *)puVar7[0x5a]) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\njoined_r0x000dd690:\n      if (iVar4 != 0) {\n        uVar5 = puVar7[0x58];\n        puVar7[0x58] = pcVar10;\n        puVar7[0x59] = uVar5;\n        pcVar11 = prev_line(pcVar10);\n        pcVar11 = prev_line(pcVar11);\n        c = (int)(PTR_LAB_0012abe4 + -0x652c);\n        puVar7[0x5a] = pcVar11;\n        pcVar11 = next_line(pcVar10);\n        pcVar11 = next_line(pcVar11);\n        puVar7[0x5b] = pcVar11;\n      }\n    }\n    else if ((char *)puVar7[0x5b] < pcVar10) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar8 = (uint)(uVar8 < 10);\n    if (uVar8 == 0) {\n      puVar7[8] = 0;\n    }\n    if (((*pcVar10 == '\n') && (pcVar11 = begin_line(pcVar10), 0 < (int)pcVar10 - (int)pcVar11)) &&\n       (*(char *)((int)puVar7 + 0x13) == '\0')) {\n      puVar7[2] = pcVar10 + -1;\n    }\n    if (iVar3 == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    char_insert(pcVar10,'\n',0);\n    pcVar11 = (char *)*puVar7;\n    pcVar10 = (char *)puVar7[1];\n    puVar7[2] = pcVar11;\n  }" { (if_statement "if (pcVar11 != pcVar10) {\n      pcVar10 = bound_dot(pcVar11);\n      puVar7[2] = pcVar10;\n    }" if (parenthesized_expression "(pcVar11 != pcVar10)" ( (binary_expression "pcVar11 != pcVar10" identifier != identifier) )) (compound_statement "{\n      pcVar10 = bound_dot(pcVar11);\n      puVar7[2] = pcVar10;\n    }" { (expression_statement "pcVar10 = bound_dot(pcVar11);" (assignment_expression "pcVar10 = bound_dot(pcVar11)" identifier = (call_expression "bound_dot(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier )))) ;) (expression_statement "puVar7[2] = pcVar10;" (assignment_expression "puVar7[2] = pcVar10" (subscript_expression "puVar7[2]" identifier [ number_literal ]) = identifier) ;) })) (if_statement "if (pcVar10 < (char *)puVar7[0x5a]) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\njoined_r0x000dd690:\n      if (iVar4 != 0) {\n        uVar5 = puVar7[0x58];\n        puVar7[0x58] = pcVar10;\n        puVar7[0x59] = uVar5;\n        pcVar11 = prev_line(pcVar10);\n        pcVar11 = prev_line(pcVar11);\n        c = (int)(PTR_LAB_0012abe4 + -0x652c);\n        puVar7[0x5a] = pcVar11;\n        pcVar11 = next_line(pcVar10);\n        pcVar11 = next_line(pcVar11);\n        puVar7[0x5b] = pcVar11;\n      }\n    }\n    else if ((char *)puVar7[0x5b] < pcVar10) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\n      goto joined_r0x000dd690;\n    }" if (parenthesized_expression "(pcVar10 < (char *)puVar7[0x5a])" ( (binary_expression "pcVar10 < (char *)puVar7[0x5a]" identifier < (cast_expression "(char *)puVar7[0x5a]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar7[0x5a]" identifier [ number_literal ]))) )) (compound_statement "{\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\njoined_r0x000dd690:\n      if (iVar4 != 0) {\n        uVar5 = puVar7[0x58];\n        puVar7[0x58] = pcVar10;\n        puVar7[0x59] = uVar5;\n        pcVar11 = prev_line(pcVar10);\n        pcVar11 = prev_line(pcVar11);\n        c = (int)(PTR_LAB_0012abe4 + -0x652c);\n        puVar7[0x5a] = pcVar11;\n        pcVar11 = next_line(pcVar10);\n        pcVar11 = next_line(pcVar11);\n        puVar7[0x5b] = pcVar11;\n      }\n    }" { (expression_statement "iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);" (assignment_expression "iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff)" identifier = (call_expression "(*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff)" (parenthesized_expression "(*(code *)PTR_strchr_0012af54)" ( (pointer_expression "*(code *)PTR_strchr_0012af54" * (cast_expression "(code *)PTR_strchr_0012af54" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_DAT_0012abe0 + -0x7fed,c & 0xff)" ( (binary_expression "PTR_DAT_0012abe0 + -0x7fed" identifier + number_literal) , (binary_expression "c & 0xff" identifier & number_literal) )))) ;) (labeled_statement "joined_r0x000dd690:\n      if (iVar4 != 0) {\n        uVar5 = puVar7[0x58];\n        puVar7[0x58] = pcVar10;\n        puVar7[0x59] = uVar5;\n        pcVar11 = prev_line(pcVar10);\n        pcVar11 = prev_line(pcVar11);\n        c = (int)(PTR_LAB_0012abe4 + -0x652c);\n        puVar7[0x5a] = pcVar11;\n        pcVar11 = next_line(pcVar10);\n        pcVar11 = next_line(pcVar11);\n        puVar7[0x5b] = pcVar11;\n      }" statement_identifier : (if_statement "if (iVar4 != 0) {\n        uVar5 = puVar7[0x58];\n        puVar7[0x58] = pcVar10;\n        puVar7[0x59] = uVar5;\n        pcVar11 = prev_line(pcVar10);\n        pcVar11 = prev_line(pcVar11);\n        c = (int)(PTR_LAB_0012abe4 + -0x652c);\n        puVar7[0x5a] = pcVar11;\n        pcVar11 = next_line(pcVar10);\n        pcVar11 = next_line(pcVar11);\n        puVar7[0x5b] = pcVar11;\n      }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n        uVar5 = puVar7[0x58];\n        puVar7[0x58] = pcVar10;\n        puVar7[0x59] = uVar5;\n        pcVar11 = prev_line(pcVar10);\n        pcVar11 = prev_line(pcVar11);\n        c = (int)(PTR_LAB_0012abe4 + -0x652c);\n        puVar7[0x5a] = pcVar11;\n        pcVar11 = next_line(pcVar10);\n        pcVar11 = next_line(pcVar11);\n        puVar7[0x5b] = pcVar11;\n      }" { (expression_statement "uVar5 = puVar7[0x58];" (assignment_expression "uVar5 = puVar7[0x58]" identifier = (subscript_expression "puVar7[0x58]" identifier [ number_literal ])) ;) (expression_statement "puVar7[0x58] = pcVar10;" (assignment_expression "puVar7[0x58] = pcVar10" (subscript_expression "puVar7[0x58]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar7[0x59] = uVar5;" (assignment_expression "puVar7[0x59] = uVar5" (subscript_expression "puVar7[0x59]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pcVar11 = prev_line(pcVar10);" (assignment_expression "pcVar11 = prev_line(pcVar10)" identifier = (call_expression "prev_line(pcVar10)" identifier (argument_list "(pcVar10)" ( identifier )))) ;) (expression_statement "pcVar11 = prev_line(pcVar11);" (assignment_expression "pcVar11 = prev_line(pcVar11)" identifier = (call_expression "prev_line(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier )))) ;) (expression_statement "c = (int)(PTR_LAB_0012abe4 + -0x652c);" (assignment_expression "c = (int)(PTR_LAB_0012abe4 + -0x652c)" identifier = (cast_expression "(int)(PTR_LAB_0012abe4 + -0x652c)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(PTR_LAB_0012abe4 + -0x652c)" ( (binary_expression "PTR_LAB_0012abe4 + -0x652c" identifier + number_literal) )))) ;) (expression_statement "puVar7[0x5a] = pcVar11;" (assignment_expression "puVar7[0x5a] = pcVar11" (subscript_expression "puVar7[0x5a]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pcVar11 = next_line(pcVar10);" (assignment_expression "pcVar11 = next_line(pcVar10)" identifier = (call_expression "next_line(pcVar10)" identifier (argument_list "(pcVar10)" ( identifier )))) ;) (expression_statement "pcVar11 = next_line(pcVar11);" (assignment_expression "pcVar11 = next_line(pcVar11)" identifier = (call_expression "next_line(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier )))) ;) (expression_statement "puVar7[0x5b] = pcVar11;" (assignment_expression "puVar7[0x5b] = pcVar11" (subscript_expression "puVar7[0x5b]" identifier [ number_literal ]) = identifier) ;) }))) }) (else_clause "else if ((char *)puVar7[0x5b] < pcVar10) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\n      goto joined_r0x000dd690;\n    }" else (if_statement "if ((char *)puVar7[0x5b] < pcVar10) {\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\n      goto joined_r0x000dd690;\n    }" if (parenthesized_expression "((char *)puVar7[0x5b] < pcVar10)" ( (binary_expression "(char *)puVar7[0x5b] < pcVar10" (cast_expression "(char *)puVar7[0x5b]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar7[0x5b]" identifier [ number_literal ])) < identifier) )) (compound_statement "{\n      iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);\n      goto joined_r0x000dd690;\n    }" { (expression_statement "iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff);" (assignment_expression "iVar4 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff)" identifier = (call_expression "(*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,c & 0xff)" (parenthesized_expression "(*(code *)PTR_strchr_0012af54)" ( (pointer_expression "*(code *)PTR_strchr_0012af54" * (cast_expression "(code *)PTR_strchr_0012af54" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_DAT_0012abe0 + -0x7fed,c & 0xff)" ( (binary_expression "PTR_DAT_0012abe0 + -0x7fed" identifier + number_literal) , (binary_expression "c & 0xff" identifier & number_literal) )))) ;) (goto_statement "goto joined_r0x000dd690;" goto statement_identifier ;) })))) (expression_statement "uVar8 = (uint)(uVar8 < 10);" (assignment_expression "uVar8 = (uint)(uVar8 < 10)" identifier = (call_expression "(uint)(uVar8 < 10)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar8 < 10)" ( (binary_expression "uVar8 < 10" identifier < number_literal) )))) ;) (if_statement "if (uVar8 == 0) {\n      puVar7[8] = 0;\n    }" if (parenthesized_expression "(uVar8 == 0)" ( (binary_expression "uVar8 == 0" identifier == number_literal) )) (compound_statement "{\n      puVar7[8] = 0;\n    }" { (expression_statement "puVar7[8] = 0;" (assignment_expression "puVar7[8] = 0" (subscript_expression "puVar7[8]" identifier [ number_literal ]) = number_literal) ;) })) (if_statement "if (((*pcVar10 == '\n') && (pcVar11 = begin_line(pcVar10), 0 < (int)pcVar10 - (int)pcVar11)) &&\n       (*(char *)((int)puVar7 + 0x13) == '\0')) {\n      puVar7[2] = pcVar10 + -1;\n    }" if (parenthesized_expression "(((*pcVar10 == '\n') && (pcVar11 = begin_line(pcVar10), 0 < (int)pcVar10 - (int)pcVar11)) &&\n       (*(char *)((int)puVar7 + 0x13) == '\0'))" ( (binary_expression "((*pcVar10 == '\n') && (pcVar11 = begin_line(pcVar10), 0 < (int)pcVar10 - (int)pcVar11)) &&\n       (*(char *)((int)puVar7 + 0x13) == '\0')" (parenthesized_expression "((*pcVar10 == '\n') && (pcVar11 = begin_line(pcVar10), 0 < (int)pcVar10 - (int)pcVar11))" ( (binary_expression "(*pcVar10 == '\n') && (pcVar11 = begin_line(pcVar10), 0 < (int)pcVar10 - (int)pcVar11)" (parenthesized_expression "(*pcVar10 == '\n')" ( (binary_expression "*pcVar10 == '\n'" (pointer_expression "*pcVar10" * identifier) == (char_literal "'\n'" ' escape_sequence ')) )) && (parenthesized_expression "(pcVar11 = begin_line(pcVar10), 0 < (int)pcVar10 - (int)pcVar11)" ( (comma_expression "pcVar11 = begin_line(pcVar10), 0 < (int)pcVar10 - (int)pcVar11" (assignment_expression "pcVar11 = begin_line(pcVar10)" identifier = (call_expression "begin_line(pcVar10)" identifier (argument_list "(pcVar10)" ( identifier )))) , (binary_expression "0 < (int)pcVar10 - (int)pcVar11" number_literal < (binary_expression "(int)pcVar10 - (int)pcVar11" (cast_expression "(int)pcVar10" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pcVar11" ( (type_descriptor "int" primitive_type) ) identifier)))) ))) )) && (parenthesized_expression "(*(char *)((int)puVar7 + 0x13) == '\0')" ( (binary_expression "*(char *)((int)puVar7 + 0x13) == '\0'" (pointer_expression "*(char *)((int)puVar7 + 0x13)" * (cast_expression "(char *)((int)puVar7 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar7 + 0x13)" ( (binary_expression "(int)puVar7 + 0x13" (cast_expression "(int)puVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n      puVar7[2] = pcVar10 + -1;\n    }" { (expression_statement "puVar7[2] = pcVar10 + -1;" (assignment_expression "puVar7[2] = pcVar10 + -1" (subscript_expression "puVar7[2]" identifier [ number_literal ]) = (binary_expression "pcVar10 + -1" identifier + number_literal)) ;) })) (if_statement "if (iVar3 == *(int *)puVar2) {\n      return;\n    }" if (parenthesized_expression "(iVar3 == *(int *)puVar2)" ( (binary_expression "iVar3 == *(int *)puVar2" identifier == (pointer_expression "*(int *)puVar2" * (cast_expression "(int *)puVar2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "(*(code *)PTR___stack_chk_fail_0012b0c8)();" (call_expression "(*(code *)PTR___stack_chk_fail_0012b0c8)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0012b0c8)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0012b0c8" * (cast_expression "(code *)PTR___stack_chk_fail_0012b0c8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (labeled_statement "LAB_000dd6ac:\n    char_insert(pcVar10,'\n',0);" statement_identifier : (expression_statement "char_insert(pcVar10,'\n',0);" (call_expression "char_insert(pcVar10,'\n',0)" identifier (argument_list "(pcVar10,'\n',0)" ( identifier , (char_literal "'\n'" ' escape_sequence ') , number_literal ))) ;)) (expression_statement "pcVar11 = (char *)*puVar7;" (assignment_expression "pcVar11 = (char *)*puVar7" identifier = (cast_expression "(char *)*puVar7" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar7" * identifier))) ;) (expression_statement "pcVar10 = (char *)puVar7[1];" (assignment_expression "pcVar10 = (char *)puVar7[1]" identifier = (cast_expression "(char *)puVar7[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar7[1]" identifier [ number_literal ]))) ;) (expression_statement "puVar7[2] = pcVar11;" (assignment_expression "puVar7[2] = pcVar11" (subscript_expression "puVar7[2]" identifier [ number_literal ]) = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit "void FUN_000dd2a8(undefined *param_1)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 *puVar5;\n  uint uVar6;\n  uint uVar7;\n  undefined *puVar8;\n  char *pcVar9;\n  char *pcVar10;\n  uint local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined1 auStack_ac [128];\n  int local_2c;\n  \n  puVar2 = PTR___stack_chk_guard_0012b14c;\n  puVar1 = PTR_DAT_0012a304;\n  puVar8 = param_1 + 0xb;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_2c = *(int *)PTR___stack_chk_guard_0012b14c;\n  FUN_000db254();\n  puVar5 = *(undefined4 **)puVar1;\n  if (((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)) {\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }\n  if (puVar8 < (undefined *)0x8b) {\n                    \n                    \n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }\n  local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff;\n  FUN_000d8c6c(auStack_ac,&local_b8);\n  FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac);\n  pcVar9 = (char *)puVar5[1];\n  pcVar10 = (char *)*puVar5;\n  uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff;\n  puVar5[0x20] = 0x1a;\n  *(undefined1 *)((int)puVar5 + 0x5e) = 0;\nLAB_000dd4e8:\n  if (pcVar10 == pcVar9) goto LAB_000dd6ac;\n  pcVar10 = (char *)puVar5[2];\n  do {\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  } while( true );\n}\n\n" (function_definition "void FUN_000dd2a8(undefined *param_1)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 *puVar5;\n  uint uVar6;\n  uint uVar7;\n  undefined *puVar8;\n  char *pcVar9;\n  char *pcVar10;\n  uint local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined1 auStack_ac [128];\n  int local_2c;\n  \n  puVar2 = PTR___stack_chk_guard_0012b14c;\n  puVar1 = PTR_DAT_0012a304;\n  puVar8 = param_1 + 0xb;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_2c = *(int *)PTR___stack_chk_guard_0012b14c;\n  FUN_000db254();\n  puVar5 = *(undefined4 **)puVar1;\n  if (((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)) {\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }\n  if (puVar8 < (undefined *)0x8b) {\n                    \n                    \n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }\n  local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff;\n  FUN_000d8c6c(auStack_ac,&local_b8);\n  FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac);\n  pcVar9 = (char *)puVar5[1];\n  pcVar10 = (char *)*puVar5;\n  uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff;\n  puVar5[0x20] = 0x1a;\n  *(undefined1 *)((int)puVar5 + 0x5e) = 0;\nLAB_000dd4e8:\n  if (pcVar10 == pcVar9) goto LAB_000dd6ac;\n  pcVar10 = (char *)puVar5[2];\n  do {\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  } while( true );\n}" primitive_type (function_declarator "FUN_000dd2a8(undefined *param_1)" identifier (parameter_list "(undefined *param_1)" ( (parameter_declaration "undefined *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) ))) (compound_statement "{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 *puVar5;\n  uint uVar6;\n  uint uVar7;\n  undefined *puVar8;\n  char *pcVar9;\n  char *pcVar10;\n  uint local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined1 auStack_ac [128];\n  int local_2c;\n  \n  puVar2 = PTR___stack_chk_guard_0012b14c;\n  puVar1 = PTR_DAT_0012a304;\n  puVar8 = param_1 + 0xb;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_2c = *(int *)PTR___stack_chk_guard_0012b14c;\n  FUN_000db254();\n  puVar5 = *(undefined4 **)puVar1;\n  if (((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)) {\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }\n  if (puVar8 < (undefined *)0x8b) {\n                    \n                    \n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }\n  local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff;\n  FUN_000d8c6c(auStack_ac,&local_b8);\n  FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac);\n  pcVar9 = (char *)puVar5[1];\n  pcVar10 = (char *)*puVar5;\n  uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff;\n  puVar5[0x20] = 0x1a;\n  *(undefined1 *)((int)puVar5 + 0x5e) = 0;\nLAB_000dd4e8:\n  if (pcVar10 == pcVar9) goto LAB_000dd6ac;\n  pcVar10 = (char *)puVar5[2];\n  do {\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  } while( true );\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (declaration "undefined4 *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "uint local_b8;" type_identifier identifier ;) (declaration "undefined4 local_b4;" type_identifier identifier ;) (declaration "undefined4 local_b0;" type_identifier identifier ;) (declaration "undefined1 auStack_ac [128];" type_identifier (array_declarator "auStack_ac [128]" identifier [ number_literal ]) ;) (declaration "int local_2c;" primitive_type identifier ;) (expression_statement "puVar2 = PTR___stack_chk_guard_0012b14c;" (assignment_expression "puVar2 = PTR___stack_chk_guard_0012b14c" identifier = identifier) ;) (expression_statement "puVar1 = PTR_DAT_0012a304;" (assignment_expression "puVar1 = PTR_DAT_0012a304" identifier = identifier) ;) (expression_statement "puVar8 = param_1 + 0xb;" (assignment_expression "puVar8 = param_1 + 0xb" identifier = (binary_expression "param_1 + 0xb" identifier + number_literal)) ;) (expression_statement "local_b8 = 0;" (assignment_expression "local_b8 = 0" identifier = number_literal) ;) (expression_statement "local_b4 = 0;" (assignment_expression "local_b4 = 0" identifier = number_literal) ;) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_0012b14c;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_0012b14c" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0012b14c" * (cast_expression "(int *)PTR___stack_chk_guard_0012b14c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "FUN_000db254();" (call_expression "FUN_000db254()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar5 = *(undefined4 **)puVar1;" (assignment_expression "puVar5 = *(undefined4 **)puVar1" identifier = (pointer_expression "*(undefined4 **)puVar1" * (cast_expression "(undefined4 **)puVar1" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (if_statement "if (((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)) {\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }" if (parenthesized_expression "(((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0))" ( (binary_expression "((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)" (parenthesized_expression "((undefined *)0x9 < puVar8)" ( (binary_expression "(undefined *)0x9 < puVar8" (cast_expression "(undefined *)0x9" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < identifier) )) || (parenthesized_expression "((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)" ( (binary_expression "(1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0" (parenthesized_expression "(1 << ((uint)puVar8 & 0x1f) & 0x3f7U)" ( (binary_expression "1 << ((uint)puVar8 & 0x1f) & 0x3f7U" (binary_expression "1 << ((uint)puVar8 & 0x1f)" number_literal << (parenthesized_expression "((uint)puVar8 & 0x1f)" ( (binary_expression "(uint)puVar8 & 0x1f" (cast_expression "(uint)puVar8" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }" { (if_statement "if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }" if (parenthesized_expression "(*(char *)((int)puVar5 + 0x13) == '\x02')" ( (binary_expression "*(char *)((int)puVar5 + 0x13) == '\x02'" (pointer_expression "*(char *)((int)puVar5 + 0x13)" * (cast_expression "(char *)((int)puVar5 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }" { (expression_statement "uVar6 = 200;" (assignment_expression "uVar6 = 200" identifier = number_literal) ;) (if_statement "if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }" if (parenthesized_expression "(param_1 == (undefined *)0xfffffff8)" ( (binary_expression "param_1 == (undefined *)0xfffffff8" identifier == (cast_expression "(undefined *)0xfffffff8" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }" { (expression_statement "*(undefined1 *)((int)puVar5 + 0x13) = 1;" (assignment_expression "*(undefined1 *)((int)puVar5 + 0x13) = 1" (pointer_expression "*(undefined1 *)((int)puVar5 + 0x13)" * (cast_expression "(undefined1 *)((int)puVar5 + 0x13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000d8b3c();" (call_expression "FUN_000d8b3c()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })) (expression_statement "pcVar9 = (char *)puVar5[2];" (assignment_expression "pcVar9 = (char *)puVar5[2]" identifier = (cast_expression "(char *)puVar5[2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[2]" identifier [ number_literal ]))) ;) (if_statement "if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }" if (parenthesized_expression "(*pcVar9 != '\n')" ( (binary_expression "*pcVar9 != '\n'" (pointer_expression "*pcVar9" * identifier) != (char_literal "'\n'" ' escape_sequence ')) )) (compound_statement "{\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }" { (expression_statement "uVar7 = (uint)param_1 & 0xff;" (assignment_expression "uVar7 = (uint)param_1 & 0xff" identifier = (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "uVar6 = uVar7 - 0x30 & 0xff;" (assignment_expression "uVar6 = uVar7 - 0x30 & 0xff" identifier = (binary_expression "uVar7 - 0x30 & 0xff" (binary_expression "uVar7 - 0x30" identifier - number_literal) & number_literal)) ;) (if_statement "if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" if (parenthesized_expression "((int)param_1 < 1)" ( (binary_expression "(int)param_1 < 1" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" { (if_statement "if (uVar7 < 0x20) goto LAB_000dddf4;" if (parenthesized_expression "(uVar7 < 0x20)" ( (binary_expression "uVar7 < 0x20" identifier < number_literal) )) (goto_statement "goto LAB_000dddf4;" goto statement_identifier ;)) (if_statement "if (uVar7 == 0x9b) goto LAB_000df980;" if (parenthesized_expression "(uVar7 == 0x9b)" ( (binary_expression "uVar7 == 0x9b" identifier == number_literal) )) (goto_statement "goto LAB_000df980;" goto statement_identifier ;)) (expression_statement "pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);" (assignment_expression "pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1)" identifier = (cast_expression "(char *)FUN_000db670(pcVar9,pcVar9,0,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000db670(pcVar9,pcVar9,0,1)" identifier (argument_list "(pcVar9,pcVar9,0,1)" ( identifier , identifier , number_literal , number_literal ))))) ;) (expression_statement "puVar5[2] = pcVar9;" (assignment_expression "puVar5[2] = pcVar9" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = identifier) ;) }) (else_clause "else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" else (if_statement "if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" if (parenthesized_expression "(param_1 != (undefined *)0x1b)" ( (binary_expression "param_1 != (undefined *)0x1b" identifier != (cast_expression "(undefined *)0x1b" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" { (expression_statement "pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);" (assignment_expression "pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1)" identifier = (cast_expression "(char *)FUN_000db670(pcVar9,pcVar9,0,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000db670(pcVar9,pcVar9,0,1)" identifier (argument_list "(pcVar9,pcVar9,0,1)" ( identifier , identifier , number_literal , number_literal ))))) ;) (expression_statement "puVar5[2] = pcVar9;" (assignment_expression "puVar5[2] = pcVar9" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = identifier) ;) })))) (expression_statement "uVar4 = 2;" (assignment_expression "uVar4 = 2" identifier = number_literal) ;) (goto_statement "goto LAB_000df948;" goto statement_identifier ;) })) (expression_statement "*(undefined1 *)((int)puVar5 + 0x13) = 1;" (assignment_expression "*(undefined1 *)((int)puVar5 + 0x13) = 1" (pointer_expression "*(undefined1 *)((int)puVar5 + 0x13)" * (cast_expression "(undefined1 *)((int)puVar5 + 0x13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000d8b3c();" (call_expression "FUN_000d8b3c()" identifier (argument_list "()" ( ))) ;) (if_statement "if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;" if (parenthesized_expression "(*(char *)((int)puVar5 + 0x13) == '\x01')" ( (binary_expression "*(char *)((int)puVar5 + 0x13) == '\x01'" (pointer_expression "*(char *)((int)puVar5 + 0x13)" * (cast_expression "(char *)((int)puVar5 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\x01'" ' escape_sequence ')) )) (goto_statement "goto LAB_000df934;" goto statement_identifier ;)) }) (else_clause "else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }" else (if_statement "if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }" if (parenthesized_expression "(*(char *)((int)puVar5 + 0x13) == '\x01')" ( (binary_expression "*(char *)((int)puVar5 + 0x13) == '\x01'" (pointer_expression "*(char *)((int)puVar5 + 0x13)" * (cast_expression "(char *)((int)puVar5 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }" { (if_statement "if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }" if (parenthesized_expression "(param_1 == (undefined *)0xfffffff8)" ( (binary_expression "param_1 == (undefined *)0xfffffff8" identifier == (cast_expression "(undefined *)0xfffffff8" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }" { (expression_statement "*(undefined1 *)((int)puVar5 + 0x13) = 2;" (assignment_expression "*(undefined1 *)((int)puVar5 + 0x13) = 2" (pointer_expression "*(undefined1 *)((int)puVar5 + 0x13)" * (cast_expression "(undefined1 *)((int)puVar5 + 0x13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000d8b3c();" (call_expression "FUN_000d8b3c()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (expression_statement "uVar6 = 200;" (assignment_expression "uVar6 = 200" identifier = number_literal) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })) (labeled_statement "LAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;" statement_identifier : (expression_statement "uVar7 = (uint)param_1 & 0xff;" (assignment_expression "uVar7 = (uint)param_1 & 0xff" identifier = (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;)) (expression_statement "uVar6 = uVar7 - 0x30 & 0xff;" (assignment_expression "uVar6 = uVar7 - 0x30 & 0xff" identifier = (binary_expression "uVar7 - 0x30 & 0xff" (binary_expression "uVar7 - 0x30" identifier - number_literal) & number_literal)) ;) (if_statement "if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }" if (parenthesized_expression "((int)param_1 < 1)" ( (binary_expression "(int)param_1 < 1" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }" { (if_statement "if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }" if (parenthesized_expression "(uVar7 < 0x20)" ( (binary_expression "uVar7 < 0x20" identifier < number_literal) )) (compound_statement "{\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }" { (labeled_statement "LAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];" statement_identifier : (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;)) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })) (if_statement "if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }" if (parenthesized_expression "(uVar7 == 0x9b)" ( (binary_expression "uVar7 == 0x9b" identifier == number_literal) )) (compound_statement "{\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }" { (labeled_statement "LAB_000df980:\n          pcVar9 = (char *)puVar5[1];" statement_identifier : (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;)) (expression_statement "uVar6 = 0x6b;" (assignment_expression "uVar6 = 0x6b" identifier = number_literal) ;) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })) })) (expression_statement "pcVar9 = (char *)puVar5[2];" (assignment_expression "pcVar9 = (char *)puVar5[2]" identifier = (cast_expression "(char *)puVar5[2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[2]" identifier [ number_literal ]))) ;) (expression_statement "uVar4 = 3;" (assignment_expression "uVar4 = 3" identifier = number_literal) ;) (labeled_statement "LAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);" statement_identifier : (expression_statement "uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);" (assignment_expression "uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4)" identifier = (call_expression "FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4)" identifier (argument_list "(pcVar9,(uint)param_1 & 0xff,uVar4)" ( identifier , (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) , identifier )))) ;)) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (expression_statement "puVar5[2] = uVar4;" (assignment_expression "puVar5[2] = uVar4" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = identifier) ;) (goto_statement "goto LAB_000dd4e8;" goto statement_identifier ;) })))) })) (if_statement "if (puVar8 < (undefined *)0x8b) {\n                    \n                    \n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }" if (parenthesized_expression "(puVar8 < (undefined *)0x8b)" ( (binary_expression "puVar8 < (undefined *)0x8b" identifier < (cast_expression "(undefined *)0x8b" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    \n                    \n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }" { (expression_statement "(*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();" (call_expression "(*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))()" (parenthesized_expression "(*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))" ( (pointer_expression "*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0))" * (cast_expression "(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0))" ( (binary_expression "&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)" (pointer_expression "&_gp_1" & identifier) + (pointer_expression "*(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)" * (cast_expression "(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)" ( (binary_expression "PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0" (binary_expression "PTR_FUN_0012a1a8 + (int)puVar8 * 4" identifier + (binary_expression "(int)puVar8 * 4" (cast_expression "(int)puVar8" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) + number_literal) ))))) )))) )) (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })) (expression_statement "local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff;" (assignment_expression "local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff" identifier = (binary_expression "CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff" (call_expression "CONCAT13((char)param_1,(int3)local_b8)" identifier (argument_list "((char)param_1,(int3)local_b8)" ( (cast_expression "(char)param_1" ( (type_descriptor "char" primitive_type) ) identifier) , (cast_expression "(int3)local_b8" ( (type_descriptor "int3" type_identifier) ) identifier) ))) & number_literal)) ;) (expression_statement "FUN_000d8c6c(auStack_ac,&local_b8);" (call_expression "FUN_000d8c6c(auStack_ac,&local_b8)" identifier (argument_list "(auStack_ac,&local_b8)" ( identifier , (pointer_expression "&local_b8" & identifier) ))) ;) (expression_statement "FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac);" (call_expression "FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac)" identifier (argument_list "(PTR_FUN_0012a1a8 + -0x2948,auStack_ac)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x2948" identifier + number_literal) , identifier ))) ;) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (expression_statement "uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff;" (assignment_expression "uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff" identifier = (binary_expression "((uint)param_1 & 0xff) - 0x30 & 0xff" (binary_expression "((uint)param_1 & 0xff) - 0x30" (parenthesized_expression "((uint)param_1 & 0xff)" ( (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) - number_literal) & number_literal)) ;) (expression_statement "puVar5[0x20] = 0x1a;" (assignment_expression "puVar5[0x20] = 0x1a" (subscript_expression "puVar5[0x20]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*(undefined1 *)((int)puVar5 + 0x5e) = 0;" (assignment_expression "*(undefined1 *)((int)puVar5 + 0x5e) = 0" (pointer_expression "*(undefined1 *)((int)puVar5 + 0x5e)" * (cast_expression "(undefined1 *)((int)puVar5 + 0x5e)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x5e)" ( (binary_expression "(int)puVar5 + 0x5e" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (labeled_statement "LAB_000dd4e8:\n  if (pcVar10 == pcVar9) goto LAB_000dd6ac;" statement_identifier : (if_statement "if (pcVar10 == pcVar9) goto LAB_000dd6ac;" if (parenthesized_expression "(pcVar10 == pcVar9)" ( (binary_expression "pcVar10 == pcVar9" identifier == identifier) )) (goto_statement "goto LAB_000dd6ac;" goto statement_identifier ;))) (expression_statement "pcVar10 = (char *)puVar5[2];" (assignment_expression "pcVar10 = (char *)puVar5[2]" identifier = (cast_expression "(char *)puVar5[2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[2]" identifier [ number_literal ]))) ;) (do_statement "do {\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  } while( true );" do (compound_statement "{\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  }" { (if_statement "if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }" if (parenthesized_expression "(pcVar10 != pcVar9)" ( (binary_expression "pcVar10 != pcVar9" identifier != identifier) )) (compound_statement "{\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }" { (expression_statement "pcVar9 = (char *)FUN_000dbd84();" (assignment_expression "pcVar9 = (char *)FUN_000dbd84()" identifier = (cast_expression "(char *)FUN_000dbd84()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000dbd84()" identifier (argument_list "()" ( ))))) ;) (expression_statement "puVar5[2] = pcVar9;" (assignment_expression "puVar5[2] = pcVar9" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = identifier) ;) })) (if_statement "if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }" if (parenthesized_expression "(pcVar9 < (char *)puVar5[0x5a])" ( (binary_expression "pcVar9 < (char *)puVar5[0x5a]" identifier < (cast_expression "(char *)puVar5[0x5a]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[0x5a]" identifier [ number_literal ]))) )) (compound_statement "{\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }" { (expression_statement "iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);" (assignment_expression "iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" identifier = (call_expression "(*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" (parenthesized_expression "(*(code *)PTR_strchr_0012af54)" ( (pointer_expression "*(code *)PTR_strchr_0012af54" * (cast_expression "(code *)PTR_strchr_0012af54" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" ( (binary_expression "PTR_DAT_0012abe0 + -0x7fed" identifier + number_literal) , (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (labeled_statement "joined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }" statement_identifier : (if_statement "if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }" { (expression_statement "uVar4 = puVar5[0x58];" (assignment_expression "uVar4 = puVar5[0x58]" identifier = (subscript_expression "puVar5[0x58]" identifier [ number_literal ])) ;) (expression_statement "puVar5[0x58] = pcVar9;" (assignment_expression "puVar5[0x58] = pcVar9" (subscript_expression "puVar5[0x58]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar5[0x59] = uVar4;" (assignment_expression "puVar5[0x59] = uVar4" (subscript_expression "puVar5[0x59]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar4 = FUN_000d9850(pcVar9);" (assignment_expression "uVar4 = FUN_000d9850(pcVar9)" identifier = (call_expression "FUN_000d9850(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier )))) ;) (expression_statement "uVar4 = FUN_000d9850(uVar4);" (assignment_expression "uVar4 = FUN_000d9850(uVar4)" identifier = (call_expression "FUN_000d9850(uVar4)" identifier (argument_list "(uVar4)" ( identifier )))) ;) (expression_statement "param_1 = PTR_LAB_0012abe4 + -0x652c;" (assignment_expression "param_1 = PTR_LAB_0012abe4 + -0x652c" identifier = (binary_expression "PTR_LAB_0012abe4 + -0x652c" identifier + number_literal)) ;) (expression_statement "puVar5[0x5a] = uVar4;" (assignment_expression "puVar5[0x5a] = uVar4" (subscript_expression "puVar5[0x5a]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar4 = FUN_000d9ad4(pcVar9);" (assignment_expression "uVar4 = FUN_000d9ad4(pcVar9)" identifier = (call_expression "FUN_000d9ad4(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier )))) ;) (expression_statement "uVar4 = FUN_000d9ad4(uVar4);" (assignment_expression "uVar4 = FUN_000d9ad4(uVar4)" identifier = (call_expression "FUN_000d9ad4(uVar4)" identifier (argument_list "(uVar4)" ( identifier )))) ;) (expression_statement "puVar5[0x5b] = uVar4;" (assignment_expression "puVar5[0x5b] = uVar4" (subscript_expression "puVar5[0x5b]" identifier [ number_literal ]) = identifier) ;) }))) }) (else_clause "else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }" else (if_statement "if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }" if (parenthesized_expression "((char *)puVar5[0x5b] < pcVar9)" ( (binary_expression "(char *)puVar5[0x5b] < pcVar9" (cast_expression "(char *)puVar5[0x5b]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[0x5b]" identifier [ number_literal ])) < identifier) )) (compound_statement "{\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }" { (expression_statement "iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);" (assignment_expression "iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" identifier = (call_expression "(*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" (parenthesized_expression "(*(code *)PTR_strchr_0012af54)" ( (pointer_expression "*(code *)PTR_strchr_0012af54" * (cast_expression "(code *)PTR_strchr_0012af54" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" ( (binary_expression "PTR_DAT_0012abe0 + -0x7fed" identifier + number_literal) , (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (goto_statement "goto joined_r0x000dd690;" goto statement_identifier ;) })))) (expression_statement "uVar6 = (uint)(uVar6 < 10);" (assignment_expression "uVar6 = (uint)(uVar6 < 10)" identifier = (call_expression "(uint)(uVar6 < 10)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar6 < 10)" ( (binary_expression "uVar6 < 10" identifier < number_literal) )))) ;) (if_statement "if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (compound_statement "{\n      puVar5[8] = 0;\n    }" { (expression_statement "puVar5[8] = 0;" (assignment_expression "puVar5[8] = 0" (subscript_expression "puVar5[8]" identifier [ number_literal ]) = number_literal) ;) })) (if_statement "if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }" if (parenthesized_expression "(((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0'))" ( (binary_expression "((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')" (parenthesized_expression "((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3))" ( (binary_expression "(*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)" (parenthesized_expression "(*pcVar9 == '\n')" ( (binary_expression "*pcVar9 == '\n'" (pointer_expression "*pcVar9" * identifier) == (char_literal "'\n'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)" ( (comma_expression "iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3" (assignment_expression "iVar3 = FUN_000d97d8(pcVar9)" identifier = (call_expression "FUN_000d97d8(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier )))) , (binary_expression "0 < (int)pcVar9 - iVar3" number_literal < (binary_expression "(int)pcVar9 - iVar3" (cast_expression "(int)pcVar9" ( (type_descriptor "int" primitive_type) ) identifier) - identifier))) ))) )) && (parenthesized_expression "(*(char *)((int)puVar5 + 0x13) == '\0')" ( (binary_expression "*(char *)((int)puVar5 + 0x13) == '\0'" (pointer_expression "*(char *)((int)puVar5 + 0x13)" * (cast_expression "(char *)((int)puVar5 + 0x13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar5 + 0x13)" ( (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n      puVar5[2] = pcVar9 + -1;\n    }" { (expression_statement "puVar5[2] = pcVar9 + -1;" (assignment_expression "puVar5[2] = pcVar9 + -1" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = (binary_expression "pcVar9 + -1" identifier + number_literal)) ;) })) (if_statement "if (local_2c == *(int *)puVar2) {\n      return;\n    }" if (parenthesized_expression "(local_2c == *(int *)puVar2)" ( (binary_expression "local_2c == *(int *)puVar2" identifier == (pointer_expression "*(int *)puVar2" * (cast_expression "(int *)puVar2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "(*(code *)PTR___stack_chk_fail_0012b0c8)();" (call_expression "(*(code *)PTR___stack_chk_fail_0012b0c8)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0012b0c8)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0012b0c8" * (cast_expression "(code *)PTR___stack_chk_fail_0012b0c8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (labeled_statement "LAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);" statement_identifier : (expression_statement "FUN_000db844(pcVar9,10,0);" (call_expression "FUN_000db844(pcVar9,10,0)" identifier (argument_list "(pcVar9,10,0)" ( identifier , number_literal , number_literal ))) ;)) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" identifier = (cast_expression "(char *)*puVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar5" * identifier))) ;) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" identifier = (cast_expression "(char *)puVar5[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar5[1]" identifier [ number_literal ]))) ;) (expression_statement "puVar5[2] = pcVar10;" (assignment_expression "puVar5[2] = pcVar10" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE 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 IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) < IDENT) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression LIT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))) & LIT) )) == LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT - LIT) & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , LIT ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) }) (else_clause else (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 *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , LIT ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })))) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT - LIT) & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_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))) ;) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) , IDENT )))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (goto_statement goto statement_identifier ;) })))) })) (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 *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) ))))) )))) )) (argument_list ( ))) ;) (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) & LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) - LIT) & LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = LIT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) }))) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (goto_statement goto statement_identifier ;) })))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) , (binary_expression LIT < (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - IDENT))) ))) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) })) (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 (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT , 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 *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) }) while (parenthesized_expression ( BOOL )) ;) })))
(function_definition "void FUN_000dd2a8(undefined *param_1)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 *puVar5;\n  uint uVar6;\n  uint uVar7;\n  undefined *puVar8;\n  char *pcVar9;\n  char *pcVar10;\n  uint local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined1 auStack_ac [128];\n  int local_2c;\n  \n  puVar2 = PTR___stack_chk_guard_0012b14c;\n  puVar1 = PTR_DAT_0012a304;\n  puVar8 = param_1 + 0xb;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_2c = *(int *)PTR___stack_chk_guard_0012b14c;\n  FUN_000db254();\n  puVar5 = *(undefined4 **)puVar1;\n  if (((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)) {\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }\n  if (puVar8 < (undefined *)0x8b) {\n                    \n                    \n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }\n  local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff;\n  FUN_000d8c6c(auStack_ac,&local_b8);\n  FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac);\n  pcVar9 = (char *)puVar5[1];\n  pcVar10 = (char *)*puVar5;\n  uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff;\n  puVar5[0x20] = 0x1a;\n  *(undefined1 *)((int)puVar5 + 0x5e) = 0;\nLAB_000dd4e8:\n  if (pcVar10 == pcVar9) goto LAB_000dd6ac;\n  pcVar10 = (char *)puVar5[2];\n  do {\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  } while( true );\n}" (primitive_type "void") (function_declarator "FUN_000dd2a8(undefined *param_1)" (identifier "FUN_000dd2a8") (parameter_list "(undefined *param_1)" (( "(") (parameter_declaration "undefined *param_1" (type_identifier "undefined") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) () ")"))) (compound_statement "{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 *puVar5;\n  uint uVar6;\n  uint uVar7;\n  undefined *puVar8;\n  char *pcVar9;\n  char *pcVar10;\n  uint local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined1 auStack_ac [128];\n  int local_2c;\n  \n  puVar2 = PTR___stack_chk_guard_0012b14c;\n  puVar1 = PTR_DAT_0012a304;\n  puVar8 = param_1 + 0xb;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_2c = *(int *)PTR___stack_chk_guard_0012b14c;\n  FUN_000db254();\n  puVar5 = *(undefined4 **)puVar1;\n  if (((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)) {\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }\n  if (puVar8 < (undefined *)0x8b) {\n                    \n                    \n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }\n  local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff;\n  FUN_000d8c6c(auStack_ac,&local_b8);\n  FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac);\n  pcVar9 = (char *)puVar5[1];\n  pcVar10 = (char *)*puVar5;\n  uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff;\n  puVar5[0x20] = 0x1a;\n  *(undefined1 *)((int)puVar5 + 0x5e) = 0;\nLAB_000dd4e8:\n  if (pcVar10 == pcVar9) goto LAB_000dd6ac;\n  pcVar10 = (char *)puVar5[2];\n  do {\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  } while( true );\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "undefined *puVar2;" (type_identifier "undefined") (pointer_declarator "*puVar2" (* "*") (identifier "puVar2")) (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "undefined4 uVar4;" (type_identifier "undefined4") (identifier "uVar4") (; ";")) (declaration "undefined4 *puVar5;" (type_identifier "undefined4") (pointer_declarator "*puVar5" (* "*") (identifier "puVar5")) (; ";")) (declaration "uint uVar6;" (type_identifier "uint") (identifier "uVar6") (; ";")) (declaration "uint uVar7;" (type_identifier "uint") (identifier "uVar7") (; ";")) (declaration "undefined *puVar8;" (type_identifier "undefined") (pointer_declarator "*puVar8" (* "*") (identifier "puVar8")) (; ";")) (declaration "char *pcVar9;" (primitive_type "char") (pointer_declarator "*pcVar9" (* "*") (identifier "pcVar9")) (; ";")) (declaration "char *pcVar10;" (primitive_type "char") (pointer_declarator "*pcVar10" (* "*") (identifier "pcVar10")) (; ";")) (declaration "uint local_b8;" (type_identifier "uint") (identifier "local_b8") (; ";")) (declaration "undefined4 local_b4;" (type_identifier "undefined4") (identifier "local_b4") (; ";")) (declaration "undefined4 local_b0;" (type_identifier "undefined4") (identifier "local_b0") (; ";")) (declaration "undefined1 auStack_ac [128];" (type_identifier "undefined1") (array_declarator "auStack_ac [128]" (identifier "auStack_ac") ([ "[") (number_literal "128") (] "]")) (; ";")) (declaration "int local_2c;" (primitive_type "int") (identifier "local_2c") (; ";")) (expression_statement "puVar2 = PTR___stack_chk_guard_0012b14c;" (assignment_expression "puVar2 = PTR___stack_chk_guard_0012b14c" (identifier "puVar2") (= "=") (identifier "PTR___stack_chk_guard_0012b14c")) (; ";")) (expression_statement "puVar1 = PTR_DAT_0012a304;" (assignment_expression "puVar1 = PTR_DAT_0012a304" (identifier "puVar1") (= "=") (identifier "PTR_DAT_0012a304")) (; ";")) (expression_statement "puVar8 = param_1 + 0xb;" (assignment_expression "puVar8 = param_1 + 0xb" (identifier "puVar8") (= "=") (binary_expression "param_1 + 0xb" (identifier "param_1") (+ "+") (number_literal "0xb"))) (; ";")) (expression_statement "local_b8 = 0;" (assignment_expression "local_b8 = 0" (identifier "local_b8") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b4 = 0;" (assignment_expression "local_b4 = 0" (identifier "local_b4") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" (identifier "local_b0") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_0012b14c;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_0012b14c" (identifier "local_2c") (= "=") (pointer_expression "*(int *)PTR___stack_chk_guard_0012b14c" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_0012b14c" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_0012b14c")))) (; ";")) (expression_statement "FUN_000db254();" (call_expression "FUN_000db254()" (identifier "FUN_000db254") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar5 = *(undefined4 **)puVar1;" (assignment_expression "puVar5 = *(undefined4 **)puVar1" (identifier "puVar5") (= "=") (pointer_expression "*(undefined4 **)puVar1" (* "*") (cast_expression "(undefined4 **)puVar1" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "puVar1")))) (; ";")) (if_statement "if (((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)) {\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }" (if "if") (parenthesized_expression "(((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0))" (( "(") (binary_expression "((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)" (parenthesized_expression "((undefined *)0x9 < puVar8)" (( "(") (binary_expression "(undefined *)0x9 < puVar8" (cast_expression "(undefined *)0x9" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x9")) (< "<") (identifier "puVar8")) () ")")) (|| "||") (parenthesized_expression "((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)" (( "(") (binary_expression "(1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0" (parenthesized_expression "(1 << ((uint)puVar8 & 0x1f) & 0x3f7U)" (( "(") (binary_expression "1 << ((uint)puVar8 & 0x1f) & 0x3f7U" (binary_expression "1 << ((uint)puVar8 & 0x1f)" (number_literal "1") (<< "<<") (parenthesized_expression "((uint)puVar8 & 0x1f)" (( "(") (binary_expression "(uint)puVar8 & 0x1f" (cast_expression "(uint)puVar8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "puVar8")) (& "&") (number_literal "0x1f")) () ")"))) (& "&") (number_literal "0x3f7U")) () ")")) (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n    if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }\n  }" ({ "{") (if_statement "if (*(char *)((int)puVar5 + 0x13) == '\x02') {\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }\n    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }" (if "if") (parenthesized_expression "(*(char *)((int)puVar5 + 0x13) == '\x02')" (( "(") (binary_expression "*(char *)((int)puVar5 + 0x13) == '\x02'" (pointer_expression "*(char *)((int)puVar5 + 0x13)" (* "*") (cast_expression "(char *)((int)puVar5 + 0x13)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar5 + 0x13)" (( "(") (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar5")) (+ "+") (number_literal "0x13")) () ")")))) (== "==") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) () ")")) (compound_statement "{\n      uVar6 = 200;\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }\n      pcVar9 = (char *)puVar5[2];\n      if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }\n      *(undefined1 *)((int)puVar5 + 0x13) = 1;\n      FUN_000d8b3c();\n      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;\n    }" ({ "{") (expression_statement "uVar6 = 200;" (assignment_expression "uVar6 = 200" (identifier "uVar6") (= "=") (number_literal "200")) (; ";")) (if_statement "if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }" (if "if") (parenthesized_expression "(param_1 == (undefined *)0xfffffff8)" (( "(") (binary_expression "param_1 == (undefined *)0xfffffff8" (identifier "param_1") (== "==") (cast_expression "(undefined *)0xfffffff8" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xfffffff8"))) () ")")) (compound_statement "{\n        *(undefined1 *)((int)puVar5 + 0x13) = 1;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        goto LAB_000dd4e8;\n      }" ({ "{") (expression_statement "*(undefined1 *)((int)puVar5 + 0x13) = 1;" (assignment_expression "*(undefined1 *)((int)puVar5 + 0x13) = 1" (pointer_expression "*(undefined1 *)((int)puVar5 + 0x13)" (* "*") (cast_expression "(undefined1 *)((int)puVar5 + 0x13)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar5 + 0x13)" (( "(") (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar5")) (+ "+") (number_literal "0x13")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "FUN_000d8b3c();" (call_expression "FUN_000d8b3c()" (identifier "FUN_000d8b3c") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" (identifier "pcVar9") (= "=") (cast_expression "(char *)puVar5[1]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar5[1]" (identifier "puVar5") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" (identifier "pcVar10") (= "=") (cast_expression "(char *)*puVar5" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar5" (* "*") (identifier "puVar5")))) (; ";")) (goto_statement "goto LAB_000dd4e8;" (goto "goto") (statement_identifier "LAB_000dd4e8") (; ";")) (} "}"))) (expression_statement "pcVar9 = (char *)puVar5[2];" (assignment_expression "pcVar9 = (char *)puVar5[2]" (identifier "pcVar9") (= "=") (cast_expression "(char *)puVar5[2]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar5[2]" (identifier "puVar5") ([ "[") (number_literal "2") (] "]")))) (; ";")) (if_statement "if (*pcVar9 != '\n') {\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }" (if "if") (parenthesized_expression "(*pcVar9 != '\n')" (( "(") (binary_expression "*pcVar9 != '\n'" (pointer_expression "*pcVar9" (* "*") (identifier "pcVar9")) (!= "!=") (char_literal "'\n'" (' "'") (escape_sequence "\n") (' "'"))) () ")")) (compound_statement "{\n        uVar7 = (uint)param_1 & 0xff;\n        uVar6 = uVar7 - 0x30 & 0xff;\n        if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        uVar4 = 2;\n        goto LAB_000df948;\n      }" ({ "{") (expression_statement "uVar7 = (uint)param_1 & 0xff;" (assignment_expression "uVar7 = (uint)param_1 & 0xff" (identifier "uVar7") (= "=") (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "param_1")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "uVar6 = uVar7 - 0x30 & 0xff;" (assignment_expression "uVar6 = uVar7 - 0x30 & 0xff" (identifier "uVar6") (= "=") (binary_expression "uVar7 - 0x30 & 0xff" (binary_expression "uVar7 - 0x30" (identifier "uVar7") (- "-") (number_literal "0x30")) (& "&") (number_literal "0xff"))) (; ";")) (if_statement "if ((int)param_1 < 1) {\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }\n        else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" (if "if") (parenthesized_expression "((int)param_1 < 1)" (( "(") (binary_expression "(int)param_1 < 1" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (< "<") (number_literal "1")) () ")")) (compound_statement "{\n          if (uVar7 < 0x20) goto LAB_000dddf4;\n          if (uVar7 == 0x9b) goto LAB_000df980;\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" ({ "{") (if_statement "if (uVar7 < 0x20) goto LAB_000dddf4;" (if "if") (parenthesized_expression "(uVar7 < 0x20)" (( "(") (binary_expression "uVar7 < 0x20" (identifier "uVar7") (< "<") (number_literal "0x20")) () ")")) (goto_statement "goto LAB_000dddf4;" (goto "goto") (statement_identifier "LAB_000dddf4") (; ";"))) (if_statement "if (uVar7 == 0x9b) goto LAB_000df980;" (if "if") (parenthesized_expression "(uVar7 == 0x9b)" (( "(") (binary_expression "uVar7 == 0x9b" (identifier "uVar7") (== "==") (number_literal "0x9b")) () ")")) (goto_statement "goto LAB_000df980;" (goto "goto") (statement_identifier "LAB_000df980") (; ";"))) (expression_statement "pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);" (assignment_expression "pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1)" (identifier "pcVar9") (= "=") (cast_expression "(char *)FUN_000db670(pcVar9,pcVar9,0,1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_000db670(pcVar9,pcVar9,0,1)" (identifier "FUN_000db670") (argument_list "(pcVar9,pcVar9,0,1)" (( "(") (identifier "pcVar9") (, ",") (identifier "pcVar9") (, ",") (number_literal "0") (, ",") (number_literal "1") () ")"))))) (; ";")) (expression_statement "puVar5[2] = pcVar9;" (assignment_expression "puVar5[2] = pcVar9" (subscript_expression "puVar5[2]" (identifier "puVar5") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "pcVar9")) (; ";")) (} "}")) (else_clause "else if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" (else "else") (if_statement "if (param_1 != (undefined *)0x1b) {\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" (if "if") (parenthesized_expression "(param_1 != (undefined *)0x1b)" (( "(") (binary_expression "param_1 != (undefined *)0x1b" (identifier "param_1") (!= "!=") (cast_expression "(undefined *)0x1b" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1b"))) () ")")) (compound_statement "{\n          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);\n          puVar5[2] = pcVar9;\n        }" ({ "{") (expression_statement "pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);" (assignment_expression "pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1)" (identifier "pcVar9") (= "=") (cast_expression "(char *)FUN_000db670(pcVar9,pcVar9,0,1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_000db670(pcVar9,pcVar9,0,1)" (identifier "FUN_000db670") (argument_list "(pcVar9,pcVar9,0,1)" (( "(") (identifier "pcVar9") (, ",") (identifier "pcVar9") (, ",") (number_literal "0") (, ",") (number_literal "1") () ")"))))) (; ";")) (expression_statement "puVar5[2] = pcVar9;" (assignment_expression "puVar5[2] = pcVar9" (subscript_expression "puVar5[2]" (identifier "puVar5") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "pcVar9")) (; ";")) (} "}"))))) (expression_statement "uVar4 = 2;" (assignment_expression "uVar4 = 2" (identifier "uVar4") (= "=") (number_literal "2")) (; ";")) (goto_statement "goto LAB_000df948;" (goto "goto") (statement_identifier "LAB_000df948") (; ";")) (} "}"))) (expression_statement "*(undefined1 *)((int)puVar5 + 0x13) = 1;" (assignment_expression "*(undefined1 *)((int)puVar5 + 0x13) = 1" (pointer_expression "*(undefined1 *)((int)puVar5 + 0x13)" (* "*") (cast_expression "(undefined1 *)((int)puVar5 + 0x13)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar5 + 0x13)" (( "(") (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar5")) (+ "+") (number_literal "0x13")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "FUN_000d8b3c();" (call_expression "FUN_000d8b3c()" (identifier "FUN_000d8b3c") (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;" (if "if") (parenthesized_expression "(*(char *)((int)puVar5 + 0x13) == '\x01')" (( "(") (binary_expression "*(char *)((int)puVar5 + 0x13) == '\x01'" (pointer_expression "*(char *)((int)puVar5 + 0x13)" (* "*") (cast_expression "(char *)((int)puVar5 + 0x13)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar5 + 0x13)" (( "(") (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar5")) (+ "+") (number_literal "0x13")) () ")")))) (== "==") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) () ")")) (goto_statement "goto LAB_000df934;" (goto "goto") (statement_identifier "LAB_000df934") (; ";"))) (} "}")) (else_clause "else if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }" (else "else") (if_statement "if (*(char *)((int)puVar5 + 0x13) == '\x01') {\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }" (if "if") (parenthesized_expression "(*(char *)((int)puVar5 + 0x13) == '\x01')" (( "(") (binary_expression "*(char *)((int)puVar5 + 0x13) == '\x01'" (pointer_expression "*(char *)((int)puVar5 + 0x13)" (* "*") (cast_expression "(char *)((int)puVar5 + 0x13)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar5 + 0x13)" (( "(") (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar5")) (+ "+") (number_literal "0x13")) () ")")))) (== "==") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) () ")")) (compound_statement "{\n      if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }\nLAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;\n      uVar6 = uVar7 - 0x30 & 0xff;\n      if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }\n      pcVar9 = (char *)puVar5[2];\n      uVar4 = 3;\nLAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);\n      pcVar9 = (char *)puVar5[1];\n      pcVar10 = (char *)*puVar5;\n      puVar5[2] = uVar4;\n      goto LAB_000dd4e8;\n    }" ({ "{") (if_statement "if (param_1 == (undefined *)0xfffffff8) {\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }" (if "if") (parenthesized_expression "(param_1 == (undefined *)0xfffffff8)" (( "(") (binary_expression "param_1 == (undefined *)0xfffffff8" (identifier "param_1") (== "==") (cast_expression "(undefined *)0xfffffff8" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xfffffff8"))) () ")")) (compound_statement "{\n        *(undefined1 *)((int)puVar5 + 0x13) = 2;\n        FUN_000d8b3c();\n        pcVar9 = (char *)puVar5[1];\n        pcVar10 = (char *)*puVar5;\n        uVar6 = 200;\n        goto LAB_000dd4e8;\n      }" ({ "{") (expression_statement "*(undefined1 *)((int)puVar5 + 0x13) = 2;" (assignment_expression "*(undefined1 *)((int)puVar5 + 0x13) = 2" (pointer_expression "*(undefined1 *)((int)puVar5 + 0x13)" (* "*") (cast_expression "(undefined1 *)((int)puVar5 + 0x13)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar5 + 0x13)" (( "(") (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar5")) (+ "+") (number_literal "0x13")) () ")")))) (= "=") (number_literal "2")) (; ";")) (expression_statement "FUN_000d8b3c();" (call_expression "FUN_000d8b3c()" (identifier "FUN_000d8b3c") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" (identifier "pcVar9") (= "=") (cast_expression "(char *)puVar5[1]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar5[1]" (identifier "puVar5") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" (identifier "pcVar10") (= "=") (cast_expression "(char *)*puVar5" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar5" (* "*") (identifier "puVar5")))) (; ";")) (expression_statement "uVar6 = 200;" (assignment_expression "uVar6 = 200" (identifier "uVar6") (= "=") (number_literal "200")) (; ";")) (goto_statement "goto LAB_000dd4e8;" (goto "goto") (statement_identifier "LAB_000dd4e8") (; ";")) (} "}"))) (labeled_statement "LAB_000df934:\n      uVar7 = (uint)param_1 & 0xff;" (statement_identifier "LAB_000df934") (: ":") (expression_statement "uVar7 = (uint)param_1 & 0xff;" (assignment_expression "uVar7 = (uint)param_1 & 0xff" (identifier "uVar7") (= "=") (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "param_1")) (& "&") (number_literal "0xff"))) (; ";"))) (expression_statement "uVar6 = uVar7 - 0x30 & 0xff;" (assignment_expression "uVar6 = uVar7 - 0x30 & 0xff" (identifier "uVar6") (= "=") (binary_expression "uVar7 - 0x30 & 0xff" (binary_expression "uVar7 - 0x30" (identifier "uVar7") (- "-") (number_literal "0x30")) (& "&") (number_literal "0xff"))) (; ";")) (if_statement "if ((int)param_1 < 1) {\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }" (if "if") (parenthesized_expression "((int)param_1 < 1)" (( "(") (binary_expression "(int)param_1 < 1" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (< "<") (number_literal "1")) () ")")) (compound_statement "{\n        if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n        if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }\n      }" ({ "{") (if_statement "if (uVar7 < 0x20) {\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }" (if "if") (parenthesized_expression "(uVar7 < 0x20)" (( "(") (binary_expression "uVar7 < 0x20" (identifier "uVar7") (< "<") (number_literal "0x20")) () ")")) (compound_statement "{\nLAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }" ({ "{") (labeled_statement "LAB_000dddf4:\n          pcVar9 = (char *)puVar5[1];" (statement_identifier "LAB_000dddf4") (: ":") (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" (identifier "pcVar9") (= "=") (cast_expression "(char *)puVar5[1]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar5[1]" (identifier "puVar5") ([ "[") (number_literal "1") (] "]")))) (; ";"))) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" (identifier "pcVar10") (= "=") (cast_expression "(char *)*puVar5" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar5" (* "*") (identifier "puVar5")))) (; ";")) (goto_statement "goto LAB_000dd4e8;" (goto "goto") (statement_identifier "LAB_000dd4e8") (; ";")) (} "}"))) (if_statement "if (uVar7 == 0x9b) {\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }" (if "if") (parenthesized_expression "(uVar7 == 0x9b)" (( "(") (binary_expression "uVar7 == 0x9b" (identifier "uVar7") (== "==") (number_literal "0x9b")) () ")")) (compound_statement "{\nLAB_000df980:\n          pcVar9 = (char *)puVar5[1];\n          uVar6 = 0x6b;\n          pcVar10 = (char *)*puVar5;\n          goto LAB_000dd4e8;\n        }" ({ "{") (labeled_statement "LAB_000df980:\n          pcVar9 = (char *)puVar5[1];" (statement_identifier "LAB_000df980") (: ":") (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" (identifier "pcVar9") (= "=") (cast_expression "(char *)puVar5[1]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar5[1]" (identifier "puVar5") ([ "[") (number_literal "1") (] "]")))) (; ";"))) (expression_statement "uVar6 = 0x6b;" (assignment_expression "uVar6 = 0x6b" (identifier "uVar6") (= "=") (number_literal "0x6b")) (; ";")) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" (identifier "pcVar10") (= "=") (cast_expression "(char *)*puVar5" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar5" (* "*") (identifier "puVar5")))) (; ";")) (goto_statement "goto LAB_000dd4e8;" (goto "goto") (statement_identifier "LAB_000dd4e8") (; ";")) (} "}"))) (} "}"))) (expression_statement "pcVar9 = (char *)puVar5[2];" (assignment_expression "pcVar9 = (char *)puVar5[2]" (identifier "pcVar9") (= "=") (cast_expression "(char *)puVar5[2]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar5[2]" (identifier "puVar5") ([ "[") (number_literal "2") (] "]")))) (; ";")) (expression_statement "uVar4 = 3;" (assignment_expression "uVar4 = 3" (identifier "uVar4") (= "=") (number_literal "3")) (; ";")) (labeled_statement "LAB_000df948:\n      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);" (statement_identifier "LAB_000df948") (: ":") (expression_statement "uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);" (assignment_expression "uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4)" (identifier "uVar4") (= "=") (call_expression "FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4)" (identifier "FUN_000db844") (argument_list "(pcVar9,(uint)param_1 & 0xff,uVar4)" (( "(") (identifier "pcVar9") (, ",") (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "param_1")) (& "&") (number_literal "0xff")) (, ",") (identifier "uVar4") () ")")))) (; ";"))) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" (identifier "pcVar9") (= "=") (cast_expression "(char *)puVar5[1]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar5[1]" (identifier "puVar5") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" (identifier "pcVar10") (= "=") (cast_expression "(char *)*puVar5" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar5" (* "*") (identifier "puVar5")))) (; ";")) (expression_statement "puVar5[2] = uVar4;" (assignment_expression "puVar5[2] = uVar4" (subscript_expression "puVar5[2]" (identifier "puVar5") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "uVar4")) (; ";")) (goto_statement "goto LAB_000dd4e8;" (goto "goto") (statement_identifier "LAB_000dd4e8") (; ";")) (} "}"))))) (} "}"))) (if_statement "if (puVar8 < (undefined *)0x8b) {\n                    \n                    \n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }" (if "if") (parenthesized_expression "(puVar8 < (undefined *)0x8b)" (( "(") (binary_expression "puVar8 < (undefined *)0x8b" (identifier "puVar8") (< "<") (cast_expression "(undefined *)0x8b" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x8b"))) () ")")) (compound_statement "{\n                    \n                    \n    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();\n    return;\n  }" ({ "{") (expression_statement "(*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();" (call_expression "(*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))()" (parenthesized_expression "(*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))" (( "(") (pointer_expression "*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0))" (* "*") (cast_expression "(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0))" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0))" (( "(") (binary_expression "&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)" (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1")) (+ "+") (pointer_expression "*(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)" (* "*") (cast_expression "(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)" (( "(") (binary_expression "PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0" (binary_expression "PTR_FUN_0012a1a8 + (int)puVar8 * 4" (identifier "PTR_FUN_0012a1a8") (+ "+") (binary_expression "(int)puVar8 * 4" (cast_expression "(int)puVar8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar8")) (* "*") (number_literal "4"))) (+ "+") (number_literal "-0x27e0")) () ")"))))) () ")")))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff;" (assignment_expression "local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff" (identifier "local_b8") (= "=") (binary_expression "CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff" (call_expression "CONCAT13((char)param_1,(int3)local_b8)" (identifier "CONCAT13") (argument_list "((char)param_1,(int3)local_b8)" (( "(") (cast_expression "(char)param_1" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "param_1")) (, ",") (cast_expression "(int3)local_b8" (( "(") (type_descriptor "int3" (type_identifier "int3")) () ")") (identifier "local_b8")) () ")"))) (& "&") (number_literal "0xff00ffff"))) (; ";")) (expression_statement "FUN_000d8c6c(auStack_ac,&local_b8);" (call_expression "FUN_000d8c6c(auStack_ac,&local_b8)" (identifier "FUN_000d8c6c") (argument_list "(auStack_ac,&local_b8)" (( "(") (identifier "auStack_ac") (, ",") (pointer_expression "&local_b8" (& "&") (identifier "local_b8")) () ")"))) (; ";")) (expression_statement "FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac);" (call_expression "FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac)" (identifier "FUN_000d8e2c") (argument_list "(PTR_FUN_0012a1a8 + -0x2948,auStack_ac)" (( "(") (binary_expression "PTR_FUN_0012a1a8 + -0x2948" (identifier "PTR_FUN_0012a1a8") (+ "+") (number_literal "-0x2948")) (, ",") (identifier "auStack_ac") () ")"))) (; ";")) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" (identifier "pcVar9") (= "=") (cast_expression "(char *)puVar5[1]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar5[1]" (identifier "puVar5") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" (identifier "pcVar10") (= "=") (cast_expression "(char *)*puVar5" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar5" (* "*") (identifier "puVar5")))) (; ";")) (expression_statement "uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff;" (assignment_expression "uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff" (identifier "uVar6") (= "=") (binary_expression "((uint)param_1 & 0xff) - 0x30 & 0xff" (binary_expression "((uint)param_1 & 0xff) - 0x30" (parenthesized_expression "((uint)param_1 & 0xff)" (( "(") (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "param_1")) (& "&") (number_literal "0xff")) () ")")) (- "-") (number_literal "0x30")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "puVar5[0x20] = 0x1a;" (assignment_expression "puVar5[0x20] = 0x1a" (subscript_expression "puVar5[0x20]" (identifier "puVar5") ([ "[") (number_literal "0x20") (] "]")) (= "=") (number_literal "0x1a")) (; ";")) (expression_statement "*(undefined1 *)((int)puVar5 + 0x5e) = 0;" (assignment_expression "*(undefined1 *)((int)puVar5 + 0x5e) = 0" (pointer_expression "*(undefined1 *)((int)puVar5 + 0x5e)" (* "*") (cast_expression "(undefined1 *)((int)puVar5 + 0x5e)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar5 + 0x5e)" (( "(") (binary_expression "(int)puVar5 + 0x5e" (cast_expression "(int)puVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar5")) (+ "+") (number_literal "0x5e")) () ")")))) (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_000dd4e8:\n  if (pcVar10 == pcVar9) goto LAB_000dd6ac;" (statement_identifier "LAB_000dd4e8") (: ":") (if_statement "if (pcVar10 == pcVar9) goto LAB_000dd6ac;" (if "if") (parenthesized_expression "(pcVar10 == pcVar9)" (( "(") (binary_expression "pcVar10 == pcVar9" (identifier "pcVar10") (== "==") (identifier "pcVar9")) () ")")) (goto_statement "goto LAB_000dd6ac;" (goto "goto") (statement_identifier "LAB_000dd6ac") (; ";")))) (expression_statement "pcVar10 = (char *)puVar5[2];" (assignment_expression "pcVar10 = (char *)puVar5[2]" (identifier "pcVar10") (= "=") (cast_expression "(char *)puVar5[2]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar5[2]" (identifier "puVar5") ([ "[") (number_literal "2") (] "]")))) (; ";")) (do_statement "do {\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  } while( true );" (do "do") (compound_statement "{\n    if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }\n    if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }\n    uVar6 = (uint)(uVar6 < 10);\n    if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }\n    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }\n    if (local_2c == *(int *)puVar2) {\n      return;\n    }\n    (*(code *)PTR___stack_chk_fail_0012b0c8)();\nLAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);\n    pcVar10 = (char *)*puVar5;\n    pcVar9 = (char *)puVar5[1];\n    puVar5[2] = pcVar10;\n  }" ({ "{") (if_statement "if (pcVar10 != pcVar9) {\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }" (if "if") (parenthesized_expression "(pcVar10 != pcVar9)" (( "(") (binary_expression "pcVar10 != pcVar9" (identifier "pcVar10") (!= "!=") (identifier "pcVar9")) () ")")) (compound_statement "{\n      pcVar9 = (char *)FUN_000dbd84();\n      puVar5[2] = pcVar9;\n    }" ({ "{") (expression_statement "pcVar9 = (char *)FUN_000dbd84();" (assignment_expression "pcVar9 = (char *)FUN_000dbd84()" (identifier "pcVar9") (= "=") (cast_expression "(char *)FUN_000dbd84()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_000dbd84()" (identifier "FUN_000dbd84") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "puVar5[2] = pcVar9;" (assignment_expression "puVar5[2] = pcVar9" (subscript_expression "puVar5[2]" (identifier "puVar5") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "pcVar9")) (; ";")) (} "}"))) (if_statement "if (pcVar9 < (char *)puVar5[0x5a]) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }\n    else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }" (if "if") (parenthesized_expression "(pcVar9 < (char *)puVar5[0x5a])" (( "(") (binary_expression "pcVar9 < (char *)puVar5[0x5a]" (identifier "pcVar9") (< "<") (cast_expression "(char *)puVar5[0x5a]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar5[0x5a]" (identifier "puVar5") ([ "[") (number_literal "0x5a") (] "]")))) () ")")) (compound_statement "{\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\njoined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }\n    }" ({ "{") (expression_statement "iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);" (assignment_expression "iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" (identifier "iVar3") (= "=") (call_expression "(*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" (parenthesized_expression "(*(code *)PTR_strchr_0012af54)" (( "(") (pointer_expression "*(code *)PTR_strchr_0012af54" (* "*") (cast_expression "(code *)PTR_strchr_0012af54" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strchr_0012af54"))) () ")")) (argument_list "(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" (( "(") (binary_expression "PTR_DAT_0012abe0 + -0x7fed" (identifier "PTR_DAT_0012abe0") (+ "+") (number_literal "-0x7fed")) (, ",") (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "param_1")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (labeled_statement "joined_r0x000dd690:\n      if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }" (statement_identifier "joined_r0x000dd690") (: ":") (if_statement "if (iVar3 != 0) {\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }" (if "if") (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        uVar4 = puVar5[0x58];\n        puVar5[0x58] = pcVar9;\n        puVar5[0x59] = uVar4;\n        uVar4 = FUN_000d9850(pcVar9);\n        uVar4 = FUN_000d9850(uVar4);\n        param_1 = PTR_LAB_0012abe4 + -0x652c;\n        puVar5[0x5a] = uVar4;\n        uVar4 = FUN_000d9ad4(pcVar9);\n        uVar4 = FUN_000d9ad4(uVar4);\n        puVar5[0x5b] = uVar4;\n      }" ({ "{") (expression_statement "uVar4 = puVar5[0x58];" (assignment_expression "uVar4 = puVar5[0x58]" (identifier "uVar4") (= "=") (subscript_expression "puVar5[0x58]" (identifier "puVar5") ([ "[") (number_literal "0x58") (] "]"))) (; ";")) (expression_statement "puVar5[0x58] = pcVar9;" (assignment_expression "puVar5[0x58] = pcVar9" (subscript_expression "puVar5[0x58]" (identifier "puVar5") ([ "[") (number_literal "0x58") (] "]")) (= "=") (identifier "pcVar9")) (; ";")) (expression_statement "puVar5[0x59] = uVar4;" (assignment_expression "puVar5[0x59] = uVar4" (subscript_expression "puVar5[0x59]" (identifier "puVar5") ([ "[") (number_literal "0x59") (] "]")) (= "=") (identifier "uVar4")) (; ";")) (expression_statement "uVar4 = FUN_000d9850(pcVar9);" (assignment_expression "uVar4 = FUN_000d9850(pcVar9)" (identifier "uVar4") (= "=") (call_expression "FUN_000d9850(pcVar9)" (identifier "FUN_000d9850") (argument_list "(pcVar9)" (( "(") (identifier "pcVar9") () ")")))) (; ";")) (expression_statement "uVar4 = FUN_000d9850(uVar4);" (assignment_expression "uVar4 = FUN_000d9850(uVar4)" (identifier "uVar4") (= "=") (call_expression "FUN_000d9850(uVar4)" (identifier "FUN_000d9850") (argument_list "(uVar4)" (( "(") (identifier "uVar4") () ")")))) (; ";")) (expression_statement "param_1 = PTR_LAB_0012abe4 + -0x652c;" (assignment_expression "param_1 = PTR_LAB_0012abe4 + -0x652c" (identifier "param_1") (= "=") (binary_expression "PTR_LAB_0012abe4 + -0x652c" (identifier "PTR_LAB_0012abe4") (+ "+") (number_literal "-0x652c"))) (; ";")) (expression_statement "puVar5[0x5a] = uVar4;" (assignment_expression "puVar5[0x5a] = uVar4" (subscript_expression "puVar5[0x5a]" (identifier "puVar5") ([ "[") (number_literal "0x5a") (] "]")) (= "=") (identifier "uVar4")) (; ";")) (expression_statement "uVar4 = FUN_000d9ad4(pcVar9);" (assignment_expression "uVar4 = FUN_000d9ad4(pcVar9)" (identifier "uVar4") (= "=") (call_expression "FUN_000d9ad4(pcVar9)" (identifier "FUN_000d9ad4") (argument_list "(pcVar9)" (( "(") (identifier "pcVar9") () ")")))) (; ";")) (expression_statement "uVar4 = FUN_000d9ad4(uVar4);" (assignment_expression "uVar4 = FUN_000d9ad4(uVar4)" (identifier "uVar4") (= "=") (call_expression "FUN_000d9ad4(uVar4)" (identifier "FUN_000d9ad4") (argument_list "(uVar4)" (( "(") (identifier "uVar4") () ")")))) (; ";")) (expression_statement "puVar5[0x5b] = uVar4;" (assignment_expression "puVar5[0x5b] = uVar4" (subscript_expression "puVar5[0x5b]" (identifier "puVar5") ([ "[") (number_literal "0x5b") (] "]")) (= "=") (identifier "uVar4")) (; ";")) (} "}")))) (} "}")) (else_clause "else if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }" (else "else") (if_statement "if ((char *)puVar5[0x5b] < pcVar9) {\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }" (if "if") (parenthesized_expression "((char *)puVar5[0x5b] < pcVar9)" (( "(") (binary_expression "(char *)puVar5[0x5b] < pcVar9" (cast_expression "(char *)puVar5[0x5b]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar5[0x5b]" (identifier "puVar5") ([ "[") (number_literal "0x5b") (] "]"))) (< "<") (identifier "pcVar9")) () ")")) (compound_statement "{\n      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);\n      goto joined_r0x000dd690;\n    }" ({ "{") (expression_statement "iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);" (assignment_expression "iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" (identifier "iVar3") (= "=") (call_expression "(*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" (parenthesized_expression "(*(code *)PTR_strchr_0012af54)" (( "(") (pointer_expression "*(code *)PTR_strchr_0012af54" (* "*") (cast_expression "(code *)PTR_strchr_0012af54" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strchr_0012af54"))) () ")")) (argument_list "(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff)" (( "(") (binary_expression "PTR_DAT_0012abe0 + -0x7fed" (identifier "PTR_DAT_0012abe0") (+ "+") (number_literal "-0x7fed")) (, ",") (binary_expression "(uint)param_1 & 0xff" (cast_expression "(uint)param_1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "param_1")) (& "&") (number_literal "0xff")) () ")")))) (; ";")) (goto_statement "goto joined_r0x000dd690;" (goto "goto") (statement_identifier "joined_r0x000dd690") (; ";")) (} "}"))))) (expression_statement "uVar6 = (uint)(uVar6 < 10);" (assignment_expression "uVar6 = (uint)(uVar6 < 10)" (identifier "uVar6") (= "=") (call_expression "(uint)(uVar6 < 10)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar6 < 10)" (( "(") (binary_expression "uVar6 < 10" (identifier "uVar6") (< "<") (number_literal "10")) () ")")))) (; ";")) (if_statement "if (uVar6 == 0) {\n      puVar5[8] = 0;\n    }" (if "if") (parenthesized_expression "(uVar6 == 0)" (( "(") (binary_expression "uVar6 == 0" (identifier "uVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      puVar5[8] = 0;\n    }" ({ "{") (expression_statement "puVar5[8] = 0;" (assignment_expression "puVar5[8] = 0" (subscript_expression "puVar5[8]" (identifier "puVar5") ([ "[") (number_literal "8") (] "]")) (= "=") (number_literal "0")) (; ";")) (} "}"))) (if_statement "if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')) {\n      puVar5[2] = pcVar9 + -1;\n    }" (if "if") (parenthesized_expression "(((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0'))" (( "(") (binary_expression "((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&\n       (*(char *)((int)puVar5 + 0x13) == '\0')" (parenthesized_expression "((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3))" (( "(") (binary_expression "(*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)" (parenthesized_expression "(*pcVar9 == '\n')" (( "(") (binary_expression "*pcVar9 == '\n'" (pointer_expression "*pcVar9" (* "*") (identifier "pcVar9")) (== "==") (char_literal "'\n'" (' "'") (escape_sequence "\n") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)" (( "(") (comma_expression "iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3" (assignment_expression "iVar3 = FUN_000d97d8(pcVar9)" (identifier "iVar3") (= "=") (call_expression "FUN_000d97d8(pcVar9)" (identifier "FUN_000d97d8") (argument_list "(pcVar9)" (( "(") (identifier "pcVar9") () ")")))) (, ",") (binary_expression "0 < (int)pcVar9 - iVar3" (number_literal "0") (< "<") (binary_expression "(int)pcVar9 - iVar3" (cast_expression "(int)pcVar9" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar9")) (- "-") (identifier "iVar3")))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)((int)puVar5 + 0x13) == '\0')" (( "(") (binary_expression "*(char *)((int)puVar5 + 0x13) == '\0'" (pointer_expression "*(char *)((int)puVar5 + 0x13)" (* "*") (cast_expression "(char *)((int)puVar5 + 0x13)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar5 + 0x13)" (( "(") (binary_expression "(int)puVar5 + 0x13" (cast_expression "(int)puVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar5")) (+ "+") (number_literal "0x13")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n      puVar5[2] = pcVar9 + -1;\n    }" ({ "{") (expression_statement "puVar5[2] = pcVar9 + -1;" (assignment_expression "puVar5[2] = pcVar9 + -1" (subscript_expression "puVar5[2]" (identifier "puVar5") ([ "[") (number_literal "2") (] "]")) (= "=") (binary_expression "pcVar9 + -1" (identifier "pcVar9") (+ "+") (number_literal "-1"))) (; ";")) (} "}"))) (if_statement "if (local_2c == *(int *)puVar2) {\n      return;\n    }" (if "if") (parenthesized_expression "(local_2c == *(int *)puVar2)" (( "(") (binary_expression "local_2c == *(int *)puVar2" (identifier "local_2c") (== "==") (pointer_expression "*(int *)puVar2" (* "*") (cast_expression "(int *)puVar2" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar2")))) () ")")) (compound_statement "{\n      return;\n    }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "(*(code *)PTR___stack_chk_fail_0012b0c8)();" (call_expression "(*(code *)PTR___stack_chk_fail_0012b0c8)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0012b0c8)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_0012b0c8" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_0012b0c8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_0012b0c8"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_000dd6ac:\n    FUN_000db844(pcVar9,10,0);" (statement_identifier "LAB_000dd6ac") (: ":") (expression_statement "FUN_000db844(pcVar9,10,0);" (call_expression "FUN_000db844(pcVar9,10,0)" (identifier "FUN_000db844") (argument_list "(pcVar9,10,0)" (( "(") (identifier "pcVar9") (, ",") (number_literal "10") (, ",") (number_literal "0") () ")"))) (; ";"))) (expression_statement "pcVar10 = (char *)*puVar5;" (assignment_expression "pcVar10 = (char *)*puVar5" (identifier "pcVar10") (= "=") (cast_expression "(char *)*puVar5" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar5" (* "*") (identifier "puVar5")))) (; ";")) (expression_statement "pcVar9 = (char *)puVar5[1];" (assignment_expression "pcVar9 = (char *)puVar5[1]" (identifier "pcVar9") (= "=") (cast_expression "(char *)puVar5[1]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar5[1]" (identifier "puVar5") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "puVar5[2] = pcVar10;" (assignment_expression "puVar5[2] = pcVar10" (subscript_expression "puVar5[2]" (identifier "puVar5") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "pcVar10")) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}")))
(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) 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: (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: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (primitive_type) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)) right: (identifier))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (number_literal) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (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: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) 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: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (number_literal)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)))) alternative: (else_clause (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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (number_literal)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal)))))) (expression_statement (assignment_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: (pointer_expression argument: (identifier))))) (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: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (goto_statement label: (statement_identifier)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (number_literal)))))))))) arguments: (argument_list))) (return_statement))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) right: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (number_literal))) (labeled_statement label: (statement_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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) 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))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) 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: (subscript_expression argument: (identifier) index: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (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: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))) right: (binary_expression left: (number_literal) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))))) (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 (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))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)))) condition: (parenthesized_expression (true))))))

void MASKED(undefined *param_1)

{
  undefined *puVar1;
  undefined *puVar2;
  int iVar3;
  undefined4 uVar4;
  undefined4 *puVar5;
  uint uVar6;
  uint uVar7;
  undefined *puVar8;
  char *pcVar9;
  char *pcVar10;
  uint local_b8;
  undefined4 local_b4;
  undefined4 local_b0;
  undefined1 auStack_ac [128];
  int local_2c;
  
  puVar2 = PTR___stack_chk_guard_0012b14c;
  puVar1 = PTR_DAT_0012a304;
  puVar8 = param_1 + 0xb;
  local_b8 = 0;
  local_b4 = 0;
  local_b0 = 0;
  local_2c = *(int *)PTR___stack_chk_guard_0012b14c;
  FUN_000db254();
  puVar5 = *(undefined4 **)puVar1;
  if (((undefined *)0x9 < puVar8) || ((1 << ((uint)puVar8 & 0x1f) & 0x3f7U) == 0)) {
    if (*(char *)((int)puVar5 + 0x13) == '\x02') {
      uVar6 = 200;
      if (param_1 == (undefined *)0xfffffff8) {
        *(undefined1 *)((int)puVar5 + 0x13) = 1;
        FUN_000d8b3c();
        pcVar9 = (char *)puVar5[1];
        pcVar10 = (char *)*puVar5;
        goto LAB_000dd4e8;
      }
      pcVar9 = (char *)puVar5[2];
      if (*pcVar9 != '\n') {
        uVar7 = (uint)param_1 & 0xff;
        uVar6 = uVar7 - 0x30 & 0xff;
        if ((int)param_1 < 1) {
          if (uVar7 < 0x20) goto LAB_000dddf4;
          if (uVar7 == 0x9b) goto LAB_000df980;
          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);
          puVar5[2] = pcVar9;
        }
        else if (param_1 != (undefined *)0x1b) {
          pcVar9 = (char *)FUN_000db670(pcVar9,pcVar9,0,1);
          puVar5[2] = pcVar9;
        }
        uVar4 = 2;
        goto LAB_000df948;
      }
      *(undefined1 *)((int)puVar5 + 0x13) = 1;
      FUN_000d8b3c();
      if (*(char *)((int)puVar5 + 0x13) == '\x01') goto LAB_000df934;
    }
    else if (*(char *)((int)puVar5 + 0x13) == '\x01') {
      if (param_1 == (undefined *)0xfffffff8) {
        *(undefined1 *)((int)puVar5 + 0x13) = 2;
        FUN_000d8b3c();
        pcVar9 = (char *)puVar5[1];
        pcVar10 = (char *)*puVar5;
        uVar6 = 200;
        goto LAB_000dd4e8;
      }
LAB_000df934:
      uVar7 = (uint)param_1 & 0xff;
      uVar6 = uVar7 - 0x30 & 0xff;
      if ((int)param_1 < 1) {
        if (uVar7 < 0x20) {
LAB_000dddf4:
          pcVar9 = (char *)puVar5[1];
          pcVar10 = (char *)*puVar5;
          goto LAB_000dd4e8;
        }
        if (uVar7 == 0x9b) {
LAB_000df980:
          pcVar9 = (char *)puVar5[1];
          uVar6 = 0x6b;
          pcVar10 = (char *)*puVar5;
          goto LAB_000dd4e8;
        }
      }
      pcVar9 = (char *)puVar5[2];
      uVar4 = 3;
LAB_000df948:
      uVar4 = FUN_000db844(pcVar9,(uint)param_1 & 0xff,uVar4);
      pcVar9 = (char *)puVar5[1];
      pcVar10 = (char *)*puVar5;
      puVar5[2] = uVar4;
      goto LAB_000dd4e8;
    }
  }
  if (puVar8 < (undefined *)0x8b) {
                    /* WARNING: Could not emulate address calculation at 0x000dd430 */
                    /* WARNING: Treating indirect jump as call */
    (*(code *)(&_gp_1 + *(int *)(PTR_FUN_0012a1a8 + (int)puVar8 * 4 + -0x27e0)))();
    return;
  }
  local_b8 = CONCAT13((char)param_1,(int3)local_b8) & 0xff00ffff;
  FUN_000d8c6c(auStack_ac,&local_b8);
  FUN_000d8e2c(PTR_FUN_0012a1a8 + -0x2948,auStack_ac);
  pcVar9 = (char *)puVar5[1];
  pcVar10 = (char *)*puVar5;
  uVar6 = ((uint)param_1 & 0xff) - 0x30 & 0xff;
  puVar5[0x20] = 0x1a;
  *(undefined1 *)((int)puVar5 + 0x5e) = 0;
LAB_000dd4e8:
  if (pcVar10 == pcVar9) goto LAB_000dd6ac;
  pcVar10 = (char *)puVar5[2];
  do {
    if (pcVar10 != pcVar9) {
      pcVar9 = (char *)FUN_000dbd84();
      puVar5[2] = pcVar9;
    }
    if (pcVar9 < (char *)puVar5[0x5a]) {
      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);
joined_r0x000dd690:
      if (iVar3 != 0) {
        uVar4 = puVar5[0x58];
        puVar5[0x58] = pcVar9;
        puVar5[0x59] = uVar4;
        uVar4 = FUN_000d9850(pcVar9);
        uVar4 = FUN_000d9850(uVar4);
        param_1 = PTR_LAB_0012abe4 + -0x652c;
        puVar5[0x5a] = uVar4;
        uVar4 = FUN_000d9ad4(pcVar9);
        uVar4 = FUN_000d9ad4(uVar4);
        puVar5[0x5b] = uVar4;
      }
    }
    else if ((char *)puVar5[0x5b] < pcVar9) {
      iVar3 = (*(code *)PTR_strchr_0012af54)(PTR_DAT_0012abe0 + -0x7fed,(uint)param_1 & 0xff);
      goto joined_r0x000dd690;
    }
    uVar6 = (uint)(uVar6 < 10);
    if (uVar6 == 0) {
      puVar5[8] = 0;
    }
    if (((*pcVar9 == '\n') && (iVar3 = FUN_000d97d8(pcVar9), 0 < (int)pcVar9 - iVar3)) &&
       (*(char *)((int)puVar5 + 0x13) == '\0')) {
      puVar5[2] = pcVar9 + -1;
    }
    if (local_2c == *(int *)puVar2) {
      return;
    }
    (*(code *)PTR___stack_chk_fail_0012b0c8)();
LAB_000dd6ac:
    FUN_000db844(pcVar9,10,0);
    pcVar10 = (char *)*puVar5;
    pcVar9 = (char *)puVar5[1];
    puVar5[2] = pcVar10;
  } while( true );
}

