
debug_type stab_find_type(void *dhandle,stab_handle *info,int *typenums)

{
  uint uVar1;
  debug_type_conflict *slot;
  debug_type_conflict pdVar2;
  int iVar3;
  char *pcVar4;
  
  if ((*typenums == 0) && (uVar1 = typenums[1], (int)uVar1 < 0)) {
    if (uVar1 + 0x22 < 0x22) {
      iVar3 = -uVar1;
      pdVar2 = info->xcoff_types[iVar3];
      if (pdVar2 == (debug_type_conflict)0x0) {
        switch(iVar3) {
        default:
          pdVar2 = debug_make_int_type(dhandle,4,0);
          pcVar4 = "int";
          break;
        case 2:
          pdVar2 = debug_make_int_type(dhandle,1,0);
          pcVar4 = "char";
          break;
        case 3:
          pdVar2 = debug_make_int_type(dhandle,2,0);
          pcVar4 = "short";
          break;
        case 4:
          pdVar2 = debug_make_int_type(dhandle,4,0);
          pcVar4 = "long";
          break;
        case 5:
          pdVar2 = debug_make_int_type(dhandle,1,1);
          pcVar4 = "unsigned char";
          break;
        case 6:
          pdVar2 = debug_make_int_type(dhandle,1,0);
          pcVar4 = "signed char";
          break;
        case 7:
          pdVar2 = debug_make_int_type(dhandle,2,1);
          pcVar4 = "unsigned short";
          break;
        case 8:
          pdVar2 = debug_make_int_type(dhandle,4,1);
          pcVar4 = "unsigned int";
          break;
        case 9:
          pdVar2 = debug_make_int_type(dhandle,4,1);
          pcVar4 = "unsigned";
          break;
        case 10:
          pdVar2 = debug_make_int_type(dhandle,4,1);
          pcVar4 = "unsigned long";
          break;
        case 0xb:
          pdVar2 = debug_make_void_type(dhandle);
          pcVar4 = "void";
          break;
        case 0xc:
          pdVar2 = debug_make_float_type(dhandle,4);
          pcVar4 = "float";
          break;
        case 0xd:
          pdVar2 = debug_make_float_type(dhandle,8);
          pcVar4 = "double";
          break;
        case 0xe:
          pdVar2 = debug_make_float_type(dhandle,8);
          pcVar4 = "long double";
          break;
        case 0xf:
          pdVar2 = debug_make_int_type(dhandle,4,0);
          pcVar4 = "integer";
          break;
        case 0x10:
          pdVar2 = debug_make_bool_type(dhandle,4);
          pcVar4 = "boolean";
          break;
        case 0x11:
          pdVar2 = debug_make_float_type(dhandle,4);
          pcVar4 = "short real";
          break;
        case 0x12:
          pdVar2 = debug_make_float_type(dhandle,8);
          pcVar4 = "real";
          break;
        case 0x13:
          pcVar4 = "stringptr";
          pdVar2 = (debug_type_conflict)0x0;
          break;
        case 0x14:
          pdVar2 = debug_make_int_type(dhandle,1,1);
          pcVar4 = "character";
          break;
        case 0x15:
          pdVar2 = debug_make_bool_type(dhandle,1);
          pcVar4 = "logical*1";
          break;
        case 0x16:
          pdVar2 = debug_make_bool_type(dhandle,2);
          pcVar4 = "logical*2";
          break;
        case 0x17:
          pdVar2 = debug_make_bool_type(dhandle,4);
          pcVar4 = "logical*4";
          break;
        case 0x18:
          pdVar2 = debug_make_bool_type(dhandle,4);
          pcVar4 = "logical";
          break;
        case 0x19:
          pdVar2 = debug_make_complex_type(dhandle,8);
          pcVar4 = "complex";
          break;
        case 0x1a:
          pdVar2 = debug_make_complex_type(dhandle,0x10);
          pcVar4 = "double complex";
          break;
        case 0x1b:
          pdVar2 = debug_make_int_type(dhandle,1,0);
          pcVar4 = "integer*1";
          break;
        case 0x1c:
          pdVar2 = debug_make_int_type(dhandle,2,0);
          pcVar4 = "integer*2";
          break;
        case 0x1d:
          pdVar2 = debug_make_int_type(dhandle,4,0);
          pcVar4 = "integer*4";
          break;
        case 0x1e:
          pdVar2 = debug_make_int_type(dhandle,2,0);
          pcVar4 = "wchar";
          break;
        case 0x1f:
          pdVar2 = debug_make_int_type(dhandle,8,0);
          pcVar4 = "long long";
          break;
        case 0x20:
          pdVar2 = debug_make_int_type(dhandle,8,1);
          pcVar4 = "unsigned long long";
          break;
        case 0x21:
          pdVar2 = debug_make_bool_type(dhandle,8);
          pcVar4 = "logical*8";
          break;
        case 0x22:
          pdVar2 = debug_make_int_type(dhandle,8,0);
          pcVar4 = "integer*8";
        }
        pdVar2 = debug_name_type(dhandle,pcVar4,pdVar2);
        info->xcoff_types[iVar3] = pdVar2;
      }
    }
    else {
      pcVar4 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);
      fprintf(stderr,pcVar4,(ulong)uVar1);
      pdVar2 = (debug_type_conflict)0x0;
    }
  }
  else {
    slot = stab_find_slot((stab_handle *)&info->files,(int *)&info->file_types,
                          (stab_handle *)typenums);
    if (slot == (debug_type_conflict *)0x0) {
      pdVar2 = (debug_type_conflict)0x0;
    }
    else {
      pdVar2 = *slot;
      if (pdVar2 == (debug_type_conflict)0x0) {
        pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0);
        return pdVar2;
      }
    }
  }
  return pdVar2;
}



long FUN_00110930(undefined8 param_1,long param_2,int *param_3)

{
  uint uVar1;
  long *plVar2;
  long lVar3;
  undefined8 uVar4;
  char *pcVar5;
  
  if ((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)) {
    if (uVar1 + 0x22 < 0x22) {
      param_2 = param_2 + (long)(int)-uVar1 * 8;
      lVar3 = *(long *)(param_2 + 0x90);
      if (lVar3 == 0) {
        switch(-uVar1) {
        default:
          uVar4 = FUN_0010f4a0(param_1,4,0);
          pcVar5 = "int";
          break;
        case 2:
          uVar4 = FUN_0010f4a0(param_1,1,0);
          pcVar5 = "char";
          break;
        case 3:
          uVar4 = FUN_0010f4a0(param_1,2,0);
          pcVar5 = "short";
          break;
        case 4:
          uVar4 = FUN_0010f4a0(param_1,4,0);
          pcVar5 = "long";
          break;
        case 5:
          uVar4 = FUN_0010f4a0(param_1,1,1);
          pcVar5 = "unsigned char";
          break;
        case 6:
          uVar4 = FUN_0010f4a0(param_1,1,0);
          pcVar5 = "signed char";
          break;
        case 7:
          uVar4 = FUN_0010f4a0(param_1,2,1);
          pcVar5 = "unsigned short";
          break;
        case 8:
          uVar4 = FUN_0010f4a0(param_1,4,1);
          pcVar5 = "unsigned int";
          break;
        case 9:
          uVar4 = FUN_0010f4a0(param_1,4,1);
          pcVar5 = "unsigned";
          break;
        case 10:
          uVar4 = FUN_0010f4a0(param_1,4,1);
          pcVar5 = "unsigned long";
          break;
        case 0xb:
          uVar4 = FUN_0010f490(param_1);
          pcVar5 = "void";
          break;
        case 0xc:
          uVar4 = FUN_0010f4c0(param_1,4);
          pcVar5 = "float";
          break;
        case 0xd:
          uVar4 = FUN_0010f4c0(param_1,8);
          pcVar5 = "double";
          break;
        case 0xe:
          uVar4 = FUN_0010f4c0(param_1,8);
          pcVar5 = "long double";
          break;
        case 0xf:
          uVar4 = FUN_0010f4a0(param_1,4,0);
          pcVar5 = "integer";
          break;
        case 0x10:
          uVar4 = FUN_0010f4d0(param_1,4);
          pcVar5 = "boolean";
          break;
        case 0x11:
          uVar4 = FUN_0010f4c0(param_1,4);
          pcVar5 = "short real";
          break;
        case 0x12:
          uVar4 = FUN_0010f4c0(param_1,8);
          pcVar5 = "real";
          break;
        case 0x13:
          pcVar5 = "stringptr";
          uVar4 = 0;
          break;
        case 0x14:
          uVar4 = FUN_0010f4a0(param_1,1,1);
          pcVar5 = "character";
          break;
        case 0x15:
          uVar4 = FUN_0010f4d0(param_1,1);
          pcVar5 = "logical*1";
          break;
        case 0x16:
          uVar4 = FUN_0010f4d0(param_1,2);
          pcVar5 = "logical*2";
          break;
        case 0x17:
          uVar4 = FUN_0010f4d0(param_1,4);
          pcVar5 = "logical*4";
          break;
        case 0x18:
          uVar4 = FUN_0010f4d0(param_1,4);
          pcVar5 = "logical";
          break;
        case 0x19:
          uVar4 = FUN_0010f4e0(param_1,8);
          pcVar5 = "complex";
          break;
        case 0x1a:
          uVar4 = FUN_0010f4e0(param_1,0x10);
          pcVar5 = "double complex";
          break;
        case 0x1b:
          uVar4 = FUN_0010f4a0(param_1,1,0);
          pcVar5 = "integer*1";
          break;
        case 0x1c:
          uVar4 = FUN_0010f4a0(param_1,2,0);
          pcVar5 = "integer*2";
          break;
        case 0x1d:
          uVar4 = FUN_0010f4a0(param_1,4,0);
          pcVar5 = "integer*4";
          break;
        case 0x1e:
          uVar4 = FUN_0010f4a0(param_1,2,0);
          pcVar5 = "wchar";
          break;
        case 0x1f:
          uVar4 = FUN_0010f4a0(param_1,8,0);
          pcVar5 = "long long";
          break;
        case 0x20:
          uVar4 = FUN_0010f4a0(param_1,8,1);
          pcVar5 = "unsigned long long";
          break;
        case 0x21:
          uVar4 = FUN_0010f4d0(param_1,8);
          pcVar5 = "logical*8";
          break;
        case 0x22:
          uVar4 = FUN_0010f4a0(param_1,8,0);
          pcVar5 = "integer*8";
        }
        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);
        *(long *)(param_2 + 0x90) = lVar3;
      }
    }
    else {
      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);
      fprintf(stderr,pcVar5,(ulong)uVar1);
      lVar3 = 0;
    }
  }
  else {
    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);
    if (plVar2 == (long *)0x0) {
      lVar3 = 0;
    }
    else {
      lVar3 = *plVar2;
      if (lVar3 == 0) {
        lVar3 = FUN_0010f450(param_1,plVar2);
        return lVar3;
      }
    }
  }
  return lVar3;
}


