
/* WARNING: Removing unreachable block (ram,0x00010f2c) */
/* WARNING: Removing unreachable block (ram,0x00011964) */
/* WARNING: Removing unreachable block (ram,0x00010f34) */
/* WARNING: Removing unreachable block (ram,0x00010f3c) */
/* WARNING: Removing unreachable block (ram,0x00010f4c) */
/* WARNING: Removing unreachable block (ram,0x00011110) */
/* WARNING: Removing unreachable block (ram,0x00011118) */
/* WARNING: Removing unreachable block (ram,0x00010f54) */
/* WARNING: Removing unreachable block (ram,0x0001112c) */
/* WARNING: Removing unreachable block (ram,0x00010f5c) */
/* WARNING: Removing unreachable block (ram,0x000114ec) */
/* WARNING: Removing unreachable block (ram,0x000115bc) */
/* WARNING: Removing unreachable block (ram,0x00011514) */
/* WARNING: Removing unreachable block (ram,0x00010f68) */
/* WARNING: Removing unreachable block (ram,0x000114dc) */
/* WARNING: Removing unreachable block (ram,0x00010f88) */
/* WARNING: Removing unreachable block (ram,0x00010f8c) */
/* WARNING: Removing unreachable block (ram,0x00011558) */
/* WARNING: Removing unreachable block (ram,0x00011564) */
/* WARNING: Removing unreachable block (ram,0x00010fb8) */
/* WARNING: Removing unreachable block (ram,0x00011588) */
/* WARNING: Removing unreachable block (ram,0x00010fc4) */
/* WARNING: Removing unreachable block (ram,0x0001114c) */
/* WARNING: Removing unreachable block (ram,0x00010fe8) */
/* WARNING: Removing unreachable block (ram,0x00010ff8) */
/* WARNING: Removing unreachable block (ram,0x00011150) */
/* WARNING: Removing unreachable block (ram,0x000115b0) */
/* WARNING: Removing unreachable block (ram,0x00011170) */
/* WARNING: Removing unreachable block (ram,0x00011590) */
/* WARNING: Removing unreachable block (ram,0x0001167c) */
/* WARNING: Removing unreachable block (ram,0x00011598) */
/* WARNING: Removing unreachable block (ram,0x00011198) */
/* WARNING: Removing unreachable block (ram,0x000117e8) */
/* WARNING: Removing unreachable block (ram,0x000111cc) */
/* WARNING: Removing unreachable block (ram,0x000113d4) */
/* WARNING: Removing unreachable block (ram,0x0001140c) */
/* WARNING: Removing unreachable block (ram,0x00011834) */
/* WARNING: Removing unreachable block (ram,0x00011418) */
/* WARNING: Removing unreachable block (ram,0x00011844) */
/* WARNING: Removing unreachable block (ram,0x00011448) */
/* WARNING: Removing unreachable block (ram,0x00011454) */
/* WARNING: Removing unreachable block (ram,0x000111d8) */
/* WARNING: Removing unreachable block (ram,0x000117a4) */
/* WARNING: Removing unreachable block (ram,0x00011200) */
/* WARNING: Removing unreachable block (ram,0x00011814) */
/* WARNING: Removing unreachable block (ram,0x0001181c) */
/* WARNING: Removing unreachable block (ram,0x0001120c) */
/* WARNING: Removing unreachable block (ram,0x0001127c) */
/* WARNING: Removing unreachable block (ram,0x00011280) */
/* WARNING: Removing unreachable block (ram,0x00011288) */
/* WARNING: Removing unreachable block (ram,0x00011294) */
/* WARNING: Removing unreachable block (ram,0x0001129c) */
/* WARNING: Removing unreachable block (ram,0x000112a4) */
/* WARNING: Removing unreachable block (ram,0x000112f8) */
/* WARNING: Removing unreachable block (ram,0x000115dc) */
/* WARNING: Removing unreachable block (ram,0x00011600) */
/* WARNING: Removing unreachable block (ram,0x00011628) */
/* WARNING: Removing unreachable block (ram,0x00011644) */
/* WARNING: Removing unreachable block (ram,0x0001164c) */
/* WARNING: Removing unreachable block (ram,0x00011350) */
/* WARNING: Removing unreachable block (ram,0x00011354) */
/* WARNING: Removing unreachable block (ram,0x000117c0) */
/* WARNING: Removing unreachable block (ram,0x000113b0) */
/* WARNING: Removing unreachable block (ram,0x000116ac) */
/* WARNING: Removing unreachable block (ram,0x000116b8) */
/* WARNING: Removing unreachable block (ram,0x000116c0) */
/* WARNING: Removing unreachable block (ram,0x000116cc) */
/* WARNING: Removing unreachable block (ram,0x000118e0) */
/* WARNING: Removing unreachable block (ram,0x000116f4) */
/* WARNING: Removing unreachable block (ram,0x00011720) */
/* WARNING: Removing unreachable block (ram,0x00011724) */
/* WARNING: Removing unreachable block (ram,0x00011790) */
/* WARNING: Removing unreachable block (ram,0x000113bc) */
/* WARNING: Removing unreachable block (ram,0x0001179c) */
/* WARNING: Removing unreachable block (ram,0x00011728) */
/* WARNING: Removing unreachable block (ram,0x00011738) */
/* WARNING: Removing unreachable block (ram,0x00011744) */
/* WARNING: Removing unreachable block (ram,0x00011860) */
/* WARNING: Removing unreachable block (ram,0x0001186c) */
/* WARNING: Removing unreachable block (ram,0x00011874) */
/* WARNING: Removing unreachable block (ram,0x00011878) */
/* WARNING: Removing unreachable block (ram,0x000118f8) */
/* WARNING: Removing unreachable block (ram,0x000118a0) */
/* WARNING: Removing unreachable block (ram,0x000118cc) */
/* WARNING: Removing unreachable block (ram,0x000118d0) */
/* WARNING: Removing unreachable block (ram,0x00011020) */
/* WARNING: Removing unreachable block (ram,0x0001102c) */
/* WARNING: Removing unreachable block (ram,0x00011038) */
/* WARNING: Removing unreachable block (ram,0x00011578) */
/* WARNING: Removing unreachable block (ram,0x00011040) */
/* WARNING: Removing unreachable block (ram,0x00011048) */
/* WARNING: Removing unreachable block (ram,0x00011054) */
/* WARNING: Removing unreachable block (ram,0x0001105c) */
/* WARNING: Removing unreachable block (ram,0x00011068) */
/* WARNING: Removing unreachable block (ram,0x000114ac) */
/* WARNING: Removing unreachable block (ram,0x000114c4) */
/* WARNING: Removing unreachable block (ram,0x00011074) */
/* WARNING: Removing unreachable block (ram,0x00011088) */
/* WARNING: Removing unreachable block (ram,0x0001192c) */
/* WARNING: Removing unreachable block (ram,0x00011938) */
/* WARNING: Removing unreachable block (ram,0x00011754) */

int main(int argc,char **argv)

{
  undefined *puVar1;
  int iVar2;
  int iVar3;
  undefined *puVar4;
  uint8_t *free_wrkBuff;
  uint64_t ull;
  int option_index;
  opts_t opts;
  uint8_t cawCmd [16];
  char b [80];
  
  puVar4 = PTR_00023174;
  opts.numblocks = 1;
  opts.quiet = false;
  opts.verbose_given = false;
  opts.version_given = false;
  opts.wfn_given = false;
  opts.verbose = 0;
  opts.xfer_len = 0;
  opts._20_4_ = 0;
  opts.lba._0_4_ = 0;
  opts.lba._4_4_ = 0;
  opts.ifn = (char *)0x0;
  opts.wfn = (char *)0x0;
  opts.device_name = (char *)0x0;
  opts.flags.dpo = false;
  opts.flags.fua = false;
  opts.flags.fua_nv = false;
  opts.flags._3_1_ = 0;
  opts.flags.group = 0;
  opts.flags.wrprotect = 0;
  opts.timeout = 0x3c;
  option_index = 0;
  iVar2 = (*(code *)PTR_getopt_long_000231ec)
                    (argc,argv,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,&option_index);
  puVar1 = PTR_optind_00023204;
  if (iVar2 == -1) {
    iVar2 = *(int *)PTR_optind_00023204;
    if (iVar2 < argc) {
      iVar3 = iVar2 + 1;
      opts.device_name = argv[iVar2];
      *(int *)PTR_optind_00023204 = iVar3;
      if (iVar3 < argc) {
        puVar4 = PTR_00023174 + 0x282c;
        do {
          (*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3]);
          iVar3 = *(int *)puVar1 + 1;
          *(int *)puVar1 = iVar3;
        } while (iVar3 < argc);
        goto LAB_00011490;
      }
    }
    if (opts.device_name == (char *)0x0) {
      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);
    }
    else {
      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);
    }
  }
  else {
    if (iVar2 - 0x3fU < 0x3a) {
                    /* WARNING: Could not emulate address calculation at 0x00010d34 */
                    /* WARNING: Treating indirect jump as call */
      iVar2 = (*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();
      return iVar2;
    }
    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);
  }
LAB_00011490:
  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);
  iVar2 = (*(code *)PTR_exit_000231f0)(1);
  return iVar2;
}



/* WARNING: Removing unreachable block (ram,0x00010f2c) */
/* WARNING: Removing unreachable block (ram,0x00011964) */
/* WARNING: Removing unreachable block (ram,0x00010f34) */
/* WARNING: Removing unreachable block (ram,0x00010f3c) */
/* WARNING: Removing unreachable block (ram,0x00010f4c) */
/* WARNING: Removing unreachable block (ram,0x00011110) */
/* WARNING: Removing unreachable block (ram,0x00011118) */
/* WARNING: Removing unreachable block (ram,0x00010f54) */
/* WARNING: Removing unreachable block (ram,0x0001112c) */
/* WARNING: Removing unreachable block (ram,0x00010f5c) */
/* WARNING: Removing unreachable block (ram,0x000114ec) */
/* WARNING: Removing unreachable block (ram,0x000115bc) */
/* WARNING: Removing unreachable block (ram,0x00011514) */
/* WARNING: Removing unreachable block (ram,0x00010f68) */
/* WARNING: Removing unreachable block (ram,0x000114dc) */
/* WARNING: Removing unreachable block (ram,0x00010f88) */
/* WARNING: Removing unreachable block (ram,0x00010f8c) */
/* WARNING: Removing unreachable block (ram,0x00011558) */
/* WARNING: Removing unreachable block (ram,0x00011564) */
/* WARNING: Removing unreachable block (ram,0x00010fb8) */
/* WARNING: Removing unreachable block (ram,0x00011588) */
/* WARNING: Removing unreachable block (ram,0x00010fc4) */
/* WARNING: Removing unreachable block (ram,0x0001114c) */
/* WARNING: Removing unreachable block (ram,0x00010fe8) */
/* WARNING: Removing unreachable block (ram,0x00010ff8) */
/* WARNING: Removing unreachable block (ram,0x00011150) */
/* WARNING: Removing unreachable block (ram,0x000115b0) */
/* WARNING: Removing unreachable block (ram,0x00011170) */
/* WARNING: Removing unreachable block (ram,0x00011590) */
/* WARNING: Removing unreachable block (ram,0x0001167c) */
/* WARNING: Removing unreachable block (ram,0x00011598) */
/* WARNING: Removing unreachable block (ram,0x00011198) */
/* WARNING: Removing unreachable block (ram,0x000117e8) */
/* WARNING: Removing unreachable block (ram,0x000111cc) */
/* WARNING: Removing unreachable block (ram,0x000113d4) */
/* WARNING: Removing unreachable block (ram,0x0001140c) */
/* WARNING: Removing unreachable block (ram,0x00011834) */
/* WARNING: Removing unreachable block (ram,0x00011418) */
/* WARNING: Removing unreachable block (ram,0x00011844) */
/* WARNING: Removing unreachable block (ram,0x00011448) */
/* WARNING: Removing unreachable block (ram,0x00011454) */
/* WARNING: Removing unreachable block (ram,0x000111d8) */
/* WARNING: Removing unreachable block (ram,0x000117a4) */
/* WARNING: Removing unreachable block (ram,0x00011200) */
/* WARNING: Removing unreachable block (ram,0x00011814) */
/* WARNING: Removing unreachable block (ram,0x0001181c) */
/* WARNING: Removing unreachable block (ram,0x0001120c) */
/* WARNING: Removing unreachable block (ram,0x0001127c) */
/* WARNING: Removing unreachable block (ram,0x00011280) */
/* WARNING: Removing unreachable block (ram,0x00011288) */
/* WARNING: Removing unreachable block (ram,0x00011294) */
/* WARNING: Removing unreachable block (ram,0x0001129c) */
/* WARNING: Removing unreachable block (ram,0x000112a4) */
/* WARNING: Removing unreachable block (ram,0x000112f8) */
/* WARNING: Removing unreachable block (ram,0x000115dc) */
/* WARNING: Removing unreachable block (ram,0x00011600) */
/* WARNING: Removing unreachable block (ram,0x00011628) */
/* WARNING: Removing unreachable block (ram,0x00011644) */
/* WARNING: Removing unreachable block (ram,0x0001164c) */
/* WARNING: Removing unreachable block (ram,0x00011350) */
/* WARNING: Removing unreachable block (ram,0x00011354) */
/* WARNING: Removing unreachable block (ram,0x000117c0) */
/* WARNING: Removing unreachable block (ram,0x000113b0) */
/* WARNING: Removing unreachable block (ram,0x000116ac) */
/* WARNING: Removing unreachable block (ram,0x000116b8) */
/* WARNING: Removing unreachable block (ram,0x000116c0) */
/* WARNING: Removing unreachable block (ram,0x000116cc) */
/* WARNING: Removing unreachable block (ram,0x000118e0) */
/* WARNING: Removing unreachable block (ram,0x000116f4) */
/* WARNING: Removing unreachable block (ram,0x00011720) */
/* WARNING: Removing unreachable block (ram,0x00011724) */
/* WARNING: Removing unreachable block (ram,0x00011790) */
/* WARNING: Removing unreachable block (ram,0x000113bc) */
/* WARNING: Removing unreachable block (ram,0x0001179c) */
/* WARNING: Removing unreachable block (ram,0x00011728) */
/* WARNING: Removing unreachable block (ram,0x00011738) */
/* WARNING: Removing unreachable block (ram,0x00011744) */
/* WARNING: Removing unreachable block (ram,0x00011860) */
/* WARNING: Removing unreachable block (ram,0x0001186c) */
/* WARNING: Removing unreachable block (ram,0x00011874) */
/* WARNING: Removing unreachable block (ram,0x00011878) */
/* WARNING: Removing unreachable block (ram,0x000118f8) */
/* WARNING: Removing unreachable block (ram,0x000118a0) */
/* WARNING: Removing unreachable block (ram,0x000118cc) */
/* WARNING: Removing unreachable block (ram,0x000118d0) */
/* WARNING: Removing unreachable block (ram,0x00011020) */
/* WARNING: Removing unreachable block (ram,0x0001102c) */
/* WARNING: Removing unreachable block (ram,0x00011038) */
/* WARNING: Removing unreachable block (ram,0x00011578) */
/* WARNING: Removing unreachable block (ram,0x00011040) */
/* WARNING: Removing unreachable block (ram,0x00011048) */
/* WARNING: Removing unreachable block (ram,0x00011054) */
/* WARNING: Removing unreachable block (ram,0x0001105c) */
/* WARNING: Removing unreachable block (ram,0x00011068) */
/* WARNING: Removing unreachable block (ram,0x000114ac) */
/* WARNING: Removing unreachable block (ram,0x000114c4) */
/* WARNING: Removing unreachable block (ram,0x00011074) */
/* WARNING: Removing unreachable block (ram,0x00011088) */
/* WARNING: Removing unreachable block (ram,0x0001192c) */
/* WARNING: Removing unreachable block (ram,0x00011938) */
/* WARNING: Removing unreachable block (ram,0x00011754) */

undefined4 main(int param_1,int param_2)

