
/* WARNING: Function: __x86.get_pc_thunk.dx replaced with injection: get_pc_thunk_dx */
/* std::ios_base::sync_with_stdio(bool) */

char std::ios_base::sync_with_stdio(bool param_1)

{
  undefined *puVar1;
  undefined *puVar2;
  undefined *puVar3;
  char cVar4;
  Init local_1d [13];
  
  cVar4 = Init::_S_synced_with_stdio;
  if ((!param_1) && (Init::_S_synced_with_stdio != '\0')) {
    Init::Init(local_1d);
    Init::_S_synced_with_stdio = 0;
    __gnu_internal::buf_cout_sync = &PTR__streambuf_004110b0;
    locale::~locale((locale *)&DAT_0041bafc);
    __gnu_internal::buf_cin_sync = &PTR__streambuf_004110b0;
    locale::~locale((locale *)&DAT_0041babc);
    __gnu_internal::buf_cerr_sync = &PTR__streambuf_004110b0;
    locale::~locale((locale *)&DAT_0041ba7c);
    __gnu_internal::buf_wcout_sync = &PTR__wstreambuf_004110f0;
    locale::~locale((locale *)&DAT_0041b85c);
    __gnu_internal::buf_wcin_sync = &PTR__wstreambuf_004110f0;
    locale::~locale((locale *)&DAT_0041b81c);
    __gnu_internal::buf_wcerr_sync = &PTR__wstreambuf_004110f0;
    locale::~locale((locale *)&DAT_0041b7dc);
    puVar1 = PTR_stdout_00413cac;
                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */
    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf
              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cout,
               *(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000);
    puVar2 = PTR_stdin_00413d98;
    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf
              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cin,
               *(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000);
    puVar3 = PTR_stderr_00413fbc;
    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf
              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cerr,
               *(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000);
    ios::rdbuf((streambuf *)&DAT_0041bee4);
    ios::rdbuf((streambuf *)&DAT_0041bf88);
    ios::rdbuf((streambuf *)&DAT_0041be44);
    ios::rdbuf((streambuf *)&DAT_0041bda4);
    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf
              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcout,
               *(_IO_FILE **)puVar1,_S_out,0x2000);
    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf
              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcin,
               *(_IO_FILE **)puVar2,_S_in,0x2000);
    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf
              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcerr,
               *(_IO_FILE **)puVar3,_S_out,0x2000);
    wios::rdbuf((wstreambuf *)&DAT_0041bc64);
    wios::rdbuf((wstreambuf *)&DAT_0041bd08);
    wios::rdbuf((wstreambuf *)&DAT_0041bbc4);
    wios::rdbuf((wstreambuf *)&DAT_0041bb24);
    Init::~Init(local_1d);
    return cVar4;
  }
  return Init::_S_synced_with_stdio;
}



/* WARNING: Function: __i686.get_pc_thunk.dx replaced with injection: get_pc_thunk_dx */

char FUN_0024bc20(char param_1)

{
  undefined *puVar1;
  undefined *puVar2;
  undefined *puVar3;
  char cVar4;
  undefined1 local_1d [13];
  
  cVar4 = DAT_00414510;
  if ((param_1 != '\x01') && (DAT_00414510 != '\0')) {
    FUN_0024b410(local_1d);
    DAT_00414510 = 0;
    DAT_0041bae0 = &PTR_FUN_004110b0;
    FUN_0024a980(&DAT_0041bafc);
    DAT_0041baa0 = &PTR_FUN_004110b0;
    FUN_0024a980(&DAT_0041babc);
    DAT_0041ba60 = &PTR_FUN_004110b0;
    FUN_0024a980(&DAT_0041ba7c);
    DAT_0041b840 = &PTR_FUN_004110f0;
    FUN_0024a980(&DAT_0041b85c);
    DAT_0041b800 = &PTR_FUN_004110f0;
    FUN_0024a980(&DAT_0041b81c);
    DAT_0041b7c0 = &PTR_FUN_004110f0;
    FUN_0024a980(&DAT_0041b7dc);
    puVar1 = PTR_stdout_00413cac;
                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */
    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);
    puVar2 = PTR_stdin_00413d98;
    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);
    puVar3 = PTR_stderr_00413fbc;
    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);
    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);
    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);
    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);
    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);
    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);
    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);
    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);
    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);
    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);
    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);
    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);
    FUN_0024bb80(local_1d);
    return cVar4;
  }
  return DAT_00414510;
}


