
undefined1  [16] _Unwind_Resume_or_Rethrow(long param_1,undefined8 param_2,undefined8 param_3)

{
  int iVar1;
  undefined8 in_RAX;
  long lVar2;
  undefined1 auVar3 [16];
  undefined8 unaff_retaddr;
  undefined1 local_230 [8];
  undefined8 local_228;
  undefined8 uStack_220;
  undefined8 local_218;
  undefined8 uStack_210;
  undefined8 local_208;
  undefined8 uStack_200;
  undefined8 local_1f8;
  undefined8 uStack_1f0;
  undefined8 local_1e8;
  undefined8 uStack_1e0;
  undefined8 local_1d8;
  undefined8 uStack_1d0;
  undefined8 local_1c8;
  undefined8 uStack_1c0;
  undefined8 local_1b8;
  undefined8 uStack_1b0;
  undefined8 local_1a8;
  undefined8 uStack_1a0;
  undefined8 local_198;
  undefined8 uStack_190;
  undefined8 local_188;
  undefined8 uStack_180;
  undefined8 local_178;
  undefined8 uStack_170;
  undefined8 local_168;
  undefined8 uStack_160;
  undefined8 local_158;
  undefined8 uStack_150;
  undefined8 local_148;
  undefined8 uStack_140;
  undefined8 local_138;
  undefined8 uStack_130;
  undefined8 local_128;
  undefined8 uStack_120;
  undefined8 local_118;
  undefined8 uStack_110;
  undefined8 local_108;
  undefined8 uStack_100;
  undefined8 local_f8;
  undefined8 uStack_f0;
  undefined8 local_e8;
  undefined8 uStack_e0;
  undefined8 local_d8;
  undefined8 uStack_d0;
  undefined8 local_c8;
  undefined8 uStack_c0;
  undefined8 local_b8;
  undefined8 uStack_b0;
  undefined8 local_a8;
  undefined8 uStack_a0;
  undefined8 local_98;
  undefined8 uStack_90;
  undefined8 local_88;
  undefined8 uStack_80;
  undefined8 local_78;
  undefined8 uStack_70;
  undefined8 local_68;
  undefined8 uStack_60;
  undefined8 local_58;
  undefined8 uStack_50;
  undefined8 local_40;
  undefined8 local_38;
  
  local_38 = param_3;
  if (*(long *)(param_1 + 0x10) == 0) {
    auVar3 = _Unwind_RaiseException();
    return auVar3;
  }
  local_40 = in_RAX;
  uw_init_context_1(&local_228,&stack0x00000008,unaff_retaddr);
  local_138 = local_228;
  uStack_130 = uStack_220;
  local_128 = local_218;
  uStack_120 = uStack_210;
  local_118 = local_208;
  uStack_110 = uStack_200;
  local_108 = local_1f8;
  uStack_100 = uStack_1f0;
  local_f8 = local_1e8;
  uStack_f0 = uStack_1e0;
  local_e8 = local_1d8;
  uStack_e0 = uStack_1d0;
  local_d8 = local_1c8;
  uStack_d0 = uStack_1c0;
  local_c8 = local_1b8;
  uStack_c0 = uStack_1b0;
  local_b8 = local_1a8;
  uStack_b0 = uStack_1a0;
  local_a8 = local_198;
  uStack_a0 = uStack_190;
  local_98 = local_188;
  uStack_90 = uStack_180;
  local_88 = local_178;
  uStack_80 = uStack_170;
  local_78 = local_168;
  uStack_70 = uStack_160;
  local_68 = local_158;
  uStack_60 = uStack_150;
  local_58 = local_148;
  uStack_50 = uStack_140;
  iVar1 = _Unwind_ForcedUnwind_Phase2(param_1,&local_138,local_230);
  if (iVar1 == 7) {
    uw_install_context_1(&local_228,&local_138);
    lVar2 = _Unwind_DebugHook(local_a8,uStack_a0);
    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;
    auVar3._8_8_ = local_38;
    auVar3._0_8_ = local_40;
    return auVar3;
  }
                    /* WARNING: Subroutine does not return */
  abort();
}



undefined1  [16] FUN_003c6850(long param_1,undefined8 param_2,undefined8 param_3)

{
  int iVar1;
  undefined8 in_RAX;
  long lVar2;
  undefined1 auVar3 [16];
  undefined8 unaff_retaddr;
  undefined1 local_230 [8];
  undefined8 local_228;
  undefined8 uStack_220;
  undefined8 local_218;
  undefined8 uStack_210;
  undefined8 local_208;
  undefined8 uStack_200;
  undefined8 local_1f8;
  undefined8 uStack_1f0;
  undefined8 local_1e8;
  undefined8 uStack_1e0;
  undefined8 local_1d8;
  undefined8 uStack_1d0;
  undefined8 local_1c8;
  undefined8 uStack_1c0;
  undefined8 local_1b8;
  undefined8 uStack_1b0;
  undefined8 local_1a8;
  undefined8 uStack_1a0;
  undefined8 local_198;
  undefined8 uStack_190;
  undefined8 local_188;
  undefined8 uStack_180;
  undefined8 local_178;
  undefined8 uStack_170;
  undefined8 local_168;
  undefined8 uStack_160;
  undefined8 local_158;
  undefined8 uStack_150;
  undefined8 local_148;
  undefined8 uStack_140;
  undefined8 local_138;
  undefined8 uStack_130;
  undefined8 local_128;
  undefined8 uStack_120;
  undefined8 local_118;
  undefined8 uStack_110;
  undefined8 local_108;
  undefined8 uStack_100;
  undefined8 local_f8;
  undefined8 uStack_f0;
  undefined8 local_e8;
  undefined8 uStack_e0;
  undefined8 local_d8;
  undefined8 uStack_d0;
  undefined8 local_c8;
  undefined8 uStack_c0;
  undefined8 local_b8;
  undefined8 uStack_b0;
  undefined8 local_a8;
  undefined8 uStack_a0;
  undefined8 local_98;
  undefined8 uStack_90;
  undefined8 local_88;
  undefined8 uStack_80;
  undefined8 local_78;
  undefined8 uStack_70;
  undefined8 local_68;
  undefined8 uStack_60;
  undefined8 local_58;
  undefined8 uStack_50;
  undefined8 local_40;
  undefined8 local_38;
  
  local_38 = param_3;
  if (*(long *)(param_1 + 0x10) == 0) {
    auVar3 = FUN_003c6210();
    return auVar3;
  }
  local_40 = in_RAX;
  FUN_003c59e0(&local_228,&stack0x00000008,unaff_retaddr);
  local_138 = local_228;
  uStack_130 = uStack_220;
  local_128 = local_218;
  uStack_120 = uStack_210;
  local_118 = local_208;
  uStack_110 = uStack_200;
  local_108 = local_1f8;
  uStack_100 = uStack_1f0;
  local_f8 = local_1e8;
  uStack_f0 = uStack_1e0;
  local_e8 = local_1d8;
  uStack_e0 = uStack_1d0;
  local_d8 = local_1c8;
  uStack_d0 = uStack_1c0;
  local_c8 = local_1b8;
  uStack_c0 = uStack_1b0;
  local_b8 = local_1a8;
  uStack_b0 = uStack_1a0;
  local_a8 = local_198;
  uStack_a0 = uStack_190;
  local_98 = local_188;
  uStack_90 = uStack_180;
  local_88 = local_178;
  uStack_80 = uStack_170;
  local_78 = local_168;
  uStack_70 = uStack_160;
  local_68 = local_158;
  uStack_60 = uStack_150;
  local_58 = local_148;
  uStack_50 = uStack_140;
  iVar1 = FUN_003c5cc0(param_1,&local_138,local_230);
  if (iVar1 == 7) {
    FUN_003c5dd0(&local_228,&local_138);
    lVar2 = FUN_003c6200(local_a8,uStack_a0);
    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;
    auVar3._8_8_ = local_38;
    auVar3._0_8_ = local_40;
    return auVar3;
  }
                    /* WARNING: Subroutine does not return */
  abort();
}