{
  undefined *puVar1;
  int iVar2;
  undefined4 uVar3;
  int iVar4;
  undefined *puVar5;
  undefined4 local_d0 [2];
  undefined4 local_c8;
  undefined4 local_c4;
  undefined4 local_c0;
  undefined4 local_bc;
  undefined4 local_b8;
  undefined4 local_b4;
  undefined4 local_b0;
  undefined4 local_ac;
  undefined4 local_a8;
  undefined4 local_a4;
  int local_a0;
  undefined4 local_9c;
  undefined4 local_98;
  undefined4 local_94;
  undefined4 local_2c;
  
  puVar5 = PTR_00023174;
  local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208;
  local_c4 = 1;
  local_c8 = 0;
  local_c0 = 0;
  local_b8 = 0;
  local_b4 = 0;
  local_b0 = 0;
  local_ac = 0;
  local_a8 = 0;
  local_a4 = 0;
  local_a0 = 0;
  local_9c = 0;
  local_98 = 0;
  local_94 = 0;
  local_bc = 0x3c;
  local_d0[0] = 0;
  iVar2 = (*(code *)PTR_getopt_long_000231ec)
                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0);
  puVar1 = PTR_optind_00023204;
  if (iVar2 == -1) {
    iVar2 = *(int *)PTR_optind_00023204;
    if (iVar2 < param_1) {
      iVar4 = iVar2 + 1;
      local_a0 = *(int *)(param_2 + iVar2 * 4);
      *(int *)PTR_optind_00023204 = iVar4;
      if (iVar4 < param_1) {
        puVar5 = PTR_00023174 + 0x282c;
        do {
          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));
          iVar4 = *(int *)puVar1 + 1;
          *(int *)puVar1 = iVar4;
        } while (iVar4 < param_1);
        goto LAB_00011490;
      }
    }
    if (local_a0 == 0) {
      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);
    }
    else {
      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);
    }
  }
  else {
    if (iVar2 - 0x3fU < 0x3a) {
                    /* WARNING: Could not emulate address calculation at 0x00010d34 */
                    /* WARNING: Treating indirect jump as call */
      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();
      return uVar3;
    }
    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);
  }
LAB_00011490:
  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);
  uVar3 = (*(code *)PTR_exit_000231f0)(1);
  return uVar3;
}