CALL 0x0003a345
ADD EDX,0x1c83db
PUSH EBP
MOV EBP,ESP
PUSH EDI
PUSH ESI
PUSH EBX
SUB ESP,0x3c
LEA ESI,[EDX + 0x510]
CMP byte ptr [EBP + 0x8],0x1
MOV dword ptr [EBP + -0x2c],EDX
MOVZX EAX,byte ptr [ESI]
MOV byte ptr [EBP + -0x2d],AL
JZ 0x0024bc4d
TEST AL,AL
JNZ 0x0024bc60
MOVZX EAX,byte ptr [EBP + -0x2d]
LEA ESP,[EBP + -0xc]
POP EBX
POP ESI
POP EDI
POP EBP
RET
SUB ESP,0xc
LEA EAX,[EBP + -0x19]
MOV EDI,EDX
MOV EBX,EDX
PUSH EAX
MOV dword ptr [EBP + -0x34],EAX
CALL 0x0024b410
LEA EAX,[EDI + 0xffffd0a8]
MOV byte ptr [ESI],0x0
LEA ESI,[EAX + 0x8]
LEA EAX,[EDI + 0x7afc]
MOV dword ptr [ESP],EAX
MOV dword ptr [EDI + 0x7ae0],ESI
CALL 0x0024a980
LEA EAX,[EDI + 0x7abc]
MOV dword ptr [EDI + 0x7aa0],ESI
MOV dword ptr [ESP],EAX
CALL 0x0024a980
LEA EAX,[EDI + 0x7a7c]
MOV dword ptr [EDI + 0x7a60],ESI
MOV dword ptr [ESP],EAX
CALL 0x0024a980
LEA EAX,[EDI + 0xffffd0e8]
LEA ESI,[EAX + 0x8]
LEA EAX,[EDI + 0x785c]
MOV dword ptr [ESP],EAX
MOV dword ptr [EDI + 0x7840],ESI
CALL 0x0024a980
LEA EAX,[EDI + 0x781c]
MOV dword ptr [EDI + 0x7800],ESI
MOV dword ptr [ESP],EAX
CALL 0x0024a980
LEA EAX,[EDI + 0x77dc]
MOV dword ptr [EDI + 0x77c0],ESI
LEA ESI,[EDI + 0x79c0]
MOV dword ptr [ESP],EAX
CALL 0x0024a980
MOV EBX,dword ptr [EDI + 0xfffffcac]
ADD ESP,0x10
PUSH 0x2000
PUSH 0x10
PUSH dword ptr [EBX]
PUSH ESI
MOV dword ptr [EBP + -0x44],EBX
MOV EBX,EDI
CALL 0x0027e2b0
MOV ECX,dword ptr [EDI + 0xfffffd98]
ADD ESP,0x10
LEA EDX,[EDI + 0x7920]
PUSH 0x2000
PUSH 0x8
PUSH dword ptr [ECX]
PUSH EDX
MOV dword ptr [EBP + -0x40],ECX
MOV dword ptr [EBP + -0x38],EDX
CALL 0x0027e2b0
MOV EDI,dword ptr [EDI + 0xffffffbc]
ADD ESP,0x10
MOV dword ptr [EBP + -0x2c],EBX
PUSH 0x2000
MOV dword ptr [EBP + -0x3c],EDI
PUSH 0x10
PUSH dword ptr [EDI]
LEA EDI,[EBX + 0x7880]
PUSH EDI
CALL 0x0027e2b0
POP EAX
POP EDX
PUSH ESI
MOV ESI,dword ptr [EBP + -0x2c]
LEA EAX,[ESI + 0x7ee0]
MOV EBX,ESI
ADD EAX,0x4
PUSH EAX
CALL 0x002721d0
POP ECX
POP EAX
PUSH dword ptr [EBP + -0x38]
LEA EAX,[ESI + 0x7f80]
ADD EAX,0x8
PUSH EAX
CALL 0x002721d0
POP EAX
LEA EAX,[ESI + 0x7e40]
POP EDX
PUSH EDI
ADD EAX,0x4
PUSH EAX
CALL 0x002721d0
POP ECX
POP EAX
PUSH EDI
MOV EDI,ESI
LEA EAX,[ESI + 0x7da0]
ADD EAX,0x4
PUSH EAX
CALL 0x002721d0
MOV EBX,dword ptr [EBP + -0x44]
ADD ESP,0x10
LEA ESI,[ESI + 0x7720]
PUSH 0x2000
PUSH 0x10
PUSH dword ptr [EBX]
MOV EBX,EDI
PUSH ESI
MOV dword ptr [EBP + -0x38],ESI
MOV ESI,EDI
CALL 0x0027e6e0
MOV ECX,dword ptr [EBP + -0x40]
ADD ESP,0x10
LEA EDI,[EDI + 0x7680]
PUSH 0x2000
PUSH 0x8
PUSH dword ptr [ECX]
PUSH EDI
CALL 0x0027e6e0
MOV EBX,dword ptr [EBP + -0x3c]
ADD ESP,0x10
MOV ECX,ESI
LEA ESI,[ESI + 0x75e0]
PUSH 0x2000
PUSH 0x10
PUSH dword ptr [EBX]
MOV EBX,ECX
PUSH ESI
MOV dword ptr [EBP + -0x2c],ECX
CALL 0x0027e6e0
MOV ECX,dword ptr [EBP + -0x2c]
POP EAX
POP EDX
PUSH dword ptr [EBP + -0x38]
LEA EAX,[ECX + 0x7c60]
MOV EBX,ECX
ADD EAX,0x4
PUSH EAX
CALL 0x00272c70
POP ECX
POP EBX
PUSH EDI
MOV EDI,dword ptr [EBP + -0x2c]
LEA EAX,[EDI + 0x7d00]
MOV EBX,EDI
ADD EAX,0x8
PUSH EAX
CALL 0x00272c70
POP EAX
LEA EAX,[EDI + 0x7bc0]
POP EDX
PUSH ESI
ADD EAX,0x4
PUSH EAX
CALL 0x00272c70
LEA EAX,[EDI + 0x7b20]
POP EDX
POP ECX
PUSH ESI
ADD EAX,0x4
PUSH EAX
CALL 0x00272c70
POP EAX
PUSH dword ptr [EBP + -0x34]
CALL 0x0024bb80
MOVZX EAX,byte ptr [EBP + -0x2d]
ADD ESP,0x10
LEA ESP,[EBP + -0xc]
POP EBX
POP ESI
POP EDI
POP EBP
RET
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.dx replaced with injection: get_pc_thunk_dx */\n\nchar FUN_0024bc20(char param_1)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  undefined *puVar3;\n  char cVar4;\n  undefined1 local_1d [13];\n  \n  cVar4 = DAT_00414510;\n  if ((param_1 != '\x01') && (DAT_00414510 != '\0')) {\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */\n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }\n  return DAT_00414510;\n}\n\n" comment (function_definition "char FUN_0024bc20(char param_1)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  undefined *puVar3;\n  char cVar4;\n  undefined1 local_1d [13];\n  \n  cVar4 = DAT_00414510;\n  if ((param_1 != '\x01') && (DAT_00414510 != '\0')) {\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */\n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }\n  return DAT_00414510;\n}" primitive_type (function_declarator "FUN_0024bc20(char param_1)" identifier (parameter_list "(char param_1)" ( (parameter_declaration "char param_1" primitive_type identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  undefined *puVar2;\n  undefined *puVar3;\n  char cVar4;\n  undefined1 local_1d [13];\n  \n  cVar4 = DAT_00414510;\n  if ((param_1 != '\x01') && (DAT_00414510 != '\0')) {\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */\n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }\n  return DAT_00414510;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "char cVar4;" primitive_type identifier ;) (declaration "undefined1 local_1d [13];" type_identifier (array_declarator "local_1d [13]" identifier [ number_literal ]) ;) (expression_statement "cVar4 = DAT_00414510;" (assignment_expression "cVar4 = DAT_00414510" identifier = identifier) ;) (if_statement "if ((param_1 != '\x01') && (DAT_00414510 != '\0')) {\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */\n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }" if (parenthesized_expression "((param_1 != '\x01') && (DAT_00414510 != '\0'))" ( (binary_expression "(param_1 != '\x01') && (DAT_00414510 != '\0')" (parenthesized_expression "(param_1 != '\x01')" ( (binary_expression "param_1 != '\x01'" identifier != (char_literal "'\x01'" ' escape_sequence ')) )) && (parenthesized_expression "(DAT_00414510 != '\0')" ( (binary_expression "DAT_00414510 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */\n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }" { (expression_statement "FUN_0024b410(local_1d);" (call_expression "FUN_0024b410(local_1d)" identifier (argument_list "(local_1d)" ( identifier ))) ;) (expression_statement "DAT_00414510 = 0;" (assignment_expression "DAT_00414510 = 0" identifier = number_literal) ;) (expression_statement "DAT_0041bae0 = &PTR_FUN_004110b0;" (assignment_expression "DAT_0041bae0 = &PTR_FUN_004110b0" identifier = (pointer_expression "&PTR_FUN_004110b0" & identifier)) ;) (expression_statement "FUN_0024a980(&DAT_0041bafc);" (call_expression "FUN_0024a980(&DAT_0041bafc)" identifier (argument_list "(&DAT_0041bafc)" ( (pointer_expression "&DAT_0041bafc" & identifier) ))) ;) (expression_statement "DAT_0041baa0 = &PTR_FUN_004110b0;" (assignment_expression "DAT_0041baa0 = &PTR_FUN_004110b0" identifier = (pointer_expression "&PTR_FUN_004110b0" & identifier)) ;) (expression_statement "FUN_0024a980(&DAT_0041babc);" (call_expression "FUN_0024a980(&DAT_0041babc)" identifier (argument_list "(&DAT_0041babc)" ( (pointer_expression "&DAT_0041babc" & identifier) ))) ;) (expression_statement "DAT_0041ba60 = &PTR_FUN_004110b0;" (assignment_expression "DAT_0041ba60 = &PTR_FUN_004110b0" identifier = (pointer_expression "&PTR_FUN_004110b0" & identifier)) ;) (expression_statement "FUN_0024a980(&DAT_0041ba7c);" (call_expression "FUN_0024a980(&DAT_0041ba7c)" identifier (argument_list "(&DAT_0041ba7c)" ( (pointer_expression "&DAT_0041ba7c" & identifier) ))) ;) (expression_statement "DAT_0041b840 = &PTR_FUN_004110f0;" (assignment_expression "DAT_0041b840 = &PTR_FUN_004110f0" identifier = (pointer_expression "&PTR_FUN_004110f0" & identifier)) ;) (expression_statement "FUN_0024a980(&DAT_0041b85c);" (call_expression "FUN_0024a980(&DAT_0041b85c)" identifier (argument_list "(&DAT_0041b85c)" ( (pointer_expression "&DAT_0041b85c" & identifier) ))) ;) (expression_statement "DAT_0041b800 = &PTR_FUN_004110f0;" (assignment_expression "DAT_0041b800 = &PTR_FUN_004110f0" identifier = (pointer_expression "&PTR_FUN_004110f0" & identifier)) ;) (expression_statement "FUN_0024a980(&DAT_0041b81c);" (call_expression "FUN_0024a980(&DAT_0041b81c)" identifier (argument_list "(&DAT_0041b81c)" ( (pointer_expression "&DAT_0041b81c" & identifier) ))) ;) (expression_statement "DAT_0041b7c0 = &PTR_FUN_004110f0;" (assignment_expression "DAT_0041b7c0 = &PTR_FUN_004110f0" identifier = (pointer_expression "&PTR_FUN_004110f0" & identifier)) ;) (expression_statement "FUN_0024a980(&DAT_0041b7dc);" (call_expression "FUN_0024a980(&DAT_0041b7dc)" identifier (argument_list "(&DAT_0041b7dc)" ( (pointer_expression "&DAT_0041b7dc" & identifier) ))) ;) (expression_statement "puVar1 = PTR_stdout_00413cac;" (assignment_expression "puVar1 = PTR_stdout_00413cac" identifier = identifier) ;) comment (expression_statement "FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);" (call_expression "FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000)" identifier (argument_list "(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000)" ( (pointer_expression "&DAT_0041b9c0" & identifier) , (pointer_expression "*(undefined4 *)PTR_stdout_00413cac" * (cast_expression "(undefined4 *)PTR_stdout_00413cac" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , number_literal , number_literal ))) ;) (expression_statement "puVar2 = PTR_stdin_00413d98;" (assignment_expression "puVar2 = PTR_stdin_00413d98" identifier = identifier) ;) (expression_statement "FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);" (call_expression "FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000)" identifier (argument_list "(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000)" ( (pointer_expression "&DAT_0041b920" & identifier) , (pointer_expression "*(undefined4 *)PTR_stdin_00413d98" * (cast_expression "(undefined4 *)PTR_stdin_00413d98" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , number_literal , number_literal ))) ;) (expression_statement "puVar3 = PTR_stderr_00413fbc;" (assignment_expression "puVar3 = PTR_stderr_00413fbc" identifier = identifier) ;) (expression_statement "FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);" (call_expression "FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000)" identifier (argument_list "(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000)" ( (pointer_expression "&DAT_0041b880" & identifier) , (pointer_expression "*(undefined4 *)PTR_stderr_00413fbc" * (cast_expression "(undefined4 *)PTR_stderr_00413fbc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , number_literal , number_literal ))) ;) (expression_statement "FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);" (call_expression "FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0)" identifier (argument_list "(&DAT_0041bee4,&DAT_0041b9c0)" ( (pointer_expression "&DAT_0041bee4" & identifier) , (pointer_expression "&DAT_0041b9c0" & identifier) ))) ;) (expression_statement "FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);" (call_expression "FUN_002721d0(&DAT_0041bf88,&DAT_0041b920)" identifier (argument_list "(&DAT_0041bf88,&DAT_0041b920)" ( (pointer_expression "&DAT_0041bf88" & identifier) , (pointer_expression "&DAT_0041b920" & identifier) ))) ;) (expression_statement "FUN_002721d0(&DAT_0041be44,&DAT_0041b880);" (call_expression "FUN_002721d0(&DAT_0041be44,&DAT_0041b880)" identifier (argument_list "(&DAT_0041be44,&DAT_0041b880)" ( (pointer_expression "&DAT_0041be44" & identifier) , (pointer_expression "&DAT_0041b880" & identifier) ))) ;) (expression_statement "FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);" (call_expression "FUN_002721d0(&DAT_0041bda4,&DAT_0041b880)" identifier (argument_list "(&DAT_0041bda4,&DAT_0041b880)" ( (pointer_expression "&DAT_0041bda4" & identifier) , (pointer_expression "&DAT_0041b880" & identifier) ))) ;) (expression_statement "FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);" (call_expression "FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000)" identifier (argument_list "(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000)" ( (pointer_expression "&DAT_0041b720" & identifier) , (pointer_expression "*(undefined4 *)puVar1" * (cast_expression "(undefined4 *)puVar1" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , number_literal , number_literal ))) ;) (expression_statement "FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);" (call_expression "FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000)" identifier (argument_list "(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000)" ( (pointer_expression "&DAT_0041b680" & identifier) , (pointer_expression "*(undefined4 *)puVar2" * (cast_expression "(undefined4 *)puVar2" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , number_literal , number_literal ))) ;) (expression_statement "FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);" (call_expression "FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000)" identifier (argument_list "(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000)" ( (pointer_expression "&DAT_0041b5e0" & identifier) , (pointer_expression "*(undefined4 *)puVar3" * (cast_expression "(undefined4 *)puVar3" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , number_literal , number_literal ))) ;) (expression_statement "FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);" (call_expression "FUN_00272c70(&DAT_0041bc64,&DAT_0041b720)" identifier (argument_list "(&DAT_0041bc64,&DAT_0041b720)" ( (pointer_expression "&DAT_0041bc64" & identifier) , (pointer_expression "&DAT_0041b720" & identifier) ))) ;) (expression_statement "FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);" (call_expression "FUN_00272c70(&DAT_0041bd08,&DAT_0041b680)" identifier (argument_list "(&DAT_0041bd08,&DAT_0041b680)" ( (pointer_expression "&DAT_0041bd08" & identifier) , (pointer_expression "&DAT_0041b680" & identifier) ))) ;) (expression_statement "FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);" (call_expression "FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0)" identifier (argument_list "(&DAT_0041bbc4,&DAT_0041b5e0)" ( (pointer_expression "&DAT_0041bbc4" & identifier) , (pointer_expression "&DAT_0041b5e0" & identifier) ))) ;) (expression_statement "FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);" (call_expression "FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0)" identifier (argument_list "(&DAT_0041bb24,&DAT_0041b5e0)" ( (pointer_expression "&DAT_0041bb24" & identifier) , (pointer_expression "&DAT_0041b5e0" & identifier) ))) ;) (expression_statement "FUN_0024bb80(local_1d);" (call_expression "FUN_0024bb80(local_1d)" identifier (argument_list "(local_1d)" ( identifier ))) ;) (return_statement "return cVar4;" return identifier ;) })) (return_statement "return DAT_00414510;" return identifier ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.dx replaced with injection: get_pc_thunk_dx */\n/* std::ios_base::sync_with_stdio(bool) */\n\nchar std::ios_base::sync_with_stdio(bool param_1)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  undefined *puVar3;\n  char cVar4;\n  Init local_1d [13];\n  \n  cVar4 = Init::_S_synced_with_stdio;\n  if ((!param_1) && (Init::_S_synced_with_stdio != '\0')) {\n    Init::Init(local_1d);\n    Init::_S_synced_with_stdio = 0;\n    __gnu_internal::buf_cout_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041bafc);\n    __gnu_internal::buf_cin_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041babc);\n    __gnu_internal::buf_cerr_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041ba7c);\n    __gnu_internal::buf_wcout_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b85c);\n    __gnu_internal::buf_wcin_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b81c);\n    __gnu_internal::buf_wcerr_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cout,\n               *(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cin,\n               *(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cerr,\n               *(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000);\n    ios::rdbuf((streambuf *)&DAT_0041bee4);\n    ios::rdbuf((streambuf *)&DAT_0041bf88);\n    ios::rdbuf((streambuf *)&DAT_0041be44);\n    ios::rdbuf((streambuf *)&DAT_0041bda4);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcout,\n               *(_IO_FILE **)puVar1,_S_out,0x2000);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcin,\n               *(_IO_FILE **)puVar2,_S_in,0x2000);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcerr,\n               *(_IO_FILE **)puVar3,_S_out,0x2000);\n    wios::rdbuf((wstreambuf *)&DAT_0041bc64);\n    wios::rdbuf((wstreambuf *)&DAT_0041bd08);\n    wios::rdbuf((wstreambuf *)&DAT_0041bbc4);\n    wios::rdbuf((wstreambuf *)&DAT_0041bb24);\n    Init::~Init(local_1d);\n    return cVar4;\n  }\n  return Init::_S_synced_with_stdio;\n}\n\n" comment comment (function_definition "char std::ios_base::sync_with_stdio(bool param_1)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  undefined *puVar3;\n  char cVar4;\n  Init local_1d [13];\n  \n  cVar4 = Init::_S_synced_with_stdio;\n  if ((!param_1) && (Init::_S_synced_with_stdio != '\0')) {\n    Init::Init(local_1d);\n    Init::_S_synced_with_stdio = 0;\n    __gnu_internal::buf_cout_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041bafc);\n    __gnu_internal::buf_cin_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041babc);\n    __gnu_internal::buf_cerr_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041ba7c);\n    __gnu_internal::buf_wcout_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b85c);\n    __gnu_internal::buf_wcin_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b81c);\n    __gnu_internal::buf_wcerr_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cout,\n               *(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cin,\n               *(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cerr,\n               *(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000);\n    ios::rdbuf((streambuf *)&DAT_0041bee4);\n    ios::rdbuf((streambuf *)&DAT_0041bf88);\n    ios::rdbuf((streambuf *)&DAT_0041be44);\n    ios::rdbuf((streambuf *)&DAT_0041bda4);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcout,\n               *(_IO_FILE **)puVar1,_S_out,0x2000);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcin,\n               *(_IO_FILE **)puVar2,_S_in,0x2000);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcerr,\n               *(_IO_FILE **)puVar3,_S_out,0x2000);\n    wios::rdbuf((wstreambuf *)&DAT_0041bc64);\n    wios::rdbuf((wstreambuf *)&DAT_0041bd08);\n    wios::rdbuf((wstreambuf *)&DAT_0041bbc4);\n    wios::rdbuf((wstreambuf *)&DAT_0041bb24);\n    Init::~Init(local_1d);\n    return cVar4;\n  }\n  return Init::_S_synced_with_stdio;\n}" primitive_type (ERROR "std::ios_base::" identifier : : identifier : :) (function_declarator "sync_with_stdio(bool param_1)" identifier (parameter_list "(bool param_1)" ( (parameter_declaration "bool param_1" primitive_type identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  undefined *puVar2;\n  undefined *puVar3;\n  char cVar4;\n  Init local_1d [13];\n  \n  cVar4 = Init::_S_synced_with_stdio;\n  if ((!param_1) && (Init::_S_synced_with_stdio != '\0')) {\n    Init::Init(local_1d);\n    Init::_S_synced_with_stdio = 0;\n    __gnu_internal::buf_cout_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041bafc);\n    __gnu_internal::buf_cin_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041babc);\n    __gnu_internal::buf_cerr_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041ba7c);\n    __gnu_internal::buf_wcout_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b85c);\n    __gnu_internal::buf_wcin_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b81c);\n    __gnu_internal::buf_wcerr_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cout,\n               *(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cin,\n               *(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cerr,\n               *(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000);\n    ios::rdbuf((streambuf *)&DAT_0041bee4);\n    ios::rdbuf((streambuf *)&DAT_0041bf88);\n    ios::rdbuf((streambuf *)&DAT_0041be44);\n    ios::rdbuf((streambuf *)&DAT_0041bda4);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcout,\n               *(_IO_FILE **)puVar1,_S_out,0x2000);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcin,\n               *(_IO_FILE **)puVar2,_S_in,0x2000);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcerr,\n               *(_IO_FILE **)puVar3,_S_out,0x2000);\n    wios::rdbuf((wstreambuf *)&DAT_0041bc64);\n    wios::rdbuf((wstreambuf *)&DAT_0041bd08);\n    wios::rdbuf((wstreambuf *)&DAT_0041bbc4);\n    wios::rdbuf((wstreambuf *)&DAT_0041bb24);\n    Init::~Init(local_1d);\n    return cVar4;\n  }\n  return Init::_S_synced_with_stdio;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "char cVar4;" primitive_type identifier ;) (declaration "Init local_1d [13];" type_identifier (array_declarator "local_1d [13]" identifier [ number_literal ]) ;) (ERROR "cVar4 = Init::" (assignment_expression "cVar4 = Init" identifier = identifier) : :) (expression_statement "_S_synced_with_stdio;" identifier ;) (if_statement "if ((!param_1) && (Init::_S_synced_with_stdio != '\0')) {\n    Init::Init(local_1d);\n    Init::_S_synced_with_stdio = 0;\n    __gnu_internal::buf_cout_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041bafc);\n    __gnu_internal::buf_cin_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041babc);\n    __gnu_internal::buf_cerr_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041ba7c);\n    __gnu_internal::buf_wcout_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b85c);\n    __gnu_internal::buf_wcin_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b81c);\n    __gnu_internal::buf_wcerr_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cout,\n               *(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cin,\n               *(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cerr,\n               *(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000);\n    ios::rdbuf((streambuf *)&DAT_0041bee4);\n    ios::rdbuf((streambuf *)&DAT_0041bf88);\n    ios::rdbuf((streambuf *)&DAT_0041be44);\n    ios::rdbuf((streambuf *)&DAT_0041bda4);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcout,\n               *(_IO_FILE **)puVar1,_S_out,0x2000);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcin,\n               *(_IO_FILE **)puVar2,_S_in,0x2000);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcerr,\n               *(_IO_FILE **)puVar3,_S_out,0x2000);\n    wios::rdbuf((wstreambuf *)&DAT_0041bc64);\n    wios::rdbuf((wstreambuf *)&DAT_0041bd08);\n    wios::rdbuf((wstreambuf *)&DAT_0041bbc4);\n    wios::rdbuf((wstreambuf *)&DAT_0041bb24);\n    Init::~Init(local_1d);\n    return cVar4;\n  }" if (parenthesized_expression "((!param_1) && (Init::_S_synced_with_stdio != '\0'))" ( (binary_expression "(!param_1) && (Init::_S_synced_with_stdio != '\0')" (parenthesized_expression "(!param_1)" ( (unary_expression "!param_1" ! identifier) )) && (parenthesized_expression "(Init::_S_synced_with_stdio != '\0')" ( (ERROR "Init::" identifier : :) (binary_expression "_S_synced_with_stdio != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n    Init::Init(local_1d);\n    Init::_S_synced_with_stdio = 0;\n    __gnu_internal::buf_cout_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041bafc);\n    __gnu_internal::buf_cin_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041babc);\n    __gnu_internal::buf_cerr_sync = &PTR__streambuf_004110b0;\n    locale::~locale((locale *)&DAT_0041ba7c);\n    __gnu_internal::buf_wcout_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b85c);\n    __gnu_internal::buf_wcin_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b81c);\n    __gnu_internal::buf_wcerr_sync = &PTR__wstreambuf_004110f0;\n    locale::~locale((locale *)&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cout,\n               *(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cin,\n               *(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    stdio_filebuf<char,std::char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cerr,\n               *(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000);\n    ios::rdbuf((streambuf *)&DAT_0041bee4);\n    ios::rdbuf((streambuf *)&DAT_0041bf88);\n    ios::rdbuf((streambuf *)&DAT_0041be44);\n    ios::rdbuf((streambuf *)&DAT_0041bda4);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcout,\n               *(_IO_FILE **)puVar1,_S_out,0x2000);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcin,\n               *(_IO_FILE **)puVar2,_S_in,0x2000);\n    stdio_filebuf<wchar_t,std::char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcerr,\n               *(_IO_FILE **)puVar3,_S_out,0x2000);\n    wios::rdbuf((wstreambuf *)&DAT_0041bc64);\n    wios::rdbuf((wstreambuf *)&DAT_0041bd08);\n    wios::rdbuf((wstreambuf *)&DAT_0041bbc4);\n    wios::rdbuf((wstreambuf *)&DAT_0041bb24);\n    Init::~Init(local_1d);\n    return cVar4;\n  }" { (labeled_statement "Init::Init(local_1d);" statement_identifier : (ERROR ":" :) (expression_statement "Init(local_1d);" (call_expression "Init(local_1d)" identifier (argument_list "(local_1d)" ( identifier ))) ;)) (labeled_statement "Init::_S_synced_with_stdio = 0;" statement_identifier : (ERROR ":" :) (expression_statement "_S_synced_with_stdio = 0;" (assignment_expression "_S_synced_with_stdio = 0" identifier = number_literal) ;)) (labeled_statement "__gnu_internal::buf_cout_sync = &PTR__streambuf_004110b0;" statement_identifier : (ERROR ":" :) (expression_statement "buf_cout_sync = &PTR__streambuf_004110b0;" (assignment_expression "buf_cout_sync = &PTR__streambuf_004110b0" identifier = (pointer_expression "&PTR__streambuf_004110b0" & identifier)) ;)) (labeled_statement "locale::~locale((locale *)&DAT_0041bafc);" statement_identifier : (ERROR ":" :) (expression_statement "~locale((locale *)&DAT_0041bafc);" (unary_expression "~locale((locale *)&DAT_0041bafc)" ~ (call_expression "locale((locale *)&DAT_0041bafc)" identifier (argument_list "((locale *)&DAT_0041bafc)" ( (cast_expression "(locale *)&DAT_0041bafc" ( (type_descriptor "locale *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041bafc" & identifier)) )))) ;)) (labeled_statement "__gnu_internal::buf_cin_sync = &PTR__streambuf_004110b0;" statement_identifier : (ERROR ":" :) (expression_statement "buf_cin_sync = &PTR__streambuf_004110b0;" (assignment_expression "buf_cin_sync = &PTR__streambuf_004110b0" identifier = (pointer_expression "&PTR__streambuf_004110b0" & identifier)) ;)) (labeled_statement "locale::~locale((locale *)&DAT_0041babc);" statement_identifier : (ERROR ":" :) (expression_statement "~locale((locale *)&DAT_0041babc);" (unary_expression "~locale((locale *)&DAT_0041babc)" ~ (call_expression "locale((locale *)&DAT_0041babc)" identifier (argument_list "((locale *)&DAT_0041babc)" ( (cast_expression "(locale *)&DAT_0041babc" ( (type_descriptor "locale *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041babc" & identifier)) )))) ;)) (labeled_statement "__gnu_internal::buf_cerr_sync = &PTR__streambuf_004110b0;" statement_identifier : (ERROR ":" :) (expression_statement "buf_cerr_sync = &PTR__streambuf_004110b0;" (assignment_expression "buf_cerr_sync = &PTR__streambuf_004110b0" identifier = (pointer_expression "&PTR__streambuf_004110b0" & identifier)) ;)) (labeled_statement "locale::~locale((locale *)&DAT_0041ba7c);" statement_identifier : (ERROR ":" :) (expression_statement "~locale((locale *)&DAT_0041ba7c);" (unary_expression "~locale((locale *)&DAT_0041ba7c)" ~ (call_expression "locale((locale *)&DAT_0041ba7c)" identifier (argument_list "((locale *)&DAT_0041ba7c)" ( (cast_expression "(locale *)&DAT_0041ba7c" ( (type_descriptor "locale *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041ba7c" & identifier)) )))) ;)) (labeled_statement "__gnu_internal::buf_wcout_sync = &PTR__wstreambuf_004110f0;" statement_identifier : (ERROR ":" :) (expression_statement "buf_wcout_sync = &PTR__wstreambuf_004110f0;" (assignment_expression "buf_wcout_sync = &PTR__wstreambuf_004110f0" identifier = (pointer_expression "&PTR__wstreambuf_004110f0" & identifier)) ;)) (labeled_statement "locale::~locale((locale *)&DAT_0041b85c);" statement_identifier : (ERROR ":" :) (expression_statement "~locale((locale *)&DAT_0041b85c);" (unary_expression "~locale((locale *)&DAT_0041b85c)" ~ (call_expression "locale((locale *)&DAT_0041b85c)" identifier (argument_list "((locale *)&DAT_0041b85c)" ( (cast_expression "(locale *)&DAT_0041b85c" ( (type_descriptor "locale *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041b85c" & identifier)) )))) ;)) (labeled_statement "__gnu_internal::buf_wcin_sync = &PTR__wstreambuf_004110f0;" statement_identifier : (ERROR ":" :) (expression_statement "buf_wcin_sync = &PTR__wstreambuf_004110f0;" (assignment_expression "buf_wcin_sync = &PTR__wstreambuf_004110f0" identifier = (pointer_expression "&PTR__wstreambuf_004110f0" & identifier)) ;)) (labeled_statement "locale::~locale((locale *)&DAT_0041b81c);" statement_identifier : (ERROR ":" :) (expression_statement "~locale((locale *)&DAT_0041b81c);" (unary_expression "~locale((locale *)&DAT_0041b81c)" ~ (call_expression "locale((locale *)&DAT_0041b81c)" identifier (argument_list "((locale *)&DAT_0041b81c)" ( (cast_expression "(locale *)&DAT_0041b81c" ( (type_descriptor "locale *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041b81c" & identifier)) )))) ;)) (labeled_statement "__gnu_internal::buf_wcerr_sync = &PTR__wstreambuf_004110f0;" statement_identifier : (ERROR ":" :) (expression_statement "buf_wcerr_sync = &PTR__wstreambuf_004110f0;" (assignment_expression "buf_wcerr_sync = &PTR__wstreambuf_004110f0" identifier = (pointer_expression "&PTR__wstreambuf_004110f0" & identifier)) ;)) (labeled_statement "locale::~locale((locale *)&DAT_0041b7dc);" statement_identifier : (ERROR ":" :) (expression_statement "~locale((locale *)&DAT_0041b7dc);" (unary_expression "~locale((locale *)&DAT_0041b7dc)" ~ (call_expression "locale((locale *)&DAT_0041b7dc)" identifier (argument_list "((locale *)&DAT_0041b7dc)" ( (cast_expression "(locale *)&DAT_0041b7dc" ( (type_descriptor "locale *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041b7dc" & identifier)) )))) ;)) (expression_statement "puVar1 = PTR_stdout_00413cac;" (assignment_expression "puVar1 = PTR_stdout_00413cac" identifier = identifier) ;) comment (ERROR "stdio_filebuf<char,std::" (comma_expression "stdio_filebuf<char,std" (binary_expression "stdio_filebuf<char" identifier < identifier) , identifier) : :) (expression_statement "char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cout,\n               *(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000);" (binary_expression "char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cout,\n               *(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000)" identifier < (binary_expression "char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cout,\n               *(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000)" identifier >> (ERROR "::" : :) (call_expression "stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cout,\n               *(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000)" identifier (argument_list "((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cout,\n               *(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000)" ( (parenthesized_expression "(stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cout,\n               *(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000)" ( (ERROR "stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::" (comma_expression "stdio_filebuf<char,std" (binary_expression "stdio_filebuf<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>> *)__gnu_internal" identifier < (binary_expression "char>> *)__gnu_internal" identifier >> (pointer_expression "*)__gnu_internal" * (ERROR ")" )) identifier))) : :) (comma_expression "buf_cout,\n               *(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000" identifier , (comma_expression "*(_IO_FILE **)PTR_stdout_00413cac,_S_out,0x2000" (pointer_expression "*(_IO_FILE **)PTR_stdout_00413cac" * (cast_expression "(_IO_FILE **)PTR_stdout_00413cac" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , (comma_expression "_S_out,0x2000" identifier , number_literal))) )) ))))) ;) (expression_statement "puVar2 = PTR_stdin_00413d98;" (assignment_expression "puVar2 = PTR_stdin_00413d98" identifier = identifier) ;) (ERROR "stdio_filebuf<char,std::" (comma_expression "stdio_filebuf<char,std" (binary_expression "stdio_filebuf<char" identifier < identifier) , identifier) : :) (expression_statement "char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cin,\n               *(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000);" (binary_expression "char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cin,\n               *(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000)" identifier < (binary_expression "char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cin,\n               *(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000)" identifier >> (ERROR "::" : :) (call_expression "stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cin,\n               *(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000)" identifier (argument_list "((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cin,\n               *(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000)" ( (parenthesized_expression "(stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cin,\n               *(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000)" ( (ERROR "stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::" (comma_expression "stdio_filebuf<char,std" (binary_expression "stdio_filebuf<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>> *)__gnu_internal" identifier < (binary_expression "char>> *)__gnu_internal" identifier >> (pointer_expression "*)__gnu_internal" * (ERROR ")" )) identifier))) : :) (comma_expression "buf_cin,\n               *(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000" identifier , (comma_expression "*(_IO_FILE **)PTR_stdin_00413d98,_S_in,0x2000" (pointer_expression "*(_IO_FILE **)PTR_stdin_00413d98" * (cast_expression "(_IO_FILE **)PTR_stdin_00413d98" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , (comma_expression "_S_in,0x2000" identifier , number_literal))) )) ))))) ;) (expression_statement "puVar3 = PTR_stderr_00413fbc;" (assignment_expression "puVar3 = PTR_stderr_00413fbc" identifier = identifier) ;) (ERROR "stdio_filebuf<char,std::" (comma_expression "stdio_filebuf<char,std" (binary_expression "stdio_filebuf<char" identifier < identifier) , identifier) : :) (expression_statement "char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cerr,\n               *(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000);" (binary_expression "char_traits<char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cerr,\n               *(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000)" identifier < (binary_expression "char>>::stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cerr,\n               *(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000)" identifier >> (ERROR "::" : :) (call_expression "stdio_filebuf\n              ((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cerr,\n               *(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000)" identifier (argument_list "((stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cerr,\n               *(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000)" ( (parenthesized_expression "(stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::buf_cerr,\n               *(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000)" ( (ERROR "stdio_filebuf<char,std::char_traits<char>> *)__gnu_internal::" (comma_expression "stdio_filebuf<char,std" (binary_expression "stdio_filebuf<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>> *)__gnu_internal" identifier < (binary_expression "char>> *)__gnu_internal" identifier >> (pointer_expression "*)__gnu_internal" * (ERROR ")" )) identifier))) : :) (comma_expression "buf_cerr,\n               *(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000" identifier , (comma_expression "*(_IO_FILE **)PTR_stderr_00413fbc,_S_out,0x2000" (pointer_expression "*(_IO_FILE **)PTR_stderr_00413fbc" * (cast_expression "(_IO_FILE **)PTR_stderr_00413fbc" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , (comma_expression "_S_out,0x2000" identifier , number_literal))) )) ))))) ;) (labeled_statement "ios::rdbuf((streambuf *)&DAT_0041bee4);" statement_identifier : (ERROR ":" :) (expression_statement "rdbuf((streambuf *)&DAT_0041bee4);" (call_expression "rdbuf((streambuf *)&DAT_0041bee4)" identifier (argument_list "((streambuf *)&DAT_0041bee4)" ( (cast_expression "(streambuf *)&DAT_0041bee4" ( (type_descriptor "streambuf *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041bee4" & identifier)) ))) ;)) (labeled_statement "ios::rdbuf((streambuf *)&DAT_0041bf88);" statement_identifier : (ERROR ":" :) (expression_statement "rdbuf((streambuf *)&DAT_0041bf88);" (call_expression "rdbuf((streambuf *)&DAT_0041bf88)" identifier (argument_list "((streambuf *)&DAT_0041bf88)" ( (cast_expression "(streambuf *)&DAT_0041bf88" ( (type_descriptor "streambuf *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041bf88" & identifier)) ))) ;)) (labeled_statement "ios::rdbuf((streambuf *)&DAT_0041be44);" statement_identifier : (ERROR ":" :) (expression_statement "rdbuf((streambuf *)&DAT_0041be44);" (call_expression "rdbuf((streambuf *)&DAT_0041be44)" identifier (argument_list "((streambuf *)&DAT_0041be44)" ( (cast_expression "(streambuf *)&DAT_0041be44" ( (type_descriptor "streambuf *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041be44" & identifier)) ))) ;)) (labeled_statement "ios::rdbuf((streambuf *)&DAT_0041bda4);" statement_identifier : (ERROR ":" :) (expression_statement "rdbuf((streambuf *)&DAT_0041bda4);" (call_expression "rdbuf((streambuf *)&DAT_0041bda4)" identifier (argument_list "((streambuf *)&DAT_0041bda4)" ( (cast_expression "(streambuf *)&DAT_0041bda4" ( (type_descriptor "streambuf *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041bda4" & identifier)) ))) ;)) (ERROR "stdio_filebuf<wchar_t,std::" (comma_expression "stdio_filebuf<wchar_t,std" (binary_expression "stdio_filebuf<wchar_t" identifier < identifier) , identifier) : :) (expression_statement "char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcout,\n               *(_IO_FILE **)puVar1,_S_out,0x2000);" (binary_expression "char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcout,\n               *(_IO_FILE **)puVar1,_S_out,0x2000)" identifier < (binary_expression "wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcout,\n               *(_IO_FILE **)puVar1,_S_out,0x2000)" identifier >> (ERROR "::" : :) (call_expression "stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcout,\n               *(_IO_FILE **)puVar1,_S_out,0x2000)" identifier (argument_list "((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcout,\n               *(_IO_FILE **)puVar1,_S_out,0x2000)" ( (parenthesized_expression "(stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcout,\n               *(_IO_FILE **)puVar1,_S_out,0x2000)" ( (ERROR "stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::" (comma_expression "stdio_filebuf<wchar_t,std" (binary_expression "stdio_filebuf<wchar_t" identifier < identifier) , identifier) : : (binary_expression "char_traits<wchar_t>> *)__gnu_internal" identifier < (binary_expression "wchar_t>> *)__gnu_internal" identifier >> (pointer_expression "*)__gnu_internal" * (ERROR ")" )) identifier))) : :) (comma_expression "buf_wcout,\n               *(_IO_FILE **)puVar1,_S_out,0x2000" identifier , (comma_expression "*(_IO_FILE **)puVar1,_S_out,0x2000" (pointer_expression "*(_IO_FILE **)puVar1" * (cast_expression "(_IO_FILE **)puVar1" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , (comma_expression "_S_out,0x2000" identifier , number_literal))) )) ))))) ;) (ERROR "stdio_filebuf<wchar_t,std::" (comma_expression "stdio_filebuf<wchar_t,std" (binary_expression "stdio_filebuf<wchar_t" identifier < identifier) , identifier) : :) (expression_statement "char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcin,\n               *(_IO_FILE **)puVar2,_S_in,0x2000);" (binary_expression "char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcin,\n               *(_IO_FILE **)puVar2,_S_in,0x2000)" identifier < (binary_expression "wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcin,\n               *(_IO_FILE **)puVar2,_S_in,0x2000)" identifier >> (ERROR "::" : :) (call_expression "stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcin,\n               *(_IO_FILE **)puVar2,_S_in,0x2000)" identifier (argument_list "((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcin,\n               *(_IO_FILE **)puVar2,_S_in,0x2000)" ( (parenthesized_expression "(stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcin,\n               *(_IO_FILE **)puVar2,_S_in,0x2000)" ( (ERROR "stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::" (comma_expression "stdio_filebuf<wchar_t,std" (binary_expression "stdio_filebuf<wchar_t" identifier < identifier) , identifier) : : (binary_expression "char_traits<wchar_t>> *)__gnu_internal" identifier < (binary_expression "wchar_t>> *)__gnu_internal" identifier >> (pointer_expression "*)__gnu_internal" * (ERROR ")" )) identifier))) : :) (comma_expression "buf_wcin,\n               *(_IO_FILE **)puVar2,_S_in,0x2000" identifier , (comma_expression "*(_IO_FILE **)puVar2,_S_in,0x2000" (pointer_expression "*(_IO_FILE **)puVar2" * (cast_expression "(_IO_FILE **)puVar2" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , (comma_expression "_S_in,0x2000" identifier , number_literal))) )) ))))) ;) (ERROR "stdio_filebuf<wchar_t,std::" (comma_expression "stdio_filebuf<wchar_t,std" (binary_expression "stdio_filebuf<wchar_t" identifier < identifier) , identifier) : :) (expression_statement "char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcerr,\n               *(_IO_FILE **)puVar3,_S_out,0x2000);" (binary_expression "char_traits<wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcerr,\n               *(_IO_FILE **)puVar3,_S_out,0x2000)" identifier < (binary_expression "wchar_t>>::stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcerr,\n               *(_IO_FILE **)puVar3,_S_out,0x2000)" identifier >> (ERROR "::" : :) (call_expression "stdio_filebuf\n              ((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcerr,\n               *(_IO_FILE **)puVar3,_S_out,0x2000)" identifier (argument_list "((stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcerr,\n               *(_IO_FILE **)puVar3,_S_out,0x2000)" ( (parenthesized_expression "(stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::buf_wcerr,\n               *(_IO_FILE **)puVar3,_S_out,0x2000)" ( (ERROR "stdio_filebuf<wchar_t,std::char_traits<wchar_t>> *)__gnu_internal::" (comma_expression "stdio_filebuf<wchar_t,std" (binary_expression "stdio_filebuf<wchar_t" identifier < identifier) , identifier) : : (binary_expression "char_traits<wchar_t>> *)__gnu_internal" identifier < (binary_expression "wchar_t>> *)__gnu_internal" identifier >> (pointer_expression "*)__gnu_internal" * (ERROR ")" )) identifier))) : :) (comma_expression "buf_wcerr,\n               *(_IO_FILE **)puVar3,_S_out,0x2000" identifier , (comma_expression "*(_IO_FILE **)puVar3,_S_out,0x2000" (pointer_expression "*(_IO_FILE **)puVar3" * (cast_expression "(_IO_FILE **)puVar3" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , (comma_expression "_S_out,0x2000" identifier , number_literal))) )) ))))) ;) (labeled_statement "wios::rdbuf((wstreambuf *)&DAT_0041bc64);" statement_identifier : (ERROR ":" :) (expression_statement "rdbuf((wstreambuf *)&DAT_0041bc64);" (call_expression "rdbuf((wstreambuf *)&DAT_0041bc64)" identifier (argument_list "((wstreambuf *)&DAT_0041bc64)" ( (cast_expression "(wstreambuf *)&DAT_0041bc64" ( (type_descriptor "wstreambuf *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041bc64" & identifier)) ))) ;)) (labeled_statement "wios::rdbuf((wstreambuf *)&DAT_0041bd08);" statement_identifier : (ERROR ":" :) (expression_statement "rdbuf((wstreambuf *)&DAT_0041bd08);" (call_expression "rdbuf((wstreambuf *)&DAT_0041bd08)" identifier (argument_list "((wstreambuf *)&DAT_0041bd08)" ( (cast_expression "(wstreambuf *)&DAT_0041bd08" ( (type_descriptor "wstreambuf *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041bd08" & identifier)) ))) ;)) (labeled_statement "wios::rdbuf((wstreambuf *)&DAT_0041bbc4);" statement_identifier : (ERROR ":" :) (expression_statement "rdbuf((wstreambuf *)&DAT_0041bbc4);" (call_expression "rdbuf((wstreambuf *)&DAT_0041bbc4)" identifier (argument_list "((wstreambuf *)&DAT_0041bbc4)" ( (cast_expression "(wstreambuf *)&DAT_0041bbc4" ( (type_descriptor "wstreambuf *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041bbc4" & identifier)) ))) ;)) (labeled_statement "wios::rdbuf((wstreambuf *)&DAT_0041bb24);" statement_identifier : (ERROR ":" :) (expression_statement "rdbuf((wstreambuf *)&DAT_0041bb24);" (call_expression "rdbuf((wstreambuf *)&DAT_0041bb24)" identifier (argument_list "((wstreambuf *)&DAT_0041bb24)" ( (cast_expression "(wstreambuf *)&DAT_0041bb24" ( (type_descriptor "wstreambuf *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0041bb24" & identifier)) ))) ;)) (labeled_statement "Init::~Init(local_1d);" statement_identifier : (ERROR ":" :) (expression_statement "~Init(local_1d);" (unary_expression "~Init(local_1d)" ~ (call_expression "Init(local_1d)" identifier (argument_list "(local_1d)" ( identifier )))) ;)) (return_statement "return cVar4;" return identifier ;) })) (return_statement "return Init::_S_synced_with_stdio;" return (ERROR "Init::" identifier : :) identifier ;) })))
(translation_unit "char FUN_0024bc20(char param_1)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  undefined *puVar3;\n  char cVar4;\n  undefined1 local_1d [13];\n  \n  cVar4 = DAT_00414510;\n  if ((param_1 != '\x01') && (DAT_00414510 != '\0')) {\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    \n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }\n  return DAT_00414510;\n}\n\n" (function_definition "char FUN_0024bc20(char param_1)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  undefined *puVar3;\n  char cVar4;\n  undefined1 local_1d [13];\n  \n  cVar4 = DAT_00414510;\n  if ((param_1 != '\x01') && (DAT_00414510 != '\0')) {\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    \n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }\n  return DAT_00414510;\n}" primitive_type (function_declarator "FUN_0024bc20(char param_1)" identifier (parameter_list "(char param_1)" ( (parameter_declaration "char param_1" primitive_type identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  undefined *puVar2;\n  undefined *puVar3;\n  char cVar4;\n  undefined1 local_1d [13];\n  \n  cVar4 = DAT_00414510;\n  if ((param_1 != '\x01') && (DAT_00414510 != '\0')) {\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    \n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }\n  return DAT_00414510;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "char cVar4;" primitive_type identifier ;) (declaration "undefined1 local_1d [13];" type_identifier (array_declarator "local_1d [13]" identifier [ number_literal ]) ;) (expression_statement "cVar4 = DAT_00414510;" (assignment_expression "cVar4 = DAT_00414510" identifier = identifier) ;) (if_statement "if ((param_1 != '\x01') && (DAT_00414510 != '\0')) {\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    \n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }" if (parenthesized_expression "((param_1 != '\x01') && (DAT_00414510 != '\0'))" ( (binary_expression "(param_1 != '\x01') && (DAT_00414510 != '\0')" (parenthesized_expression "(param_1 != '\x01')" ( (binary_expression "param_1 != '\x01'" identifier != (char_literal "'\x01'" ' escape_sequence ')) )) && (parenthesized_expression "(DAT_00414510 != '\0')" ( (binary_expression "DAT_00414510 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    \n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }" { (expression_statement "FUN_0024b410(local_1d);" (call_expression "FUN_0024b410(local_1d)" identifier (argument_list "(local_1d)" ( identifier ))) ;) (expression_statement "DAT_00414510 = 0;" (assignment_expression "DAT_00414510 = 0" identifier = number_literal) ;) (expression_statement "DAT_0041bae0 = &PTR_FUN_004110b0;" (assignment_expression "DAT_0041bae0 = &PTR_FUN_004110b0" identifier = (pointer_expression "&PTR_FUN_004110b0" & identifier)) ;) (expression_statement "FUN_0024a980(&DAT_0041bafc);" (call_expression "FUN_0024a980(&DAT_0041bafc)" identifier (argument_list "(&DAT_0041bafc)" ( (pointer_expression "&DAT_0041bafc" & identifier) ))) ;) (expression_statement "DAT_0041baa0 = &PTR_FUN_004110b0;" (assignment_expression "DAT_0041baa0 = &PTR_FUN_004110b0" identifier = (pointer_expression "&PTR_FUN_004110b0" & identifier)) ;) (expression_statement "FUN_0024a980(&DAT_0041babc);" (call_expression "FUN_0024a980(&DAT_0041babc)" identifier (argument_list "(&DAT_0041babc)" ( (pointer_expression "&DAT_0041babc" & identifier) ))) ;) (expression_statement "DAT_0041ba60 = &PTR_FUN_004110b0;" (assignment_expression "DAT_0041ba60 = &PTR_FUN_004110b0" identifier = (pointer_expression "&PTR_FUN_004110b0" & identifier)) ;) (expression_statement "FUN_0024a980(&DAT_0041ba7c);" (call_expression "FUN_0024a980(&DAT_0041ba7c)" identifier (argument_list "(&DAT_0041ba7c)" ( (pointer_expression "&DAT_0041ba7c" & identifier) ))) ;) (expression_statement "DAT_0041b840 = &PTR_FUN_004110f0;" (assignment_expression "DAT_0041b840 = &PTR_FUN_004110f0" identifier = (pointer_expression "&PTR_FUN_004110f0" & identifier)) ;) (expression_statement "FUN_0024a980(&DAT_0041b85c);" (call_expression "FUN_0024a980(&DAT_0041b85c)" identifier (argument_list "(&DAT_0041b85c)" ( (pointer_expression "&DAT_0041b85c" & identifier) ))) ;) (expression_statement "DAT_0041b800 = &PTR_FUN_004110f0;" (assignment_expression "DAT_0041b800 = &PTR_FUN_004110f0" identifier = (pointer_expression "&PTR_FUN_004110f0" & identifier)) ;) (expression_statement "FUN_0024a980(&DAT_0041b81c);" (call_expression "FUN_0024a980(&DAT_0041b81c)" identifier (argument_list "(&DAT_0041b81c)" ( (pointer_expression "&DAT_0041b81c" & identifier) ))) ;) (expression_statement "DAT_0041b7c0 = &PTR_FUN_004110f0;" (assignment_expression "DAT_0041b7c0 = &PTR_FUN_004110f0" identifier = (pointer_expression "&PTR_FUN_004110f0" & identifier)) ;) (expression_statement "FUN_0024a980(&DAT_0041b7dc);" (call_expression "FUN_0024a980(&DAT_0041b7dc)" identifier (argument_list "(&DAT_0041b7dc)" ( (pointer_expression "&DAT_0041b7dc" & identifier) ))) ;) (expression_statement "puVar1 = PTR_stdout_00413cac;" (assignment_expression "puVar1 = PTR_stdout_00413cac" identifier = identifier) ;) (expression_statement "FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);" (call_expression "FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000)" identifier (argument_list "(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000)" ( (pointer_expression "&DAT_0041b9c0" & identifier) , (pointer_expression "*(undefined4 *)PTR_stdout_00413cac" * (cast_expression "(undefined4 *)PTR_stdout_00413cac" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , number_literal , number_literal ))) ;) (expression_statement "puVar2 = PTR_stdin_00413d98;" (assignment_expression "puVar2 = PTR_stdin_00413d98" identifier = identifier) ;) (expression_statement "FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);" (call_expression "FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000)" identifier (argument_list "(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000)" ( (pointer_expression "&DAT_0041b920" & identifier) , (pointer_expression "*(undefined4 *)PTR_stdin_00413d98" * (cast_expression "(undefined4 *)PTR_stdin_00413d98" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , number_literal , number_literal ))) ;) (expression_statement "puVar3 = PTR_stderr_00413fbc;" (assignment_expression "puVar3 = PTR_stderr_00413fbc" identifier = identifier) ;) (expression_statement "FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);" (call_expression "FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000)" identifier (argument_list "(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000)" ( (pointer_expression "&DAT_0041b880" & identifier) , (pointer_expression "*(undefined4 *)PTR_stderr_00413fbc" * (cast_expression "(undefined4 *)PTR_stderr_00413fbc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , number_literal , number_literal ))) ;) (expression_statement "FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);" (call_expression "FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0)" identifier (argument_list "(&DAT_0041bee4,&DAT_0041b9c0)" ( (pointer_expression "&DAT_0041bee4" & identifier) , (pointer_expression "&DAT_0041b9c0" & identifier) ))) ;) (expression_statement "FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);" (call_expression "FUN_002721d0(&DAT_0041bf88,&DAT_0041b920)" identifier (argument_list "(&DAT_0041bf88,&DAT_0041b920)" ( (pointer_expression "&DAT_0041bf88" & identifier) , (pointer_expression "&DAT_0041b920" & identifier) ))) ;) (expression_statement "FUN_002721d0(&DAT_0041be44,&DAT_0041b880);" (call_expression "FUN_002721d0(&DAT_0041be44,&DAT_0041b880)" identifier (argument_list "(&DAT_0041be44,&DAT_0041b880)" ( (pointer_expression "&DAT_0041be44" & identifier) , (pointer_expression "&DAT_0041b880" & identifier) ))) ;) (expression_statement "FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);" (call_expression "FUN_002721d0(&DAT_0041bda4,&DAT_0041b880)" identifier (argument_list "(&DAT_0041bda4,&DAT_0041b880)" ( (pointer_expression "&DAT_0041bda4" & identifier) , (pointer_expression "&DAT_0041b880" & identifier) ))) ;) (expression_statement "FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);" (call_expression "FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000)" identifier (argument_list "(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000)" ( (pointer_expression "&DAT_0041b720" & identifier) , (pointer_expression "*(undefined4 *)puVar1" * (cast_expression "(undefined4 *)puVar1" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , number_literal , number_literal ))) ;) (expression_statement "FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);" (call_expression "FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000)" identifier (argument_list "(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000)" ( (pointer_expression "&DAT_0041b680" & identifier) , (pointer_expression "*(undefined4 *)puVar2" * (cast_expression "(undefined4 *)puVar2" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , number_literal , number_literal ))) ;) (expression_statement "FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);" (call_expression "FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000)" identifier (argument_list "(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000)" ( (pointer_expression "&DAT_0041b5e0" & identifier) , (pointer_expression "*(undefined4 *)puVar3" * (cast_expression "(undefined4 *)puVar3" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , number_literal , number_literal ))) ;) (expression_statement "FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);" (call_expression "FUN_00272c70(&DAT_0041bc64,&DAT_0041b720)" identifier (argument_list "(&DAT_0041bc64,&DAT_0041b720)" ( (pointer_expression "&DAT_0041bc64" & identifier) , (pointer_expression "&DAT_0041b720" & identifier) ))) ;) (expression_statement "FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);" (call_expression "FUN_00272c70(&DAT_0041bd08,&DAT_0041b680)" identifier (argument_list "(&DAT_0041bd08,&DAT_0041b680)" ( (pointer_expression "&DAT_0041bd08" & identifier) , (pointer_expression "&DAT_0041b680" & identifier) ))) ;) (expression_statement "FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);" (call_expression "FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0)" identifier (argument_list "(&DAT_0041bbc4,&DAT_0041b5e0)" ( (pointer_expression "&DAT_0041bbc4" & identifier) , (pointer_expression "&DAT_0041b5e0" & identifier) ))) ;) (expression_statement "FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);" (call_expression "FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0)" identifier (argument_list "(&DAT_0041bb24,&DAT_0041b5e0)" ( (pointer_expression "&DAT_0041bb24" & identifier) , (pointer_expression "&DAT_0041b5e0" & identifier) ))) ;) (expression_statement "FUN_0024bb80(local_1d);" (call_expression "FUN_0024bb80(local_1d)" identifier (argument_list "(local_1d)" ( identifier ))) ;) (return_statement "return cVar4;" return identifier ;) })) (return_statement "return DAT_00414510;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , LIT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , LIT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , LIT , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , LIT , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , LIT , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , LIT , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (return_statement return IDENT ;) })) (return_statement return IDENT ;) })))
(function_definition "char FUN_0024bc20(char param_1)\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  undefined *puVar3;\n  char cVar4;\n  undefined1 local_1d [13];\n  \n  cVar4 = DAT_00414510;\n  if ((param_1 != '\x01') && (DAT_00414510 != '\0')) {\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    \n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }\n  return DAT_00414510;\n}" (primitive_type "char") (function_declarator "FUN_0024bc20(char param_1)" (identifier "FUN_0024bc20") (parameter_list "(char param_1)" (( "(") (parameter_declaration "char param_1" (primitive_type "char") (identifier "param_1")) () ")"))) (compound_statement "{\n  undefined *puVar1;\n  undefined *puVar2;\n  undefined *puVar3;\n  char cVar4;\n  undefined1 local_1d [13];\n  \n  cVar4 = DAT_00414510;\n  if ((param_1 != '\x01') && (DAT_00414510 != '\0')) {\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    \n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }\n  return DAT_00414510;\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "undefined *puVar2;" (type_identifier "undefined") (pointer_declarator "*puVar2" (* "*") (identifier "puVar2")) (; ";")) (declaration "undefined *puVar3;" (type_identifier "undefined") (pointer_declarator "*puVar3" (* "*") (identifier "puVar3")) (; ";")) (declaration "char cVar4;" (primitive_type "char") (identifier "cVar4") (; ";")) (declaration "undefined1 local_1d [13];" (type_identifier "undefined1") (array_declarator "local_1d [13]" (identifier "local_1d") ([ "[") (number_literal "13") (] "]")) (; ";")) (expression_statement "cVar4 = DAT_00414510;" (assignment_expression "cVar4 = DAT_00414510" (identifier "cVar4") (= "=") (identifier "DAT_00414510")) (; ";")) (if_statement "if ((param_1 != '\x01') && (DAT_00414510 != '\0')) {\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    \n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }" (if "if") (parenthesized_expression "((param_1 != '\x01') && (DAT_00414510 != '\0'))" (( "(") (binary_expression "(param_1 != '\x01') && (DAT_00414510 != '\0')" (parenthesized_expression "(param_1 != '\x01')" (( "(") (binary_expression "param_1 != '\x01'" (identifier "param_1") (!= "!=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(DAT_00414510 != '\0')" (( "(") (binary_expression "DAT_00414510 != '\0'" (identifier "DAT_00414510") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n    FUN_0024b410(local_1d);\n    DAT_00414510 = 0;\n    DAT_0041bae0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041bafc);\n    DAT_0041baa0 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041babc);\n    DAT_0041ba60 = &PTR_FUN_004110b0;\n    FUN_0024a980(&DAT_0041ba7c);\n    DAT_0041b840 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b85c);\n    DAT_0041b800 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b81c);\n    DAT_0041b7c0 = &PTR_FUN_004110f0;\n    FUN_0024a980(&DAT_0041b7dc);\n    puVar1 = PTR_stdout_00413cac;\n                    \n    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);\n    puVar2 = PTR_stdin_00413d98;\n    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);\n    puVar3 = PTR_stderr_00413fbc;\n    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);\n    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);\n    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);\n    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);\n    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);\n    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);\n    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);\n    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);\n    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);\n    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);\n    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);\n    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);\n    FUN_0024bb80(local_1d);\n    return cVar4;\n  }" ({ "{") (expression_statement "FUN_0024b410(local_1d);" (call_expression "FUN_0024b410(local_1d)" (identifier "FUN_0024b410") (argument_list "(local_1d)" (( "(") (identifier "local_1d") () ")"))) (; ";")) (expression_statement "DAT_00414510 = 0;" (assignment_expression "DAT_00414510 = 0" (identifier "DAT_00414510") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_0041bae0 = &PTR_FUN_004110b0;" (assignment_expression "DAT_0041bae0 = &PTR_FUN_004110b0" (identifier "DAT_0041bae0") (= "=") (pointer_expression "&PTR_FUN_004110b0" (& "&") (identifier "PTR_FUN_004110b0"))) (; ";")) (expression_statement "FUN_0024a980(&DAT_0041bafc);" (call_expression "FUN_0024a980(&DAT_0041bafc)" (identifier "FUN_0024a980") (argument_list "(&DAT_0041bafc)" (( "(") (pointer_expression "&DAT_0041bafc" (& "&") (identifier "DAT_0041bafc")) () ")"))) (; ";")) (expression_statement "DAT_0041baa0 = &PTR_FUN_004110b0;" (assignment_expression "DAT_0041baa0 = &PTR_FUN_004110b0" (identifier "DAT_0041baa0") (= "=") (pointer_expression "&PTR_FUN_004110b0" (& "&") (identifier "PTR_FUN_004110b0"))) (; ";")) (expression_statement "FUN_0024a980(&DAT_0041babc);" (call_expression "FUN_0024a980(&DAT_0041babc)" (identifier "FUN_0024a980") (argument_list "(&DAT_0041babc)" (( "(") (pointer_expression "&DAT_0041babc" (& "&") (identifier "DAT_0041babc")) () ")"))) (; ";")) (expression_statement "DAT_0041ba60 = &PTR_FUN_004110b0;" (assignment_expression "DAT_0041ba60 = &PTR_FUN_004110b0" (identifier "DAT_0041ba60") (= "=") (pointer_expression "&PTR_FUN_004110b0" (& "&") (identifier "PTR_FUN_004110b0"))) (; ";")) (expression_statement "FUN_0024a980(&DAT_0041ba7c);" (call_expression "FUN_0024a980(&DAT_0041ba7c)" (identifier "FUN_0024a980") (argument_list "(&DAT_0041ba7c)" (( "(") (pointer_expression "&DAT_0041ba7c" (& "&") (identifier "DAT_0041ba7c")) () ")"))) (; ";")) (expression_statement "DAT_0041b840 = &PTR_FUN_004110f0;" (assignment_expression "DAT_0041b840 = &PTR_FUN_004110f0" (identifier "DAT_0041b840") (= "=") (pointer_expression "&PTR_FUN_004110f0" (& "&") (identifier "PTR_FUN_004110f0"))) (; ";")) (expression_statement "FUN_0024a980(&DAT_0041b85c);" (call_expression "FUN_0024a980(&DAT_0041b85c)" (identifier "FUN_0024a980") (argument_list "(&DAT_0041b85c)" (( "(") (pointer_expression "&DAT_0041b85c" (& "&") (identifier "DAT_0041b85c")) () ")"))) (; ";")) (expression_statement "DAT_0041b800 = &PTR_FUN_004110f0;" (assignment_expression "DAT_0041b800 = &PTR_FUN_004110f0" (identifier "DAT_0041b800") (= "=") (pointer_expression "&PTR_FUN_004110f0" (& "&") (identifier "PTR_FUN_004110f0"))) (; ";")) (expression_statement "FUN_0024a980(&DAT_0041b81c);" (call_expression "FUN_0024a980(&DAT_0041b81c)" (identifier "FUN_0024a980") (argument_list "(&DAT_0041b81c)" (( "(") (pointer_expression "&DAT_0041b81c" (& "&") (identifier "DAT_0041b81c")) () ")"))) (; ";")) (expression_statement "DAT_0041b7c0 = &PTR_FUN_004110f0;" (assignment_expression "DAT_0041b7c0 = &PTR_FUN_004110f0" (identifier "DAT_0041b7c0") (= "=") (pointer_expression "&PTR_FUN_004110f0" (& "&") (identifier "PTR_FUN_004110f0"))) (; ";")) (expression_statement "FUN_0024a980(&DAT_0041b7dc);" (call_expression "FUN_0024a980(&DAT_0041b7dc)" (identifier "FUN_0024a980") (argument_list "(&DAT_0041b7dc)" (( "(") (pointer_expression "&DAT_0041b7dc" (& "&") (identifier "DAT_0041b7dc")) () ")"))) (; ";")) (expression_statement "puVar1 = PTR_stdout_00413cac;" (assignment_expression "puVar1 = PTR_stdout_00413cac" (identifier "puVar1") (= "=") (identifier "PTR_stdout_00413cac")) (; ";")) (expression_statement "FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);" (call_expression "FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000)" (identifier "FUN_0027e2b0") (argument_list "(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000)" (( "(") (pointer_expression "&DAT_0041b9c0" (& "&") (identifier "DAT_0041b9c0")) (, ",") (pointer_expression "*(undefined4 *)PTR_stdout_00413cac" (* "*") (cast_expression "(undefined4 *)PTR_stdout_00413cac" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdout_00413cac"))) (, ",") (number_literal "0x10") (, ",") (number_literal "0x2000") () ")"))) (; ";")) (expression_statement "puVar2 = PTR_stdin_00413d98;" (assignment_expression "puVar2 = PTR_stdin_00413d98" (identifier "puVar2") (= "=") (identifier "PTR_stdin_00413d98")) (; ";")) (expression_statement "FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);" (call_expression "FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000)" (identifier "FUN_0027e2b0") (argument_list "(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000)" (( "(") (pointer_expression "&DAT_0041b920" (& "&") (identifier "DAT_0041b920")) (, ",") (pointer_expression "*(undefined4 *)PTR_stdin_00413d98" (* "*") (cast_expression "(undefined4 *)PTR_stdin_00413d98" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdin_00413d98"))) (, ",") (number_literal "8") (, ",") (number_literal "0x2000") () ")"))) (; ";")) (expression_statement "puVar3 = PTR_stderr_00413fbc;" (assignment_expression "puVar3 = PTR_stderr_00413fbc" (identifier "puVar3") (= "=") (identifier "PTR_stderr_00413fbc")) (; ";")) (expression_statement "FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);" (call_expression "FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000)" (identifier "FUN_0027e2b0") (argument_list "(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000)" (( "(") (pointer_expression "&DAT_0041b880" (& "&") (identifier "DAT_0041b880")) (, ",") (pointer_expression "*(undefined4 *)PTR_stderr_00413fbc" (* "*") (cast_expression "(undefined4 *)PTR_stderr_00413fbc" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stderr_00413fbc"))) (, ",") (number_literal "0x10") (, ",") (number_literal "0x2000") () ")"))) (; ";")) (expression_statement "FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);" (call_expression "FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0)" (identifier "FUN_002721d0") (argument_list "(&DAT_0041bee4,&DAT_0041b9c0)" (( "(") (pointer_expression "&DAT_0041bee4" (& "&") (identifier "DAT_0041bee4")) (, ",") (pointer_expression "&DAT_0041b9c0" (& "&") (identifier "DAT_0041b9c0")) () ")"))) (; ";")) (expression_statement "FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);" (call_expression "FUN_002721d0(&DAT_0041bf88,&DAT_0041b920)" (identifier "FUN_002721d0") (argument_list "(&DAT_0041bf88,&DAT_0041b920)" (( "(") (pointer_expression "&DAT_0041bf88" (& "&") (identifier "DAT_0041bf88")) (, ",") (pointer_expression "&DAT_0041b920" (& "&") (identifier "DAT_0041b920")) () ")"))) (; ";")) (expression_statement "FUN_002721d0(&DAT_0041be44,&DAT_0041b880);" (call_expression "FUN_002721d0(&DAT_0041be44,&DAT_0041b880)" (identifier "FUN_002721d0") (argument_list "(&DAT_0041be44,&DAT_0041b880)" (( "(") (pointer_expression "&DAT_0041be44" (& "&") (identifier "DAT_0041be44")) (, ",") (pointer_expression "&DAT_0041b880" (& "&") (identifier "DAT_0041b880")) () ")"))) (; ";")) (expression_statement "FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);" (call_expression "FUN_002721d0(&DAT_0041bda4,&DAT_0041b880)" (identifier "FUN_002721d0") (argument_list "(&DAT_0041bda4,&DAT_0041b880)" (( "(") (pointer_expression "&DAT_0041bda4" (& "&") (identifier "DAT_0041bda4")) (, ",") (pointer_expression "&DAT_0041b880" (& "&") (identifier "DAT_0041b880")) () ")"))) (; ";")) (expression_statement "FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);" (call_expression "FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000)" (identifier "FUN_0027e6e0") (argument_list "(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000)" (( "(") (pointer_expression "&DAT_0041b720" (& "&") (identifier "DAT_0041b720")) (, ",") (pointer_expression "*(undefined4 *)puVar1" (* "*") (cast_expression "(undefined4 *)puVar1" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1"))) (, ",") (number_literal "0x10") (, ",") (number_literal "0x2000") () ")"))) (; ";")) (expression_statement "FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);" (call_expression "FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000)" (identifier "FUN_0027e6e0") (argument_list "(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000)" (( "(") (pointer_expression "&DAT_0041b680" (& "&") (identifier "DAT_0041b680")) (, ",") (pointer_expression "*(undefined4 *)puVar2" (* "*") (cast_expression "(undefined4 *)puVar2" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar2"))) (, ",") (number_literal "8") (, ",") (number_literal "0x2000") () ")"))) (; ";")) (expression_statement "FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);" (call_expression "FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000)" (identifier "FUN_0027e6e0") (argument_list "(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000)" (( "(") (pointer_expression "&DAT_0041b5e0" (& "&") (identifier "DAT_0041b5e0")) (, ",") (pointer_expression "*(undefined4 *)puVar3" (* "*") (cast_expression "(undefined4 *)puVar3" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar3"))) (, ",") (number_literal "0x10") (, ",") (number_literal "0x2000") () ")"))) (; ";")) (expression_statement "FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);" (call_expression "FUN_00272c70(&DAT_0041bc64,&DAT_0041b720)" (identifier "FUN_00272c70") (argument_list "(&DAT_0041bc64,&DAT_0041b720)" (( "(") (pointer_expression "&DAT_0041bc64" (& "&") (identifier "DAT_0041bc64")) (, ",") (pointer_expression "&DAT_0041b720" (& "&") (identifier "DAT_0041b720")) () ")"))) (; ";")) (expression_statement "FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);" (call_expression "FUN_00272c70(&DAT_0041bd08,&DAT_0041b680)" (identifier "FUN_00272c70") (argument_list "(&DAT_0041bd08,&DAT_0041b680)" (( "(") (pointer_expression "&DAT_0041bd08" (& "&") (identifier "DAT_0041bd08")) (, ",") (pointer_expression "&DAT_0041b680" (& "&") (identifier "DAT_0041b680")) () ")"))) (; ";")) (expression_statement "FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);" (call_expression "FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0)" (identifier "FUN_00272c70") (argument_list "(&DAT_0041bbc4,&DAT_0041b5e0)" (( "(") (pointer_expression "&DAT_0041bbc4" (& "&") (identifier "DAT_0041bbc4")) (, ",") (pointer_expression "&DAT_0041b5e0" (& "&") (identifier "DAT_0041b5e0")) () ")"))) (; ";")) (expression_statement "FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);" (call_expression "FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0)" (identifier "FUN_00272c70") (argument_list "(&DAT_0041bb24,&DAT_0041b5e0)" (( "(") (pointer_expression "&DAT_0041bb24" (& "&") (identifier "DAT_0041bb24")) (, ",") (pointer_expression "&DAT_0041b5e0" (& "&") (identifier "DAT_0041b5e0")) () ")"))) (; ";")) (expression_statement "FUN_0024bb80(local_1d);" (call_expression "FUN_0024bb80(local_1d)" (identifier "FUN_0024bb80") (argument_list "(local_1d)" (( "(") (identifier "local_1d") () ")"))) (; ";")) (return_statement "return cVar4;" (return "return") (identifier "cVar4") (; ";")) (} "}"))) (return_statement "return DAT_00414510;" (return "return") (identifier "DAT_00414510") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.dx replaced with injection: get_pc_thunk_dx */
/* std::ios_base::sync_with_stdio(bool) */