PUSH R12
PUSH RBP
PUSH RBX
MOV EAX,dword ptr [RDX]
MOV RBX,RDI
MOV RDI,RSI
TEST EAX,EAX
JNZ 0x00110947
MOV EBP,dword ptr [RDX + 0x4]
TEST EBP,EBP
JS 0x00110970
LEA RSI,[RDI + 0x88]
SUB RDI,-0x80
CALL 0x001107d0
TEST RAX,RAX
JZ 0x001109c0
MOV RDX,qword ptr [RAX]
TEST RDX,RDX
JZ 0x001109b0
POP RBX
MOV RAX,RDX
POP RBP
POP R12
RET
LEA EAX,[RBP + 0x22]
CMP EAX,0x21
JA 0x00110db1
NEG EBP
MOVSXD RAX,EBP
LEA R12,[RSI + RAX*0x8]
MOV RDX,qword ptr [R12 + 0x90]
TEST RDX,RDX
JNZ 0x00110964
CMP EBP,0x22
JA 0x00110d93
LEA RCX,[0x1234f8]
MOV EBP,EBP
MOVSXD RAX,dword ptr [RCX + RBP*0x4]
ADD RAX,RCX
JMP RAX
MOV RDI,RBX
MOV RSI,RAX
POP RBX
POP RBP
POP R12
JMP 0x0010f450
XOR EDX,EDX
JMP 0x00110964
MOV ESI,0x8
MOV RDI,RBX
CALL 0x0010f4d0
LEA RSI,[0x12304b]
MOV RDX,RAX
NOP dword ptr [RAX + RAX*0x1]
MOV RDI,RBX
CALL 0x0010fb10
MOV RDX,RAX
MOV qword ptr [R12 + 0x90],RAX
JMP 0x00110964
MOV EDX,0x1
MOV ESI,0x8
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x123038]
MOV RDX,RAX
JMP 0x001109e0
XOR EDX,EDX
MOV ESI,0x8
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x123041]
MOV RDX,RAX
JMP 0x001109e0
XOR EDX,EDX
MOV ESI,0x2
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x123032]
MOV RDX,RAX
JMP 0x001109e0
XOR EDX,EDX
MOV ESI,0x4
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x123028]
MOV RDX,RAX
JMP 0x001109e0
XOR EDX,EDX
MOV ESI,0x2
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x12301e]
MOV RDX,RAX
JMP 0x001109e0
XOR EDX,EDX
MOV ESI,0x1
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x123014]
MOV RDX,RAX
JMP 0x001109e0
MOV ESI,0x10
MOV RDI,RBX
CALL 0x0010f4e0
LEA RSI,[0x123005]
MOV RDX,RAX
JMP 0x001109e0
MOV ESI,0x8
MOV RDI,RBX
CALL 0x0010f4e0
LEA RSI,[0x12300c]
MOV RDX,RAX
JMP 0x001109e0
MOV ESI,0x4
MOV RDI,RBX
CALL 0x0010f4d0
LEA RSI,[0x122ffd]
MOV RDX,RAX
JMP 0x001109e0
MOV ESI,0x4
MOV RDI,RBX
CALL 0x0010f4d0
LEA RSI,[0x122ff3]
MOV RDX,RAX
JMP 0x001109e0
MOV ESI,0x2
MOV RDI,RBX
CALL 0x0010f4d0
LEA RSI,[0x122fe9]
MOV RDX,RAX
JMP 0x001109e0
MOV ESI,0x1
MOV RDI,RBX
CALL 0x0010f4d0
LEA RSI,[0x122fdf]
MOV RDX,RAX
JMP 0x001109e0
MOV EDX,0x1
MOV ESI,0x1
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x122fd5]
MOV RDX,RAX
JMP 0x001109e0
LEA RSI,[0x123055]
JMP 0x001109e0
MOV ESI,0x8
MOV RDI,RBX
CALL 0x0010f4c0
LEA RSI,[0x122fd0]
MOV RDX,RAX
JMP 0x001109e0
MOV ESI,0x4
MOV RDI,RBX
CALL 0x0010f4c0
LEA RSI,[0x122fca]
MOV RDX,RAX
JMP 0x001109e0
MOV ESI,0x4
MOV RDI,RBX
CALL 0x0010f4d0
LEA RSI,[0x122fc2]
MOV RDX,RAX
JMP 0x001109e0
XOR EDX,EDX
MOV ESI,0x4
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x122fba]
MOV RDX,RAX
JMP 0x001109e0
MOV ESI,0x8
MOV RDI,RBX
CALL 0x0010f4c0
LEA RSI,[0x122fae]
MOV RDX,RAX
JMP 0x001109e0
MOV ESI,0x8
MOV RDI,RBX
CALL 0x0010f4c0
LEA RSI,[0x122fb3]
MOV RDX,RAX
JMP 0x001109e0
MOV ESI,0x4
MOV RDI,RBX
CALL 0x0010f4c0
LEA RSI,[0x122fa8]
MOV RDX,RAX
JMP 0x001109e0
MOV RDI,RBX
CALL 0x0010f490
LEA RSI,[0x122fa3]
MOV RDX,RAX
JMP 0x001109e0
MOV EDX,0x1
MOV ESI,0x4
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x122f95]
MOV RDX,RAX
JMP 0x001109e0
MOV EDX,0x1
MOV ESI,0x4
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x122f8c]
MOV RDX,RAX
JMP 0x001109e0
MOV EDX,0x1
MOV ESI,0x4
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x1230c9]
MOV RDX,RAX
JMP 0x001109e0
MOV EDX,0x1
MOV ESI,0x2
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x122f7d]
MOV RDX,RAX
JMP 0x001109e0
XOR EDX,EDX
MOV ESI,0x1
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x122f71]
MOV RDX,RAX
JMP 0x001109e0
MOV EDX,0x1
MOV ESI,0x1
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x122f6f]
MOV RDX,RAX
JMP 0x001109e0
XOR EDX,EDX
MOV ESI,0x4
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x122f9e]
MOV RDX,RAX
JMP 0x001109e0
XOR EDX,EDX
MOV ESI,0x2
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x122f86]
MOV RDX,RAX
JMP 0x001109e0
XOR EDX,EDX
MOV ESI,0x1
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x122f78]
MOV RDX,RAX
JMP 0x001109e0
XOR EDX,EDX
MOV ESI,0x8
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x122f65]
MOV RDX,RAX
JMP 0x001109e0
XOR EDX,EDX
MOV ESI,0x4
MOV RDI,RBX
CALL 0x0010f4a0
LEA RSI,[0x1230d2]
MOV RDX,RAX
JMP 0x001109e0
MOV EDX,0x5
LEA RSI,[0x12305f]
XOR EDI,EDI
CALL 0x00104240
MOV RDI,qword ptr [0x0012c9e0]
MOV EDX,EBP
MOV RSI,RAX
XOR EAX,EAX
CALL 0x001044a0
XOR EDX,EDX
JMP 0x00110964
(translation_unit "long FUN_00110930(undefined8 param_1,long param_2,int *param_3)\n\n{\n  uint uVar1;\n  long *plVar2;\n  long lVar3;\n  undefined8 uVar4;\n  char *pcVar5;\n  \n  if ((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }\n  else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }\n  return lVar3;\n}\n\n" (function_definition "long FUN_00110930(undefined8 param_1,long param_2,int *param_3)\n\n{\n  uint uVar1;\n  long *plVar2;\n  long lVar3;\n  undefined8 uVar4;\n  char *pcVar5;\n  \n  if ((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }\n  else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }\n  return lVar3;\n}" (sized_type_specifier "long" long) (function_declarator "FUN_00110930(undefined8 param_1,long param_2,int *param_3)" identifier (parameter_list "(undefined8 param_1,long param_2,int *param_3)" ( (parameter_declaration "undefined8 param_1" type_identifier identifier) , (parameter_declaration "long param_2" (sized_type_specifier "long" long) identifier) , (parameter_declaration "int *param_3" primitive_type (pointer_declarator "*param_3" * identifier)) ))) (compound_statement "{\n  uint uVar1;\n  long *plVar2;\n  long lVar3;\n  undefined8 uVar4;\n  char *pcVar5;\n  \n  if ((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }\n  else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }\n  return lVar3;\n}" { (declaration "uint uVar1;" type_identifier identifier ;) (declaration "long *plVar2;" (sized_type_specifier "long" long) (pointer_declarator "*plVar2" * identifier) ;) (declaration "long lVar3;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 uVar4;" type_identifier identifier ;) (declaration "char *pcVar5;" primitive_type (pointer_declarator "*pcVar5" * identifier) ;) (if_statement "if ((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }\n  else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }" if (parenthesized_expression "((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0))" ( (binary_expression "(*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)" (parenthesized_expression "(*param_3 == 0)" ( (binary_expression "*param_3 == 0" (pointer_expression "*param_3" * identifier) == number_literal) )) && (parenthesized_expression "(uVar1 = param_3[1], (int)uVar1 < 0)" ( (comma_expression "uVar1 = param_3[1], (int)uVar1 < 0" (assignment_expression "uVar1 = param_3[1]" identifier = (subscript_expression "param_3[1]" identifier [ number_literal ])) , (binary_expression "(int)uVar1 < 0" (cast_expression "(int)uVar1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ))) )) (compound_statement "{\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }" { (if_statement "if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }" if (parenthesized_expression "(uVar1 + 0x22 < 0x22)" ( (binary_expression "uVar1 + 0x22 < 0x22" (binary_expression "uVar1 + 0x22" identifier + number_literal) < number_literal) )) (compound_statement "{\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }" { (expression_statement "param_2 = param_2 + (long)(int)-uVar1 * 8;" (assignment_expression "param_2 = param_2 + (long)(int)-uVar1 * 8" identifier = (binary_expression "param_2 + (long)(int)-uVar1 * 8" identifier + (binary_expression "(long)(int)-uVar1 * 8" (cast_expression "(long)(int)-uVar1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)-uVar1" ( (type_descriptor "int" primitive_type) ) (unary_expression "-uVar1" - identifier))) * number_literal))) ;) (expression_statement "lVar3 = *(long *)(param_2 + 0x90);" (assignment_expression "lVar3 = *(long *)(param_2 + 0x90)" identifier = (pointer_expression "*(long *)(param_2 + 0x90)" * (cast_expression "(long *)(param_2 + 0x90)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x90)" ( (binary_expression "param_2 + 0x90" identifier + number_literal) ))))) ;) (if_statement "if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }" if (parenthesized_expression "(lVar3 == 0)" ( (binary_expression "lVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }" { (switch_statement "switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }" switch (parenthesized_expression "(-uVar1)" ( (unary_expression "-uVar1" - identifier) )) (compound_statement "{\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }" { (case_statement "default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;" default : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,0)" identifier = (call_expression "FUN_0010f4a0(param_1,4,0)" identifier (argument_list "(param_1,4,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "int";" (assignment_expression "pcVar5 = "int"" identifier = (string_literal ""int"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,0)" identifier = (call_expression "FUN_0010f4a0(param_1,1,0)" identifier (argument_list "(param_1,1,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "char";" (assignment_expression "pcVar5 = "char"" identifier = (string_literal ""char"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,2,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,2,0)" identifier = (call_expression "FUN_0010f4a0(param_1,2,0)" identifier (argument_list "(param_1,2,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "short";" (assignment_expression "pcVar5 = "short"" identifier = (string_literal ""short"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,0)" identifier = (call_expression "FUN_0010f4a0(param_1,4,0)" identifier (argument_list "(param_1,4,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "long";" (assignment_expression "pcVar5 = "long"" identifier = (string_literal ""long"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,1)" identifier = (call_expression "FUN_0010f4a0(param_1,1,1)" identifier (argument_list "(param_1,1,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "unsigned char";" (assignment_expression "pcVar5 = "unsigned char"" identifier = (string_literal ""unsigned char"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,0)" identifier = (call_expression "FUN_0010f4a0(param_1,1,0)" identifier (argument_list "(param_1,1,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "signed char";" (assignment_expression "pcVar5 = "signed char"" identifier = (string_literal ""signed char"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,2,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,2,1)" identifier = (call_expression "FUN_0010f4a0(param_1,2,1)" identifier (argument_list "(param_1,2,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "unsigned short";" (assignment_expression "pcVar5 = "unsigned short"" identifier = (string_literal ""unsigned short"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,1)" identifier = (call_expression "FUN_0010f4a0(param_1,4,1)" identifier (argument_list "(param_1,4,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "unsigned int";" (assignment_expression "pcVar5 = "unsigned int"" identifier = (string_literal ""unsigned int"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,1)" identifier = (call_expression "FUN_0010f4a0(param_1,4,1)" identifier (argument_list "(param_1,4,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "unsigned";" (assignment_expression "pcVar5 = "unsigned"" identifier = (string_literal ""unsigned"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,1)" identifier = (call_expression "FUN_0010f4a0(param_1,4,1)" identifier (argument_list "(param_1,4,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "unsigned long";" (assignment_expression "pcVar5 = "unsigned long"" identifier = (string_literal ""unsigned long"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f490(param_1);" (assignment_expression "uVar4 = FUN_0010f490(param_1)" identifier = (call_expression "FUN_0010f490(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "pcVar5 = "void";" (assignment_expression "pcVar5 = "void"" identifier = (string_literal ""void"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4c0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,4)" identifier = (call_expression "FUN_0010f4c0(param_1,4)" identifier (argument_list "(param_1,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "float";" (assignment_expression "pcVar5 = "float"" identifier = (string_literal ""float"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4c0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,8)" identifier = (call_expression "FUN_0010f4c0(param_1,8)" identifier (argument_list "(param_1,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "double";" (assignment_expression "pcVar5 = "double"" identifier = (string_literal ""double"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4c0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,8)" identifier = (call_expression "FUN_0010f4c0(param_1,8)" identifier (argument_list "(param_1,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "long double";" (assignment_expression "pcVar5 = "long double"" identifier = (string_literal ""long double"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,0)" identifier = (call_expression "FUN_0010f4a0(param_1,4,0)" identifier (argument_list "(param_1,4,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "integer";" (assignment_expression "pcVar5 = "integer"" identifier = (string_literal ""integer"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4d0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,4)" identifier = (call_expression "FUN_0010f4d0(param_1,4)" identifier (argument_list "(param_1,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "boolean";" (assignment_expression "pcVar5 = "boolean"" identifier = (string_literal ""boolean"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4c0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,4)" identifier = (call_expression "FUN_0010f4c0(param_1,4)" identifier (argument_list "(param_1,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "short real";" (assignment_expression "pcVar5 = "short real"" identifier = (string_literal ""short real"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4c0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,8)" identifier = (call_expression "FUN_0010f4c0(param_1,8)" identifier (argument_list "(param_1,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "real";" (assignment_expression "pcVar5 = "real"" identifier = (string_literal ""real"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;" case number_literal : (expression_statement "pcVar5 = "stringptr";" (assignment_expression "pcVar5 = "stringptr"" identifier = (string_literal ""stringptr"" " string_content ")) ;) (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,1)" identifier = (call_expression "FUN_0010f4a0(param_1,1,1)" identifier (argument_list "(param_1,1,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "character";" (assignment_expression "pcVar5 = "character"" identifier = (string_literal ""character"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4d0(param_1,1);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,1)" identifier = (call_expression "FUN_0010f4d0(param_1,1)" identifier (argument_list "(param_1,1)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "logical*1";" (assignment_expression "pcVar5 = "logical*1"" identifier = (string_literal ""logical*1"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4d0(param_1,2);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,2)" identifier = (call_expression "FUN_0010f4d0(param_1,2)" identifier (argument_list "(param_1,2)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "logical*2";" (assignment_expression "pcVar5 = "logical*2"" identifier = (string_literal ""logical*2"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4d0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,4)" identifier = (call_expression "FUN_0010f4d0(param_1,4)" identifier (argument_list "(param_1,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "logical*4";" (assignment_expression "pcVar5 = "logical*4"" identifier = (string_literal ""logical*4"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4d0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,4)" identifier = (call_expression "FUN_0010f4d0(param_1,4)" identifier (argument_list "(param_1,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "logical";" (assignment_expression "pcVar5 = "logical"" identifier = (string_literal ""logical"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4e0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4e0(param_1,8)" identifier = (call_expression "FUN_0010f4e0(param_1,8)" identifier (argument_list "(param_1,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "complex";" (assignment_expression "pcVar5 = "complex"" identifier = (string_literal ""complex"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4e0(param_1,0x10);" (assignment_expression "uVar4 = FUN_0010f4e0(param_1,0x10)" identifier = (call_expression "FUN_0010f4e0(param_1,0x10)" identifier (argument_list "(param_1,0x10)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "double complex";" (assignment_expression "pcVar5 = "double complex"" identifier = (string_literal ""double complex"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,0)" identifier = (call_expression "FUN_0010f4a0(param_1,1,0)" identifier (argument_list "(param_1,1,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "integer*1";" (assignment_expression "pcVar5 = "integer*1"" identifier = (string_literal ""integer*1"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,2,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,2,0)" identifier = (call_expression "FUN_0010f4a0(param_1,2,0)" identifier (argument_list "(param_1,2,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "integer*2";" (assignment_expression "pcVar5 = "integer*2"" identifier = (string_literal ""integer*2"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,0)" identifier = (call_expression "FUN_0010f4a0(param_1,4,0)" identifier (argument_list "(param_1,4,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "integer*4";" (assignment_expression "pcVar5 = "integer*4"" identifier = (string_literal ""integer*4"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,2,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,2,0)" identifier = (call_expression "FUN_0010f4a0(param_1,2,0)" identifier (argument_list "(param_1,2,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "wchar";" (assignment_expression "pcVar5 = "wchar"" identifier = (string_literal ""wchar"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,8,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,8,0)" identifier = (call_expression "FUN_0010f4a0(param_1,8,0)" identifier (argument_list "(param_1,8,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "long long";" (assignment_expression "pcVar5 = "long long"" identifier = (string_literal ""long long"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,8,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,8,1)" identifier = (call_expression "FUN_0010f4a0(param_1,8,1)" identifier (argument_list "(param_1,8,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "unsigned long long";" (assignment_expression "pcVar5 = "unsigned long long"" identifier = (string_literal ""unsigned long long"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4d0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,8)" identifier = (call_expression "FUN_0010f4d0(param_1,8)" identifier (argument_list "(param_1,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "logical*8";" (assignment_expression "pcVar5 = "logical*8"" identifier = (string_literal ""logical*8"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,8,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,8,0)" identifier = (call_expression "FUN_0010f4a0(param_1,8,0)" identifier (argument_list "(param_1,8,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "integer*8";" (assignment_expression "pcVar5 = "integer*8"" identifier = (string_literal ""integer*8"" " string_content ")) ;)) })) (expression_statement "lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);" (assignment_expression "lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4)" identifier = (call_expression "FUN_0010fb10(param_1,pcVar5,uVar4)" identifier (argument_list "(param_1,pcVar5,uVar4)" ( identifier , identifier , identifier )))) ;) (expression_statement "*(long *)(param_2 + 0x90) = lVar3;" (assignment_expression "*(long *)(param_2 + 0x90) = lVar3" (pointer_expression "*(long *)(param_2 + 0x90)" * (cast_expression "(long *)(param_2 + 0x90)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x90)" ( (binary_expression "param_2 + 0x90" identifier + number_literal) )))) = identifier) ;) })) }) (else_clause "else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }" else (compound_statement "{\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }" { (expression_statement "pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);" (assignment_expression "pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Unrecognized XCOFF type %d\n",5)" identifier (argument_list "(0,"Unrecognized XCOFF type %d\n",5)" ( number_literal , (string_literal ""Unrecognized XCOFF type %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf(stderr,pcVar5,(ulong)uVar1);" (call_expression "fprintf(stderr,pcVar5,(ulong)uVar1)" identifier (argument_list "(stderr,pcVar5,(ulong)uVar1)" ( identifier , identifier , (cast_expression "(ulong)uVar1" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "lVar3 = 0;" (assignment_expression "lVar3 = 0" identifier = number_literal) ;) }))) }) (else_clause "else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }" else (compound_statement "{\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }" { (expression_statement "plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);" (assignment_expression "plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88)" identifier = (cast_expression "(long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_001107d0(param_2 + 0x80,param_2 + 0x88)" identifier (argument_list "(param_2 + 0x80,param_2 + 0x88)" ( (binary_expression "param_2 + 0x80" identifier + number_literal) , (binary_expression "param_2 + 0x88" identifier + number_literal) ))))) ;) (if_statement "if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }" if (parenthesized_expression "(plVar2 == (long *)0x0)" ( (binary_expression "plVar2 == (long *)0x0" identifier == (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      lVar3 = 0;\n    }" { (expression_statement "lVar3 = 0;" (assignment_expression "lVar3 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }" else (compound_statement "{\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }" { (expression_statement "lVar3 = *plVar2;" (assignment_expression "lVar3 = *plVar2" identifier = (pointer_expression "*plVar2" * identifier)) ;) (if_statement "if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }" if (parenthesized_expression "(lVar3 == 0)" ( (binary_expression "lVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }" { (expression_statement "lVar3 = FUN_0010f450(param_1,plVar2);" (assignment_expression "lVar3 = FUN_0010f450(param_1,plVar2)" identifier = (call_expression "FUN_0010f450(param_1,plVar2)" identifier (argument_list "(param_1,plVar2)" ( identifier , identifier )))) ;) (return_statement "return lVar3;" return identifier ;) })) }))) }))) (return_statement "return lVar3;" return identifier ;) })))
(translation_unit "debug_type stab_find_type(void *dhandle,stab_handle *info,int *typenums)\n\n{\n  uint uVar1;\n  debug_type_conflict *slot;\n  debug_type_conflict pdVar2;\n  int iVar3;\n  char *pcVar4;\n  \n  if ((*typenums == 0) && (uVar1 = typenums[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      iVar3 = -uVar1;\n      pdVar2 = info->xcoff_types[iVar3];\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        switch(iVar3) {\n        default:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "int";\n          break;\n        case 2:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "char";\n          break;\n        case 3:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "short";\n          break;\n        case 4:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "long";\n          break;\n        case 5:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "unsigned char";\n          break;\n        case 6:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "signed char";\n          break;\n        case 7:\n          pdVar2 = debug_make_int_type(dhandle,2,1);\n          pcVar4 = "unsigned short";\n          break;\n        case 8:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned int";\n          break;\n        case 9:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned";\n          break;\n        case 10:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned long";\n          break;\n        case 0xb:\n          pdVar2 = debug_make_void_type(dhandle);\n          pcVar4 = "void";\n          break;\n        case 0xc:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "float";\n          break;\n        case 0xd:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "double";\n          break;\n        case 0xe:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "long double";\n          break;\n        case 0xf:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer";\n          break;\n        case 0x10:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "boolean";\n          break;\n        case 0x11:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "short real";\n          break;\n        case 0x12:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "real";\n          break;\n        case 0x13:\n          pcVar4 = "stringptr";\n          pdVar2 = (debug_type_conflict)0x0;\n          break;\n        case 0x14:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "character";\n          break;\n        case 0x15:\n          pdVar2 = debug_make_bool_type(dhandle,1);\n          pcVar4 = "logical*1";\n          break;\n        case 0x16:\n          pdVar2 = debug_make_bool_type(dhandle,2);\n          pcVar4 = "logical*2";\n          break;\n        case 0x17:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical*4";\n          break;\n        case 0x18:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical";\n          break;\n        case 0x19:\n          pdVar2 = debug_make_complex_type(dhandle,8);\n          pcVar4 = "complex";\n          break;\n        case 0x1a:\n          pdVar2 = debug_make_complex_type(dhandle,0x10);\n          pcVar4 = "double complex";\n          break;\n        case 0x1b:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "integer*1";\n          break;\n        case 0x1c:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "integer*2";\n          break;\n        case 0x1d:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer*4";\n          break;\n        case 0x1e:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "wchar";\n          break;\n        case 0x1f:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "long long";\n          break;\n        case 0x20:\n          pdVar2 = debug_make_int_type(dhandle,8,1);\n          pcVar4 = "unsigned long long";\n          break;\n        case 0x21:\n          pdVar2 = debug_make_bool_type(dhandle,8);\n          pcVar4 = "logical*8";\n          break;\n        case 0x22:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "integer*8";\n        }\n        pdVar2 = debug_name_type(dhandle,pcVar4,pdVar2);\n        info->xcoff_types[iVar3] = pdVar2;\n      }\n    }\n    else {\n      pcVar4 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar4,(ulong)uVar1);\n      pdVar2 = (debug_type_conflict)0x0;\n    }\n  }\n  else {\n    slot = stab_find_slot((stab_handle *)&info->files,(int *)&info->file_types,\n                          (stab_handle *)typenums);\n    if (slot == (debug_type_conflict *)0x0) {\n      pdVar2 = (debug_type_conflict)0x0;\n    }\n    else {\n      pdVar2 = *slot;\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0);\n        return pdVar2;\n      }\n    }\n  }\n  return pdVar2;\n}\n\n" (function_definition "debug_type stab_find_type(void *dhandle,stab_handle *info,int *typenums)\n\n{\n  uint uVar1;\n  debug_type_conflict *slot;\n  debug_type_conflict pdVar2;\n  int iVar3;\n  char *pcVar4;\n  \n  if ((*typenums == 0) && (uVar1 = typenums[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      iVar3 = -uVar1;\n      pdVar2 = info->xcoff_types[iVar3];\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        switch(iVar3) {\n        default:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "int";\n          break;\n        case 2:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "char";\n          break;\n        case 3:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "short";\n          break;\n        case 4:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "long";\n          break;\n        case 5:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "unsigned char";\n          break;\n        case 6:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "signed char";\n          break;\n        case 7:\n          pdVar2 = debug_make_int_type(dhandle,2,1);\n          pcVar4 = "unsigned short";\n          break;\n        case 8:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned int";\n          break;\n        case 9:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned";\n          break;\n        case 10:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned long";\n          break;\n        case 0xb:\n          pdVar2 = debug_make_void_type(dhandle);\n          pcVar4 = "void";\n          break;\n        case 0xc:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "float";\n          break;\n        case 0xd:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "double";\n          break;\n        case 0xe:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "long double";\n          break;\n        case 0xf:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer";\n          break;\n        case 0x10:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "boolean";\n          break;\n        case 0x11:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "short real";\n          break;\n        case 0x12:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "real";\n          break;\n        case 0x13:\n          pcVar4 = "stringptr";\n          pdVar2 = (debug_type_conflict)0x0;\n          break;\n        case 0x14:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "character";\n          break;\n        case 0x15:\n          pdVar2 = debug_make_bool_type(dhandle,1);\n          pcVar4 = "logical*1";\n          break;\n        case 0x16:\n          pdVar2 = debug_make_bool_type(dhandle,2);\n          pcVar4 = "logical*2";\n          break;\n        case 0x17:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical*4";\n          break;\n        case 0x18:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical";\n          break;\n        case 0x19:\n          pdVar2 = debug_make_complex_type(dhandle,8);\n          pcVar4 = "complex";\n          break;\n        case 0x1a:\n          pdVar2 = debug_make_complex_type(dhandle,0x10);\n          pcVar4 = "double complex";\n          break;\n        case 0x1b:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "integer*1";\n          break;\n        case 0x1c:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "integer*2";\n          break;\n        case 0x1d:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer*4";\n          break;\n        case 0x1e:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "wchar";\n          break;\n        case 0x1f:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "long long";\n          break;\n        case 0x20:\n          pdVar2 = debug_make_int_type(dhandle,8,1);\n          pcVar4 = "unsigned long long";\n          break;\n        case 0x21:\n          pdVar2 = debug_make_bool_type(dhandle,8);\n          pcVar4 = "logical*8";\n          break;\n        case 0x22:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "integer*8";\n        }\n        pdVar2 = debug_name_type(dhandle,pcVar4,pdVar2);\n        info->xcoff_types[iVar3] = pdVar2;\n      }\n    }\n    else {\n      pcVar4 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar4,(ulong)uVar1);\n      pdVar2 = (debug_type_conflict)0x0;\n    }\n  }\n  else {\n    slot = stab_find_slot((stab_handle *)&info->files,(int *)&info->file_types,\n                          (stab_handle *)typenums);\n    if (slot == (debug_type_conflict *)0x0) {\n      pdVar2 = (debug_type_conflict)0x0;\n    }\n    else {\n      pdVar2 = *slot;\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0);\n        return pdVar2;\n      }\n    }\n  }\n  return pdVar2;\n}" type_identifier (function_declarator "stab_find_type(void *dhandle,stab_handle *info,int *typenums)" identifier (parameter_list "(void *dhandle,stab_handle *info,int *typenums)" ( (parameter_declaration "void *dhandle" primitive_type (pointer_declarator "*dhandle" * identifier)) , (parameter_declaration "stab_handle *info" type_identifier (pointer_declarator "*info" * identifier)) , (parameter_declaration "int *typenums" primitive_type (pointer_declarator "*typenums" * identifier)) ))) (compound_statement "{\n  uint uVar1;\n  debug_type_conflict *slot;\n  debug_type_conflict pdVar2;\n  int iVar3;\n  char *pcVar4;\n  \n  if ((*typenums == 0) && (uVar1 = typenums[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      iVar3 = -uVar1;\n      pdVar2 = info->xcoff_types[iVar3];\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        switch(iVar3) {\n        default:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "int";\n          break;\n        case 2:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "char";\n          break;\n        case 3:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "short";\n          break;\n        case 4:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "long";\n          break;\n        case 5:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "unsigned char";\n          break;\n        case 6:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "signed char";\n          break;\n        case 7:\n          pdVar2 = debug_make_int_type(dhandle,2,1);\n          pcVar4 = "unsigned short";\n          break;\n        case 8:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned int";\n          break;\n        case 9:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned";\n          break;\n        case 10:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned long";\n          break;\n        case 0xb:\n          pdVar2 = debug_make_void_type(dhandle);\n          pcVar4 = "void";\n          break;\n        case 0xc:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "float";\n          break;\n        case 0xd:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "double";\n          break;\n        case 0xe:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "long double";\n          break;\n        case 0xf:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer";\n          break;\n        case 0x10:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "boolean";\n          break;\n        case 0x11:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "short real";\n          break;\n        case 0x12:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "real";\n          break;\n        case 0x13:\n          pcVar4 = "stringptr";\n          pdVar2 = (debug_type_conflict)0x0;\n          break;\n        case 0x14:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "character";\n          break;\n        case 0x15:\n          pdVar2 = debug_make_bool_type(dhandle,1);\n          pcVar4 = "logical*1";\n          break;\n        case 0x16:\n          pdVar2 = debug_make_bool_type(dhandle,2);\n          pcVar4 = "logical*2";\n          break;\n        case 0x17:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical*4";\n          break;\n        case 0x18:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical";\n          break;\n        case 0x19:\n          pdVar2 = debug_make_complex_type(dhandle,8);\n          pcVar4 = "complex";\n          break;\n        case 0x1a:\n          pdVar2 = debug_make_complex_type(dhandle,0x10);\n          pcVar4 = "double complex";\n          break;\n        case 0x1b:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "integer*1";\n          break;\n        case 0x1c:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "integer*2";\n          break;\n        case 0x1d:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer*4";\n          break;\n        case 0x1e:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "wchar";\n          break;\n        case 0x1f:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "long long";\n          break;\n        case 0x20:\n          pdVar2 = debug_make_int_type(dhandle,8,1);\n          pcVar4 = "unsigned long long";\n          break;\n        case 0x21:\n          pdVar2 = debug_make_bool_type(dhandle,8);\n          pcVar4 = "logical*8";\n          break;\n        case 0x22:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "integer*8";\n        }\n        pdVar2 = debug_name_type(dhandle,pcVar4,pdVar2);\n        info->xcoff_types[iVar3] = pdVar2;\n      }\n    }\n    else {\n      pcVar4 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar4,(ulong)uVar1);\n      pdVar2 = (debug_type_conflict)0x0;\n    }\n  }\n  else {\n    slot = stab_find_slot((stab_handle *)&info->files,(int *)&info->file_types,\n                          (stab_handle *)typenums);\n    if (slot == (debug_type_conflict *)0x0) {\n      pdVar2 = (debug_type_conflict)0x0;\n    }\n    else {\n      pdVar2 = *slot;\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0);\n        return pdVar2;\n      }\n    }\n  }\n  return pdVar2;\n}" { (declaration "uint uVar1;" type_identifier identifier ;) (declaration "debug_type_conflict *slot;" type_identifier (pointer_declarator "*slot" * identifier) ;) (declaration "debug_type_conflict pdVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (if_statement "if ((*typenums == 0) && (uVar1 = typenums[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      iVar3 = -uVar1;\n      pdVar2 = info->xcoff_types[iVar3];\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        switch(iVar3) {\n        default:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "int";\n          break;\n        case 2:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "char";\n          break;\n        case 3:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "short";\n          break;\n        case 4:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "long";\n          break;\n        case 5:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "unsigned char";\n          break;\n        case 6:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "signed char";\n          break;\n        case 7:\n          pdVar2 = debug_make_int_type(dhandle,2,1);\n          pcVar4 = "unsigned short";\n          break;\n        case 8:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned int";\n          break;\n        case 9:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned";\n          break;\n        case 10:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned long";\n          break;\n        case 0xb:\n          pdVar2 = debug_make_void_type(dhandle);\n          pcVar4 = "void";\n          break;\n        case 0xc:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "float";\n          break;\n        case 0xd:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "double";\n          break;\n        case 0xe:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "long double";\n          break;\n        case 0xf:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer";\n          break;\n        case 0x10:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "boolean";\n          break;\n        case 0x11:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "short real";\n          break;\n        case 0x12:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "real";\n          break;\n        case 0x13:\n          pcVar4 = "stringptr";\n          pdVar2 = (debug_type_conflict)0x0;\n          break;\n        case 0x14:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "character";\n          break;\n        case 0x15:\n          pdVar2 = debug_make_bool_type(dhandle,1);\n          pcVar4 = "logical*1";\n          break;\n        case 0x16:\n          pdVar2 = debug_make_bool_type(dhandle,2);\n          pcVar4 = "logical*2";\n          break;\n        case 0x17:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical*4";\n          break;\n        case 0x18:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical";\n          break;\n        case 0x19:\n          pdVar2 = debug_make_complex_type(dhandle,8);\n          pcVar4 = "complex";\n          break;\n        case 0x1a:\n          pdVar2 = debug_make_complex_type(dhandle,0x10);\n          pcVar4 = "double complex";\n          break;\n        case 0x1b:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "integer*1";\n          break;\n        case 0x1c:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "integer*2";\n          break;\n        case 0x1d:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer*4";\n          break;\n        case 0x1e:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "wchar";\n          break;\n        case 0x1f:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "long long";\n          break;\n        case 0x20:\n          pdVar2 = debug_make_int_type(dhandle,8,1);\n          pcVar4 = "unsigned long long";\n          break;\n        case 0x21:\n          pdVar2 = debug_make_bool_type(dhandle,8);\n          pcVar4 = "logical*8";\n          break;\n        case 0x22:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "integer*8";\n        }\n        pdVar2 = debug_name_type(dhandle,pcVar4,pdVar2);\n        info->xcoff_types[iVar3] = pdVar2;\n      }\n    }\n    else {\n      pcVar4 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar4,(ulong)uVar1);\n      pdVar2 = (debug_type_conflict)0x0;\n    }\n  }\n  else {\n    slot = stab_find_slot((stab_handle *)&info->files,(int *)&info->file_types,\n                          (stab_handle *)typenums);\n    if (slot == (debug_type_conflict *)0x0) {\n      pdVar2 = (debug_type_conflict)0x0;\n    }\n    else {\n      pdVar2 = *slot;\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0);\n        return pdVar2;\n      }\n    }\n  }" if (parenthesized_expression "((*typenums == 0) && (uVar1 = typenums[1], (int)uVar1 < 0))" ( (binary_expression "(*typenums == 0) && (uVar1 = typenums[1], (int)uVar1 < 0)" (parenthesized_expression "(*typenums == 0)" ( (binary_expression "*typenums == 0" (pointer_expression "*typenums" * identifier) == number_literal) )) && (parenthesized_expression "(uVar1 = typenums[1], (int)uVar1 < 0)" ( (comma_expression "uVar1 = typenums[1], (int)uVar1 < 0" (assignment_expression "uVar1 = typenums[1]" identifier = (subscript_expression "typenums[1]" identifier [ number_literal ])) , (binary_expression "(int)uVar1 < 0" (cast_expression "(int)uVar1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ))) )) (compound_statement "{\n    if (uVar1 + 0x22 < 0x22) {\n      iVar3 = -uVar1;\n      pdVar2 = info->xcoff_types[iVar3];\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        switch(iVar3) {\n        default:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "int";\n          break;\n        case 2:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "char";\n          break;\n        case 3:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "short";\n          break;\n        case 4:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "long";\n          break;\n        case 5:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "unsigned char";\n          break;\n        case 6:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "signed char";\n          break;\n        case 7:\n          pdVar2 = debug_make_int_type(dhandle,2,1);\n          pcVar4 = "unsigned short";\n          break;\n        case 8:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned int";\n          break;\n        case 9:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned";\n          break;\n        case 10:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned long";\n          break;\n        case 0xb:\n          pdVar2 = debug_make_void_type(dhandle);\n          pcVar4 = "void";\n          break;\n        case 0xc:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "float";\n          break;\n        case 0xd:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "double";\n          break;\n        case 0xe:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "long double";\n          break;\n        case 0xf:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer";\n          break;\n        case 0x10:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "boolean";\n          break;\n        case 0x11:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "short real";\n          break;\n        case 0x12:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "real";\n          break;\n        case 0x13:\n          pcVar4 = "stringptr";\n          pdVar2 = (debug_type_conflict)0x0;\n          break;\n        case 0x14:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "character";\n          break;\n        case 0x15:\n          pdVar2 = debug_make_bool_type(dhandle,1);\n          pcVar4 = "logical*1";\n          break;\n        case 0x16:\n          pdVar2 = debug_make_bool_type(dhandle,2);\n          pcVar4 = "logical*2";\n          break;\n        case 0x17:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical*4";\n          break;\n        case 0x18:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical";\n          break;\n        case 0x19:\n          pdVar2 = debug_make_complex_type(dhandle,8);\n          pcVar4 = "complex";\n          break;\n        case 0x1a:\n          pdVar2 = debug_make_complex_type(dhandle,0x10);\n          pcVar4 = "double complex";\n          break;\n        case 0x1b:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "integer*1";\n          break;\n        case 0x1c:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "integer*2";\n          break;\n        case 0x1d:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer*4";\n          break;\n        case 0x1e:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "wchar";\n          break;\n        case 0x1f:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "long long";\n          break;\n        case 0x20:\n          pdVar2 = debug_make_int_type(dhandle,8,1);\n          pcVar4 = "unsigned long long";\n          break;\n        case 0x21:\n          pdVar2 = debug_make_bool_type(dhandle,8);\n          pcVar4 = "logical*8";\n          break;\n        case 0x22:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "integer*8";\n        }\n        pdVar2 = debug_name_type(dhandle,pcVar4,pdVar2);\n        info->xcoff_types[iVar3] = pdVar2;\n      }\n    }\n    else {\n      pcVar4 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar4,(ulong)uVar1);\n      pdVar2 = (debug_type_conflict)0x0;\n    }\n  }" { (if_statement "if (uVar1 + 0x22 < 0x22) {\n      iVar3 = -uVar1;\n      pdVar2 = info->xcoff_types[iVar3];\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        switch(iVar3) {\n        default:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "int";\n          break;\n        case 2:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "char";\n          break;\n        case 3:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "short";\n          break;\n        case 4:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "long";\n          break;\n        case 5:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "unsigned char";\n          break;\n        case 6:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "signed char";\n          break;\n        case 7:\n          pdVar2 = debug_make_int_type(dhandle,2,1);\n          pcVar4 = "unsigned short";\n          break;\n        case 8:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned int";\n          break;\n        case 9:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned";\n          break;\n        case 10:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned long";\n          break;\n        case 0xb:\n          pdVar2 = debug_make_void_type(dhandle);\n          pcVar4 = "void";\n          break;\n        case 0xc:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "float";\n          break;\n        case 0xd:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "double";\n          break;\n        case 0xe:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "long double";\n          break;\n        case 0xf:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer";\n          break;\n        case 0x10:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "boolean";\n          break;\n        case 0x11:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "short real";\n          break;\n        case 0x12:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "real";\n          break;\n        case 0x13:\n          pcVar4 = "stringptr";\n          pdVar2 = (debug_type_conflict)0x0;\n          break;\n        case 0x14:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "character";\n          break;\n        case 0x15:\n          pdVar2 = debug_make_bool_type(dhandle,1);\n          pcVar4 = "logical*1";\n          break;\n        case 0x16:\n          pdVar2 = debug_make_bool_type(dhandle,2);\n          pcVar4 = "logical*2";\n          break;\n        case 0x17:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical*4";\n          break;\n        case 0x18:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical";\n          break;\n        case 0x19:\n          pdVar2 = debug_make_complex_type(dhandle,8);\n          pcVar4 = "complex";\n          break;\n        case 0x1a:\n          pdVar2 = debug_make_complex_type(dhandle,0x10);\n          pcVar4 = "double complex";\n          break;\n        case 0x1b:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "integer*1";\n          break;\n        case 0x1c:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "integer*2";\n          break;\n        case 0x1d:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer*4";\n          break;\n        case 0x1e:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "wchar";\n          break;\n        case 0x1f:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "long long";\n          break;\n        case 0x20:\n          pdVar2 = debug_make_int_type(dhandle,8,1);\n          pcVar4 = "unsigned long long";\n          break;\n        case 0x21:\n          pdVar2 = debug_make_bool_type(dhandle,8);\n          pcVar4 = "logical*8";\n          break;\n        case 0x22:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "integer*8";\n        }\n        pdVar2 = debug_name_type(dhandle,pcVar4,pdVar2);\n        info->xcoff_types[iVar3] = pdVar2;\n      }\n    }\n    else {\n      pcVar4 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar4,(ulong)uVar1);\n      pdVar2 = (debug_type_conflict)0x0;\n    }" if (parenthesized_expression "(uVar1 + 0x22 < 0x22)" ( (binary_expression "uVar1 + 0x22 < 0x22" (binary_expression "uVar1 + 0x22" identifier + number_literal) < number_literal) )) (compound_statement "{\n      iVar3 = -uVar1;\n      pdVar2 = info->xcoff_types[iVar3];\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        switch(iVar3) {\n        default:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "int";\n          break;\n        case 2:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "char";\n          break;\n        case 3:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "short";\n          break;\n        case 4:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "long";\n          break;\n        case 5:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "unsigned char";\n          break;\n        case 6:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "signed char";\n          break;\n        case 7:\n          pdVar2 = debug_make_int_type(dhandle,2,1);\n          pcVar4 = "unsigned short";\n          break;\n        case 8:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned int";\n          break;\n        case 9:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned";\n          break;\n        case 10:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned long";\n          break;\n        case 0xb:\n          pdVar2 = debug_make_void_type(dhandle);\n          pcVar4 = "void";\n          break;\n        case 0xc:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "float";\n          break;\n        case 0xd:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "double";\n          break;\n        case 0xe:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "long double";\n          break;\n        case 0xf:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer";\n          break;\n        case 0x10:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "boolean";\n          break;\n        case 0x11:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "short real";\n          break;\n        case 0x12:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "real";\n          break;\n        case 0x13:\n          pcVar4 = "stringptr";\n          pdVar2 = (debug_type_conflict)0x0;\n          break;\n        case 0x14:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "character";\n          break;\n        case 0x15:\n          pdVar2 = debug_make_bool_type(dhandle,1);\n          pcVar4 = "logical*1";\n          break;\n        case 0x16:\n          pdVar2 = debug_make_bool_type(dhandle,2);\n          pcVar4 = "logical*2";\n          break;\n        case 0x17:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical*4";\n          break;\n        case 0x18:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical";\n          break;\n        case 0x19:\n          pdVar2 = debug_make_complex_type(dhandle,8);\n          pcVar4 = "complex";\n          break;\n        case 0x1a:\n          pdVar2 = debug_make_complex_type(dhandle,0x10);\n          pcVar4 = "double complex";\n          break;\n        case 0x1b:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "integer*1";\n          break;\n        case 0x1c:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "integer*2";\n          break;\n        case 0x1d:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer*4";\n          break;\n        case 0x1e:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "wchar";\n          break;\n        case 0x1f:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "long long";\n          break;\n        case 0x20:\n          pdVar2 = debug_make_int_type(dhandle,8,1);\n          pcVar4 = "unsigned long long";\n          break;\n        case 0x21:\n          pdVar2 = debug_make_bool_type(dhandle,8);\n          pcVar4 = "logical*8";\n          break;\n        case 0x22:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "integer*8";\n        }\n        pdVar2 = debug_name_type(dhandle,pcVar4,pdVar2);\n        info->xcoff_types[iVar3] = pdVar2;\n      }\n    }" { (expression_statement "iVar3 = -uVar1;" (assignment_expression "iVar3 = -uVar1" identifier = (unary_expression "-uVar1" - identifier)) ;) (expression_statement "pdVar2 = info->xcoff_types[iVar3];" (assignment_expression "pdVar2 = info->xcoff_types[iVar3]" identifier = (subscript_expression "info->xcoff_types[iVar3]" (field_expression "info->xcoff_types" identifier -> field_identifier) [ identifier ])) ;) (if_statement "if (pdVar2 == (debug_type_conflict)0x0) {\n        switch(iVar3) {\n        default:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "int";\n          break;\n        case 2:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "char";\n          break;\n        case 3:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "short";\n          break;\n        case 4:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "long";\n          break;\n        case 5:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "unsigned char";\n          break;\n        case 6:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "signed char";\n          break;\n        case 7:\n          pdVar2 = debug_make_int_type(dhandle,2,1);\n          pcVar4 = "unsigned short";\n          break;\n        case 8:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned int";\n          break;\n        case 9:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned";\n          break;\n        case 10:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned long";\n          break;\n        case 0xb:\n          pdVar2 = debug_make_void_type(dhandle);\n          pcVar4 = "void";\n          break;\n        case 0xc:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "float";\n          break;\n        case 0xd:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "double";\n          break;\n        case 0xe:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "long double";\n          break;\n        case 0xf:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer";\n          break;\n        case 0x10:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "boolean";\n          break;\n        case 0x11:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "short real";\n          break;\n        case 0x12:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "real";\n          break;\n        case 0x13:\n          pcVar4 = "stringptr";\n          pdVar2 = (debug_type_conflict)0x0;\n          break;\n        case 0x14:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "character";\n          break;\n        case 0x15:\n          pdVar2 = debug_make_bool_type(dhandle,1);\n          pcVar4 = "logical*1";\n          break;\n        case 0x16:\n          pdVar2 = debug_make_bool_type(dhandle,2);\n          pcVar4 = "logical*2";\n          break;\n        case 0x17:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical*4";\n          break;\n        case 0x18:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical";\n          break;\n        case 0x19:\n          pdVar2 = debug_make_complex_type(dhandle,8);\n          pcVar4 = "complex";\n          break;\n        case 0x1a:\n          pdVar2 = debug_make_complex_type(dhandle,0x10);\n          pcVar4 = "double complex";\n          break;\n        case 0x1b:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "integer*1";\n          break;\n        case 0x1c:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "integer*2";\n          break;\n        case 0x1d:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer*4";\n          break;\n        case 0x1e:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "wchar";\n          break;\n        case 0x1f:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "long long";\n          break;\n        case 0x20:\n          pdVar2 = debug_make_int_type(dhandle,8,1);\n          pcVar4 = "unsigned long long";\n          break;\n        case 0x21:\n          pdVar2 = debug_make_bool_type(dhandle,8);\n          pcVar4 = "logical*8";\n          break;\n        case 0x22:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "integer*8";\n        }\n        pdVar2 = debug_name_type(dhandle,pcVar4,pdVar2);\n        info->xcoff_types[iVar3] = pdVar2;\n      }" if (parenthesized_expression "(pdVar2 == (debug_type_conflict)0x0)" ( (binary_expression "pdVar2 == (debug_type_conflict)0x0" identifier == (cast_expression "(debug_type_conflict)0x0" ( (type_descriptor "debug_type_conflict" type_identifier) ) number_literal)) )) (compound_statement "{\n        switch(iVar3) {\n        default:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "int";\n          break;\n        case 2:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "char";\n          break;\n        case 3:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "short";\n          break;\n        case 4:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "long";\n          break;\n        case 5:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "unsigned char";\n          break;\n        case 6:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "signed char";\n          break;\n        case 7:\n          pdVar2 = debug_make_int_type(dhandle,2,1);\n          pcVar4 = "unsigned short";\n          break;\n        case 8:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned int";\n          break;\n        case 9:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned";\n          break;\n        case 10:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned long";\n          break;\n        case 0xb:\n          pdVar2 = debug_make_void_type(dhandle);\n          pcVar4 = "void";\n          break;\n        case 0xc:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "float";\n          break;\n        case 0xd:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "double";\n          break;\n        case 0xe:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "long double";\n          break;\n        case 0xf:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer";\n          break;\n        case 0x10:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "boolean";\n          break;\n        case 0x11:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "short real";\n          break;\n        case 0x12:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "real";\n          break;\n        case 0x13:\n          pcVar4 = "stringptr";\n          pdVar2 = (debug_type_conflict)0x0;\n          break;\n        case 0x14:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "character";\n          break;\n        case 0x15:\n          pdVar2 = debug_make_bool_type(dhandle,1);\n          pcVar4 = "logical*1";\n          break;\n        case 0x16:\n          pdVar2 = debug_make_bool_type(dhandle,2);\n          pcVar4 = "logical*2";\n          break;\n        case 0x17:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical*4";\n          break;\n        case 0x18:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical";\n          break;\n        case 0x19:\n          pdVar2 = debug_make_complex_type(dhandle,8);\n          pcVar4 = "complex";\n          break;\n        case 0x1a:\n          pdVar2 = debug_make_complex_type(dhandle,0x10);\n          pcVar4 = "double complex";\n          break;\n        case 0x1b:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "integer*1";\n          break;\n        case 0x1c:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "integer*2";\n          break;\n        case 0x1d:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer*4";\n          break;\n        case 0x1e:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "wchar";\n          break;\n        case 0x1f:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "long long";\n          break;\n        case 0x20:\n          pdVar2 = debug_make_int_type(dhandle,8,1);\n          pcVar4 = "unsigned long long";\n          break;\n        case 0x21:\n          pdVar2 = debug_make_bool_type(dhandle,8);\n          pcVar4 = "logical*8";\n          break;\n        case 0x22:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "integer*8";\n        }\n        pdVar2 = debug_name_type(dhandle,pcVar4,pdVar2);\n        info->xcoff_types[iVar3] = pdVar2;\n      }" { (switch_statement "switch(iVar3) {\n        default:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "int";\n          break;\n        case 2:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "char";\n          break;\n        case 3:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "short";\n          break;\n        case 4:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "long";\n          break;\n        case 5:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "unsigned char";\n          break;\n        case 6:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "signed char";\n          break;\n        case 7:\n          pdVar2 = debug_make_int_type(dhandle,2,1);\n          pcVar4 = "unsigned short";\n          break;\n        case 8:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned int";\n          break;\n        case 9:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned";\n          break;\n        case 10:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned long";\n          break;\n        case 0xb:\n          pdVar2 = debug_make_void_type(dhandle);\n          pcVar4 = "void";\n          break;\n        case 0xc:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "float";\n          break;\n        case 0xd:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "double";\n          break;\n        case 0xe:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "long double";\n          break;\n        case 0xf:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer";\n          break;\n        case 0x10:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "boolean";\n          break;\n        case 0x11:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "short real";\n          break;\n        case 0x12:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "real";\n          break;\n        case 0x13:\n          pcVar4 = "stringptr";\n          pdVar2 = (debug_type_conflict)0x0;\n          break;\n        case 0x14:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "character";\n          break;\n        case 0x15:\n          pdVar2 = debug_make_bool_type(dhandle,1);\n          pcVar4 = "logical*1";\n          break;\n        case 0x16:\n          pdVar2 = debug_make_bool_type(dhandle,2);\n          pcVar4 = "logical*2";\n          break;\n        case 0x17:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical*4";\n          break;\n        case 0x18:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical";\n          break;\n        case 0x19:\n          pdVar2 = debug_make_complex_type(dhandle,8);\n          pcVar4 = "complex";\n          break;\n        case 0x1a:\n          pdVar2 = debug_make_complex_type(dhandle,0x10);\n          pcVar4 = "double complex";\n          break;\n        case 0x1b:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "integer*1";\n          break;\n        case 0x1c:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "integer*2";\n          break;\n        case 0x1d:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer*4";\n          break;\n        case 0x1e:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "wchar";\n          break;\n        case 0x1f:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "long long";\n          break;\n        case 0x20:\n          pdVar2 = debug_make_int_type(dhandle,8,1);\n          pcVar4 = "unsigned long long";\n          break;\n        case 0x21:\n          pdVar2 = debug_make_bool_type(dhandle,8);\n          pcVar4 = "logical*8";\n          break;\n        case 0x22:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "integer*8";\n        }" switch (parenthesized_expression "(iVar3)" ( identifier )) (compound_statement "{\n        default:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "int";\n          break;\n        case 2:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "char";\n          break;\n        case 3:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "short";\n          break;\n        case 4:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "long";\n          break;\n        case 5:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "unsigned char";\n          break;\n        case 6:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "signed char";\n          break;\n        case 7:\n          pdVar2 = debug_make_int_type(dhandle,2,1);\n          pcVar4 = "unsigned short";\n          break;\n        case 8:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned int";\n          break;\n        case 9:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned";\n          break;\n        case 10:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned long";\n          break;\n        case 0xb:\n          pdVar2 = debug_make_void_type(dhandle);\n          pcVar4 = "void";\n          break;\n        case 0xc:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "float";\n          break;\n        case 0xd:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "double";\n          break;\n        case 0xe:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "long double";\n          break;\n        case 0xf:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer";\n          break;\n        case 0x10:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "boolean";\n          break;\n        case 0x11:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "short real";\n          break;\n        case 0x12:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "real";\n          break;\n        case 0x13:\n          pcVar4 = "stringptr";\n          pdVar2 = (debug_type_conflict)0x0;\n          break;\n        case 0x14:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "character";\n          break;\n        case 0x15:\n          pdVar2 = debug_make_bool_type(dhandle,1);\n          pcVar4 = "logical*1";\n          break;\n        case 0x16:\n          pdVar2 = debug_make_bool_type(dhandle,2);\n          pcVar4 = "logical*2";\n          break;\n        case 0x17:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical*4";\n          break;\n        case 0x18:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical";\n          break;\n        case 0x19:\n          pdVar2 = debug_make_complex_type(dhandle,8);\n          pcVar4 = "complex";\n          break;\n        case 0x1a:\n          pdVar2 = debug_make_complex_type(dhandle,0x10);\n          pcVar4 = "double complex";\n          break;\n        case 0x1b:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "integer*1";\n          break;\n        case 0x1c:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "integer*2";\n          break;\n        case 0x1d:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer*4";\n          break;\n        case 0x1e:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "wchar";\n          break;\n        case 0x1f:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "long long";\n          break;\n        case 0x20:\n          pdVar2 = debug_make_int_type(dhandle,8,1);\n          pcVar4 = "unsigned long long";\n          break;\n        case 0x21:\n          pdVar2 = debug_make_bool_type(dhandle,8);\n          pcVar4 = "logical*8";\n          break;\n        case 0x22:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "integer*8";\n        }" { (case_statement "default:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "int";\n          break;" default : (expression_statement "pdVar2 = debug_make_int_type(dhandle,4,0);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,4,0)" identifier = (call_expression "debug_make_int_type(dhandle,4,0)" identifier (argument_list "(dhandle,4,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "int";" (assignment_expression "pcVar4 = "int"" identifier = (string_literal ""int"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 2:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "char";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,1,0);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,1,0)" identifier = (call_expression "debug_make_int_type(dhandle,1,0)" identifier (argument_list "(dhandle,1,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "char";" (assignment_expression "pcVar4 = "char"" identifier = (string_literal ""char"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 3:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "short";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,2,0);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,2,0)" identifier = (call_expression "debug_make_int_type(dhandle,2,0)" identifier (argument_list "(dhandle,2,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "short";" (assignment_expression "pcVar4 = "short"" identifier = (string_literal ""short"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 4:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "long";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,4,0);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,4,0)" identifier = (call_expression "debug_make_int_type(dhandle,4,0)" identifier (argument_list "(dhandle,4,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "long";" (assignment_expression "pcVar4 = "long"" identifier = (string_literal ""long"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 5:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "unsigned char";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,1,1);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,1,1)" identifier = (call_expression "debug_make_int_type(dhandle,1,1)" identifier (argument_list "(dhandle,1,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "unsigned char";" (assignment_expression "pcVar4 = "unsigned char"" identifier = (string_literal ""unsigned char"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 6:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "signed char";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,1,0);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,1,0)" identifier = (call_expression "debug_make_int_type(dhandle,1,0)" identifier (argument_list "(dhandle,1,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "signed char";" (assignment_expression "pcVar4 = "signed char"" identifier = (string_literal ""signed char"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 7:\n          pdVar2 = debug_make_int_type(dhandle,2,1);\n          pcVar4 = "unsigned short";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,2,1);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,2,1)" identifier = (call_expression "debug_make_int_type(dhandle,2,1)" identifier (argument_list "(dhandle,2,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "unsigned short";" (assignment_expression "pcVar4 = "unsigned short"" identifier = (string_literal ""unsigned short"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 8:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned int";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,4,1);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,4,1)" identifier = (call_expression "debug_make_int_type(dhandle,4,1)" identifier (argument_list "(dhandle,4,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "unsigned int";" (assignment_expression "pcVar4 = "unsigned int"" identifier = (string_literal ""unsigned int"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 9:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,4,1);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,4,1)" identifier = (call_expression "debug_make_int_type(dhandle,4,1)" identifier (argument_list "(dhandle,4,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "unsigned";" (assignment_expression "pcVar4 = "unsigned"" identifier = (string_literal ""unsigned"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 10:\n          pdVar2 = debug_make_int_type(dhandle,4,1);\n          pcVar4 = "unsigned long";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,4,1);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,4,1)" identifier = (call_expression "debug_make_int_type(dhandle,4,1)" identifier (argument_list "(dhandle,4,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "unsigned long";" (assignment_expression "pcVar4 = "unsigned long"" identifier = (string_literal ""unsigned long"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xb:\n          pdVar2 = debug_make_void_type(dhandle);\n          pcVar4 = "void";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_void_type(dhandle);" (assignment_expression "pdVar2 = debug_make_void_type(dhandle)" identifier = (call_expression "debug_make_void_type(dhandle)" identifier (argument_list "(dhandle)" ( identifier )))) ;) (expression_statement "pcVar4 = "void";" (assignment_expression "pcVar4 = "void"" identifier = (string_literal ""void"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xc:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "float";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_float_type(dhandle,4);" (assignment_expression "pdVar2 = debug_make_float_type(dhandle,4)" identifier = (call_expression "debug_make_float_type(dhandle,4)" identifier (argument_list "(dhandle,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = "float";" (assignment_expression "pcVar4 = "float"" identifier = (string_literal ""float"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xd:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "double";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_float_type(dhandle,8);" (assignment_expression "pdVar2 = debug_make_float_type(dhandle,8)" identifier = (call_expression "debug_make_float_type(dhandle,8)" identifier (argument_list "(dhandle,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = "double";" (assignment_expression "pcVar4 = "double"" identifier = (string_literal ""double"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xe:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "long double";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_float_type(dhandle,8);" (assignment_expression "pdVar2 = debug_make_float_type(dhandle,8)" identifier = (call_expression "debug_make_float_type(dhandle,8)" identifier (argument_list "(dhandle,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = "long double";" (assignment_expression "pcVar4 = "long double"" identifier = (string_literal ""long double"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xf:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,4,0);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,4,0)" identifier = (call_expression "debug_make_int_type(dhandle,4,0)" identifier (argument_list "(dhandle,4,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "integer";" (assignment_expression "pcVar4 = "integer"" identifier = (string_literal ""integer"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x10:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "boolean";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_bool_type(dhandle,4);" (assignment_expression "pdVar2 = debug_make_bool_type(dhandle,4)" identifier = (call_expression "debug_make_bool_type(dhandle,4)" identifier (argument_list "(dhandle,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = "boolean";" (assignment_expression "pcVar4 = "boolean"" identifier = (string_literal ""boolean"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x11:\n          pdVar2 = debug_make_float_type(dhandle,4);\n          pcVar4 = "short real";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_float_type(dhandle,4);" (assignment_expression "pdVar2 = debug_make_float_type(dhandle,4)" identifier = (call_expression "debug_make_float_type(dhandle,4)" identifier (argument_list "(dhandle,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = "short real";" (assignment_expression "pcVar4 = "short real"" identifier = (string_literal ""short real"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x12:\n          pdVar2 = debug_make_float_type(dhandle,8);\n          pcVar4 = "real";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_float_type(dhandle,8);" (assignment_expression "pdVar2 = debug_make_float_type(dhandle,8)" identifier = (call_expression "debug_make_float_type(dhandle,8)" identifier (argument_list "(dhandle,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = "real";" (assignment_expression "pcVar4 = "real"" identifier = (string_literal ""real"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x13:\n          pcVar4 = "stringptr";\n          pdVar2 = (debug_type_conflict)0x0;\n          break;" case number_literal : (expression_statement "pcVar4 = "stringptr";" (assignment_expression "pcVar4 = "stringptr"" identifier = (string_literal ""stringptr"" " string_content ")) ;) (expression_statement "pdVar2 = (debug_type_conflict)0x0;" (assignment_expression "pdVar2 = (debug_type_conflict)0x0" identifier = (cast_expression "(debug_type_conflict)0x0" ( (type_descriptor "debug_type_conflict" type_identifier) ) number_literal)) ;) (break_statement "break;" break ;)) (case_statement "case 0x14:\n          pdVar2 = debug_make_int_type(dhandle,1,1);\n          pcVar4 = "character";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,1,1);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,1,1)" identifier = (call_expression "debug_make_int_type(dhandle,1,1)" identifier (argument_list "(dhandle,1,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "character";" (assignment_expression "pcVar4 = "character"" identifier = (string_literal ""character"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x15:\n          pdVar2 = debug_make_bool_type(dhandle,1);\n          pcVar4 = "logical*1";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_bool_type(dhandle,1);" (assignment_expression "pdVar2 = debug_make_bool_type(dhandle,1)" identifier = (call_expression "debug_make_bool_type(dhandle,1)" identifier (argument_list "(dhandle,1)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = "logical*1";" (assignment_expression "pcVar4 = "logical*1"" identifier = (string_literal ""logical*1"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x16:\n          pdVar2 = debug_make_bool_type(dhandle,2);\n          pcVar4 = "logical*2";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_bool_type(dhandle,2);" (assignment_expression "pdVar2 = debug_make_bool_type(dhandle,2)" identifier = (call_expression "debug_make_bool_type(dhandle,2)" identifier (argument_list "(dhandle,2)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = "logical*2";" (assignment_expression "pcVar4 = "logical*2"" identifier = (string_literal ""logical*2"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x17:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical*4";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_bool_type(dhandle,4);" (assignment_expression "pdVar2 = debug_make_bool_type(dhandle,4)" identifier = (call_expression "debug_make_bool_type(dhandle,4)" identifier (argument_list "(dhandle,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = "logical*4";" (assignment_expression "pcVar4 = "logical*4"" identifier = (string_literal ""logical*4"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x18:\n          pdVar2 = debug_make_bool_type(dhandle,4);\n          pcVar4 = "logical";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_bool_type(dhandle,4);" (assignment_expression "pdVar2 = debug_make_bool_type(dhandle,4)" identifier = (call_expression "debug_make_bool_type(dhandle,4)" identifier (argument_list "(dhandle,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = "logical";" (assignment_expression "pcVar4 = "logical"" identifier = (string_literal ""logical"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x19:\n          pdVar2 = debug_make_complex_type(dhandle,8);\n          pcVar4 = "complex";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_complex_type(dhandle,8);" (assignment_expression "pdVar2 = debug_make_complex_type(dhandle,8)" identifier = (call_expression "debug_make_complex_type(dhandle,8)" identifier (argument_list "(dhandle,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = "complex";" (assignment_expression "pcVar4 = "complex"" identifier = (string_literal ""complex"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1a:\n          pdVar2 = debug_make_complex_type(dhandle,0x10);\n          pcVar4 = "double complex";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_complex_type(dhandle,0x10);" (assignment_expression "pdVar2 = debug_make_complex_type(dhandle,0x10)" identifier = (call_expression "debug_make_complex_type(dhandle,0x10)" identifier (argument_list "(dhandle,0x10)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = "double complex";" (assignment_expression "pcVar4 = "double complex"" identifier = (string_literal ""double complex"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1b:\n          pdVar2 = debug_make_int_type(dhandle,1,0);\n          pcVar4 = "integer*1";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,1,0);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,1,0)" identifier = (call_expression "debug_make_int_type(dhandle,1,0)" identifier (argument_list "(dhandle,1,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "integer*1";" (assignment_expression "pcVar4 = "integer*1"" identifier = (string_literal ""integer*1"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1c:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "integer*2";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,2,0);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,2,0)" identifier = (call_expression "debug_make_int_type(dhandle,2,0)" identifier (argument_list "(dhandle,2,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "integer*2";" (assignment_expression "pcVar4 = "integer*2"" identifier = (string_literal ""integer*2"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1d:\n          pdVar2 = debug_make_int_type(dhandle,4,0);\n          pcVar4 = "integer*4";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,4,0);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,4,0)" identifier = (call_expression "debug_make_int_type(dhandle,4,0)" identifier (argument_list "(dhandle,4,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "integer*4";" (assignment_expression "pcVar4 = "integer*4"" identifier = (string_literal ""integer*4"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1e:\n          pdVar2 = debug_make_int_type(dhandle,2,0);\n          pcVar4 = "wchar";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,2,0);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,2,0)" identifier = (call_expression "debug_make_int_type(dhandle,2,0)" identifier (argument_list "(dhandle,2,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "wchar";" (assignment_expression "pcVar4 = "wchar"" identifier = (string_literal ""wchar"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1f:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "long long";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,8,0);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,8,0)" identifier = (call_expression "debug_make_int_type(dhandle,8,0)" identifier (argument_list "(dhandle,8,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "long long";" (assignment_expression "pcVar4 = "long long"" identifier = (string_literal ""long long"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x20:\n          pdVar2 = debug_make_int_type(dhandle,8,1);\n          pcVar4 = "unsigned long long";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,8,1);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,8,1)" identifier = (call_expression "debug_make_int_type(dhandle,8,1)" identifier (argument_list "(dhandle,8,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "unsigned long long";" (assignment_expression "pcVar4 = "unsigned long long"" identifier = (string_literal ""unsigned long long"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x21:\n          pdVar2 = debug_make_bool_type(dhandle,8);\n          pcVar4 = "logical*8";\n          break;" case number_literal : (expression_statement "pdVar2 = debug_make_bool_type(dhandle,8);" (assignment_expression "pdVar2 = debug_make_bool_type(dhandle,8)" identifier = (call_expression "debug_make_bool_type(dhandle,8)" identifier (argument_list "(dhandle,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = "logical*8";" (assignment_expression "pcVar4 = "logical*8"" identifier = (string_literal ""logical*8"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x22:\n          pdVar2 = debug_make_int_type(dhandle,8,0);\n          pcVar4 = "integer*8";" case number_literal : (expression_statement "pdVar2 = debug_make_int_type(dhandle,8,0);" (assignment_expression "pdVar2 = debug_make_int_type(dhandle,8,0)" identifier = (call_expression "debug_make_int_type(dhandle,8,0)" identifier (argument_list "(dhandle,8,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar4 = "integer*8";" (assignment_expression "pcVar4 = "integer*8"" identifier = (string_literal ""integer*8"" " string_content ")) ;)) })) (expression_statement "pdVar2 = debug_name_type(dhandle,pcVar4,pdVar2);" (assignment_expression "pdVar2 = debug_name_type(dhandle,pcVar4,pdVar2)" identifier = (call_expression "debug_name_type(dhandle,pcVar4,pdVar2)" identifier (argument_list "(dhandle,pcVar4,pdVar2)" ( identifier , identifier , identifier )))) ;) (expression_statement "info->xcoff_types[iVar3] = pdVar2;" (assignment_expression "info->xcoff_types[iVar3] = pdVar2" (subscript_expression "info->xcoff_types[iVar3]" (field_expression "info->xcoff_types" identifier -> field_identifier) [ identifier ]) = identifier) ;) })) }) (else_clause "else {\n      pcVar4 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar4,(ulong)uVar1);\n      pdVar2 = (debug_type_conflict)0x0;\n    }" else (compound_statement "{\n      pcVar4 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar4,(ulong)uVar1);\n      pdVar2 = (debug_type_conflict)0x0;\n    }" { (expression_statement "pcVar4 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);" (assignment_expression "pcVar4 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Unrecognized XCOFF type %d\n",5)" identifier (argument_list "(0,"Unrecognized XCOFF type %d\n",5)" ( number_literal , (string_literal ""Unrecognized XCOFF type %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf(stderr,pcVar4,(ulong)uVar1);" (call_expression "fprintf(stderr,pcVar4,(ulong)uVar1)" identifier (argument_list "(stderr,pcVar4,(ulong)uVar1)" ( identifier , identifier , (cast_expression "(ulong)uVar1" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "pdVar2 = (debug_type_conflict)0x0;" (assignment_expression "pdVar2 = (debug_type_conflict)0x0" identifier = (cast_expression "(debug_type_conflict)0x0" ( (type_descriptor "debug_type_conflict" type_identifier) ) number_literal)) ;) }))) }) (else_clause "else {\n    slot = stab_find_slot((stab_handle *)&info->files,(int *)&info->file_types,\n                          (stab_handle *)typenums);\n    if (slot == (debug_type_conflict *)0x0) {\n      pdVar2 = (debug_type_conflict)0x0;\n    }\n    else {\n      pdVar2 = *slot;\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0);\n        return pdVar2;\n      }\n    }\n  }" else (compound_statement "{\n    slot = stab_find_slot((stab_handle *)&info->files,(int *)&info->file_types,\n                          (stab_handle *)typenums);\n    if (slot == (debug_type_conflict *)0x0) {\n      pdVar2 = (debug_type_conflict)0x0;\n    }\n    else {\n      pdVar2 = *slot;\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0);\n        return pdVar2;\n      }\n    }\n  }" { (expression_statement "slot = stab_find_slot((stab_handle *)&info->files,(int *)&info->file_types,\n                          (stab_handle *)typenums);" (assignment_expression "slot = stab_find_slot((stab_handle *)&info->files,(int *)&info->file_types,\n                          (stab_handle *)typenums)" identifier = (call_expression "stab_find_slot((stab_handle *)&info->files,(int *)&info->file_types,\n                          (stab_handle *)typenums)" identifier (argument_list "((stab_handle *)&info->files,(int *)&info->file_types,\n                          (stab_handle *)typenums)" ( (cast_expression "(stab_handle *)&info->files" ( (type_descriptor "stab_handle *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&info->files" & (field_expression "info->files" identifier -> field_identifier))) , (cast_expression "(int *)&info->file_types" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&info->file_types" & (field_expression "info->file_types" identifier -> field_identifier))) , (cast_expression "(stab_handle *)typenums" ( (type_descriptor "stab_handle *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (if_statement "if (slot == (debug_type_conflict *)0x0) {\n      pdVar2 = (debug_type_conflict)0x0;\n    }\n    else {\n      pdVar2 = *slot;\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0);\n        return pdVar2;\n      }\n    }" if (parenthesized_expression "(slot == (debug_type_conflict *)0x0)" ( (binary_expression "slot == (debug_type_conflict *)0x0" identifier == (cast_expression "(debug_type_conflict *)0x0" ( (type_descriptor "debug_type_conflict *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pdVar2 = (debug_type_conflict)0x0;\n    }" { (expression_statement "pdVar2 = (debug_type_conflict)0x0;" (assignment_expression "pdVar2 = (debug_type_conflict)0x0" identifier = (cast_expression "(debug_type_conflict)0x0" ( (type_descriptor "debug_type_conflict" type_identifier) ) number_literal)) ;) }) (else_clause "else {\n      pdVar2 = *slot;\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0);\n        return pdVar2;\n      }\n    }" else (compound_statement "{\n      pdVar2 = *slot;\n      if (pdVar2 == (debug_type_conflict)0x0) {\n        pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0);\n        return pdVar2;\n      }\n    }" { (expression_statement "pdVar2 = *slot;" (assignment_expression "pdVar2 = *slot" identifier = (pointer_expression "*slot" * identifier)) ;) (if_statement "if (pdVar2 == (debug_type_conflict)0x0) {\n        pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0);\n        return pdVar2;\n      }" if (parenthesized_expression "(pdVar2 == (debug_type_conflict)0x0)" ( (binary_expression "pdVar2 == (debug_type_conflict)0x0" identifier == (cast_expression "(debug_type_conflict)0x0" ( (type_descriptor "debug_type_conflict" type_identifier) ) number_literal)) )) (compound_statement "{\n        pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0);\n        return pdVar2;\n      }" { (expression_statement "pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0);" (assignment_expression "pdVar2 = debug_make_indirect_type(dhandle,slot,(char *)0x0)" identifier = (call_expression "debug_make_indirect_type(dhandle,slot,(char *)0x0)" identifier (argument_list "(dhandle,slot,(char *)0x0)" ( identifier , identifier , (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) )))) ;) (return_statement "return pdVar2;" return identifier ;) })) }))) }))) (return_statement "return pdVar2;" return identifier ;) })))
(translation_unit "long FUN_00110930(undefined8 param_1,long param_2,int *param_3)\n\n{\n  uint uVar1;\n  long *plVar2;\n  long lVar3;\n  undefined8 uVar4;\n  char *pcVar5;\n  \n  if ((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }\n  else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }\n  return lVar3;\n}\n\n" (function_definition "long FUN_00110930(undefined8 param_1,long param_2,int *param_3)\n\n{\n  uint uVar1;\n  long *plVar2;\n  long lVar3;\n  undefined8 uVar4;\n  char *pcVar5;\n  \n  if ((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }\n  else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }\n  return lVar3;\n}" (sized_type_specifier "long" long) (function_declarator "FUN_00110930(undefined8 param_1,long param_2,int *param_3)" identifier (parameter_list "(undefined8 param_1,long param_2,int *param_3)" ( (parameter_declaration "undefined8 param_1" type_identifier identifier) , (parameter_declaration "long param_2" (sized_type_specifier "long" long) identifier) , (parameter_declaration "int *param_3" primitive_type (pointer_declarator "*param_3" * identifier)) ))) (compound_statement "{\n  uint uVar1;\n  long *plVar2;\n  long lVar3;\n  undefined8 uVar4;\n  char *pcVar5;\n  \n  if ((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }\n  else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }\n  return lVar3;\n}" { (declaration "uint uVar1;" type_identifier identifier ;) (declaration "long *plVar2;" (sized_type_specifier "long" long) (pointer_declarator "*plVar2" * identifier) ;) (declaration "long lVar3;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 uVar4;" type_identifier identifier ;) (declaration "char *pcVar5;" primitive_type (pointer_declarator "*pcVar5" * identifier) ;) (if_statement "if ((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }\n  else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }" if (parenthesized_expression "((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0))" ( (binary_expression "(*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)" (parenthesized_expression "(*param_3 == 0)" ( (binary_expression "*param_3 == 0" (pointer_expression "*param_3" * identifier) == number_literal) )) && (parenthesized_expression "(uVar1 = param_3[1], (int)uVar1 < 0)" ( (comma_expression "uVar1 = param_3[1], (int)uVar1 < 0" (assignment_expression "uVar1 = param_3[1]" identifier = (subscript_expression "param_3[1]" identifier [ number_literal ])) , (binary_expression "(int)uVar1 < 0" (cast_expression "(int)uVar1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ))) )) (compound_statement "{\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }" { (if_statement "if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }" if (parenthesized_expression "(uVar1 + 0x22 < 0x22)" ( (binary_expression "uVar1 + 0x22 < 0x22" (binary_expression "uVar1 + 0x22" identifier + number_literal) < number_literal) )) (compound_statement "{\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }" { (expression_statement "param_2 = param_2 + (long)(int)-uVar1 * 8;" (assignment_expression "param_2 = param_2 + (long)(int)-uVar1 * 8" identifier = (binary_expression "param_2 + (long)(int)-uVar1 * 8" identifier + (binary_expression "(long)(int)-uVar1 * 8" (cast_expression "(long)(int)-uVar1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)-uVar1" ( (type_descriptor "int" primitive_type) ) (unary_expression "-uVar1" - identifier))) * number_literal))) ;) (expression_statement "lVar3 = *(long *)(param_2 + 0x90);" (assignment_expression "lVar3 = *(long *)(param_2 + 0x90)" identifier = (pointer_expression "*(long *)(param_2 + 0x90)" * (cast_expression "(long *)(param_2 + 0x90)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x90)" ( (binary_expression "param_2 + 0x90" identifier + number_literal) ))))) ;) (if_statement "if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }" if (parenthesized_expression "(lVar3 == 0)" ( (binary_expression "lVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }" { (switch_statement "switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }" switch (parenthesized_expression "(-uVar1)" ( (unary_expression "-uVar1" - identifier) )) (compound_statement "{\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }" { (case_statement "default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;" default : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,0)" identifier = (call_expression "FUN_0010f4a0(param_1,4,0)" identifier (argument_list "(param_1,4,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "int";" (assignment_expression "pcVar5 = "int"" identifier = (string_literal ""int"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,0)" identifier = (call_expression "FUN_0010f4a0(param_1,1,0)" identifier (argument_list "(param_1,1,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "char";" (assignment_expression "pcVar5 = "char"" identifier = (string_literal ""char"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,2,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,2,0)" identifier = (call_expression "FUN_0010f4a0(param_1,2,0)" identifier (argument_list "(param_1,2,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "short";" (assignment_expression "pcVar5 = "short"" identifier = (string_literal ""short"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,0)" identifier = (call_expression "FUN_0010f4a0(param_1,4,0)" identifier (argument_list "(param_1,4,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "long";" (assignment_expression "pcVar5 = "long"" identifier = (string_literal ""long"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,1)" identifier = (call_expression "FUN_0010f4a0(param_1,1,1)" identifier (argument_list "(param_1,1,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "unsigned char";" (assignment_expression "pcVar5 = "unsigned char"" identifier = (string_literal ""unsigned char"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,0)" identifier = (call_expression "FUN_0010f4a0(param_1,1,0)" identifier (argument_list "(param_1,1,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "signed char";" (assignment_expression "pcVar5 = "signed char"" identifier = (string_literal ""signed char"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,2,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,2,1)" identifier = (call_expression "FUN_0010f4a0(param_1,2,1)" identifier (argument_list "(param_1,2,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "unsigned short";" (assignment_expression "pcVar5 = "unsigned short"" identifier = (string_literal ""unsigned short"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,1)" identifier = (call_expression "FUN_0010f4a0(param_1,4,1)" identifier (argument_list "(param_1,4,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "unsigned int";" (assignment_expression "pcVar5 = "unsigned int"" identifier = (string_literal ""unsigned int"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,1)" identifier = (call_expression "FUN_0010f4a0(param_1,4,1)" identifier (argument_list "(param_1,4,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "unsigned";" (assignment_expression "pcVar5 = "unsigned"" identifier = (string_literal ""unsigned"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,1)" identifier = (call_expression "FUN_0010f4a0(param_1,4,1)" identifier (argument_list "(param_1,4,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "unsigned long";" (assignment_expression "pcVar5 = "unsigned long"" identifier = (string_literal ""unsigned long"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f490(param_1);" (assignment_expression "uVar4 = FUN_0010f490(param_1)" identifier = (call_expression "FUN_0010f490(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "pcVar5 = "void";" (assignment_expression "pcVar5 = "void"" identifier = (string_literal ""void"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4c0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,4)" identifier = (call_expression "FUN_0010f4c0(param_1,4)" identifier (argument_list "(param_1,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "float";" (assignment_expression "pcVar5 = "float"" identifier = (string_literal ""float"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4c0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,8)" identifier = (call_expression "FUN_0010f4c0(param_1,8)" identifier (argument_list "(param_1,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "double";" (assignment_expression "pcVar5 = "double"" identifier = (string_literal ""double"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4c0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,8)" identifier = (call_expression "FUN_0010f4c0(param_1,8)" identifier (argument_list "(param_1,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "long double";" (assignment_expression "pcVar5 = "long double"" identifier = (string_literal ""long double"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,0)" identifier = (call_expression "FUN_0010f4a0(param_1,4,0)" identifier (argument_list "(param_1,4,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "integer";" (assignment_expression "pcVar5 = "integer"" identifier = (string_literal ""integer"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4d0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,4)" identifier = (call_expression "FUN_0010f4d0(param_1,4)" identifier (argument_list "(param_1,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "boolean";" (assignment_expression "pcVar5 = "boolean"" identifier = (string_literal ""boolean"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4c0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,4)" identifier = (call_expression "FUN_0010f4c0(param_1,4)" identifier (argument_list "(param_1,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "short real";" (assignment_expression "pcVar5 = "short real"" identifier = (string_literal ""short real"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4c0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,8)" identifier = (call_expression "FUN_0010f4c0(param_1,8)" identifier (argument_list "(param_1,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "real";" (assignment_expression "pcVar5 = "real"" identifier = (string_literal ""real"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;" case number_literal : (expression_statement "pcVar5 = "stringptr";" (assignment_expression "pcVar5 = "stringptr"" identifier = (string_literal ""stringptr"" " string_content ")) ;) (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,1)" identifier = (call_expression "FUN_0010f4a0(param_1,1,1)" identifier (argument_list "(param_1,1,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "character";" (assignment_expression "pcVar5 = "character"" identifier = (string_literal ""character"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4d0(param_1,1);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,1)" identifier = (call_expression "FUN_0010f4d0(param_1,1)" identifier (argument_list "(param_1,1)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "logical*1";" (assignment_expression "pcVar5 = "logical*1"" identifier = (string_literal ""logical*1"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4d0(param_1,2);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,2)" identifier = (call_expression "FUN_0010f4d0(param_1,2)" identifier (argument_list "(param_1,2)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "logical*2";" (assignment_expression "pcVar5 = "logical*2"" identifier = (string_literal ""logical*2"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4d0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,4)" identifier = (call_expression "FUN_0010f4d0(param_1,4)" identifier (argument_list "(param_1,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "logical*4";" (assignment_expression "pcVar5 = "logical*4"" identifier = (string_literal ""logical*4"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4d0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,4)" identifier = (call_expression "FUN_0010f4d0(param_1,4)" identifier (argument_list "(param_1,4)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "logical";" (assignment_expression "pcVar5 = "logical"" identifier = (string_literal ""logical"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4e0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4e0(param_1,8)" identifier = (call_expression "FUN_0010f4e0(param_1,8)" identifier (argument_list "(param_1,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "complex";" (assignment_expression "pcVar5 = "complex"" identifier = (string_literal ""complex"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4e0(param_1,0x10);" (assignment_expression "uVar4 = FUN_0010f4e0(param_1,0x10)" identifier = (call_expression "FUN_0010f4e0(param_1,0x10)" identifier (argument_list "(param_1,0x10)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "double complex";" (assignment_expression "pcVar5 = "double complex"" identifier = (string_literal ""double complex"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,0)" identifier = (call_expression "FUN_0010f4a0(param_1,1,0)" identifier (argument_list "(param_1,1,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "integer*1";" (assignment_expression "pcVar5 = "integer*1"" identifier = (string_literal ""integer*1"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,2,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,2,0)" identifier = (call_expression "FUN_0010f4a0(param_1,2,0)" identifier (argument_list "(param_1,2,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "integer*2";" (assignment_expression "pcVar5 = "integer*2"" identifier = (string_literal ""integer*2"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,0)" identifier = (call_expression "FUN_0010f4a0(param_1,4,0)" identifier (argument_list "(param_1,4,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "integer*4";" (assignment_expression "pcVar5 = "integer*4"" identifier = (string_literal ""integer*4"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,2,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,2,0)" identifier = (call_expression "FUN_0010f4a0(param_1,2,0)" identifier (argument_list "(param_1,2,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "wchar";" (assignment_expression "pcVar5 = "wchar"" identifier = (string_literal ""wchar"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,8,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,8,0)" identifier = (call_expression "FUN_0010f4a0(param_1,8,0)" identifier (argument_list "(param_1,8,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "long long";" (assignment_expression "pcVar5 = "long long"" identifier = (string_literal ""long long"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,8,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,8,1)" identifier = (call_expression "FUN_0010f4a0(param_1,8,1)" identifier (argument_list "(param_1,8,1)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "unsigned long long";" (assignment_expression "pcVar5 = "unsigned long long"" identifier = (string_literal ""unsigned long long"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;" case number_literal : (expression_statement "uVar4 = FUN_0010f4d0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,8)" identifier = (call_expression "FUN_0010f4d0(param_1,8)" identifier (argument_list "(param_1,8)" ( identifier , number_literal )))) ;) (expression_statement "pcVar5 = "logical*8";" (assignment_expression "pcVar5 = "logical*8"" identifier = (string_literal ""logical*8"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";" case number_literal : (expression_statement "uVar4 = FUN_0010f4a0(param_1,8,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,8,0)" identifier = (call_expression "FUN_0010f4a0(param_1,8,0)" identifier (argument_list "(param_1,8,0)" ( identifier , number_literal , number_literal )))) ;) (expression_statement "pcVar5 = "integer*8";" (assignment_expression "pcVar5 = "integer*8"" identifier = (string_literal ""integer*8"" " string_content ")) ;)) })) (expression_statement "lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);" (assignment_expression "lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4)" identifier = (call_expression "FUN_0010fb10(param_1,pcVar5,uVar4)" identifier (argument_list "(param_1,pcVar5,uVar4)" ( identifier , identifier , identifier )))) ;) (expression_statement "*(long *)(param_2 + 0x90) = lVar3;" (assignment_expression "*(long *)(param_2 + 0x90) = lVar3" (pointer_expression "*(long *)(param_2 + 0x90)" * (cast_expression "(long *)(param_2 + 0x90)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x90)" ( (binary_expression "param_2 + 0x90" identifier + number_literal) )))) = identifier) ;) })) }) (else_clause "else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }" else (compound_statement "{\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }" { (expression_statement "pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);" (assignment_expression "pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Unrecognized XCOFF type %d\n",5)" identifier (argument_list "(0,"Unrecognized XCOFF type %d\n",5)" ( number_literal , (string_literal ""Unrecognized XCOFF type %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf(stderr,pcVar5,(ulong)uVar1);" (call_expression "fprintf(stderr,pcVar5,(ulong)uVar1)" identifier (argument_list "(stderr,pcVar5,(ulong)uVar1)" ( identifier , identifier , (cast_expression "(ulong)uVar1" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "lVar3 = 0;" (assignment_expression "lVar3 = 0" identifier = number_literal) ;) }))) }) (else_clause "else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }" else (compound_statement "{\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }" { (expression_statement "plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);" (assignment_expression "plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88)" identifier = (cast_expression "(long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_001107d0(param_2 + 0x80,param_2 + 0x88)" identifier (argument_list "(param_2 + 0x80,param_2 + 0x88)" ( (binary_expression "param_2 + 0x80" identifier + number_literal) , (binary_expression "param_2 + 0x88" identifier + number_literal) ))))) ;) (if_statement "if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }" if (parenthesized_expression "(plVar2 == (long *)0x0)" ( (binary_expression "plVar2 == (long *)0x0" identifier == (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      lVar3 = 0;\n    }" { (expression_statement "lVar3 = 0;" (assignment_expression "lVar3 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }" else (compound_statement "{\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }" { (expression_statement "lVar3 = *plVar2;" (assignment_expression "lVar3 = *plVar2" identifier = (pointer_expression "*plVar2" * identifier)) ;) (if_statement "if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }" if (parenthesized_expression "(lVar3 == 0)" ( (binary_expression "lVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }" { (expression_statement "lVar3 = FUN_0010f450(param_1,plVar2);" (assignment_expression "lVar3 = FUN_0010f450(param_1,plVar2)" identifier = (call_expression "FUN_0010f450(param_1,plVar2)" identifier (argument_list "(param_1,plVar2)" ( identifier , identifier )))) ;) (return_statement "return lVar3;" return identifier ;) })) }))) }))) (return_statement "return lVar3;" return identifier ;) })))
(translation_unit (function_definition (sized_type_specifier long) (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT)) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (cast_expression ( (type_descriptor TYPE) ) (unary_expression - IDENT))) * LIT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (switch_statement switch (parenthesized_expression ( (unary_expression - IDENT) )) (compound_statement { (case_statement default : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;)) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (return_statement return IDENT ;) })) }))) }))) (return_statement return IDENT ;) })))
(function_definition "long FUN_00110930(undefined8 param_1,long param_2,int *param_3)\n\n{\n  uint uVar1;\n  long *plVar2;\n  long lVar3;\n  undefined8 uVar4;\n  char *pcVar5;\n  \n  if ((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }\n  else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }\n  return lVar3;\n}" (sized_type_specifier "long" (long "long")) (function_declarator "FUN_00110930(undefined8 param_1,long param_2,int *param_3)" (identifier "FUN_00110930") (parameter_list "(undefined8 param_1,long param_2,int *param_3)" (( "(") (parameter_declaration "undefined8 param_1" (type_identifier "undefined8") (identifier "param_1")) (, ",") (parameter_declaration "long param_2" (sized_type_specifier "long" (long "long")) (identifier "param_2")) (, ",") (parameter_declaration "int *param_3" (primitive_type "int") (pointer_declarator "*param_3" (* "*") (identifier "param_3"))) () ")"))) (compound_statement "{\n  uint uVar1;\n  long *plVar2;\n  long lVar3;\n  undefined8 uVar4;\n  char *pcVar5;\n  \n  if ((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }\n  else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }\n  return lVar3;\n}" ({ "{") (declaration "uint uVar1;" (type_identifier "uint") (identifier "uVar1") (; ";")) (declaration "long *plVar2;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar2" (* "*") (identifier "plVar2")) (; ";")) (declaration "long lVar3;" (sized_type_specifier "long" (long "long")) (identifier "lVar3") (; ";")) (declaration "undefined8 uVar4;" (type_identifier "undefined8") (identifier "uVar4") (; ";")) (declaration "char *pcVar5;" (primitive_type "char") (pointer_declarator "*pcVar5" (* "*") (identifier "pcVar5")) (; ";")) (if_statement "if ((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)) {\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }\n  else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }" (if "if") (parenthesized_expression "((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0))" (( "(") (binary_expression "(*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)" (parenthesized_expression "(*param_3 == 0)" (( "(") (binary_expression "*param_3 == 0" (pointer_expression "*param_3" (* "*") (identifier "param_3")) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(uVar1 = param_3[1], (int)uVar1 < 0)" (( "(") (comma_expression "uVar1 = param_3[1], (int)uVar1 < 0" (assignment_expression "uVar1 = param_3[1]" (identifier "uVar1") (= "=") (subscript_expression "param_3[1]" (identifier "param_3") ([ "[") (number_literal "1") (] "]"))) (, ",") (binary_expression "(int)uVar1 < 0" (cast_expression "(int)uVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar1")) (< "<") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n    if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }\n  }" ({ "{") (if_statement "if (uVar1 + 0x22 < 0x22) {\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }\n    else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }" (if "if") (parenthesized_expression "(uVar1 + 0x22 < 0x22)" (( "(") (binary_expression "uVar1 + 0x22 < 0x22" (binary_expression "uVar1 + 0x22" (identifier "uVar1") (+ "+") (number_literal "0x22")) (< "<") (number_literal "0x22")) () ")")) (compound_statement "{\n      param_2 = param_2 + (long)(int)-uVar1 * 8;\n      lVar3 = *(long *)(param_2 + 0x90);\n      if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }\n    }" ({ "{") (expression_statement "param_2 = param_2 + (long)(int)-uVar1 * 8;" (assignment_expression "param_2 = param_2 + (long)(int)-uVar1 * 8" (identifier "param_2") (= "=") (binary_expression "param_2 + (long)(int)-uVar1 * 8" (identifier "param_2") (+ "+") (binary_expression "(long)(int)-uVar1 * 8" (cast_expression "(long)(int)-uVar1" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (cast_expression "(int)-uVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (unary_expression "-uVar1" (- "-") (identifier "uVar1")))) (* "*") (number_literal "8")))) (; ";")) (expression_statement "lVar3 = *(long *)(param_2 + 0x90);" (assignment_expression "lVar3 = *(long *)(param_2 + 0x90)" (identifier "lVar3") (= "=") (pointer_expression "*(long *)(param_2 + 0x90)" (* "*") (cast_expression "(long *)(param_2 + 0x90)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x90)" (( "(") (binary_expression "param_2 + 0x90" (identifier "param_2") (+ "+") (number_literal "0x90")) () ")"))))) (; ";")) (if_statement "if (lVar3 == 0) {\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }" (if "if") (parenthesized_expression "(lVar3 == 0)" (( "(") (binary_expression "lVar3 == 0" (identifier "lVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }\n        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);\n        *(long *)(param_2 + 0x90) = lVar3;\n      }" ({ "{") (switch_statement "switch(-uVar1) {\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }" (switch "switch") (parenthesized_expression "(-uVar1)" (( "(") (unary_expression "-uVar1" (- "-") (identifier "uVar1")) () ")")) (compound_statement "{\n        default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;\n        case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;\n        case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;\n        case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;\n        case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;\n        case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;\n        case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;\n        case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;\n        case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;\n        case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;\n        case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;\n        case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;\n        case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;\n        case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;\n        case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;\n        case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;\n        case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;\n        case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;\n        case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;\n        case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;\n        case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;\n        case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;\n        case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;\n        case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;\n        case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;\n        case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;\n        case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;\n        case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;\n        case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;\n        case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;\n        case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;\n        case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;\n        case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;\n        case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";\n        }" ({ "{") (case_statement "default:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "int";\n          break;" (default "default") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,0)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,4,0)" (identifier "FUN_0010f4a0") (argument_list "(param_1,4,0)" (( "(") (identifier "param_1") (, ",") (number_literal "4") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar5 = "int";" (assignment_expression "pcVar5 = "int"" (identifier "pcVar5") (= "=") (string_literal ""int"" (" """) (string_content "int") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 2:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "char";\n          break;" (case "case") (number_literal "2") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,0)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,1,0)" (identifier "FUN_0010f4a0") (argument_list "(param_1,1,0)" (( "(") (identifier "param_1") (, ",") (number_literal "1") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar5 = "char";" (assignment_expression "pcVar5 = "char"" (identifier "pcVar5") (= "=") (string_literal ""char"" (" """) (string_content "char") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 3:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "short";\n          break;" (case "case") (number_literal "3") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,2,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,2,0)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,2,0)" (identifier "FUN_0010f4a0") (argument_list "(param_1,2,0)" (( "(") (identifier "param_1") (, ",") (number_literal "2") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar5 = "short";" (assignment_expression "pcVar5 = "short"" (identifier "pcVar5") (= "=") (string_literal ""short"" (" """) (string_content "short") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 4:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "long";\n          break;" (case "case") (number_literal "4") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,0)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,4,0)" (identifier "FUN_0010f4a0") (argument_list "(param_1,4,0)" (( "(") (identifier "param_1") (, ",") (number_literal "4") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar5 = "long";" (assignment_expression "pcVar5 = "long"" (identifier "pcVar5") (= "=") (string_literal ""long"" (" """) (string_content "long") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 5:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "unsigned char";\n          break;" (case "case") (number_literal "5") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,1)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,1,1)" (identifier "FUN_0010f4a0") (argument_list "(param_1,1,1)" (( "(") (identifier "param_1") (, ",") (number_literal "1") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "pcVar5 = "unsigned char";" (assignment_expression "pcVar5 = "unsigned char"" (identifier "pcVar5") (= "=") (string_literal ""unsigned char"" (" """) (string_content "unsigned char") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 6:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "signed char";\n          break;" (case "case") (number_literal "6") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,0)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,1,0)" (identifier "FUN_0010f4a0") (argument_list "(param_1,1,0)" (( "(") (identifier "param_1") (, ",") (number_literal "1") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar5 = "signed char";" (assignment_expression "pcVar5 = "signed char"" (identifier "pcVar5") (= "=") (string_literal ""signed char"" (" """) (string_content "signed char") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 7:\n          uVar4 = FUN_0010f4a0(param_1,2,1);\n          pcVar5 = "unsigned short";\n          break;" (case "case") (number_literal "7") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,2,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,2,1)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,2,1)" (identifier "FUN_0010f4a0") (argument_list "(param_1,2,1)" (( "(") (identifier "param_1") (, ",") (number_literal "2") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "pcVar5 = "unsigned short";" (assignment_expression "pcVar5 = "unsigned short"" (identifier "pcVar5") (= "=") (string_literal ""unsigned short"" (" """) (string_content "unsigned short") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 8:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned int";\n          break;" (case "case") (number_literal "8") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,1)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,4,1)" (identifier "FUN_0010f4a0") (argument_list "(param_1,4,1)" (( "(") (identifier "param_1") (, ",") (number_literal "4") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "pcVar5 = "unsigned int";" (assignment_expression "pcVar5 = "unsigned int"" (identifier "pcVar5") (= "=") (string_literal ""unsigned int"" (" """) (string_content "unsigned int") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 9:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned";\n          break;" (case "case") (number_literal "9") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,1)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,4,1)" (identifier "FUN_0010f4a0") (argument_list "(param_1,4,1)" (( "(") (identifier "param_1") (, ",") (number_literal "4") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "pcVar5 = "unsigned";" (assignment_expression "pcVar5 = "unsigned"" (identifier "pcVar5") (= "=") (string_literal ""unsigned"" (" """) (string_content "unsigned") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 10:\n          uVar4 = FUN_0010f4a0(param_1,4,1);\n          pcVar5 = "unsigned long";\n          break;" (case "case") (number_literal "10") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,1)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,4,1)" (identifier "FUN_0010f4a0") (argument_list "(param_1,4,1)" (( "(") (identifier "param_1") (, ",") (number_literal "4") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "pcVar5 = "unsigned long";" (assignment_expression "pcVar5 = "unsigned long"" (identifier "pcVar5") (= "=") (string_literal ""unsigned long"" (" """) (string_content "unsigned long") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xb:\n          uVar4 = FUN_0010f490(param_1);\n          pcVar5 = "void";\n          break;" (case "case") (number_literal "0xb") (: ":") (expression_statement "uVar4 = FUN_0010f490(param_1);" (assignment_expression "uVar4 = FUN_0010f490(param_1)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f490(param_1)" (identifier "FUN_0010f490") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (expression_statement "pcVar5 = "void";" (assignment_expression "pcVar5 = "void"" (identifier "pcVar5") (= "=") (string_literal ""void"" (" """) (string_content "void") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xc:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "float";\n          break;" (case "case") (number_literal "0xc") (: ":") (expression_statement "uVar4 = FUN_0010f4c0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,4)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4c0(param_1,4)" (identifier "FUN_0010f4c0") (argument_list "(param_1,4)" (( "(") (identifier "param_1") (, ",") (number_literal "4") () ")")))) (; ";")) (expression_statement "pcVar5 = "float";" (assignment_expression "pcVar5 = "float"" (identifier "pcVar5") (= "=") (string_literal ""float"" (" """) (string_content "float") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xd:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "double";\n          break;" (case "case") (number_literal "0xd") (: ":") (expression_statement "uVar4 = FUN_0010f4c0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,8)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4c0(param_1,8)" (identifier "FUN_0010f4c0") (argument_list "(param_1,8)" (( "(") (identifier "param_1") (, ",") (number_literal "8") () ")")))) (; ";")) (expression_statement "pcVar5 = "double";" (assignment_expression "pcVar5 = "double"" (identifier "pcVar5") (= "=") (string_literal ""double"" (" """) (string_content "double") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xe:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "long double";\n          break;" (case "case") (number_literal "0xe") (: ":") (expression_statement "uVar4 = FUN_0010f4c0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,8)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4c0(param_1,8)" (identifier "FUN_0010f4c0") (argument_list "(param_1,8)" (( "(") (identifier "param_1") (, ",") (number_literal "8") () ")")))) (; ";")) (expression_statement "pcVar5 = "long double";" (assignment_expression "pcVar5 = "long double"" (identifier "pcVar5") (= "=") (string_literal ""long double"" (" """) (string_content "long double") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xf:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer";\n          break;" (case "case") (number_literal "0xf") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,0)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,4,0)" (identifier "FUN_0010f4a0") (argument_list "(param_1,4,0)" (( "(") (identifier "param_1") (, ",") (number_literal "4") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar5 = "integer";" (assignment_expression "pcVar5 = "integer"" (identifier "pcVar5") (= "=") (string_literal ""integer"" (" """) (string_content "integer") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x10:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "boolean";\n          break;" (case "case") (number_literal "0x10") (: ":") (expression_statement "uVar4 = FUN_0010f4d0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,4)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4d0(param_1,4)" (identifier "FUN_0010f4d0") (argument_list "(param_1,4)" (( "(") (identifier "param_1") (, ",") (number_literal "4") () ")")))) (; ";")) (expression_statement "pcVar5 = "boolean";" (assignment_expression "pcVar5 = "boolean"" (identifier "pcVar5") (= "=") (string_literal ""boolean"" (" """) (string_content "boolean") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x11:\n          uVar4 = FUN_0010f4c0(param_1,4);\n          pcVar5 = "short real";\n          break;" (case "case") (number_literal "0x11") (: ":") (expression_statement "uVar4 = FUN_0010f4c0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,4)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4c0(param_1,4)" (identifier "FUN_0010f4c0") (argument_list "(param_1,4)" (( "(") (identifier "param_1") (, ",") (number_literal "4") () ")")))) (; ";")) (expression_statement "pcVar5 = "short real";" (assignment_expression "pcVar5 = "short real"" (identifier "pcVar5") (= "=") (string_literal ""short real"" (" """) (string_content "short real") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x12:\n          uVar4 = FUN_0010f4c0(param_1,8);\n          pcVar5 = "real";\n          break;" (case "case") (number_literal "0x12") (: ":") (expression_statement "uVar4 = FUN_0010f4c0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4c0(param_1,8)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4c0(param_1,8)" (identifier "FUN_0010f4c0") (argument_list "(param_1,8)" (( "(") (identifier "param_1") (, ",") (number_literal "8") () ")")))) (; ";")) (expression_statement "pcVar5 = "real";" (assignment_expression "pcVar5 = "real"" (identifier "pcVar5") (= "=") (string_literal ""real"" (" """) (string_content "real") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x13:\n          pcVar5 = "stringptr";\n          uVar4 = 0;\n          break;" (case "case") (number_literal "0x13") (: ":") (expression_statement "pcVar5 = "stringptr";" (assignment_expression "pcVar5 = "stringptr"" (identifier "pcVar5") (= "=") (string_literal ""stringptr"" (" """) (string_content "stringptr") (" """))) (; ";")) (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" (identifier "uVar4") (= "=") (number_literal "0")) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x14:\n          uVar4 = FUN_0010f4a0(param_1,1,1);\n          pcVar5 = "character";\n          break;" (case "case") (number_literal "0x14") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,1)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,1,1)" (identifier "FUN_0010f4a0") (argument_list "(param_1,1,1)" (( "(") (identifier "param_1") (, ",") (number_literal "1") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "pcVar5 = "character";" (assignment_expression "pcVar5 = "character"" (identifier "pcVar5") (= "=") (string_literal ""character"" (" """) (string_content "character") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x15:\n          uVar4 = FUN_0010f4d0(param_1,1);\n          pcVar5 = "logical*1";\n          break;" (case "case") (number_literal "0x15") (: ":") (expression_statement "uVar4 = FUN_0010f4d0(param_1,1);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,1)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4d0(param_1,1)" (identifier "FUN_0010f4d0") (argument_list "(param_1,1)" (( "(") (identifier "param_1") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "pcVar5 = "logical*1";" (assignment_expression "pcVar5 = "logical*1"" (identifier "pcVar5") (= "=") (string_literal ""logical*1"" (" """) (string_content "logical*1") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x16:\n          uVar4 = FUN_0010f4d0(param_1,2);\n          pcVar5 = "logical*2";\n          break;" (case "case") (number_literal "0x16") (: ":") (expression_statement "uVar4 = FUN_0010f4d0(param_1,2);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,2)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4d0(param_1,2)" (identifier "FUN_0010f4d0") (argument_list "(param_1,2)" (( "(") (identifier "param_1") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "pcVar5 = "logical*2";" (assignment_expression "pcVar5 = "logical*2"" (identifier "pcVar5") (= "=") (string_literal ""logical*2"" (" """) (string_content "logical*2") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x17:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical*4";\n          break;" (case "case") (number_literal "0x17") (: ":") (expression_statement "uVar4 = FUN_0010f4d0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,4)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4d0(param_1,4)" (identifier "FUN_0010f4d0") (argument_list "(param_1,4)" (( "(") (identifier "param_1") (, ",") (number_literal "4") () ")")))) (; ";")) (expression_statement "pcVar5 = "logical*4";" (assignment_expression "pcVar5 = "logical*4"" (identifier "pcVar5") (= "=") (string_literal ""logical*4"" (" """) (string_content "logical*4") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x18:\n          uVar4 = FUN_0010f4d0(param_1,4);\n          pcVar5 = "logical";\n          break;" (case "case") (number_literal "0x18") (: ":") (expression_statement "uVar4 = FUN_0010f4d0(param_1,4);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,4)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4d0(param_1,4)" (identifier "FUN_0010f4d0") (argument_list "(param_1,4)" (( "(") (identifier "param_1") (, ",") (number_literal "4") () ")")))) (; ";")) (expression_statement "pcVar5 = "logical";" (assignment_expression "pcVar5 = "logical"" (identifier "pcVar5") (= "=") (string_literal ""logical"" (" """) (string_content "logical") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x19:\n          uVar4 = FUN_0010f4e0(param_1,8);\n          pcVar5 = "complex";\n          break;" (case "case") (number_literal "0x19") (: ":") (expression_statement "uVar4 = FUN_0010f4e0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4e0(param_1,8)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4e0(param_1,8)" (identifier "FUN_0010f4e0") (argument_list "(param_1,8)" (( "(") (identifier "param_1") (, ",") (number_literal "8") () ")")))) (; ";")) (expression_statement "pcVar5 = "complex";" (assignment_expression "pcVar5 = "complex"" (identifier "pcVar5") (= "=") (string_literal ""complex"" (" """) (string_content "complex") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x1a:\n          uVar4 = FUN_0010f4e0(param_1,0x10);\n          pcVar5 = "double complex";\n          break;" (case "case") (number_literal "0x1a") (: ":") (expression_statement "uVar4 = FUN_0010f4e0(param_1,0x10);" (assignment_expression "uVar4 = FUN_0010f4e0(param_1,0x10)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4e0(param_1,0x10)" (identifier "FUN_0010f4e0") (argument_list "(param_1,0x10)" (( "(") (identifier "param_1") (, ",") (number_literal "0x10") () ")")))) (; ";")) (expression_statement "pcVar5 = "double complex";" (assignment_expression "pcVar5 = "double complex"" (identifier "pcVar5") (= "=") (string_literal ""double complex"" (" """) (string_content "double complex") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x1b:\n          uVar4 = FUN_0010f4a0(param_1,1,0);\n          pcVar5 = "integer*1";\n          break;" (case "case") (number_literal "0x1b") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,1,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,1,0)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,1,0)" (identifier "FUN_0010f4a0") (argument_list "(param_1,1,0)" (( "(") (identifier "param_1") (, ",") (number_literal "1") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar5 = "integer*1";" (assignment_expression "pcVar5 = "integer*1"" (identifier "pcVar5") (= "=") (string_literal ""integer*1"" (" """) (string_content "integer*1") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x1c:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "integer*2";\n          break;" (case "case") (number_literal "0x1c") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,2,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,2,0)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,2,0)" (identifier "FUN_0010f4a0") (argument_list "(param_1,2,0)" (( "(") (identifier "param_1") (, ",") (number_literal "2") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar5 = "integer*2";" (assignment_expression "pcVar5 = "integer*2"" (identifier "pcVar5") (= "=") (string_literal ""integer*2"" (" """) (string_content "integer*2") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x1d:\n          uVar4 = FUN_0010f4a0(param_1,4,0);\n          pcVar5 = "integer*4";\n          break;" (case "case") (number_literal "0x1d") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,4,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,4,0)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,4,0)" (identifier "FUN_0010f4a0") (argument_list "(param_1,4,0)" (( "(") (identifier "param_1") (, ",") (number_literal "4") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar5 = "integer*4";" (assignment_expression "pcVar5 = "integer*4"" (identifier "pcVar5") (= "=") (string_literal ""integer*4"" (" """) (string_content "integer*4") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x1e:\n          uVar4 = FUN_0010f4a0(param_1,2,0);\n          pcVar5 = "wchar";\n          break;" (case "case") (number_literal "0x1e") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,2,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,2,0)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,2,0)" (identifier "FUN_0010f4a0") (argument_list "(param_1,2,0)" (( "(") (identifier "param_1") (, ",") (number_literal "2") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar5 = "wchar";" (assignment_expression "pcVar5 = "wchar"" (identifier "pcVar5") (= "=") (string_literal ""wchar"" (" """) (string_content "wchar") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x1f:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "long long";\n          break;" (case "case") (number_literal "0x1f") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,8,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,8,0)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,8,0)" (identifier "FUN_0010f4a0") (argument_list "(param_1,8,0)" (( "(") (identifier "param_1") (, ",") (number_literal "8") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar5 = "long long";" (assignment_expression "pcVar5 = "long long"" (identifier "pcVar5") (= "=") (string_literal ""long long"" (" """) (string_content "long long") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x20:\n          uVar4 = FUN_0010f4a0(param_1,8,1);\n          pcVar5 = "unsigned long long";\n          break;" (case "case") (number_literal "0x20") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,8,1);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,8,1)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,8,1)" (identifier "FUN_0010f4a0") (argument_list "(param_1,8,1)" (( "(") (identifier "param_1") (, ",") (number_literal "8") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "pcVar5 = "unsigned long long";" (assignment_expression "pcVar5 = "unsigned long long"" (identifier "pcVar5") (= "=") (string_literal ""unsigned long long"" (" """) (string_content "unsigned long long") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x21:\n          uVar4 = FUN_0010f4d0(param_1,8);\n          pcVar5 = "logical*8";\n          break;" (case "case") (number_literal "0x21") (: ":") (expression_statement "uVar4 = FUN_0010f4d0(param_1,8);" (assignment_expression "uVar4 = FUN_0010f4d0(param_1,8)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4d0(param_1,8)" (identifier "FUN_0010f4d0") (argument_list "(param_1,8)" (( "(") (identifier "param_1") (, ",") (number_literal "8") () ")")))) (; ";")) (expression_statement "pcVar5 = "logical*8";" (assignment_expression "pcVar5 = "logical*8"" (identifier "pcVar5") (= "=") (string_literal ""logical*8"" (" """) (string_content "logical*8") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x22:\n          uVar4 = FUN_0010f4a0(param_1,8,0);\n          pcVar5 = "integer*8";" (case "case") (number_literal "0x22") (: ":") (expression_statement "uVar4 = FUN_0010f4a0(param_1,8,0);" (assignment_expression "uVar4 = FUN_0010f4a0(param_1,8,0)" (identifier "uVar4") (= "=") (call_expression "FUN_0010f4a0(param_1,8,0)" (identifier "FUN_0010f4a0") (argument_list "(param_1,8,0)" (( "(") (identifier "param_1") (, ",") (number_literal "8") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar5 = "integer*8";" (assignment_expression "pcVar5 = "integer*8"" (identifier "pcVar5") (= "=") (string_literal ""integer*8"" (" """) (string_content "integer*8") (" """))) (; ";"))) (} "}"))) (expression_statement "lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);" (assignment_expression "lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4)" (identifier "lVar3") (= "=") (call_expression "FUN_0010fb10(param_1,pcVar5,uVar4)" (identifier "FUN_0010fb10") (argument_list "(param_1,pcVar5,uVar4)" (( "(") (identifier "param_1") (, ",") (identifier "pcVar5") (, ",") (identifier "uVar4") () ")")))) (; ";")) (expression_statement "*(long *)(param_2 + 0x90) = lVar3;" (assignment_expression "*(long *)(param_2 + 0x90) = lVar3" (pointer_expression "*(long *)(param_2 + 0x90)" (* "*") (cast_expression "(long *)(param_2 + 0x90)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x90)" (( "(") (binary_expression "param_2 + 0x90" (identifier "param_2") (+ "+") (number_literal "0x90")) () ")")))) (= "=") (identifier "lVar3")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }" (else "else") (compound_statement "{\n      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);\n      fprintf(stderr,pcVar5,(ulong)uVar1);\n      lVar3 = 0;\n    }" ({ "{") (expression_statement "pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);" (assignment_expression "pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5)" (identifier "pcVar5") (= "=") (cast_expression "(char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"Unrecognized XCOFF type %d\n",5)" (identifier "dcgettext") (argument_list "(0,"Unrecognized XCOFF type %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Unrecognized XCOFF type %d\n"" (" """) (string_content "Unrecognized XCOFF type %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "fprintf(stderr,pcVar5,(ulong)uVar1);" (call_expression "fprintf(stderr,pcVar5,(ulong)uVar1)" (identifier "fprintf") (argument_list "(stderr,pcVar5,(ulong)uVar1)" (( "(") (identifier "stderr") (, ",") (identifier "pcVar5") (, ",") (cast_expression "(ulong)uVar1" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar1")) () ")"))) (; ";")) (expression_statement "lVar3 = 0;" (assignment_expression "lVar3 = 0" (identifier "lVar3") (= "=") (number_literal "0")) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }" (else "else") (compound_statement "{\n    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);\n    if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }\n  }" ({ "{") (expression_statement "plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);" (assignment_expression "plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88)" (identifier "plVar2") (= "=") (cast_expression "(long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_001107d0(param_2 + 0x80,param_2 + 0x88)" (identifier "FUN_001107d0") (argument_list "(param_2 + 0x80,param_2 + 0x88)" (( "(") (binary_expression "param_2 + 0x80" (identifier "param_2") (+ "+") (number_literal "0x80")) (, ",") (binary_expression "param_2 + 0x88" (identifier "param_2") (+ "+") (number_literal "0x88")) () ")"))))) (; ";")) (if_statement "if (plVar2 == (long *)0x0) {\n      lVar3 = 0;\n    }\n    else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }" (if "if") (parenthesized_expression "(plVar2 == (long *)0x0)" (( "(") (binary_expression "plVar2 == (long *)0x0" (identifier "plVar2") (== "==") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      lVar3 = 0;\n    }" ({ "{") (expression_statement "lVar3 = 0;" (assignment_expression "lVar3 = 0" (identifier "lVar3") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }" (else "else") (compound_statement "{\n      lVar3 = *plVar2;\n      if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }\n    }" ({ "{") (expression_statement "lVar3 = *plVar2;" (assignment_expression "lVar3 = *plVar2" (identifier "lVar3") (= "=") (pointer_expression "*plVar2" (* "*") (identifier "plVar2"))) (; ";")) (if_statement "if (lVar3 == 0) {\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }" (if "if") (parenthesized_expression "(lVar3 == 0)" (( "(") (binary_expression "lVar3 == 0" (identifier "lVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        lVar3 = FUN_0010f450(param_1,plVar2);\n        return lVar3;\n      }" ({ "{") (expression_statement "lVar3 = FUN_0010f450(param_1,plVar2);" (assignment_expression "lVar3 = FUN_0010f450(param_1,plVar2)" (identifier "lVar3") (= "=") (call_expression "FUN_0010f450(param_1,plVar2)" (identifier "FUN_0010f450") (argument_list "(param_1,plVar2)" (( "(") (identifier "param_1") (, ",") (identifier "plVar2") () ")")))) (; ";")) (return_statement "return lVar3;" (return "return") (identifier "lVar3") (; ";")) (} "}"))) (} "}")))) (} "}")))) (return_statement "return lVar3;" (return "return") (identifier "lVar3") (; ";")) (} "}")))

type_1 function_1(void *dhandle,type_2 *info,int *typenums)

{
  type_3 var_1;
  type_4 *var_12;
  type_4 var_2;
  int iVar3;
  char *pcVar4;
  
  if ((*typenums == 0) && (var_1 = typenums[1], (int)var_1 < 0)) {
    if (var_1 + 0x22 < 0x22) {
      iVar3 = -var_1;
      var_2 = info->xcoff_types[iVar3];
      if (var_2 == (type_4)0x0) {
        switch(iVar3) {
        default:
          var_2 = var_3(dhandle,4,0);
          pcVar4 = "int";
          break;
        case 2:
          var_2 = var_3(dhandle,1,0);
          pcVar4 = "char";
          break;
        case 3:
          var_2 = var_3(dhandle,2,0);
          pcVar4 = "short";
          break;
        case 4:
          var_2 = var_3(dhandle,4,0);
          pcVar4 = "long";
          break;
        case 5:
          var_2 = var_3(dhandle,1,1);
          pcVar4 = "unsigned char";
          break;
        case 6:
          var_2 = var_3(dhandle,1,0);
          pcVar4 = "signed char";
          break;
        case 7:
          var_2 = var_3(dhandle,2,1);
          pcVar4 = "unsigned short";
          break;
        case 8:
          var_2 = var_3(dhandle,4,1);
          pcVar4 = "unsigned int";
          break;
        case 9:
          var_2 = var_3(dhandle,4,1);
          pcVar4 = "unsigned";
          break;
        case 10:
          var_2 = var_3(dhandle,4,1);
          pcVar4 = "unsigned long";
          break;
        case 0xb:
          var_2 = var_4(dhandle);
          pcVar4 = "void";
          break;
        case 0xc:
          var_2 = var_5(dhandle,4);
          pcVar4 = "float";
          break;
        case 0xd:
          var_2 = var_5(dhandle,8);
          pcVar4 = "double";
          break;
        case 0xe:
          var_2 = var_5(dhandle,8);
          pcVar4 = "long double";
          break;
        case 0xf:
          var_2 = var_3(dhandle,4,0);
          pcVar4 = "integer";
          break;
        case 0x10:
          var_2 = var_6(dhandle,4);
          pcVar4 = "boolean";
          break;
        case 0x11:
          var_2 = var_5(dhandle,4);
          pcVar4 = "short real";
          break;
        case 0x12:
          var_2 = var_5(dhandle,8);
          pcVar4 = "real";
          break;
        case 0x13:
          pcVar4 = "stringptr";
          var_2 = (type_4)0x0;
          break;
        case 0x14:
          var_2 = var_3(dhandle,1,1);
          pcVar4 = "character";
          break;
        case 0x15:
          var_2 = var_6(dhandle,1);
          pcVar4 = "logical*1";
          break;
        case 0x16:
          var_2 = var_6(dhandle,2);
          pcVar4 = "logical*2";
          break;
        case 0x17:
          var_2 = var_6(dhandle,4);
          pcVar4 = "logical*4";
          break;
        case 0x18:
          var_2 = var_6(dhandle,4);
          pcVar4 = "logical";
          break;
        case 0x19:
          var_2 = var_7(dhandle,8);
          pcVar4 = "complex";
          break;
        case 0x1a:
          var_2 = var_7(dhandle,0x10);
          pcVar4 = "double complex";
          break;
        case 0x1b:
          var_2 = var_3(dhandle,1,0);
          pcVar4 = "integer*1";
          break;
        case 0x1c:
          var_2 = var_3(dhandle,2,0);
          pcVar4 = "integer*2";
          break;
        case 0x1d:
          var_2 = var_3(dhandle,4,0);
          pcVar4 = "integer*4";
          break;
        case 0x1e:
          var_2 = var_3(dhandle,2,0);
          pcVar4 = "wchar";
          break;
        case 0x1f:
          var_2 = var_3(dhandle,8,0);
          pcVar4 = "long long";
          break;
        case 0x20:
          var_2 = var_3(dhandle,8,1);
          pcVar4 = "unsigned long long";
          break;
        case 0x21:
          var_2 = var_6(dhandle,8);
          pcVar4 = "logical*8";
          break;
        case 0x22:
          var_2 = var_3(dhandle,8,0);
          pcVar4 = "integer*8";
        }
        var_2 = var_8(dhandle,pcVar4,var_2);
        info->xcoff_types[iVar3] = var_2;
      }
    }
    else {
      pcVar4 = (char *)var_9(0,"Unrecognized XCOFF type %d\n",5);
      var_10(stderr,pcVar4,(type_5)var_1);
      var_2 = (type_4)0x0;
    }
  }
  else {
    var_12 = var_11((type_2 *)&info->files,(int *)&info->file_types,
                          (type_2 *)typenums);
    if (var_12 == (type_4 *)0x0) {
      var_2 = (type_4)0x0;
    }
    else {
      var_2 = *var_12;
      if (var_2 == (type_4)0x0) {
        var_2 = var_13(dhandle,var_12,(char *)0x0);
        return var_2;
      }
    }
  }
  return var_2;
}


(translation_unit (function_definition type: (sized_type_specifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (sized_type_specifier) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (unary_expression argument: (identifier)))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (switch_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) body: (compound_statement (case_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (return_statement (identifier)))))))))) (return_statement (identifier)))))

long MASKED(undefined8 param_1,long param_2,int *param_3)

{
  uint uVar1;
  long *plVar2;
  long lVar3;
  undefined8 uVar4;
  char *pcVar5;
  
  if ((*param_3 == 0) && (uVar1 = param_3[1], (int)uVar1 < 0)) {
    if (uVar1 + 0x22 < 0x22) {
      param_2 = param_2 + (long)(int)-uVar1 * 8;
      lVar3 = *(long *)(param_2 + 0x90);
      if (lVar3 == 0) {
        switch(-uVar1) {
        default:
          uVar4 = FUN_0010f4a0(param_1,4,0);
          pcVar5 = "int";
          break;
        case 2:
          uVar4 = FUN_0010f4a0(param_1,1,0);
          pcVar5 = "char";
          break;
        case 3:
          uVar4 = FUN_0010f4a0(param_1,2,0);
          pcVar5 = "short";
          break;
        case 4:
          uVar4 = FUN_0010f4a0(param_1,4,0);
          pcVar5 = "long";
          break;
        case 5:
          uVar4 = FUN_0010f4a0(param_1,1,1);
          pcVar5 = "unsigned char";
          break;
        case 6:
          uVar4 = FUN_0010f4a0(param_1,1,0);
          pcVar5 = "signed char";
          break;
        case 7:
          uVar4 = FUN_0010f4a0(param_1,2,1);
          pcVar5 = "unsigned short";
          break;
        case 8:
          uVar4 = FUN_0010f4a0(param_1,4,1);
          pcVar5 = "unsigned int";
          break;
        case 9:
          uVar4 = FUN_0010f4a0(param_1,4,1);
          pcVar5 = "unsigned";
          break;
        case 10:
          uVar4 = FUN_0010f4a0(param_1,4,1);
          pcVar5 = "unsigned long";
          break;
        case 0xb:
          uVar4 = FUN_0010f490(param_1);
          pcVar5 = "void";
          break;
        case 0xc:
          uVar4 = FUN_0010f4c0(param_1,4);
          pcVar5 = "float";
          break;
        case 0xd:
          uVar4 = FUN_0010f4c0(param_1,8);
          pcVar5 = "double";
          break;
        case 0xe:
          uVar4 = FUN_0010f4c0(param_1,8);
          pcVar5 = "long double";
          break;
        case 0xf:
          uVar4 = FUN_0010f4a0(param_1,4,0);
          pcVar5 = "integer";
          break;
        case 0x10:
          uVar4 = FUN_0010f4d0(param_1,4);
          pcVar5 = "boolean";
          break;
        case 0x11:
          uVar4 = FUN_0010f4c0(param_1,4);
          pcVar5 = "short real";
          break;
        case 0x12:
          uVar4 = FUN_0010f4c0(param_1,8);
          pcVar5 = "real";
          break;
        case 0x13:
          pcVar5 = "stringptr";
          uVar4 = 0;
          break;
        case 0x14:
          uVar4 = FUN_0010f4a0(param_1,1,1);
          pcVar5 = "character";
          break;
        case 0x15:
          uVar4 = FUN_0010f4d0(param_1,1);
          pcVar5 = "logical*1";
          break;
        case 0x16:
          uVar4 = FUN_0010f4d0(param_1,2);
          pcVar5 = "logical*2";
          break;
        case 0x17:
          uVar4 = FUN_0010f4d0(param_1,4);
          pcVar5 = "logical*4";
          break;
        case 0x18:
          uVar4 = FUN_0010f4d0(param_1,4);
          pcVar5 = "logical";
          break;
        case 0x19:
          uVar4 = FUN_0010f4e0(param_1,8);
          pcVar5 = "complex";
          break;
        case 0x1a:
          uVar4 = FUN_0010f4e0(param_1,0x10);
          pcVar5 = "double complex";
          break;
        case 0x1b:
          uVar4 = FUN_0010f4a0(param_1,1,0);
          pcVar5 = "integer*1";
          break;
        case 0x1c:
          uVar4 = FUN_0010f4a0(param_1,2,0);
          pcVar5 = "integer*2";
          break;
        case 0x1d:
          uVar4 = FUN_0010f4a0(param_1,4,0);
          pcVar5 = "integer*4";
          break;
        case 0x1e:
          uVar4 = FUN_0010f4a0(param_1,2,0);
          pcVar5 = "wchar";
          break;
        case 0x1f:
          uVar4 = FUN_0010f4a0(param_1,8,0);
          pcVar5 = "long long";
          break;
        case 0x20:
          uVar4 = FUN_0010f4a0(param_1,8,1);
          pcVar5 = "unsigned long long";
          break;
        case 0x21:
          uVar4 = FUN_0010f4d0(param_1,8);
          pcVar5 = "logical*8";
          break;
        case 0x22:
          uVar4 = FUN_0010f4a0(param_1,8,0);
          pcVar5 = "integer*8";
        }
        lVar3 = FUN_0010fb10(param_1,pcVar5,uVar4);
        *(long *)(param_2 + 0x90) = lVar3;
      }
    }
    else {
      pcVar5 = (char *)dcgettext(0,"Unrecognized XCOFF type %d\n",5);
      fprintf(stderr,pcVar5,(ulong)uVar1);
      lVar3 = 0;
    }
  }
  else {
    plVar2 = (long *)FUN_001107d0(param_2 + 0x80,param_2 + 0x88);
    if (plVar2 == (long *)0x0) {
      lVar3 = 0;
    }
    else {
      lVar3 = *plVar2;
      if (lVar3 == 0) {
        lVar3 = FUN_0010f450(param_1,plVar2);
        return lVar3;
      }
    }
  }
  return lVar3;
}