lui gp,0x2
addiu gp,gp,-0x5af0
addu gp,gp,t9
addiu sp,sp,-0x120
addiu v1,sp,0x50
sw s5,0x10c(sp)
lw s5,-0x7f38(gp)
sw s3,0x104(sp)
sw s2,0x100(sp)
sw s1,0xfc(sp)
lw v0,0x0(s5)
lw s3,-0x7fd8(gp)
lw s2,-0x7fcc(gp)
lw s1,-0x7fcc(gp)
sw v0,0xf4(sp)
li v0,0x1
sw s0,0xf8(sp)
addiu s3,s3,0x3010
sw v0,0x5c(sp)
li v0,0x3c
sw s8,0x118(sp)
addiu s2,s2,0x2014
sw s7,0x114(sp)
or s8,zero,zero
sw s6,0x110(sp)
or s7,zero,zero
sw s4,0x108(sp)
addiu s1,s1,0x2c50
sw gp,0x20(sp)
or s4,a0,zero
sw ra,0x11c(sp)
or s6,a1,zero
sw v1,0x28(sp)
sw zero,0x44(sp)
sw zero,0x58(sp)
sw zero,0x60(sp)
sw zero,0x68(sp)
sw zero,0x6c(sp)
sw zero,0x70(sp)
sw zero,0x74(sp)
sw zero,0x78(sp)
sw zero,0x7c(sp)
sw zero,0x80(sp)
sw zero,0x84(sp)
sw zero,0x88(sp)
sw zero,0x8c(sp)
sw v0,0x64(sp)
lw s0,-0x7fa0(gp)
lw v0,0x28(sp)
or a0,s4,zero
lw t9,-0x7f54(gp)
or a3,s3,zero
or a2,s2,zero
sw zero,0x50(sp)
sw v0,0x10(sp)
jalr t9
_or a1,s6,zero
li a0,-0x1
lw gp,0x20(sp)
beq v0,a0,0x00010f04
_or v1,v0,zero
addiu v0,v0,-0x3f
sltiu a0,v0,0x3a
beq a0,zero,0x00011474
_sll v0,v0,0x2
addu v0,s1,v0
lw v0,0x0(v0)
addu v0,v0,gp
jr v0
_nop
lw s0,-0x7f3c(gp)
lw v0,0x0(s0)
slt a0,v0,s4
bne a0,zero,0x000110b4
_sll a0,v0,0x2
lw s1,0x80(sp)
beq s1,zero,0x0001197c
_lw a0,-0x7fcc(gp)
beq s8,zero,0x00011990
_lw a0,-0x7fcc(gp)
beq s7,zero,0x00011964
_lw v0,0x68(sp)
bne v0,zero,0x00010f4c
_lbu v0,0x59(sp)
lw v0,0x5c(sp)
sll v0,v0,0xa
sw v0,0x68(sp)
lbu v0,0x59(sp)
bne v0,zero,0x00011110
_lbu a0,0x5a(sp)
bne a0,zero,0x0001112c
_lw a1,-0x7fcc(gp)
lw s2,0x60(sp)
bne s2,zero,0x000114ec
_lw s3,0x78(sp)
lw t9,-0x7f58(gp)
or a0,s3,zero
jalr t9
_sw v1,0x2c(sp)
li a0,0x1
lw gp,0x20(sp)
beq v0,a0,0x000114dc
_lw v1,0x2c(sp)
or s0,zero,zero
lw s4,-0x7fcc(gp)
or a1,s0,zero
sw v1,0x2c(sp)
addiu s4,s4,0x1b90
or t9,s4,zero
bal 0x00011b90
_or a0,s3,zero
lw gp,0x20(sp)
or s7,v0,zero
bltz v0,0x00011558
_lw v1,0x2c(sp)
lbu v0,0x5b(sp)
beq v0,zero,0x00011588
_sw v0,0x30(sp)
lw s6,0x7c(sp)
lw t9,-0x7f58(gp)
sw v1,0x2c(sp)
jalr t9
_or a0,s6,zero
li a0,0x1
lw gp,0x20(sp)
bne v0,a0,0x0001114c
_lw v1,0x2c(sp)
lb a0,0x0(s6)
li v0,0x2d
bne a0,v0,0x00011150
_or a1,zero,zero
lw a0,-0x7fcc(gp)
li s1,0xf
lw t9,-0x7f44(gp)
sw v1,0x28(sp)
jalr t9
_addiu a0,a0,0x2980
lw v1,0x28(sp)
lw gp,0x20(sp)
or s4,v1,zero
or s6,v1,zero
lw a0,0x44(sp)
beq a0,zero,0x00011038
_lw t9,-0x7f30(gp)
jalr t9
_nop
lw gp,0x20(sp)
beq s0,zero,0x00011578
_lw t9,-0x7fa8(gp)
bltz s6,0x00011054
_lw t9,-0x7fa8(gp)
jalr t9
_or a0,s6,zero
lw gp,0x20(sp)
bltz s4,0x00011068
_lw t9,-0x7fa8(gp)
jalr t9
_or a0,s4,zero
lw gp,0x20(sp)
lw v0,0x60(sp)
beq v0,zero,0x000114ac
_lw a0,-0x7fcc(gp)
lw a0,0xf4(sp)
or v0,s1,zero
lw v1,0x0(s5)
bne a0,v1,0x0001192c
_lw ra,0x11c(sp)
lw s8,0x118(sp)
lw s7,0x114(sp)
lw s6,0x110(sp)
lw s5,0x10c(sp)
lw s4,0x108(sp)
lw s3,0x104(sp)
lw s2,0x100(sp)
lw s1,0xfc(sp)
lw s0,0xf8(sp)
jr ra
_addiu sp,sp,0x120
addiu v0,v0,0x1
addu a0,s6,a0
slt a1,v0,s4
lw a0,0x0(a0)
sw v0,0x0(s0)
beq a1,zero,0x00010f18
_sw a0,0x80(sp)
lw s1,-0x7fcc(gp)
addiu s1,s1,0x282c
sll v0,v0,0x2
lw t9,-0x7f44(gp)
or a0,s1,zero
addu v0,s6,v0
jalr t9
_lw a1,0x0(v0)
lw v0,0x0(s0)
lw gp,0x20(sp)
addiu v0,v0,0x1
slt v1,v0,s4
bne v1,zero,0x000110d8
_sw v0,0x0(s0)
b 0x00011490
_lw a0,-0x7fcc(gp)
beq a0,zero,0x00010f5c
_lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x2888
lw gp,0x20(sp)
lw a1,-0x7fcc(gp)
or s1,zero,zero
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
addiu a1,a1,0x28bc
jalr t9
_addiu a0,a0,0x28cc
b 0x00011074
_lw gp,0x20(sp)
or a1,zero,zero
sw v1,0x2c(sp)
or t9,s4,zero
bal 0x00011b90
_or a0,s6,zero
lw gp,0x20(sp)
or s6,v0,zero
bltz v0,0x000115b0
_lw v1,0x2c(sp)
lw t9,-0x7f9c(gp)
or a1,zero,zero
sw v1,0x2c(sp)
or a2,s2,zero
jalr t9
_or a0,s1,zero
lw gp,0x20(sp)
or s4,v0,zero
bltz v0,0x00011590
_lw v1,0x2c(sp)
lw s8,0x68(sp)
slti a3,s2,0x4
lw t9,-0x7fa4(gp)
addiu a2,sp,0x44
or a1,zero,zero
sw v1,0x2c(sp)
xori a3,a3,0x1
jalr t9
_or a0,s8,zero
lw gp,0x20(sp)
lw v1,0x2c(sp)
beq v0,zero,0x000117e8
_sw v0,0x34(sp)
lw v0,0x30(sp)
bne v0,zero,0x000113d4
_srl t0,s8,0x1f
lw t9,-0x7f24(gp)
or a2,s8,zero
lw a1,0x34(sp)
or a0,s7,zero
jalr t9
_sw v1,0x2c(sp)
lw gp,0x20(sp)
or s1,v0,zero
bltz v0,0x000117a4
_lw v1,0x2c(sp)
slt v0,v0,s8
bne v0,zero,0x00011814
_lw t9,-0x7f44(gp)
lw a0,0x8c(sp)
or t4,zero,zero
lbu a1,0x58(sp)
addiu v0,sp,0x96
lbu t3,0x84(sp)
or t5,zero,zero
sll a0,a0,0x5
lw a3,0x5c(sp)
lw t1,0x74(sp)
xori a1,a1,0x1
lw t0,0x70(sp)
andi a0,a0,0xff
lbu t2,0x85(sp)
lbu a2,0x86(sp)
sw t4,0x48(sp)
li t4,-0x77
sh zero,0x96(sp)
sw a1,0x3c(sp)
sw t5,0x4c(sp)
sh zero,0x2(v0)
sh zero,0x4(v0)
sh zero,0x6(v0)
sh zero,0x8(v0)
sh zero,0xa(v0)
sh zero,0xc(v0)
sb t4,0x94(sp)
beq t3,zero,0x00011280
_lw a1,0x88(sp)
ori a0,a0,0x10
beq t2,zero,0x00011294
_sb a0,0x95(sp)
lbu a0,0x95(sp)
ori a0,a0,0x8
sb a0,0x95(sp)
beq a2,zero,0x000112a4
_lbu a0,0x95(sp)
ori a0,a0,0x2
sb a0,0x95(sp)
sw v1,0x30(sp)
addiu v1,sp,0x94
sw t0,0x50(sp)
andi a0,a1,0x1f
sw v1,0x2c(sp)
sw t1,0x54(sp)
lw v1,0x28(sp)
lw a2,0x50(sp)
lw t9,-0x7f34(gp)
lw a1,0x4(v1)
swl a2,0x0(v0)
swr a2,0x3(v0)
swl a1,0x4(v0)
swr a1,0x7(v0)
sb a3,0xa1(sp)
jalr t9
_sb a0,0xa2(sp)
lw gp,0x20(sp)
or s3,v0,zero
beq v0,zero,0x00011938
_lw v1,0x30(sp)
lw t9,-0x7fb0(gp)
li a2,0x10
lw a1,0x2c(sp)
jalr t9
_or a0,v0,zero
addiu v0,sp,0xa4
lw gp,0x20(sp)
li a2,0x40
or a1,v0,zero
sw v0,0x38(sp)
lw t9,-0x7f7c(gp)
jalr t9
_or a0,s3,zero
or a2,s8,zero
lw gp,0x20(sp)
or a0,s3,zero
lw t9,-0x7f2c(gp)
jalr t9
_lw a1,0x34(sp)
slti v0,s2,0x2
beq v0,zero,0x000115dc
_lw gp,0x20(sp)
lw t9,-0x7f64(gp)
li a2,0x3c
or a3,s2,zero
or a1,s4,zero
jalr t9
_or a0,s3,zero
or a3,zero,zero
or a2,v0,zero
lw v0,0x28(sp)
lw gp,0x20(sp)
or a0,s3,zero
sw s2,0x18(sp)
sw v0,0x1c(sp)
lw v0,0x3c(sp)
lw a1,-0x7fcc(gp)
lw t9,-0x7f88(gp)
sw v0,0x14(sp)
lw v0,0x38(sp)
addiu a1,a1,0x2a8c
jalr t9
_sw v0,0x10(sp)
li v1,-0x1
beq v0,v1,0x000117c0
_lw gp,0x20(sp)
li v1,-0x2
beq v0,v1,0x000116ac
_li v0,0xe
lw t9,-0x7f6c(gp)
or a0,s3,zero
jalr t9
_or s1,zero,zero
b 0x00011020
_lw gp,0x20(sp)
lw t9,-0x7f24(gp)
lw a1,0x34(sp)
or a0,s7,zero
addu t0,t0,s8
sw v1,0x30(sp)
sra t0,t0,0x1
or a2,t0,zero
jalr t9
_sw t0,0x2c(sp)
lw gp,0x20(sp)
or s1,v0,zero
lw t0,0x2c(sp)
bltz v0,0x000117a4
_lw v1,0x30(sp)
slt v0,v0,t0
bne v0,zero,0x00011834
_lw v0,0x34(sp)
or a2,t0,zero
lw t9,-0x7f24(gp)
or a0,s6,zero
sw v1,0x30(sp)
addu a1,v0,t0
jalr t9
_sw t0,0x2c(sp)
lw gp,0x20(sp)
or s1,v0,zero
lw t0,0x2c(sp)
bltz v0,0x00011844
_lw v1,0x30(sp)
slt v0,v0,t0
beq v0,zero,0x0001120c
_lw a0,-0x7fcc(gp)
or a2,t0,zero
lw t9,-0x7f44(gp)
or a1,s1,zero
lw a3,0x7c(sp)
jalr t9
_addiu a0,a0,0x29e8
b 0x00011020
_lw gp,0x20(sp)
lw a0,-0x7fcc(gp)
or a1,v1,zero
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x2808
lw gp,0x20(sp)
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x2060
lw gp,0x20(sp)
lw t9,-0x7f50(gp)
jalr t9
_li a0,0x1
or a1,s1,zero
lw t9,-0x7f60(gp)
jalr t9
_addiu a0,a0,0x2b6c
bne v0,zero,0x00011074
_lw gp,0x20(sp)
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x2b8c
b 0x00011074
_lw gp,0x20(sp)
lb s0,0x0(s3)
xori s0,s0,0x2d
b 0x00010f8c
_sltiu s0,s0,0x1
lw a0,-0x7fcc(gp)
or a1,s3,zero
lw t9,-0x7f44(gp)
sw v1,0x2c(sp)
jalr t9
_addiu a0,a0,0x28f0
lbu v0,0x5b(sp)
lw gp,0x20(sp)
bne v0,zero,0x000115bc
_lw v1,0x2c(sp)
lw v0,0x64(sp)
or a1,s1,zero
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
lw a3,0x74(sp)
lw a2,0x70(sp)
addiu a0,a0,0x2940
sw v0,0x18(sp)
lw v0,0x68(sp)
sw v1,0x2c(sp)
sw v0,0x14(sp)
lw v0,0x5c(sp)
jalr t9
_sw v0,0x10(sp)
lw gp,0x20(sp)
b 0x00010f68
_lw v1,0x2c(sp)
lw a0,0x44(sp)
beq a0,zero,0x00011068
_subu s1,zero,v0
lw t9,-0x7f30(gp)
jalr t9
_nop
b 0x00011068
_lw gp,0x20(sp)
jalr t9
_or a0,s7,zero
b 0x00011040
_lw gp,0x20(sp)
b 0x00011170
_or s6,v1,zero
bne s2,zero,0x0001167c
_subu s3,zero,v0
lw t9,-0x7f78(gp)
jalr t9
_or a0,s3,zero
lw gp,0x20(sp)
b 0x00011020
_or s1,v0,zero
subu s1,zero,v0
b 0x00011020
_or s4,v1,zero
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
lw a1,0x7c(sp)
jalr t9
_addiu a0,a0,0x2938
lw gp,0x20(sp)
b 0x00011514
_lw v1,0x2c(sp)
lw a0,-0x7fcc(gp)
or s1,zero,zero
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x2a48
lw gp,0x20(sp)
lw v0,-0x7fcc(gp)
addiu v0,v0,0x2a64
sw v0,0x30(sp)
lw v0,0x2c(sp)
lw t9,-0x7f44(gp)
lw a0,0x30(sp)
addu v0,v0,s1
addiu s1,s1,0x1
jalr t9
_lbu a1,0x0(v0)
li v0,0x10
bne s1,v0,0x00011600
_lw gp,0x20(sp)
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x2860
li v0,0x2
beq s2,v0,0x00011350
_lw gp,0x20(sp)
blez s8,0x00011354
_lw t9,-0x7f64(gp)
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x2a6c
li a2,0x1
lw gp,0x20(sp)
or a1,s8,zero
lw t9,-0x7f98(gp)
jalr t9
_lw a0,0x34(sp)
b 0x00011350
_lw gp,0x20(sp)
lw t9,-0x7f80(gp)
jalr t9
_or a0,s3,zero
or a1,s1,zero
lw gp,0x20(sp)
or a2,v0,zero
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x1fd4
b 0x00011598
_lw gp,0x20(sp)
lw s1,0x50(sp)
beq s1,v0,0x00011860
_slti v0,s1,0xf
beq v0,zero,0x00011790
_addiu v0,s1,-0x14
li v0,0x3
bne s1,v0,0x00011724
_lw t9,-0x7f84(gp)
jalr t9
_or a0,s3,zero
addiu a2,sp,0x48
lw gp,0x20(sp)
or a1,v0,zero
lw t9,-0x7fac(gp)
jalr t9
_lw a0,0x38(sp)
beq v0,zero,0x000118e0
_lw gp,0x20(sp)
lw a0,-0x7fcc(gp)
lw v1,0x4c(sp)
lw v0,0x48(sp)
lw t9,-0x7f44(gp)
addiu a0,a0,0x2aa0
or a3,v1,zero
sw v1,0x14(sp)
or a2,v0,zero
jalr t9
_sw v0,0x10(sp)
lw gp,0x20(sp)
lw s1,0x50(sp)
lw t9,-0x7f6c(gp)
jalr t9
_or a0,s3,zero
beq s1,zero,0x00011020
_lw gp,0x20(sp)
sltiu v0,s1,0x10
beq v0,zero,0x00011754
_li v0,0x1
sllv v0,v0,s1
andi v0,v0,0xc008
bne v0,zero,0x00011020
_nop
or a3,s2,zero
lw s2,0x38(sp)
lw t9,-0x7f8c(gp)
li a1,0x50
or a0,s1,zero
jalr t9
_or a2,s2,zero
or a1,s2,zero
lw gp,0x20(sp)
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x2b38
b 0x00011020
_lw gp,0x20(sp)
sltiu v0,v0,0x2
bne v0,zero,0x000113bc
_lw t9,-0x7f6c(gp)
b 0x00011728
_nop
lw a0,-0x7fcc(gp)
or a1,s3,zero
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x29d0
b 0x00011020
_lw gp,0x20(sp)
lw t9,-0x7f18(gp)
jalr t9
_or a0,s3,zero
lw gp,0x20(sp)
lw t9,-0x7f78(gp)
jalr t9
_or a0,v0,zero
lw gp,0x20(sp)
b 0x00011724
_or s1,v0,zero
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x29b8
lw gp,0x20(sp)
lw t9,-0x7f78(gp)
jalr t9
_li a0,0xc
lw gp,0x20(sp)
b 0x00011020
_or s1,v0,zero
or a3,s3,zero
or a2,s8,zero
lw a0,-0x7fcc(gp)
or a1,s1,zero
jalr t9
_addiu a0,a0,0x29e8
b 0x00011020
_lw gp,0x20(sp)
or a3,s3,zero
lw t9,-0x7f44(gp)
b 0x0001181c
_or a2,t0,zero
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
lw a1,0x7c(sp)
jalr t9
_addiu a0,a0,0x29d0
b 0x00011020
_lw gp,0x20(sp)
lw v0,0x3c(sp)
bne v0,zero,0x00011878
_lw t9,-0x7f84(gp)
beq s2,zero,0x000118d0
_lw t9,-0x7f6c(gp)
lw t9,-0x7f84(gp)
jalr t9
_or a0,s3,zero
addiu a2,sp,0x48
lw gp,0x20(sp)
or a1,v0,zero
lw t9,-0x7fac(gp)
jalr t9
_lw a0,0x38(sp)
beq v0,zero,0x000118f8
_lw gp,0x20(sp)
lw a0,-0x7fcc(gp)
lw v1,0x4c(sp)
lw v0,0x48(sp)
lw t9,-0x7f44(gp)
addiu a0,a0,0x2af4
or a3,v1,zero
sw v1,0x14(sp)
or a2,v0,zero
jalr t9
_sw v0,0x10(sp)
lw gp,0x20(sp)
lw t9,-0x7f6c(gp)
jalr t9
_or a0,s3,zero
b 0x00011020
_lw gp,0x20(sp)
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x2ad8
b 0x00011720
_lw gp,0x20(sp)
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x2b20
b 0x000118cc
_lw gp,0x20(sp)
lw t9,-0x7f40(gp)
jalr t9
_nop
lw a0,-0x7fcc(gp)
addiu v0,sp,0xa4
lw t9,-0x7f44(gp)
sw v1,0x28(sp)
addiu a0,a0,0x2a14
jalr t9
_sw v0,0x38(sp)
lw v1,0x28(sp)
lw gp,0x20(sp)
b 0x00011754
_or s1,v1,zero
lw a0,-0x7fcc(gp)
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x2878
b 0x0001148c
_lw gp,0x20(sp)
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x284c
b 0x0001148c
_lw gp,0x20(sp)
lw t9,-0x7f44(gp)
jalr t9
_addiu a0,a0,0x2864
b 0x0001148c
_lw gp,0x20(sp)
(translation_unit "/* WARNING: Removing unreachable block (ram,0x00010f2c) */\n/* WARNING: Removing unreachable block (ram,0x00011964) */\n/* WARNING: Removing unreachable block (ram,0x00010f34) */\n/* WARNING: Removing unreachable block (ram,0x00010f3c) */\n/* WARNING: Removing unreachable block (ram,0x00010f4c) */\n/* WARNING: Removing unreachable block (ram,0x00011110) */\n/* WARNING: Removing unreachable block (ram,0x00011118) */\n/* WARNING: Removing unreachable block (ram,0x00010f54) */\n/* WARNING: Removing unreachable block (ram,0x0001112c) */\n/* WARNING: Removing unreachable block (ram,0x00010f5c) */\n/* WARNING: Removing unreachable block (ram,0x000114ec) */\n/* WARNING: Removing unreachable block (ram,0x000115bc) */\n/* WARNING: Removing unreachable block (ram,0x00011514) */\n/* WARNING: Removing unreachable block (ram,0x00010f68) */\n/* WARNING: Removing unreachable block (ram,0x000114dc) */\n/* WARNING: Removing unreachable block (ram,0x00010f88) */\n/* WARNING: Removing unreachable block (ram,0x00010f8c) */\n/* WARNING: Removing unreachable block (ram,0x00011558) */\n/* WARNING: Removing unreachable block (ram,0x00011564) */\n/* WARNING: Removing unreachable block (ram,0x00010fb8) */\n/* WARNING: Removing unreachable block (ram,0x00011588) */\n/* WARNING: Removing unreachable block (ram,0x00010fc4) */\n/* WARNING: Removing unreachable block (ram,0x0001114c) */\n/* WARNING: Removing unreachable block (ram,0x00010fe8) */\n/* WARNING: Removing unreachable block (ram,0x00010ff8) */\n/* WARNING: Removing unreachable block (ram,0x00011150) */\n/* WARNING: Removing unreachable block (ram,0x000115b0) */\n/* WARNING: Removing unreachable block (ram,0x00011170) */\n/* WARNING: Removing unreachable block (ram,0x00011590) */\n/* WARNING: Removing unreachable block (ram,0x0001167c) */\n/* WARNING: Removing unreachable block (ram,0x00011598) */\n/* WARNING: Removing unreachable block (ram,0x00011198) */\n/* WARNING: Removing unreachable block (ram,0x000117e8) */\n/* WARNING: Removing unreachable block (ram,0x000111cc) */\n/* WARNING: Removing unreachable block (ram,0x000113d4) */\n/* WARNING: Removing unreachable block (ram,0x0001140c) */\n/* WARNING: Removing unreachable block (ram,0x00011834) */\n/* WARNING: Removing unreachable block (ram,0x00011418) */\n/* WARNING: Removing unreachable block (ram,0x00011844) */\n/* WARNING: Removing unreachable block (ram,0x00011448) */\n/* WARNING: Removing unreachable block (ram,0x00011454) */\n/* WARNING: Removing unreachable block (ram,0x000111d8) */\n/* WARNING: Removing unreachable block (ram,0x000117a4) */\n/* WARNING: Removing unreachable block (ram,0x00011200) */\n/* WARNING: Removing unreachable block (ram,0x00011814) */\n/* WARNING: Removing unreachable block (ram,0x0001181c) */\n/* WARNING: Removing unreachable block (ram,0x0001120c) */\n/* WARNING: Removing unreachable block (ram,0x0001127c) */\n/* WARNING: Removing unreachable block (ram,0x00011280) */\n/* WARNING: Removing unreachable block (ram,0x00011288) */\n/* WARNING: Removing unreachable block (ram,0x00011294) */\n/* WARNING: Removing unreachable block (ram,0x0001129c) */\n/* WARNING: Removing unreachable block (ram,0x000112a4) */\n/* WARNING: Removing unreachable block (ram,0x000112f8) */\n/* WARNING: Removing unreachable block (ram,0x000115dc) */\n/* WARNING: Removing unreachable block (ram,0x00011600) */\n/* WARNING: Removing unreachable block (ram,0x00011628) */\n/* WARNING: Removing unreachable block (ram,0x00011644) */\n/* WARNING: Removing unreachable block (ram,0x0001164c) */\n/* WARNING: Removing unreachable block (ram,0x00011350) */\n/* WARNING: Removing unreachable block (ram,0x00011354) */\n/* WARNING: Removing unreachable block (ram,0x000117c0) */\n/* WARNING: Removing unreachable block (ram,0x000113b0) */\n/* WARNING: Removing unreachable block (ram,0x000116ac) */\n/* WARNING: Removing unreachable block (ram,0x000116b8) */\n/* WARNING: Removing unreachable block (ram,0x000116c0) */\n/* WARNING: Removing unreachable block (ram,0x000116cc) */\n/* WARNING: Removing unreachable block (ram,0x000118e0) */\n/* WARNING: Removing unreachable block (ram,0x000116f4) */\n/* WARNING: Removing unreachable block (ram,0x00011720) */\n/* WARNING: Removing unreachable block (ram,0x00011724) */\n/* WARNING: Removing unreachable block (ram,0x00011790) */\n/* WARNING: Removing unreachable block (ram,0x000113bc) */\n/* WARNING: Removing unreachable block (ram,0x0001179c) */\n/* WARNING: Removing unreachable block (ram,0x00011728) */\n/* WARNING: Removing unreachable block (ram,0x00011738) */\n/* WARNING: Removing unreachable block (ram,0x00011744) */\n/* WARNING: Removing unreachable block (ram,0x00011860) */\n/* WARNING: Removing unreachable block (ram,0x0001186c) */\n/* WARNING: Removing unreachable block (ram,0x00011874) */\n/* WARNING: Removing unreachable block (ram,0x00011878) */\n/* WARNING: Removing unreachable block (ram,0x000118f8) */\n/* WARNING: Removing unreachable block (ram,0x000118a0) */\n/* WARNING: Removing unreachable block (ram,0x000118cc) */\n/* WARNING: Removing unreachable block (ram,0x000118d0) */\n/* WARNING: Removing unreachable block (ram,0x00011020) */\n/* WARNING: Removing unreachable block (ram,0x0001102c) */\n/* WARNING: Removing unreachable block (ram,0x00011038) */\n/* WARNING: Removing unreachable block (ram,0x00011578) */\n/* WARNING: Removing unreachable block (ram,0x00011040) */\n/* WARNING: Removing unreachable block (ram,0x00011048) */\n/* WARNING: Removing unreachable block (ram,0x00011054) */\n/* WARNING: Removing unreachable block (ram,0x0001105c) */\n/* WARNING: Removing unreachable block (ram,0x00011068) */\n/* WARNING: Removing unreachable block (ram,0x000114ac) */\n/* WARNING: Removing unreachable block (ram,0x000114c4) */\n/* WARNING: Removing unreachable block (ram,0x00011074) */\n/* WARNING: Removing unreachable block (ram,0x00011088) */\n/* WARNING: Removing unreachable block (ram,0x0001192c) */\n/* WARNING: Removing unreachable block (ram,0x00011938) */\n/* WARNING: Removing unreachable block (ram,0x00011754) */\n\nundefined4 main(int param_1,int param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 local_d0 [2];\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  int local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_2c;\n  \n  puVar5 = PTR_00023174;\n  local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208;\n  local_c4 = 1;\n  local_c8 = 0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = 0;\n  local_98 = 0;\n  local_94 = 0;\n  local_bc = 0x3c;\n  local_d0[0] = 0;\n  iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0);\n  puVar1 = PTR_optind_00023204;\n  if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }\nLAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);\n  uVar3 = (*(code *)PTR_exit_000231f0)(1);\n  return uVar3;\n}\n\n" comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment (function_definition "undefined4 main(int param_1,int param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 local_d0 [2];\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  int local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_2c;\n  \n  puVar5 = PTR_00023174;\n  local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208;\n  local_c4 = 1;\n  local_c8 = 0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = 0;\n  local_98 = 0;\n  local_94 = 0;\n  local_bc = 0x3c;\n  local_d0[0] = 0;\n  iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0);\n  puVar1 = PTR_optind_00023204;\n  if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }\nLAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);\n  uVar3 = (*(code *)PTR_exit_000231f0)(1);\n  return uVar3;\n}" type_identifier (function_declarator "main(int param_1,int param_2)" identifier (parameter_list "(int param_1,int param_2)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "int param_2" primitive_type identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 local_d0 [2];\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  int local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_2c;\n  \n  puVar5 = PTR_00023174;\n  local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208;\n  local_c4 = 1;\n  local_c8 = 0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = 0;\n  local_98 = 0;\n  local_94 = 0;\n  local_bc = 0x3c;\n  local_d0[0] = 0;\n  iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0);\n  puVar1 = PTR_optind_00023204;\n  if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }\nLAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);\n  uVar3 = (*(code *)PTR_exit_000231f0)(1);\n  return uVar3;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "undefined4 local_d0 [2];" type_identifier (array_declarator "local_d0 [2]" identifier [ number_literal ]) ;) (declaration "undefined4 local_c8;" type_identifier identifier ;) (declaration "undefined4 local_c4;" type_identifier identifier ;) (declaration "undefined4 local_c0;" type_identifier identifier ;) (declaration "undefined4 local_bc;" type_identifier identifier ;) (declaration "undefined4 local_b8;" type_identifier identifier ;) (declaration "undefined4 local_b4;" type_identifier identifier ;) (declaration "undefined4 local_b0;" type_identifier identifier ;) (declaration "undefined4 local_ac;" type_identifier identifier ;) (declaration "undefined4 local_a8;" type_identifier identifier ;) (declaration "undefined4 local_a4;" type_identifier identifier ;) (declaration "int local_a0;" primitive_type identifier ;) (declaration "undefined4 local_9c;" type_identifier identifier ;) (declaration "undefined4 local_98;" type_identifier identifier ;) (declaration "undefined4 local_94;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (expression_statement "puVar5 = PTR_00023174;" (assignment_expression "puVar5 = PTR_00023174" identifier = identifier) ;) (expression_statement "local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208;" (assignment_expression "local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208" identifier = (pointer_expression "*(undefined4 *)PTR___stack_chk_guard_00023208" * (cast_expression "(undefined4 *)PTR___stack_chk_guard_00023208" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "local_c4 = 1;" (assignment_expression "local_c4 = 1" identifier = number_literal) ;) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) (expression_statement "local_c0 = 0;" (assignment_expression "local_c0 = 0" 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_ac = 0;" (assignment_expression "local_ac = 0" identifier = number_literal) ;) (expression_statement "local_a8 = 0;" (assignment_expression "local_a8 = 0" identifier = number_literal) ;) (expression_statement "local_a4 = 0;" (assignment_expression "local_a4 = 0" identifier = number_literal) ;) (expression_statement "local_a0 = 0;" (assignment_expression "local_a0 = 0" identifier = number_literal) ;) (expression_statement "local_9c = 0;" (assignment_expression "local_9c = 0" identifier = number_literal) ;) (expression_statement "local_98 = 0;" (assignment_expression "local_98 = 0" identifier = number_literal) ;) (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" identifier = number_literal) ;) (expression_statement "local_bc = 0x3c;" (assignment_expression "local_bc = 0x3c" identifier = number_literal) ;) (expression_statement "local_d0[0] = 0;" (assignment_expression "local_d0[0] = 0" (subscript_expression "local_d0[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0);" (assignment_expression "iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0)" identifier = (call_expression "(*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0)" (parenthesized_expression "(*(code *)PTR_getopt_long_000231ec)" ( (pointer_expression "*(code *)PTR_getopt_long_000231ec" * (cast_expression "(code *)PTR_getopt_long_000231ec" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0)" ( identifier , identifier , (binary_expression "PTR_00023174 + 0x2014" identifier + number_literal) , (binary_expression "PTR_DAT_00023168 + 0x3010" identifier + number_literal) , identifier )))) ;) (expression_statement "puVar1 = PTR_optind_00023204;" (assignment_expression "puVar1 = PTR_optind_00023204" identifier = identifier) ;) (if_statement "if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }" if (parenthesized_expression "(iVar2 == -1)" ( (binary_expression "iVar2 == -1" identifier == number_literal) )) (compound_statement "{\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }" { (expression_statement "iVar2 = *(int *)PTR_optind_00023204;" (assignment_expression "iVar2 = *(int *)PTR_optind_00023204" identifier = (pointer_expression "*(int *)PTR_optind_00023204" * (cast_expression "(int *)PTR_optind_00023204" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }" if (parenthesized_expression "(iVar2 < param_1)" ( (binary_expression "iVar2 < param_1" identifier < identifier) )) (compound_statement "{\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }" { (expression_statement "iVar4 = iVar2 + 1;" (assignment_expression "iVar4 = iVar2 + 1" identifier = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) (expression_statement "local_a0 = *(int *)(param_2 + iVar2 * 4);" (assignment_expression "local_a0 = *(int *)(param_2 + iVar2 * 4)" identifier = (pointer_expression "*(int *)(param_2 + iVar2 * 4)" * (cast_expression "(int *)(param_2 + iVar2 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + iVar2 * 4)" ( (binary_expression "param_2 + iVar2 * 4" identifier + (binary_expression "iVar2 * 4" identifier * number_literal)) ))))) ;) (expression_statement "*(int *)PTR_optind_00023204 = iVar4;" (assignment_expression "*(int *)PTR_optind_00023204 = iVar4" (pointer_expression "*(int *)PTR_optind_00023204" * (cast_expression "(int *)PTR_optind_00023204" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) (if_statement "if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }" if (parenthesized_expression "(iVar4 < param_1)" ( (binary_expression "iVar4 < param_1" identifier < identifier) )) (compound_statement "{\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }" { (expression_statement "puVar5 = PTR_00023174 + 0x282c;" (assignment_expression "puVar5 = PTR_00023174 + 0x282c" identifier = (binary_expression "PTR_00023174 + 0x282c" identifier + number_literal)) ;) (do_statement "do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);" do (compound_statement "{\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        }" { (expression_statement "(*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));" (call_expression "(*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4))" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar5,*(undefined4 *)(param_2 + iVar4 * 4))" ( identifier , (pointer_expression "*(undefined4 *)(param_2 + iVar4 * 4)" * (cast_expression "(undefined4 *)(param_2 + iVar4 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + iVar4 * 4)" ( (binary_expression "param_2 + iVar4 * 4" identifier + (binary_expression "iVar4 * 4" identifier * number_literal)) )))) ))) ;) (expression_statement "iVar4 = *(int *)puVar1 + 1;" (assignment_expression "iVar4 = *(int *)puVar1 + 1" identifier = (binary_expression "*(int *)puVar1 + 1" (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal)) ;) (expression_statement "*(int *)puVar1 = iVar4;" (assignment_expression "*(int *)puVar1 = iVar4" (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }) while (parenthesized_expression "(iVar4 < param_1)" ( (binary_expression "iVar4 < param_1" identifier < identifier) )) ;) (goto_statement "goto LAB_00011490;" goto statement_identifier ;) })) })) (if_statement "if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }" if (parenthesized_expression "(local_a0 == 0)" ( (binary_expression "local_a0 == 0" identifier == number_literal) )) (compound_statement "{\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }" { (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_00023174 + 0x284c)" ( (binary_expression "PTR_00023174 + 0x284c" identifier + number_literal) ))) ;) }) (else_clause "else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }" else (compound_statement "{\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }" { (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_00023174 + 0x2864)" ( (binary_expression "PTR_00023174 + 0x2864" identifier + number_literal) ))) ;) }))) }) (else_clause "else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }" else (compound_statement "{\n    if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }" { (if_statement "if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }" if (parenthesized_expression "(iVar2 - 0x3fU < 0x3a)" ( (binary_expression "iVar2 - 0x3fU < 0x3a" (binary_expression "iVar2 - 0x3fU" identifier - number_literal) < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }" { comment comment (expression_statement "uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();" (assignment_expression "uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))()" identifier = (call_expression "(*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))()" (parenthesized_expression "(*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))" ( (pointer_expression "*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50))" * (cast_expression "(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50))" ( (binary_expression "&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)" (pointer_expression "&_gp_1" & identifier) + (pointer_expression "*(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)" * (cast_expression "(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)" ( (binary_expression "puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50" (binary_expression "puVar5 + (iVar2 - 0x3fU) * 4" identifier + (binary_expression "(iVar2 - 0x3fU) * 4" (parenthesized_expression "(iVar2 - 0x3fU)" ( (binary_expression "iVar2 - 0x3fU" identifier - number_literal) )) * number_literal)) + number_literal) ))))) )))) )) (argument_list "()" ( )))) ;) (return_statement "return uVar3;" return identifier ;) })) (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_00023174 + 0x2808,iVar2)" ( (binary_expression "PTR_00023174 + 0x2808" identifier + number_literal) , identifier ))) ;) }))) (labeled_statement "LAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);" statement_identifier : (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_00023174 + 0x2060)" ( (binary_expression "PTR_00023174 + 0x2060" identifier + number_literal) ))) ;)) (expression_statement "uVar3 = (*(code *)PTR_exit_000231f0)(1);" (assignment_expression "uVar3 = (*(code *)PTR_exit_000231f0)(1)" identifier = (call_expression "(*(code *)PTR_exit_000231f0)(1)" (parenthesized_expression "(*(code *)PTR_exit_000231f0)" ( (pointer_expression "*(code *)PTR_exit_000231f0" * (cast_expression "(code *)PTR_exit_000231f0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(1)" ( number_literal )))) ;) (return_statement "return uVar3;" return identifier ;) })))
(translation_unit "/* WARNING: Removing unreachable block (ram,0x00010f2c) */\n/* WARNING: Removing unreachable block (ram,0x00011964) */\n/* WARNING: Removing unreachable block (ram,0x00010f34) */\n/* WARNING: Removing unreachable block (ram,0x00010f3c) */\n/* WARNING: Removing unreachable block (ram,0x00010f4c) */\n/* WARNING: Removing unreachable block (ram,0x00011110) */\n/* WARNING: Removing unreachable block (ram,0x00011118) */\n/* WARNING: Removing unreachable block (ram,0x00010f54) */\n/* WARNING: Removing unreachable block (ram,0x0001112c) */\n/* WARNING: Removing unreachable block (ram,0x00010f5c) */\n/* WARNING: Removing unreachable block (ram,0x000114ec) */\n/* WARNING: Removing unreachable block (ram,0x000115bc) */\n/* WARNING: Removing unreachable block (ram,0x00011514) */\n/* WARNING: Removing unreachable block (ram,0x00010f68) */\n/* WARNING: Removing unreachable block (ram,0x000114dc) */\n/* WARNING: Removing unreachable block (ram,0x00010f88) */\n/* WARNING: Removing unreachable block (ram,0x00010f8c) */\n/* WARNING: Removing unreachable block (ram,0x00011558) */\n/* WARNING: Removing unreachable block (ram,0x00011564) */\n/* WARNING: Removing unreachable block (ram,0x00010fb8) */\n/* WARNING: Removing unreachable block (ram,0x00011588) */\n/* WARNING: Removing unreachable block (ram,0x00010fc4) */\n/* WARNING: Removing unreachable block (ram,0x0001114c) */\n/* WARNING: Removing unreachable block (ram,0x00010fe8) */\n/* WARNING: Removing unreachable block (ram,0x00010ff8) */\n/* WARNING: Removing unreachable block (ram,0x00011150) */\n/* WARNING: Removing unreachable block (ram,0x000115b0) */\n/* WARNING: Removing unreachable block (ram,0x00011170) */\n/* WARNING: Removing unreachable block (ram,0x00011590) */\n/* WARNING: Removing unreachable block (ram,0x0001167c) */\n/* WARNING: Removing unreachable block (ram,0x00011598) */\n/* WARNING: Removing unreachable block (ram,0x00011198) */\n/* WARNING: Removing unreachable block (ram,0x000117e8) */\n/* WARNING: Removing unreachable block (ram,0x000111cc) */\n/* WARNING: Removing unreachable block (ram,0x000113d4) */\n/* WARNING: Removing unreachable block (ram,0x0001140c) */\n/* WARNING: Removing unreachable block (ram,0x00011834) */\n/* WARNING: Removing unreachable block (ram,0x00011418) */\n/* WARNING: Removing unreachable block (ram,0x00011844) */\n/* WARNING: Removing unreachable block (ram,0x00011448) */\n/* WARNING: Removing unreachable block (ram,0x00011454) */\n/* WARNING: Removing unreachable block (ram,0x000111d8) */\n/* WARNING: Removing unreachable block (ram,0x000117a4) */\n/* WARNING: Removing unreachable block (ram,0x00011200) */\n/* WARNING: Removing unreachable block (ram,0x00011814) */\n/* WARNING: Removing unreachable block (ram,0x0001181c) */\n/* WARNING: Removing unreachable block (ram,0x0001120c) */\n/* WARNING: Removing unreachable block (ram,0x0001127c) */\n/* WARNING: Removing unreachable block (ram,0x00011280) */\n/* WARNING: Removing unreachable block (ram,0x00011288) */\n/* WARNING: Removing unreachable block (ram,0x00011294) */\n/* WARNING: Removing unreachable block (ram,0x0001129c) */\n/* WARNING: Removing unreachable block (ram,0x000112a4) */\n/* WARNING: Removing unreachable block (ram,0x000112f8) */\n/* WARNING: Removing unreachable block (ram,0x000115dc) */\n/* WARNING: Removing unreachable block (ram,0x00011600) */\n/* WARNING: Removing unreachable block (ram,0x00011628) */\n/* WARNING: Removing unreachable block (ram,0x00011644) */\n/* WARNING: Removing unreachable block (ram,0x0001164c) */\n/* WARNING: Removing unreachable block (ram,0x00011350) */\n/* WARNING: Removing unreachable block (ram,0x00011354) */\n/* WARNING: Removing unreachable block (ram,0x000117c0) */\n/* WARNING: Removing unreachable block (ram,0x000113b0) */\n/* WARNING: Removing unreachable block (ram,0x000116ac) */\n/* WARNING: Removing unreachable block (ram,0x000116b8) */\n/* WARNING: Removing unreachable block (ram,0x000116c0) */\n/* WARNING: Removing unreachable block (ram,0x000116cc) */\n/* WARNING: Removing unreachable block (ram,0x000118e0) */\n/* WARNING: Removing unreachable block (ram,0x000116f4) */\n/* WARNING: Removing unreachable block (ram,0x00011720) */\n/* WARNING: Removing unreachable block (ram,0x00011724) */\n/* WARNING: Removing unreachable block (ram,0x00011790) */\n/* WARNING: Removing unreachable block (ram,0x000113bc) */\n/* WARNING: Removing unreachable block (ram,0x0001179c) */\n/* WARNING: Removing unreachable block (ram,0x00011728) */\n/* WARNING: Removing unreachable block (ram,0x00011738) */\n/* WARNING: Removing unreachable block (ram,0x00011744) */\n/* WARNING: Removing unreachable block (ram,0x00011860) */\n/* WARNING: Removing unreachable block (ram,0x0001186c) */\n/* WARNING: Removing unreachable block (ram,0x00011874) */\n/* WARNING: Removing unreachable block (ram,0x00011878) */\n/* WARNING: Removing unreachable block (ram,0x000118f8) */\n/* WARNING: Removing unreachable block (ram,0x000118a0) */\n/* WARNING: Removing unreachable block (ram,0x000118cc) */\n/* WARNING: Removing unreachable block (ram,0x000118d0) */\n/* WARNING: Removing unreachable block (ram,0x00011020) */\n/* WARNING: Removing unreachable block (ram,0x0001102c) */\n/* WARNING: Removing unreachable block (ram,0x00011038) */\n/* WARNING: Removing unreachable block (ram,0x00011578) */\n/* WARNING: Removing unreachable block (ram,0x00011040) */\n/* WARNING: Removing unreachable block (ram,0x00011048) */\n/* WARNING: Removing unreachable block (ram,0x00011054) */\n/* WARNING: Removing unreachable block (ram,0x0001105c) */\n/* WARNING: Removing unreachable block (ram,0x00011068) */\n/* WARNING: Removing unreachable block (ram,0x000114ac) */\n/* WARNING: Removing unreachable block (ram,0x000114c4) */\n/* WARNING: Removing unreachable block (ram,0x00011074) */\n/* WARNING: Removing unreachable block (ram,0x00011088) */\n/* WARNING: Removing unreachable block (ram,0x0001192c) */\n/* WARNING: Removing unreachable block (ram,0x00011938) */\n/* WARNING: Removing unreachable block (ram,0x00011754) */\n\nint main(int argc,char **argv)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  undefined *puVar4;\n  uint8_t *free_wrkBuff;\n  uint64_t ull;\n  int option_index;\n  opts_t opts;\n  uint8_t cawCmd [16];\n  char b [80];\n  \n  puVar4 = PTR_00023174;\n  opts.numblocks = 1;\n  opts.quiet = false;\n  opts.verbose_given = false;\n  opts.version_given = false;\n  opts.wfn_given = false;\n  opts.verbose = 0;\n  opts.xfer_len = 0;\n  opts._20_4_ = 0;\n  opts.lba._0_4_ = 0;\n  opts.lba._4_4_ = 0;\n  opts.ifn = (char *)0x0;\n  opts.wfn = (char *)0x0;\n  opts.device_name = (char *)0x0;\n  opts.flags.dpo = false;\n  opts.flags.fua = false;\n  opts.flags.fua_nv = false;\n  opts.flags._3_1_ = 0;\n  opts.flags.group = 0;\n  opts.flags.wrprotect = 0;\n  opts.timeout = 0x3c;\n  option_index = 0;\n  iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (argc,argv,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,&option_index);\n  puVar1 = PTR_optind_00023204;\n  if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < argc) {\n      iVar3 = iVar2 + 1;\n      opts.device_name = argv[iVar2];\n      *(int *)PTR_optind_00023204 = iVar3;\n      if (iVar3 < argc) {\n        puVar4 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3]);\n          iVar3 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar3;\n        } while (iVar3 < argc);\n        goto LAB_00011490;\n      }\n    }\n    if (opts.device_name == (char *)0x0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return iVar2;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }\nLAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);\n  iVar2 = (*(code *)PTR_exit_000231f0)(1);\n  return iVar2;\n}\n\n" comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment comment (function_definition "int main(int argc,char **argv)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  undefined *puVar4;\n  uint8_t *free_wrkBuff;\n  uint64_t ull;\n  int option_index;\n  opts_t opts;\n  uint8_t cawCmd [16];\n  char b [80];\n  \n  puVar4 = PTR_00023174;\n  opts.numblocks = 1;\n  opts.quiet = false;\n  opts.verbose_given = false;\n  opts.version_given = false;\n  opts.wfn_given = false;\n  opts.verbose = 0;\n  opts.xfer_len = 0;\n  opts._20_4_ = 0;\n  opts.lba._0_4_ = 0;\n  opts.lba._4_4_ = 0;\n  opts.ifn = (char *)0x0;\n  opts.wfn = (char *)0x0;\n  opts.device_name = (char *)0x0;\n  opts.flags.dpo = false;\n  opts.flags.fua = false;\n  opts.flags.fua_nv = false;\n  opts.flags._3_1_ = 0;\n  opts.flags.group = 0;\n  opts.flags.wrprotect = 0;\n  opts.timeout = 0x3c;\n  option_index = 0;\n  iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (argc,argv,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,&option_index);\n  puVar1 = PTR_optind_00023204;\n  if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < argc) {\n      iVar3 = iVar2 + 1;\n      opts.device_name = argv[iVar2];\n      *(int *)PTR_optind_00023204 = iVar3;\n      if (iVar3 < argc) {\n        puVar4 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3]);\n          iVar3 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar3;\n        } while (iVar3 < argc);\n        goto LAB_00011490;\n      }\n    }\n    if (opts.device_name == (char *)0x0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return iVar2;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }\nLAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);\n  iVar2 = (*(code *)PTR_exit_000231f0)(1);\n  return iVar2;\n}" primitive_type (function_declarator "main(int argc,char **argv)" identifier (parameter_list "(int argc,char **argv)" ( (parameter_declaration "int argc" primitive_type identifier) , (parameter_declaration "char **argv" primitive_type (pointer_declarator "**argv" * (pointer_declarator "*argv" * identifier))) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  undefined *puVar4;\n  uint8_t *free_wrkBuff;\n  uint64_t ull;\n  int option_index;\n  opts_t opts;\n  uint8_t cawCmd [16];\n  char b [80];\n  \n  puVar4 = PTR_00023174;\n  opts.numblocks = 1;\n  opts.quiet = false;\n  opts.verbose_given = false;\n  opts.version_given = false;\n  opts.wfn_given = false;\n  opts.verbose = 0;\n  opts.xfer_len = 0;\n  opts._20_4_ = 0;\n  opts.lba._0_4_ = 0;\n  opts.lba._4_4_ = 0;\n  opts.ifn = (char *)0x0;\n  opts.wfn = (char *)0x0;\n  opts.device_name = (char *)0x0;\n  opts.flags.dpo = false;\n  opts.flags.fua = false;\n  opts.flags.fua_nv = false;\n  opts.flags._3_1_ = 0;\n  opts.flags.group = 0;\n  opts.flags.wrprotect = 0;\n  opts.timeout = 0x3c;\n  option_index = 0;\n  iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (argc,argv,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,&option_index);\n  puVar1 = PTR_optind_00023204;\n  if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < argc) {\n      iVar3 = iVar2 + 1;\n      opts.device_name = argv[iVar2];\n      *(int *)PTR_optind_00023204 = iVar3;\n      if (iVar3 < argc) {\n        puVar4 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3]);\n          iVar3 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar3;\n        } while (iVar3 < argc);\n        goto LAB_00011490;\n      }\n    }\n    if (opts.device_name == (char *)0x0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return iVar2;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }\nLAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);\n  iVar2 = (*(code *)PTR_exit_000231f0)(1);\n  return iVar2;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "uint8_t *free_wrkBuff;" primitive_type (pointer_declarator "*free_wrkBuff" * identifier) ;) (declaration "uint64_t ull;" primitive_type identifier ;) (declaration "int option_index;" primitive_type identifier ;) (declaration "opts_t opts;" type_identifier identifier ;) (declaration "uint8_t cawCmd [16];" primitive_type (array_declarator "cawCmd [16]" identifier [ number_literal ]) ;) (declaration "char b [80];" primitive_type (array_declarator "b [80]" identifier [ number_literal ]) ;) (expression_statement "puVar4 = PTR_00023174;" (assignment_expression "puVar4 = PTR_00023174" identifier = identifier) ;) (expression_statement "opts.numblocks = 1;" (assignment_expression "opts.numblocks = 1" (field_expression "opts.numblocks" identifier . field_identifier) = number_literal) ;) (expression_statement "opts.quiet = false;" (assignment_expression "opts.quiet = false" (field_expression "opts.quiet" identifier . field_identifier) = false) ;) (expression_statement "opts.verbose_given = false;" (assignment_expression "opts.verbose_given = false" (field_expression "opts.verbose_given" identifier . field_identifier) = false) ;) (expression_statement "opts.version_given = false;" (assignment_expression "opts.version_given = false" (field_expression "opts.version_given" identifier . field_identifier) = false) ;) (expression_statement "opts.wfn_given = false;" (assignment_expression "opts.wfn_given = false" (field_expression "opts.wfn_given" identifier . field_identifier) = false) ;) (expression_statement "opts.verbose = 0;" (assignment_expression "opts.verbose = 0" (field_expression "opts.verbose" identifier . field_identifier) = number_literal) ;) (expression_statement "opts.xfer_len = 0;" (assignment_expression "opts.xfer_len = 0" (field_expression "opts.xfer_len" identifier . field_identifier) = number_literal) ;) (expression_statement "opts._20_4_ = 0;" (assignment_expression "opts._20_4_ = 0" (field_expression "opts._20_4_" identifier . field_identifier) = number_literal) ;) (expression_statement "opts.lba._0_4_ = 0;" (assignment_expression "opts.lba._0_4_ = 0" (field_expression "opts.lba._0_4_" (field_expression "opts.lba" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "opts.lba._4_4_ = 0;" (assignment_expression "opts.lba._4_4_ = 0" (field_expression "opts.lba._4_4_" (field_expression "opts.lba" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "opts.ifn = (char *)0x0;" (assignment_expression "opts.ifn = (char *)0x0" (field_expression "opts.ifn" identifier . field_identifier) = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "opts.wfn = (char *)0x0;" (assignment_expression "opts.wfn = (char *)0x0" (field_expression "opts.wfn" identifier . field_identifier) = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "opts.device_name = (char *)0x0;" (assignment_expression "opts.device_name = (char *)0x0" (field_expression "opts.device_name" identifier . field_identifier) = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "opts.flags.dpo = false;" (assignment_expression "opts.flags.dpo = false" (field_expression "opts.flags.dpo" (field_expression "opts.flags" identifier . field_identifier) . field_identifier) = false) ;) (expression_statement "opts.flags.fua = false;" (assignment_expression "opts.flags.fua = false" (field_expression "opts.flags.fua" (field_expression "opts.flags" identifier . field_identifier) . field_identifier) = false) ;) (expression_statement "opts.flags.fua_nv = false;" (assignment_expression "opts.flags.fua_nv = false" (field_expression "opts.flags.fua_nv" (field_expression "opts.flags" identifier . field_identifier) . field_identifier) = false) ;) (expression_statement "opts.flags._3_1_ = 0;" (assignment_expression "opts.flags._3_1_ = 0" (field_expression "opts.flags._3_1_" (field_expression "opts.flags" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "opts.flags.group = 0;" (assignment_expression "opts.flags.group = 0" (field_expression "opts.flags.group" (field_expression "opts.flags" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "opts.flags.wrprotect = 0;" (assignment_expression "opts.flags.wrprotect = 0" (field_expression "opts.flags.wrprotect" (field_expression "opts.flags" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "opts.timeout = 0x3c;" (assignment_expression "opts.timeout = 0x3c" (field_expression "opts.timeout" identifier . field_identifier) = number_literal) ;) (expression_statement "option_index = 0;" (assignment_expression "option_index = 0" identifier = number_literal) ;) (expression_statement "iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (argc,argv,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,&option_index);" (assignment_expression "iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (argc,argv,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,&option_index)" identifier = (call_expression "(*(code *)PTR_getopt_long_000231ec)\n                    (argc,argv,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,&option_index)" (parenthesized_expression "(*(code *)PTR_getopt_long_000231ec)" ( (pointer_expression "*(code *)PTR_getopt_long_000231ec" * (cast_expression "(code *)PTR_getopt_long_000231ec" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(argc,argv,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,&option_index)" ( identifier , identifier , (binary_expression "PTR_00023174 + 0x2014" identifier + number_literal) , (binary_expression "PTR_DAT_00023168 + 0x3010" identifier + number_literal) , (pointer_expression "&option_index" & identifier) )))) ;) (expression_statement "puVar1 = PTR_optind_00023204;" (assignment_expression "puVar1 = PTR_optind_00023204" identifier = identifier) ;) (if_statement "if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < argc) {\n      iVar3 = iVar2 + 1;\n      opts.device_name = argv[iVar2];\n      *(int *)PTR_optind_00023204 = iVar3;\n      if (iVar3 < argc) {\n        puVar4 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3]);\n          iVar3 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar3;\n        } while (iVar3 < argc);\n        goto LAB_00011490;\n      }\n    }\n    if (opts.device_name == (char *)0x0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return iVar2;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }" if (parenthesized_expression "(iVar2 == -1)" ( (binary_expression "iVar2 == -1" identifier == number_literal) )) (compound_statement "{\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < argc) {\n      iVar3 = iVar2 + 1;\n      opts.device_name = argv[iVar2];\n      *(int *)PTR_optind_00023204 = iVar3;\n      if (iVar3 < argc) {\n        puVar4 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3]);\n          iVar3 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar3;\n        } while (iVar3 < argc);\n        goto LAB_00011490;\n      }\n    }\n    if (opts.device_name == (char *)0x0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }" { (expression_statement "iVar2 = *(int *)PTR_optind_00023204;" (assignment_expression "iVar2 = *(int *)PTR_optind_00023204" identifier = (pointer_expression "*(int *)PTR_optind_00023204" * (cast_expression "(int *)PTR_optind_00023204" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (iVar2 < argc) {\n      iVar3 = iVar2 + 1;\n      opts.device_name = argv[iVar2];\n      *(int *)PTR_optind_00023204 = iVar3;\n      if (iVar3 < argc) {\n        puVar4 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3]);\n          iVar3 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar3;\n        } while (iVar3 < argc);\n        goto LAB_00011490;\n      }\n    }" if (parenthesized_expression "(iVar2 < argc)" ( (binary_expression "iVar2 < argc" identifier < identifier) )) (compound_statement "{\n      iVar3 = iVar2 + 1;\n      opts.device_name = argv[iVar2];\n      *(int *)PTR_optind_00023204 = iVar3;\n      if (iVar3 < argc) {\n        puVar4 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3]);\n          iVar3 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar3;\n        } while (iVar3 < argc);\n        goto LAB_00011490;\n      }\n    }" { (expression_statement "iVar3 = iVar2 + 1;" (assignment_expression "iVar3 = iVar2 + 1" identifier = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) (expression_statement "opts.device_name = argv[iVar2];" (assignment_expression "opts.device_name = argv[iVar2]" (field_expression "opts.device_name" identifier . field_identifier) = (subscript_expression "argv[iVar2]" identifier [ identifier ])) ;) (expression_statement "*(int *)PTR_optind_00023204 = iVar3;" (assignment_expression "*(int *)PTR_optind_00023204 = iVar3" (pointer_expression "*(int *)PTR_optind_00023204" * (cast_expression "(int *)PTR_optind_00023204" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) (if_statement "if (iVar3 < argc) {\n        puVar4 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3]);\n          iVar3 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar3;\n        } while (iVar3 < argc);\n        goto LAB_00011490;\n      }" if (parenthesized_expression "(iVar3 < argc)" ( (binary_expression "iVar3 < argc" identifier < identifier) )) (compound_statement "{\n        puVar4 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3]);\n          iVar3 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar3;\n        } while (iVar3 < argc);\n        goto LAB_00011490;\n      }" { (expression_statement "puVar4 = PTR_00023174 + 0x282c;" (assignment_expression "puVar4 = PTR_00023174 + 0x282c" identifier = (binary_expression "PTR_00023174 + 0x282c" identifier + number_literal)) ;) (do_statement "do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3]);\n          iVar3 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar3;\n        } while (iVar3 < argc);" do (compound_statement "{\n          (*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3]);\n          iVar3 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar3;\n        }" { (expression_statement "(*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3]);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(puVar4,argv[iVar3])" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar4,argv[iVar3])" ( identifier , (subscript_expression "argv[iVar3]" identifier [ identifier ]) ))) ;) (expression_statement "iVar3 = *(int *)puVar1 + 1;" (assignment_expression "iVar3 = *(int *)puVar1 + 1" identifier = (binary_expression "*(int *)puVar1 + 1" (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal)) ;) (expression_statement "*(int *)puVar1 = iVar3;" (assignment_expression "*(int *)puVar1 = iVar3" (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }) while (parenthesized_expression "(iVar3 < argc)" ( (binary_expression "iVar3 < argc" identifier < identifier) )) ;) (goto_statement "goto LAB_00011490;" goto statement_identifier ;) })) })) (if_statement "if (opts.device_name == (char *)0x0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }" if (parenthesized_expression "(opts.device_name == (char *)0x0)" ( (binary_expression "opts.device_name == (char *)0x0" (field_expression "opts.device_name" identifier . field_identifier) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }" { (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_00023174 + 0x284c)" ( (binary_expression "PTR_00023174 + 0x284c" identifier + number_literal) ))) ;) }) (else_clause "else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }" else (compound_statement "{\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }" { (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_00023174 + 0x2864)" ( (binary_expression "PTR_00023174 + 0x2864" identifier + number_literal) ))) ;) }))) }) (else_clause "else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return iVar2;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }" else (compound_statement "{\n    if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return iVar2;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }" { (if_statement "if (iVar2 - 0x3fU < 0x3a) {\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return iVar2;\n    }" if (parenthesized_expression "(iVar2 - 0x3fU < 0x3a)" ( (binary_expression "iVar2 - 0x3fU < 0x3a" (binary_expression "iVar2 - 0x3fU" identifier - number_literal) < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not emulate address calculation at 0x00010d34 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return iVar2;\n    }" { comment comment (expression_statement "iVar2 = (*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();" (assignment_expression "iVar2 = (*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)))()" identifier = (call_expression "(*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)))()" (parenthesized_expression "(*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)))" ( (pointer_expression "*(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50))" * (cast_expression "(code *)(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50))" ( (binary_expression "&_gp + *(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)" (pointer_expression "&_gp" & identifier) + (pointer_expression "*(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)" * (cast_expression "(int *)(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50)" ( (binary_expression "puVar4 + (iVar2 - 0x3fU) * 4 + 0x2c50" (binary_expression "puVar4 + (iVar2 - 0x3fU) * 4" identifier + (binary_expression "(iVar2 - 0x3fU) * 4" (parenthesized_expression "(iVar2 - 0x3fU)" ( (binary_expression "iVar2 - 0x3fU" identifier - number_literal) )) * number_literal)) + number_literal) ))))) )))) )) (argument_list "()" ( )))) ;) (return_statement "return iVar2;" return identifier ;) })) (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_00023174 + 0x2808,iVar2)" ( (binary_expression "PTR_00023174 + 0x2808" identifier + number_literal) , identifier ))) ;) }))) (labeled_statement "LAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);" statement_identifier : (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_00023174 + 0x2060)" ( (binary_expression "PTR_00023174 + 0x2060" identifier + number_literal) ))) ;)) (expression_statement "iVar2 = (*(code *)PTR_exit_000231f0)(1);" (assignment_expression "iVar2 = (*(code *)PTR_exit_000231f0)(1)" identifier = (call_expression "(*(code *)PTR_exit_000231f0)(1)" (parenthesized_expression "(*(code *)PTR_exit_000231f0)" ( (pointer_expression "*(code *)PTR_exit_000231f0" * (cast_expression "(code *)PTR_exit_000231f0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(1)" ( number_literal )))) ;) (return_statement "return iVar2;" return identifier ;) })))
(translation_unit "undefined4 main(int param_1,int param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 local_d0 [2];\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  int local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_2c;\n  \n  puVar5 = PTR_00023174;\n  local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208;\n  local_c4 = 1;\n  local_c8 = 0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = 0;\n  local_98 = 0;\n  local_94 = 0;\n  local_bc = 0x3c;\n  local_d0[0] = 0;\n  iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0);\n  puVar1 = PTR_optind_00023204;\n  if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }\nLAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);\n  uVar3 = (*(code *)PTR_exit_000231f0)(1);\n  return uVar3;\n}\n\n" (function_definition "undefined4 main(int param_1,int param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 local_d0 [2];\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  int local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_2c;\n  \n  puVar5 = PTR_00023174;\n  local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208;\n  local_c4 = 1;\n  local_c8 = 0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = 0;\n  local_98 = 0;\n  local_94 = 0;\n  local_bc = 0x3c;\n  local_d0[0] = 0;\n  iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0);\n  puVar1 = PTR_optind_00023204;\n  if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }\nLAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);\n  uVar3 = (*(code *)PTR_exit_000231f0)(1);\n  return uVar3;\n}" type_identifier (function_declarator "main(int param_1,int param_2)" identifier (parameter_list "(int param_1,int param_2)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "int param_2" primitive_type identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 local_d0 [2];\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  int local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_2c;\n  \n  puVar5 = PTR_00023174;\n  local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208;\n  local_c4 = 1;\n  local_c8 = 0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = 0;\n  local_98 = 0;\n  local_94 = 0;\n  local_bc = 0x3c;\n  local_d0[0] = 0;\n  iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0);\n  puVar1 = PTR_optind_00023204;\n  if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }\nLAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);\n  uVar3 = (*(code *)PTR_exit_000231f0)(1);\n  return uVar3;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "undefined4 local_d0 [2];" type_identifier (array_declarator "local_d0 [2]" identifier [ number_literal ]) ;) (declaration "undefined4 local_c8;" type_identifier identifier ;) (declaration "undefined4 local_c4;" type_identifier identifier ;) (declaration "undefined4 local_c0;" type_identifier identifier ;) (declaration "undefined4 local_bc;" type_identifier identifier ;) (declaration "undefined4 local_b8;" type_identifier identifier ;) (declaration "undefined4 local_b4;" type_identifier identifier ;) (declaration "undefined4 local_b0;" type_identifier identifier ;) (declaration "undefined4 local_ac;" type_identifier identifier ;) (declaration "undefined4 local_a8;" type_identifier identifier ;) (declaration "undefined4 local_a4;" type_identifier identifier ;) (declaration "int local_a0;" primitive_type identifier ;) (declaration "undefined4 local_9c;" type_identifier identifier ;) (declaration "undefined4 local_98;" type_identifier identifier ;) (declaration "undefined4 local_94;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (expression_statement "puVar5 = PTR_00023174;" (assignment_expression "puVar5 = PTR_00023174" identifier = identifier) ;) (expression_statement "local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208;" (assignment_expression "local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208" identifier = (pointer_expression "*(undefined4 *)PTR___stack_chk_guard_00023208" * (cast_expression "(undefined4 *)PTR___stack_chk_guard_00023208" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "local_c4 = 1;" (assignment_expression "local_c4 = 1" identifier = number_literal) ;) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) (expression_statement "local_c0 = 0;" (assignment_expression "local_c0 = 0" 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_ac = 0;" (assignment_expression "local_ac = 0" identifier = number_literal) ;) (expression_statement "local_a8 = 0;" (assignment_expression "local_a8 = 0" identifier = number_literal) ;) (expression_statement "local_a4 = 0;" (assignment_expression "local_a4 = 0" identifier = number_literal) ;) (expression_statement "local_a0 = 0;" (assignment_expression "local_a0 = 0" identifier = number_literal) ;) (expression_statement "local_9c = 0;" (assignment_expression "local_9c = 0" identifier = number_literal) ;) (expression_statement "local_98 = 0;" (assignment_expression "local_98 = 0" identifier = number_literal) ;) (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" identifier = number_literal) ;) (expression_statement "local_bc = 0x3c;" (assignment_expression "local_bc = 0x3c" identifier = number_literal) ;) (expression_statement "local_d0[0] = 0;" (assignment_expression "local_d0[0] = 0" (subscript_expression "local_d0[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0);" (assignment_expression "iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0)" identifier = (call_expression "(*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0)" (parenthesized_expression "(*(code *)PTR_getopt_long_000231ec)" ( (pointer_expression "*(code *)PTR_getopt_long_000231ec" * (cast_expression "(code *)PTR_getopt_long_000231ec" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0)" ( identifier , identifier , (binary_expression "PTR_00023174 + 0x2014" identifier + number_literal) , (binary_expression "PTR_DAT_00023168 + 0x3010" identifier + number_literal) , identifier )))) ;) (expression_statement "puVar1 = PTR_optind_00023204;" (assignment_expression "puVar1 = PTR_optind_00023204" identifier = identifier) ;) (if_statement "if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }" if (parenthesized_expression "(iVar2 == -1)" ( (binary_expression "iVar2 == -1" identifier == number_literal) )) (compound_statement "{\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }" { (expression_statement "iVar2 = *(int *)PTR_optind_00023204;" (assignment_expression "iVar2 = *(int *)PTR_optind_00023204" identifier = (pointer_expression "*(int *)PTR_optind_00023204" * (cast_expression "(int *)PTR_optind_00023204" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }" if (parenthesized_expression "(iVar2 < param_1)" ( (binary_expression "iVar2 < param_1" identifier < identifier) )) (compound_statement "{\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }" { (expression_statement "iVar4 = iVar2 + 1;" (assignment_expression "iVar4 = iVar2 + 1" identifier = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) (expression_statement "local_a0 = *(int *)(param_2 + iVar2 * 4);" (assignment_expression "local_a0 = *(int *)(param_2 + iVar2 * 4)" identifier = (pointer_expression "*(int *)(param_2 + iVar2 * 4)" * (cast_expression "(int *)(param_2 + iVar2 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + iVar2 * 4)" ( (binary_expression "param_2 + iVar2 * 4" identifier + (binary_expression "iVar2 * 4" identifier * number_literal)) ))))) ;) (expression_statement "*(int *)PTR_optind_00023204 = iVar4;" (assignment_expression "*(int *)PTR_optind_00023204 = iVar4" (pointer_expression "*(int *)PTR_optind_00023204" * (cast_expression "(int *)PTR_optind_00023204" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) (if_statement "if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }" if (parenthesized_expression "(iVar4 < param_1)" ( (binary_expression "iVar4 < param_1" identifier < identifier) )) (compound_statement "{\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }" { (expression_statement "puVar5 = PTR_00023174 + 0x282c;" (assignment_expression "puVar5 = PTR_00023174 + 0x282c" identifier = (binary_expression "PTR_00023174 + 0x282c" identifier + number_literal)) ;) (do_statement "do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);" do (compound_statement "{\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        }" { (expression_statement "(*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));" (call_expression "(*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4))" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar5,*(undefined4 *)(param_2 + iVar4 * 4))" ( identifier , (pointer_expression "*(undefined4 *)(param_2 + iVar4 * 4)" * (cast_expression "(undefined4 *)(param_2 + iVar4 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + iVar4 * 4)" ( (binary_expression "param_2 + iVar4 * 4" identifier + (binary_expression "iVar4 * 4" identifier * number_literal)) )))) ))) ;) (expression_statement "iVar4 = *(int *)puVar1 + 1;" (assignment_expression "iVar4 = *(int *)puVar1 + 1" identifier = (binary_expression "*(int *)puVar1 + 1" (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal)) ;) (expression_statement "*(int *)puVar1 = iVar4;" (assignment_expression "*(int *)puVar1 = iVar4" (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }) while (parenthesized_expression "(iVar4 < param_1)" ( (binary_expression "iVar4 < param_1" identifier < identifier) )) ;) (goto_statement "goto LAB_00011490;" goto statement_identifier ;) })) })) (if_statement "if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }" if (parenthesized_expression "(local_a0 == 0)" ( (binary_expression "local_a0 == 0" identifier == number_literal) )) (compound_statement "{\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }" { (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_00023174 + 0x284c)" ( (binary_expression "PTR_00023174 + 0x284c" identifier + number_literal) ))) ;) }) (else_clause "else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }" else (compound_statement "{\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }" { (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_00023174 + 0x2864)" ( (binary_expression "PTR_00023174 + 0x2864" identifier + number_literal) ))) ;) }))) }) (else_clause "else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }" else (compound_statement "{\n    if (iVar2 - 0x3fU < 0x3a) {\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }" { (if_statement "if (iVar2 - 0x3fU < 0x3a) {\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }" if (parenthesized_expression "(iVar2 - 0x3fU < 0x3a)" ( (binary_expression "iVar2 - 0x3fU < 0x3a" (binary_expression "iVar2 - 0x3fU" identifier - number_literal) < number_literal) )) (compound_statement "{\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }" { (expression_statement "uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();" (assignment_expression "uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))()" identifier = (call_expression "(*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))()" (parenthesized_expression "(*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))" ( (pointer_expression "*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50))" * (cast_expression "(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50))" ( (binary_expression "&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)" (pointer_expression "&_gp_1" & identifier) + (pointer_expression "*(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)" * (cast_expression "(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)" ( (binary_expression "puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50" (binary_expression "puVar5 + (iVar2 - 0x3fU) * 4" identifier + (binary_expression "(iVar2 - 0x3fU) * 4" (parenthesized_expression "(iVar2 - 0x3fU)" ( (binary_expression "iVar2 - 0x3fU" identifier - number_literal) )) * number_literal)) + number_literal) ))))) )))) )) (argument_list "()" ( )))) ;) (return_statement "return uVar3;" return identifier ;) })) (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_00023174 + 0x2808,iVar2)" ( (binary_expression "PTR_00023174 + 0x2808" identifier + number_literal) , identifier ))) ;) }))) (labeled_statement "LAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);" statement_identifier : (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" ( (pointer_expression "*(code *)PTR_pr2serr_000231fc" * (cast_expression "(code *)PTR_pr2serr_000231fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_00023174 + 0x2060)" ( (binary_expression "PTR_00023174 + 0x2060" identifier + number_literal) ))) ;)) (expression_statement "uVar3 = (*(code *)PTR_exit_000231f0)(1);" (assignment_expression "uVar3 = (*(code *)PTR_exit_000231f0)(1)" identifier = (call_expression "(*(code *)PTR_exit_000231f0)(1)" (parenthesized_expression "(*(code *)PTR_exit_000231f0)" ( (pointer_expression "*(code *)PTR_exit_000231f0" * (cast_expression "(code *)PTR_exit_000231f0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(1)" ( number_literal )))) ;) (return_statement "return uVar3;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_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 = LIT) ;) (expression_statement (assignment_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 = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (do_statement do (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) )))) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) (goto_statement goto statement_identifier ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) ))) ;) }))) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression (parenthesized_expression ( (binary_expression IDENT - LIT) )) * LIT)) + LIT) ))))) )))) )) (argument_list ( )))) ;) (return_statement return IDENT ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , IDENT ))) ;) }))) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) ))) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT )))) ;) (return_statement return IDENT ;) })))
(function_definition "undefined4 main(int param_1,int param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 local_d0 [2];\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  int local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_2c;\n  \n  puVar5 = PTR_00023174;\n  local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208;\n  local_c4 = 1;\n  local_c8 = 0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = 0;\n  local_98 = 0;\n  local_94 = 0;\n  local_bc = 0x3c;\n  local_d0[0] = 0;\n  iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0);\n  puVar1 = PTR_optind_00023204;\n  if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }\nLAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);\n  uVar3 = (*(code *)PTR_exit_000231f0)(1);\n  return uVar3;\n}" (type_identifier "undefined4") (function_declarator "main(int param_1,int param_2)" (identifier "main") (parameter_list "(int param_1,int param_2)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) (, ",") (parameter_declaration "int param_2" (primitive_type "int") (identifier "param_2")) () ")"))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 local_d0 [2];\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  int local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_2c;\n  \n  puVar5 = PTR_00023174;\n  local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208;\n  local_c4 = 1;\n  local_c8 = 0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = 0;\n  local_98 = 0;\n  local_94 = 0;\n  local_bc = 0x3c;\n  local_d0[0] = 0;\n  iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0);\n  puVar1 = PTR_optind_00023204;\n  if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }\nLAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);\n  uVar3 = (*(code *)PTR_exit_000231f0)(1);\n  return uVar3;\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "undefined4 uVar3;" (type_identifier "undefined4") (identifier "uVar3") (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "undefined *puVar5;" (type_identifier "undefined") (pointer_declarator "*puVar5" (* "*") (identifier "puVar5")) (; ";")) (declaration "undefined4 local_d0 [2];" (type_identifier "undefined4") (array_declarator "local_d0 [2]" (identifier "local_d0") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined4 local_c8;" (type_identifier "undefined4") (identifier "local_c8") (; ";")) (declaration "undefined4 local_c4;" (type_identifier "undefined4") (identifier "local_c4") (; ";")) (declaration "undefined4 local_c0;" (type_identifier "undefined4") (identifier "local_c0") (; ";")) (declaration "undefined4 local_bc;" (type_identifier "undefined4") (identifier "local_bc") (; ";")) (declaration "undefined4 local_b8;" (type_identifier "undefined4") (identifier "local_b8") (; ";")) (declaration "undefined4 local_b4;" (type_identifier "undefined4") (identifier "local_b4") (; ";")) (declaration "undefined4 local_b0;" (type_identifier "undefined4") (identifier "local_b0") (; ";")) (declaration "undefined4 local_ac;" (type_identifier "undefined4") (identifier "local_ac") (; ";")) (declaration "undefined4 local_a8;" (type_identifier "undefined4") (identifier "local_a8") (; ";")) (declaration "undefined4 local_a4;" (type_identifier "undefined4") (identifier "local_a4") (; ";")) (declaration "int local_a0;" (primitive_type "int") (identifier "local_a0") (; ";")) (declaration "undefined4 local_9c;" (type_identifier "undefined4") (identifier "local_9c") (; ";")) (declaration "undefined4 local_98;" (type_identifier "undefined4") (identifier "local_98") (; ";")) (declaration "undefined4 local_94;" (type_identifier "undefined4") (identifier "local_94") (; ";")) (declaration "undefined4 local_2c;" (type_identifier "undefined4") (identifier "local_2c") (; ";")) (expression_statement "puVar5 = PTR_00023174;" (assignment_expression "puVar5 = PTR_00023174" (identifier "puVar5") (= "=") (identifier "PTR_00023174")) (; ";")) (expression_statement "local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208;" (assignment_expression "local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208" (identifier "local_2c") (= "=") (pointer_expression "*(undefined4 *)PTR___stack_chk_guard_00023208" (* "*") (cast_expression "(undefined4 *)PTR___stack_chk_guard_00023208" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_00023208")))) (; ";")) (expression_statement "local_c4 = 1;" (assignment_expression "local_c4 = 1" (identifier "local_c4") (= "=") (number_literal "1")) (; ";")) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" (identifier "local_c8") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_c0 = 0;" (assignment_expression "local_c0 = 0" (identifier "local_c0") (= "=") (number_literal "0")) (; ";")) (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_ac = 0;" (assignment_expression "local_ac = 0" (identifier "local_ac") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_a8 = 0;" (assignment_expression "local_a8 = 0" (identifier "local_a8") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_a4 = 0;" (assignment_expression "local_a4 = 0" (identifier "local_a4") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_a0 = 0;" (assignment_expression "local_a0 = 0" (identifier "local_a0") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_9c = 0;" (assignment_expression "local_9c = 0" (identifier "local_9c") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_98 = 0;" (assignment_expression "local_98 = 0" (identifier "local_98") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" (identifier "local_94") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_bc = 0x3c;" (assignment_expression "local_bc = 0x3c" (identifier "local_bc") (= "=") (number_literal "0x3c")) (; ";")) (expression_statement "local_d0[0] = 0;" (assignment_expression "local_d0[0] = 0" (subscript_expression "local_d0[0]" (identifier "local_d0") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0);" (assignment_expression "iVar2 = (*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0)" (identifier "iVar2") (= "=") (call_expression "(*(code *)PTR_getopt_long_000231ec)\n                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0)" (parenthesized_expression "(*(code *)PTR_getopt_long_000231ec)" (( "(") (pointer_expression "*(code *)PTR_getopt_long_000231ec" (* "*") (cast_expression "(code *)PTR_getopt_long_000231ec" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_getopt_long_000231ec"))) () ")")) (argument_list "(param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (binary_expression "PTR_00023174 + 0x2014" (identifier "PTR_00023174") (+ "+") (number_literal "0x2014")) (, ",") (binary_expression "PTR_DAT_00023168 + 0x3010" (identifier "PTR_DAT_00023168") (+ "+") (number_literal "0x3010")) (, ",") (identifier "local_d0") () ")")))) (; ";")) (expression_statement "puVar1 = PTR_optind_00023204;" (assignment_expression "puVar1 = PTR_optind_00023204" (identifier "puVar1") (= "=") (identifier "PTR_optind_00023204")) (; ";")) (if_statement "if (iVar2 == -1) {\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }\n  else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }" (if "if") (parenthesized_expression "(iVar2 == -1)" (( "(") (binary_expression "iVar2 == -1" (identifier "iVar2") (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n    iVar2 = *(int *)PTR_optind_00023204;\n    if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }\n    if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }\n  }" ({ "{") (expression_statement "iVar2 = *(int *)PTR_optind_00023204;" (assignment_expression "iVar2 = *(int *)PTR_optind_00023204" (identifier "iVar2") (= "=") (pointer_expression "*(int *)PTR_optind_00023204" (* "*") (cast_expression "(int *)PTR_optind_00023204" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_optind_00023204")))) (; ";")) (if_statement "if (iVar2 < param_1) {\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }" (if "if") (parenthesized_expression "(iVar2 < param_1)" (( "(") (binary_expression "iVar2 < param_1" (identifier "iVar2") (< "<") (identifier "param_1")) () ")")) (compound_statement "{\n      iVar4 = iVar2 + 1;\n      local_a0 = *(int *)(param_2 + iVar2 * 4);\n      *(int *)PTR_optind_00023204 = iVar4;\n      if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }\n    }" ({ "{") (expression_statement "iVar4 = iVar2 + 1;" (assignment_expression "iVar4 = iVar2 + 1" (identifier "iVar4") (= "=") (binary_expression "iVar2 + 1" (identifier "iVar2") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "local_a0 = *(int *)(param_2 + iVar2 * 4);" (assignment_expression "local_a0 = *(int *)(param_2 + iVar2 * 4)" (identifier "local_a0") (= "=") (pointer_expression "*(int *)(param_2 + iVar2 * 4)" (* "*") (cast_expression "(int *)(param_2 + iVar2 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + iVar2 * 4)" (( "(") (binary_expression "param_2 + iVar2 * 4" (identifier "param_2") (+ "+") (binary_expression "iVar2 * 4" (identifier "iVar2") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "*(int *)PTR_optind_00023204 = iVar4;" (assignment_expression "*(int *)PTR_optind_00023204 = iVar4" (pointer_expression "*(int *)PTR_optind_00023204" (* "*") (cast_expression "(int *)PTR_optind_00023204" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_optind_00023204"))) (= "=") (identifier "iVar4")) (; ";")) (if_statement "if (iVar4 < param_1) {\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }" (if "if") (parenthesized_expression "(iVar4 < param_1)" (( "(") (binary_expression "iVar4 < param_1" (identifier "iVar4") (< "<") (identifier "param_1")) () ")")) (compound_statement "{\n        puVar5 = PTR_00023174 + 0x282c;\n        do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);\n        goto LAB_00011490;\n      }" ({ "{") (expression_statement "puVar5 = PTR_00023174 + 0x282c;" (assignment_expression "puVar5 = PTR_00023174 + 0x282c" (identifier "puVar5") (= "=") (binary_expression "PTR_00023174 + 0x282c" (identifier "PTR_00023174") (+ "+") (number_literal "0x282c"))) (; ";")) (do_statement "do {\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        } while (iVar4 < param_1);" (do "do") (compound_statement "{\n          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));\n          iVar4 = *(int *)puVar1 + 1;\n          *(int *)puVar1 = iVar4;\n        }" ({ "{") (expression_statement "(*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));" (call_expression "(*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4))" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" (( "(") (pointer_expression "*(code *)PTR_pr2serr_000231fc" (* "*") (cast_expression "(code *)PTR_pr2serr_000231fc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_pr2serr_000231fc"))) () ")")) (argument_list "(puVar5,*(undefined4 *)(param_2 + iVar4 * 4))" (( "(") (identifier "puVar5") (, ",") (pointer_expression "*(undefined4 *)(param_2 + iVar4 * 4)" (* "*") (cast_expression "(undefined4 *)(param_2 + iVar4 * 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + iVar4 * 4)" (( "(") (binary_expression "param_2 + iVar4 * 4" (identifier "param_2") (+ "+") (binary_expression "iVar4 * 4" (identifier "iVar4") (* "*") (number_literal "4"))) () ")")))) () ")"))) (; ";")) (expression_statement "iVar4 = *(int *)puVar1 + 1;" (assignment_expression "iVar4 = *(int *)puVar1 + 1" (identifier "iVar4") (= "=") (binary_expression "*(int *)puVar1 + 1" (pointer_expression "*(int *)puVar1" (* "*") (cast_expression "(int *)puVar1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*(int *)puVar1 = iVar4;" (assignment_expression "*(int *)puVar1 = iVar4" (pointer_expression "*(int *)puVar1" (* "*") (cast_expression "(int *)puVar1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1"))) (= "=") (identifier "iVar4")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar4 < param_1)" (( "(") (binary_expression "iVar4 < param_1" (identifier "iVar4") (< "<") (identifier "param_1")) () ")")) (; ";")) (goto_statement "goto LAB_00011490;" (goto "goto") (statement_identifier "LAB_00011490") (; ";")) (} "}"))) (} "}"))) (if_statement "if (local_a0 == 0) {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }\n    else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }" (if "if") (parenthesized_expression "(local_a0 == 0)" (( "(") (binary_expression "local_a0 == 0" (identifier "local_a0") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);\n    }" ({ "{") (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" (( "(") (pointer_expression "*(code *)PTR_pr2serr_000231fc" (* "*") (cast_expression "(code *)PTR_pr2serr_000231fc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_pr2serr_000231fc"))) () ")")) (argument_list "(PTR_00023174 + 0x284c)" (( "(") (binary_expression "PTR_00023174 + 0x284c" (identifier "PTR_00023174") (+ "+") (number_literal "0x284c")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }" (else "else") (compound_statement "{\n      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);\n    }" ({ "{") (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" (( "(") (pointer_expression "*(code *)PTR_pr2serr_000231fc" (* "*") (cast_expression "(code *)PTR_pr2serr_000231fc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_pr2serr_000231fc"))) () ")")) (argument_list "(PTR_00023174 + 0x2864)" (( "(") (binary_expression "PTR_00023174 + 0x2864" (identifier "PTR_00023174") (+ "+") (number_literal "0x2864")) () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n    if (iVar2 - 0x3fU < 0x3a) {\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }" (else "else") (compound_statement "{\n    if (iVar2 - 0x3fU < 0x3a) {\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }\n    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);\n  }" ({ "{") (if_statement "if (iVar2 - 0x3fU < 0x3a) {\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }" (if "if") (parenthesized_expression "(iVar2 - 0x3fU < 0x3a)" (( "(") (binary_expression "iVar2 - 0x3fU < 0x3a" (binary_expression "iVar2 - 0x3fU" (identifier "iVar2") (- "-") (number_literal "0x3fU")) (< "<") (number_literal "0x3a")) () ")")) (compound_statement "{\n                    \n                    \n      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();\n      return uVar3;\n    }" ({ "{") (expression_statement "uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();" (assignment_expression "uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))()" (identifier "uVar3") (= "=") (call_expression "(*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))()" (parenthesized_expression "(*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))" (( "(") (pointer_expression "*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50))" (* "*") (cast_expression "(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50))" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50))" (( "(") (binary_expression "&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)" (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1")) (+ "+") (pointer_expression "*(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)" (* "*") (cast_expression "(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)" (( "(") (binary_expression "puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50" (binary_expression "puVar5 + (iVar2 - 0x3fU) * 4" (identifier "puVar5") (+ "+") (binary_expression "(iVar2 - 0x3fU) * 4" (parenthesized_expression "(iVar2 - 0x3fU)" (( "(") (binary_expression "iVar2 - 0x3fU" (identifier "iVar2") (- "-") (number_literal "0x3fU")) () ")")) (* "*") (number_literal "4"))) (+ "+") (number_literal "0x2c50")) () ")"))))) () ")")))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (return_statement "return uVar3;" (return "return") (identifier "uVar3") (; ";")) (} "}"))) (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" (( "(") (pointer_expression "*(code *)PTR_pr2serr_000231fc" (* "*") (cast_expression "(code *)PTR_pr2serr_000231fc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_pr2serr_000231fc"))) () ")")) (argument_list "(PTR_00023174 + 0x2808,iVar2)" (( "(") (binary_expression "PTR_00023174 + 0x2808" (identifier "PTR_00023174") (+ "+") (number_literal "0x2808")) (, ",") (identifier "iVar2") () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_00011490:\n  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);" (statement_identifier "LAB_00011490") (: ":") (expression_statement "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);" (call_expression "(*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060)" (parenthesized_expression "(*(code *)PTR_pr2serr_000231fc)" (( "(") (pointer_expression "*(code *)PTR_pr2serr_000231fc" (* "*") (cast_expression "(code *)PTR_pr2serr_000231fc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_pr2serr_000231fc"))) () ")")) (argument_list "(PTR_00023174 + 0x2060)" (( "(") (binary_expression "PTR_00023174 + 0x2060" (identifier "PTR_00023174") (+ "+") (number_literal "0x2060")) () ")"))) (; ";"))) (expression_statement "uVar3 = (*(code *)PTR_exit_000231f0)(1);" (assignment_expression "uVar3 = (*(code *)PTR_exit_000231f0)(1)" (identifier "uVar3") (= "=") (call_expression "(*(code *)PTR_exit_000231f0)(1)" (parenthesized_expression "(*(code *)PTR_exit_000231f0)" (( "(") (pointer_expression "*(code *)PTR_exit_000231f0" (* "*") (cast_expression "(code *)PTR_exit_000231f0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_exit_000231f0"))) () ")")) (argument_list "(1)" (( "(") (number_literal "1") () ")")))) (; ";")) (return_statement "return uVar3;" (return "return") (identifier "uVar3") (; ";")) (} "}")))

/* WARNING: Removing unreachable block (ram,0x00010f2c) */
/* WARNING: Removing unreachable block (ram,0x00011964) */
/* WARNING: Removing unreachable block (ram,0x00010f34) */
/* WARNING: Removing unreachable block (ram,0x00010f3c) */
/* WARNING: Removing unreachable block (ram,0x00010f4c) */
/* WARNING: Removing unreachable block (ram,0x00011110) */
/* WARNING: Removing unreachable block (ram,0x00011118) */
/* WARNING: Removing unreachable block (ram,0x00010f54) */
/* WARNING: Removing unreachable block (ram,0x0001112c) */
/* WARNING: Removing unreachable block (ram,0x00010f5c) */
/* WARNING: Removing unreachable block (ram,0x000114ec) */
/* WARNING: Removing unreachable block (ram,0x000115bc) */
/* WARNING: Removing unreachable block (ram,0x00011514) */
/* WARNING: Removing unreachable block (ram,0x00010f68) */
/* WARNING: Removing unreachable block (ram,0x000114dc) */
/* WARNING: Removing unreachable block (ram,0x00010f88) */
/* WARNING: Removing unreachable block (ram,0x00010f8c) */
/* WARNING: Removing unreachable block (ram,0x00011558) */
/* WARNING: Removing unreachable block (ram,0x00011564) */
/* WARNING: Removing unreachable block (ram,0x00010fb8) */
/* WARNING: Removing unreachable block (ram,0x00011588) */
/* WARNING: Removing unreachable block (ram,0x00010fc4) */
/* WARNING: Removing unreachable block (ram,0x0001114c) */
/* WARNING: Removing unreachable block (ram,0x00010fe8) */
/* WARNING: Removing unreachable block (ram,0x00010ff8) */
/* WARNING: Removing unreachable block (ram,0x00011150) */
/* WARNING: Removing unreachable block (ram,0x000115b0) */
/* WARNING: Removing unreachable block (ram,0x00011170) */
/* WARNING: Removing unreachable block (ram,0x00011590) */
/* WARNING: Removing unreachable block (ram,0x0001167c) */
/* WARNING: Removing unreachable block (ram,0x00011598) */
/* WARNING: Removing unreachable block (ram,0x00011198) */
/* WARNING: Removing unreachable block (ram,0x000117e8) */
/* WARNING: Removing unreachable block (ram,0x000111cc) */
/* WARNING: Removing unreachable block (ram,0x000113d4) */
/* WARNING: Removing unreachable block (ram,0x0001140c) */
/* WARNING: Removing unreachable block (ram,0x00011834) */
/* WARNING: Removing unreachable block (ram,0x00011418) */
/* WARNING: Removing unreachable block (ram,0x00011844) */
/* WARNING: Removing unreachable block (ram,0x00011448) */
/* WARNING: Removing unreachable block (ram,0x00011454) */
/* WARNING: Removing unreachable block (ram,0x000111d8) */
/* WARNING: Removing unreachable block (ram,0x000117a4) */
/* WARNING: Removing unreachable block (ram,0x00011200) */
/* WARNING: Removing unreachable block (ram,0x00011814) */
/* WARNING: Removing unreachable block (ram,0x0001181c) */
/* WARNING: Removing unreachable block (ram,0x0001120c) */
/* WARNING: Removing unreachable block (ram,0x0001127c) */
/* WARNING: Removing unreachable block (ram,0x00011280) */
/* WARNING: Removing unreachable block (ram,0x00011288) */
/* WARNING: Removing unreachable block (ram,0x00011294) */
/* WARNING: Removing unreachable block (ram,0x0001129c) */
/* WARNING: Removing unreachable block (ram,0x000112a4) */
/* WARNING: Removing unreachable block (ram,0x000112f8) */
/* WARNING: Removing unreachable block (ram,0x000115dc) */
/* WARNING: Removing unreachable block (ram,0x00011600) */
/* WARNING: Removing unreachable block (ram,0x00011628) */
/* WARNING: Removing unreachable block (ram,0x00011644) */
/* WARNING: Removing unreachable block (ram,0x0001164c) */
/* WARNING: Removing unreachable block (ram,0x00011350) */
/* WARNING: Removing unreachable block (ram,0x00011354) */
/* WARNING: Removing unreachable block (ram,0x000117c0) */
/* WARNING: Removing unreachable block (ram,0x000113b0) */
/* WARNING: Removing unreachable block (ram,0x000116ac) */
/* WARNING: Removing unreachable block (ram,0x000116b8) */
/* WARNING: Removing unreachable block (ram,0x000116c0) */
/* WARNING: Removing unreachable block (ram,0x000116cc) */
/* WARNING: Removing unreachable block (ram,0x000118e0) */
/* WARNING: Removing unreachable block (ram,0x000116f4) */
/* WARNING: Removing unreachable block (ram,0x00011720) */
/* WARNING: Removing unreachable block (ram,0x00011724) */
/* WARNING: Removing unreachable block (ram,0x00011790) */
/* WARNING: Removing unreachable block (ram,0x000113bc) */
/* WARNING: Removing unreachable block (ram,0x0001179c) */
/* WARNING: Removing unreachable block (ram,0x00011728) */
/* WARNING: Removing unreachable block (ram,0x00011738) */
/* WARNING: Removing unreachable block (ram,0x00011744) */
/* WARNING: Removing unreachable block (ram,0x00011860) */
/* WARNING: Removing unreachable block (ram,0x0001186c) */
/* WARNING: Removing unreachable block (ram,0x00011874) */
/* WARNING: Removing unreachable block (ram,0x00011878) */
/* WARNING: Removing unreachable block (ram,0x000118f8) */
/* WARNING: Removing unreachable block (ram,0x000118a0) */
/* WARNING: Removing unreachable block (ram,0x000118cc) */
/* WARNING: Removing unreachable block (ram,0x000118d0) */
/* WARNING: Removing unreachable block (ram,0x00011020) */
/* WARNING: Removing unreachable block (ram,0x0001102c) */
/* WARNING: Removing unreachable block (ram,0x00011038) */
/* WARNING: Removing unreachable block (ram,0x00011578) */
/* WARNING: Removing unreachable block (ram,0x00011040) */
/* WARNING: Removing unreachable block (ram,0x00011048) */
/* WARNING: Removing unreachable block (ram,0x00011054) */
/* WARNING: Removing unreachable block (ram,0x0001105c) */
/* WARNING: Removing unreachable block (ram,0x00011068) */
/* WARNING: Removing unreachable block (ram,0x000114ac) */
/* WARNING: Removing unreachable block (ram,0x000114c4) */
/* WARNING: Removing unreachable block (ram,0x00011074) */
/* WARNING: Removing unreachable block (ram,0x00011088) */
/* WARNING: Removing unreachable block (ram,0x0001192c) */
/* WARNING: Removing unreachable block (ram,0x00011938) */
/* WARNING: Removing unreachable block (ram,0x00011754) */

int function_1(int var_4,char **argv)

{
  type_1 *puVar1;
  int var_3;
  int var_5;
  type_1 *var_6;
  uint8_t *free_wrkBuff;
  uint64_t ull;
  int option_index;
  type_2 opts;
  uint8_t cawCmd [16];
  char b [80];
  
  var_6 = var_1;
  opts.numblocks = 1;
  opts.quiet = false;
  opts.verbose_given = false;
  opts.version_given = false;
  opts.wfn_given = false;
  opts.verbose = 0;
  opts.xfer_len = 0;
  opts._20_4_ = 0;
  opts.lba._0_4_ = 0;
  opts.lba._4_4_ = 0;
  opts.ifn = (char *)0x0;
  opts.wfn = (char *)0x0;
  opts.device_name = (char *)0x0;
  opts.flags.dpo = false;
  opts.flags.fua = false;
  opts.flags.fua_nv = false;
  opts.flags._3_1_ = 0;
  opts.flags.group = 0;
  opts.flags.wrprotect = 0;
  opts.timeout = 0x3c;
  option_index = 0;
  var_3 = (*(type_3 *)PTR_getopt_long_000231ec)
                    (var_4,argv,var_1 + 0x2014,var_2 + 0x3010,&option_index);
  puVar1 = PTR_optind_00023204;
  if (var_3 == -1) {
    var_3 = *(int *)PTR_optind_00023204;
    if (var_3 < var_4) {
      var_5 = var_3 + 1;
      opts.device_name = argv[var_3];
      *(int *)PTR_optind_00023204 = var_5;
      if (var_5 < var_4) {
        var_6 = var_1 + 0x282c;
        do {
          (*(type_3 *)PTR_pr2serr_000231fc)(var_6,argv[var_5]);
          var_5 = *(int *)puVar1 + 1;
          *(int *)puVar1 = var_5;
        } while (var_5 < var_4);
        goto LAB_00011490;
      }
    }
    if (opts.device_name == (char *)0x0) {
      (*(type_3 *)PTR_pr2serr_000231fc)(var_1 + 0x284c);
    }
    else {
      (*(type_3 *)PTR_pr2serr_000231fc)(var_1 + 0x2864);
    }
  }
  else {
    if (var_3 - 0x3fU < 0x3a) {
                    /* WARNING: Could not emulate address calculation at 0x00010d34 */
                    /* WARNING: Treating indirect jump as call */
      var_3 = (*(type_3 *)(&_gp + *(int *)(var_6 + (var_3 - 0x3fU) * 4 + 0x2c50)))();
      return var_3;
    }
    (*(type_3 *)PTR_pr2serr_000231fc)(var_1 + 0x2808,var_3);
  }
LAB_00011490:
  (*(type_3 *)PTR_pr2serr_000231fc)(var_1 + 0x2060);
  var_3 = (*(type_3 *)PTR_exit_000231f0)(1);
  return var_3;
}


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

/* WARNING: Removing unreachable block (ram,0x00010f2c) */
/* WARNING: Removing unreachable block (ram,0x00011964) */
/* WARNING: Removing unreachable block (ram,0x00010f34) */
/* WARNING: Removing unreachable block (ram,0x00010f3c) */
/* WARNING: Removing unreachable block (ram,0x00010f4c) */
/* WARNING: Removing unreachable block (ram,0x00011110) */
/* WARNING: Removing unreachable block (ram,0x00011118) */
/* WARNING: Removing unreachable block (ram,0x00010f54) */
/* WARNING: Removing unreachable block (ram,0x0001112c) */
/* WARNING: Removing unreachable block (ram,0x00010f5c) */
/* WARNING: Removing unreachable block (ram,0x000114ec) */
/* WARNING: Removing unreachable block (ram,0x000115bc) */
/* WARNING: Removing unreachable block (ram,0x00011514) */
/* WARNING: Removing unreachable block (ram,0x00010f68) */
/* WARNING: Removing unreachable block (ram,0x000114dc) */
/* WARNING: Removing unreachable block (ram,0x00010f88) */
/* WARNING: Removing unreachable block (ram,0x00010f8c) */
/* WARNING: Removing unreachable block (ram,0x00011558) */
/* WARNING: Removing unreachable block (ram,0x00011564) */
/* WARNING: Removing unreachable block (ram,0x00010fb8) */
/* WARNING: Removing unreachable block (ram,0x00011588) */
/* WARNING: Removing unreachable block (ram,0x00010fc4) */
/* WARNING: Removing unreachable block (ram,0x0001114c) */
/* WARNING: Removing unreachable block (ram,0x00010fe8) */
/* WARNING: Removing unreachable block (ram,0x00010ff8) */
/* WARNING: Removing unreachable block (ram,0x00011150) */
/* WARNING: Removing unreachable block (ram,0x000115b0) */
/* WARNING: Removing unreachable block (ram,0x00011170) */
/* WARNING: Removing unreachable block (ram,0x00011590) */
/* WARNING: Removing unreachable block (ram,0x0001167c) */
/* WARNING: Removing unreachable block (ram,0x00011598) */
/* WARNING: Removing unreachable block (ram,0x00011198) */
/* WARNING: Removing unreachable block (ram,0x000117e8) */
/* WARNING: Removing unreachable block (ram,0x000111cc) */
/* WARNING: Removing unreachable block (ram,0x000113d4) */
/* WARNING: Removing unreachable block (ram,0x0001140c) */
/* WARNING: Removing unreachable block (ram,0x00011834) */
/* WARNING: Removing unreachable block (ram,0x00011418) */
/* WARNING: Removing unreachable block (ram,0x00011844) */
/* WARNING: Removing unreachable block (ram,0x00011448) */
/* WARNING: Removing unreachable block (ram,0x00011454) */
/* WARNING: Removing unreachable block (ram,0x000111d8) */
/* WARNING: Removing unreachable block (ram,0x000117a4) */
/* WARNING: Removing unreachable block (ram,0x00011200) */
/* WARNING: Removing unreachable block (ram,0x00011814) */
/* WARNING: Removing unreachable block (ram,0x0001181c) */
/* WARNING: Removing unreachable block (ram,0x0001120c) */
/* WARNING: Removing unreachable block (ram,0x0001127c) */
/* WARNING: Removing unreachable block (ram,0x00011280) */
/* WARNING: Removing unreachable block (ram,0x00011288) */
/* WARNING: Removing unreachable block (ram,0x00011294) */
/* WARNING: Removing unreachable block (ram,0x0001129c) */
/* WARNING: Removing unreachable block (ram,0x000112a4) */
/* WARNING: Removing unreachable block (ram,0x000112f8) */
/* WARNING: Removing unreachable block (ram,0x000115dc) */
/* WARNING: Removing unreachable block (ram,0x00011600) */
/* WARNING: Removing unreachable block (ram,0x00011628) */
/* WARNING: Removing unreachable block (ram,0x00011644) */
/* WARNING: Removing unreachable block (ram,0x0001164c) */
/* WARNING: Removing unreachable block (ram,0x00011350) */
/* WARNING: Removing unreachable block (ram,0x00011354) */
/* WARNING: Removing unreachable block (ram,0x000117c0) */
/* WARNING: Removing unreachable block (ram,0x000113b0) */
/* WARNING: Removing unreachable block (ram,0x000116ac) */
/* WARNING: Removing unreachable block (ram,0x000116b8) */
/* WARNING: Removing unreachable block (ram,0x000116c0) */
/* WARNING: Removing unreachable block (ram,0x000116cc) */
/* WARNING: Removing unreachable block (ram,0x000118e0) */
/* WARNING: Removing unreachable block (ram,0x000116f4) */
/* WARNING: Removing unreachable block (ram,0x00011720) */
/* WARNING: Removing unreachable block (ram,0x00011724) */
/* WARNING: Removing unreachable block (ram,0x00011790) */
/* WARNING: Removing unreachable block (ram,0x000113bc) */
/* WARNING: Removing unreachable block (ram,0x0001179c) */
/* WARNING: Removing unreachable block (ram,0x00011728) */
/* WARNING: Removing unreachable block (ram,0x00011738) */
/* WARNING: Removing unreachable block (ram,0x00011744) */
/* WARNING: Removing unreachable block (ram,0x00011860) */
/* WARNING: Removing unreachable block (ram,0x0001186c) */
/* WARNING: Removing unreachable block (ram,0x00011874) */
/* WARNING: Removing unreachable block (ram,0x00011878) */
/* WARNING: Removing unreachable block (ram,0x000118f8) */
/* WARNING: Removing unreachable block (ram,0x000118a0) */
/* WARNING: Removing unreachable block (ram,0x000118cc) */
/* WARNING: Removing unreachable block (ram,0x000118d0) */
/* WARNING: Removing unreachable block (ram,0x00011020) */
/* WARNING: Removing unreachable block (ram,0x0001102c) */
/* WARNING: Removing unreachable block (ram,0x00011038) */
/* WARNING: Removing unreachable block (ram,0x00011578) */
/* WARNING: Removing unreachable block (ram,0x00011040) */
/* WARNING: Removing unreachable block (ram,0x00011048) */
/* WARNING: Removing unreachable block (ram,0x00011054) */
/* WARNING: Removing unreachable block (ram,0x0001105c) */
/* WARNING: Removing unreachable block (ram,0x00011068) */
/* WARNING: Removing unreachable block (ram,0x000114ac) */
/* WARNING: Removing unreachable block (ram,0x000114c4) */
/* WARNING: Removing unreachable block (ram,0x00011074) */
/* WARNING: Removing unreachable block (ram,0x00011088) */
/* WARNING: Removing unreachable block (ram,0x0001192c) */
/* WARNING: Removing unreachable block (ram,0x00011938) */
/* WARNING: Removing unreachable block (ram,0x00011754) */

undefined4 MASKED(int param_1,int param_2)

{
  undefined *puVar1;
  int iVar2;
  undefined4 uVar3;
  int iVar4;
  undefined *puVar5;
  undefined4 local_d0 [2];
  undefined4 local_c8;
  undefined4 local_c4;
  undefined4 local_c0;
  undefined4 local_bc;
  undefined4 local_b8;
  undefined4 local_b4;
  undefined4 local_b0;
  undefined4 local_ac;
  undefined4 local_a8;
  undefined4 local_a4;
  int local_a0;
  undefined4 local_9c;
  undefined4 local_98;
  undefined4 local_94;
  undefined4 local_2c;
  
  puVar5 = PTR_00023174;
  local_2c = *(undefined4 *)PTR___stack_chk_guard_00023208;
  local_c4 = 1;
  local_c8 = 0;
  local_c0 = 0;
  local_b8 = 0;
  local_b4 = 0;
  local_b0 = 0;
  local_ac = 0;
  local_a8 = 0;
  local_a4 = 0;
  local_a0 = 0;
  local_9c = 0;
  local_98 = 0;
  local_94 = 0;
  local_bc = 0x3c;
  local_d0[0] = 0;
  iVar2 = (*(code *)PTR_getopt_long_000231ec)
                    (param_1,param_2,PTR_00023174 + 0x2014,PTR_DAT_00023168 + 0x3010,local_d0);
  puVar1 = PTR_optind_00023204;
  if (iVar2 == -1) {
    iVar2 = *(int *)PTR_optind_00023204;
    if (iVar2 < param_1) {
      iVar4 = iVar2 + 1;
      local_a0 = *(int *)(param_2 + iVar2 * 4);
      *(int *)PTR_optind_00023204 = iVar4;
      if (iVar4 < param_1) {
        puVar5 = PTR_00023174 + 0x282c;
        do {
          (*(code *)PTR_pr2serr_000231fc)(puVar5,*(undefined4 *)(param_2 + iVar4 * 4));
          iVar4 = *(int *)puVar1 + 1;
          *(int *)puVar1 = iVar4;
        } while (iVar4 < param_1);
        goto LAB_00011490;
      }
    }
    if (local_a0 == 0) {
      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x284c);
    }
    else {
      (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2864);
    }
  }
  else {
    if (iVar2 - 0x3fU < 0x3a) {
                    /* WARNING: Could not emulate address calculation at 0x00010d34 */
                    /* WARNING: Treating indirect jump as call */
      uVar3 = (*(code *)(&_gp_1 + *(int *)(puVar5 + (iVar2 - 0x3fU) * 4 + 0x2c50)))();
      return uVar3;
    }
    (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2808,iVar2);
  }
LAB_00011490:
  (*(code *)PTR_pr2serr_000231fc)(PTR_00023174 + 0x2060);
  uVar3 = (*(code *)PTR_exit_000231f0)(1);
  return uVar3;
}