char std::ios_base::function_1(bool param_1)

{
  type_1 *puVar1;
  type_1 *puVar2;
  type_1 *puVar3;
  char cVar4;
  type_2 local_1d [13];
  
  cVar4 = type_2::var_1;
  if ((!param_1) && (type_2::var_1 != '\0')) {
    Init::type_2(local_1d);
    Init::var_1 = 0;
    __gnu_internal::buf_cout_sync = &PTR__streambuf_004110b0;
    locale::~var_2((var_2 *)&DAT_0041bafc);
    __gnu_internal::buf_cin_sync = &PTR__streambuf_004110b0;
    locale::~var_2((var_2 *)&DAT_0041babc);
    __gnu_internal::buf_cerr_sync = &PTR__streambuf_004110b0;
    locale::~var_2((var_2 *)&DAT_0041ba7c);
    __gnu_internal::buf_wcout_sync = &PTR__wstreambuf_004110f0;
    locale::~var_2((var_2 *)&DAT_0041b85c);
    __gnu_internal::buf_wcin_sync = &PTR__wstreambuf_004110f0;
    locale::~var_2((var_2 *)&DAT_0041b81c);
    __gnu_internal::buf_wcerr_sync = &PTR__wstreambuf_004110f0;
    locale::~var_2((var_2 *)&DAT_0041b7dc);
    puVar1 = PTR_stdout_00413cac;
                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */
    var_5<var_4,std::var_3<var_4>>::var_5
              ((var_5<var_4,std::var_3<var_4>> *)__gnu_internal::buf_cout,
               *(type_3 **)PTR_stdout_00413cac,_S_out,0x2000);
    puVar2 = PTR_stdin_00413d98;
    var_5<var_4,std::var_3<var_4>>::var_5
              ((var_5<var_4,std::var_3<var_4>> *)__gnu_internal::buf_cin,
               *(type_3 **)PTR_stdin_00413d98,_S_in,0x2000);
    puVar3 = PTR_stderr_00413fbc;
    var_5<var_4,std::var_3<var_4>>::var_5
              ((var_5<var_4,std::var_3<var_4>> *)__gnu_internal::buf_cerr,
               *(type_3 **)PTR_stderr_00413fbc,_S_out,0x2000);
    ios::var_6((type_4 *)&DAT_0041bee4);
    ios::var_6((type_4 *)&DAT_0041bf88);
    ios::var_6((type_4 *)&DAT_0041be44);
    ios::var_6((type_4 *)&DAT_0041bda4);
    var_5<var_7,std::var_3<var_7>>::var_5
              ((var_5<var_7,std::var_3<var_7>> *)__gnu_internal::buf_wcout,
               *(type_3 **)puVar1,_S_out,0x2000);
    var_5<var_7,std::var_3<var_7>>::var_5
              ((var_5<var_7,std::var_3<var_7>> *)__gnu_internal::buf_wcin,
               *(type_3 **)puVar2,_S_in,0x2000);
    var_5<var_7,std::var_3<var_7>>::var_5
              ((var_5<var_7,std::var_3<var_7>> *)__gnu_internal::buf_wcerr,
               *(type_3 **)puVar3,_S_out,0x2000);
    wios::var_6((type_5 *)&DAT_0041bc64);
    wios::var_6((type_5 *)&DAT_0041bd08);
    wios::var_6((type_5 *)&DAT_0041bbc4);
    wios::var_6((type_5 *)&DAT_0041bb24);
    Init::~type_2(local_1d);
    return cVar4;
  }
  return type_2::var_1;
}


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