PUSH RBP
MOV RBP,RSP
PUSH R15
PUSH R14
PUSH R13
PUSH R12
PUSH RBX
MOV RBX,RDI
PUSH RDX
PUSH RAX
SUB RSP,0x1f8
CMP qword ptr [RDI + 0x10],0x0
JZ 0x003c69d8
MOV RDX,qword ptr [RBP + 0x8]
LEA R12,[RBP + -0x220]
LEA RSI,[RBP + 0x10]
MOV RDI,R12
LEA R13,[RBP + -0x130]
CALL 0x003c59e0
MOVDQA XMM0,xmmword ptr [RBP + -0x220]
MOV RSI,R13
MOVDQA XMM1,xmmword ptr [RBP + -0x210]
MOVDQA XMM2,xmmword ptr [RBP + -0x200]
MOVDQA XMM3,xmmword ptr [RBP + -0x1f0]
LEA RDX,[RBP + -0x228]
MOV RDI,RBX
MOVDQA XMM4,xmmword ptr [RBP + -0x1e0]
MOVDQA XMM5,xmmword ptr [RBP + -0x1d0]
MOVAPS xmmword ptr [RBP + -0x130],XMM0
MOVDQA XMM6,xmmword ptr [RBP + -0x1c0]
MOVAPS xmmword ptr [RBP + -0x120],XMM1
MOVDQA XMM7,xmmword ptr [RBP + -0x1b0]
MOVAPS xmmword ptr [RBP + -0x110],XMM2
MOVDQA XMM0,xmmword ptr [RBP + -0x1a0]
MOVDQA XMM1,xmmword ptr [RBP + -0x190]
MOVAPS xmmword ptr [RBP + -0x100],XMM3
MOVDQA XMM2,xmmword ptr [RBP + -0x180]
MOVDQA XMM3,xmmword ptr [RBP + -0x170]
MOVAPS xmmword ptr [RBP + -0xf0],XMM4
MOVDQA XMM4,xmmword ptr [RBP + -0x160]
MOVAPS xmmword ptr [RBP + -0xe0],XMM5
MOVDQA XMM5,xmmword ptr [RBP + -0x150]
MOVAPS xmmword ptr [RBP + -0xd0],XMM6
MOVDQA XMM6,xmmword ptr [RBP + -0x140]
MOVAPS xmmword ptr [RBP + -0xc0],XMM7
MOVAPS xmmword ptr [RBP + -0xb0],XMM0
MOVAPS xmmword ptr [RBP + -0xa0],XMM1
MOVAPS xmmword ptr [RBP + -0x90],XMM2
MOVAPS xmmword ptr [RBP + -0x80],XMM3
MOVAPS xmmword ptr [RBP + -0x70],XMM4
MOVAPS xmmword ptr [RBP + -0x60],XMM5
MOVAPS xmmword ptr [RBP + -0x50],XMM6
CALL 0x003c5cc0
CMP EAX,0x7
JNZ 0x0015a7f9
MOV RSI,R13
MOV RDI,R12
CALL 0x003c5dd0
MOV R8,qword ptr [RBP + -0x98]
MOV RDI,qword ptr [RBP + -0xa0]
MOV RSI,R8
CALL 0x003c6200
MOV RCX,RAX
MOV qword ptr [RBP + RAX*0x1 + 0x8],R8
MOV RAX,qword ptr [RBP + -0x38]
LEA RCX,[RBP + RCX*0x1 + 0x8]
MOV RDX,qword ptr [RBP + -0x30]
MOV RBX,qword ptr [RBP + -0x28]
MOV R12,qword ptr [RBP + -0x20]
MOV R13,qword ptr [RBP + -0x18]
MOV R14,qword ptr [RBP + -0x10]
MOV R15,qword ptr [RBP + -0x8]
MOV RBP,qword ptr [RBP]
MOV RSP,RCX
RET
CALL 0x003c6210
MOV RBX,qword ptr [RBP + -0x28]
MOV R12,qword ptr [RBP + -0x20]
MOV R13,qword ptr [RBP + -0x18]
MOV R14,qword ptr [RBP + -0x10]
MOV R15,qword ptr [RBP + -0x8]
LEAVE
RET
(translation_unit "undefined1  [16] FUN_003c6850(long param_1,undefined8 param_2,undefined8 param_3)\n\n{\n  int iVar1;\n  undefined8 in_RAX;\n  long lVar2;\n  undefined1 auVar3 [16];\n  undefined8 unaff_retaddr;\n  undefined1 local_230 [8];\n  undefined8 local_228;\n  undefined8 uStack_220;\n  undefined8 local_218;\n  undefined8 uStack_210;\n  undefined8 local_208;\n  undefined8 uStack_200;\n  undefined8 local_1f8;\n  undefined8 uStack_1f0;\n  undefined8 local_1e8;\n  undefined8 uStack_1e0;\n  undefined8 local_1d8;\n  undefined8 uStack_1d0;\n  undefined8 local_1c8;\n  undefined8 uStack_1c0;\n  undefined8 local_1b8;\n  undefined8 uStack_1b0;\n  undefined8 local_1a8;\n  undefined8 uStack_1a0;\n  undefined8 local_198;\n  undefined8 uStack_190;\n  undefined8 local_188;\n  undefined8 uStack_180;\n  undefined8 local_178;\n  undefined8 uStack_170;\n  undefined8 local_168;\n  undefined8 uStack_160;\n  undefined8 local_158;\n  undefined8 uStack_150;\n  undefined8 local_148;\n  undefined8 uStack_140;\n  undefined8 local_138;\n  undefined8 uStack_130;\n  undefined8 local_128;\n  undefined8 uStack_120;\n  undefined8 local_118;\n  undefined8 uStack_110;\n  undefined8 local_108;\n  undefined8 uStack_100;\n  undefined8 local_f8;\n  undefined8 uStack_f0;\n  undefined8 local_e8;\n  undefined8 uStack_e0;\n  undefined8 local_d8;\n  undefined8 uStack_d0;\n  undefined8 local_c8;\n  undefined8 uStack_c0;\n  undefined8 local_b8;\n  undefined8 uStack_b0;\n  undefined8 local_a8;\n  undefined8 uStack_a0;\n  undefined8 local_98;\n  undefined8 uStack_90;\n  undefined8 local_88;\n  undefined8 uStack_80;\n  undefined8 local_78;\n  undefined8 uStack_70;\n  undefined8 local_68;\n  undefined8 uStack_60;\n  undefined8 local_58;\n  undefined8 uStack_50;\n  undefined8 local_40;\n  undefined8 local_38;\n  \n  local_38 = param_3;\n  if (*(long *)(param_1 + 0x10) == 0) {\n    auVar3 = FUN_003c6210();\n    return auVar3;\n  }\n  local_40 = in_RAX;\n  FUN_003c59e0(&local_228,&stack0x00000008,unaff_retaddr);\n  local_138 = local_228;\n  uStack_130 = uStack_220;\n  local_128 = local_218;\n  uStack_120 = uStack_210;\n  local_118 = local_208;\n  uStack_110 = uStack_200;\n  local_108 = local_1f8;\n  uStack_100 = uStack_1f0;\n  local_f8 = local_1e8;\n  uStack_f0 = uStack_1e0;\n  local_e8 = local_1d8;\n  uStack_e0 = uStack_1d0;\n  local_d8 = local_1c8;\n  uStack_d0 = uStack_1c0;\n  local_c8 = local_1b8;\n  uStack_c0 = uStack_1b0;\n  local_b8 = local_1a8;\n  uStack_b0 = uStack_1a0;\n  local_a8 = local_198;\n  uStack_a0 = uStack_190;\n  local_98 = local_188;\n  uStack_90 = uStack_180;\n  local_88 = local_178;\n  uStack_80 = uStack_170;\n  local_78 = local_168;\n  uStack_70 = uStack_160;\n  local_68 = local_158;\n  uStack_60 = uStack_150;\n  local_58 = local_148;\n  uStack_50 = uStack_140;\n  iVar1 = FUN_003c5cc0(param_1,&local_138,local_230);\n  if (iVar1 == 7) {\n    FUN_003c5dd0(&local_228,&local_138);\n    lVar2 = FUN_003c6200(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }\n                    /* WARNING: Subroutine does not return */\n  abort();\n}\n\n" (expression_statement "undefined1  [16]" (subscript_expression "undefined1  [16]" identifier [ number_literal ]) ;) (macro_type_specifier "FUN_003c6850(long param_1,undefined8 param_2,undefined8 param_3)" identifier ( (type_descriptor "long param_1" (sized_type_specifier "long param_1" long type_identifier)) (ERROR ",undefined8 param_2,undefined8 param_3" , identifier identifier , identifier identifier) )) ; (compound_statement "{\n  int iVar1;\n  undefined8 in_RAX;\n  long lVar2;\n  undefined1 auVar3 [16];\n  undefined8 unaff_retaddr;\n  undefined1 local_230 [8];\n  undefined8 local_228;\n  undefined8 uStack_220;\n  undefined8 local_218;\n  undefined8 uStack_210;\n  undefined8 local_208;\n  undefined8 uStack_200;\n  undefined8 local_1f8;\n  undefined8 uStack_1f0;\n  undefined8 local_1e8;\n  undefined8 uStack_1e0;\n  undefined8 local_1d8;\n  undefined8 uStack_1d0;\n  undefined8 local_1c8;\n  undefined8 uStack_1c0;\n  undefined8 local_1b8;\n  undefined8 uStack_1b0;\n  undefined8 local_1a8;\n  undefined8 uStack_1a0;\n  undefined8 local_198;\n  undefined8 uStack_190;\n  undefined8 local_188;\n  undefined8 uStack_180;\n  undefined8 local_178;\n  undefined8 uStack_170;\n  undefined8 local_168;\n  undefined8 uStack_160;\n  undefined8 local_158;\n  undefined8 uStack_150;\n  undefined8 local_148;\n  undefined8 uStack_140;\n  undefined8 local_138;\n  undefined8 uStack_130;\n  undefined8 local_128;\n  undefined8 uStack_120;\n  undefined8 local_118;\n  undefined8 uStack_110;\n  undefined8 local_108;\n  undefined8 uStack_100;\n  undefined8 local_f8;\n  undefined8 uStack_f0;\n  undefined8 local_e8;\n  undefined8 uStack_e0;\n  undefined8 local_d8;\n  undefined8 uStack_d0;\n  undefined8 local_c8;\n  undefined8 uStack_c0;\n  undefined8 local_b8;\n  undefined8 uStack_b0;\n  undefined8 local_a8;\n  undefined8 uStack_a0;\n  undefined8 local_98;\n  undefined8 uStack_90;\n  undefined8 local_88;\n  undefined8 uStack_80;\n  undefined8 local_78;\n  undefined8 uStack_70;\n  undefined8 local_68;\n  undefined8 uStack_60;\n  undefined8 local_58;\n  undefined8 uStack_50;\n  undefined8 local_40;\n  undefined8 local_38;\n  \n  local_38 = param_3;\n  if (*(long *)(param_1 + 0x10) == 0) {\n    auVar3 = FUN_003c6210();\n    return auVar3;\n  }\n  local_40 = in_RAX;\n  FUN_003c59e0(&local_228,&stack0x00000008,unaff_retaddr);\n  local_138 = local_228;\n  uStack_130 = uStack_220;\n  local_128 = local_218;\n  uStack_120 = uStack_210;\n  local_118 = local_208;\n  uStack_110 = uStack_200;\n  local_108 = local_1f8;\n  uStack_100 = uStack_1f0;\n  local_f8 = local_1e8;\n  uStack_f0 = uStack_1e0;\n  local_e8 = local_1d8;\n  uStack_e0 = uStack_1d0;\n  local_d8 = local_1c8;\n  uStack_d0 = uStack_1c0;\n  local_c8 = local_1b8;\n  uStack_c0 = uStack_1b0;\n  local_b8 = local_1a8;\n  uStack_b0 = uStack_1a0;\n  local_a8 = local_198;\n  uStack_a0 = uStack_190;\n  local_98 = local_188;\n  uStack_90 = uStack_180;\n  local_88 = local_178;\n  uStack_80 = uStack_170;\n  local_78 = local_168;\n  uStack_70 = uStack_160;\n  local_68 = local_158;\n  uStack_60 = uStack_150;\n  local_58 = local_148;\n  uStack_50 = uStack_140;\n  iVar1 = FUN_003c5cc0(param_1,&local_138,local_230);\n  if (iVar1 == 7) {\n    FUN_003c5dd0(&local_228,&local_138);\n    lVar2 = FUN_003c6200(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }\n                    /* WARNING: Subroutine does not return */\n  abort();\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined8 in_RAX;" type_identifier identifier ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined1 auVar3 [16];" type_identifier (array_declarator "auVar3 [16]" identifier [ number_literal ]) ;) (declaration "undefined8 unaff_retaddr;" type_identifier identifier ;) (declaration "undefined1 local_230 [8];" type_identifier (array_declarator "local_230 [8]" identifier [ number_literal ]) ;) (declaration "undefined8 local_228;" type_identifier identifier ;) (declaration "undefined8 uStack_220;" type_identifier identifier ;) (declaration "undefined8 local_218;" type_identifier identifier ;) (declaration "undefined8 uStack_210;" type_identifier identifier ;) (declaration "undefined8 local_208;" type_identifier identifier ;) (declaration "undefined8 uStack_200;" type_identifier identifier ;) (declaration "undefined8 local_1f8;" type_identifier identifier ;) (declaration "undefined8 uStack_1f0;" type_identifier identifier ;) (declaration "undefined8 local_1e8;" type_identifier identifier ;) (declaration "undefined8 uStack_1e0;" type_identifier identifier ;) (declaration "undefined8 local_1d8;" type_identifier identifier ;) (declaration "undefined8 uStack_1d0;" type_identifier identifier ;) (declaration "undefined8 local_1c8;" type_identifier identifier ;) (declaration "undefined8 uStack_1c0;" type_identifier identifier ;) (declaration "undefined8 local_1b8;" type_identifier identifier ;) (declaration "undefined8 uStack_1b0;" type_identifier identifier ;) (declaration "undefined8 local_1a8;" type_identifier identifier ;) (declaration "undefined8 uStack_1a0;" type_identifier identifier ;) (declaration "undefined8 local_198;" type_identifier identifier ;) (declaration "undefined8 uStack_190;" type_identifier identifier ;) (declaration "undefined8 local_188;" type_identifier identifier ;) (declaration "undefined8 uStack_180;" type_identifier identifier ;) (declaration "undefined8 local_178;" type_identifier identifier ;) (declaration "undefined8 uStack_170;" type_identifier identifier ;) (declaration "undefined8 local_168;" type_identifier identifier ;) (declaration "undefined8 uStack_160;" type_identifier identifier ;) (declaration "undefined8 local_158;" type_identifier identifier ;) (declaration "undefined8 uStack_150;" type_identifier identifier ;) (declaration "undefined8 local_148;" type_identifier identifier ;) (declaration "undefined8 uStack_140;" type_identifier identifier ;) (declaration "undefined8 local_138;" type_identifier identifier ;) (declaration "undefined8 uStack_130;" type_identifier identifier ;) (declaration "undefined8 local_128;" type_identifier identifier ;) (declaration "undefined8 uStack_120;" type_identifier identifier ;) (declaration "undefined8 local_118;" type_identifier identifier ;) (declaration "undefined8 uStack_110;" type_identifier identifier ;) (declaration "undefined8 local_108;" type_identifier identifier ;) (declaration "undefined8 uStack_100;" type_identifier identifier ;) (declaration "undefined8 local_f8;" type_identifier identifier ;) (declaration "undefined8 uStack_f0;" type_identifier identifier ;) (declaration "undefined8 local_e8;" type_identifier identifier ;) (declaration "undefined8 uStack_e0;" type_identifier identifier ;) (declaration "undefined8 local_d8;" type_identifier identifier ;) (declaration "undefined8 uStack_d0;" type_identifier identifier ;) (declaration "undefined8 local_c8;" type_identifier identifier ;) (declaration "undefined8 uStack_c0;" type_identifier identifier ;) (declaration "undefined8 local_b8;" type_identifier identifier ;) (declaration "undefined8 uStack_b0;" type_identifier identifier ;) (declaration "undefined8 local_a8;" type_identifier identifier ;) (declaration "undefined8 uStack_a0;" type_identifier identifier ;) (declaration "undefined8 local_98;" type_identifier identifier ;) (declaration "undefined8 uStack_90;" type_identifier identifier ;) (declaration "undefined8 local_88;" type_identifier identifier ;) (declaration "undefined8 uStack_80;" type_identifier identifier ;) (declaration "undefined8 local_78;" type_identifier identifier ;) (declaration "undefined8 uStack_70;" type_identifier identifier ;) (declaration "undefined8 local_68;" type_identifier identifier ;) (declaration "undefined8 uStack_60;" type_identifier identifier ;) (declaration "undefined8 local_58;" type_identifier identifier ;) (declaration "undefined8 uStack_50;" type_identifier identifier ;) (declaration "undefined8 local_40;" type_identifier identifier ;) (declaration "undefined8 local_38;" type_identifier identifier ;) (expression_statement "local_38 = param_3;" (assignment_expression "local_38 = param_3" identifier = identifier) ;) (if_statement "if (*(long *)(param_1 + 0x10) == 0) {\n    auVar3 = FUN_003c6210();\n    return auVar3;\n  }" if (parenthesized_expression "(*(long *)(param_1 + 0x10) == 0)" ( (binary_expression "*(long *)(param_1 + 0x10) == 0" (pointer_expression "*(long *)(param_1 + 0x10)" * (cast_expression "(long *)(param_1 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    auVar3 = FUN_003c6210();\n    return auVar3;\n  }" { (expression_statement "auVar3 = FUN_003c6210();" (assignment_expression "auVar3 = FUN_003c6210()" identifier = (call_expression "FUN_003c6210()" identifier (argument_list "()" ( )))) ;) (return_statement "return auVar3;" return identifier ;) })) (expression_statement "local_40 = in_RAX;" (assignment_expression "local_40 = in_RAX" identifier = identifier) ;) (expression_statement "FUN_003c59e0(&local_228,&stack0x00000008,unaff_retaddr);" (call_expression "FUN_003c59e0(&local_228,&stack0x00000008,unaff_retaddr)" identifier (argument_list "(&local_228,&stack0x00000008,unaff_retaddr)" ( (pointer_expression "&local_228" & identifier) , (pointer_expression "&stack0x00000008" & identifier) , identifier ))) ;) (expression_statement "local_138 = local_228;" (assignment_expression "local_138 = local_228" identifier = identifier) ;) (expression_statement "uStack_130 = uStack_220;" (assignment_expression "uStack_130 = uStack_220" identifier = identifier) ;) (expression_statement "local_128 = local_218;" (assignment_expression "local_128 = local_218" identifier = identifier) ;) (expression_statement "uStack_120 = uStack_210;" (assignment_expression "uStack_120 = uStack_210" identifier = identifier) ;) (expression_statement "local_118 = local_208;" (assignment_expression "local_118 = local_208" identifier = identifier) ;) (expression_statement "uStack_110 = uStack_200;" (assignment_expression "uStack_110 = uStack_200" identifier = identifier) ;) (expression_statement "local_108 = local_1f8;" (assignment_expression "local_108 = local_1f8" identifier = identifier) ;) (expression_statement "uStack_100 = uStack_1f0;" (assignment_expression "uStack_100 = uStack_1f0" identifier = identifier) ;) (expression_statement "local_f8 = local_1e8;" (assignment_expression "local_f8 = local_1e8" identifier = identifier) ;) (expression_statement "uStack_f0 = uStack_1e0;" (assignment_expression "uStack_f0 = uStack_1e0" identifier = identifier) ;) (expression_statement "local_e8 = local_1d8;" (assignment_expression "local_e8 = local_1d8" identifier = identifier) ;) (expression_statement "uStack_e0 = uStack_1d0;" (assignment_expression "uStack_e0 = uStack_1d0" identifier = identifier) ;) (expression_statement "local_d8 = local_1c8;" (assignment_expression "local_d8 = local_1c8" identifier = identifier) ;) (expression_statement "uStack_d0 = uStack_1c0;" (assignment_expression "uStack_d0 = uStack_1c0" identifier = identifier) ;) (expression_statement "local_c8 = local_1b8;" (assignment_expression "local_c8 = local_1b8" identifier = identifier) ;) (expression_statement "uStack_c0 = uStack_1b0;" (assignment_expression "uStack_c0 = uStack_1b0" identifier = identifier) ;) (expression_statement "local_b8 = local_1a8;" (assignment_expression "local_b8 = local_1a8" identifier = identifier) ;) (expression_statement "uStack_b0 = uStack_1a0;" (assignment_expression "uStack_b0 = uStack_1a0" identifier = identifier) ;) (expression_statement "local_a8 = local_198;" (assignment_expression "local_a8 = local_198" identifier = identifier) ;) (expression_statement "uStack_a0 = uStack_190;" (assignment_expression "uStack_a0 = uStack_190" identifier = identifier) ;) (expression_statement "local_98 = local_188;" (assignment_expression "local_98 = local_188" identifier = identifier) ;) (expression_statement "uStack_90 = uStack_180;" (assignment_expression "uStack_90 = uStack_180" identifier = identifier) ;) (expression_statement "local_88 = local_178;" (assignment_expression "local_88 = local_178" identifier = identifier) ;) (expression_statement "uStack_80 = uStack_170;" (assignment_expression "uStack_80 = uStack_170" identifier = identifier) ;) (expression_statement "local_78 = local_168;" (assignment_expression "local_78 = local_168" identifier = identifier) ;) (expression_statement "uStack_70 = uStack_160;" (assignment_expression "uStack_70 = uStack_160" identifier = identifier) ;) (expression_statement "local_68 = local_158;" (assignment_expression "local_68 = local_158" identifier = identifier) ;) (expression_statement "uStack_60 = uStack_150;" (assignment_expression "uStack_60 = uStack_150" identifier = identifier) ;) (expression_statement "local_58 = local_148;" (assignment_expression "local_58 = local_148" identifier = identifier) ;) (expression_statement "uStack_50 = uStack_140;" (assignment_expression "uStack_50 = uStack_140" identifier = identifier) ;) (expression_statement "iVar1 = FUN_003c5cc0(param_1,&local_138,local_230);" (assignment_expression "iVar1 = FUN_003c5cc0(param_1,&local_138,local_230)" identifier = (call_expression "FUN_003c5cc0(param_1,&local_138,local_230)" identifier (argument_list "(param_1,&local_138,local_230)" ( identifier , (pointer_expression "&local_138" & identifier) , identifier )))) ;) (if_statement "if (iVar1 == 7) {\n    FUN_003c5dd0(&local_228,&local_138);\n    lVar2 = FUN_003c6200(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }" if (parenthesized_expression "(iVar1 == 7)" ( (binary_expression "iVar1 == 7" identifier == number_literal) )) (compound_statement "{\n    FUN_003c5dd0(&local_228,&local_138);\n    lVar2 = FUN_003c6200(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }" { (expression_statement "FUN_003c5dd0(&local_228,&local_138);" (call_expression "FUN_003c5dd0(&local_228,&local_138)" identifier (argument_list "(&local_228,&local_138)" ( (pointer_expression "&local_228" & identifier) , (pointer_expression "&local_138" & identifier) ))) ;) (expression_statement "lVar2 = FUN_003c6200(local_a8,uStack_a0);" (assignment_expression "lVar2 = FUN_003c6200(local_a8,uStack_a0)" identifier = (call_expression "FUN_003c6200(local_a8,uStack_a0)" identifier (argument_list "(local_a8,uStack_a0)" ( identifier , identifier )))) ;) (expression_statement "*(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;" (assignment_expression "*(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0" (pointer_expression "*(undefined8 *)(&stack0x00000000 + lVar2)" * (cast_expression "(undefined8 *)(&stack0x00000000 + lVar2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0x00000000 + lVar2)" ( (binary_expression "&stack0x00000000 + lVar2" (pointer_expression "&stack0x00000000" & identifier) + identifier) )))) = identifier) ;) (expression_statement "auVar3._8_8_ = local_38;" (assignment_expression "auVar3._8_8_ = local_38" (field_expression "auVar3._8_8_" identifier . field_identifier) = identifier) ;) (expression_statement "auVar3._0_8_ = local_40;" (assignment_expression "auVar3._0_8_ = local_40" (field_expression "auVar3._0_8_" identifier . field_identifier) = identifier) ;) (return_statement "return auVar3;" return identifier ;) })) comment (expression_statement "abort();" (call_expression "abort()" identifier (argument_list "()" ( ))) ;) }))
(translation_unit "undefined1  [16] _Unwind_Resume_or_Rethrow(long param_1,undefined8 param_2,undefined8 param_3)\n\n{\n  int iVar1;\n  undefined8 in_RAX;\n  long lVar2;\n  undefined1 auVar3 [16];\n  undefined8 unaff_retaddr;\n  undefined1 local_230 [8];\n  undefined8 local_228;\n  undefined8 uStack_220;\n  undefined8 local_218;\n  undefined8 uStack_210;\n  undefined8 local_208;\n  undefined8 uStack_200;\n  undefined8 local_1f8;\n  undefined8 uStack_1f0;\n  undefined8 local_1e8;\n  undefined8 uStack_1e0;\n  undefined8 local_1d8;\n  undefined8 uStack_1d0;\n  undefined8 local_1c8;\n  undefined8 uStack_1c0;\n  undefined8 local_1b8;\n  undefined8 uStack_1b0;\n  undefined8 local_1a8;\n  undefined8 uStack_1a0;\n  undefined8 local_198;\n  undefined8 uStack_190;\n  undefined8 local_188;\n  undefined8 uStack_180;\n  undefined8 local_178;\n  undefined8 uStack_170;\n  undefined8 local_168;\n  undefined8 uStack_160;\n  undefined8 local_158;\n  undefined8 uStack_150;\n  undefined8 local_148;\n  undefined8 uStack_140;\n  undefined8 local_138;\n  undefined8 uStack_130;\n  undefined8 local_128;\n  undefined8 uStack_120;\n  undefined8 local_118;\n  undefined8 uStack_110;\n  undefined8 local_108;\n  undefined8 uStack_100;\n  undefined8 local_f8;\n  undefined8 uStack_f0;\n  undefined8 local_e8;\n  undefined8 uStack_e0;\n  undefined8 local_d8;\n  undefined8 uStack_d0;\n  undefined8 local_c8;\n  undefined8 uStack_c0;\n  undefined8 local_b8;\n  undefined8 uStack_b0;\n  undefined8 local_a8;\n  undefined8 uStack_a0;\n  undefined8 local_98;\n  undefined8 uStack_90;\n  undefined8 local_88;\n  undefined8 uStack_80;\n  undefined8 local_78;\n  undefined8 uStack_70;\n  undefined8 local_68;\n  undefined8 uStack_60;\n  undefined8 local_58;\n  undefined8 uStack_50;\n  undefined8 local_40;\n  undefined8 local_38;\n  \n  local_38 = param_3;\n  if (*(long *)(param_1 + 0x10) == 0) {\n    auVar3 = _Unwind_RaiseException();\n    return auVar3;\n  }\n  local_40 = in_RAX;\n  uw_init_context_1(&local_228,&stack0x00000008,unaff_retaddr);\n  local_138 = local_228;\n  uStack_130 = uStack_220;\n  local_128 = local_218;\n  uStack_120 = uStack_210;\n  local_118 = local_208;\n  uStack_110 = uStack_200;\n  local_108 = local_1f8;\n  uStack_100 = uStack_1f0;\n  local_f8 = local_1e8;\n  uStack_f0 = uStack_1e0;\n  local_e8 = local_1d8;\n  uStack_e0 = uStack_1d0;\n  local_d8 = local_1c8;\n  uStack_d0 = uStack_1c0;\n  local_c8 = local_1b8;\n  uStack_c0 = uStack_1b0;\n  local_b8 = local_1a8;\n  uStack_b0 = uStack_1a0;\n  local_a8 = local_198;\n  uStack_a0 = uStack_190;\n  local_98 = local_188;\n  uStack_90 = uStack_180;\n  local_88 = local_178;\n  uStack_80 = uStack_170;\n  local_78 = local_168;\n  uStack_70 = uStack_160;\n  local_68 = local_158;\n  uStack_60 = uStack_150;\n  local_58 = local_148;\n  uStack_50 = uStack_140;\n  iVar1 = _Unwind_ForcedUnwind_Phase2(param_1,&local_138,local_230);\n  if (iVar1 == 7) {\n    uw_install_context_1(&local_228,&local_138);\n    lVar2 = _Unwind_DebugHook(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }\n                    /* WARNING: Subroutine does not return */\n  abort();\n}\n\n" (expression_statement "undefined1  [16]" (subscript_expression "undefined1  [16]" identifier [ number_literal ]) ;) (macro_type_specifier "_Unwind_Resume_or_Rethrow(long param_1,undefined8 param_2,undefined8 param_3)" identifier ( (type_descriptor "long param_1" (sized_type_specifier "long param_1" long type_identifier)) (ERROR ",undefined8 param_2,undefined8 param_3" , identifier identifier , identifier identifier) )) ; (compound_statement "{\n  int iVar1;\n  undefined8 in_RAX;\n  long lVar2;\n  undefined1 auVar3 [16];\n  undefined8 unaff_retaddr;\n  undefined1 local_230 [8];\n  undefined8 local_228;\n  undefined8 uStack_220;\n  undefined8 local_218;\n  undefined8 uStack_210;\n  undefined8 local_208;\n  undefined8 uStack_200;\n  undefined8 local_1f8;\n  undefined8 uStack_1f0;\n  undefined8 local_1e8;\n  undefined8 uStack_1e0;\n  undefined8 local_1d8;\n  undefined8 uStack_1d0;\n  undefined8 local_1c8;\n  undefined8 uStack_1c0;\n  undefined8 local_1b8;\n  undefined8 uStack_1b0;\n  undefined8 local_1a8;\n  undefined8 uStack_1a0;\n  undefined8 local_198;\n  undefined8 uStack_190;\n  undefined8 local_188;\n  undefined8 uStack_180;\n  undefined8 local_178;\n  undefined8 uStack_170;\n  undefined8 local_168;\n  undefined8 uStack_160;\n  undefined8 local_158;\n  undefined8 uStack_150;\n  undefined8 local_148;\n  undefined8 uStack_140;\n  undefined8 local_138;\n  undefined8 uStack_130;\n  undefined8 local_128;\n  undefined8 uStack_120;\n  undefined8 local_118;\n  undefined8 uStack_110;\n  undefined8 local_108;\n  undefined8 uStack_100;\n  undefined8 local_f8;\n  undefined8 uStack_f0;\n  undefined8 local_e8;\n  undefined8 uStack_e0;\n  undefined8 local_d8;\n  undefined8 uStack_d0;\n  undefined8 local_c8;\n  undefined8 uStack_c0;\n  undefined8 local_b8;\n  undefined8 uStack_b0;\n  undefined8 local_a8;\n  undefined8 uStack_a0;\n  undefined8 local_98;\n  undefined8 uStack_90;\n  undefined8 local_88;\n  undefined8 uStack_80;\n  undefined8 local_78;\n  undefined8 uStack_70;\n  undefined8 local_68;\n  undefined8 uStack_60;\n  undefined8 local_58;\n  undefined8 uStack_50;\n  undefined8 local_40;\n  undefined8 local_38;\n  \n  local_38 = param_3;\n  if (*(long *)(param_1 + 0x10) == 0) {\n    auVar3 = _Unwind_RaiseException();\n    return auVar3;\n  }\n  local_40 = in_RAX;\n  uw_init_context_1(&local_228,&stack0x00000008,unaff_retaddr);\n  local_138 = local_228;\n  uStack_130 = uStack_220;\n  local_128 = local_218;\n  uStack_120 = uStack_210;\n  local_118 = local_208;\n  uStack_110 = uStack_200;\n  local_108 = local_1f8;\n  uStack_100 = uStack_1f0;\n  local_f8 = local_1e8;\n  uStack_f0 = uStack_1e0;\n  local_e8 = local_1d8;\n  uStack_e0 = uStack_1d0;\n  local_d8 = local_1c8;\n  uStack_d0 = uStack_1c0;\n  local_c8 = local_1b8;\n  uStack_c0 = uStack_1b0;\n  local_b8 = local_1a8;\n  uStack_b0 = uStack_1a0;\n  local_a8 = local_198;\n  uStack_a0 = uStack_190;\n  local_98 = local_188;\n  uStack_90 = uStack_180;\n  local_88 = local_178;\n  uStack_80 = uStack_170;\n  local_78 = local_168;\n  uStack_70 = uStack_160;\n  local_68 = local_158;\n  uStack_60 = uStack_150;\n  local_58 = local_148;\n  uStack_50 = uStack_140;\n  iVar1 = _Unwind_ForcedUnwind_Phase2(param_1,&local_138,local_230);\n  if (iVar1 == 7) {\n    uw_install_context_1(&local_228,&local_138);\n    lVar2 = _Unwind_DebugHook(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }\n                    /* WARNING: Subroutine does not return */\n  abort();\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined8 in_RAX;" type_identifier identifier ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined1 auVar3 [16];" type_identifier (array_declarator "auVar3 [16]" identifier [ number_literal ]) ;) (declaration "undefined8 unaff_retaddr;" type_identifier identifier ;) (declaration "undefined1 local_230 [8];" type_identifier (array_declarator "local_230 [8]" identifier [ number_literal ]) ;) (declaration "undefined8 local_228;" type_identifier identifier ;) (declaration "undefined8 uStack_220;" type_identifier identifier ;) (declaration "undefined8 local_218;" type_identifier identifier ;) (declaration "undefined8 uStack_210;" type_identifier identifier ;) (declaration "undefined8 local_208;" type_identifier identifier ;) (declaration "undefined8 uStack_200;" type_identifier identifier ;) (declaration "undefined8 local_1f8;" type_identifier identifier ;) (declaration "undefined8 uStack_1f0;" type_identifier identifier ;) (declaration "undefined8 local_1e8;" type_identifier identifier ;) (declaration "undefined8 uStack_1e0;" type_identifier identifier ;) (declaration "undefined8 local_1d8;" type_identifier identifier ;) (declaration "undefined8 uStack_1d0;" type_identifier identifier ;) (declaration "undefined8 local_1c8;" type_identifier identifier ;) (declaration "undefined8 uStack_1c0;" type_identifier identifier ;) (declaration "undefined8 local_1b8;" type_identifier identifier ;) (declaration "undefined8 uStack_1b0;" type_identifier identifier ;) (declaration "undefined8 local_1a8;" type_identifier identifier ;) (declaration "undefined8 uStack_1a0;" type_identifier identifier ;) (declaration "undefined8 local_198;" type_identifier identifier ;) (declaration "undefined8 uStack_190;" type_identifier identifier ;) (declaration "undefined8 local_188;" type_identifier identifier ;) (declaration "undefined8 uStack_180;" type_identifier identifier ;) (declaration "undefined8 local_178;" type_identifier identifier ;) (declaration "undefined8 uStack_170;" type_identifier identifier ;) (declaration "undefined8 local_168;" type_identifier identifier ;) (declaration "undefined8 uStack_160;" type_identifier identifier ;) (declaration "undefined8 local_158;" type_identifier identifier ;) (declaration "undefined8 uStack_150;" type_identifier identifier ;) (declaration "undefined8 local_148;" type_identifier identifier ;) (declaration "undefined8 uStack_140;" type_identifier identifier ;) (declaration "undefined8 local_138;" type_identifier identifier ;) (declaration "undefined8 uStack_130;" type_identifier identifier ;) (declaration "undefined8 local_128;" type_identifier identifier ;) (declaration "undefined8 uStack_120;" type_identifier identifier ;) (declaration "undefined8 local_118;" type_identifier identifier ;) (declaration "undefined8 uStack_110;" type_identifier identifier ;) (declaration "undefined8 local_108;" type_identifier identifier ;) (declaration "undefined8 uStack_100;" type_identifier identifier ;) (declaration "undefined8 local_f8;" type_identifier identifier ;) (declaration "undefined8 uStack_f0;" type_identifier identifier ;) (declaration "undefined8 local_e8;" type_identifier identifier ;) (declaration "undefined8 uStack_e0;" type_identifier identifier ;) (declaration "undefined8 local_d8;" type_identifier identifier ;) (declaration "undefined8 uStack_d0;" type_identifier identifier ;) (declaration "undefined8 local_c8;" type_identifier identifier ;) (declaration "undefined8 uStack_c0;" type_identifier identifier ;) (declaration "undefined8 local_b8;" type_identifier identifier ;) (declaration "undefined8 uStack_b0;" type_identifier identifier ;) (declaration "undefined8 local_a8;" type_identifier identifier ;) (declaration "undefined8 uStack_a0;" type_identifier identifier ;) (declaration "undefined8 local_98;" type_identifier identifier ;) (declaration "undefined8 uStack_90;" type_identifier identifier ;) (declaration "undefined8 local_88;" type_identifier identifier ;) (declaration "undefined8 uStack_80;" type_identifier identifier ;) (declaration "undefined8 local_78;" type_identifier identifier ;) (declaration "undefined8 uStack_70;" type_identifier identifier ;) (declaration "undefined8 local_68;" type_identifier identifier ;) (declaration "undefined8 uStack_60;" type_identifier identifier ;) (declaration "undefined8 local_58;" type_identifier identifier ;) (declaration "undefined8 uStack_50;" type_identifier identifier ;) (declaration "undefined8 local_40;" type_identifier identifier ;) (declaration "undefined8 local_38;" type_identifier identifier ;) (expression_statement "local_38 = param_3;" (assignment_expression "local_38 = param_3" identifier = identifier) ;) (if_statement "if (*(long *)(param_1 + 0x10) == 0) {\n    auVar3 = _Unwind_RaiseException();\n    return auVar3;\n  }" if (parenthesized_expression "(*(long *)(param_1 + 0x10) == 0)" ( (binary_expression "*(long *)(param_1 + 0x10) == 0" (pointer_expression "*(long *)(param_1 + 0x10)" * (cast_expression "(long *)(param_1 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    auVar3 = _Unwind_RaiseException();\n    return auVar3;\n  }" { (expression_statement "auVar3 = _Unwind_RaiseException();" (assignment_expression "auVar3 = _Unwind_RaiseException()" identifier = (call_expression "_Unwind_RaiseException()" identifier (argument_list "()" ( )))) ;) (return_statement "return auVar3;" return identifier ;) })) (expression_statement "local_40 = in_RAX;" (assignment_expression "local_40 = in_RAX" identifier = identifier) ;) (expression_statement "uw_init_context_1(&local_228,&stack0x00000008,unaff_retaddr);" (call_expression "uw_init_context_1(&local_228,&stack0x00000008,unaff_retaddr)" identifier (argument_list "(&local_228,&stack0x00000008,unaff_retaddr)" ( (pointer_expression "&local_228" & identifier) , (pointer_expression "&stack0x00000008" & identifier) , identifier ))) ;) (expression_statement "local_138 = local_228;" (assignment_expression "local_138 = local_228" identifier = identifier) ;) (expression_statement "uStack_130 = uStack_220;" (assignment_expression "uStack_130 = uStack_220" identifier = identifier) ;) (expression_statement "local_128 = local_218;" (assignment_expression "local_128 = local_218" identifier = identifier) ;) (expression_statement "uStack_120 = uStack_210;" (assignment_expression "uStack_120 = uStack_210" identifier = identifier) ;) (expression_statement "local_118 = local_208;" (assignment_expression "local_118 = local_208" identifier = identifier) ;) (expression_statement "uStack_110 = uStack_200;" (assignment_expression "uStack_110 = uStack_200" identifier = identifier) ;) (expression_statement "local_108 = local_1f8;" (assignment_expression "local_108 = local_1f8" identifier = identifier) ;) (expression_statement "uStack_100 = uStack_1f0;" (assignment_expression "uStack_100 = uStack_1f0" identifier = identifier) ;) (expression_statement "local_f8 = local_1e8;" (assignment_expression "local_f8 = local_1e8" identifier = identifier) ;) (expression_statement "uStack_f0 = uStack_1e0;" (assignment_expression "uStack_f0 = uStack_1e0" identifier = identifier) ;) (expression_statement "local_e8 = local_1d8;" (assignment_expression "local_e8 = local_1d8" identifier = identifier) ;) (expression_statement "uStack_e0 = uStack_1d0;" (assignment_expression "uStack_e0 = uStack_1d0" identifier = identifier) ;) (expression_statement "local_d8 = local_1c8;" (assignment_expression "local_d8 = local_1c8" identifier = identifier) ;) (expression_statement "uStack_d0 = uStack_1c0;" (assignment_expression "uStack_d0 = uStack_1c0" identifier = identifier) ;) (expression_statement "local_c8 = local_1b8;" (assignment_expression "local_c8 = local_1b8" identifier = identifier) ;) (expression_statement "uStack_c0 = uStack_1b0;" (assignment_expression "uStack_c0 = uStack_1b0" identifier = identifier) ;) (expression_statement "local_b8 = local_1a8;" (assignment_expression "local_b8 = local_1a8" identifier = identifier) ;) (expression_statement "uStack_b0 = uStack_1a0;" (assignment_expression "uStack_b0 = uStack_1a0" identifier = identifier) ;) (expression_statement "local_a8 = local_198;" (assignment_expression "local_a8 = local_198" identifier = identifier) ;) (expression_statement "uStack_a0 = uStack_190;" (assignment_expression "uStack_a0 = uStack_190" identifier = identifier) ;) (expression_statement "local_98 = local_188;" (assignment_expression "local_98 = local_188" identifier = identifier) ;) (expression_statement "uStack_90 = uStack_180;" (assignment_expression "uStack_90 = uStack_180" identifier = identifier) ;) (expression_statement "local_88 = local_178;" (assignment_expression "local_88 = local_178" identifier = identifier) ;) (expression_statement "uStack_80 = uStack_170;" (assignment_expression "uStack_80 = uStack_170" identifier = identifier) ;) (expression_statement "local_78 = local_168;" (assignment_expression "local_78 = local_168" identifier = identifier) ;) (expression_statement "uStack_70 = uStack_160;" (assignment_expression "uStack_70 = uStack_160" identifier = identifier) ;) (expression_statement "local_68 = local_158;" (assignment_expression "local_68 = local_158" identifier = identifier) ;) (expression_statement "uStack_60 = uStack_150;" (assignment_expression "uStack_60 = uStack_150" identifier = identifier) ;) (expression_statement "local_58 = local_148;" (assignment_expression "local_58 = local_148" identifier = identifier) ;) (expression_statement "uStack_50 = uStack_140;" (assignment_expression "uStack_50 = uStack_140" identifier = identifier) ;) (expression_statement "iVar1 = _Unwind_ForcedUnwind_Phase2(param_1,&local_138,local_230);" (assignment_expression "iVar1 = _Unwind_ForcedUnwind_Phase2(param_1,&local_138,local_230)" identifier = (call_expression "_Unwind_ForcedUnwind_Phase2(param_1,&local_138,local_230)" identifier (argument_list "(param_1,&local_138,local_230)" ( identifier , (pointer_expression "&local_138" & identifier) , identifier )))) ;) (if_statement "if (iVar1 == 7) {\n    uw_install_context_1(&local_228,&local_138);\n    lVar2 = _Unwind_DebugHook(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }" if (parenthesized_expression "(iVar1 == 7)" ( (binary_expression "iVar1 == 7" identifier == number_literal) )) (compound_statement "{\n    uw_install_context_1(&local_228,&local_138);\n    lVar2 = _Unwind_DebugHook(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }" { (expression_statement "uw_install_context_1(&local_228,&local_138);" (call_expression "uw_install_context_1(&local_228,&local_138)" identifier (argument_list "(&local_228,&local_138)" ( (pointer_expression "&local_228" & identifier) , (pointer_expression "&local_138" & identifier) ))) ;) (expression_statement "lVar2 = _Unwind_DebugHook(local_a8,uStack_a0);" (assignment_expression "lVar2 = _Unwind_DebugHook(local_a8,uStack_a0)" identifier = (call_expression "_Unwind_DebugHook(local_a8,uStack_a0)" identifier (argument_list "(local_a8,uStack_a0)" ( identifier , identifier )))) ;) (expression_statement "*(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;" (assignment_expression "*(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0" (pointer_expression "*(undefined8 *)(&stack0x00000000 + lVar2)" * (cast_expression "(undefined8 *)(&stack0x00000000 + lVar2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0x00000000 + lVar2)" ( (binary_expression "&stack0x00000000 + lVar2" (pointer_expression "&stack0x00000000" & identifier) + identifier) )))) = identifier) ;) (expression_statement "auVar3._8_8_ = local_38;" (assignment_expression "auVar3._8_8_ = local_38" (field_expression "auVar3._8_8_" identifier . field_identifier) = identifier) ;) (expression_statement "auVar3._0_8_ = local_40;" (assignment_expression "auVar3._0_8_ = local_40" (field_expression "auVar3._0_8_" identifier . field_identifier) = identifier) ;) (return_statement "return auVar3;" return identifier ;) })) comment (expression_statement "abort();" (call_expression "abort()" identifier (argument_list "()" ( ))) ;) }))
(translation_unit "undefined1  [16] FUN_003c6850(long param_1,undefined8 param_2,undefined8 param_3)\n\n{\n  int iVar1;\n  undefined8 in_RAX;\n  long lVar2;\n  undefined1 auVar3 [16];\n  undefined8 unaff_retaddr;\n  undefined1 local_230 [8];\n  undefined8 local_228;\n  undefined8 uStack_220;\n  undefined8 local_218;\n  undefined8 uStack_210;\n  undefined8 local_208;\n  undefined8 uStack_200;\n  undefined8 local_1f8;\n  undefined8 uStack_1f0;\n  undefined8 local_1e8;\n  undefined8 uStack_1e0;\n  undefined8 local_1d8;\n  undefined8 uStack_1d0;\n  undefined8 local_1c8;\n  undefined8 uStack_1c0;\n  undefined8 local_1b8;\n  undefined8 uStack_1b0;\n  undefined8 local_1a8;\n  undefined8 uStack_1a0;\n  undefined8 local_198;\n  undefined8 uStack_190;\n  undefined8 local_188;\n  undefined8 uStack_180;\n  undefined8 local_178;\n  undefined8 uStack_170;\n  undefined8 local_168;\n  undefined8 uStack_160;\n  undefined8 local_158;\n  undefined8 uStack_150;\n  undefined8 local_148;\n  undefined8 uStack_140;\n  undefined8 local_138;\n  undefined8 uStack_130;\n  undefined8 local_128;\n  undefined8 uStack_120;\n  undefined8 local_118;\n  undefined8 uStack_110;\n  undefined8 local_108;\n  undefined8 uStack_100;\n  undefined8 local_f8;\n  undefined8 uStack_f0;\n  undefined8 local_e8;\n  undefined8 uStack_e0;\n  undefined8 local_d8;\n  undefined8 uStack_d0;\n  undefined8 local_c8;\n  undefined8 uStack_c0;\n  undefined8 local_b8;\n  undefined8 uStack_b0;\n  undefined8 local_a8;\n  undefined8 uStack_a0;\n  undefined8 local_98;\n  undefined8 uStack_90;\n  undefined8 local_88;\n  undefined8 uStack_80;\n  undefined8 local_78;\n  undefined8 uStack_70;\n  undefined8 local_68;\n  undefined8 uStack_60;\n  undefined8 local_58;\n  undefined8 uStack_50;\n  undefined8 local_40;\n  undefined8 local_38;\n  \n  local_38 = param_3;\n  if (*(long *)(param_1 + 0x10) == 0) {\n    auVar3 = FUN_003c6210();\n    return auVar3;\n  }\n  local_40 = in_RAX;\n  FUN_003c59e0(&local_228,&stack0x00000008,unaff_retaddr);\n  local_138 = local_228;\n  uStack_130 = uStack_220;\n  local_128 = local_218;\n  uStack_120 = uStack_210;\n  local_118 = local_208;\n  uStack_110 = uStack_200;\n  local_108 = local_1f8;\n  uStack_100 = uStack_1f0;\n  local_f8 = local_1e8;\n  uStack_f0 = uStack_1e0;\n  local_e8 = local_1d8;\n  uStack_e0 = uStack_1d0;\n  local_d8 = local_1c8;\n  uStack_d0 = uStack_1c0;\n  local_c8 = local_1b8;\n  uStack_c0 = uStack_1b0;\n  local_b8 = local_1a8;\n  uStack_b0 = uStack_1a0;\n  local_a8 = local_198;\n  uStack_a0 = uStack_190;\n  local_98 = local_188;\n  uStack_90 = uStack_180;\n  local_88 = local_178;\n  uStack_80 = uStack_170;\n  local_78 = local_168;\n  uStack_70 = uStack_160;\n  local_68 = local_158;\n  uStack_60 = uStack_150;\n  local_58 = local_148;\n  uStack_50 = uStack_140;\n  iVar1 = FUN_003c5cc0(param_1,&local_138,local_230);\n  if (iVar1 == 7) {\n    FUN_003c5dd0(&local_228,&local_138);\n    lVar2 = FUN_003c6200(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }\n                    \n  abort();\n}\n\n" (expression_statement "undefined1  [16]" (subscript_expression "undefined1  [16]" identifier [ number_literal ]) ;) (macro_type_specifier "FUN_003c6850(long param_1,undefined8 param_2,undefined8 param_3)" identifier ( (type_descriptor "long param_1" (sized_type_specifier "long param_1" long type_identifier)) (ERROR ",undefined8 param_2,undefined8 param_3" , identifier identifier , identifier identifier) )) ; (compound_statement "{\n  int iVar1;\n  undefined8 in_RAX;\n  long lVar2;\n  undefined1 auVar3 [16];\n  undefined8 unaff_retaddr;\n  undefined1 local_230 [8];\n  undefined8 local_228;\n  undefined8 uStack_220;\n  undefined8 local_218;\n  undefined8 uStack_210;\n  undefined8 local_208;\n  undefined8 uStack_200;\n  undefined8 local_1f8;\n  undefined8 uStack_1f0;\n  undefined8 local_1e8;\n  undefined8 uStack_1e0;\n  undefined8 local_1d8;\n  undefined8 uStack_1d0;\n  undefined8 local_1c8;\n  undefined8 uStack_1c0;\n  undefined8 local_1b8;\n  undefined8 uStack_1b0;\n  undefined8 local_1a8;\n  undefined8 uStack_1a0;\n  undefined8 local_198;\n  undefined8 uStack_190;\n  undefined8 local_188;\n  undefined8 uStack_180;\n  undefined8 local_178;\n  undefined8 uStack_170;\n  undefined8 local_168;\n  undefined8 uStack_160;\n  undefined8 local_158;\n  undefined8 uStack_150;\n  undefined8 local_148;\n  undefined8 uStack_140;\n  undefined8 local_138;\n  undefined8 uStack_130;\n  undefined8 local_128;\n  undefined8 uStack_120;\n  undefined8 local_118;\n  undefined8 uStack_110;\n  undefined8 local_108;\n  undefined8 uStack_100;\n  undefined8 local_f8;\n  undefined8 uStack_f0;\n  undefined8 local_e8;\n  undefined8 uStack_e0;\n  undefined8 local_d8;\n  undefined8 uStack_d0;\n  undefined8 local_c8;\n  undefined8 uStack_c0;\n  undefined8 local_b8;\n  undefined8 uStack_b0;\n  undefined8 local_a8;\n  undefined8 uStack_a0;\n  undefined8 local_98;\n  undefined8 uStack_90;\n  undefined8 local_88;\n  undefined8 uStack_80;\n  undefined8 local_78;\n  undefined8 uStack_70;\n  undefined8 local_68;\n  undefined8 uStack_60;\n  undefined8 local_58;\n  undefined8 uStack_50;\n  undefined8 local_40;\n  undefined8 local_38;\n  \n  local_38 = param_3;\n  if (*(long *)(param_1 + 0x10) == 0) {\n    auVar3 = FUN_003c6210();\n    return auVar3;\n  }\n  local_40 = in_RAX;\n  FUN_003c59e0(&local_228,&stack0x00000008,unaff_retaddr);\n  local_138 = local_228;\n  uStack_130 = uStack_220;\n  local_128 = local_218;\n  uStack_120 = uStack_210;\n  local_118 = local_208;\n  uStack_110 = uStack_200;\n  local_108 = local_1f8;\n  uStack_100 = uStack_1f0;\n  local_f8 = local_1e8;\n  uStack_f0 = uStack_1e0;\n  local_e8 = local_1d8;\n  uStack_e0 = uStack_1d0;\n  local_d8 = local_1c8;\n  uStack_d0 = uStack_1c0;\n  local_c8 = local_1b8;\n  uStack_c0 = uStack_1b0;\n  local_b8 = local_1a8;\n  uStack_b0 = uStack_1a0;\n  local_a8 = local_198;\n  uStack_a0 = uStack_190;\n  local_98 = local_188;\n  uStack_90 = uStack_180;\n  local_88 = local_178;\n  uStack_80 = uStack_170;\n  local_78 = local_168;\n  uStack_70 = uStack_160;\n  local_68 = local_158;\n  uStack_60 = uStack_150;\n  local_58 = local_148;\n  uStack_50 = uStack_140;\n  iVar1 = FUN_003c5cc0(param_1,&local_138,local_230);\n  if (iVar1 == 7) {\n    FUN_003c5dd0(&local_228,&local_138);\n    lVar2 = FUN_003c6200(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }\n                    \n  abort();\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined8 in_RAX;" type_identifier identifier ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined1 auVar3 [16];" type_identifier (array_declarator "auVar3 [16]" identifier [ number_literal ]) ;) (declaration "undefined8 unaff_retaddr;" type_identifier identifier ;) (declaration "undefined1 local_230 [8];" type_identifier (array_declarator "local_230 [8]" identifier [ number_literal ]) ;) (declaration "undefined8 local_228;" type_identifier identifier ;) (declaration "undefined8 uStack_220;" type_identifier identifier ;) (declaration "undefined8 local_218;" type_identifier identifier ;) (declaration "undefined8 uStack_210;" type_identifier identifier ;) (declaration "undefined8 local_208;" type_identifier identifier ;) (declaration "undefined8 uStack_200;" type_identifier identifier ;) (declaration "undefined8 local_1f8;" type_identifier identifier ;) (declaration "undefined8 uStack_1f0;" type_identifier identifier ;) (declaration "undefined8 local_1e8;" type_identifier identifier ;) (declaration "undefined8 uStack_1e0;" type_identifier identifier ;) (declaration "undefined8 local_1d8;" type_identifier identifier ;) (declaration "undefined8 uStack_1d0;" type_identifier identifier ;) (declaration "undefined8 local_1c8;" type_identifier identifier ;) (declaration "undefined8 uStack_1c0;" type_identifier identifier ;) (declaration "undefined8 local_1b8;" type_identifier identifier ;) (declaration "undefined8 uStack_1b0;" type_identifier identifier ;) (declaration "undefined8 local_1a8;" type_identifier identifier ;) (declaration "undefined8 uStack_1a0;" type_identifier identifier ;) (declaration "undefined8 local_198;" type_identifier identifier ;) (declaration "undefined8 uStack_190;" type_identifier identifier ;) (declaration "undefined8 local_188;" type_identifier identifier ;) (declaration "undefined8 uStack_180;" type_identifier identifier ;) (declaration "undefined8 local_178;" type_identifier identifier ;) (declaration "undefined8 uStack_170;" type_identifier identifier ;) (declaration "undefined8 local_168;" type_identifier identifier ;) (declaration "undefined8 uStack_160;" type_identifier identifier ;) (declaration "undefined8 local_158;" type_identifier identifier ;) (declaration "undefined8 uStack_150;" type_identifier identifier ;) (declaration "undefined8 local_148;" type_identifier identifier ;) (declaration "undefined8 uStack_140;" type_identifier identifier ;) (declaration "undefined8 local_138;" type_identifier identifier ;) (declaration "undefined8 uStack_130;" type_identifier identifier ;) (declaration "undefined8 local_128;" type_identifier identifier ;) (declaration "undefined8 uStack_120;" type_identifier identifier ;) (declaration "undefined8 local_118;" type_identifier identifier ;) (declaration "undefined8 uStack_110;" type_identifier identifier ;) (declaration "undefined8 local_108;" type_identifier identifier ;) (declaration "undefined8 uStack_100;" type_identifier identifier ;) (declaration "undefined8 local_f8;" type_identifier identifier ;) (declaration "undefined8 uStack_f0;" type_identifier identifier ;) (declaration "undefined8 local_e8;" type_identifier identifier ;) (declaration "undefined8 uStack_e0;" type_identifier identifier ;) (declaration "undefined8 local_d8;" type_identifier identifier ;) (declaration "undefined8 uStack_d0;" type_identifier identifier ;) (declaration "undefined8 local_c8;" type_identifier identifier ;) (declaration "undefined8 uStack_c0;" type_identifier identifier ;) (declaration "undefined8 local_b8;" type_identifier identifier ;) (declaration "undefined8 uStack_b0;" type_identifier identifier ;) (declaration "undefined8 local_a8;" type_identifier identifier ;) (declaration "undefined8 uStack_a0;" type_identifier identifier ;) (declaration "undefined8 local_98;" type_identifier identifier ;) (declaration "undefined8 uStack_90;" type_identifier identifier ;) (declaration "undefined8 local_88;" type_identifier identifier ;) (declaration "undefined8 uStack_80;" type_identifier identifier ;) (declaration "undefined8 local_78;" type_identifier identifier ;) (declaration "undefined8 uStack_70;" type_identifier identifier ;) (declaration "undefined8 local_68;" type_identifier identifier ;) (declaration "undefined8 uStack_60;" type_identifier identifier ;) (declaration "undefined8 local_58;" type_identifier identifier ;) (declaration "undefined8 uStack_50;" type_identifier identifier ;) (declaration "undefined8 local_40;" type_identifier identifier ;) (declaration "undefined8 local_38;" type_identifier identifier ;) (expression_statement "local_38 = param_3;" (assignment_expression "local_38 = param_3" identifier = identifier) ;) (if_statement "if (*(long *)(param_1 + 0x10) == 0) {\n    auVar3 = FUN_003c6210();\n    return auVar3;\n  }" if (parenthesized_expression "(*(long *)(param_1 + 0x10) == 0)" ( (binary_expression "*(long *)(param_1 + 0x10) == 0" (pointer_expression "*(long *)(param_1 + 0x10)" * (cast_expression "(long *)(param_1 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    auVar3 = FUN_003c6210();\n    return auVar3;\n  }" { (expression_statement "auVar3 = FUN_003c6210();" (assignment_expression "auVar3 = FUN_003c6210()" identifier = (call_expression "FUN_003c6210()" identifier (argument_list "()" ( )))) ;) (return_statement "return auVar3;" return identifier ;) })) (expression_statement "local_40 = in_RAX;" (assignment_expression "local_40 = in_RAX" identifier = identifier) ;) (expression_statement "FUN_003c59e0(&local_228,&stack0x00000008,unaff_retaddr);" (call_expression "FUN_003c59e0(&local_228,&stack0x00000008,unaff_retaddr)" identifier (argument_list "(&local_228,&stack0x00000008,unaff_retaddr)" ( (pointer_expression "&local_228" & identifier) , (pointer_expression "&stack0x00000008" & identifier) , identifier ))) ;) (expression_statement "local_138 = local_228;" (assignment_expression "local_138 = local_228" identifier = identifier) ;) (expression_statement "uStack_130 = uStack_220;" (assignment_expression "uStack_130 = uStack_220" identifier = identifier) ;) (expression_statement "local_128 = local_218;" (assignment_expression "local_128 = local_218" identifier = identifier) ;) (expression_statement "uStack_120 = uStack_210;" (assignment_expression "uStack_120 = uStack_210" identifier = identifier) ;) (expression_statement "local_118 = local_208;" (assignment_expression "local_118 = local_208" identifier = identifier) ;) (expression_statement "uStack_110 = uStack_200;" (assignment_expression "uStack_110 = uStack_200" identifier = identifier) ;) (expression_statement "local_108 = local_1f8;" (assignment_expression "local_108 = local_1f8" identifier = identifier) ;) (expression_statement "uStack_100 = uStack_1f0;" (assignment_expression "uStack_100 = uStack_1f0" identifier = identifier) ;) (expression_statement "local_f8 = local_1e8;" (assignment_expression "local_f8 = local_1e8" identifier = identifier) ;) (expression_statement "uStack_f0 = uStack_1e0;" (assignment_expression "uStack_f0 = uStack_1e0" identifier = identifier) ;) (expression_statement "local_e8 = local_1d8;" (assignment_expression "local_e8 = local_1d8" identifier = identifier) ;) (expression_statement "uStack_e0 = uStack_1d0;" (assignment_expression "uStack_e0 = uStack_1d0" identifier = identifier) ;) (expression_statement "local_d8 = local_1c8;" (assignment_expression "local_d8 = local_1c8" identifier = identifier) ;) (expression_statement "uStack_d0 = uStack_1c0;" (assignment_expression "uStack_d0 = uStack_1c0" identifier = identifier) ;) (expression_statement "local_c8 = local_1b8;" (assignment_expression "local_c8 = local_1b8" identifier = identifier) ;) (expression_statement "uStack_c0 = uStack_1b0;" (assignment_expression "uStack_c0 = uStack_1b0" identifier = identifier) ;) (expression_statement "local_b8 = local_1a8;" (assignment_expression "local_b8 = local_1a8" identifier = identifier) ;) (expression_statement "uStack_b0 = uStack_1a0;" (assignment_expression "uStack_b0 = uStack_1a0" identifier = identifier) ;) (expression_statement "local_a8 = local_198;" (assignment_expression "local_a8 = local_198" identifier = identifier) ;) (expression_statement "uStack_a0 = uStack_190;" (assignment_expression "uStack_a0 = uStack_190" identifier = identifier) ;) (expression_statement "local_98 = local_188;" (assignment_expression "local_98 = local_188" identifier = identifier) ;) (expression_statement "uStack_90 = uStack_180;" (assignment_expression "uStack_90 = uStack_180" identifier = identifier) ;) (expression_statement "local_88 = local_178;" (assignment_expression "local_88 = local_178" identifier = identifier) ;) (expression_statement "uStack_80 = uStack_170;" (assignment_expression "uStack_80 = uStack_170" identifier = identifier) ;) (expression_statement "local_78 = local_168;" (assignment_expression "local_78 = local_168" identifier = identifier) ;) (expression_statement "uStack_70 = uStack_160;" (assignment_expression "uStack_70 = uStack_160" identifier = identifier) ;) (expression_statement "local_68 = local_158;" (assignment_expression "local_68 = local_158" identifier = identifier) ;) (expression_statement "uStack_60 = uStack_150;" (assignment_expression "uStack_60 = uStack_150" identifier = identifier) ;) (expression_statement "local_58 = local_148;" (assignment_expression "local_58 = local_148" identifier = identifier) ;) (expression_statement "uStack_50 = uStack_140;" (assignment_expression "uStack_50 = uStack_140" identifier = identifier) ;) (expression_statement "iVar1 = FUN_003c5cc0(param_1,&local_138,local_230);" (assignment_expression "iVar1 = FUN_003c5cc0(param_1,&local_138,local_230)" identifier = (call_expression "FUN_003c5cc0(param_1,&local_138,local_230)" identifier (argument_list "(param_1,&local_138,local_230)" ( identifier , (pointer_expression "&local_138" & identifier) , identifier )))) ;) (if_statement "if (iVar1 == 7) {\n    FUN_003c5dd0(&local_228,&local_138);\n    lVar2 = FUN_003c6200(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }" if (parenthesized_expression "(iVar1 == 7)" ( (binary_expression "iVar1 == 7" identifier == number_literal) )) (compound_statement "{\n    FUN_003c5dd0(&local_228,&local_138);\n    lVar2 = FUN_003c6200(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }" { (expression_statement "FUN_003c5dd0(&local_228,&local_138);" (call_expression "FUN_003c5dd0(&local_228,&local_138)" identifier (argument_list "(&local_228,&local_138)" ( (pointer_expression "&local_228" & identifier) , (pointer_expression "&local_138" & identifier) ))) ;) (expression_statement "lVar2 = FUN_003c6200(local_a8,uStack_a0);" (assignment_expression "lVar2 = FUN_003c6200(local_a8,uStack_a0)" identifier = (call_expression "FUN_003c6200(local_a8,uStack_a0)" identifier (argument_list "(local_a8,uStack_a0)" ( identifier , identifier )))) ;) (expression_statement "*(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;" (assignment_expression "*(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0" (pointer_expression "*(undefined8 *)(&stack0x00000000 + lVar2)" * (cast_expression "(undefined8 *)(&stack0x00000000 + lVar2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0x00000000 + lVar2)" ( (binary_expression "&stack0x00000000 + lVar2" (pointer_expression "&stack0x00000000" & identifier) + identifier) )))) = identifier) ;) (expression_statement "auVar3._8_8_ = local_38;" (assignment_expression "auVar3._8_8_ = local_38" (field_expression "auVar3._8_8_" identifier . field_identifier) = identifier) ;) (expression_statement "auVar3._0_8_ = local_40;" (assignment_expression "auVar3._0_8_ = local_40" (field_expression "auVar3._0_8_" identifier . field_identifier) = identifier) ;) (return_statement "return auVar3;" return identifier ;) })) (expression_statement "abort();" (call_expression "abort()" identifier (argument_list "()" ( ))) ;) }))
(translation_unit (expression_statement (subscript_expression IDENT [ LIT ]) ;) (macro_type_specifier IDENT ( (type_descriptor (sized_type_specifier long TYPE)) (ERROR , IDENT IDENT , IDENT IDENT) )) ; (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression & IDENT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) = IDENT) ;) (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = IDENT) ;) (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = IDENT) ;) (return_statement return IDENT ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))
(expression_statement "undefined1  [16]" (subscript_expression "undefined1  [16]" (identifier "undefined1") ([ "[") (number_literal "16") (] "]")) (; "")) (macro_type_specifier "FUN_003c6850(long param_1,undefined8 param_2,undefined8 param_3)" (identifier "FUN_003c6850") (( "(") (type_descriptor "long param_1" (sized_type_specifier "long param_1" (long "long") (type_identifier "param_1"))) (ERROR ",undefined8 param_2,undefined8 param_3" (, ",") (identifier "undefined8") (identifier "param_2") (, ",") (identifier "undefined8") (identifier "param_3")) () ")")) (; "") (compound_statement "{\n  int iVar1;\n  undefined8 in_RAX;\n  long lVar2;\n  undefined1 auVar3 [16];\n  undefined8 unaff_retaddr;\n  undefined1 local_230 [8];\n  undefined8 local_228;\n  undefined8 uStack_220;\n  undefined8 local_218;\n  undefined8 uStack_210;\n  undefined8 local_208;\n  undefined8 uStack_200;\n  undefined8 local_1f8;\n  undefined8 uStack_1f0;\n  undefined8 local_1e8;\n  undefined8 uStack_1e0;\n  undefined8 local_1d8;\n  undefined8 uStack_1d0;\n  undefined8 local_1c8;\n  undefined8 uStack_1c0;\n  undefined8 local_1b8;\n  undefined8 uStack_1b0;\n  undefined8 local_1a8;\n  undefined8 uStack_1a0;\n  undefined8 local_198;\n  undefined8 uStack_190;\n  undefined8 local_188;\n  undefined8 uStack_180;\n  undefined8 local_178;\n  undefined8 uStack_170;\n  undefined8 local_168;\n  undefined8 uStack_160;\n  undefined8 local_158;\n  undefined8 uStack_150;\n  undefined8 local_148;\n  undefined8 uStack_140;\n  undefined8 local_138;\n  undefined8 uStack_130;\n  undefined8 local_128;\n  undefined8 uStack_120;\n  undefined8 local_118;\n  undefined8 uStack_110;\n  undefined8 local_108;\n  undefined8 uStack_100;\n  undefined8 local_f8;\n  undefined8 uStack_f0;\n  undefined8 local_e8;\n  undefined8 uStack_e0;\n  undefined8 local_d8;\n  undefined8 uStack_d0;\n  undefined8 local_c8;\n  undefined8 uStack_c0;\n  undefined8 local_b8;\n  undefined8 uStack_b0;\n  undefined8 local_a8;\n  undefined8 uStack_a0;\n  undefined8 local_98;\n  undefined8 uStack_90;\n  undefined8 local_88;\n  undefined8 uStack_80;\n  undefined8 local_78;\n  undefined8 uStack_70;\n  undefined8 local_68;\n  undefined8 uStack_60;\n  undefined8 local_58;\n  undefined8 uStack_50;\n  undefined8 local_40;\n  undefined8 local_38;\n  \n  local_38 = param_3;\n  if (*(long *)(param_1 + 0x10) == 0) {\n    auVar3 = FUN_003c6210();\n    return auVar3;\n  }\n  local_40 = in_RAX;\n  FUN_003c59e0(&local_228,&stack0x00000008,unaff_retaddr);\n  local_138 = local_228;\n  uStack_130 = uStack_220;\n  local_128 = local_218;\n  uStack_120 = uStack_210;\n  local_118 = local_208;\n  uStack_110 = uStack_200;\n  local_108 = local_1f8;\n  uStack_100 = uStack_1f0;\n  local_f8 = local_1e8;\n  uStack_f0 = uStack_1e0;\n  local_e8 = local_1d8;\n  uStack_e0 = uStack_1d0;\n  local_d8 = local_1c8;\n  uStack_d0 = uStack_1c0;\n  local_c8 = local_1b8;\n  uStack_c0 = uStack_1b0;\n  local_b8 = local_1a8;\n  uStack_b0 = uStack_1a0;\n  local_a8 = local_198;\n  uStack_a0 = uStack_190;\n  local_98 = local_188;\n  uStack_90 = uStack_180;\n  local_88 = local_178;\n  uStack_80 = uStack_170;\n  local_78 = local_168;\n  uStack_70 = uStack_160;\n  local_68 = local_158;\n  uStack_60 = uStack_150;\n  local_58 = local_148;\n  uStack_50 = uStack_140;\n  iVar1 = FUN_003c5cc0(param_1,&local_138,local_230);\n  if (iVar1 == 7) {\n    FUN_003c5dd0(&local_228,&local_138);\n    lVar2 = FUN_003c6200(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }\n                    \n  abort();\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "undefined8 in_RAX;" (type_identifier "undefined8") (identifier "in_RAX") (; ";")) (declaration "long lVar2;" (sized_type_specifier "long" (long "long")) (identifier "lVar2") (; ";")) (declaration "undefined1 auVar3 [16];" (type_identifier "undefined1") (array_declarator "auVar3 [16]" (identifier "auVar3") ([ "[") (number_literal "16") (] "]")) (; ";")) (declaration "undefined8 unaff_retaddr;" (type_identifier "undefined8") (identifier "unaff_retaddr") (; ";")) (declaration "undefined1 local_230 [8];" (type_identifier "undefined1") (array_declarator "local_230 [8]" (identifier "local_230") ([ "[") (number_literal "8") (] "]")) (; ";")) (declaration "undefined8 local_228;" (type_identifier "undefined8") (identifier "local_228") (; ";")) (declaration "undefined8 uStack_220;" (type_identifier "undefined8") (identifier "uStack_220") (; ";")) (declaration "undefined8 local_218;" (type_identifier "undefined8") (identifier "local_218") (; ";")) (declaration "undefined8 uStack_210;" (type_identifier "undefined8") (identifier "uStack_210") (; ";")) (declaration "undefined8 local_208;" (type_identifier "undefined8") (identifier "local_208") (; ";")) (declaration "undefined8 uStack_200;" (type_identifier "undefined8") (identifier "uStack_200") (; ";")) (declaration "undefined8 local_1f8;" (type_identifier "undefined8") (identifier "local_1f8") (; ";")) (declaration "undefined8 uStack_1f0;" (type_identifier "undefined8") (identifier "uStack_1f0") (; ";")) (declaration "undefined8 local_1e8;" (type_identifier "undefined8") (identifier "local_1e8") (; ";")) (declaration "undefined8 uStack_1e0;" (type_identifier "undefined8") (identifier "uStack_1e0") (; ";")) (declaration "undefined8 local_1d8;" (type_identifier "undefined8") (identifier "local_1d8") (; ";")) (declaration "undefined8 uStack_1d0;" (type_identifier "undefined8") (identifier "uStack_1d0") (; ";")) (declaration "undefined8 local_1c8;" (type_identifier "undefined8") (identifier "local_1c8") (; ";")) (declaration "undefined8 uStack_1c0;" (type_identifier "undefined8") (identifier "uStack_1c0") (; ";")) (declaration "undefined8 local_1b8;" (type_identifier "undefined8") (identifier "local_1b8") (; ";")) (declaration "undefined8 uStack_1b0;" (type_identifier "undefined8") (identifier "uStack_1b0") (; ";")) (declaration "undefined8 local_1a8;" (type_identifier "undefined8") (identifier "local_1a8") (; ";")) (declaration "undefined8 uStack_1a0;" (type_identifier "undefined8") (identifier "uStack_1a0") (; ";")) (declaration "undefined8 local_198;" (type_identifier "undefined8") (identifier "local_198") (; ";")) (declaration "undefined8 uStack_190;" (type_identifier "undefined8") (identifier "uStack_190") (; ";")) (declaration "undefined8 local_188;" (type_identifier "undefined8") (identifier "local_188") (; ";")) (declaration "undefined8 uStack_180;" (type_identifier "undefined8") (identifier "uStack_180") (; ";")) (declaration "undefined8 local_178;" (type_identifier "undefined8") (identifier "local_178") (; ";")) (declaration "undefined8 uStack_170;" (type_identifier "undefined8") (identifier "uStack_170") (; ";")) (declaration "undefined8 local_168;" (type_identifier "undefined8") (identifier "local_168") (; ";")) (declaration "undefined8 uStack_160;" (type_identifier "undefined8") (identifier "uStack_160") (; ";")) (declaration "undefined8 local_158;" (type_identifier "undefined8") (identifier "local_158") (; ";")) (declaration "undefined8 uStack_150;" (type_identifier "undefined8") (identifier "uStack_150") (; ";")) (declaration "undefined8 local_148;" (type_identifier "undefined8") (identifier "local_148") (; ";")) (declaration "undefined8 uStack_140;" (type_identifier "undefined8") (identifier "uStack_140") (; ";")) (declaration "undefined8 local_138;" (type_identifier "undefined8") (identifier "local_138") (; ";")) (declaration "undefined8 uStack_130;" (type_identifier "undefined8") (identifier "uStack_130") (; ";")) (declaration "undefined8 local_128;" (type_identifier "undefined8") (identifier "local_128") (; ";")) (declaration "undefined8 uStack_120;" (type_identifier "undefined8") (identifier "uStack_120") (; ";")) (declaration "undefined8 local_118;" (type_identifier "undefined8") (identifier "local_118") (; ";")) (declaration "undefined8 uStack_110;" (type_identifier "undefined8") (identifier "uStack_110") (; ";")) (declaration "undefined8 local_108;" (type_identifier "undefined8") (identifier "local_108") (; ";")) (declaration "undefined8 uStack_100;" (type_identifier "undefined8") (identifier "uStack_100") (; ";")) (declaration "undefined8 local_f8;" (type_identifier "undefined8") (identifier "local_f8") (; ";")) (declaration "undefined8 uStack_f0;" (type_identifier "undefined8") (identifier "uStack_f0") (; ";")) (declaration "undefined8 local_e8;" (type_identifier "undefined8") (identifier "local_e8") (; ";")) (declaration "undefined8 uStack_e0;" (type_identifier "undefined8") (identifier "uStack_e0") (; ";")) (declaration "undefined8 local_d8;" (type_identifier "undefined8") (identifier "local_d8") (; ";")) (declaration "undefined8 uStack_d0;" (type_identifier "undefined8") (identifier "uStack_d0") (; ";")) (declaration "undefined8 local_c8;" (type_identifier "undefined8") (identifier "local_c8") (; ";")) (declaration "undefined8 uStack_c0;" (type_identifier "undefined8") (identifier "uStack_c0") (; ";")) (declaration "undefined8 local_b8;" (type_identifier "undefined8") (identifier "local_b8") (; ";")) (declaration "undefined8 uStack_b0;" (type_identifier "undefined8") (identifier "uStack_b0") (; ";")) (declaration "undefined8 local_a8;" (type_identifier "undefined8") (identifier "local_a8") (; ";")) (declaration "undefined8 uStack_a0;" (type_identifier "undefined8") (identifier "uStack_a0") (; ";")) (declaration "undefined8 local_98;" (type_identifier "undefined8") (identifier "local_98") (; ";")) (declaration "undefined8 uStack_90;" (type_identifier "undefined8") (identifier "uStack_90") (; ";")) (declaration "undefined8 local_88;" (type_identifier "undefined8") (identifier "local_88") (; ";")) (declaration "undefined8 uStack_80;" (type_identifier "undefined8") (identifier "uStack_80") (; ";")) (declaration "undefined8 local_78;" (type_identifier "undefined8") (identifier "local_78") (; ";")) (declaration "undefined8 uStack_70;" (type_identifier "undefined8") (identifier "uStack_70") (; ";")) (declaration "undefined8 local_68;" (type_identifier "undefined8") (identifier "local_68") (; ";")) (declaration "undefined8 uStack_60;" (type_identifier "undefined8") (identifier "uStack_60") (; ";")) (declaration "undefined8 local_58;" (type_identifier "undefined8") (identifier "local_58") (; ";")) (declaration "undefined8 uStack_50;" (type_identifier "undefined8") (identifier "uStack_50") (; ";")) (declaration "undefined8 local_40;" (type_identifier "undefined8") (identifier "local_40") (; ";")) (declaration "undefined8 local_38;" (type_identifier "undefined8") (identifier "local_38") (; ";")) (expression_statement "local_38 = param_3;" (assignment_expression "local_38 = param_3" (identifier "local_38") (= "=") (identifier "param_3")) (; ";")) (if_statement "if (*(long *)(param_1 + 0x10) == 0) {\n    auVar3 = FUN_003c6210();\n    return auVar3;\n  }" (if "if") (parenthesized_expression "(*(long *)(param_1 + 0x10) == 0)" (( "(") (binary_expression "*(long *)(param_1 + 0x10) == 0" (pointer_expression "*(long *)(param_1 + 0x10)" (* "*") (cast_expression "(long *)(param_1 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10)" (( "(") (binary_expression "param_1 + 0x10" (identifier "param_1") (+ "+") (number_literal "0x10")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    auVar3 = FUN_003c6210();\n    return auVar3;\n  }" ({ "{") (expression_statement "auVar3 = FUN_003c6210();" (assignment_expression "auVar3 = FUN_003c6210()" (identifier "auVar3") (= "=") (call_expression "FUN_003c6210()" (identifier "FUN_003c6210") (argument_list "()" (( "(") () ")")))) (; ";")) (return_statement "return auVar3;" (return "return") (identifier "auVar3") (; ";")) (} "}"))) (expression_statement "local_40 = in_RAX;" (assignment_expression "local_40 = in_RAX" (identifier "local_40") (= "=") (identifier "in_RAX")) (; ";")) (expression_statement "FUN_003c59e0(&local_228,&stack0x00000008,unaff_retaddr);" (call_expression "FUN_003c59e0(&local_228,&stack0x00000008,unaff_retaddr)" (identifier "FUN_003c59e0") (argument_list "(&local_228,&stack0x00000008,unaff_retaddr)" (( "(") (pointer_expression "&local_228" (& "&") (identifier "local_228")) (, ",") (pointer_expression "&stack0x00000008" (& "&") (identifier "stack0x00000008")) (, ",") (identifier "unaff_retaddr") () ")"))) (; ";")) (expression_statement "local_138 = local_228;" (assignment_expression "local_138 = local_228" (identifier "local_138") (= "=") (identifier "local_228")) (; ";")) (expression_statement "uStack_130 = uStack_220;" (assignment_expression "uStack_130 = uStack_220" (identifier "uStack_130") (= "=") (identifier "uStack_220")) (; ";")) (expression_statement "local_128 = local_218;" (assignment_expression "local_128 = local_218" (identifier "local_128") (= "=") (identifier "local_218")) (; ";")) (expression_statement "uStack_120 = uStack_210;" (assignment_expression "uStack_120 = uStack_210" (identifier "uStack_120") (= "=") (identifier "uStack_210")) (; ";")) (expression_statement "local_118 = local_208;" (assignment_expression "local_118 = local_208" (identifier "local_118") (= "=") (identifier "local_208")) (; ";")) (expression_statement "uStack_110 = uStack_200;" (assignment_expression "uStack_110 = uStack_200" (identifier "uStack_110") (= "=") (identifier "uStack_200")) (; ";")) (expression_statement "local_108 = local_1f8;" (assignment_expression "local_108 = local_1f8" (identifier "local_108") (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "uStack_100 = uStack_1f0;" (assignment_expression "uStack_100 = uStack_1f0" (identifier "uStack_100") (= "=") (identifier "uStack_1f0")) (; ";")) (expression_statement "local_f8 = local_1e8;" (assignment_expression "local_f8 = local_1e8" (identifier "local_f8") (= "=") (identifier "local_1e8")) (; ";")) (expression_statement "uStack_f0 = uStack_1e0;" (assignment_expression "uStack_f0 = uStack_1e0" (identifier "uStack_f0") (= "=") (identifier "uStack_1e0")) (; ";")) (expression_statement "local_e8 = local_1d8;" (assignment_expression "local_e8 = local_1d8" (identifier "local_e8") (= "=") (identifier "local_1d8")) (; ";")) (expression_statement "uStack_e0 = uStack_1d0;" (assignment_expression "uStack_e0 = uStack_1d0" (identifier "uStack_e0") (= "=") (identifier "uStack_1d0")) (; ";")) (expression_statement "local_d8 = local_1c8;" (assignment_expression "local_d8 = local_1c8" (identifier "local_d8") (= "=") (identifier "local_1c8")) (; ";")) (expression_statement "uStack_d0 = uStack_1c0;" (assignment_expression "uStack_d0 = uStack_1c0" (identifier "uStack_d0") (= "=") (identifier "uStack_1c0")) (; ";")) (expression_statement "local_c8 = local_1b8;" (assignment_expression "local_c8 = local_1b8" (identifier "local_c8") (= "=") (identifier "local_1b8")) (; ";")) (expression_statement "uStack_c0 = uStack_1b0;" (assignment_expression "uStack_c0 = uStack_1b0" (identifier "uStack_c0") (= "=") (identifier "uStack_1b0")) (; ";")) (expression_statement "local_b8 = local_1a8;" (assignment_expression "local_b8 = local_1a8" (identifier "local_b8") (= "=") (identifier "local_1a8")) (; ";")) (expression_statement "uStack_b0 = uStack_1a0;" (assignment_expression "uStack_b0 = uStack_1a0" (identifier "uStack_b0") (= "=") (identifier "uStack_1a0")) (; ";")) (expression_statement "local_a8 = local_198;" (assignment_expression "local_a8 = local_198" (identifier "local_a8") (= "=") (identifier "local_198")) (; ";")) (expression_statement "uStack_a0 = uStack_190;" (assignment_expression "uStack_a0 = uStack_190" (identifier "uStack_a0") (= "=") (identifier "uStack_190")) (; ";")) (expression_statement "local_98 = local_188;" (assignment_expression "local_98 = local_188" (identifier "local_98") (= "=") (identifier "local_188")) (; ";")) (expression_statement "uStack_90 = uStack_180;" (assignment_expression "uStack_90 = uStack_180" (identifier "uStack_90") (= "=") (identifier "uStack_180")) (; ";")) (expression_statement "local_88 = local_178;" (assignment_expression "local_88 = local_178" (identifier "local_88") (= "=") (identifier "local_178")) (; ";")) (expression_statement "uStack_80 = uStack_170;" (assignment_expression "uStack_80 = uStack_170" (identifier "uStack_80") (= "=") (identifier "uStack_170")) (; ";")) (expression_statement "local_78 = local_168;" (assignment_expression "local_78 = local_168" (identifier "local_78") (= "=") (identifier "local_168")) (; ";")) (expression_statement "uStack_70 = uStack_160;" (assignment_expression "uStack_70 = uStack_160" (identifier "uStack_70") (= "=") (identifier "uStack_160")) (; ";")) (expression_statement "local_68 = local_158;" (assignment_expression "local_68 = local_158" (identifier "local_68") (= "=") (identifier "local_158")) (; ";")) (expression_statement "uStack_60 = uStack_150;" (assignment_expression "uStack_60 = uStack_150" (identifier "uStack_60") (= "=") (identifier "uStack_150")) (; ";")) (expression_statement "local_58 = local_148;" (assignment_expression "local_58 = local_148" (identifier "local_58") (= "=") (identifier "local_148")) (; ";")) (expression_statement "uStack_50 = uStack_140;" (assignment_expression "uStack_50 = uStack_140" (identifier "uStack_50") (= "=") (identifier "uStack_140")) (; ";")) (expression_statement "iVar1 = FUN_003c5cc0(param_1,&local_138,local_230);" (assignment_expression "iVar1 = FUN_003c5cc0(param_1,&local_138,local_230)" (identifier "iVar1") (= "=") (call_expression "FUN_003c5cc0(param_1,&local_138,local_230)" (identifier "FUN_003c5cc0") (argument_list "(param_1,&local_138,local_230)" (( "(") (identifier "param_1") (, ",") (pointer_expression "&local_138" (& "&") (identifier "local_138")) (, ",") (identifier "local_230") () ")")))) (; ";")) (if_statement "if (iVar1 == 7) {\n    FUN_003c5dd0(&local_228,&local_138);\n    lVar2 = FUN_003c6200(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }" (if "if") (parenthesized_expression "(iVar1 == 7)" (( "(") (binary_expression "iVar1 == 7" (identifier "iVar1") (== "==") (number_literal "7")) () ")")) (compound_statement "{\n    FUN_003c5dd0(&local_228,&local_138);\n    lVar2 = FUN_003c6200(local_a8,uStack_a0);\n    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;\n    auVar3._8_8_ = local_38;\n    auVar3._0_8_ = local_40;\n    return auVar3;\n  }" ({ "{") (expression_statement "FUN_003c5dd0(&local_228,&local_138);" (call_expression "FUN_003c5dd0(&local_228,&local_138)" (identifier "FUN_003c5dd0") (argument_list "(&local_228,&local_138)" (( "(") (pointer_expression "&local_228" (& "&") (identifier "local_228")) (, ",") (pointer_expression "&local_138" (& "&") (identifier "local_138")) () ")"))) (; ";")) (expression_statement "lVar2 = FUN_003c6200(local_a8,uStack_a0);" (assignment_expression "lVar2 = FUN_003c6200(local_a8,uStack_a0)" (identifier "lVar2") (= "=") (call_expression "FUN_003c6200(local_a8,uStack_a0)" (identifier "FUN_003c6200") (argument_list "(local_a8,uStack_a0)" (( "(") (identifier "local_a8") (, ",") (identifier "uStack_a0") () ")")))) (; ";")) (expression_statement "*(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;" (assignment_expression "*(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0" (pointer_expression "*(undefined8 *)(&stack0x00000000 + lVar2)" (* "*") (cast_expression "(undefined8 *)(&stack0x00000000 + lVar2)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&stack0x00000000 + lVar2)" (( "(") (binary_expression "&stack0x00000000 + lVar2" (pointer_expression "&stack0x00000000" (& "&") (identifier "stack0x00000000")) (+ "+") (identifier "lVar2")) () ")")))) (= "=") (identifier "uStack_a0")) (; ";")) (expression_statement "auVar3._8_8_ = local_38;" (assignment_expression "auVar3._8_8_ = local_38" (field_expression "auVar3._8_8_" (identifier "auVar3") (. ".") (field_identifier "_8_8_")) (= "=") (identifier "local_38")) (; ";")) (expression_statement "auVar3._0_8_ = local_40;" (assignment_expression "auVar3._0_8_ = local_40" (field_expression "auVar3._0_8_" (identifier "auVar3") (. ".") (field_identifier "_0_8_")) (= "=") (identifier "local_40")) (; ";")) (return_statement "return auVar3;" (return "return") (identifier "auVar3") (; ";")) (} "}"))) (expression_statement "abort();" (call_expression "abort()" (identifier "abort") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))

type_4  [16] type_1(long type_2,type_3 param_2,type_3 param_3)

{
  int var_4;
  type_3 in_RAX;
  long var_7;
  type_4 auVar3 [16];
  type_3 unaff_retaddr;
  type_4 local_230 [8];
  type_3 local_228;
  type_3 uStack_220;
  type_3 local_218;
  type_3 uStack_210;
  type_3 local_208;
  type_3 uStack_200;
  type_3 local_1f8;
  type_3 uStack_1f0;
  type_3 local_1e8;
  type_3 uStack_1e0;
  type_3 local_1d8;
  type_3 uStack_1d0;
  type_3 local_1c8;
  type_3 uStack_1c0;
  type_3 local_1b8;
  type_3 uStack_1b0;
  type_3 local_1a8;
  type_3 uStack_1a0;
  type_3 local_198;
  type_3 uStack_190;
  type_3 local_188;
  type_3 uStack_180;
  type_3 local_178;
  type_3 uStack_170;
  type_3 local_168;
  type_3 uStack_160;
  type_3 local_158;
  type_3 uStack_150;
  type_3 local_148;
  type_3 uStack_140;
  type_3 local_138;
  type_3 uStack_130;
  type_3 local_128;
  type_3 uStack_120;
  type_3 local_118;
  type_3 uStack_110;
  type_3 local_108;
  type_3 uStack_100;
  type_3 local_f8;
  type_3 uStack_f0;
  type_3 local_e8;
  type_3 uStack_e0;
  type_3 local_d8;
  type_3 uStack_d0;
  type_3 local_c8;
  type_3 uStack_c0;
  type_3 local_b8;
  type_3 uStack_b0;
  type_3 local_a8;
  type_3 uStack_a0;
  type_3 local_98;
  type_3 uStack_90;
  type_3 local_88;
  type_3 uStack_80;
  type_3 local_78;
  type_3 uStack_70;
  type_3 local_68;
  type_3 uStack_60;
  type_3 local_58;
  type_3 uStack_50;
  type_3 local_40;
  type_3 local_38;
  
  local_38 = param_3;
  if (*(long *)(type_2 + 0x10) == 0) {
    auVar3 = var_1();
    return auVar3;
  }
  local_40 = in_RAX;
  var_2(&local_228,&stack0x00000008,unaff_retaddr);
  local_138 = local_228;
  uStack_130 = uStack_220;
  local_128 = local_218;
  uStack_120 = uStack_210;
  local_118 = local_208;
  uStack_110 = uStack_200;
  local_108 = local_1f8;
  uStack_100 = uStack_1f0;
  local_f8 = local_1e8;
  uStack_f0 = uStack_1e0;
  local_e8 = local_1d8;
  uStack_e0 = uStack_1d0;
  local_d8 = local_1c8;
  uStack_d0 = uStack_1c0;
  local_c8 = local_1b8;
  uStack_c0 = uStack_1b0;
  local_b8 = local_1a8;
  uStack_b0 = uStack_1a0;
  local_a8 = local_198;
  uStack_a0 = uStack_190;
  local_98 = local_188;
  uStack_90 = uStack_180;
  local_88 = local_178;
  uStack_80 = uStack_170;
  local_78 = local_168;
  uStack_70 = uStack_160;
  local_68 = local_158;
  uStack_60 = uStack_150;
  local_58 = local_148;
  uStack_50 = uStack_140;
  var_4 = var_3(type_2,&local_138,local_230);
  if (var_4 == 7) {
    var_5(&local_228,&local_138);
    var_7 = var_6(local_a8,uStack_a0);
    *(type_3 *)(&stack0x00000000 + var_7) = uStack_a0;
    auVar3._8_8_ = local_38;
    auVar3._0_8_ = local_40;
    return auVar3;
  }
                    /* WARNING: Subroutine does not return */
  var_8();
}


(translation_unit (expression_statement (subscript_expression argument: (identifier) index: (number_literal)) (MISSING ";")) (macro_type_specifier name: (identifier) type: (type_descriptor type: (sized_type_specifier type: (type_identifier))) (ERROR (identifier) (identifier) (identifier) (identifier))) (MISSING ";") (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))) right: (identifier))) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (identifier))) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (identifier))) (return_statement (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))))

undefined1  [16] MASKED(long param_1,undefined8 param_2,undefined8 param_3)

{
  int iVar1;
  undefined8 in_RAX;
  long lVar2;
  undefined1 auVar3 [16];
  undefined8 unaff_retaddr;
  undefined1 local_230 [8];
  undefined8 local_228;
  undefined8 uStack_220;
  undefined8 local_218;
  undefined8 uStack_210;
  undefined8 local_208;
  undefined8 uStack_200;
  undefined8 local_1f8;
  undefined8 uStack_1f0;
  undefined8 local_1e8;
  undefined8 uStack_1e0;
  undefined8 local_1d8;
  undefined8 uStack_1d0;
  undefined8 local_1c8;
  undefined8 uStack_1c0;
  undefined8 local_1b8;
  undefined8 uStack_1b0;
  undefined8 local_1a8;
  undefined8 uStack_1a0;
  undefined8 local_198;
  undefined8 uStack_190;
  undefined8 local_188;
  undefined8 uStack_180;
  undefined8 local_178;
  undefined8 uStack_170;
  undefined8 local_168;
  undefined8 uStack_160;
  undefined8 local_158;
  undefined8 uStack_150;
  undefined8 local_148;
  undefined8 uStack_140;
  undefined8 local_138;
  undefined8 uStack_130;
  undefined8 local_128;
  undefined8 uStack_120;
  undefined8 local_118;
  undefined8 uStack_110;
  undefined8 local_108;
  undefined8 uStack_100;
  undefined8 local_f8;
  undefined8 uStack_f0;
  undefined8 local_e8;
  undefined8 uStack_e0;
  undefined8 local_d8;
  undefined8 uStack_d0;
  undefined8 local_c8;
  undefined8 uStack_c0;
  undefined8 local_b8;
  undefined8 uStack_b0;
  undefined8 local_a8;
  undefined8 uStack_a0;
  undefined8 local_98;
  undefined8 uStack_90;
  undefined8 local_88;
  undefined8 uStack_80;
  undefined8 local_78;
  undefined8 uStack_70;
  undefined8 local_68;
  undefined8 uStack_60;
  undefined8 local_58;
  undefined8 uStack_50;
  undefined8 local_40;
  undefined8 local_38;
  
  local_38 = param_3;
  if (*(long *)(param_1 + 0x10) == 0) {
    auVar3 = FUN_003c6210();
    return auVar3;
  }
  local_40 = in_RAX;
  FUN_003c59e0(&local_228,&stack0x00000008,unaff_retaddr);
  local_138 = local_228;
  uStack_130 = uStack_220;
  local_128 = local_218;
  uStack_120 = uStack_210;
  local_118 = local_208;
  uStack_110 = uStack_200;
  local_108 = local_1f8;
  uStack_100 = uStack_1f0;
  local_f8 = local_1e8;
  uStack_f0 = uStack_1e0;
  local_e8 = local_1d8;
  uStack_e0 = uStack_1d0;
  local_d8 = local_1c8;
  uStack_d0 = uStack_1c0;
  local_c8 = local_1b8;
  uStack_c0 = uStack_1b0;
  local_b8 = local_1a8;
  uStack_b0 = uStack_1a0;
  local_a8 = local_198;
  uStack_a0 = uStack_190;
  local_98 = local_188;
  uStack_90 = uStack_180;
  local_88 = local_178;
  uStack_80 = uStack_170;
  local_78 = local_168;
  uStack_70 = uStack_160;
  local_68 = local_158;
  uStack_60 = uStack_150;
  local_58 = local_148;
  uStack_50 = uStack_140;
  iVar1 = FUN_003c5cc0(param_1,&local_138,local_230);
  if (iVar1 == 7) {
    FUN_003c5dd0(&local_228,&local_138);
    lVar2 = FUN_003c6200(local_a8,uStack_a0);
    *(undefined8 *)(&stack0x00000000 + lVar2) = uStack_a0;
    auVar3._8_8_ = local_38;
    auVar3._0_8_ = local_40;
    return auVar3;
  }
                    /* WARNING: Subroutine does not return */
  abort();
}

