
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

bfd_boolean __regparm3 get_file_header(Filedata *filedata)

{
  size_t sVar1;
  elf_vma eVar4;
  bfd_boolean bVar2;
  bool bVar3;
  Elf32_External_Ehdr ehdr32;
  uchar local_28 [2];
  uchar local_26 [2];
  uchar local_24 [2];
  uchar local_22 [2];
  uchar local_20 [2];
  uchar local_1e [10];
  undefined4 uStack_14;
  
  uStack_14 = 0x2665e;
  sVar1 = fread(&filedata->file_header,0x10,1,(FILE *)filedata->handle);
  if (sVar1 == 1) {
    if ((filedata->file_header).e_ident[5] == '\x02') {
      byte_get = byte_get_big_endian;
      byte_put = byte_put_big_endian;
    }
    else {
      byte_get = byte_get_little_endian;
      byte_put = byte_put_little_endian;
    }
    bVar3 = (filedata->file_header).e_ident[4] == '\x02';
    is_32bit_elf = (bfd_boolean)!bVar3;
    if (bVar3) {
      sVar1 = fread(ehdr32.e_type,0x30,1,(FILE *)filedata->handle);
      if (sVar1 != 1) goto LAB_000267e0;
      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;
      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;
      eVar4 = (*byte_get)(ehdr32.e_entry,8);
      (filedata->file_header).e_entry = eVar4;
      eVar4 = (*byte_get)(ehdr32.e_shoff,8);
      (filedata->file_header).e_phoff = eVar4;
      eVar4 = (*byte_get)(ehdr32.e_ehsize,8);
      (filedata->file_header).e_shoff = eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,4);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(local_28,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(local_26,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(local_24,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(local_22,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(local_20,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(local_1e,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;
    }
    else {
      sVar1 = fread(ehdr32.e_type,0x24,1,(FILE *)filedata->handle);
      if (sVar1 != 1) goto LAB_000267e0;
      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;
      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;
      eVar4 = (*byte_get)(ehdr32.e_entry,4);
      (filedata->file_header).e_entry = eVar4;
      eVar4 = (*byte_get)(ehdr32.e_phoff,4);
      (filedata->file_header).e_phoff = eVar4;
      eVar4 = (*byte_get)(ehdr32.e_shoff,4);
      (filedata->file_header).e_shoff = eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_flags,4);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_ehsize,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_phentsize,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_phnum,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_shentsize,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_shstrndx,2);
                    /* WARNING: Store size is inaccurate */
      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;
    }
    bVar2 = 1;
    if (*(int *)((int)&(filedata->file_header).e_shoff + 4) != 0 ||
        (int)(filedata->file_header).e_shoff != 0) {
      if (is_32bit_elf == 0) {
        get_64bit_section_headers(filedata,1);
      }
      else {
        get_32bit_section_headers(filedata,1);
      }
    }
  }
  else {
LAB_000267e0:
    bVar2 = 0;
  }
  return bVar2;
}



/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

undefined4 __regparm3 FUN_00026650(int param_1)

{
  undefined2 uVar1;
  size_t sVar2;
  undefined4 uVar3;
  bool bVar4;
  undefined8 uVar5;
  undefined1 local_4c [2];
  undefined1 local_4a [2];
  undefined1 local_48 [4];
  undefined1 local_44 [4];
  undefined1 local_40 [4];
  undefined1 local_3c [4];
  undefined1 local_38 [4];
  undefined1 local_34 [2];
  undefined1 local_32 [2];
  undefined1 local_30 [2];
  undefined1 local_2e [2];
  undefined1 local_2c [2];
  undefined1 local_2a [2];
  undefined1 local_28 [2];
  undefined1 local_26 [2];
  undefined1 local_24 [2];
  undefined1 local_22 [2];
  undefined1 local_20 [2];
  undefined1 local_1e [10];
  undefined4 uStack_14;
  
  uStack_14 = 0x2665e;
  sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4));
  if (sVar2 == 1) {
    if (*(char *)(param_1 + 0x15) == '\x02') {
      DAT_000b9dd4 = FUN_00066720;
      DAT_000b9dd8 = FUN_00066cf0;
    }
    else {
      DAT_000b9dd4 = FUN_00066d70;
      DAT_000b9dd8 = FUN_00066c60;
    }
    bVar4 = *(char *)(param_1 + 0x14) == '\x02';
    DAT_000b6324 = (uint)!bVar4;
    if (bVar4) {
      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));
      if (sVar2 != 1) goto LAB_000267e0;
      uVar1 = (*DAT_000b9dd4)(local_4c,2);
      *(undefined2 *)(param_1 + 0x40) = uVar1;
      uVar1 = (*DAT_000b9dd4)(local_4a,2);
      *(undefined2 *)(param_1 + 0x42) = uVar1;
      uVar3 = (*DAT_000b9dd4)(local_48,4);
      *(undefined4 *)(param_1 + 0x38) = uVar3;
      uVar5 = (*DAT_000b9dd4)(local_44,8);
      *(undefined8 *)(param_1 + 0x20) = uVar5;
      uVar5 = (*DAT_000b9dd4)(local_3c,8);
      *(undefined8 *)(param_1 + 0x28) = uVar5;
      uVar5 = (*DAT_000b9dd4)(local_34,8);
      *(undefined8 *)(param_1 + 0x30) = uVar5;
      uVar3 = (*DAT_000b9dd4)(local_2c,4);
      *(undefined4 *)(param_1 + 0x3c) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_28,2);
      *(undefined4 *)(param_1 + 0x44) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_26,2);
      *(undefined4 *)(param_1 + 0x48) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_24,2);
      *(undefined4 *)(param_1 + 0x4c) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_22,2);
      *(undefined4 *)(param_1 + 0x50) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_20,2);
      *(undefined4 *)(param_1 + 0x54) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_1e,2);
      *(undefined4 *)(param_1 + 0x58) = uVar3;
    }
    else {
      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));
      if (sVar2 != 1) goto LAB_000267e0;
      uVar1 = (*DAT_000b9dd4)(local_4c,2);
      *(undefined2 *)(param_1 + 0x40) = uVar1;
      uVar1 = (*DAT_000b9dd4)(local_4a,2);
      *(undefined2 *)(param_1 + 0x42) = uVar1;
      uVar3 = (*DAT_000b9dd4)(local_48,4);
      *(undefined4 *)(param_1 + 0x38) = uVar3;
      uVar5 = (*DAT_000b9dd4)(local_44,4);
      *(undefined8 *)(param_1 + 0x20) = uVar5;
      uVar5 = (*DAT_000b9dd4)(local_40,4);
      *(undefined8 *)(param_1 + 0x28) = uVar5;
      uVar5 = (*DAT_000b9dd4)(local_3c,4);
      *(undefined8 *)(param_1 + 0x30) = uVar5;
      uVar3 = (*DAT_000b9dd4)(local_38,4);
      *(undefined4 *)(param_1 + 0x3c) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_34,2);
      *(undefined4 *)(param_1 + 0x44) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_32,2);
      *(undefined4 *)(param_1 + 0x48) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_30,2);
      *(undefined4 *)(param_1 + 0x4c) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_2e,2);
      *(undefined4 *)(param_1 + 0x50) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_2c,2);
      *(undefined4 *)(param_1 + 0x54) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_2a,2);
      *(undefined4 *)(param_1 + 0x58) = uVar3;
    }
    uVar3 = 1;
    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {
      if (DAT_000b6324 == 0) {
        FUN_0001dde0();
      }
      else {
        FUN_0001dad0();
      }
    }
  }
  else {
LAB_000267e0:
    uVar3 = 0;
  }
  return uVar3;
}


