
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Unknown calling convention */
/* WARNING: Enum "anon_enum_32": Some values do not have unique names */

Terminal * term_init(Conf *myconf,unicode_data *ucsdata,void *frontend)

{
  Terminal *term;
  Conf *pCVar1;
  
  term = (Terminal *)safemalloc(1,0x1174);
  term->frontend = frontend;
  term->ucsdata = ucsdata;
  pCVar1 = conf_copy(myconf);
  term->compatibility_level = 0xffff;
  term->id_string[4] = 'c';
  term->id_string[5] = '\0';
  term->conf = pCVar1;
  term->logctx = (void *)0x0;
  builtin_strncpy(term->id_string,"\x1b[?6",4);
  term->tblink_pending = 0;
  term->cblink_pending = 0;
  term->paste_buffer = (wchar_t *)0x0;
  term->paste_len = 0;
  bufchain_init(&term->inbuf);
  bufchain_init(&term->printer_buf);
  term->curstype = 0;
  term->only_printing = 0;
  term->printing = 0;
  term->print_job = (printer_job *)0x0;
  term->vt52_mode = 0;
  term->cr_lf_return = 0;
  term->seen_disp_event = 0;
  term->mouse_is_down = 0;
  term->reset_132 = 0;
  term->tblinker = 0;
  term->cblinker = 0;
  term->has_focus = 1;
  term->repeat_off = 0;
  term->termstate = ADDRTYPE_UNSPEC;
  term->selstate = ADDRTYPE_UNSPEC;
  term_copy_stuff_from_conf(term);
  term->scrollback = (tree234 *)0x0;
  term->alt_screen = (tree234 *)0x0;
  term->screen = (tree234 *)0x0;
  term->tempsblines = 0;
  term->alt_sblines = 0;
  term->disptop = 0;
  term->disptext = (termline **)0x0;
  term->dispcursy = -1;
  term->dispcursx = -1;
  term->tabs = (uchar *)0x0;
  term->selstate = ADDRTYPE_UNSPEC;
  (term->selend).y = 0;
  (term->selend).x = 0;
  (term->selstart).y = 0;
  (term->selstart).x = 0;
  term->cols = -1;
  term->rows = -1;
  power_on(term,1);
  term->beeptail = (beeptime *)0x0;
  term->beephead = (beeptime *)0x0;
  term->nbeeps = 0;
  term->lastbeep = L'\0';
  term->beep_overloaded = 0;
  term->attr_mask = -1;
  term->resize_fn = (_func_void_void_ptr_int_int *)0x0;
  term->resize_ctx = (void *)0x0;
  term->in_term_out = 0;
  term->ltemp = (termchar *)0x0;
  term->ltemp_size = 0;
  term->wcFrom = (bidi_char *)0x0;
  term->wcTo = (bidi_char *)0x0;
  term->wcFromTo_size = 0;
  term->window_update_pending = 0;
  term->bidi_cache_size = 0;
  term->post_bidi_cache = (bidi_cache_entry *)0x0;
  term->pre_bidi_cache = (bidi_cache_entry *)0x0;
  (term->basic_erase_char).chr = 0xd820;
  (term->basic_erase_char).attr = 0x20500;
  (term->basic_erase_char).cc_next = 0;
  (term->erase_char).chr = 0xd820;
  (term->erase_char).attr = 0x20500;
  (term->erase_char).cc_next = 0;
  return term;
}



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

undefined4 * FUN_0003ee70(undefined4 param_1,undefined4 param_2,undefined4 param_3)

{
  undefined4 *puVar1;
  undefined4 uVar2;
  
  puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174);
  puVar1[0x422] = param_3;
  puVar1[0x424] = param_2;
  uVar2 = FUN_0001ea50(param_1);
  *puVar1 = 0xffff;
  *(undefined2 *)(puVar1 + 0x291) = 99;
  puVar1[0x425] = uVar2;
  puVar1[0x423] = 0;
  puVar1[0x290] = 0x363f5b1b;
  puVar1[0x429] = 0;
  puVar1[0x42a] = 0;
  puVar1[0x41c] = 0;
  puVar1[0x41d] = 0;
  FUN_0002cfe0(puVar1 + 0x18);
  FUN_0002cfe0(puVar1 + 0x3e);
  puVar1[9] = 0;
  puVar1[0x3c] = 0;
  puVar1[0x3b] = 0;
  puVar1[0x41] = 0;
  puVar1[0x52] = 0;
  puVar1[0x54] = 0;
  puVar1[0x55] = 0;
  puVar1[0x5a] = 0;
  puVar1[0x2d] = 0;
  puVar1[0x30] = 0;
  puVar1[0x2f] = 0;
  puVar1[0x4d] = 1;
  puVar1[0x53] = 0;
  puVar1[0x391] = 0;
  puVar1[0x392] = 0;
  FUN_0003d000(puVar1);
  puVar1[1] = 0;
  puVar1[3] = 0;
  puVar1[2] = 0;
  puVar1[5] = 0;
  puVar1[0x6a] = 0;
  puVar1[4] = 0;
  puVar1[6] = 0;
  puVar1[8] = 0xffffffff;
  puVar1[7] = 0xffffffff;
  puVar1[0x390] = 0;
  puVar1[0x392] = 0;
  puVar1[0x397] = 0;
  puVar1[0x398] = 0;
  puVar1[0x395] = 0;
  puVar1[0x396] = 0;
  puVar1[0x4b] = 0xffffffff;
  puVar1[0x4a] = 0xffffffff;
  FUN_0003e9b0();
  puVar1[0xb] = 0;
  puVar1[10] = 0;
  puVar1[0xc] = 0;
  puVar1[0xe] = 0;
  puVar1[0xd] = 0;
  puVar1[0x41b] = 0xffffffff;
  puVar1[0x41f] = 0;
  puVar1[0x420] = 0;
  puVar1[0x426] = 0;
  puVar1[0x42d] = 0;
  puVar1[0x42e] = 0;
  puVar1[0x42f] = 0;
  puVar1[0x430] = 0;
  puVar1[0x431] = 0;
  puVar1[0x427] = 0;
  puVar1[0x434] = 0;
  puVar1[0x433] = 0;
  puVar1[0x432] = 0;
  puVar1[0x12] = 0xd820;
  puVar1[0x13] = 0x20500;
  puVar1[0x14] = 0;
  puVar1[0x15] = 0xd820;
  puVar1[0x16] = 0x20500;
  puVar1[0x17] = 0;
  return puVar1;
}