/* WARNING: Function: __i686.get_pc_thunk.dx replaced with injection: get_pc_thunk_dx */

char MASKED(char param_1)

{
  undefined *puVar1;
  undefined *puVar2;
  undefined *puVar3;
  char cVar4;
  undefined1 local_1d [13];
  
  cVar4 = DAT_00414510;
  if ((param_1 != '\x01') && (DAT_00414510 != '\0')) {
    FUN_0024b410(local_1d);
    DAT_00414510 = 0;
    DAT_0041bae0 = &PTR_FUN_004110b0;
    FUN_0024a980(&DAT_0041bafc);
    DAT_0041baa0 = &PTR_FUN_004110b0;
    FUN_0024a980(&DAT_0041babc);
    DAT_0041ba60 = &PTR_FUN_004110b0;
    FUN_0024a980(&DAT_0041ba7c);
    DAT_0041b840 = &PTR_FUN_004110f0;
    FUN_0024a980(&DAT_0041b85c);
    DAT_0041b800 = &PTR_FUN_004110f0;
    FUN_0024a980(&DAT_0041b81c);
    DAT_0041b7c0 = &PTR_FUN_004110f0;
    FUN_0024a980(&DAT_0041b7dc);
    puVar1 = PTR_stdout_00413cac;
                    /* try { // try from 0024bd1e to 0024be6e has its CatchHandler @ 0024be87 */
    FUN_0027e2b0(&DAT_0041b9c0,*(undefined4 *)PTR_stdout_00413cac,0x10,0x2000);
    puVar2 = PTR_stdin_00413d98;
    FUN_0027e2b0(&DAT_0041b920,*(undefined4 *)PTR_stdin_00413d98,8,0x2000);
    puVar3 = PTR_stderr_00413fbc;
    FUN_0027e2b0(&DAT_0041b880,*(undefined4 *)PTR_stderr_00413fbc,0x10,0x2000);
    FUN_002721d0(&DAT_0041bee4,&DAT_0041b9c0);
    FUN_002721d0(&DAT_0041bf88,&DAT_0041b920);
    FUN_002721d0(&DAT_0041be44,&DAT_0041b880);
    FUN_002721d0(&DAT_0041bda4,&DAT_0041b880);
    FUN_0027e6e0(&DAT_0041b720,*(undefined4 *)puVar1,0x10,0x2000);
    FUN_0027e6e0(&DAT_0041b680,*(undefined4 *)puVar2,8,0x2000);
    FUN_0027e6e0(&DAT_0041b5e0,*(undefined4 *)puVar3,0x10,0x2000);
    FUN_00272c70(&DAT_0041bc64,&DAT_0041b720);
    FUN_00272c70(&DAT_0041bd08,&DAT_0041b680);
    FUN_00272c70(&DAT_0041bbc4,&DAT_0041b5e0);
    FUN_00272c70(&DAT_0041bb24,&DAT_0041b5e0);
    FUN_0024bb80(local_1d);
    return cVar4;
  }
  return DAT_00414510;
}