PUSH EBP
PUSH EDI
PUSH ESI
MOV ESI,EAX
ADD EAX,0x10
PUSH EBX
CALL 0x00013f70
ADD EBX,0x8d9a2
SUB ESP,0x4c
PUSH dword ptr [EAX + -0xc]
PUSH 0x1
PUSH 0x10
PUSH EAX
CALL 0x00013180
ADD ESP,0x10
CMP EAX,0x1
JNZ 0x000267e0
CMP byte ptr [ESI + 0x15],0x2
LEA EDI,[EBX + 0x5dd4]
JZ 0x000267f0
LEA EAX,[EBX + 0xfffb2d70]
LEA EDX,[EBX + 0xfffb2c60]
MOV dword ptr [EDI],EAX
LEA EAX,[EBX + 0x5dd8]
MOV dword ptr [EAX],EDX
MOVZX EAX,byte ptr [ESI + 0x14]
XOR EDX,EDX
CMP AL,0x2
SETNZ DL
MOV dword ptr [EBX + 0x2324],EDX
MOV EDX,dword ptr [ESI + 0x4]
JZ 0x000267c8
PUSH EDX
PUSH 0x1
PUSH 0x24
LEA EBP,[ESP + 0x1c]
PUSH EBP
CALL 0x00013180
ADD ESP,0x10
CMP EAX,0x1
JNZ 0x000267e0
SUB ESP,0x8
PUSH 0x2
PUSH EBP
CALL dword ptr [EDI]
POP ECX
POP EBP
PUSH 0x2
MOV word ptr [ESI + 0x40],AX
LEA EAX,[ESP + 0x1e]
PUSH EAX
CALL dword ptr [EDI]
MOV word ptr [ESI + 0x42],AX
POP EAX
POP EDX
PUSH 0x4
LEA EAX,[ESP + 0x20]
PUSH EAX
CALL dword ptr [EDI]
POP ECX
POP EBP
PUSH 0x4
MOV dword ptr [ESI + 0x38],EAX
LEA EAX,[ESP + 0x24]
PUSH EAX
CALL dword ptr [EDI]
MOV dword ptr [ESI + 0x20],EAX
POP EAX
MOV dword ptr [ESI + 0x24],EDX
POP EDX
PUSH 0x4
LEA EAX,[ESP + 0x28]
PUSH EAX
CALL dword ptr [EDI]
POP ECX
POP EBP
PUSH 0x4
MOV dword ptr [ESI + 0x28],EAX
MOV dword ptr [ESI + 0x2c],EDX
LEA EAX,[ESP + 0x2c]
PUSH EAX
CALL dword ptr [EDI]
MOV dword ptr [ESI + 0x30],EAX
POP EAX
MOV dword ptr [ESI + 0x34],EDX
POP EDX
PUSH 0x4
LEA EAX,[ESP + 0x30]
PUSH EAX
CALL dword ptr [EDI]
POP ECX
POP EBP
PUSH 0x2
MOV dword ptr [ESI + 0x3c],EAX
LEA EAX,[ESP + 0x34]
PUSH EAX
CALL dword ptr [EDI]
MOV dword ptr [ESI + 0x44],EAX
POP EAX
POP EDX
PUSH 0x2
LEA EAX,[ESP + 0x36]
PUSH EAX
CALL dword ptr [EDI]
POP ECX
POP EBP
PUSH 0x2
MOV dword ptr [ESI + 0x48],EAX
LEA EAX,[ESP + 0x38]
PUSH EAX
CALL dword ptr [EDI]
MOV dword ptr [ESI + 0x4c],EAX
POP EAX
POP EDX
PUSH 0x2
LEA EAX,[ESP + 0x3a]
PUSH EAX
CALL dword ptr [EDI]
POP ECX
POP EBP
PUSH 0x2
MOV dword ptr [ESI + 0x50],EAX
LEA EAX,[ESP + 0x3c]
PUSH EAX
CALL dword ptr [EDI]
MOV dword ptr [ESI + 0x54],EAX
POP EAX
POP EDX
PUSH 0x2
LEA EAX,[ESP + 0x3e]
PUSH EAX
CALL dword ptr [EDI]
MOV dword ptr [ESI + 0x58],EAX
ADD ESP,0x10
MOV EAX,dword ptr [ESI + 0x34]
OR EAX,dword ptr [ESI + 0x30]
MOV EDI,0x1
JZ 0x000267e2
MOV ECX,dword ptr [EBX + 0x2324]
MOV EDX,0x1
MOV EAX,ESI
TEST ECX,ECX
JZ 0x000268e0
CALL 0x0001dad0
JMP 0x000267e2
PUSH EDX
PUSH 0x1
PUSH 0x30
LEA EBP,[ESP + 0x1c]
PUSH EBP
CALL 0x00013180
ADD ESP,0x10
CMP EAX,0x1
JZ 0x00026810
NOP
XOR EDI,EDI
ADD ESP,0x4c
MOV EAX,EDI
POP EBX
POP ESI
POP EDI
POP EBP
RET
LEA EAX,[EBX + 0xfffb2720]
LEA EDX,[EBX + 0xfffb2cf0]
MOV dword ptr [EDI],EAX
LEA EAX,[EBX + 0x5dd8]
MOV dword ptr [EAX],EDX
JMP 0x000266a6
SUB ESP,0x8
PUSH 0x2
PUSH EBP
CALL dword ptr [EDI]
POP EBP
MOV word ptr [ESI + 0x40],AX
POP EAX
PUSH 0x2
LEA EAX,[ESP + 0x1e]
PUSH EAX
CALL dword ptr [EDI]
MOV word ptr [ESI + 0x42],AX
POP EAX
POP EDX
PUSH 0x4
LEA EAX,[ESP + 0x20]
PUSH EAX
CALL dword ptr [EDI]
POP ECX
POP EBP
PUSH 0x8
MOV dword ptr [ESI + 0x38],EAX
LEA EAX,[ESP + 0x24]
PUSH EAX
CALL dword ptr [EDI]
MOV dword ptr [ESI + 0x20],EAX
POP EAX
MOV dword ptr [ESI + 0x24],EDX
POP EDX
PUSH 0x8
LEA EAX,[ESP + 0x2c]
PUSH EAX
CALL dword ptr [EDI]
POP ECX
POP EBP
PUSH 0x8
MOV dword ptr [ESI + 0x28],EAX
MOV dword ptr [ESI + 0x2c],EDX
LEA EAX,[ESP + 0x34]
PUSH EAX
CALL dword ptr [EDI]
MOV dword ptr [ESI + 0x30],EAX
POP EAX
MOV dword ptr [ESI + 0x34],EDX
POP EDX
PUSH 0x4
LEA EAX,[ESP + 0x3c]
PUSH EAX
CALL dword ptr [EDI]
POP ECX
POP EBP
PUSH 0x2
MOV dword ptr [ESI + 0x3c],EAX
LEA EAX,[ESP + 0x40]
PUSH EAX
CALL dword ptr [EDI]
MOV dword ptr [ESI + 0x44],EAX
POP EAX
POP EDX
PUSH 0x2
LEA EAX,[ESP + 0x42]
PUSH EAX
CALL dword ptr [EDI]
POP ECX
POP EBP
PUSH 0x2
MOV dword ptr [ESI + 0x48],EAX
LEA EAX,[ESP + 0x44]
PUSH EAX
CALL dword ptr [EDI]
MOV dword ptr [ESI + 0x4c],EAX
POP EAX
POP EDX
PUSH 0x2
LEA EAX,[ESP + 0x46]
PUSH EAX
CALL dword ptr [EDI]
POP ECX
POP EBP
PUSH 0x2
MOV dword ptr [ESI + 0x50],EAX
LEA EAX,[ESP + 0x48]
PUSH EAX
CALL dword ptr [EDI]
MOV dword ptr [ESI + 0x54],EAX
POP EAX
POP EDX
PUSH 0x2
LEA EAX,[ESP + 0x4a]
PUSH EAX
CALL dword ptr [EDI]
MOV dword ptr [ESI + 0x58],EAX
ADD ESP,0x10
JMP 0x0002679c
CALL 0x0001dde0
JMP 0x000267e2
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nundefined4 __regparm3 FUN_00026650(int param_1)\n\n{\n  undefined2 uVar1;\n  size_t sVar2;\n  undefined4 uVar3;\n  bool bVar4;\n  undefined8 uVar5;\n  undefined1 local_4c [2];\n  undefined1 local_4a [2];\n  undefined1 local_48 [4];\n  undefined1 local_44 [4];\n  undefined1 local_40 [4];\n  undefined1 local_3c [4];\n  undefined1 local_38 [4];\n  undefined1 local_34 [2];\n  undefined1 local_32 [2];\n  undefined1 local_30 [2];\n  undefined1 local_2e [2];\n  undefined1 local_2c [2];\n  undefined1 local_2a [2];\n  undefined1 local_28 [2];\n  undefined1 local_26 [2];\n  undefined1 local_24 [2];\n  undefined1 local_22 [2];\n  undefined1 local_20 [2];\n  undefined1 local_1e [10];\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2665e;\n  sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4));\n  if (sVar2 == 1) {\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    uVar3 = 0;\n  }\n  return uVar3;\n}\n\n" comment (function_definition "undefined4 __regparm3 FUN_00026650(int param_1)\n\n{\n  undefined2 uVar1;\n  size_t sVar2;\n  undefined4 uVar3;\n  bool bVar4;\n  undefined8 uVar5;\n  undefined1 local_4c [2];\n  undefined1 local_4a [2];\n  undefined1 local_48 [4];\n  undefined1 local_44 [4];\n  undefined1 local_40 [4];\n  undefined1 local_3c [4];\n  undefined1 local_38 [4];\n  undefined1 local_34 [2];\n  undefined1 local_32 [2];\n  undefined1 local_30 [2];\n  undefined1 local_2e [2];\n  undefined1 local_2c [2];\n  undefined1 local_2a [2];\n  undefined1 local_28 [2];\n  undefined1 local_26 [2];\n  undefined1 local_24 [2];\n  undefined1 local_22 [2];\n  undefined1 local_20 [2];\n  undefined1 local_1e [10];\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2665e;\n  sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4));\n  if (sVar2 == 1) {\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    uVar3 = 0;\n  }\n  return uVar3;\n}" type_identifier (ERROR "__regparm3" identifier) (function_declarator "FUN_00026650(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  undefined2 uVar1;\n  size_t sVar2;\n  undefined4 uVar3;\n  bool bVar4;\n  undefined8 uVar5;\n  undefined1 local_4c [2];\n  undefined1 local_4a [2];\n  undefined1 local_48 [4];\n  undefined1 local_44 [4];\n  undefined1 local_40 [4];\n  undefined1 local_3c [4];\n  undefined1 local_38 [4];\n  undefined1 local_34 [2];\n  undefined1 local_32 [2];\n  undefined1 local_30 [2];\n  undefined1 local_2e [2];\n  undefined1 local_2c [2];\n  undefined1 local_2a [2];\n  undefined1 local_28 [2];\n  undefined1 local_26 [2];\n  undefined1 local_24 [2];\n  undefined1 local_22 [2];\n  undefined1 local_20 [2];\n  undefined1 local_1e [10];\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2665e;\n  sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4));\n  if (sVar2 == 1) {\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    uVar3 = 0;\n  }\n  return uVar3;\n}" { (declaration "undefined2 uVar1;" type_identifier identifier ;) (declaration "size_t sVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "bool bVar4;" primitive_type identifier ;) (declaration "undefined8 uVar5;" type_identifier identifier ;) (declaration "undefined1 local_4c [2];" type_identifier (array_declarator "local_4c [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_4a [2];" type_identifier (array_declarator "local_4a [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_48 [4];" type_identifier (array_declarator "local_48 [4]" identifier [ number_literal ]) ;) (declaration "undefined1 local_44 [4];" type_identifier (array_declarator "local_44 [4]" identifier [ number_literal ]) ;) (declaration "undefined1 local_40 [4];" type_identifier (array_declarator "local_40 [4]" identifier [ number_literal ]) ;) (declaration "undefined1 local_3c [4];" type_identifier (array_declarator "local_3c [4]" identifier [ number_literal ]) ;) (declaration "undefined1 local_38 [4];" type_identifier (array_declarator "local_38 [4]" identifier [ number_literal ]) ;) (declaration "undefined1 local_34 [2];" type_identifier (array_declarator "local_34 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_32 [2];" type_identifier (array_declarator "local_32 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_30 [2];" type_identifier (array_declarator "local_30 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_2e [2];" type_identifier (array_declarator "local_2e [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_2c [2];" type_identifier (array_declarator "local_2c [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_2a [2];" type_identifier (array_declarator "local_2a [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_28 [2];" type_identifier (array_declarator "local_28 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_26 [2];" type_identifier (array_declarator "local_26 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_24 [2];" type_identifier (array_declarator "local_24 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_22 [2];" type_identifier (array_declarator "local_22 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_20 [2];" type_identifier (array_declarator "local_20 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_1e [10];" type_identifier (array_declarator "local_1e [10]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "uStack_14 = 0x2665e;" (assignment_expression "uStack_14 = 0x2665e" identifier = number_literal) ;) (expression_statement "sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4));" (assignment_expression "sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4))" identifier = (call_expression "fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4))" identifier (argument_list "((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4))" ( (cast_expression "(void *)(param_1 + 0x10)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) ))) , number_literal , number_literal , (pointer_expression "*(FILE **)(param_1 + 4)" * (cast_expression "(FILE **)(param_1 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 4)" ( (binary_expression "param_1 + 4" identifier + number_literal) )))) )))) ;) (if_statement "if (sVar2 == 1) {\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    uVar3 = 0;\n  }" if (parenthesized_expression "(sVar2 == 1)" ( (binary_expression "sVar2 == 1" identifier == number_literal) )) (compound_statement "{\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }" { (if_statement "if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x15) == '\x02')" ( (binary_expression "*(char *)(param_1 + 0x15) == '\x02'" (pointer_expression "*(char *)(param_1 + 0x15)" * (cast_expression "(char *)(param_1 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x15)" ( (binary_expression "param_1 + 0x15" identifier + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }" { (expression_statement "DAT_000b9dd4 = FUN_00066720;" (assignment_expression "DAT_000b9dd4 = FUN_00066720" identifier = identifier) ;) (expression_statement "DAT_000b9dd8 = FUN_00066cf0;" (assignment_expression "DAT_000b9dd8 = FUN_00066cf0" identifier = identifier) ;) }) (else_clause "else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }" else (compound_statement "{\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }" { (expression_statement "DAT_000b9dd4 = FUN_00066d70;" (assignment_expression "DAT_000b9dd4 = FUN_00066d70" identifier = identifier) ;) (expression_statement "DAT_000b9dd8 = FUN_00066c60;" (assignment_expression "DAT_000b9dd8 = FUN_00066c60" identifier = identifier) ;) }))) (expression_statement "bVar4 = *(char *)(param_1 + 0x14) == '\x02';" (assignment_expression "bVar4 = *(char *)(param_1 + 0x14) == '\x02'" identifier = (binary_expression "*(char *)(param_1 + 0x14) == '\x02'" (pointer_expression "*(char *)(param_1 + 0x14)" * (cast_expression "(char *)(param_1 + 0x14)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence '))) ;) (expression_statement "DAT_000b6324 = (uint)!bVar4;" (assignment_expression "DAT_000b6324 = (uint)!bVar4" identifier = (cast_expression "(uint)!bVar4" ( (type_descriptor "uint" type_identifier) ) (unary_expression "!bVar4" ! identifier))) ;) (if_statement "if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }" if (parenthesized_expression "(bVar4)" ( identifier )) (compound_statement "{\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }" { (expression_statement "sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));" (assignment_expression "sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4))" identifier = (call_expression "fread(local_4c,0x30,1,*(FILE **)(param_1 + 4))" identifier (argument_list "(local_4c,0x30,1,*(FILE **)(param_1 + 4))" ( identifier , number_literal , number_literal , (pointer_expression "*(FILE **)(param_1 + 4)" * (cast_expression "(FILE **)(param_1 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 4)" ( (binary_expression "param_1 + 4" identifier + number_literal) )))) )))) ;) (if_statement "if (sVar2 != 1) goto LAB_000267e0;" if (parenthesized_expression "(sVar2 != 1)" ( (binary_expression "sVar2 != 1" identifier != number_literal) )) (goto_statement "goto LAB_000267e0;" goto statement_identifier ;)) (expression_statement "uVar1 = (*DAT_000b9dd4)(local_4c,2);" (assignment_expression "uVar1 = (*DAT_000b9dd4)(local_4c,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_4c,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_4c,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined2 *)(param_1 + 0x40) = uVar1;" (assignment_expression "*(undefined2 *)(param_1 + 0x40) = uVar1" (pointer_expression "*(undefined2 *)(param_1 + 0x40)" * (cast_expression "(undefined2 *)(param_1 + 0x40)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar1 = (*DAT_000b9dd4)(local_4a,2);" (assignment_expression "uVar1 = (*DAT_000b9dd4)(local_4a,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_4a,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_4a,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined2 *)(param_1 + 0x42) = uVar1;" (assignment_expression "*(undefined2 *)(param_1 + 0x42) = uVar1" (pointer_expression "*(undefined2 *)(param_1 + 0x42)" * (cast_expression "(undefined2 *)(param_1 + 0x42)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x42)" ( (binary_expression "param_1 + 0x42" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_48,4);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_48,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_48,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_48,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x38) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x38) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x38)" * (cast_expression "(undefined4 *)(param_1 + 0x38)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_44,8);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_44,8)" identifier = (call_expression "(*DAT_000b9dd4)(local_44,8)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_44,8)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x20) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x20) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x20)" * (cast_expression "(undefined8 *)(param_1 + 0x20)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_3c,8);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_3c,8)" identifier = (call_expression "(*DAT_000b9dd4)(local_3c,8)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_3c,8)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x28) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x28) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x28)" * (cast_expression "(undefined8 *)(param_1 + 0x28)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_34,8);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_34,8)" identifier = (call_expression "(*DAT_000b9dd4)(local_34,8)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_34,8)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x30) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x30) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x30)" * (cast_expression "(undefined8 *)(param_1 + 0x30)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_2c,4);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_2c,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_2c,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_2c,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x3c) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x3c) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" * (cast_expression "(undefined4 *)(param_1 + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_28,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_28,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_28,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_28,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x44) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x44) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x44)" * (cast_expression "(undefined4 *)(param_1 + 0x44)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x44)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_26,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_26,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_26,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_26,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x48) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x48) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x48)" * (cast_expression "(undefined4 *)(param_1 + 0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_24,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_24,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_24,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_24,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x4c) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x4c) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x4c)" * (cast_expression "(undefined4 *)(param_1 + 0x4c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x4c)" ( (binary_expression "param_1 + 0x4c" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_22,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_22,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_22,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_22,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x50) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x50) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x50)" * (cast_expression "(undefined4 *)(param_1 + 0x50)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_20,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_20,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_20,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_20,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x54) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x54) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x54)" * (cast_expression "(undefined4 *)(param_1 + 0x54)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x54)" ( (binary_expression "param_1 + 0x54" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_1e,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_1e,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_1e,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_1e,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x58) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x58) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x58)" * (cast_expression "(undefined4 *)(param_1 + 0x58)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x58)" ( (binary_expression "param_1 + 0x58" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }" else (compound_statement "{\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }" { (expression_statement "sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));" (assignment_expression "sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4))" identifier = (call_expression "fread(local_4c,0x24,1,*(FILE **)(param_1 + 4))" identifier (argument_list "(local_4c,0x24,1,*(FILE **)(param_1 + 4))" ( identifier , number_literal , number_literal , (pointer_expression "*(FILE **)(param_1 + 4)" * (cast_expression "(FILE **)(param_1 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 4)" ( (binary_expression "param_1 + 4" identifier + number_literal) )))) )))) ;) (if_statement "if (sVar2 != 1) goto LAB_000267e0;" if (parenthesized_expression "(sVar2 != 1)" ( (binary_expression "sVar2 != 1" identifier != number_literal) )) (goto_statement "goto LAB_000267e0;" goto statement_identifier ;)) (expression_statement "uVar1 = (*DAT_000b9dd4)(local_4c,2);" (assignment_expression "uVar1 = (*DAT_000b9dd4)(local_4c,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_4c,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_4c,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined2 *)(param_1 + 0x40) = uVar1;" (assignment_expression "*(undefined2 *)(param_1 + 0x40) = uVar1" (pointer_expression "*(undefined2 *)(param_1 + 0x40)" * (cast_expression "(undefined2 *)(param_1 + 0x40)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar1 = (*DAT_000b9dd4)(local_4a,2);" (assignment_expression "uVar1 = (*DAT_000b9dd4)(local_4a,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_4a,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_4a,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined2 *)(param_1 + 0x42) = uVar1;" (assignment_expression "*(undefined2 *)(param_1 + 0x42) = uVar1" (pointer_expression "*(undefined2 *)(param_1 + 0x42)" * (cast_expression "(undefined2 *)(param_1 + 0x42)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x42)" ( (binary_expression "param_1 + 0x42" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_48,4);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_48,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_48,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_48,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x38) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x38) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x38)" * (cast_expression "(undefined4 *)(param_1 + 0x38)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_44,4);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_44,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_44,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_44,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x20) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x20) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x20)" * (cast_expression "(undefined8 *)(param_1 + 0x20)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_40,4);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_40,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_40,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_40,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x28) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x28) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x28)" * (cast_expression "(undefined8 *)(param_1 + 0x28)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_3c,4);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_3c,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_3c,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_3c,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x30) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x30) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x30)" * (cast_expression "(undefined8 *)(param_1 + 0x30)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_38,4);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_38,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_38,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_38,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x3c) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x3c) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" * (cast_expression "(undefined4 *)(param_1 + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_34,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_34,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_34,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_34,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x44) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x44) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x44)" * (cast_expression "(undefined4 *)(param_1 + 0x44)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x44)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_32,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_32,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_32,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_32,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x48) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x48) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x48)" * (cast_expression "(undefined4 *)(param_1 + 0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_30,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_30,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_30,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_30,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x4c) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x4c) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x4c)" * (cast_expression "(undefined4 *)(param_1 + 0x4c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x4c)" ( (binary_expression "param_1 + 0x4c" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_2e,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_2e,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_2e,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_2e,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x50) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x50) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x50)" * (cast_expression "(undefined4 *)(param_1 + 0x50)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_2c,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_2c,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_2c,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_2c,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x54) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x54) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x54)" * (cast_expression "(undefined4 *)(param_1 + 0x54)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x54)" ( (binary_expression "param_1 + 0x54" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_2a,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_2a,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_2a,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_2a,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x58) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x58) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x58)" * (cast_expression "(undefined4 *)(param_1 + 0x58)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x58)" ( (binary_expression "param_1 + 0x58" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "uVar3 = 1;" (assignment_expression "uVar3 = 1" identifier = number_literal) ;) (if_statement "if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0)" ( (binary_expression "*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0" (binary_expression "*(int *)(param_1 + 0x34) != 0" (pointer_expression "*(int *)(param_1 + 0x34)" * (cast_expression "(int *)(param_1 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x34)" ( (binary_expression "param_1 + 0x34" identifier + number_literal) )))) != number_literal) || (binary_expression "*(int *)(param_1 + 0x30) != 0" (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) != number_literal)) )) (compound_statement "{\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }" { (if_statement "if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }" if (parenthesized_expression "(DAT_000b6324 == 0)" ( (binary_expression "DAT_000b6324 == 0" identifier == number_literal) )) (compound_statement "{\n        FUN_0001dde0();\n      }" { (expression_statement "FUN_0001dde0();" (call_expression "FUN_0001dde0()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n        FUN_0001dad0();\n      }" else (compound_statement "{\n        FUN_0001dad0();\n      }" { (expression_statement "FUN_0001dad0();" (call_expression "FUN_0001dad0()" identifier (argument_list "()" ( ))) ;) }))) })) }) (else_clause "else {\nLAB_000267e0:\n    uVar3 = 0;\n  }" else (compound_statement "{\nLAB_000267e0:\n    uVar3 = 0;\n  }" { (labeled_statement "LAB_000267e0:\n    uVar3 = 0;" statement_identifier : (expression_statement "uVar3 = 0;" (assignment_expression "uVar3 = 0" identifier = number_literal) ;)) }))) (return_statement "return uVar3;" return identifier ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nbfd_boolean __regparm3 get_file_header(Filedata *filedata)\n\n{\n  size_t sVar1;\n  elf_vma eVar4;\n  bfd_boolean bVar2;\n  bool bVar3;\n  Elf32_External_Ehdr ehdr32;\n  uchar local_28 [2];\n  uchar local_26 [2];\n  uchar local_24 [2];\n  uchar local_22 [2];\n  uchar local_20 [2];\n  uchar local_1e [10];\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2665e;\n  sVar1 = fread(&filedata->file_header,0x10,1,(FILE *)filedata->handle);\n  if (sVar1 == 1) {\n    if ((filedata->file_header).e_ident[5] == '\x02') {\n      byte_get = byte_get_big_endian;\n      byte_put = byte_put_big_endian;\n    }\n    else {\n      byte_get = byte_get_little_endian;\n      byte_put = byte_put_little_endian;\n    }\n    bVar3 = (filedata->file_header).e_ident[4] == '\x02';\n    is_32bit_elf = (bfd_boolean)!bVar3;\n    if (bVar3) {\n      sVar1 = fread(ehdr32.e_type,0x30,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,8);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,8);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_ehsize,8);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_28,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_26,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_24,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_22,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_20,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_1e,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }\n    else {\n      sVar1 = fread(ehdr32.e_type,0x24,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,4);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_phoff,4);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,4);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_flags,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_ehsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shstrndx,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }\n    bVar2 = 1;\n    if (*(int *)((int)&(filedata->file_header).e_shoff + 4) != 0 ||\n        (int)(filedata->file_header).e_shoff != 0) {\n      if (is_32bit_elf == 0) {\n        get_64bit_section_headers(filedata,1);\n      }\n      else {\n        get_32bit_section_headers(filedata,1);\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    bVar2 = 0;\n  }\n  return bVar2;\n}\n\n" comment (function_definition "bfd_boolean __regparm3 get_file_header(Filedata *filedata)\n\n{\n  size_t sVar1;\n  elf_vma eVar4;\n  bfd_boolean bVar2;\n  bool bVar3;\n  Elf32_External_Ehdr ehdr32;\n  uchar local_28 [2];\n  uchar local_26 [2];\n  uchar local_24 [2];\n  uchar local_22 [2];\n  uchar local_20 [2];\n  uchar local_1e [10];\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2665e;\n  sVar1 = fread(&filedata->file_header,0x10,1,(FILE *)filedata->handle);\n  if (sVar1 == 1) {\n    if ((filedata->file_header).e_ident[5] == '\x02') {\n      byte_get = byte_get_big_endian;\n      byte_put = byte_put_big_endian;\n    }\n    else {\n      byte_get = byte_get_little_endian;\n      byte_put = byte_put_little_endian;\n    }\n    bVar3 = (filedata->file_header).e_ident[4] == '\x02';\n    is_32bit_elf = (bfd_boolean)!bVar3;\n    if (bVar3) {\n      sVar1 = fread(ehdr32.e_type,0x30,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,8);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,8);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_ehsize,8);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_28,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_26,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_24,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_22,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_20,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_1e,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }\n    else {\n      sVar1 = fread(ehdr32.e_type,0x24,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,4);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_phoff,4);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,4);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_flags,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_ehsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shstrndx,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }\n    bVar2 = 1;\n    if (*(int *)((int)&(filedata->file_header).e_shoff + 4) != 0 ||\n        (int)(filedata->file_header).e_shoff != 0) {\n      if (is_32bit_elf == 0) {\n        get_64bit_section_headers(filedata,1);\n      }\n      else {\n        get_32bit_section_headers(filedata,1);\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    bVar2 = 0;\n  }\n  return bVar2;\n}" type_identifier (ERROR "__regparm3" identifier) (function_declarator "get_file_header(Filedata *filedata)" identifier (parameter_list "(Filedata *filedata)" ( (parameter_declaration "Filedata *filedata" type_identifier (pointer_declarator "*filedata" * identifier)) ))) (compound_statement "{\n  size_t sVar1;\n  elf_vma eVar4;\n  bfd_boolean bVar2;\n  bool bVar3;\n  Elf32_External_Ehdr ehdr32;\n  uchar local_28 [2];\n  uchar local_26 [2];\n  uchar local_24 [2];\n  uchar local_22 [2];\n  uchar local_20 [2];\n  uchar local_1e [10];\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2665e;\n  sVar1 = fread(&filedata->file_header,0x10,1,(FILE *)filedata->handle);\n  if (sVar1 == 1) {\n    if ((filedata->file_header).e_ident[5] == '\x02') {\n      byte_get = byte_get_big_endian;\n      byte_put = byte_put_big_endian;\n    }\n    else {\n      byte_get = byte_get_little_endian;\n      byte_put = byte_put_little_endian;\n    }\n    bVar3 = (filedata->file_header).e_ident[4] == '\x02';\n    is_32bit_elf = (bfd_boolean)!bVar3;\n    if (bVar3) {\n      sVar1 = fread(ehdr32.e_type,0x30,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,8);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,8);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_ehsize,8);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_28,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_26,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_24,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_22,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_20,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_1e,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }\n    else {\n      sVar1 = fread(ehdr32.e_type,0x24,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,4);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_phoff,4);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,4);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_flags,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_ehsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shstrndx,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }\n    bVar2 = 1;\n    if (*(int *)((int)&(filedata->file_header).e_shoff + 4) != 0 ||\n        (int)(filedata->file_header).e_shoff != 0) {\n      if (is_32bit_elf == 0) {\n        get_64bit_section_headers(filedata,1);\n      }\n      else {\n        get_32bit_section_headers(filedata,1);\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    bVar2 = 0;\n  }\n  return bVar2;\n}" { (declaration "size_t sVar1;" primitive_type identifier ;) (declaration "elf_vma eVar4;" type_identifier identifier ;) (declaration "bfd_boolean bVar2;" type_identifier identifier ;) (declaration "bool bVar3;" primitive_type identifier ;) (declaration "Elf32_External_Ehdr ehdr32;" type_identifier identifier ;) (declaration "uchar local_28 [2];" type_identifier (array_declarator "local_28 [2]" identifier [ number_literal ]) ;) (declaration "uchar local_26 [2];" type_identifier (array_declarator "local_26 [2]" identifier [ number_literal ]) ;) (declaration "uchar local_24 [2];" type_identifier (array_declarator "local_24 [2]" identifier [ number_literal ]) ;) (declaration "uchar local_22 [2];" type_identifier (array_declarator "local_22 [2]" identifier [ number_literal ]) ;) (declaration "uchar local_20 [2];" type_identifier (array_declarator "local_20 [2]" identifier [ number_literal ]) ;) (declaration "uchar local_1e [10];" type_identifier (array_declarator "local_1e [10]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "uStack_14 = 0x2665e;" (assignment_expression "uStack_14 = 0x2665e" identifier = number_literal) ;) (expression_statement "sVar1 = fread(&filedata->file_header,0x10,1,(FILE *)filedata->handle);" (assignment_expression "sVar1 = fread(&filedata->file_header,0x10,1,(FILE *)filedata->handle)" identifier = (call_expression "fread(&filedata->file_header,0x10,1,(FILE *)filedata->handle)" identifier (argument_list "(&filedata->file_header,0x10,1,(FILE *)filedata->handle)" ( (pointer_expression "&filedata->file_header" & (field_expression "filedata->file_header" identifier -> field_identifier)) , number_literal , number_literal , (cast_expression "(FILE *)filedata->handle" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->handle" identifier -> field_identifier)) )))) ;) (if_statement "if (sVar1 == 1) {\n    if ((filedata->file_header).e_ident[5] == '\x02') {\n      byte_get = byte_get_big_endian;\n      byte_put = byte_put_big_endian;\n    }\n    else {\n      byte_get = byte_get_little_endian;\n      byte_put = byte_put_little_endian;\n    }\n    bVar3 = (filedata->file_header).e_ident[4] == '\x02';\n    is_32bit_elf = (bfd_boolean)!bVar3;\n    if (bVar3) {\n      sVar1 = fread(ehdr32.e_type,0x30,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,8);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,8);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_ehsize,8);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_28,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_26,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_24,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_22,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_20,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_1e,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }\n    else {\n      sVar1 = fread(ehdr32.e_type,0x24,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,4);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_phoff,4);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,4);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_flags,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_ehsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shstrndx,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }\n    bVar2 = 1;\n    if (*(int *)((int)&(filedata->file_header).e_shoff + 4) != 0 ||\n        (int)(filedata->file_header).e_shoff != 0) {\n      if (is_32bit_elf == 0) {\n        get_64bit_section_headers(filedata,1);\n      }\n      else {\n        get_32bit_section_headers(filedata,1);\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    bVar2 = 0;\n  }" if (parenthesized_expression "(sVar1 == 1)" ( (binary_expression "sVar1 == 1" identifier == number_literal) )) (compound_statement "{\n    if ((filedata->file_header).e_ident[5] == '\x02') {\n      byte_get = byte_get_big_endian;\n      byte_put = byte_put_big_endian;\n    }\n    else {\n      byte_get = byte_get_little_endian;\n      byte_put = byte_put_little_endian;\n    }\n    bVar3 = (filedata->file_header).e_ident[4] == '\x02';\n    is_32bit_elf = (bfd_boolean)!bVar3;\n    if (bVar3) {\n      sVar1 = fread(ehdr32.e_type,0x30,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,8);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,8);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_ehsize,8);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_28,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_26,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_24,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_22,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_20,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_1e,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }\n    else {\n      sVar1 = fread(ehdr32.e_type,0x24,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,4);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_phoff,4);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,4);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_flags,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_ehsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shstrndx,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }\n    bVar2 = 1;\n    if (*(int *)((int)&(filedata->file_header).e_shoff + 4) != 0 ||\n        (int)(filedata->file_header).e_shoff != 0) {\n      if (is_32bit_elf == 0) {\n        get_64bit_section_headers(filedata,1);\n      }\n      else {\n        get_32bit_section_headers(filedata,1);\n      }\n    }\n  }" { (if_statement "if ((filedata->file_header).e_ident[5] == '\x02') {\n      byte_get = byte_get_big_endian;\n      byte_put = byte_put_big_endian;\n    }\n    else {\n      byte_get = byte_get_little_endian;\n      byte_put = byte_put_little_endian;\n    }" if (parenthesized_expression "((filedata->file_header).e_ident[5] == '\x02')" ( (binary_expression "(filedata->file_header).e_ident[5] == '\x02'" (subscript_expression "(filedata->file_header).e_ident[5]" (field_expression "(filedata->file_header).e_ident" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n      byte_get = byte_get_big_endian;\n      byte_put = byte_put_big_endian;\n    }" { (expression_statement "byte_get = byte_get_big_endian;" (assignment_expression "byte_get = byte_get_big_endian" identifier = identifier) ;) (expression_statement "byte_put = byte_put_big_endian;" (assignment_expression "byte_put = byte_put_big_endian" identifier = identifier) ;) }) (else_clause "else {\n      byte_get = byte_get_little_endian;\n      byte_put = byte_put_little_endian;\n    }" else (compound_statement "{\n      byte_get = byte_get_little_endian;\n      byte_put = byte_put_little_endian;\n    }" { (expression_statement "byte_get = byte_get_little_endian;" (assignment_expression "byte_get = byte_get_little_endian" identifier = identifier) ;) (expression_statement "byte_put = byte_put_little_endian;" (assignment_expression "byte_put = byte_put_little_endian" identifier = identifier) ;) }))) (expression_statement "bVar3 = (filedata->file_header).e_ident[4] == '\x02';" (assignment_expression "bVar3 = (filedata->file_header).e_ident[4] == '\x02'" identifier = (binary_expression "(filedata->file_header).e_ident[4] == '\x02'" (subscript_expression "(filedata->file_header).e_ident[4]" (field_expression "(filedata->file_header).e_ident" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) == (char_literal "'\x02'" ' escape_sequence '))) ;) (expression_statement "is_32bit_elf = (bfd_boolean)!bVar3;" (assignment_expression "is_32bit_elf = (bfd_boolean)!bVar3" identifier = (cast_expression "(bfd_boolean)!bVar3" ( (type_descriptor "bfd_boolean" type_identifier) ) (unary_expression "!bVar3" ! identifier))) ;) (if_statement "if (bVar3) {\n      sVar1 = fread(ehdr32.e_type,0x30,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,8);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,8);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_ehsize,8);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_28,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_26,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_24,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_22,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_20,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_1e,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }\n    else {\n      sVar1 = fread(ehdr32.e_type,0x24,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,4);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_phoff,4);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,4);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_flags,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_ehsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shstrndx,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }" if (parenthesized_expression "(bVar3)" ( identifier )) (compound_statement "{\n      sVar1 = fread(ehdr32.e_type,0x30,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,8);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,8);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_ehsize,8);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_28,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_26,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_24,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_22,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_20,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(local_1e,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }" { (expression_statement "sVar1 = fread(ehdr32.e_type,0x30,1,(FILE *)filedata->handle);" (assignment_expression "sVar1 = fread(ehdr32.e_type,0x30,1,(FILE *)filedata->handle)" identifier = (call_expression "fread(ehdr32.e_type,0x30,1,(FILE *)filedata->handle)" identifier (argument_list "(ehdr32.e_type,0x30,1,(FILE *)filedata->handle)" ( (field_expression "ehdr32.e_type" identifier . field_identifier) , number_literal , number_literal , (cast_expression "(FILE *)filedata->handle" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->handle" identifier -> field_identifier)) )))) ;) (if_statement "if (sVar1 != 1) goto LAB_000267e0;" if (parenthesized_expression "(sVar1 != 1)" ( (binary_expression "sVar1 != 1" identifier != number_literal) )) (goto_statement "goto LAB_000267e0;" goto statement_identifier ;)) (expression_statement "eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);" (assignment_expression "eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2)" (field_expression "eVar4._0_2_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_type,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_type,2)" ( (field_expression "ehdr32.e_type" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_type" * (cast_expression "(elf_vma *)&(filedata->file_header).e_type" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_type" & (field_expression "(filedata->file_header).e_type" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);" (assignment_expression "eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2)" (field_expression "eVar4._0_2_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_machine,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_machine,2)" ( (field_expression "ehdr32.e_machine" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_machine" * (cast_expression "(elf_vma *)&(filedata->file_header).e_machine" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_machine" & (field_expression "(filedata->file_header).e_machine" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);" (assignment_expression "eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_version,4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_version,4)" ( (field_expression "ehdr32.e_version" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_version" * (cast_expression "(elf_vma *)&(filedata->file_header).e_version" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_version" & (field_expression "(filedata->file_header).e_version" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4 = (*byte_get)(ehdr32.e_entry,8);" (assignment_expression "eVar4 = (*byte_get)(ehdr32.e_entry,8)" identifier = (call_expression "(*byte_get)(ehdr32.e_entry,8)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_entry,8)" ( (field_expression "ehdr32.e_entry" identifier . field_identifier) , number_literal )))) ;) (expression_statement "(filedata->file_header).e_entry = eVar4;" (assignment_expression "(filedata->file_header).e_entry = eVar4" (field_expression "(filedata->file_header).e_entry" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "eVar4 = (*byte_get)(ehdr32.e_shoff,8);" (assignment_expression "eVar4 = (*byte_get)(ehdr32.e_shoff,8)" identifier = (call_expression "(*byte_get)(ehdr32.e_shoff,8)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_shoff,8)" ( (field_expression "ehdr32.e_shoff" identifier . field_identifier) , number_literal )))) ;) (expression_statement "(filedata->file_header).e_phoff = eVar4;" (assignment_expression "(filedata->file_header).e_phoff = eVar4" (field_expression "(filedata->file_header).e_phoff" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "eVar4 = (*byte_get)(ehdr32.e_ehsize,8);" (assignment_expression "eVar4 = (*byte_get)(ehdr32.e_ehsize,8)" identifier = (call_expression "(*byte_get)(ehdr32.e_ehsize,8)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_ehsize,8)" ( (field_expression "ehdr32.e_ehsize" identifier . field_identifier) , number_literal )))) ;) (expression_statement "(filedata->file_header).e_shoff = eVar4;" (assignment_expression "(filedata->file_header).e_shoff = eVar4" (field_expression "(filedata->file_header).e_shoff" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,4);" (assignment_expression "eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,4)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_shnum,4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_shnum,4)" ( (field_expression "ehdr32.e_shnum" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_flags" * (cast_expression "(elf_vma *)&(filedata->file_header).e_flags" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_flags" & (field_expression "(filedata->file_header).e_flags" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(local_28,2);" (assignment_expression "eVar4._0_4_ = (*byte_get)(local_28,2)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(local_28,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(local_28,2)" ( identifier , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_ehsize" * (cast_expression "(elf_vma *)&(filedata->file_header).e_ehsize" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_ehsize" & (field_expression "(filedata->file_header).e_ehsize" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(local_26,2);" (assignment_expression "eVar4._0_4_ = (*byte_get)(local_26,2)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(local_26,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(local_26,2)" ( identifier , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_phentsize" * (cast_expression "(elf_vma *)&(filedata->file_header).e_phentsize" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_phentsize" & (field_expression "(filedata->file_header).e_phentsize" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(local_24,2);" (assignment_expression "eVar4._0_4_ = (*byte_get)(local_24,2)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(local_24,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(local_24,2)" ( identifier , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_phnum" * (cast_expression "(elf_vma *)&(filedata->file_header).e_phnum" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_phnum" & (field_expression "(filedata->file_header).e_phnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(local_22,2);" (assignment_expression "eVar4._0_4_ = (*byte_get)(local_22,2)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(local_22,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(local_22,2)" ( identifier , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_shentsize" * (cast_expression "(elf_vma *)&(filedata->file_header).e_shentsize" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_shentsize" & (field_expression "(filedata->file_header).e_shentsize" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(local_20,2);" (assignment_expression "eVar4._0_4_ = (*byte_get)(local_20,2)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(local_20,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(local_20,2)" ( identifier , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_shnum" * (cast_expression "(elf_vma *)&(filedata->file_header).e_shnum" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_shnum" & (field_expression "(filedata->file_header).e_shnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(local_1e,2);" (assignment_expression "eVar4._0_4_ = (*byte_get)(local_1e,2)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(local_1e,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(local_1e,2)" ( identifier , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_shstrndx" * (cast_expression "(elf_vma *)&(filedata->file_header).e_shstrndx" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_shstrndx" & (field_expression "(filedata->file_header).e_shstrndx" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) }) (else_clause "else {\n      sVar1 = fread(ehdr32.e_type,0x24,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,4);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_phoff,4);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,4);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_flags,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_ehsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shstrndx,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }" else (compound_statement "{\n      sVar1 = fread(ehdr32.e_type,0x24,1,(FILE *)filedata->handle);\n      if (sVar1 != 1) goto LAB_000267e0;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;\n      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_entry,4);\n      (filedata->file_header).e_entry = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_phoff,4);\n      (filedata->file_header).e_phoff = eVar4;\n      eVar4 = (*byte_get)(ehdr32.e_shoff,4);\n      (filedata->file_header).e_shoff = eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_flags,4);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_ehsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_phnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shentsize,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;\n      eVar4._0_4_ = (*byte_get)(ehdr32.e_shstrndx,2);\n                    /* WARNING: Store size is inaccurate */\n      *(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;\n    }" { (expression_statement "sVar1 = fread(ehdr32.e_type,0x24,1,(FILE *)filedata->handle);" (assignment_expression "sVar1 = fread(ehdr32.e_type,0x24,1,(FILE *)filedata->handle)" identifier = (call_expression "fread(ehdr32.e_type,0x24,1,(FILE *)filedata->handle)" identifier (argument_list "(ehdr32.e_type,0x24,1,(FILE *)filedata->handle)" ( (field_expression "ehdr32.e_type" identifier . field_identifier) , number_literal , number_literal , (cast_expression "(FILE *)filedata->handle" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->handle" identifier -> field_identifier)) )))) ;) (if_statement "if (sVar1 != 1) goto LAB_000267e0;" if (parenthesized_expression "(sVar1 != 1)" ( (binary_expression "sVar1 != 1" identifier != number_literal) )) (goto_statement "goto LAB_000267e0;" goto statement_identifier ;)) (expression_statement "eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);" (assignment_expression "eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2)" (field_expression "eVar4._0_2_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_type,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_type,2)" ( (field_expression "ehdr32.e_type" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_type = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_type" * (cast_expression "(elf_vma *)&(filedata->file_header).e_type" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_type" & (field_expression "(filedata->file_header).e_type" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);" (assignment_expression "eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2)" (field_expression "eVar4._0_2_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_machine,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_machine,2)" ( (field_expression "ehdr32.e_machine" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_machine = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_machine" * (cast_expression "(elf_vma *)&(filedata->file_header).e_machine" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_machine" & (field_expression "(filedata->file_header).e_machine" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);" (assignment_expression "eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_version,4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_version,4)" ( (field_expression "ehdr32.e_version" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_version = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_version" * (cast_expression "(elf_vma *)&(filedata->file_header).e_version" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_version" & (field_expression "(filedata->file_header).e_version" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4 = (*byte_get)(ehdr32.e_entry,4);" (assignment_expression "eVar4 = (*byte_get)(ehdr32.e_entry,4)" identifier = (call_expression "(*byte_get)(ehdr32.e_entry,4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_entry,4)" ( (field_expression "ehdr32.e_entry" identifier . field_identifier) , number_literal )))) ;) (expression_statement "(filedata->file_header).e_entry = eVar4;" (assignment_expression "(filedata->file_header).e_entry = eVar4" (field_expression "(filedata->file_header).e_entry" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "eVar4 = (*byte_get)(ehdr32.e_phoff,4);" (assignment_expression "eVar4 = (*byte_get)(ehdr32.e_phoff,4)" identifier = (call_expression "(*byte_get)(ehdr32.e_phoff,4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_phoff,4)" ( (field_expression "ehdr32.e_phoff" identifier . field_identifier) , number_literal )))) ;) (expression_statement "(filedata->file_header).e_phoff = eVar4;" (assignment_expression "(filedata->file_header).e_phoff = eVar4" (field_expression "(filedata->file_header).e_phoff" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "eVar4 = (*byte_get)(ehdr32.e_shoff,4);" (assignment_expression "eVar4 = (*byte_get)(ehdr32.e_shoff,4)" identifier = (call_expression "(*byte_get)(ehdr32.e_shoff,4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_shoff,4)" ( (field_expression "ehdr32.e_shoff" identifier . field_identifier) , number_literal )))) ;) (expression_statement "(filedata->file_header).e_shoff = eVar4;" (assignment_expression "(filedata->file_header).e_shoff = eVar4" (field_expression "(filedata->file_header).e_shoff" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(ehdr32.e_flags,4);" (assignment_expression "eVar4._0_4_ = (*byte_get)(ehdr32.e_flags,4)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_flags,4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_flags,4)" ( (field_expression "ehdr32.e_flags" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_flags = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_flags" * (cast_expression "(elf_vma *)&(filedata->file_header).e_flags" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_flags" & (field_expression "(filedata->file_header).e_flags" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(ehdr32.e_ehsize,2);" (assignment_expression "eVar4._0_4_ = (*byte_get)(ehdr32.e_ehsize,2)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_ehsize,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_ehsize,2)" ( (field_expression "ehdr32.e_ehsize" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_ehsize = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_ehsize" * (cast_expression "(elf_vma *)&(filedata->file_header).e_ehsize" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_ehsize" & (field_expression "(filedata->file_header).e_ehsize" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(ehdr32.e_phentsize,2);" (assignment_expression "eVar4._0_4_ = (*byte_get)(ehdr32.e_phentsize,2)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_phentsize,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_phentsize,2)" ( (field_expression "ehdr32.e_phentsize" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_phentsize = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_phentsize" * (cast_expression "(elf_vma *)&(filedata->file_header).e_phentsize" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_phentsize" & (field_expression "(filedata->file_header).e_phentsize" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(ehdr32.e_phnum,2);" (assignment_expression "eVar4._0_4_ = (*byte_get)(ehdr32.e_phnum,2)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_phnum,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_phnum,2)" ( (field_expression "ehdr32.e_phnum" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_phnum = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_phnum" * (cast_expression "(elf_vma *)&(filedata->file_header).e_phnum" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_phnum" & (field_expression "(filedata->file_header).e_phnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(ehdr32.e_shentsize,2);" (assignment_expression "eVar4._0_4_ = (*byte_get)(ehdr32.e_shentsize,2)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_shentsize,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_shentsize,2)" ( (field_expression "ehdr32.e_shentsize" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_shentsize = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_shentsize" * (cast_expression "(elf_vma *)&(filedata->file_header).e_shentsize" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_shentsize" & (field_expression "(filedata->file_header).e_shentsize" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,2);" (assignment_expression "eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,2)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_shnum,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_shnum,2)" ( (field_expression "ehdr32.e_shnum" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_shnum = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_shnum" * (cast_expression "(elf_vma *)&(filedata->file_header).e_shnum" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_shnum" & (field_expression "(filedata->file_header).e_shnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "eVar4._0_4_ = (*byte_get)(ehdr32.e_shstrndx,2);" (assignment_expression "eVar4._0_4_ = (*byte_get)(ehdr32.e_shstrndx,2)" (field_expression "eVar4._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)(ehdr32.e_shstrndx,2)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "(ehdr32.e_shstrndx,2)" ( (field_expression "ehdr32.e_shstrndx" identifier . field_identifier) , number_literal )))) ;) comment (expression_statement "*(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4;" (assignment_expression "*(elf_vma *)&(filedata->file_header).e_shstrndx = (elf_vma)eVar4" (pointer_expression "*(elf_vma *)&(filedata->file_header).e_shstrndx" * (cast_expression "(elf_vma *)&(filedata->file_header).e_shstrndx" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(filedata->file_header).e_shstrndx" & (field_expression "(filedata->file_header).e_shstrndx" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)))) = (cast_expression "(elf_vma)eVar4" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) }))) (expression_statement "bVar2 = 1;" (assignment_expression "bVar2 = 1" identifier = number_literal) ;) (if_statement "if (*(int *)((int)&(filedata->file_header).e_shoff + 4) != 0 ||\n        (int)(filedata->file_header).e_shoff != 0) {\n      if (is_32bit_elf == 0) {\n        get_64bit_section_headers(filedata,1);\n      }\n      else {\n        get_32bit_section_headers(filedata,1);\n      }\n    }" if (parenthesized_expression "(*(int *)((int)&(filedata->file_header).e_shoff + 4) != 0 ||\n        (int)(filedata->file_header).e_shoff != 0)" ( (binary_expression "*(int *)((int)&(filedata->file_header).e_shoff + 4) != 0 ||\n        (int)(filedata->file_header).e_shoff != 0" (binary_expression "*(int *)((int)&(filedata->file_header).e_shoff + 4) != 0" (pointer_expression "*(int *)((int)&(filedata->file_header).e_shoff + 4)" * (cast_expression "(int *)((int)&(filedata->file_header).e_shoff + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(filedata->file_header).e_shoff + 4)" ( (binary_expression "(int)&(filedata->file_header).e_shoff + 4" (cast_expression "(int)&(filedata->file_header).e_shoff" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(filedata->file_header).e_shoff" & (field_expression "(filedata->file_header).e_shoff" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) != number_literal) || (binary_expression "(int)(filedata->file_header).e_shoff != 0" (cast_expression "(int)(filedata->file_header).e_shoff" ( (type_descriptor "int" primitive_type) ) (field_expression "(filedata->file_header).e_shoff" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) != number_literal)) )) (compound_statement "{\n      if (is_32bit_elf == 0) {\n        get_64bit_section_headers(filedata,1);\n      }\n      else {\n        get_32bit_section_headers(filedata,1);\n      }\n    }" { (if_statement "if (is_32bit_elf == 0) {\n        get_64bit_section_headers(filedata,1);\n      }\n      else {\n        get_32bit_section_headers(filedata,1);\n      }" if (parenthesized_expression "(is_32bit_elf == 0)" ( (binary_expression "is_32bit_elf == 0" identifier == number_literal) )) (compound_statement "{\n        get_64bit_section_headers(filedata,1);\n      }" { (expression_statement "get_64bit_section_headers(filedata,1);" (call_expression "get_64bit_section_headers(filedata,1)" identifier (argument_list "(filedata,1)" ( identifier , number_literal ))) ;) }) (else_clause "else {\n        get_32bit_section_headers(filedata,1);\n      }" else (compound_statement "{\n        get_32bit_section_headers(filedata,1);\n      }" { (expression_statement "get_32bit_section_headers(filedata,1);" (call_expression "get_32bit_section_headers(filedata,1)" identifier (argument_list "(filedata,1)" ( identifier , number_literal ))) ;) }))) })) }) (else_clause "else {\nLAB_000267e0:\n    bVar2 = 0;\n  }" else (compound_statement "{\nLAB_000267e0:\n    bVar2 = 0;\n  }" { (labeled_statement "LAB_000267e0:\n    bVar2 = 0;" statement_identifier : (expression_statement "bVar2 = 0;" (assignment_expression "bVar2 = 0" identifier = number_literal) ;)) }))) (return_statement "return bVar2;" return identifier ;) })))
(translation_unit "undefined4 __regparm3 FUN_00026650(int param_1)\n\n{\n  undefined2 uVar1;\n  size_t sVar2;\n  undefined4 uVar3;\n  bool bVar4;\n  undefined8 uVar5;\n  undefined1 local_4c [2];\n  undefined1 local_4a [2];\n  undefined1 local_48 [4];\n  undefined1 local_44 [4];\n  undefined1 local_40 [4];\n  undefined1 local_3c [4];\n  undefined1 local_38 [4];\n  undefined1 local_34 [2];\n  undefined1 local_32 [2];\n  undefined1 local_30 [2];\n  undefined1 local_2e [2];\n  undefined1 local_2c [2];\n  undefined1 local_2a [2];\n  undefined1 local_28 [2];\n  undefined1 local_26 [2];\n  undefined1 local_24 [2];\n  undefined1 local_22 [2];\n  undefined1 local_20 [2];\n  undefined1 local_1e [10];\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2665e;\n  sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4));\n  if (sVar2 == 1) {\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    uVar3 = 0;\n  }\n  return uVar3;\n}\n\n" (function_definition "undefined4 __regparm3 FUN_00026650(int param_1)\n\n{\n  undefined2 uVar1;\n  size_t sVar2;\n  undefined4 uVar3;\n  bool bVar4;\n  undefined8 uVar5;\n  undefined1 local_4c [2];\n  undefined1 local_4a [2];\n  undefined1 local_48 [4];\n  undefined1 local_44 [4];\n  undefined1 local_40 [4];\n  undefined1 local_3c [4];\n  undefined1 local_38 [4];\n  undefined1 local_34 [2];\n  undefined1 local_32 [2];\n  undefined1 local_30 [2];\n  undefined1 local_2e [2];\n  undefined1 local_2c [2];\n  undefined1 local_2a [2];\n  undefined1 local_28 [2];\n  undefined1 local_26 [2];\n  undefined1 local_24 [2];\n  undefined1 local_22 [2];\n  undefined1 local_20 [2];\n  undefined1 local_1e [10];\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2665e;\n  sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4));\n  if (sVar2 == 1) {\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    uVar3 = 0;\n  }\n  return uVar3;\n}" type_identifier (ERROR "__regparm3" identifier) (function_declarator "FUN_00026650(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  undefined2 uVar1;\n  size_t sVar2;\n  undefined4 uVar3;\n  bool bVar4;\n  undefined8 uVar5;\n  undefined1 local_4c [2];\n  undefined1 local_4a [2];\n  undefined1 local_48 [4];\n  undefined1 local_44 [4];\n  undefined1 local_40 [4];\n  undefined1 local_3c [4];\n  undefined1 local_38 [4];\n  undefined1 local_34 [2];\n  undefined1 local_32 [2];\n  undefined1 local_30 [2];\n  undefined1 local_2e [2];\n  undefined1 local_2c [2];\n  undefined1 local_2a [2];\n  undefined1 local_28 [2];\n  undefined1 local_26 [2];\n  undefined1 local_24 [2];\n  undefined1 local_22 [2];\n  undefined1 local_20 [2];\n  undefined1 local_1e [10];\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2665e;\n  sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4));\n  if (sVar2 == 1) {\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    uVar3 = 0;\n  }\n  return uVar3;\n}" { (declaration "undefined2 uVar1;" type_identifier identifier ;) (declaration "size_t sVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "bool bVar4;" primitive_type identifier ;) (declaration "undefined8 uVar5;" type_identifier identifier ;) (declaration "undefined1 local_4c [2];" type_identifier (array_declarator "local_4c [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_4a [2];" type_identifier (array_declarator "local_4a [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_48 [4];" type_identifier (array_declarator "local_48 [4]" identifier [ number_literal ]) ;) (declaration "undefined1 local_44 [4];" type_identifier (array_declarator "local_44 [4]" identifier [ number_literal ]) ;) (declaration "undefined1 local_40 [4];" type_identifier (array_declarator "local_40 [4]" identifier [ number_literal ]) ;) (declaration "undefined1 local_3c [4];" type_identifier (array_declarator "local_3c [4]" identifier [ number_literal ]) ;) (declaration "undefined1 local_38 [4];" type_identifier (array_declarator "local_38 [4]" identifier [ number_literal ]) ;) (declaration "undefined1 local_34 [2];" type_identifier (array_declarator "local_34 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_32 [2];" type_identifier (array_declarator "local_32 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_30 [2];" type_identifier (array_declarator "local_30 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_2e [2];" type_identifier (array_declarator "local_2e [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_2c [2];" type_identifier (array_declarator "local_2c [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_2a [2];" type_identifier (array_declarator "local_2a [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_28 [2];" type_identifier (array_declarator "local_28 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_26 [2];" type_identifier (array_declarator "local_26 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_24 [2];" type_identifier (array_declarator "local_24 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_22 [2];" type_identifier (array_declarator "local_22 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_20 [2];" type_identifier (array_declarator "local_20 [2]" identifier [ number_literal ]) ;) (declaration "undefined1 local_1e [10];" type_identifier (array_declarator "local_1e [10]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "uStack_14 = 0x2665e;" (assignment_expression "uStack_14 = 0x2665e" identifier = number_literal) ;) (expression_statement "sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4));" (assignment_expression "sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4))" identifier = (call_expression "fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4))" identifier (argument_list "((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4))" ( (cast_expression "(void *)(param_1 + 0x10)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) ))) , number_literal , number_literal , (pointer_expression "*(FILE **)(param_1 + 4)" * (cast_expression "(FILE **)(param_1 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 4)" ( (binary_expression "param_1 + 4" identifier + number_literal) )))) )))) ;) (if_statement "if (sVar2 == 1) {\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    uVar3 = 0;\n  }" if (parenthesized_expression "(sVar2 == 1)" ( (binary_expression "sVar2 == 1" identifier == number_literal) )) (compound_statement "{\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }" { (if_statement "if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x15) == '\x02')" ( (binary_expression "*(char *)(param_1 + 0x15) == '\x02'" (pointer_expression "*(char *)(param_1 + 0x15)" * (cast_expression "(char *)(param_1 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x15)" ( (binary_expression "param_1 + 0x15" identifier + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }" { (expression_statement "DAT_000b9dd4 = FUN_00066720;" (assignment_expression "DAT_000b9dd4 = FUN_00066720" identifier = identifier) ;) (expression_statement "DAT_000b9dd8 = FUN_00066cf0;" (assignment_expression "DAT_000b9dd8 = FUN_00066cf0" identifier = identifier) ;) }) (else_clause "else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }" else (compound_statement "{\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }" { (expression_statement "DAT_000b9dd4 = FUN_00066d70;" (assignment_expression "DAT_000b9dd4 = FUN_00066d70" identifier = identifier) ;) (expression_statement "DAT_000b9dd8 = FUN_00066c60;" (assignment_expression "DAT_000b9dd8 = FUN_00066c60" identifier = identifier) ;) }))) (expression_statement "bVar4 = *(char *)(param_1 + 0x14) == '\x02';" (assignment_expression "bVar4 = *(char *)(param_1 + 0x14) == '\x02'" identifier = (binary_expression "*(char *)(param_1 + 0x14) == '\x02'" (pointer_expression "*(char *)(param_1 + 0x14)" * (cast_expression "(char *)(param_1 + 0x14)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence '))) ;) (expression_statement "DAT_000b6324 = (uint)!bVar4;" (assignment_expression "DAT_000b6324 = (uint)!bVar4" identifier = (cast_expression "(uint)!bVar4" ( (type_descriptor "uint" type_identifier) ) (unary_expression "!bVar4" ! identifier))) ;) (if_statement "if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }" if (parenthesized_expression "(bVar4)" ( identifier )) (compound_statement "{\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }" { (expression_statement "sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));" (assignment_expression "sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4))" identifier = (call_expression "fread(local_4c,0x30,1,*(FILE **)(param_1 + 4))" identifier (argument_list "(local_4c,0x30,1,*(FILE **)(param_1 + 4))" ( identifier , number_literal , number_literal , (pointer_expression "*(FILE **)(param_1 + 4)" * (cast_expression "(FILE **)(param_1 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 4)" ( (binary_expression "param_1 + 4" identifier + number_literal) )))) )))) ;) (if_statement "if (sVar2 != 1) goto LAB_000267e0;" if (parenthesized_expression "(sVar2 != 1)" ( (binary_expression "sVar2 != 1" identifier != number_literal) )) (goto_statement "goto LAB_000267e0;" goto statement_identifier ;)) (expression_statement "uVar1 = (*DAT_000b9dd4)(local_4c,2);" (assignment_expression "uVar1 = (*DAT_000b9dd4)(local_4c,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_4c,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_4c,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined2 *)(param_1 + 0x40) = uVar1;" (assignment_expression "*(undefined2 *)(param_1 + 0x40) = uVar1" (pointer_expression "*(undefined2 *)(param_1 + 0x40)" * (cast_expression "(undefined2 *)(param_1 + 0x40)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar1 = (*DAT_000b9dd4)(local_4a,2);" (assignment_expression "uVar1 = (*DAT_000b9dd4)(local_4a,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_4a,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_4a,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined2 *)(param_1 + 0x42) = uVar1;" (assignment_expression "*(undefined2 *)(param_1 + 0x42) = uVar1" (pointer_expression "*(undefined2 *)(param_1 + 0x42)" * (cast_expression "(undefined2 *)(param_1 + 0x42)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x42)" ( (binary_expression "param_1 + 0x42" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_48,4);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_48,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_48,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_48,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x38) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x38) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x38)" * (cast_expression "(undefined4 *)(param_1 + 0x38)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_44,8);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_44,8)" identifier = (call_expression "(*DAT_000b9dd4)(local_44,8)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_44,8)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x20) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x20) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x20)" * (cast_expression "(undefined8 *)(param_1 + 0x20)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_3c,8);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_3c,8)" identifier = (call_expression "(*DAT_000b9dd4)(local_3c,8)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_3c,8)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x28) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x28) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x28)" * (cast_expression "(undefined8 *)(param_1 + 0x28)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_34,8);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_34,8)" identifier = (call_expression "(*DAT_000b9dd4)(local_34,8)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_34,8)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x30) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x30) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x30)" * (cast_expression "(undefined8 *)(param_1 + 0x30)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_2c,4);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_2c,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_2c,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_2c,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x3c) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x3c) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" * (cast_expression "(undefined4 *)(param_1 + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_28,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_28,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_28,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_28,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x44) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x44) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x44)" * (cast_expression "(undefined4 *)(param_1 + 0x44)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x44)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_26,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_26,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_26,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_26,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x48) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x48) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x48)" * (cast_expression "(undefined4 *)(param_1 + 0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_24,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_24,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_24,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_24,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x4c) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x4c) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x4c)" * (cast_expression "(undefined4 *)(param_1 + 0x4c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x4c)" ( (binary_expression "param_1 + 0x4c" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_22,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_22,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_22,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_22,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x50) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x50) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x50)" * (cast_expression "(undefined4 *)(param_1 + 0x50)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_20,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_20,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_20,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_20,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x54) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x54) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x54)" * (cast_expression "(undefined4 *)(param_1 + 0x54)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x54)" ( (binary_expression "param_1 + 0x54" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_1e,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_1e,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_1e,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_1e,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x58) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x58) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x58)" * (cast_expression "(undefined4 *)(param_1 + 0x58)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x58)" ( (binary_expression "param_1 + 0x58" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }" else (compound_statement "{\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }" { (expression_statement "sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));" (assignment_expression "sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4))" identifier = (call_expression "fread(local_4c,0x24,1,*(FILE **)(param_1 + 4))" identifier (argument_list "(local_4c,0x24,1,*(FILE **)(param_1 + 4))" ( identifier , number_literal , number_literal , (pointer_expression "*(FILE **)(param_1 + 4)" * (cast_expression "(FILE **)(param_1 + 4)" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 4)" ( (binary_expression "param_1 + 4" identifier + number_literal) )))) )))) ;) (if_statement "if (sVar2 != 1) goto LAB_000267e0;" if (parenthesized_expression "(sVar2 != 1)" ( (binary_expression "sVar2 != 1" identifier != number_literal) )) (goto_statement "goto LAB_000267e0;" goto statement_identifier ;)) (expression_statement "uVar1 = (*DAT_000b9dd4)(local_4c,2);" (assignment_expression "uVar1 = (*DAT_000b9dd4)(local_4c,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_4c,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_4c,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined2 *)(param_1 + 0x40) = uVar1;" (assignment_expression "*(undefined2 *)(param_1 + 0x40) = uVar1" (pointer_expression "*(undefined2 *)(param_1 + 0x40)" * (cast_expression "(undefined2 *)(param_1 + 0x40)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar1 = (*DAT_000b9dd4)(local_4a,2);" (assignment_expression "uVar1 = (*DAT_000b9dd4)(local_4a,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_4a,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_4a,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined2 *)(param_1 + 0x42) = uVar1;" (assignment_expression "*(undefined2 *)(param_1 + 0x42) = uVar1" (pointer_expression "*(undefined2 *)(param_1 + 0x42)" * (cast_expression "(undefined2 *)(param_1 + 0x42)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x42)" ( (binary_expression "param_1 + 0x42" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_48,4);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_48,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_48,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_48,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x38) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x38) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x38)" * (cast_expression "(undefined4 *)(param_1 + 0x38)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_44,4);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_44,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_44,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_44,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x20) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x20) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x20)" * (cast_expression "(undefined8 *)(param_1 + 0x20)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_40,4);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_40,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_40,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_40,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x28) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x28) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x28)" * (cast_expression "(undefined8 *)(param_1 + 0x28)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_3c,4);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_3c,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_3c,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_3c,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x30) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x30) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x30)" * (cast_expression "(undefined8 *)(param_1 + 0x30)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_38,4);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_38,4)" identifier = (call_expression "(*DAT_000b9dd4)(local_38,4)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_38,4)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x3c) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x3c) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" * (cast_expression "(undefined4 *)(param_1 + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_34,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_34,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_34,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_34,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x44) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x44) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x44)" * (cast_expression "(undefined4 *)(param_1 + 0x44)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x44)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_32,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_32,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_32,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_32,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x48) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x48) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x48)" * (cast_expression "(undefined4 *)(param_1 + 0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_30,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_30,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_30,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_30,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x4c) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x4c) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x4c)" * (cast_expression "(undefined4 *)(param_1 + 0x4c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x4c)" ( (binary_expression "param_1 + 0x4c" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_2e,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_2e,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_2e,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_2e,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x50) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x50) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x50)" * (cast_expression "(undefined4 *)(param_1 + 0x50)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_2c,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_2c,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_2c,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_2c,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x54) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x54) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x54)" * (cast_expression "(undefined4 *)(param_1 + 0x54)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x54)" ( (binary_expression "param_1 + 0x54" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_2a,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_2a,2)" identifier = (call_expression "(*DAT_000b9dd4)(local_2a,2)" (parenthesized_expression "(*DAT_000b9dd4)" ( (pointer_expression "*DAT_000b9dd4" * identifier) )) (argument_list "(local_2a,2)" ( identifier , number_literal )))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x58) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x58) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x58)" * (cast_expression "(undefined4 *)(param_1 + 0x58)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x58)" ( (binary_expression "param_1 + 0x58" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "uVar3 = 1;" (assignment_expression "uVar3 = 1" identifier = number_literal) ;) (if_statement "if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0)" ( (binary_expression "*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0" (binary_expression "*(int *)(param_1 + 0x34) != 0" (pointer_expression "*(int *)(param_1 + 0x34)" * (cast_expression "(int *)(param_1 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x34)" ( (binary_expression "param_1 + 0x34" identifier + number_literal) )))) != number_literal) || (binary_expression "*(int *)(param_1 + 0x30) != 0" (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) != number_literal)) )) (compound_statement "{\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }" { (if_statement "if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }" if (parenthesized_expression "(DAT_000b6324 == 0)" ( (binary_expression "DAT_000b6324 == 0" identifier == number_literal) )) (compound_statement "{\n        FUN_0001dde0();\n      }" { (expression_statement "FUN_0001dde0();" (call_expression "FUN_0001dde0()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n        FUN_0001dad0();\n      }" else (compound_statement "{\n        FUN_0001dad0();\n      }" { (expression_statement "FUN_0001dad0();" (call_expression "FUN_0001dad0()" identifier (argument_list "()" ( ))) ;) }))) })) }) (else_clause "else {\nLAB_000267e0:\n    uVar3 = 0;\n  }" else (compound_statement "{\nLAB_000267e0:\n    uVar3 = 0;\n  }" { (labeled_statement "LAB_000267e0:\n    uVar3 = 0;" statement_identifier : (expression_statement "uVar3 = 0;" (assignment_expression "uVar3 = 0" identifier = number_literal) ;)) }))) (return_statement "return uVar3;" return identifier ;) })))
(translation_unit (function_definition TYPE (ERROR IDENT) (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) , LIT , LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence '))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (unary_expression ! IDENT))) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) || (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))) })) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }))) (return_statement return IDENT ;) })))
(function_definition "undefined4 __regparm3 FUN_00026650(int param_1)\n\n{\n  undefined2 uVar1;\n  size_t sVar2;\n  undefined4 uVar3;\n  bool bVar4;\n  undefined8 uVar5;\n  undefined1 local_4c [2];\n  undefined1 local_4a [2];\n  undefined1 local_48 [4];\n  undefined1 local_44 [4];\n  undefined1 local_40 [4];\n  undefined1 local_3c [4];\n  undefined1 local_38 [4];\n  undefined1 local_34 [2];\n  undefined1 local_32 [2];\n  undefined1 local_30 [2];\n  undefined1 local_2e [2];\n  undefined1 local_2c [2];\n  undefined1 local_2a [2];\n  undefined1 local_28 [2];\n  undefined1 local_26 [2];\n  undefined1 local_24 [2];\n  undefined1 local_22 [2];\n  undefined1 local_20 [2];\n  undefined1 local_1e [10];\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2665e;\n  sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4));\n  if (sVar2 == 1) {\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    uVar3 = 0;\n  }\n  return uVar3;\n}" (type_identifier "undefined4") (ERROR "__regparm3" (identifier "__regparm3")) (function_declarator "FUN_00026650(int param_1)" (identifier "FUN_00026650") (parameter_list "(int param_1)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) () ")"))) (compound_statement "{\n  undefined2 uVar1;\n  size_t sVar2;\n  undefined4 uVar3;\n  bool bVar4;\n  undefined8 uVar5;\n  undefined1 local_4c [2];\n  undefined1 local_4a [2];\n  undefined1 local_48 [4];\n  undefined1 local_44 [4];\n  undefined1 local_40 [4];\n  undefined1 local_3c [4];\n  undefined1 local_38 [4];\n  undefined1 local_34 [2];\n  undefined1 local_32 [2];\n  undefined1 local_30 [2];\n  undefined1 local_2e [2];\n  undefined1 local_2c [2];\n  undefined1 local_2a [2];\n  undefined1 local_28 [2];\n  undefined1 local_26 [2];\n  undefined1 local_24 [2];\n  undefined1 local_22 [2];\n  undefined1 local_20 [2];\n  undefined1 local_1e [10];\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2665e;\n  sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4));\n  if (sVar2 == 1) {\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    uVar3 = 0;\n  }\n  return uVar3;\n}" ({ "{") (declaration "undefined2 uVar1;" (type_identifier "undefined2") (identifier "uVar1") (; ";")) (declaration "size_t sVar2;" (primitive_type "size_t") (identifier "sVar2") (; ";")) (declaration "undefined4 uVar3;" (type_identifier "undefined4") (identifier "uVar3") (; ";")) (declaration "bool bVar4;" (primitive_type "bool") (identifier "bVar4") (; ";")) (declaration "undefined8 uVar5;" (type_identifier "undefined8") (identifier "uVar5") (; ";")) (declaration "undefined1 local_4c [2];" (type_identifier "undefined1") (array_declarator "local_4c [2]" (identifier "local_4c") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined1 local_4a [2];" (type_identifier "undefined1") (array_declarator "local_4a [2]" (identifier "local_4a") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined1 local_48 [4];" (type_identifier "undefined1") (array_declarator "local_48 [4]" (identifier "local_48") ([ "[") (number_literal "4") (] "]")) (; ";")) (declaration "undefined1 local_44 [4];" (type_identifier "undefined1") (array_declarator "local_44 [4]" (identifier "local_44") ([ "[") (number_literal "4") (] "]")) (; ";")) (declaration "undefined1 local_40 [4];" (type_identifier "undefined1") (array_declarator "local_40 [4]" (identifier "local_40") ([ "[") (number_literal "4") (] "]")) (; ";")) (declaration "undefined1 local_3c [4];" (type_identifier "undefined1") (array_declarator "local_3c [4]" (identifier "local_3c") ([ "[") (number_literal "4") (] "]")) (; ";")) (declaration "undefined1 local_38 [4];" (type_identifier "undefined1") (array_declarator "local_38 [4]" (identifier "local_38") ([ "[") (number_literal "4") (] "]")) (; ";")) (declaration "undefined1 local_34 [2];" (type_identifier "undefined1") (array_declarator "local_34 [2]" (identifier "local_34") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined1 local_32 [2];" (type_identifier "undefined1") (array_declarator "local_32 [2]" (identifier "local_32") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined1 local_30 [2];" (type_identifier "undefined1") (array_declarator "local_30 [2]" (identifier "local_30") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined1 local_2e [2];" (type_identifier "undefined1") (array_declarator "local_2e [2]" (identifier "local_2e") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined1 local_2c [2];" (type_identifier "undefined1") (array_declarator "local_2c [2]" (identifier "local_2c") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined1 local_2a [2];" (type_identifier "undefined1") (array_declarator "local_2a [2]" (identifier "local_2a") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined1 local_28 [2];" (type_identifier "undefined1") (array_declarator "local_28 [2]" (identifier "local_28") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined1 local_26 [2];" (type_identifier "undefined1") (array_declarator "local_26 [2]" (identifier "local_26") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined1 local_24 [2];" (type_identifier "undefined1") (array_declarator "local_24 [2]" (identifier "local_24") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined1 local_22 [2];" (type_identifier "undefined1") (array_declarator "local_22 [2]" (identifier "local_22") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined1 local_20 [2];" (type_identifier "undefined1") (array_declarator "local_20 [2]" (identifier "local_20") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined1 local_1e [10];" (type_identifier "undefined1") (array_declarator "local_1e [10]" (identifier "local_1e") ([ "[") (number_literal "10") (] "]")) (; ";")) (declaration "undefined4 uStack_14;" (type_identifier "undefined4") (identifier "uStack_14") (; ";")) (expression_statement "uStack_14 = 0x2665e;" (assignment_expression "uStack_14 = 0x2665e" (identifier "uStack_14") (= "=") (number_literal "0x2665e")) (; ";")) (expression_statement "sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4));" (assignment_expression "sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4))" (identifier "sVar2") (= "=") (call_expression "fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4))" (identifier "fread") (argument_list "((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4))" (( "(") (cast_expression "(void *)(param_1 + 0x10)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10)" (( "(") (binary_expression "param_1 + 0x10" (identifier "param_1") (+ "+") (number_literal "0x10")) () ")"))) (, ",") (number_literal "0x10") (, ",") (number_literal "1") (, ",") (pointer_expression "*(FILE **)(param_1 + 4)" (* "*") (cast_expression "(FILE **)(param_1 + 4)" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 4)" (( "(") (binary_expression "param_1 + 4" (identifier "param_1") (+ "+") (number_literal "4")) () ")")))) () ")")))) (; ";")) (if_statement "if (sVar2 == 1) {\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }\n  else {\nLAB_000267e0:\n    uVar3 = 0;\n  }" (if "if") (parenthesized_expression "(sVar2 == 1)" (( "(") (binary_expression "sVar2 == 1" (identifier "sVar2") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n    if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }\n    bVar4 = *(char *)(param_1 + 0x14) == '\x02';\n    DAT_000b6324 = (uint)!bVar4;\n    if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    uVar3 = 1;\n    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }\n  }" ({ "{") (if_statement "if (*(char *)(param_1 + 0x15) == '\x02') {\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }\n    else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x15) == '\x02')" (( "(") (binary_expression "*(char *)(param_1 + 0x15) == '\x02'" (pointer_expression "*(char *)(param_1 + 0x15)" (* "*") (cast_expression "(char *)(param_1 + 0x15)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x15)" (( "(") (binary_expression "param_1 + 0x15" (identifier "param_1") (+ "+") (number_literal "0x15")) () ")")))) (== "==") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) () ")")) (compound_statement "{\n      DAT_000b9dd4 = FUN_00066720;\n      DAT_000b9dd8 = FUN_00066cf0;\n    }" ({ "{") (expression_statement "DAT_000b9dd4 = FUN_00066720;" (assignment_expression "DAT_000b9dd4 = FUN_00066720" (identifier "DAT_000b9dd4") (= "=") (identifier "FUN_00066720")) (; ";")) (expression_statement "DAT_000b9dd8 = FUN_00066cf0;" (assignment_expression "DAT_000b9dd8 = FUN_00066cf0" (identifier "DAT_000b9dd8") (= "=") (identifier "FUN_00066cf0")) (; ";")) (} "}")) (else_clause "else {\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }" (else "else") (compound_statement "{\n      DAT_000b9dd4 = FUN_00066d70;\n      DAT_000b9dd8 = FUN_00066c60;\n    }" ({ "{") (expression_statement "DAT_000b9dd4 = FUN_00066d70;" (assignment_expression "DAT_000b9dd4 = FUN_00066d70" (identifier "DAT_000b9dd4") (= "=") (identifier "FUN_00066d70")) (; ";")) (expression_statement "DAT_000b9dd8 = FUN_00066c60;" (assignment_expression "DAT_000b9dd8 = FUN_00066c60" (identifier "DAT_000b9dd8") (= "=") (identifier "FUN_00066c60")) (; ";")) (} "}")))) (expression_statement "bVar4 = *(char *)(param_1 + 0x14) == '\x02';" (assignment_expression "bVar4 = *(char *)(param_1 + 0x14) == '\x02'" (identifier "bVar4") (= "=") (binary_expression "*(char *)(param_1 + 0x14) == '\x02'" (pointer_expression "*(char *)(param_1 + 0x14)" (* "*") (cast_expression "(char *)(param_1 + 0x14)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x14)" (( "(") (binary_expression "param_1 + 0x14" (identifier "param_1") (+ "+") (number_literal "0x14")) () ")")))) (== "==") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'")))) (; ";")) (expression_statement "DAT_000b6324 = (uint)!bVar4;" (assignment_expression "DAT_000b6324 = (uint)!bVar4" (identifier "DAT_000b6324") (= "=") (cast_expression "(uint)!bVar4" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (unary_expression "!bVar4" (! "!") (identifier "bVar4")))) (; ";")) (if_statement "if (bVar4) {\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }\n    else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }" (if "if") (parenthesized_expression "(bVar4)" (( "(") (identifier "bVar4") () ")")) (compound_statement "{\n      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,8);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,8);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_34,8);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_2c,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_28,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_26,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_24,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_22,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_20,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_1e,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }" ({ "{") (expression_statement "sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));" (assignment_expression "sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4))" (identifier "sVar2") (= "=") (call_expression "fread(local_4c,0x30,1,*(FILE **)(param_1 + 4))" (identifier "fread") (argument_list "(local_4c,0x30,1,*(FILE **)(param_1 + 4))" (( "(") (identifier "local_4c") (, ",") (number_literal "0x30") (, ",") (number_literal "1") (, ",") (pointer_expression "*(FILE **)(param_1 + 4)" (* "*") (cast_expression "(FILE **)(param_1 + 4)" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 4)" (( "(") (binary_expression "param_1 + 4" (identifier "param_1") (+ "+") (number_literal "4")) () ")")))) () ")")))) (; ";")) (if_statement "if (sVar2 != 1) goto LAB_000267e0;" (if "if") (parenthesized_expression "(sVar2 != 1)" (( "(") (binary_expression "sVar2 != 1" (identifier "sVar2") (!= "!=") (number_literal "1")) () ")")) (goto_statement "goto LAB_000267e0;" (goto "goto") (statement_identifier "LAB_000267e0") (; ";"))) (expression_statement "uVar1 = (*DAT_000b9dd4)(local_4c,2);" (assignment_expression "uVar1 = (*DAT_000b9dd4)(local_4c,2)" (identifier "uVar1") (= "=") (call_expression "(*DAT_000b9dd4)(local_4c,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_4c,2)" (( "(") (identifier "local_4c") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined2 *)(param_1 + 0x40) = uVar1;" (assignment_expression "*(undefined2 *)(param_1 + 0x40) = uVar1" (pointer_expression "*(undefined2 *)(param_1 + 0x40)" (* "*") (cast_expression "(undefined2 *)(param_1 + 0x40)" (( "(") (type_descriptor "undefined2 *" (type_identifier "undefined2") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x40)" (( "(") (binary_expression "param_1 + 0x40" (identifier "param_1") (+ "+") (number_literal "0x40")) () ")")))) (= "=") (identifier "uVar1")) (; ";")) (expression_statement "uVar1 = (*DAT_000b9dd4)(local_4a,2);" (assignment_expression "uVar1 = (*DAT_000b9dd4)(local_4a,2)" (identifier "uVar1") (= "=") (call_expression "(*DAT_000b9dd4)(local_4a,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_4a,2)" (( "(") (identifier "local_4a") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined2 *)(param_1 + 0x42) = uVar1;" (assignment_expression "*(undefined2 *)(param_1 + 0x42) = uVar1" (pointer_expression "*(undefined2 *)(param_1 + 0x42)" (* "*") (cast_expression "(undefined2 *)(param_1 + 0x42)" (( "(") (type_descriptor "undefined2 *" (type_identifier "undefined2") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x42)" (( "(") (binary_expression "param_1 + 0x42" (identifier "param_1") (+ "+") (number_literal "0x42")) () ")")))) (= "=") (identifier "uVar1")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_48,4);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_48,4)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_48,4)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_48,4)" (( "(") (identifier "local_48") (, ",") (number_literal "4") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x38) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x38) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x38)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x38)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x38)" (( "(") (binary_expression "param_1 + 0x38" (identifier "param_1") (+ "+") (number_literal "0x38")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_44,8);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_44,8)" (identifier "uVar5") (= "=") (call_expression "(*DAT_000b9dd4)(local_44,8)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_44,8)" (( "(") (identifier "local_44") (, ",") (number_literal "8") () ")")))) (; ";")) (expression_statement "*(undefined8 *)(param_1 + 0x20) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x20) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x20)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x20)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))) (= "=") (identifier "uVar5")) (; ";")) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_3c,8);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_3c,8)" (identifier "uVar5") (= "=") (call_expression "(*DAT_000b9dd4)(local_3c,8)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_3c,8)" (( "(") (identifier "local_3c") (, ",") (number_literal "8") () ")")))) (; ";")) (expression_statement "*(undefined8 *)(param_1 + 0x28) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x28) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x28)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x28)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x28)" (( "(") (binary_expression "param_1 + 0x28" (identifier "param_1") (+ "+") (number_literal "0x28")) () ")")))) (= "=") (identifier "uVar5")) (; ";")) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_34,8);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_34,8)" (identifier "uVar5") (= "=") (call_expression "(*DAT_000b9dd4)(local_34,8)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_34,8)" (( "(") (identifier "local_34") (, ",") (number_literal "8") () ")")))) (; ";")) (expression_statement "*(undefined8 *)(param_1 + 0x30) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x30) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x30)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x30)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")")))) (= "=") (identifier "uVar5")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_2c,4);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_2c,4)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_2c,4)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_2c,4)" (( "(") (identifier "local_2c") (, ",") (number_literal "4") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x3c) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x3c) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x3c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3c)" (( "(") (binary_expression "param_1 + 0x3c" (identifier "param_1") (+ "+") (number_literal "0x3c")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_28,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_28,2)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_28,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_28,2)" (( "(") (identifier "local_28") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x44) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x44) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x44)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x44)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x44)" (( "(") (binary_expression "param_1 + 0x44" (identifier "param_1") (+ "+") (number_literal "0x44")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_26,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_26,2)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_26,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_26,2)" (( "(") (identifier "local_26") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x48) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x48) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x48)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x48)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x48)" (( "(") (binary_expression "param_1 + 0x48" (identifier "param_1") (+ "+") (number_literal "0x48")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_24,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_24,2)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_24,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_24,2)" (( "(") (identifier "local_24") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x4c) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x4c) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x4c)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x4c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x4c)" (( "(") (binary_expression "param_1 + 0x4c" (identifier "param_1") (+ "+") (number_literal "0x4c")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_22,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_22,2)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_22,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_22,2)" (( "(") (identifier "local_22") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x50) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x50) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x50)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x50)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x50)" (( "(") (binary_expression "param_1 + 0x50" (identifier "param_1") (+ "+") (number_literal "0x50")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_20,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_20,2)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_20,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_20,2)" (( "(") (identifier "local_20") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x54) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x54) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x54)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x54)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x54)" (( "(") (binary_expression "param_1 + 0x54" (identifier "param_1") (+ "+") (number_literal "0x54")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_1e,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_1e,2)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_1e,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_1e,2)" (( "(") (identifier "local_1e") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x58) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x58) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x58)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x58)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x58)" (( "(") (binary_expression "param_1 + 0x58" (identifier "param_1") (+ "+") (number_literal "0x58")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (} "}")) (else_clause "else {\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }" (else "else") (compound_statement "{\n      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));\n      if (sVar2 != 1) goto LAB_000267e0;\n      uVar1 = (*DAT_000b9dd4)(local_4c,2);\n      *(undefined2 *)(param_1 + 0x40) = uVar1;\n      uVar1 = (*DAT_000b9dd4)(local_4a,2);\n      *(undefined2 *)(param_1 + 0x42) = uVar1;\n      uVar3 = (*DAT_000b9dd4)(local_48,4);\n      *(undefined4 *)(param_1 + 0x38) = uVar3;\n      uVar5 = (*DAT_000b9dd4)(local_44,4);\n      *(undefined8 *)(param_1 + 0x20) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_40,4);\n      *(undefined8 *)(param_1 + 0x28) = uVar5;\n      uVar5 = (*DAT_000b9dd4)(local_3c,4);\n      *(undefined8 *)(param_1 + 0x30) = uVar5;\n      uVar3 = (*DAT_000b9dd4)(local_38,4);\n      *(undefined4 *)(param_1 + 0x3c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_34,2);\n      *(undefined4 *)(param_1 + 0x44) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_32,2);\n      *(undefined4 *)(param_1 + 0x48) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_30,2);\n      *(undefined4 *)(param_1 + 0x4c) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2e,2);\n      *(undefined4 *)(param_1 + 0x50) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2c,2);\n      *(undefined4 *)(param_1 + 0x54) = uVar3;\n      uVar3 = (*DAT_000b9dd4)(local_2a,2);\n      *(undefined4 *)(param_1 + 0x58) = uVar3;\n    }" ({ "{") (expression_statement "sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));" (assignment_expression "sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4))" (identifier "sVar2") (= "=") (call_expression "fread(local_4c,0x24,1,*(FILE **)(param_1 + 4))" (identifier "fread") (argument_list "(local_4c,0x24,1,*(FILE **)(param_1 + 4))" (( "(") (identifier "local_4c") (, ",") (number_literal "0x24") (, ",") (number_literal "1") (, ",") (pointer_expression "*(FILE **)(param_1 + 4)" (* "*") (cast_expression "(FILE **)(param_1 + 4)" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 4)" (( "(") (binary_expression "param_1 + 4" (identifier "param_1") (+ "+") (number_literal "4")) () ")")))) () ")")))) (; ";")) (if_statement "if (sVar2 != 1) goto LAB_000267e0;" (if "if") (parenthesized_expression "(sVar2 != 1)" (( "(") (binary_expression "sVar2 != 1" (identifier "sVar2") (!= "!=") (number_literal "1")) () ")")) (goto_statement "goto LAB_000267e0;" (goto "goto") (statement_identifier "LAB_000267e0") (; ";"))) (expression_statement "uVar1 = (*DAT_000b9dd4)(local_4c,2);" (assignment_expression "uVar1 = (*DAT_000b9dd4)(local_4c,2)" (identifier "uVar1") (= "=") (call_expression "(*DAT_000b9dd4)(local_4c,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_4c,2)" (( "(") (identifier "local_4c") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined2 *)(param_1 + 0x40) = uVar1;" (assignment_expression "*(undefined2 *)(param_1 + 0x40) = uVar1" (pointer_expression "*(undefined2 *)(param_1 + 0x40)" (* "*") (cast_expression "(undefined2 *)(param_1 + 0x40)" (( "(") (type_descriptor "undefined2 *" (type_identifier "undefined2") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x40)" (( "(") (binary_expression "param_1 + 0x40" (identifier "param_1") (+ "+") (number_literal "0x40")) () ")")))) (= "=") (identifier "uVar1")) (; ";")) (expression_statement "uVar1 = (*DAT_000b9dd4)(local_4a,2);" (assignment_expression "uVar1 = (*DAT_000b9dd4)(local_4a,2)" (identifier "uVar1") (= "=") (call_expression "(*DAT_000b9dd4)(local_4a,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_4a,2)" (( "(") (identifier "local_4a") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined2 *)(param_1 + 0x42) = uVar1;" (assignment_expression "*(undefined2 *)(param_1 + 0x42) = uVar1" (pointer_expression "*(undefined2 *)(param_1 + 0x42)" (* "*") (cast_expression "(undefined2 *)(param_1 + 0x42)" (( "(") (type_descriptor "undefined2 *" (type_identifier "undefined2") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x42)" (( "(") (binary_expression "param_1 + 0x42" (identifier "param_1") (+ "+") (number_literal "0x42")) () ")")))) (= "=") (identifier "uVar1")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_48,4);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_48,4)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_48,4)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_48,4)" (( "(") (identifier "local_48") (, ",") (number_literal "4") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x38) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x38) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x38)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x38)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x38)" (( "(") (binary_expression "param_1 + 0x38" (identifier "param_1") (+ "+") (number_literal "0x38")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_44,4);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_44,4)" (identifier "uVar5") (= "=") (call_expression "(*DAT_000b9dd4)(local_44,4)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_44,4)" (( "(") (identifier "local_44") (, ",") (number_literal "4") () ")")))) (; ";")) (expression_statement "*(undefined8 *)(param_1 + 0x20) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x20) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x20)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x20)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))) (= "=") (identifier "uVar5")) (; ";")) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_40,4);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_40,4)" (identifier "uVar5") (= "=") (call_expression "(*DAT_000b9dd4)(local_40,4)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_40,4)" (( "(") (identifier "local_40") (, ",") (number_literal "4") () ")")))) (; ";")) (expression_statement "*(undefined8 *)(param_1 + 0x28) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x28) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x28)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x28)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x28)" (( "(") (binary_expression "param_1 + 0x28" (identifier "param_1") (+ "+") (number_literal "0x28")) () ")")))) (= "=") (identifier "uVar5")) (; ";")) (expression_statement "uVar5 = (*DAT_000b9dd4)(local_3c,4);" (assignment_expression "uVar5 = (*DAT_000b9dd4)(local_3c,4)" (identifier "uVar5") (= "=") (call_expression "(*DAT_000b9dd4)(local_3c,4)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_3c,4)" (( "(") (identifier "local_3c") (, ",") (number_literal "4") () ")")))) (; ";")) (expression_statement "*(undefined8 *)(param_1 + 0x30) = uVar5;" (assignment_expression "*(undefined8 *)(param_1 + 0x30) = uVar5" (pointer_expression "*(undefined8 *)(param_1 + 0x30)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x30)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")")))) (= "=") (identifier "uVar5")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_38,4);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_38,4)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_38,4)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_38,4)" (( "(") (identifier "local_38") (, ",") (number_literal "4") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x3c) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x3c) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x3c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3c)" (( "(") (binary_expression "param_1 + 0x3c" (identifier "param_1") (+ "+") (number_literal "0x3c")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_34,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_34,2)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_34,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_34,2)" (( "(") (identifier "local_34") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x44) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x44) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x44)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x44)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x44)" (( "(") (binary_expression "param_1 + 0x44" (identifier "param_1") (+ "+") (number_literal "0x44")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_32,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_32,2)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_32,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_32,2)" (( "(") (identifier "local_32") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x48) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x48) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x48)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x48)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x48)" (( "(") (binary_expression "param_1 + 0x48" (identifier "param_1") (+ "+") (number_literal "0x48")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_30,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_30,2)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_30,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_30,2)" (( "(") (identifier "local_30") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x4c) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x4c) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x4c)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x4c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x4c)" (( "(") (binary_expression "param_1 + 0x4c" (identifier "param_1") (+ "+") (number_literal "0x4c")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_2e,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_2e,2)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_2e,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_2e,2)" (( "(") (identifier "local_2e") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x50) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x50) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x50)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x50)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x50)" (( "(") (binary_expression "param_1 + 0x50" (identifier "param_1") (+ "+") (number_literal "0x50")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_2c,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_2c,2)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_2c,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_2c,2)" (( "(") (identifier "local_2c") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x54) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x54) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x54)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x54)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x54)" (( "(") (binary_expression "param_1 + 0x54" (identifier "param_1") (+ "+") (number_literal "0x54")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "uVar3 = (*DAT_000b9dd4)(local_2a,2);" (assignment_expression "uVar3 = (*DAT_000b9dd4)(local_2a,2)" (identifier "uVar3") (= "=") (call_expression "(*DAT_000b9dd4)(local_2a,2)" (parenthesized_expression "(*DAT_000b9dd4)" (( "(") (pointer_expression "*DAT_000b9dd4" (* "*") (identifier "DAT_000b9dd4")) () ")")) (argument_list "(local_2a,2)" (( "(") (identifier "local_2a") (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x58) = uVar3;" (assignment_expression "*(undefined4 *)(param_1 + 0x58) = uVar3" (pointer_expression "*(undefined4 *)(param_1 + 0x58)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x58)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x58)" (( "(") (binary_expression "param_1 + 0x58" (identifier "param_1") (+ "+") (number_literal "0x58")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (} "}")))) (expression_statement "uVar3 = 1;" (assignment_expression "uVar3 = 1" (identifier "uVar3") (= "=") (number_literal "1")) (; ";")) (if_statement "if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0" (binary_expression "*(int *)(param_1 + 0x34) != 0" (pointer_expression "*(int *)(param_1 + 0x34)" (* "*") (cast_expression "(int *)(param_1 + 0x34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x34)" (( "(") (binary_expression "param_1 + 0x34" (identifier "param_1") (+ "+") (number_literal "0x34")) () ")")))) (!= "!=") (number_literal "0")) (|| "||") (binary_expression "*(int *)(param_1 + 0x30) != 0" (pointer_expression "*(int *)(param_1 + 0x30)" (* "*") (cast_expression "(int *)(param_1 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")")))) (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n      if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }\n    }" ({ "{") (if_statement "if (DAT_000b6324 == 0) {\n        FUN_0001dde0();\n      }\n      else {\n        FUN_0001dad0();\n      }" (if "if") (parenthesized_expression "(DAT_000b6324 == 0)" (( "(") (binary_expression "DAT_000b6324 == 0" (identifier "DAT_000b6324") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        FUN_0001dde0();\n      }" ({ "{") (expression_statement "FUN_0001dde0();" (call_expression "FUN_0001dde0()" (identifier "FUN_0001dde0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n        FUN_0001dad0();\n      }" (else "else") (compound_statement "{\n        FUN_0001dad0();\n      }" ({ "{") (expression_statement "FUN_0001dad0();" (call_expression "FUN_0001dad0()" (identifier "FUN_0001dad0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (} "}"))) (} "}")) (else_clause "else {\nLAB_000267e0:\n    uVar3 = 0;\n  }" (else "else") (compound_statement "{\nLAB_000267e0:\n    uVar3 = 0;\n  }" ({ "{") (labeled_statement "LAB_000267e0:\n    uVar3 = 0;" (statement_identifier "LAB_000267e0") (: ":") (expression_statement "uVar3 = 0;" (assignment_expression "uVar3 = 0" (identifier "uVar3") (= "=") (number_literal "0")) (; ";"))) (} "}")))) (return_statement "return uVar3;" (return "return") (identifier "uVar3") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

type_1 __regparm3 function_1(type_2 *filedata)

{
  size_t var_2;
  type_3 eVar4;
  type_1 bVar2;
  bool bVar3;
  type_4 ehdr32;
  type_5 local_28 [2];
  type_5 local_26 [2];
  type_5 local_24 [2];
  type_5 local_22 [2];
  type_5 local_20 [2];
  type_5 local_1e [10];
  type_6 uStack_14;
  
  uStack_14 = 0x2665e;
  var_2 = var_1(&filedata->file_header,0x10,1,(type_7 *)filedata->handle);
  if (var_2 == 1) {
    if ((filedata->file_header).e_ident[5] == '\x02') {
      byte_get = byte_get_big_endian;
      byte_put = byte_put_big_endian;
    }
    else {
      byte_get = byte_get_little_endian;
      byte_put = byte_put_little_endian;
    }
    bVar3 = (filedata->file_header).e_ident[4] == '\x02';
    var_3 = (type_1)!bVar3;
    if (bVar3) {
      var_2 = var_1(ehdr32.e_type,0x30,1,(type_7 *)filedata->handle);
      if (var_2 != 1) goto LAB_000267e0;
      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_type = (type_3)eVar4;
      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_machine = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_version = (type_3)eVar4;
      eVar4 = (*byte_get)(ehdr32.e_entry,8);
      (filedata->file_header).e_entry = eVar4;
      eVar4 = (*byte_get)(ehdr32.e_shoff,8);
      (filedata->file_header).e_phoff = eVar4;
      eVar4 = (*byte_get)(ehdr32.e_ehsize,8);
      (filedata->file_header).e_shoff = eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,4);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_flags = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(local_28,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_ehsize = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(local_26,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_phentsize = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(local_24,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_phnum = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(local_22,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_shentsize = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(local_20,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_shnum = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(local_1e,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_shstrndx = (type_3)eVar4;
    }
    else {
      var_2 = var_1(ehdr32.e_type,0x24,1,(type_7 *)filedata->handle);
      if (var_2 != 1) goto LAB_000267e0;
      eVar4._0_2_ = (*byte_get)(ehdr32.e_type,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_type = (type_3)eVar4;
      eVar4._0_2_ = (*byte_get)(ehdr32.e_machine,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_machine = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_version,4);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_version = (type_3)eVar4;
      eVar4 = (*byte_get)(ehdr32.e_entry,4);
      (filedata->file_header).e_entry = eVar4;
      eVar4 = (*byte_get)(ehdr32.e_phoff,4);
      (filedata->file_header).e_phoff = eVar4;
      eVar4 = (*byte_get)(ehdr32.e_shoff,4);
      (filedata->file_header).e_shoff = eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_flags,4);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_flags = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_ehsize,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_ehsize = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_phentsize,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_phentsize = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_phnum,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_phnum = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_shentsize,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_shentsize = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_shnum,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_shnum = (type_3)eVar4;
      eVar4._0_4_ = (*byte_get)(ehdr32.e_shstrndx,2);
                    /* WARNING: Store size is inaccurate */
      *(type_3 *)&(filedata->file_header).e_shstrndx = (type_3)eVar4;
    }
    bVar2 = 1;
    if (*(int *)((int)&(filedata->file_header).e_shoff + 4) != 0 ||
        (int)(filedata->file_header).e_shoff != 0) {
      if (var_3 == 0) {
        var_4(filedata,1);
      }
      else {
        var_5(filedata,1);
      }
    }
  }
  else {
LAB_000267e0:
    bVar2 = 0;
  }
  return bVar2;
}


(translation_unit (function_definition type: (type_identifier) (ERROR (identifier)) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (identifier)))) body: (compound_statement (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (number_literal) (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (unary_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))))) (return_statement (identifier)))))

/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

undefined4 __regparm3 MASKED(int param_1)

{
  undefined2 uVar1;
  size_t sVar2;
  undefined4 uVar3;
  bool bVar4;
  undefined8 uVar5;
  undefined1 local_4c [2];
  undefined1 local_4a [2];
  undefined1 local_48 [4];
  undefined1 local_44 [4];
  undefined1 local_40 [4];
  undefined1 local_3c [4];
  undefined1 local_38 [4];
  undefined1 local_34 [2];
  undefined1 local_32 [2];
  undefined1 local_30 [2];
  undefined1 local_2e [2];
  undefined1 local_2c [2];
  undefined1 local_2a [2];
  undefined1 local_28 [2];
  undefined1 local_26 [2];
  undefined1 local_24 [2];
  undefined1 local_22 [2];
  undefined1 local_20 [2];
  undefined1 local_1e [10];
  undefined4 uStack_14;
  
  uStack_14 = 0x2665e;
  sVar2 = fread((void *)(param_1 + 0x10),0x10,1,*(FILE **)(param_1 + 4));
  if (sVar2 == 1) {
    if (*(char *)(param_1 + 0x15) == '\x02') {
      DAT_000b9dd4 = FUN_00066720;
      DAT_000b9dd8 = FUN_00066cf0;
    }
    else {
      DAT_000b9dd4 = FUN_00066d70;
      DAT_000b9dd8 = FUN_00066c60;
    }
    bVar4 = *(char *)(param_1 + 0x14) == '\x02';
    DAT_000b6324 = (uint)!bVar4;
    if (bVar4) {
      sVar2 = fread(local_4c,0x30,1,*(FILE **)(param_1 + 4));
      if (sVar2 != 1) goto LAB_000267e0;
      uVar1 = (*DAT_000b9dd4)(local_4c,2);
      *(undefined2 *)(param_1 + 0x40) = uVar1;
      uVar1 = (*DAT_000b9dd4)(local_4a,2);
      *(undefined2 *)(param_1 + 0x42) = uVar1;
      uVar3 = (*DAT_000b9dd4)(local_48,4);
      *(undefined4 *)(param_1 + 0x38) = uVar3;
      uVar5 = (*DAT_000b9dd4)(local_44,8);
      *(undefined8 *)(param_1 + 0x20) = uVar5;
      uVar5 = (*DAT_000b9dd4)(local_3c,8);
      *(undefined8 *)(param_1 + 0x28) = uVar5;
      uVar5 = (*DAT_000b9dd4)(local_34,8);
      *(undefined8 *)(param_1 + 0x30) = uVar5;
      uVar3 = (*DAT_000b9dd4)(local_2c,4);
      *(undefined4 *)(param_1 + 0x3c) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_28,2);
      *(undefined4 *)(param_1 + 0x44) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_26,2);
      *(undefined4 *)(param_1 + 0x48) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_24,2);
      *(undefined4 *)(param_1 + 0x4c) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_22,2);
      *(undefined4 *)(param_1 + 0x50) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_20,2);
      *(undefined4 *)(param_1 + 0x54) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_1e,2);
      *(undefined4 *)(param_1 + 0x58) = uVar3;
    }
    else {
      sVar2 = fread(local_4c,0x24,1,*(FILE **)(param_1 + 4));
      if (sVar2 != 1) goto LAB_000267e0;
      uVar1 = (*DAT_000b9dd4)(local_4c,2);
      *(undefined2 *)(param_1 + 0x40) = uVar1;
      uVar1 = (*DAT_000b9dd4)(local_4a,2);
      *(undefined2 *)(param_1 + 0x42) = uVar1;
      uVar3 = (*DAT_000b9dd4)(local_48,4);
      *(undefined4 *)(param_1 + 0x38) = uVar3;
      uVar5 = (*DAT_000b9dd4)(local_44,4);
      *(undefined8 *)(param_1 + 0x20) = uVar5;
      uVar5 = (*DAT_000b9dd4)(local_40,4);
      *(undefined8 *)(param_1 + 0x28) = uVar5;
      uVar5 = (*DAT_000b9dd4)(local_3c,4);
      *(undefined8 *)(param_1 + 0x30) = uVar5;
      uVar3 = (*DAT_000b9dd4)(local_38,4);
      *(undefined4 *)(param_1 + 0x3c) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_34,2);
      *(undefined4 *)(param_1 + 0x44) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_32,2);
      *(undefined4 *)(param_1 + 0x48) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_30,2);
      *(undefined4 *)(param_1 + 0x4c) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_2e,2);
      *(undefined4 *)(param_1 + 0x50) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_2c,2);
      *(undefined4 *)(param_1 + 0x54) = uVar3;
      uVar3 = (*DAT_000b9dd4)(local_2a,2);
      *(undefined4 *)(param_1 + 0x58) = uVar3;
    }
    uVar3 = 1;
    if (*(int *)(param_1 + 0x34) != 0 || *(int *)(param_1 + 0x30) != 0) {
      if (DAT_000b6324 == 0) {
        FUN_0001dde0();
      }
      else {
        FUN_0001dad0();
      }
    }
  }
  else {
LAB_000267e0:
    uVar3 = 0;
  }
  return uVar3;
}