PUSH ESI
PUSH EBX
CALL 0x0001b410
ADD EBX,0x7192d
SUB ESP,0xc
PUSH 0x1174
PUSH 0x1
CALL 0x0002d1f0
MOV ESI,EAX
MOV EAX,dword ptr [ESP + 0x28]
MOV dword ptr [ESI + 0x1088],EAX
MOV EAX,dword ptr [ESP + 0x24]
MOV dword ptr [ESI + 0x1090],EAX
POP EAX
PUSH dword ptr [ESP + 0x1c]
CALL 0x0001ea50
MOV EDX,0x63
MOV dword ptr [ESI],0xffff
MOV word ptr [ESI + 0xa44],DX
MOV dword ptr [ESI + 0x1094],EAX
LEA EAX,[ESI + 0x60]
MOV dword ptr [ESI + 0x108c],0x0
MOV dword ptr [ESI + 0xa40],0x363f5b1b
MOV dword ptr [ESI + 0x10a4],0x0
MOV dword ptr [ESI + 0x10a8],0x0
MOV dword ptr [ESI + 0x1070],0x0
MOV dword ptr [ESI + 0x1074],0x0
MOV dword ptr [ESP],EAX
CALL 0x0002cfe0
LEA EAX,[ESI + 0xf8]
MOV dword ptr [ESP],EAX
CALL 0x0002cfe0
MOV dword ptr [ESI + 0x24],0x0
MOV dword ptr [ESI + 0xf0],0x0
MOV dword ptr [ESI + 0xec],0x0
MOV dword ptr [ESI + 0x104],0x0
MOV dword ptr [ESI + 0x148],0x0
MOV dword ptr [ESI + 0x150],0x0
MOV dword ptr [ESI + 0x154],0x0
MOV dword ptr [ESI + 0x168],0x0
MOV dword ptr [ESI + 0xb4],0x0
MOV dword ptr [ESI + 0xc0],0x0
MOV dword ptr [ESI + 0xbc],0x0
MOV dword ptr [ESI + 0x134],0x1
MOV dword ptr [ESI + 0x14c],0x0
MOV dword ptr [ESI + 0xe44],0x0
MOV dword ptr [ESI + 0xe48],0x0
MOV dword ptr [ESP],ESI
CALL 0x0003d000
MOV dword ptr [ESI + 0x4],0x0
MOV EAX,ESI
MOV EDX,0x1
MOV dword ptr [ESI + 0xc],0x0
MOV dword ptr [ESI + 0x8],0x0
MOV dword ptr [ESI + 0x14],0x0
MOV dword ptr [ESI + 0x1a8],0x0
MOV dword ptr [ESI + 0x10],0x0
MOV dword ptr [ESI + 0x18],0x0
MOV dword ptr [ESI + 0x20],0xffffffff
MOV dword ptr [ESI + 0x1c],0xffffffff
MOV dword ptr [ESI + 0xe40],0x0
MOV dword ptr [ESI + 0xe48],0x0
MOV dword ptr [ESI + 0xe5c],0x0
MOV dword ptr [ESI + 0xe60],0x0
MOV dword ptr [ESI + 0xe54],0x0
MOV dword ptr [ESI + 0xe58],0x0
MOV dword ptr [ESI + 0x12c],0xffffffff
MOV dword ptr [ESI + 0x128],0xffffffff
CALL 0x0003e9b0
MOV dword ptr [ESI + 0x2c],0x0
MOV EAX,ESI
MOV dword ptr [ESI + 0x28],0x0
MOV dword ptr [ESI + 0x30],0x0
MOV dword ptr [ESI + 0x38],0x0
MOV dword ptr [ESI + 0x34],0x0
MOV dword ptr [ESI + 0x106c],0xffffffff
MOV dword ptr [ESI + 0x107c],0x0
MOV dword ptr [ESI + 0x1080],0x0
MOV dword ptr [ESI + 0x1098],0x0
MOV dword ptr [ESI + 0x10b4],0x0
MOV dword ptr [ESI + 0x10b8],0x0
MOV dword ptr [ESI + 0x10bc],0x0
MOV dword ptr [ESI + 0x10c0],0x0
MOV dword ptr [ESI + 0x10c4],0x0
MOV dword ptr [ESI + 0x109c],0x0
MOV dword ptr [ESI + 0x10d0],0x0
MOV dword ptr [ESI + 0x10cc],0x0
MOV dword ptr [ESI + 0x10c8],0x0
MOV dword ptr [ESI + 0x48],0xd820
MOV dword ptr [ESI + 0x4c],0x20500
MOV dword ptr [ESI + 0x50],0x0
MOV dword ptr [ESI + 0x54],0xd820
MOV dword ptr [ESI + 0x58],0x20500
MOV dword ptr [ESI + 0x5c],0x0
ADD ESP,0x14
POP EBX
POP ESI
RET
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nundefined4 * FUN_0003ee70(undefined4 param_1,undefined4 param_2,undefined4 param_3)\n\n{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  \n  puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174);\n  puVar1[0x422] = param_3;\n  puVar1[0x424] = param_2;\n  uVar2 = FUN_0001ea50(param_1);\n  *puVar1 = 0xffff;\n  *(undefined2 *)(puVar1 + 0x291) = 99;\n  puVar1[0x425] = uVar2;\n  puVar1[0x423] = 0;\n  puVar1[0x290] = 0x363f5b1b;\n  puVar1[0x429] = 0;\n  puVar1[0x42a] = 0;\n  puVar1[0x41c] = 0;\n  puVar1[0x41d] = 0;\n  FUN_0002cfe0(puVar1 + 0x18);\n  FUN_0002cfe0(puVar1 + 0x3e);\n  puVar1[9] = 0;\n  puVar1[0x3c] = 0;\n  puVar1[0x3b] = 0;\n  puVar1[0x41] = 0;\n  puVar1[0x52] = 0;\n  puVar1[0x54] = 0;\n  puVar1[0x55] = 0;\n  puVar1[0x5a] = 0;\n  puVar1[0x2d] = 0;\n  puVar1[0x30] = 0;\n  puVar1[0x2f] = 0;\n  puVar1[0x4d] = 1;\n  puVar1[0x53] = 0;\n  puVar1[0x391] = 0;\n  puVar1[0x392] = 0;\n  FUN_0003d000(puVar1);\n  puVar1[1] = 0;\n  puVar1[3] = 0;\n  puVar1[2] = 0;\n  puVar1[5] = 0;\n  puVar1[0x6a] = 0;\n  puVar1[4] = 0;\n  puVar1[6] = 0;\n  puVar1[8] = 0xffffffff;\n  puVar1[7] = 0xffffffff;\n  puVar1[0x390] = 0;\n  puVar1[0x392] = 0;\n  puVar1[0x397] = 0;\n  puVar1[0x398] = 0;\n  puVar1[0x395] = 0;\n  puVar1[0x396] = 0;\n  puVar1[0x4b] = 0xffffffff;\n  puVar1[0x4a] = 0xffffffff;\n  FUN_0003e9b0();\n  puVar1[0xb] = 0;\n  puVar1[10] = 0;\n  puVar1[0xc] = 0;\n  puVar1[0xe] = 0;\n  puVar1[0xd] = 0;\n  puVar1[0x41b] = 0xffffffff;\n  puVar1[0x41f] = 0;\n  puVar1[0x420] = 0;\n  puVar1[0x426] = 0;\n  puVar1[0x42d] = 0;\n  puVar1[0x42e] = 0;\n  puVar1[0x42f] = 0;\n  puVar1[0x430] = 0;\n  puVar1[0x431] = 0;\n  puVar1[0x427] = 0;\n  puVar1[0x434] = 0;\n  puVar1[0x433] = 0;\n  puVar1[0x432] = 0;\n  puVar1[0x12] = 0xd820;\n  puVar1[0x13] = 0x20500;\n  puVar1[0x14] = 0;\n  puVar1[0x15] = 0xd820;\n  puVar1[0x16] = 0x20500;\n  puVar1[0x17] = 0;\n  return puVar1;\n}\n\n" comment (function_definition "undefined4 * FUN_0003ee70(undefined4 param_1,undefined4 param_2,undefined4 param_3)\n\n{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  \n  puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174);\n  puVar1[0x422] = param_3;\n  puVar1[0x424] = param_2;\n  uVar2 = FUN_0001ea50(param_1);\n  *puVar1 = 0xffff;\n  *(undefined2 *)(puVar1 + 0x291) = 99;\n  puVar1[0x425] = uVar2;\n  puVar1[0x423] = 0;\n  puVar1[0x290] = 0x363f5b1b;\n  puVar1[0x429] = 0;\n  puVar1[0x42a] = 0;\n  puVar1[0x41c] = 0;\n  puVar1[0x41d] = 0;\n  FUN_0002cfe0(puVar1 + 0x18);\n  FUN_0002cfe0(puVar1 + 0x3e);\n  puVar1[9] = 0;\n  puVar1[0x3c] = 0;\n  puVar1[0x3b] = 0;\n  puVar1[0x41] = 0;\n  puVar1[0x52] = 0;\n  puVar1[0x54] = 0;\n  puVar1[0x55] = 0;\n  puVar1[0x5a] = 0;\n  puVar1[0x2d] = 0;\n  puVar1[0x30] = 0;\n  puVar1[0x2f] = 0;\n  puVar1[0x4d] = 1;\n  puVar1[0x53] = 0;\n  puVar1[0x391] = 0;\n  puVar1[0x392] = 0;\n  FUN_0003d000(puVar1);\n  puVar1[1] = 0;\n  puVar1[3] = 0;\n  puVar1[2] = 0;\n  puVar1[5] = 0;\n  puVar1[0x6a] = 0;\n  puVar1[4] = 0;\n  puVar1[6] = 0;\n  puVar1[8] = 0xffffffff;\n  puVar1[7] = 0xffffffff;\n  puVar1[0x390] = 0;\n  puVar1[0x392] = 0;\n  puVar1[0x397] = 0;\n  puVar1[0x398] = 0;\n  puVar1[0x395] = 0;\n  puVar1[0x396] = 0;\n  puVar1[0x4b] = 0xffffffff;\n  puVar1[0x4a] = 0xffffffff;\n  FUN_0003e9b0();\n  puVar1[0xb] = 0;\n  puVar1[10] = 0;\n  puVar1[0xc] = 0;\n  puVar1[0xe] = 0;\n  puVar1[0xd] = 0;\n  puVar1[0x41b] = 0xffffffff;\n  puVar1[0x41f] = 0;\n  puVar1[0x420] = 0;\n  puVar1[0x426] = 0;\n  puVar1[0x42d] = 0;\n  puVar1[0x42e] = 0;\n  puVar1[0x42f] = 0;\n  puVar1[0x430] = 0;\n  puVar1[0x431] = 0;\n  puVar1[0x427] = 0;\n  puVar1[0x434] = 0;\n  puVar1[0x433] = 0;\n  puVar1[0x432] = 0;\n  puVar1[0x12] = 0xd820;\n  puVar1[0x13] = 0x20500;\n  puVar1[0x14] = 0;\n  puVar1[0x15] = 0xd820;\n  puVar1[0x16] = 0x20500;\n  puVar1[0x17] = 0;\n  return puVar1;\n}" type_identifier (pointer_declarator "* FUN_0003ee70(undefined4 param_1,undefined4 param_2,undefined4 param_3)" * (function_declarator "FUN_0003ee70(undefined4 param_1,undefined4 param_2,undefined4 param_3)" identifier (parameter_list "(undefined4 param_1,undefined4 param_2,undefined4 param_3)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) )))) (compound_statement "{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  \n  puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174);\n  puVar1[0x422] = param_3;\n  puVar1[0x424] = param_2;\n  uVar2 = FUN_0001ea50(param_1);\n  *puVar1 = 0xffff;\n  *(undefined2 *)(puVar1 + 0x291) = 99;\n  puVar1[0x425] = uVar2;\n  puVar1[0x423] = 0;\n  puVar1[0x290] = 0x363f5b1b;\n  puVar1[0x429] = 0;\n  puVar1[0x42a] = 0;\n  puVar1[0x41c] = 0;\n  puVar1[0x41d] = 0;\n  FUN_0002cfe0(puVar1 + 0x18);\n  FUN_0002cfe0(puVar1 + 0x3e);\n  puVar1[9] = 0;\n  puVar1[0x3c] = 0;\n  puVar1[0x3b] = 0;\n  puVar1[0x41] = 0;\n  puVar1[0x52] = 0;\n  puVar1[0x54] = 0;\n  puVar1[0x55] = 0;\n  puVar1[0x5a] = 0;\n  puVar1[0x2d] = 0;\n  puVar1[0x30] = 0;\n  puVar1[0x2f] = 0;\n  puVar1[0x4d] = 1;\n  puVar1[0x53] = 0;\n  puVar1[0x391] = 0;\n  puVar1[0x392] = 0;\n  FUN_0003d000(puVar1);\n  puVar1[1] = 0;\n  puVar1[3] = 0;\n  puVar1[2] = 0;\n  puVar1[5] = 0;\n  puVar1[0x6a] = 0;\n  puVar1[4] = 0;\n  puVar1[6] = 0;\n  puVar1[8] = 0xffffffff;\n  puVar1[7] = 0xffffffff;\n  puVar1[0x390] = 0;\n  puVar1[0x392] = 0;\n  puVar1[0x397] = 0;\n  puVar1[0x398] = 0;\n  puVar1[0x395] = 0;\n  puVar1[0x396] = 0;\n  puVar1[0x4b] = 0xffffffff;\n  puVar1[0x4a] = 0xffffffff;\n  FUN_0003e9b0();\n  puVar1[0xb] = 0;\n  puVar1[10] = 0;\n  puVar1[0xc] = 0;\n  puVar1[0xe] = 0;\n  puVar1[0xd] = 0;\n  puVar1[0x41b] = 0xffffffff;\n  puVar1[0x41f] = 0;\n  puVar1[0x420] = 0;\n  puVar1[0x426] = 0;\n  puVar1[0x42d] = 0;\n  puVar1[0x42e] = 0;\n  puVar1[0x42f] = 0;\n  puVar1[0x430] = 0;\n  puVar1[0x431] = 0;\n  puVar1[0x427] = 0;\n  puVar1[0x434] = 0;\n  puVar1[0x433] = 0;\n  puVar1[0x432] = 0;\n  puVar1[0x12] = 0xd820;\n  puVar1[0x13] = 0x20500;\n  puVar1[0x14] = 0;\n  puVar1[0x15] = 0xd820;\n  puVar1[0x16] = 0x20500;\n  puVar1[0x17] = 0;\n  return puVar1;\n}" { (declaration "undefined4 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (expression_statement "puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174);" (assignment_expression "puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174)" identifier = (cast_expression "(undefined4 *)FUN_0002d1f0(1,0x1174)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0002d1f0(1,0x1174)" identifier (argument_list "(1,0x1174)" ( number_literal , number_literal ))))) ;) (expression_statement "puVar1[0x422] = param_3;" (assignment_expression "puVar1[0x422] = param_3" (subscript_expression "puVar1[0x422]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar1[0x424] = param_2;" (assignment_expression "puVar1[0x424] = param_2" (subscript_expression "puVar1[0x424]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar2 = FUN_0001ea50(param_1);" (assignment_expression "uVar2 = FUN_0001ea50(param_1)" identifier = (call_expression "FUN_0001ea50(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "*puVar1 = 0xffff;" (assignment_expression "*puVar1 = 0xffff" (pointer_expression "*puVar1" * identifier) = number_literal) ;) (expression_statement "*(undefined2 *)(puVar1 + 0x291) = 99;" (assignment_expression "*(undefined2 *)(puVar1 + 0x291) = 99" (pointer_expression "*(undefined2 *)(puVar1 + 0x291)" * (cast_expression "(undefined2 *)(puVar1 + 0x291)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x291)" ( (binary_expression "puVar1 + 0x291" identifier + number_literal) )))) = number_literal) ;) (expression_statement "puVar1[0x425] = uVar2;" (assignment_expression "puVar1[0x425] = uVar2" (subscript_expression "puVar1[0x425]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar1[0x423] = 0;" (assignment_expression "puVar1[0x423] = 0" (subscript_expression "puVar1[0x423]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x290] = 0x363f5b1b;" (assignment_expression "puVar1[0x290] = 0x363f5b1b" (subscript_expression "puVar1[0x290]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x429] = 0;" (assignment_expression "puVar1[0x429] = 0" (subscript_expression "puVar1[0x429]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x42a] = 0;" (assignment_expression "puVar1[0x42a] = 0" (subscript_expression "puVar1[0x42a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x41c] = 0;" (assignment_expression "puVar1[0x41c] = 0" (subscript_expression "puVar1[0x41c]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x41d] = 0;" (assignment_expression "puVar1[0x41d] = 0" (subscript_expression "puVar1[0x41d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_0002cfe0(puVar1 + 0x18);" (call_expression "FUN_0002cfe0(puVar1 + 0x18)" identifier (argument_list "(puVar1 + 0x18)" ( (binary_expression "puVar1 + 0x18" identifier + number_literal) ))) ;) (expression_statement "FUN_0002cfe0(puVar1 + 0x3e);" (call_expression "FUN_0002cfe0(puVar1 + 0x3e)" identifier (argument_list "(puVar1 + 0x3e)" ( (binary_expression "puVar1 + 0x3e" identifier + number_literal) ))) ;) (expression_statement "puVar1[9] = 0;" (assignment_expression "puVar1[9] = 0" (subscript_expression "puVar1[9]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x3c] = 0;" (assignment_expression "puVar1[0x3c] = 0" (subscript_expression "puVar1[0x3c]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x3b] = 0;" (assignment_expression "puVar1[0x3b] = 0" (subscript_expression "puVar1[0x3b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x41] = 0;" (assignment_expression "puVar1[0x41] = 0" (subscript_expression "puVar1[0x41]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x52] = 0;" (assignment_expression "puVar1[0x52] = 0" (subscript_expression "puVar1[0x52]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x54] = 0;" (assignment_expression "puVar1[0x54] = 0" (subscript_expression "puVar1[0x54]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x55] = 0;" (assignment_expression "puVar1[0x55] = 0" (subscript_expression "puVar1[0x55]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x5a] = 0;" (assignment_expression "puVar1[0x5a] = 0" (subscript_expression "puVar1[0x5a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x2d] = 0;" (assignment_expression "puVar1[0x2d] = 0" (subscript_expression "puVar1[0x2d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x30] = 0;" (assignment_expression "puVar1[0x30] = 0" (subscript_expression "puVar1[0x30]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x2f] = 0;" (assignment_expression "puVar1[0x2f] = 0" (subscript_expression "puVar1[0x2f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x4d] = 1;" (assignment_expression "puVar1[0x4d] = 1" (subscript_expression "puVar1[0x4d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x53] = 0;" (assignment_expression "puVar1[0x53] = 0" (subscript_expression "puVar1[0x53]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x391] = 0;" (assignment_expression "puVar1[0x391] = 0" (subscript_expression "puVar1[0x391]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x392] = 0;" (assignment_expression "puVar1[0x392] = 0" (subscript_expression "puVar1[0x392]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_0003d000(puVar1);" (call_expression "FUN_0003d000(puVar1)" identifier (argument_list "(puVar1)" ( identifier ))) ;) (expression_statement "puVar1[1] = 0;" (assignment_expression "puVar1[1] = 0" (subscript_expression "puVar1[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[3] = 0;" (assignment_expression "puVar1[3] = 0" (subscript_expression "puVar1[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[2] = 0;" (assignment_expression "puVar1[2] = 0" (subscript_expression "puVar1[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[5] = 0;" (assignment_expression "puVar1[5] = 0" (subscript_expression "puVar1[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x6a] = 0;" (assignment_expression "puVar1[0x6a] = 0" (subscript_expression "puVar1[0x6a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[4] = 0;" (assignment_expression "puVar1[4] = 0" (subscript_expression "puVar1[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[6] = 0;" (assignment_expression "puVar1[6] = 0" (subscript_expression "puVar1[6]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[8] = 0xffffffff;" (assignment_expression "puVar1[8] = 0xffffffff" (subscript_expression "puVar1[8]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[7] = 0xffffffff;" (assignment_expression "puVar1[7] = 0xffffffff" (subscript_expression "puVar1[7]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x390] = 0;" (assignment_expression "puVar1[0x390] = 0" (subscript_expression "puVar1[0x390]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x392] = 0;" (assignment_expression "puVar1[0x392] = 0" (subscript_expression "puVar1[0x392]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x397] = 0;" (assignment_expression "puVar1[0x397] = 0" (subscript_expression "puVar1[0x397]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x398] = 0;" (assignment_expression "puVar1[0x398] = 0" (subscript_expression "puVar1[0x398]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x395] = 0;" (assignment_expression "puVar1[0x395] = 0" (subscript_expression "puVar1[0x395]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x396] = 0;" (assignment_expression "puVar1[0x396] = 0" (subscript_expression "puVar1[0x396]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x4b] = 0xffffffff;" (assignment_expression "puVar1[0x4b] = 0xffffffff" (subscript_expression "puVar1[0x4b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x4a] = 0xffffffff;" (assignment_expression "puVar1[0x4a] = 0xffffffff" (subscript_expression "puVar1[0x4a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_0003e9b0();" (call_expression "FUN_0003e9b0()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar1[0xb] = 0;" (assignment_expression "puVar1[0xb] = 0" (subscript_expression "puVar1[0xb]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[10] = 0;" (assignment_expression "puVar1[10] = 0" (subscript_expression "puVar1[10]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0xc] = 0;" (assignment_expression "puVar1[0xc] = 0" (subscript_expression "puVar1[0xc]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0xe] = 0;" (assignment_expression "puVar1[0xe] = 0" (subscript_expression "puVar1[0xe]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0xd] = 0;" (assignment_expression "puVar1[0xd] = 0" (subscript_expression "puVar1[0xd]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x41b] = 0xffffffff;" (assignment_expression "puVar1[0x41b] = 0xffffffff" (subscript_expression "puVar1[0x41b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x41f] = 0;" (assignment_expression "puVar1[0x41f] = 0" (subscript_expression "puVar1[0x41f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x420] = 0;" (assignment_expression "puVar1[0x420] = 0" (subscript_expression "puVar1[0x420]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x426] = 0;" (assignment_expression "puVar1[0x426] = 0" (subscript_expression "puVar1[0x426]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x42d] = 0;" (assignment_expression "puVar1[0x42d] = 0" (subscript_expression "puVar1[0x42d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x42e] = 0;" (assignment_expression "puVar1[0x42e] = 0" (subscript_expression "puVar1[0x42e]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x42f] = 0;" (assignment_expression "puVar1[0x42f] = 0" (subscript_expression "puVar1[0x42f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x430] = 0;" (assignment_expression "puVar1[0x430] = 0" (subscript_expression "puVar1[0x430]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x431] = 0;" (assignment_expression "puVar1[0x431] = 0" (subscript_expression "puVar1[0x431]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x427] = 0;" (assignment_expression "puVar1[0x427] = 0" (subscript_expression "puVar1[0x427]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x434] = 0;" (assignment_expression "puVar1[0x434] = 0" (subscript_expression "puVar1[0x434]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x433] = 0;" (assignment_expression "puVar1[0x433] = 0" (subscript_expression "puVar1[0x433]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x432] = 0;" (assignment_expression "puVar1[0x432] = 0" (subscript_expression "puVar1[0x432]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x12] = 0xd820;" (assignment_expression "puVar1[0x12] = 0xd820" (subscript_expression "puVar1[0x12]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x13] = 0x20500;" (assignment_expression "puVar1[0x13] = 0x20500" (subscript_expression "puVar1[0x13]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x14] = 0;" (assignment_expression "puVar1[0x14] = 0" (subscript_expression "puVar1[0x14]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x15] = 0xd820;" (assignment_expression "puVar1[0x15] = 0xd820" (subscript_expression "puVar1[0x15]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x16] = 0x20500;" (assignment_expression "puVar1[0x16] = 0x20500" (subscript_expression "puVar1[0x16]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x17] = 0;" (assignment_expression "puVar1[0x17] = 0" (subscript_expression "puVar1[0x17]" identifier [ number_literal ]) = number_literal) ;) (return_statement "return puVar1;" return identifier ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Unknown calling convention */\n/* WARNING: Enum "anon_enum_32": Some values do not have unique names */\n\nTerminal * term_init(Conf *myconf,unicode_data *ucsdata,void *frontend)\n\n{\n  Terminal *term;\n  Conf *pCVar1;\n  \n  term = (Terminal *)safemalloc(1,0x1174);\n  term->frontend = frontend;\n  term->ucsdata = ucsdata;\n  pCVar1 = conf_copy(myconf);\n  term->compatibility_level = 0xffff;\n  term->id_string[4] = 'c';\n  term->id_string[5] = '\0';\n  term->conf = pCVar1;\n  term->logctx = (void *)0x0;\n  builtin_strncpy(term->id_string,"\x1b[?6",4);\n  term->tblink_pending = 0;\n  term->cblink_pending = 0;\n  term->paste_buffer = (wchar_t *)0x0;\n  term->paste_len = 0;\n  bufchain_init(&term->inbuf);\n  bufchain_init(&term->printer_buf);\n  term->curstype = 0;\n  term->only_printing = 0;\n  term->printing = 0;\n  term->print_job = (printer_job *)0x0;\n  term->vt52_mode = 0;\n  term->cr_lf_return = 0;\n  term->seen_disp_event = 0;\n  term->mouse_is_down = 0;\n  term->reset_132 = 0;\n  term->tblinker = 0;\n  term->cblinker = 0;\n  term->has_focus = 1;\n  term->repeat_off = 0;\n  term->termstate = ADDRTYPE_UNSPEC;\n  term->selstate = ADDRTYPE_UNSPEC;\n  term_copy_stuff_from_conf(term);\n  term->scrollback = (tree234 *)0x0;\n  term->alt_screen = (tree234 *)0x0;\n  term->screen = (tree234 *)0x0;\n  term->tempsblines = 0;\n  term->alt_sblines = 0;\n  term->disptop = 0;\n  term->disptext = (termline **)0x0;\n  term->dispcursy = -1;\n  term->dispcursx = -1;\n  term->tabs = (uchar *)0x0;\n  term->selstate = ADDRTYPE_UNSPEC;\n  (term->selend).y = 0;\n  (term->selend).x = 0;\n  (term->selstart).y = 0;\n  (term->selstart).x = 0;\n  term->cols = -1;\n  term->rows = -1;\n  power_on(term,1);\n  term->beeptail = (beeptime *)0x0;\n  term->beephead = (beeptime *)0x0;\n  term->nbeeps = 0;\n  term->lastbeep = L'\0';\n  term->beep_overloaded = 0;\n  term->attr_mask = -1;\n  term->resize_fn = (_func_void_void_ptr_int_int *)0x0;\n  term->resize_ctx = (void *)0x0;\n  term->in_term_out = 0;\n  term->ltemp = (termchar *)0x0;\n  term->ltemp_size = 0;\n  term->wcFrom = (bidi_char *)0x0;\n  term->wcTo = (bidi_char *)0x0;\n  term->wcFromTo_size = 0;\n  term->window_update_pending = 0;\n  term->bidi_cache_size = 0;\n  term->post_bidi_cache = (bidi_cache_entry *)0x0;\n  term->pre_bidi_cache = (bidi_cache_entry *)0x0;\n  (term->basic_erase_char).chr = 0xd820;\n  (term->basic_erase_char).attr = 0x20500;\n  (term->basic_erase_char).cc_next = 0;\n  (term->erase_char).chr = 0xd820;\n  (term->erase_char).attr = 0x20500;\n  (term->erase_char).cc_next = 0;\n  return term;\n}\n\n" comment comment comment (function_definition "Terminal * term_init(Conf *myconf,unicode_data *ucsdata,void *frontend)\n\n{\n  Terminal *term;\n  Conf *pCVar1;\n  \n  term = (Terminal *)safemalloc(1,0x1174);\n  term->frontend = frontend;\n  term->ucsdata = ucsdata;\n  pCVar1 = conf_copy(myconf);\n  term->compatibility_level = 0xffff;\n  term->id_string[4] = 'c';\n  term->id_string[5] = '\0';\n  term->conf = pCVar1;\n  term->logctx = (void *)0x0;\n  builtin_strncpy(term->id_string,"\x1b[?6",4);\n  term->tblink_pending = 0;\n  term->cblink_pending = 0;\n  term->paste_buffer = (wchar_t *)0x0;\n  term->paste_len = 0;\n  bufchain_init(&term->inbuf);\n  bufchain_init(&term->printer_buf);\n  term->curstype = 0;\n  term->only_printing = 0;\n  term->printing = 0;\n  term->print_job = (printer_job *)0x0;\n  term->vt52_mode = 0;\n  term->cr_lf_return = 0;\n  term->seen_disp_event = 0;\n  term->mouse_is_down = 0;\n  term->reset_132 = 0;\n  term->tblinker = 0;\n  term->cblinker = 0;\n  term->has_focus = 1;\n  term->repeat_off = 0;\n  term->termstate = ADDRTYPE_UNSPEC;\n  term->selstate = ADDRTYPE_UNSPEC;\n  term_copy_stuff_from_conf(term);\n  term->scrollback = (tree234 *)0x0;\n  term->alt_screen = (tree234 *)0x0;\n  term->screen = (tree234 *)0x0;\n  term->tempsblines = 0;\n  term->alt_sblines = 0;\n  term->disptop = 0;\n  term->disptext = (termline **)0x0;\n  term->dispcursy = -1;\n  term->dispcursx = -1;\n  term->tabs = (uchar *)0x0;\n  term->selstate = ADDRTYPE_UNSPEC;\n  (term->selend).y = 0;\n  (term->selend).x = 0;\n  (term->selstart).y = 0;\n  (term->selstart).x = 0;\n  term->cols = -1;\n  term->rows = -1;\n  power_on(term,1);\n  term->beeptail = (beeptime *)0x0;\n  term->beephead = (beeptime *)0x0;\n  term->nbeeps = 0;\n  term->lastbeep = L'\0';\n  term->beep_overloaded = 0;\n  term->attr_mask = -1;\n  term->resize_fn = (_func_void_void_ptr_int_int *)0x0;\n  term->resize_ctx = (void *)0x0;\n  term->in_term_out = 0;\n  term->ltemp = (termchar *)0x0;\n  term->ltemp_size = 0;\n  term->wcFrom = (bidi_char *)0x0;\n  term->wcTo = (bidi_char *)0x0;\n  term->wcFromTo_size = 0;\n  term->window_update_pending = 0;\n  term->bidi_cache_size = 0;\n  term->post_bidi_cache = (bidi_cache_entry *)0x0;\n  term->pre_bidi_cache = (bidi_cache_entry *)0x0;\n  (term->basic_erase_char).chr = 0xd820;\n  (term->basic_erase_char).attr = 0x20500;\n  (term->basic_erase_char).cc_next = 0;\n  (term->erase_char).chr = 0xd820;\n  (term->erase_char).attr = 0x20500;\n  (term->erase_char).cc_next = 0;\n  return term;\n}" type_identifier (pointer_declarator "* term_init(Conf *myconf,unicode_data *ucsdata,void *frontend)" * (function_declarator "term_init(Conf *myconf,unicode_data *ucsdata,void *frontend)" identifier (parameter_list "(Conf *myconf,unicode_data *ucsdata,void *frontend)" ( (parameter_declaration "Conf *myconf" type_identifier (pointer_declarator "*myconf" * identifier)) , (parameter_declaration "unicode_data *ucsdata" type_identifier (pointer_declarator "*ucsdata" * identifier)) , (parameter_declaration "void *frontend" primitive_type (pointer_declarator "*frontend" * identifier)) )))) (compound_statement "{\n  Terminal *term;\n  Conf *pCVar1;\n  \n  term = (Terminal *)safemalloc(1,0x1174);\n  term->frontend = frontend;\n  term->ucsdata = ucsdata;\n  pCVar1 = conf_copy(myconf);\n  term->compatibility_level = 0xffff;\n  term->id_string[4] = 'c';\n  term->id_string[5] = '\0';\n  term->conf = pCVar1;\n  term->logctx = (void *)0x0;\n  builtin_strncpy(term->id_string,"\x1b[?6",4);\n  term->tblink_pending = 0;\n  term->cblink_pending = 0;\n  term->paste_buffer = (wchar_t *)0x0;\n  term->paste_len = 0;\n  bufchain_init(&term->inbuf);\n  bufchain_init(&term->printer_buf);\n  term->curstype = 0;\n  term->only_printing = 0;\n  term->printing = 0;\n  term->print_job = (printer_job *)0x0;\n  term->vt52_mode = 0;\n  term->cr_lf_return = 0;\n  term->seen_disp_event = 0;\n  term->mouse_is_down = 0;\n  term->reset_132 = 0;\n  term->tblinker = 0;\n  term->cblinker = 0;\n  term->has_focus = 1;\n  term->repeat_off = 0;\n  term->termstate = ADDRTYPE_UNSPEC;\n  term->selstate = ADDRTYPE_UNSPEC;\n  term_copy_stuff_from_conf(term);\n  term->scrollback = (tree234 *)0x0;\n  term->alt_screen = (tree234 *)0x0;\n  term->screen = (tree234 *)0x0;\n  term->tempsblines = 0;\n  term->alt_sblines = 0;\n  term->disptop = 0;\n  term->disptext = (termline **)0x0;\n  term->dispcursy = -1;\n  term->dispcursx = -1;\n  term->tabs = (uchar *)0x0;\n  term->selstate = ADDRTYPE_UNSPEC;\n  (term->selend).y = 0;\n  (term->selend).x = 0;\n  (term->selstart).y = 0;\n  (term->selstart).x = 0;\n  term->cols = -1;\n  term->rows = -1;\n  power_on(term,1);\n  term->beeptail = (beeptime *)0x0;\n  term->beephead = (beeptime *)0x0;\n  term->nbeeps = 0;\n  term->lastbeep = L'\0';\n  term->beep_overloaded = 0;\n  term->attr_mask = -1;\n  term->resize_fn = (_func_void_void_ptr_int_int *)0x0;\n  term->resize_ctx = (void *)0x0;\n  term->in_term_out = 0;\n  term->ltemp = (termchar *)0x0;\n  term->ltemp_size = 0;\n  term->wcFrom = (bidi_char *)0x0;\n  term->wcTo = (bidi_char *)0x0;\n  term->wcFromTo_size = 0;\n  term->window_update_pending = 0;\n  term->bidi_cache_size = 0;\n  term->post_bidi_cache = (bidi_cache_entry *)0x0;\n  term->pre_bidi_cache = (bidi_cache_entry *)0x0;\n  (term->basic_erase_char).chr = 0xd820;\n  (term->basic_erase_char).attr = 0x20500;\n  (term->basic_erase_char).cc_next = 0;\n  (term->erase_char).chr = 0xd820;\n  (term->erase_char).attr = 0x20500;\n  (term->erase_char).cc_next = 0;\n  return term;\n}" { (declaration "Terminal *term;" type_identifier (pointer_declarator "*term" * identifier) ;) (declaration "Conf *pCVar1;" type_identifier (pointer_declarator "*pCVar1" * identifier) ;) (expression_statement "term = (Terminal *)safemalloc(1,0x1174);" (assignment_expression "term = (Terminal *)safemalloc(1,0x1174)" identifier = (cast_expression "(Terminal *)safemalloc(1,0x1174)" ( (type_descriptor "Terminal *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "safemalloc(1,0x1174)" identifier (argument_list "(1,0x1174)" ( number_literal , number_literal ))))) ;) (expression_statement "term->frontend = frontend;" (assignment_expression "term->frontend = frontend" (field_expression "term->frontend" identifier -> field_identifier) = identifier) ;) (expression_statement "term->ucsdata = ucsdata;" (assignment_expression "term->ucsdata = ucsdata" (field_expression "term->ucsdata" identifier -> field_identifier) = identifier) ;) (expression_statement "pCVar1 = conf_copy(myconf);" (assignment_expression "pCVar1 = conf_copy(myconf)" identifier = (call_expression "conf_copy(myconf)" identifier (argument_list "(myconf)" ( identifier )))) ;) (expression_statement "term->compatibility_level = 0xffff;" (assignment_expression "term->compatibility_level = 0xffff" (field_expression "term->compatibility_level" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->id_string[4] = 'c';" (assignment_expression "term->id_string[4] = 'c'" (subscript_expression "term->id_string[4]" (field_expression "term->id_string" identifier -> field_identifier) [ number_literal ]) = (char_literal "'c'" ' character ')) ;) (expression_statement "term->id_string[5] = '\0';" (assignment_expression "term->id_string[5] = '\0'" (subscript_expression "term->id_string[5]" (field_expression "term->id_string" identifier -> field_identifier) [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "term->conf = pCVar1;" (assignment_expression "term->conf = pCVar1" (field_expression "term->conf" identifier -> field_identifier) = identifier) ;) (expression_statement "term->logctx = (void *)0x0;" (assignment_expression "term->logctx = (void *)0x0" (field_expression "term->logctx" identifier -> field_identifier) = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "builtin_strncpy(term->id_string,"\x1b[?6",4);" (call_expression "builtin_strncpy(term->id_string,"\x1b[?6",4)" identifier (argument_list "(term->id_string,"\x1b[?6",4)" ( (field_expression "term->id_string" identifier -> field_identifier) , (string_literal ""\x1b[?6"" " escape_sequence string_content ") , number_literal ))) ;) (expression_statement "term->tblink_pending = 0;" (assignment_expression "term->tblink_pending = 0" (field_expression "term->tblink_pending" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->cblink_pending = 0;" (assignment_expression "term->cblink_pending = 0" (field_expression "term->cblink_pending" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->paste_buffer = (wchar_t *)0x0;" (assignment_expression "term->paste_buffer = (wchar_t *)0x0" (field_expression "term->paste_buffer" identifier -> field_identifier) = (cast_expression "(wchar_t *)0x0" ( (type_descriptor "wchar_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->paste_len = 0;" (assignment_expression "term->paste_len = 0" (field_expression "term->paste_len" identifier -> field_identifier) = number_literal) ;) (expression_statement "bufchain_init(&term->inbuf);" (call_expression "bufchain_init(&term->inbuf)" identifier (argument_list "(&term->inbuf)" ( (pointer_expression "&term->inbuf" & (field_expression "term->inbuf" identifier -> field_identifier)) ))) ;) (expression_statement "bufchain_init(&term->printer_buf);" (call_expression "bufchain_init(&term->printer_buf)" identifier (argument_list "(&term->printer_buf)" ( (pointer_expression "&term->printer_buf" & (field_expression "term->printer_buf" identifier -> field_identifier)) ))) ;) (expression_statement "term->curstype = 0;" (assignment_expression "term->curstype = 0" (field_expression "term->curstype" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->only_printing = 0;" (assignment_expression "term->only_printing = 0" (field_expression "term->only_printing" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->printing = 0;" (assignment_expression "term->printing = 0" (field_expression "term->printing" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->print_job = (printer_job *)0x0;" (assignment_expression "term->print_job = (printer_job *)0x0" (field_expression "term->print_job" identifier -> field_identifier) = (cast_expression "(printer_job *)0x0" ( (type_descriptor "printer_job *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->vt52_mode = 0;" (assignment_expression "term->vt52_mode = 0" (field_expression "term->vt52_mode" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->cr_lf_return = 0;" (assignment_expression "term->cr_lf_return = 0" (field_expression "term->cr_lf_return" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->seen_disp_event = 0;" (assignment_expression "term->seen_disp_event = 0" (field_expression "term->seen_disp_event" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->mouse_is_down = 0;" (assignment_expression "term->mouse_is_down = 0" (field_expression "term->mouse_is_down" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->reset_132 = 0;" (assignment_expression "term->reset_132 = 0" (field_expression "term->reset_132" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->tblinker = 0;" (assignment_expression "term->tblinker = 0" (field_expression "term->tblinker" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->cblinker = 0;" (assignment_expression "term->cblinker = 0" (field_expression "term->cblinker" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->has_focus = 1;" (assignment_expression "term->has_focus = 1" (field_expression "term->has_focus" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->repeat_off = 0;" (assignment_expression "term->repeat_off = 0" (field_expression "term->repeat_off" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->termstate = ADDRTYPE_UNSPEC;" (assignment_expression "term->termstate = ADDRTYPE_UNSPEC" (field_expression "term->termstate" identifier -> field_identifier) = identifier) ;) (expression_statement "term->selstate = ADDRTYPE_UNSPEC;" (assignment_expression "term->selstate = ADDRTYPE_UNSPEC" (field_expression "term->selstate" identifier -> field_identifier) = identifier) ;) (expression_statement "term_copy_stuff_from_conf(term);" (call_expression "term_copy_stuff_from_conf(term)" identifier (argument_list "(term)" ( identifier ))) ;) (expression_statement "term->scrollback = (tree234 *)0x0;" (assignment_expression "term->scrollback = (tree234 *)0x0" (field_expression "term->scrollback" identifier -> field_identifier) = (cast_expression "(tree234 *)0x0" ( (type_descriptor "tree234 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->alt_screen = (tree234 *)0x0;" (assignment_expression "term->alt_screen = (tree234 *)0x0" (field_expression "term->alt_screen" identifier -> field_identifier) = (cast_expression "(tree234 *)0x0" ( (type_descriptor "tree234 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->screen = (tree234 *)0x0;" (assignment_expression "term->screen = (tree234 *)0x0" (field_expression "term->screen" identifier -> field_identifier) = (cast_expression "(tree234 *)0x0" ( (type_descriptor "tree234 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->tempsblines = 0;" (assignment_expression "term->tempsblines = 0" (field_expression "term->tempsblines" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->alt_sblines = 0;" (assignment_expression "term->alt_sblines = 0" (field_expression "term->alt_sblines" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->disptop = 0;" (assignment_expression "term->disptop = 0" (field_expression "term->disptop" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->disptext = (termline **)0x0;" (assignment_expression "term->disptext = (termline **)0x0" (field_expression "term->disptext" identifier -> field_identifier) = (cast_expression "(termline **)0x0" ( (type_descriptor "termline **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "term->dispcursy = -1;" (assignment_expression "term->dispcursy = -1" (field_expression "term->dispcursy" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->dispcursx = -1;" (assignment_expression "term->dispcursx = -1" (field_expression "term->dispcursx" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->tabs = (uchar *)0x0;" (assignment_expression "term->tabs = (uchar *)0x0" (field_expression "term->tabs" identifier -> field_identifier) = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->selstate = ADDRTYPE_UNSPEC;" (assignment_expression "term->selstate = ADDRTYPE_UNSPEC" (field_expression "term->selstate" identifier -> field_identifier) = identifier) ;) (expression_statement "(term->selend).y = 0;" (assignment_expression "(term->selend).y = 0" (field_expression "(term->selend).y" (parenthesized_expression "(term->selend)" ( (field_expression "term->selend" identifier -> field_identifier) )) . field_identifier) = number_literal) ;) (expression_statement "(term->selend).x = 0;" (assignment_expression "(term->selend).x = 0" (field_expression "(term->selend).x" (parenthesized_expression "(term->selend)" ( (field_expression "term->selend" identifier -> field_identifier) )) . field_identifier) = number_literal) ;) (expression_statement "(term->selstart).y = 0;" (assignment_expression "(term->selstart).y = 0" (field_expression "(term->selstart).y" (parenthesized_expression "(term->selstart)" ( (field_expression "term->selstart" identifier -> field_identifier) )) . field_identifier) = number_literal) ;) (expression_statement "(term->selstart).x = 0;" (assignment_expression "(term->selstart).x = 0" (field_expression "(term->selstart).x" (parenthesized_expression "(term->selstart)" ( (field_expression "term->selstart" identifier -> field_identifier) )) . field_identifier) = number_literal) ;) (expression_statement "term->cols = -1;" (assignment_expression "term->cols = -1" (field_expression "term->cols" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->rows = -1;" (assignment_expression "term->rows = -1" (field_expression "term->rows" identifier -> field_identifier) = number_literal) ;) (expression_statement "power_on(term,1);" (call_expression "power_on(term,1)" identifier (argument_list "(term,1)" ( identifier , number_literal ))) ;) (expression_statement "term->beeptail = (beeptime *)0x0;" (assignment_expression "term->beeptail = (beeptime *)0x0" (field_expression "term->beeptail" identifier -> field_identifier) = (cast_expression "(beeptime *)0x0" ( (type_descriptor "beeptime *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->beephead = (beeptime *)0x0;" (assignment_expression "term->beephead = (beeptime *)0x0" (field_expression "term->beephead" identifier -> field_identifier) = (cast_expression "(beeptime *)0x0" ( (type_descriptor "beeptime *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->nbeeps = 0;" (assignment_expression "term->nbeeps = 0" (field_expression "term->nbeeps" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->lastbeep = L'\0';" (assignment_expression "term->lastbeep = L'\0'" (field_expression "term->lastbeep" identifier -> field_identifier) = (char_literal "L'\0'" L' escape_sequence ')) ;) (expression_statement "term->beep_overloaded = 0;" (assignment_expression "term->beep_overloaded = 0" (field_expression "term->beep_overloaded" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->attr_mask = -1;" (assignment_expression "term->attr_mask = -1" (field_expression "term->attr_mask" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->resize_fn = (_func_void_void_ptr_int_int *)0x0;" (assignment_expression "term->resize_fn = (_func_void_void_ptr_int_int *)0x0" (field_expression "term->resize_fn" identifier -> field_identifier) = (cast_expression "(_func_void_void_ptr_int_int *)0x0" ( (type_descriptor "_func_void_void_ptr_int_int *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->resize_ctx = (void *)0x0;" (assignment_expression "term->resize_ctx = (void *)0x0" (field_expression "term->resize_ctx" identifier -> field_identifier) = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->in_term_out = 0;" (assignment_expression "term->in_term_out = 0" (field_expression "term->in_term_out" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->ltemp = (termchar *)0x0;" (assignment_expression "term->ltemp = (termchar *)0x0" (field_expression "term->ltemp" identifier -> field_identifier) = (cast_expression "(termchar *)0x0" ( (type_descriptor "termchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->ltemp_size = 0;" (assignment_expression "term->ltemp_size = 0" (field_expression "term->ltemp_size" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->wcFrom = (bidi_char *)0x0;" (assignment_expression "term->wcFrom = (bidi_char *)0x0" (field_expression "term->wcFrom" identifier -> field_identifier) = (cast_expression "(bidi_char *)0x0" ( (type_descriptor "bidi_char *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->wcTo = (bidi_char *)0x0;" (assignment_expression "term->wcTo = (bidi_char *)0x0" (field_expression "term->wcTo" identifier -> field_identifier) = (cast_expression "(bidi_char *)0x0" ( (type_descriptor "bidi_char *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->wcFromTo_size = 0;" (assignment_expression "term->wcFromTo_size = 0" (field_expression "term->wcFromTo_size" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->window_update_pending = 0;" (assignment_expression "term->window_update_pending = 0" (field_expression "term->window_update_pending" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->bidi_cache_size = 0;" (assignment_expression "term->bidi_cache_size = 0" (field_expression "term->bidi_cache_size" identifier -> field_identifier) = number_literal) ;) (expression_statement "term->post_bidi_cache = (bidi_cache_entry *)0x0;" (assignment_expression "term->post_bidi_cache = (bidi_cache_entry *)0x0" (field_expression "term->post_bidi_cache" identifier -> field_identifier) = (cast_expression "(bidi_cache_entry *)0x0" ( (type_descriptor "bidi_cache_entry *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "term->pre_bidi_cache = (bidi_cache_entry *)0x0;" (assignment_expression "term->pre_bidi_cache = (bidi_cache_entry *)0x0" (field_expression "term->pre_bidi_cache" identifier -> field_identifier) = (cast_expression "(bidi_cache_entry *)0x0" ( (type_descriptor "bidi_cache_entry *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(term->basic_erase_char).chr = 0xd820;" (assignment_expression "(term->basic_erase_char).chr = 0xd820" (field_expression "(term->basic_erase_char).chr" (parenthesized_expression "(term->basic_erase_char)" ( (field_expression "term->basic_erase_char" identifier -> field_identifier) )) . field_identifier) = number_literal) ;) (expression_statement "(term->basic_erase_char).attr = 0x20500;" (assignment_expression "(term->basic_erase_char).attr = 0x20500" (field_expression "(term->basic_erase_char).attr" (parenthesized_expression "(term->basic_erase_char)" ( (field_expression "term->basic_erase_char" identifier -> field_identifier) )) . field_identifier) = number_literal) ;) (expression_statement "(term->basic_erase_char).cc_next = 0;" (assignment_expression "(term->basic_erase_char).cc_next = 0" (field_expression "(term->basic_erase_char).cc_next" (parenthesized_expression "(term->basic_erase_char)" ( (field_expression "term->basic_erase_char" identifier -> field_identifier) )) . field_identifier) = number_literal) ;) (expression_statement "(term->erase_char).chr = 0xd820;" (assignment_expression "(term->erase_char).chr = 0xd820" (field_expression "(term->erase_char).chr" (parenthesized_expression "(term->erase_char)" ( (field_expression "term->erase_char" identifier -> field_identifier) )) . field_identifier) = number_literal) ;) (expression_statement "(term->erase_char).attr = 0x20500;" (assignment_expression "(term->erase_char).attr = 0x20500" (field_expression "(term->erase_char).attr" (parenthesized_expression "(term->erase_char)" ( (field_expression "term->erase_char" identifier -> field_identifier) )) . field_identifier) = number_literal) ;) (expression_statement "(term->erase_char).cc_next = 0;" (assignment_expression "(term->erase_char).cc_next = 0" (field_expression "(term->erase_char).cc_next" (parenthesized_expression "(term->erase_char)" ( (field_expression "term->erase_char" identifier -> field_identifier) )) . field_identifier) = number_literal) ;) (return_statement "return term;" return identifier ;) })))
(translation_unit "undefined4 * FUN_0003ee70(undefined4 param_1,undefined4 param_2,undefined4 param_3)\n\n{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  \n  puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174);\n  puVar1[0x422] = param_3;\n  puVar1[0x424] = param_2;\n  uVar2 = FUN_0001ea50(param_1);\n  *puVar1 = 0xffff;\n  *(undefined2 *)(puVar1 + 0x291) = 99;\n  puVar1[0x425] = uVar2;\n  puVar1[0x423] = 0;\n  puVar1[0x290] = 0x363f5b1b;\n  puVar1[0x429] = 0;\n  puVar1[0x42a] = 0;\n  puVar1[0x41c] = 0;\n  puVar1[0x41d] = 0;\n  FUN_0002cfe0(puVar1 + 0x18);\n  FUN_0002cfe0(puVar1 + 0x3e);\n  puVar1[9] = 0;\n  puVar1[0x3c] = 0;\n  puVar1[0x3b] = 0;\n  puVar1[0x41] = 0;\n  puVar1[0x52] = 0;\n  puVar1[0x54] = 0;\n  puVar1[0x55] = 0;\n  puVar1[0x5a] = 0;\n  puVar1[0x2d] = 0;\n  puVar1[0x30] = 0;\n  puVar1[0x2f] = 0;\n  puVar1[0x4d] = 1;\n  puVar1[0x53] = 0;\n  puVar1[0x391] = 0;\n  puVar1[0x392] = 0;\n  FUN_0003d000(puVar1);\n  puVar1[1] = 0;\n  puVar1[3] = 0;\n  puVar1[2] = 0;\n  puVar1[5] = 0;\n  puVar1[0x6a] = 0;\n  puVar1[4] = 0;\n  puVar1[6] = 0;\n  puVar1[8] = 0xffffffff;\n  puVar1[7] = 0xffffffff;\n  puVar1[0x390] = 0;\n  puVar1[0x392] = 0;\n  puVar1[0x397] = 0;\n  puVar1[0x398] = 0;\n  puVar1[0x395] = 0;\n  puVar1[0x396] = 0;\n  puVar1[0x4b] = 0xffffffff;\n  puVar1[0x4a] = 0xffffffff;\n  FUN_0003e9b0();\n  puVar1[0xb] = 0;\n  puVar1[10] = 0;\n  puVar1[0xc] = 0;\n  puVar1[0xe] = 0;\n  puVar1[0xd] = 0;\n  puVar1[0x41b] = 0xffffffff;\n  puVar1[0x41f] = 0;\n  puVar1[0x420] = 0;\n  puVar1[0x426] = 0;\n  puVar1[0x42d] = 0;\n  puVar1[0x42e] = 0;\n  puVar1[0x42f] = 0;\n  puVar1[0x430] = 0;\n  puVar1[0x431] = 0;\n  puVar1[0x427] = 0;\n  puVar1[0x434] = 0;\n  puVar1[0x433] = 0;\n  puVar1[0x432] = 0;\n  puVar1[0x12] = 0xd820;\n  puVar1[0x13] = 0x20500;\n  puVar1[0x14] = 0;\n  puVar1[0x15] = 0xd820;\n  puVar1[0x16] = 0x20500;\n  puVar1[0x17] = 0;\n  return puVar1;\n}\n\n" (function_definition "undefined4 * FUN_0003ee70(undefined4 param_1,undefined4 param_2,undefined4 param_3)\n\n{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  \n  puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174);\n  puVar1[0x422] = param_3;\n  puVar1[0x424] = param_2;\n  uVar2 = FUN_0001ea50(param_1);\n  *puVar1 = 0xffff;\n  *(undefined2 *)(puVar1 + 0x291) = 99;\n  puVar1[0x425] = uVar2;\n  puVar1[0x423] = 0;\n  puVar1[0x290] = 0x363f5b1b;\n  puVar1[0x429] = 0;\n  puVar1[0x42a] = 0;\n  puVar1[0x41c] = 0;\n  puVar1[0x41d] = 0;\n  FUN_0002cfe0(puVar1 + 0x18);\n  FUN_0002cfe0(puVar1 + 0x3e);\n  puVar1[9] = 0;\n  puVar1[0x3c] = 0;\n  puVar1[0x3b] = 0;\n  puVar1[0x41] = 0;\n  puVar1[0x52] = 0;\n  puVar1[0x54] = 0;\n  puVar1[0x55] = 0;\n  puVar1[0x5a] = 0;\n  puVar1[0x2d] = 0;\n  puVar1[0x30] = 0;\n  puVar1[0x2f] = 0;\n  puVar1[0x4d] = 1;\n  puVar1[0x53] = 0;\n  puVar1[0x391] = 0;\n  puVar1[0x392] = 0;\n  FUN_0003d000(puVar1);\n  puVar1[1] = 0;\n  puVar1[3] = 0;\n  puVar1[2] = 0;\n  puVar1[5] = 0;\n  puVar1[0x6a] = 0;\n  puVar1[4] = 0;\n  puVar1[6] = 0;\n  puVar1[8] = 0xffffffff;\n  puVar1[7] = 0xffffffff;\n  puVar1[0x390] = 0;\n  puVar1[0x392] = 0;\n  puVar1[0x397] = 0;\n  puVar1[0x398] = 0;\n  puVar1[0x395] = 0;\n  puVar1[0x396] = 0;\n  puVar1[0x4b] = 0xffffffff;\n  puVar1[0x4a] = 0xffffffff;\n  FUN_0003e9b0();\n  puVar1[0xb] = 0;\n  puVar1[10] = 0;\n  puVar1[0xc] = 0;\n  puVar1[0xe] = 0;\n  puVar1[0xd] = 0;\n  puVar1[0x41b] = 0xffffffff;\n  puVar1[0x41f] = 0;\n  puVar1[0x420] = 0;\n  puVar1[0x426] = 0;\n  puVar1[0x42d] = 0;\n  puVar1[0x42e] = 0;\n  puVar1[0x42f] = 0;\n  puVar1[0x430] = 0;\n  puVar1[0x431] = 0;\n  puVar1[0x427] = 0;\n  puVar1[0x434] = 0;\n  puVar1[0x433] = 0;\n  puVar1[0x432] = 0;\n  puVar1[0x12] = 0xd820;\n  puVar1[0x13] = 0x20500;\n  puVar1[0x14] = 0;\n  puVar1[0x15] = 0xd820;\n  puVar1[0x16] = 0x20500;\n  puVar1[0x17] = 0;\n  return puVar1;\n}" type_identifier (pointer_declarator "* FUN_0003ee70(undefined4 param_1,undefined4 param_2,undefined4 param_3)" * (function_declarator "FUN_0003ee70(undefined4 param_1,undefined4 param_2,undefined4 param_3)" identifier (parameter_list "(undefined4 param_1,undefined4 param_2,undefined4 param_3)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) )))) (compound_statement "{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  \n  puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174);\n  puVar1[0x422] = param_3;\n  puVar1[0x424] = param_2;\n  uVar2 = FUN_0001ea50(param_1);\n  *puVar1 = 0xffff;\n  *(undefined2 *)(puVar1 + 0x291) = 99;\n  puVar1[0x425] = uVar2;\n  puVar1[0x423] = 0;\n  puVar1[0x290] = 0x363f5b1b;\n  puVar1[0x429] = 0;\n  puVar1[0x42a] = 0;\n  puVar1[0x41c] = 0;\n  puVar1[0x41d] = 0;\n  FUN_0002cfe0(puVar1 + 0x18);\n  FUN_0002cfe0(puVar1 + 0x3e);\n  puVar1[9] = 0;\n  puVar1[0x3c] = 0;\n  puVar1[0x3b] = 0;\n  puVar1[0x41] = 0;\n  puVar1[0x52] = 0;\n  puVar1[0x54] = 0;\n  puVar1[0x55] = 0;\n  puVar1[0x5a] = 0;\n  puVar1[0x2d] = 0;\n  puVar1[0x30] = 0;\n  puVar1[0x2f] = 0;\n  puVar1[0x4d] = 1;\n  puVar1[0x53] = 0;\n  puVar1[0x391] = 0;\n  puVar1[0x392] = 0;\n  FUN_0003d000(puVar1);\n  puVar1[1] = 0;\n  puVar1[3] = 0;\n  puVar1[2] = 0;\n  puVar1[5] = 0;\n  puVar1[0x6a] = 0;\n  puVar1[4] = 0;\n  puVar1[6] = 0;\n  puVar1[8] = 0xffffffff;\n  puVar1[7] = 0xffffffff;\n  puVar1[0x390] = 0;\n  puVar1[0x392] = 0;\n  puVar1[0x397] = 0;\n  puVar1[0x398] = 0;\n  puVar1[0x395] = 0;\n  puVar1[0x396] = 0;\n  puVar1[0x4b] = 0xffffffff;\n  puVar1[0x4a] = 0xffffffff;\n  FUN_0003e9b0();\n  puVar1[0xb] = 0;\n  puVar1[10] = 0;\n  puVar1[0xc] = 0;\n  puVar1[0xe] = 0;\n  puVar1[0xd] = 0;\n  puVar1[0x41b] = 0xffffffff;\n  puVar1[0x41f] = 0;\n  puVar1[0x420] = 0;\n  puVar1[0x426] = 0;\n  puVar1[0x42d] = 0;\n  puVar1[0x42e] = 0;\n  puVar1[0x42f] = 0;\n  puVar1[0x430] = 0;\n  puVar1[0x431] = 0;\n  puVar1[0x427] = 0;\n  puVar1[0x434] = 0;\n  puVar1[0x433] = 0;\n  puVar1[0x432] = 0;\n  puVar1[0x12] = 0xd820;\n  puVar1[0x13] = 0x20500;\n  puVar1[0x14] = 0;\n  puVar1[0x15] = 0xd820;\n  puVar1[0x16] = 0x20500;\n  puVar1[0x17] = 0;\n  return puVar1;\n}" { (declaration "undefined4 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (expression_statement "puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174);" (assignment_expression "puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174)" identifier = (cast_expression "(undefined4 *)FUN_0002d1f0(1,0x1174)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0002d1f0(1,0x1174)" identifier (argument_list "(1,0x1174)" ( number_literal , number_literal ))))) ;) (expression_statement "puVar1[0x422] = param_3;" (assignment_expression "puVar1[0x422] = param_3" (subscript_expression "puVar1[0x422]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar1[0x424] = param_2;" (assignment_expression "puVar1[0x424] = param_2" (subscript_expression "puVar1[0x424]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar2 = FUN_0001ea50(param_1);" (assignment_expression "uVar2 = FUN_0001ea50(param_1)" identifier = (call_expression "FUN_0001ea50(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "*puVar1 = 0xffff;" (assignment_expression "*puVar1 = 0xffff" (pointer_expression "*puVar1" * identifier) = number_literal) ;) (expression_statement "*(undefined2 *)(puVar1 + 0x291) = 99;" (assignment_expression "*(undefined2 *)(puVar1 + 0x291) = 99" (pointer_expression "*(undefined2 *)(puVar1 + 0x291)" * (cast_expression "(undefined2 *)(puVar1 + 0x291)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x291)" ( (binary_expression "puVar1 + 0x291" identifier + number_literal) )))) = number_literal) ;) (expression_statement "puVar1[0x425] = uVar2;" (assignment_expression "puVar1[0x425] = uVar2" (subscript_expression "puVar1[0x425]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar1[0x423] = 0;" (assignment_expression "puVar1[0x423] = 0" (subscript_expression "puVar1[0x423]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x290] = 0x363f5b1b;" (assignment_expression "puVar1[0x290] = 0x363f5b1b" (subscript_expression "puVar1[0x290]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x429] = 0;" (assignment_expression "puVar1[0x429] = 0" (subscript_expression "puVar1[0x429]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x42a] = 0;" (assignment_expression "puVar1[0x42a] = 0" (subscript_expression "puVar1[0x42a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x41c] = 0;" (assignment_expression "puVar1[0x41c] = 0" (subscript_expression "puVar1[0x41c]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x41d] = 0;" (assignment_expression "puVar1[0x41d] = 0" (subscript_expression "puVar1[0x41d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_0002cfe0(puVar1 + 0x18);" (call_expression "FUN_0002cfe0(puVar1 + 0x18)" identifier (argument_list "(puVar1 + 0x18)" ( (binary_expression "puVar1 + 0x18" identifier + number_literal) ))) ;) (expression_statement "FUN_0002cfe0(puVar1 + 0x3e);" (call_expression "FUN_0002cfe0(puVar1 + 0x3e)" identifier (argument_list "(puVar1 + 0x3e)" ( (binary_expression "puVar1 + 0x3e" identifier + number_literal) ))) ;) (expression_statement "puVar1[9] = 0;" (assignment_expression "puVar1[9] = 0" (subscript_expression "puVar1[9]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x3c] = 0;" (assignment_expression "puVar1[0x3c] = 0" (subscript_expression "puVar1[0x3c]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x3b] = 0;" (assignment_expression "puVar1[0x3b] = 0" (subscript_expression "puVar1[0x3b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x41] = 0;" (assignment_expression "puVar1[0x41] = 0" (subscript_expression "puVar1[0x41]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x52] = 0;" (assignment_expression "puVar1[0x52] = 0" (subscript_expression "puVar1[0x52]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x54] = 0;" (assignment_expression "puVar1[0x54] = 0" (subscript_expression "puVar1[0x54]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x55] = 0;" (assignment_expression "puVar1[0x55] = 0" (subscript_expression "puVar1[0x55]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x5a] = 0;" (assignment_expression "puVar1[0x5a] = 0" (subscript_expression "puVar1[0x5a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x2d] = 0;" (assignment_expression "puVar1[0x2d] = 0" (subscript_expression "puVar1[0x2d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x30] = 0;" (assignment_expression "puVar1[0x30] = 0" (subscript_expression "puVar1[0x30]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x2f] = 0;" (assignment_expression "puVar1[0x2f] = 0" (subscript_expression "puVar1[0x2f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x4d] = 1;" (assignment_expression "puVar1[0x4d] = 1" (subscript_expression "puVar1[0x4d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x53] = 0;" (assignment_expression "puVar1[0x53] = 0" (subscript_expression "puVar1[0x53]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x391] = 0;" (assignment_expression "puVar1[0x391] = 0" (subscript_expression "puVar1[0x391]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x392] = 0;" (assignment_expression "puVar1[0x392] = 0" (subscript_expression "puVar1[0x392]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_0003d000(puVar1);" (call_expression "FUN_0003d000(puVar1)" identifier (argument_list "(puVar1)" ( identifier ))) ;) (expression_statement "puVar1[1] = 0;" (assignment_expression "puVar1[1] = 0" (subscript_expression "puVar1[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[3] = 0;" (assignment_expression "puVar1[3] = 0" (subscript_expression "puVar1[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[2] = 0;" (assignment_expression "puVar1[2] = 0" (subscript_expression "puVar1[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[5] = 0;" (assignment_expression "puVar1[5] = 0" (subscript_expression "puVar1[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x6a] = 0;" (assignment_expression "puVar1[0x6a] = 0" (subscript_expression "puVar1[0x6a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[4] = 0;" (assignment_expression "puVar1[4] = 0" (subscript_expression "puVar1[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[6] = 0;" (assignment_expression "puVar1[6] = 0" (subscript_expression "puVar1[6]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[8] = 0xffffffff;" (assignment_expression "puVar1[8] = 0xffffffff" (subscript_expression "puVar1[8]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[7] = 0xffffffff;" (assignment_expression "puVar1[7] = 0xffffffff" (subscript_expression "puVar1[7]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x390] = 0;" (assignment_expression "puVar1[0x390] = 0" (subscript_expression "puVar1[0x390]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x392] = 0;" (assignment_expression "puVar1[0x392] = 0" (subscript_expression "puVar1[0x392]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x397] = 0;" (assignment_expression "puVar1[0x397] = 0" (subscript_expression "puVar1[0x397]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x398] = 0;" (assignment_expression "puVar1[0x398] = 0" (subscript_expression "puVar1[0x398]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x395] = 0;" (assignment_expression "puVar1[0x395] = 0" (subscript_expression "puVar1[0x395]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x396] = 0;" (assignment_expression "puVar1[0x396] = 0" (subscript_expression "puVar1[0x396]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x4b] = 0xffffffff;" (assignment_expression "puVar1[0x4b] = 0xffffffff" (subscript_expression "puVar1[0x4b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x4a] = 0xffffffff;" (assignment_expression "puVar1[0x4a] = 0xffffffff" (subscript_expression "puVar1[0x4a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "FUN_0003e9b0();" (call_expression "FUN_0003e9b0()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar1[0xb] = 0;" (assignment_expression "puVar1[0xb] = 0" (subscript_expression "puVar1[0xb]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[10] = 0;" (assignment_expression "puVar1[10] = 0" (subscript_expression "puVar1[10]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0xc] = 0;" (assignment_expression "puVar1[0xc] = 0" (subscript_expression "puVar1[0xc]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0xe] = 0;" (assignment_expression "puVar1[0xe] = 0" (subscript_expression "puVar1[0xe]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0xd] = 0;" (assignment_expression "puVar1[0xd] = 0" (subscript_expression "puVar1[0xd]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x41b] = 0xffffffff;" (assignment_expression "puVar1[0x41b] = 0xffffffff" (subscript_expression "puVar1[0x41b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x41f] = 0;" (assignment_expression "puVar1[0x41f] = 0" (subscript_expression "puVar1[0x41f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x420] = 0;" (assignment_expression "puVar1[0x420] = 0" (subscript_expression "puVar1[0x420]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x426] = 0;" (assignment_expression "puVar1[0x426] = 0" (subscript_expression "puVar1[0x426]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x42d] = 0;" (assignment_expression "puVar1[0x42d] = 0" (subscript_expression "puVar1[0x42d]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x42e] = 0;" (assignment_expression "puVar1[0x42e] = 0" (subscript_expression "puVar1[0x42e]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x42f] = 0;" (assignment_expression "puVar1[0x42f] = 0" (subscript_expression "puVar1[0x42f]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x430] = 0;" (assignment_expression "puVar1[0x430] = 0" (subscript_expression "puVar1[0x430]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x431] = 0;" (assignment_expression "puVar1[0x431] = 0" (subscript_expression "puVar1[0x431]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x427] = 0;" (assignment_expression "puVar1[0x427] = 0" (subscript_expression "puVar1[0x427]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x434] = 0;" (assignment_expression "puVar1[0x434] = 0" (subscript_expression "puVar1[0x434]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x433] = 0;" (assignment_expression "puVar1[0x433] = 0" (subscript_expression "puVar1[0x433]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x432] = 0;" (assignment_expression "puVar1[0x432] = 0" (subscript_expression "puVar1[0x432]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x12] = 0xd820;" (assignment_expression "puVar1[0x12] = 0xd820" (subscript_expression "puVar1[0x12]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x13] = 0x20500;" (assignment_expression "puVar1[0x13] = 0x20500" (subscript_expression "puVar1[0x13]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x14] = 0;" (assignment_expression "puVar1[0x14] = 0" (subscript_expression "puVar1[0x14]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x15] = 0xd820;" (assignment_expression "puVar1[0x15] = 0xd820" (subscript_expression "puVar1[0x15]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x16] = 0x20500;" (assignment_expression "puVar1[0x16] = 0x20500" (subscript_expression "puVar1[0x16]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar1[0x17] = 0;" (assignment_expression "puVar1[0x17] = 0" (subscript_expression "puVar1[0x17]" identifier [ number_literal ]) = number_literal) ;) (return_statement "return puVar1;" return identifier ;) })))
(translation_unit (function_definition TYPE (pointer_declarator * (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) )))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , LIT ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (return_statement return IDENT ;) })))
(function_definition "undefined4 * FUN_0003ee70(undefined4 param_1,undefined4 param_2,undefined4 param_3)\n\n{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  \n  puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174);\n  puVar1[0x422] = param_3;\n  puVar1[0x424] = param_2;\n  uVar2 = FUN_0001ea50(param_1);\n  *puVar1 = 0xffff;\n  *(undefined2 *)(puVar1 + 0x291) = 99;\n  puVar1[0x425] = uVar2;\n  puVar1[0x423] = 0;\n  puVar1[0x290] = 0x363f5b1b;\n  puVar1[0x429] = 0;\n  puVar1[0x42a] = 0;\n  puVar1[0x41c] = 0;\n  puVar1[0x41d] = 0;\n  FUN_0002cfe0(puVar1 + 0x18);\n  FUN_0002cfe0(puVar1 + 0x3e);\n  puVar1[9] = 0;\n  puVar1[0x3c] = 0;\n  puVar1[0x3b] = 0;\n  puVar1[0x41] = 0;\n  puVar1[0x52] = 0;\n  puVar1[0x54] = 0;\n  puVar1[0x55] = 0;\n  puVar1[0x5a] = 0;\n  puVar1[0x2d] = 0;\n  puVar1[0x30] = 0;\n  puVar1[0x2f] = 0;\n  puVar1[0x4d] = 1;\n  puVar1[0x53] = 0;\n  puVar1[0x391] = 0;\n  puVar1[0x392] = 0;\n  FUN_0003d000(puVar1);\n  puVar1[1] = 0;\n  puVar1[3] = 0;\n  puVar1[2] = 0;\n  puVar1[5] = 0;\n  puVar1[0x6a] = 0;\n  puVar1[4] = 0;\n  puVar1[6] = 0;\n  puVar1[8] = 0xffffffff;\n  puVar1[7] = 0xffffffff;\n  puVar1[0x390] = 0;\n  puVar1[0x392] = 0;\n  puVar1[0x397] = 0;\n  puVar1[0x398] = 0;\n  puVar1[0x395] = 0;\n  puVar1[0x396] = 0;\n  puVar1[0x4b] = 0xffffffff;\n  puVar1[0x4a] = 0xffffffff;\n  FUN_0003e9b0();\n  puVar1[0xb] = 0;\n  puVar1[10] = 0;\n  puVar1[0xc] = 0;\n  puVar1[0xe] = 0;\n  puVar1[0xd] = 0;\n  puVar1[0x41b] = 0xffffffff;\n  puVar1[0x41f] = 0;\n  puVar1[0x420] = 0;\n  puVar1[0x426] = 0;\n  puVar1[0x42d] = 0;\n  puVar1[0x42e] = 0;\n  puVar1[0x42f] = 0;\n  puVar1[0x430] = 0;\n  puVar1[0x431] = 0;\n  puVar1[0x427] = 0;\n  puVar1[0x434] = 0;\n  puVar1[0x433] = 0;\n  puVar1[0x432] = 0;\n  puVar1[0x12] = 0xd820;\n  puVar1[0x13] = 0x20500;\n  puVar1[0x14] = 0;\n  puVar1[0x15] = 0xd820;\n  puVar1[0x16] = 0x20500;\n  puVar1[0x17] = 0;\n  return puVar1;\n}" (type_identifier "undefined4") (pointer_declarator "* FUN_0003ee70(undefined4 param_1,undefined4 param_2,undefined4 param_3)" (* "*") (function_declarator "FUN_0003ee70(undefined4 param_1,undefined4 param_2,undefined4 param_3)" (identifier "FUN_0003ee70") (parameter_list "(undefined4 param_1,undefined4 param_2,undefined4 param_3)" (( "(") (parameter_declaration "undefined4 param_1" (type_identifier "undefined4") (identifier "param_1")) (, ",") (parameter_declaration "undefined4 param_2" (type_identifier "undefined4") (identifier "param_2")) (, ",") (parameter_declaration "undefined4 param_3" (type_identifier "undefined4") (identifier "param_3")) () ")")))) (compound_statement "{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  \n  puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174);\n  puVar1[0x422] = param_3;\n  puVar1[0x424] = param_2;\n  uVar2 = FUN_0001ea50(param_1);\n  *puVar1 = 0xffff;\n  *(undefined2 *)(puVar1 + 0x291) = 99;\n  puVar1[0x425] = uVar2;\n  puVar1[0x423] = 0;\n  puVar1[0x290] = 0x363f5b1b;\n  puVar1[0x429] = 0;\n  puVar1[0x42a] = 0;\n  puVar1[0x41c] = 0;\n  puVar1[0x41d] = 0;\n  FUN_0002cfe0(puVar1 + 0x18);\n  FUN_0002cfe0(puVar1 + 0x3e);\n  puVar1[9] = 0;\n  puVar1[0x3c] = 0;\n  puVar1[0x3b] = 0;\n  puVar1[0x41] = 0;\n  puVar1[0x52] = 0;\n  puVar1[0x54] = 0;\n  puVar1[0x55] = 0;\n  puVar1[0x5a] = 0;\n  puVar1[0x2d] = 0;\n  puVar1[0x30] = 0;\n  puVar1[0x2f] = 0;\n  puVar1[0x4d] = 1;\n  puVar1[0x53] = 0;\n  puVar1[0x391] = 0;\n  puVar1[0x392] = 0;\n  FUN_0003d000(puVar1);\n  puVar1[1] = 0;\n  puVar1[3] = 0;\n  puVar1[2] = 0;\n  puVar1[5] = 0;\n  puVar1[0x6a] = 0;\n  puVar1[4] = 0;\n  puVar1[6] = 0;\n  puVar1[8] = 0xffffffff;\n  puVar1[7] = 0xffffffff;\n  puVar1[0x390] = 0;\n  puVar1[0x392] = 0;\n  puVar1[0x397] = 0;\n  puVar1[0x398] = 0;\n  puVar1[0x395] = 0;\n  puVar1[0x396] = 0;\n  puVar1[0x4b] = 0xffffffff;\n  puVar1[0x4a] = 0xffffffff;\n  FUN_0003e9b0();\n  puVar1[0xb] = 0;\n  puVar1[10] = 0;\n  puVar1[0xc] = 0;\n  puVar1[0xe] = 0;\n  puVar1[0xd] = 0;\n  puVar1[0x41b] = 0xffffffff;\n  puVar1[0x41f] = 0;\n  puVar1[0x420] = 0;\n  puVar1[0x426] = 0;\n  puVar1[0x42d] = 0;\n  puVar1[0x42e] = 0;\n  puVar1[0x42f] = 0;\n  puVar1[0x430] = 0;\n  puVar1[0x431] = 0;\n  puVar1[0x427] = 0;\n  puVar1[0x434] = 0;\n  puVar1[0x433] = 0;\n  puVar1[0x432] = 0;\n  puVar1[0x12] = 0xd820;\n  puVar1[0x13] = 0x20500;\n  puVar1[0x14] = 0;\n  puVar1[0x15] = 0xd820;\n  puVar1[0x16] = 0x20500;\n  puVar1[0x17] = 0;\n  return puVar1;\n}" ({ "{") (declaration "undefined4 *puVar1;" (type_identifier "undefined4") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "undefined4 uVar2;" (type_identifier "undefined4") (identifier "uVar2") (; ";")) (expression_statement "puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174);" (assignment_expression "puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174)" (identifier "puVar1") (= "=") (cast_expression "(undefined4 *)FUN_0002d1f0(1,0x1174)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0002d1f0(1,0x1174)" (identifier "FUN_0002d1f0") (argument_list "(1,0x1174)" (( "(") (number_literal "1") (, ",") (number_literal "0x1174") () ")"))))) (; ";")) (expression_statement "puVar1[0x422] = param_3;" (assignment_expression "puVar1[0x422] = param_3" (subscript_expression "puVar1[0x422]" (identifier "puVar1") ([ "[") (number_literal "0x422") (] "]")) (= "=") (identifier "param_3")) (; ";")) (expression_statement "puVar1[0x424] = param_2;" (assignment_expression "puVar1[0x424] = param_2" (subscript_expression "puVar1[0x424]" (identifier "puVar1") ([ "[") (number_literal "0x424") (] "]")) (= "=") (identifier "param_2")) (; ";")) (expression_statement "uVar2 = FUN_0001ea50(param_1);" (assignment_expression "uVar2 = FUN_0001ea50(param_1)" (identifier "uVar2") (= "=") (call_expression "FUN_0001ea50(param_1)" (identifier "FUN_0001ea50") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (expression_statement "*puVar1 = 0xffff;" (assignment_expression "*puVar1 = 0xffff" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (= "=") (number_literal "0xffff")) (; ";")) (expression_statement "*(undefined2 *)(puVar1 + 0x291) = 99;" (assignment_expression "*(undefined2 *)(puVar1 + 0x291) = 99" (pointer_expression "*(undefined2 *)(puVar1 + 0x291)" (* "*") (cast_expression "(undefined2 *)(puVar1 + 0x291)" (( "(") (type_descriptor "undefined2 *" (type_identifier "undefined2") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar1 + 0x291)" (( "(") (binary_expression "puVar1 + 0x291" (identifier "puVar1") (+ "+") (number_literal "0x291")) () ")")))) (= "=") (number_literal "99")) (; ";")) (expression_statement "puVar1[0x425] = uVar2;" (assignment_expression "puVar1[0x425] = uVar2" (subscript_expression "puVar1[0x425]" (identifier "puVar1") ([ "[") (number_literal "0x425") (] "]")) (= "=") (identifier "uVar2")) (; ";")) (expression_statement "puVar1[0x423] = 0;" (assignment_expression "puVar1[0x423] = 0" (subscript_expression "puVar1[0x423]" (identifier "puVar1") ([ "[") (number_literal "0x423") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x290] = 0x363f5b1b;" (assignment_expression "puVar1[0x290] = 0x363f5b1b" (subscript_expression "puVar1[0x290]" (identifier "puVar1") ([ "[") (number_literal "0x290") (] "]")) (= "=") (number_literal "0x363f5b1b")) (; ";")) (expression_statement "puVar1[0x429] = 0;" (assignment_expression "puVar1[0x429] = 0" (subscript_expression "puVar1[0x429]" (identifier "puVar1") ([ "[") (number_literal "0x429") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x42a] = 0;" (assignment_expression "puVar1[0x42a] = 0" (subscript_expression "puVar1[0x42a]" (identifier "puVar1") ([ "[") (number_literal "0x42a") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x41c] = 0;" (assignment_expression "puVar1[0x41c] = 0" (subscript_expression "puVar1[0x41c]" (identifier "puVar1") ([ "[") (number_literal "0x41c") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x41d] = 0;" (assignment_expression "puVar1[0x41d] = 0" (subscript_expression "puVar1[0x41d]" (identifier "puVar1") ([ "[") (number_literal "0x41d") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "FUN_0002cfe0(puVar1 + 0x18);" (call_expression "FUN_0002cfe0(puVar1 + 0x18)" (identifier "FUN_0002cfe0") (argument_list "(puVar1 + 0x18)" (( "(") (binary_expression "puVar1 + 0x18" (identifier "puVar1") (+ "+") (number_literal "0x18")) () ")"))) (; ";")) (expression_statement "FUN_0002cfe0(puVar1 + 0x3e);" (call_expression "FUN_0002cfe0(puVar1 + 0x3e)" (identifier "FUN_0002cfe0") (argument_list "(puVar1 + 0x3e)" (( "(") (binary_expression "puVar1 + 0x3e" (identifier "puVar1") (+ "+") (number_literal "0x3e")) () ")"))) (; ";")) (expression_statement "puVar1[9] = 0;" (assignment_expression "puVar1[9] = 0" (subscript_expression "puVar1[9]" (identifier "puVar1") ([ "[") (number_literal "9") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x3c] = 0;" (assignment_expression "puVar1[0x3c] = 0" (subscript_expression "puVar1[0x3c]" (identifier "puVar1") ([ "[") (number_literal "0x3c") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x3b] = 0;" (assignment_expression "puVar1[0x3b] = 0" (subscript_expression "puVar1[0x3b]" (identifier "puVar1") ([ "[") (number_literal "0x3b") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x41] = 0;" (assignment_expression "puVar1[0x41] = 0" (subscript_expression "puVar1[0x41]" (identifier "puVar1") ([ "[") (number_literal "0x41") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x52] = 0;" (assignment_expression "puVar1[0x52] = 0" (subscript_expression "puVar1[0x52]" (identifier "puVar1") ([ "[") (number_literal "0x52") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x54] = 0;" (assignment_expression "puVar1[0x54] = 0" (subscript_expression "puVar1[0x54]" (identifier "puVar1") ([ "[") (number_literal "0x54") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x55] = 0;" (assignment_expression "puVar1[0x55] = 0" (subscript_expression "puVar1[0x55]" (identifier "puVar1") ([ "[") (number_literal "0x55") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x5a] = 0;" (assignment_expression "puVar1[0x5a] = 0" (subscript_expression "puVar1[0x5a]" (identifier "puVar1") ([ "[") (number_literal "0x5a") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x2d] = 0;" (assignment_expression "puVar1[0x2d] = 0" (subscript_expression "puVar1[0x2d]" (identifier "puVar1") ([ "[") (number_literal "0x2d") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x30] = 0;" (assignment_expression "puVar1[0x30] = 0" (subscript_expression "puVar1[0x30]" (identifier "puVar1") ([ "[") (number_literal "0x30") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x2f] = 0;" (assignment_expression "puVar1[0x2f] = 0" (subscript_expression "puVar1[0x2f]" (identifier "puVar1") ([ "[") (number_literal "0x2f") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x4d] = 1;" (assignment_expression "puVar1[0x4d] = 1" (subscript_expression "puVar1[0x4d]" (identifier "puVar1") ([ "[") (number_literal "0x4d") (] "]")) (= "=") (number_literal "1")) (; ";")) (expression_statement "puVar1[0x53] = 0;" (assignment_expression "puVar1[0x53] = 0" (subscript_expression "puVar1[0x53]" (identifier "puVar1") ([ "[") (number_literal "0x53") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x391] = 0;" (assignment_expression "puVar1[0x391] = 0" (subscript_expression "puVar1[0x391]" (identifier "puVar1") ([ "[") (number_literal "0x391") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x392] = 0;" (assignment_expression "puVar1[0x392] = 0" (subscript_expression "puVar1[0x392]" (identifier "puVar1") ([ "[") (number_literal "0x392") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "FUN_0003d000(puVar1);" (call_expression "FUN_0003d000(puVar1)" (identifier "FUN_0003d000") (argument_list "(puVar1)" (( "(") (identifier "puVar1") () ")"))) (; ";")) (expression_statement "puVar1[1] = 0;" (assignment_expression "puVar1[1] = 0" (subscript_expression "puVar1[1]" (identifier "puVar1") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[3] = 0;" (assignment_expression "puVar1[3] = 0" (subscript_expression "puVar1[3]" (identifier "puVar1") ([ "[") (number_literal "3") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[2] = 0;" (assignment_expression "puVar1[2] = 0" (subscript_expression "puVar1[2]" (identifier "puVar1") ([ "[") (number_literal "2") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[5] = 0;" (assignment_expression "puVar1[5] = 0" (subscript_expression "puVar1[5]" (identifier "puVar1") ([ "[") (number_literal "5") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x6a] = 0;" (assignment_expression "puVar1[0x6a] = 0" (subscript_expression "puVar1[0x6a]" (identifier "puVar1") ([ "[") (number_literal "0x6a") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[4] = 0;" (assignment_expression "puVar1[4] = 0" (subscript_expression "puVar1[4]" (identifier "puVar1") ([ "[") (number_literal "4") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[6] = 0;" (assignment_expression "puVar1[6] = 0" (subscript_expression "puVar1[6]" (identifier "puVar1") ([ "[") (number_literal "6") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[8] = 0xffffffff;" (assignment_expression "puVar1[8] = 0xffffffff" (subscript_expression "puVar1[8]" (identifier "puVar1") ([ "[") (number_literal "8") (] "]")) (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "puVar1[7] = 0xffffffff;" (assignment_expression "puVar1[7] = 0xffffffff" (subscript_expression "puVar1[7]" (identifier "puVar1") ([ "[") (number_literal "7") (] "]")) (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "puVar1[0x390] = 0;" (assignment_expression "puVar1[0x390] = 0" (subscript_expression "puVar1[0x390]" (identifier "puVar1") ([ "[") (number_literal "0x390") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x392] = 0;" (assignment_expression "puVar1[0x392] = 0" (subscript_expression "puVar1[0x392]" (identifier "puVar1") ([ "[") (number_literal "0x392") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x397] = 0;" (assignment_expression "puVar1[0x397] = 0" (subscript_expression "puVar1[0x397]" (identifier "puVar1") ([ "[") (number_literal "0x397") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x398] = 0;" (assignment_expression "puVar1[0x398] = 0" (subscript_expression "puVar1[0x398]" (identifier "puVar1") ([ "[") (number_literal "0x398") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x395] = 0;" (assignment_expression "puVar1[0x395] = 0" (subscript_expression "puVar1[0x395]" (identifier "puVar1") ([ "[") (number_literal "0x395") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x396] = 0;" (assignment_expression "puVar1[0x396] = 0" (subscript_expression "puVar1[0x396]" (identifier "puVar1") ([ "[") (number_literal "0x396") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x4b] = 0xffffffff;" (assignment_expression "puVar1[0x4b] = 0xffffffff" (subscript_expression "puVar1[0x4b]" (identifier "puVar1") ([ "[") (number_literal "0x4b") (] "]")) (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "puVar1[0x4a] = 0xffffffff;" (assignment_expression "puVar1[0x4a] = 0xffffffff" (subscript_expression "puVar1[0x4a]" (identifier "puVar1") ([ "[") (number_literal "0x4a") (] "]")) (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "FUN_0003e9b0();" (call_expression "FUN_0003e9b0()" (identifier "FUN_0003e9b0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar1[0xb] = 0;" (assignment_expression "puVar1[0xb] = 0" (subscript_expression "puVar1[0xb]" (identifier "puVar1") ([ "[") (number_literal "0xb") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[10] = 0;" (assignment_expression "puVar1[10] = 0" (subscript_expression "puVar1[10]" (identifier "puVar1") ([ "[") (number_literal "10") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0xc] = 0;" (assignment_expression "puVar1[0xc] = 0" (subscript_expression "puVar1[0xc]" (identifier "puVar1") ([ "[") (number_literal "0xc") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0xe] = 0;" (assignment_expression "puVar1[0xe] = 0" (subscript_expression "puVar1[0xe]" (identifier "puVar1") ([ "[") (number_literal "0xe") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0xd] = 0;" (assignment_expression "puVar1[0xd] = 0" (subscript_expression "puVar1[0xd]" (identifier "puVar1") ([ "[") (number_literal "0xd") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x41b] = 0xffffffff;" (assignment_expression "puVar1[0x41b] = 0xffffffff" (subscript_expression "puVar1[0x41b]" (identifier "puVar1") ([ "[") (number_literal "0x41b") (] "]")) (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "puVar1[0x41f] = 0;" (assignment_expression "puVar1[0x41f] = 0" (subscript_expression "puVar1[0x41f]" (identifier "puVar1") ([ "[") (number_literal "0x41f") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x420] = 0;" (assignment_expression "puVar1[0x420] = 0" (subscript_expression "puVar1[0x420]" (identifier "puVar1") ([ "[") (number_literal "0x420") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x426] = 0;" (assignment_expression "puVar1[0x426] = 0" (subscript_expression "puVar1[0x426]" (identifier "puVar1") ([ "[") (number_literal "0x426") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x42d] = 0;" (assignment_expression "puVar1[0x42d] = 0" (subscript_expression "puVar1[0x42d]" (identifier "puVar1") ([ "[") (number_literal "0x42d") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x42e] = 0;" (assignment_expression "puVar1[0x42e] = 0" (subscript_expression "puVar1[0x42e]" (identifier "puVar1") ([ "[") (number_literal "0x42e") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x42f] = 0;" (assignment_expression "puVar1[0x42f] = 0" (subscript_expression "puVar1[0x42f]" (identifier "puVar1") ([ "[") (number_literal "0x42f") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x430] = 0;" (assignment_expression "puVar1[0x430] = 0" (subscript_expression "puVar1[0x430]" (identifier "puVar1") ([ "[") (number_literal "0x430") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x431] = 0;" (assignment_expression "puVar1[0x431] = 0" (subscript_expression "puVar1[0x431]" (identifier "puVar1") ([ "[") (number_literal "0x431") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x427] = 0;" (assignment_expression "puVar1[0x427] = 0" (subscript_expression "puVar1[0x427]" (identifier "puVar1") ([ "[") (number_literal "0x427") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x434] = 0;" (assignment_expression "puVar1[0x434] = 0" (subscript_expression "puVar1[0x434]" (identifier "puVar1") ([ "[") (number_literal "0x434") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x433] = 0;" (assignment_expression "puVar1[0x433] = 0" (subscript_expression "puVar1[0x433]" (identifier "puVar1") ([ "[") (number_literal "0x433") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x432] = 0;" (assignment_expression "puVar1[0x432] = 0" (subscript_expression "puVar1[0x432]" (identifier "puVar1") ([ "[") (number_literal "0x432") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x12] = 0xd820;" (assignment_expression "puVar1[0x12] = 0xd820" (subscript_expression "puVar1[0x12]" (identifier "puVar1") ([ "[") (number_literal "0x12") (] "]")) (= "=") (number_literal "0xd820")) (; ";")) (expression_statement "puVar1[0x13] = 0x20500;" (assignment_expression "puVar1[0x13] = 0x20500" (subscript_expression "puVar1[0x13]" (identifier "puVar1") ([ "[") (number_literal "0x13") (] "]")) (= "=") (number_literal "0x20500")) (; ";")) (expression_statement "puVar1[0x14] = 0;" (assignment_expression "puVar1[0x14] = 0" (subscript_expression "puVar1[0x14]" (identifier "puVar1") ([ "[") (number_literal "0x14") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1[0x15] = 0xd820;" (assignment_expression "puVar1[0x15] = 0xd820" (subscript_expression "puVar1[0x15]" (identifier "puVar1") ([ "[") (number_literal "0x15") (] "]")) (= "=") (number_literal "0xd820")) (; ";")) (expression_statement "puVar1[0x16] = 0x20500;" (assignment_expression "puVar1[0x16] = 0x20500" (subscript_expression "puVar1[0x16]" (identifier "puVar1") ([ "[") (number_literal "0x16") (] "]")) (= "=") (number_literal "0x20500")) (; ";")) (expression_statement "puVar1[0x17] = 0;" (assignment_expression "puVar1[0x17] = 0" (subscript_expression "puVar1[0x17]" (identifier "puVar1") ([ "[") (number_literal "0x17") (] "]")) (= "=") (number_literal "0")) (; ";")) (return_statement "return puVar1;" (return "return") (identifier "puVar1") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Unknown calling convention */
/* WARNING: Enum "anon_enum_32": Some values do not have unique names */

type_1 * function_1(type_2 *myconf,type_3 *ucsdata,void *frontend)

{
  type_1 *term;
  type_2 *pCVar1;
  
  term = (type_1 *)var_1(1,0x1174);
  term->frontend = frontend;
  term->ucsdata = ucsdata;
  pCVar1 = var_2(myconf);
  term->compatibility_level = 0xffff;
  term->id_string[4] = 'c';
  term->id_string[5] = '\0';
  term->conf = pCVar1;
  term->logctx = (void *)0x0;
  var_3(term->id_string,"\x1b[?6",4);
  term->tblink_pending = 0;
  term->cblink_pending = 0;
  term->paste_buffer = (type_4 *)0x0;
  term->paste_len = 0;
  var_4(&term->inbuf);
  var_4(&term->printer_buf);
  term->curstype = 0;
  term->only_printing = 0;
  term->printing = 0;
  term->print_job = (type_5 *)0x0;
  term->vt52_mode = 0;
  term->cr_lf_return = 0;
  term->seen_disp_event = 0;
  term->mouse_is_down = 0;
  term->reset_132 = 0;
  term->tblinker = 0;
  term->cblinker = 0;
  term->has_focus = 1;
  term->repeat_off = 0;
  term->termstate = ADDRTYPE_UNSPEC;
  term->selstate = ADDRTYPE_UNSPEC;
  var_5(term);
  term->scrollback = (type_6 *)0x0;
  term->alt_screen = (type_6 *)0x0;
  term->screen = (type_6 *)0x0;
  term->tempsblines = 0;
  term->alt_sblines = 0;
  term->disptop = 0;
  term->disptext = (type_7 **)0x0;
  term->dispcursy = -1;
  term->dispcursx = -1;
  term->tabs = (type_8 *)0x0;
  term->selstate = ADDRTYPE_UNSPEC;
  (term->selend).y = 0;
  (term->selend).x = 0;
  (term->selstart).y = 0;
  (term->selstart).x = 0;
  term->cols = -1;
  term->rows = -1;
  var_6(term,1);
  term->beeptail = (type_9 *)0x0;
  term->beephead = (type_9 *)0x0;
  term->nbeeps = 0;
  term->lastbeep = L'\0';
  term->beep_overloaded = 0;
  term->attr_mask = -1;
  term->resize_fn = (type_10 *)0x0;
  term->resize_ctx = (void *)0x0;
  term->in_term_out = 0;
  term->ltemp = (type_11 *)0x0;
  term->ltemp_size = 0;
  term->wcFrom = (type_12 *)0x0;
  term->wcTo = (type_12 *)0x0;
  term->wcFromTo_size = 0;
  term->window_update_pending = 0;
  term->bidi_cache_size = 0;
  term->post_bidi_cache = (type_13 *)0x0;
  term->pre_bidi_cache = (type_13 *)0x0;
  (term->basic_erase_char).chr = 0xd820;
  (term->basic_erase_char).attr = 0x20500;
  (term->basic_erase_char).cc_next = 0;
  (term->erase_char).chr = 0xd820;
  (term->erase_char).attr = 0x20500;
  (term->erase_char).cc_next = 0;
  return term;
}


(translation_unit (function_definition type: (type_identifier) declarator: (pointer_declarator declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier))))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (number_literal)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (return_statement (identifier)))))

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

undefined4 * MASKED(undefined4 param_1,undefined4 param_2,undefined4 param_3)

{
  undefined4 *puVar1;
  undefined4 uVar2;
  
  puVar1 = (undefined4 *)FUN_0002d1f0(1,0x1174);
  puVar1[0x422] = param_3;
  puVar1[0x424] = param_2;
  uVar2 = FUN_0001ea50(param_1);
  *puVar1 = 0xffff;
  *(undefined2 *)(puVar1 + 0x291) = 99;
  puVar1[0x425] = uVar2;
  puVar1[0x423] = 0;
  puVar1[0x290] = 0x363f5b1b;
  puVar1[0x429] = 0;
  puVar1[0x42a] = 0;
  puVar1[0x41c] = 0;
  puVar1[0x41d] = 0;
  FUN_0002cfe0(puVar1 + 0x18);
  FUN_0002cfe0(puVar1 + 0x3e);
  puVar1[9] = 0;
  puVar1[0x3c] = 0;
  puVar1[0x3b] = 0;
  puVar1[0x41] = 0;
  puVar1[0x52] = 0;
  puVar1[0x54] = 0;
  puVar1[0x55] = 0;
  puVar1[0x5a] = 0;
  puVar1[0x2d] = 0;
  puVar1[0x30] = 0;
  puVar1[0x2f] = 0;
  puVar1[0x4d] = 1;
  puVar1[0x53] = 0;
  puVar1[0x391] = 0;
  puVar1[0x392] = 0;
  FUN_0003d000(puVar1);
  puVar1[1] = 0;
  puVar1[3] = 0;
  puVar1[2] = 0;
  puVar1[5] = 0;
  puVar1[0x6a] = 0;
  puVar1[4] = 0;
  puVar1[6] = 0;
  puVar1[8] = 0xffffffff;
  puVar1[7] = 0xffffffff;
  puVar1[0x390] = 0;
  puVar1[0x392] = 0;
  puVar1[0x397] = 0;
  puVar1[0x398] = 0;
  puVar1[0x395] = 0;
  puVar1[0x396] = 0;
  puVar1[0x4b] = 0xffffffff;
  puVar1[0x4a] = 0xffffffff;
  FUN_0003e9b0();
  puVar1[0xb] = 0;
  puVar1[10] = 0;
  puVar1[0xc] = 0;
  puVar1[0xe] = 0;
  puVar1[0xd] = 0;
  puVar1[0x41b] = 0xffffffff;
  puVar1[0x41f] = 0;
  puVar1[0x420] = 0;
  puVar1[0x426] = 0;
  puVar1[0x42d] = 0;
  puVar1[0x42e] = 0;
  puVar1[0x42f] = 0;
  puVar1[0x430] = 0;
  puVar1[0x431] = 0;
  puVar1[0x427] = 0;
  puVar1[0x434] = 0;
  puVar1[0x433] = 0;
  puVar1[0x432] = 0;
  puVar1[0x12] = 0xd820;
  puVar1[0x13] = 0x20500;
  puVar1[0x14] = 0;
  puVar1[0x15] = 0xd820;
  puVar1[0x16] = 0x20500;
  puVar1[0x17] = 0;
  return puVar1;
}

