
void not_found_msg(char *str)

{
  char *text;
  size_t sVar1;
  char *msg;
  int iVar2;
  int *piVar3;
  int in_t9;
  
  piVar3 = *(int **)(in_t9 + 0x40568);
  text = display_string(str,0,*piVar3 / 2 + 1,false);
  sVar1 = strnlenpt(text,*piVar3 / 2);
  sVar1 = actual_x(text,sVar1);
  msg = (char *)(**(code **)(&LAB_00040680 + in_t9))(0,*(int *)(in_t9 + 0x3fb10) + 0x4888,5);
  if (text[sVar1] == '\0') {
    iVar2 = *(int *)(in_t9 + 0x3fb10) + 0x2cac;
  }
  else {
    iVar2 = *(int *)(in_t9 + 0x3fb10) + -0x125c;
  }
  statusline(HUSH,msg,sVar1,text,iVar2);
                    /* WARNING: Could not recover jumptable at 0x00037b38. Too many branches */
                    /* WARNING: Treating indirect jump as call */
  (**(code **)(&LAB_000406c0 + in_t9))(text);
  return;
}



void not_found_msg(undefined4 param_1)

{
  int iVar1;
  undefined4 uVar2;
  int iVar3;
  undefined *puVar4;
  
  puVar4 = PTR_COLS_00077fb4;
  iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0);
  uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2);
  iVar3 = actual_x(iVar1,uVar2);
  uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5);
  if (*(char *)(iVar1 + iVar3) == '\0') {
    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;
  }
  else {
    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;
  }
  statusline(0,uVar2,iVar3,iVar1,puVar4);
                    /* WARNING: Could not recover jumptable at 0x00037b38. Too many branches */
                    /* WARNING: Treating indirect jump as call */
  (*(code *)PTR_free_0007810c)(iVar1);
  return;
}


lui gp,0x4
addiu gp,gp,0x7ad4
addu gp,gp,t9
addiu sp,sp,-0x30
lw t9,-0x7c40(gp)
or a3,zero,zero
or a1,zero,zero
sw s0,0x24(sp)
lw s0,-0x756c(gp)
sw ra,0x2c(sp)
sw gp,0x18(sp)
sw s1,0x28(sp)
lw v0,0x0(s0)
srl a2,v0,0x1f
addu a2,a2,v0
sra a2,a2,0x1
bal 0x00044d94
_addiu a2,a2,0x1
lw v1,0x0(s0)
or a0,v0,zero
lw gp,0x18(sp)
or s0,v0,zero
srl a1,v1,0x1f
addu a1,a1,v1
lw t9,-0x798c(gp)
bal 0x00042cd0
_sra a1,a1,0x1
or a0,s0,zero
lw gp,0x18(sp)
lw t9,-0x7e68(gp)
bal 0x00042c00
_or a1,v0,zero
li a2,0x5
lw gp,0x18(sp)
or a0,zero,zero
or s1,v0,zero
lw a1,-0x7fc4(gp)
lw t9,-0x7454(gp)
jalr t9
_addiu a1,a1,0x4888
addu v1,s0,s1
lb v1,0x0(v1)
beq v1,zero,0x00037b40
_lw gp,0x18(sp)
lw v1,-0x7fc4(gp)
addiu v1,v1,-0x125c
lw t9,-0x7fa4(gp)
or a0,zero,zero
sw v1,0x10(sp)
or a3,s0,zero
or a2,s1,zero
bal 0x00045ad8
_or a1,v0,zero
or a0,s0,zero
lw gp,0x18(sp)
lw ra,0x2c(sp)
lw s1,0x28(sp)
lw s0,0x24(sp)
lw t9,-0x7414(gp)
jr t9
_addiu sp,sp,0x30
lw v1,-0x7fc4(gp)
b 0x00037b04
_addiu v1,v1,0x2cac
(translation_unit "void not_found_msg(undefined4 param_1)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined *puVar4;\n  \n  puVar4 = PTR_COLS_00077fb4;\n  iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0);\n  uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2);\n  iVar3 = actual_x(iVar1,uVar2);\n  uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5);\n  if (*(char *)(iVar1 + iVar3) == '\0') {\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }\n  else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }\n  statusline(0,uVar2,iVar3,iVar1,puVar4);\n                    /* WARNING: Could not recover jumptable at 0x00037b38. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n  (*(code *)PTR_free_0007810c)(iVar1);\n  return;\n}\n\n" (function_definition "void not_found_msg(undefined4 param_1)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined *puVar4;\n  \n  puVar4 = PTR_COLS_00077fb4;\n  iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0);\n  uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2);\n  iVar3 = actual_x(iVar1,uVar2);\n  uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5);\n  if (*(char *)(iVar1 + iVar3) == '\0') {\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }\n  else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }\n  statusline(0,uVar2,iVar3,iVar1,puVar4);\n                    /* WARNING: Could not recover jumptable at 0x00037b38. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n  (*(code *)PTR_free_0007810c)(iVar1);\n  return;\n}" primitive_type (function_declarator "not_found_msg(undefined4 param_1)" identifier (parameter_list "(undefined4 param_1)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) ))) (compound_statement "{\n  int iVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined *puVar4;\n  \n  puVar4 = PTR_COLS_00077fb4;\n  iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0);\n  uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2);\n  iVar3 = actual_x(iVar1,uVar2);\n  uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5);\n  if (*(char *)(iVar1 + iVar3) == '\0') {\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }\n  else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }\n  statusline(0,uVar2,iVar3,iVar1,puVar4);\n                    /* WARNING: Could not recover jumptable at 0x00037b38. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n  (*(code *)PTR_free_0007810c)(iVar1);\n  return;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (expression_statement "puVar4 = PTR_COLS_00077fb4;" (assignment_expression "puVar4 = PTR_COLS_00077fb4" identifier = identifier) ;) (expression_statement "iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0);" (assignment_expression "iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0)" identifier = (call_expression "display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0)" identifier (argument_list "(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0)" ( identifier , number_literal , (binary_expression "*(int *)PTR_COLS_00077fb4 / 2 + 1" (binary_expression "*(int *)PTR_COLS_00077fb4 / 2" (pointer_expression "*(int *)PTR_COLS_00077fb4" * (cast_expression "(int *)PTR_COLS_00077fb4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) / number_literal) + number_literal) , number_literal )))) ;) (expression_statement "uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2);" (assignment_expression "uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2)" identifier = (call_expression "strnlenpt(iVar1,*(int *)puVar4 / 2)" identifier (argument_list "(iVar1,*(int *)puVar4 / 2)" ( identifier , (binary_expression "*(int *)puVar4 / 2" (pointer_expression "*(int *)puVar4" * (cast_expression "(int *)puVar4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) / number_literal) )))) ;) (expression_statement "iVar3 = actual_x(iVar1,uVar2);" (assignment_expression "iVar3 = actual_x(iVar1,uVar2)" identifier = (call_expression "actual_x(iVar1,uVar2)" identifier (argument_list "(iVar1,uVar2)" ( identifier , identifier )))) ;) (expression_statement "uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5);" (assignment_expression "uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5)" identifier = (call_expression "(*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5)" (parenthesized_expression "(*(code *)PTR_dcgettext_000780cc)" ( (pointer_expression "*(code *)PTR_dcgettext_000780cc" * (cast_expression "(code *)PTR_dcgettext_000780cc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0,PTR_s_d_of_current_line_0007755c + 0x4888,5)" ( number_literal , (binary_expression "PTR_s_d_of_current_line_0007755c + 0x4888" identifier + number_literal) , number_literal )))) ;) (if_statement "if (*(char *)(iVar1 + iVar3) == '\0') {\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }\n  else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }" if (parenthesized_expression "(*(char *)(iVar1 + iVar3) == '\0')" ( (binary_expression "*(char *)(iVar1 + iVar3) == '\0'" (pointer_expression "*(char *)(iVar1 + iVar3)" * (cast_expression "(char *)(iVar1 + iVar3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + iVar3)" ( (binary_expression "iVar1 + iVar3" identifier + identifier) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }" { (expression_statement "puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;" (assignment_expression "puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac" identifier = (binary_expression "PTR_s_d_of_current_line_0007755c + 0x2cac" identifier + number_literal)) ;) }) (else_clause "else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }" else (compound_statement "{\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }" { (expression_statement "puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;" (assignment_expression "puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c" identifier = (binary_expression "PTR_s_d_of_current_line_0007755c + -0x125c" identifier + number_literal)) ;) }))) (expression_statement "statusline(0,uVar2,iVar3,iVar1,puVar4);" (call_expression "statusline(0,uVar2,iVar3,iVar1,puVar4)" identifier (argument_list "(0,uVar2,iVar3,iVar1,puVar4)" ( number_literal , identifier , identifier , identifier , identifier ))) ;) comment comment (expression_statement "(*(code *)PTR_free_0007810c)(iVar1);" (call_expression "(*(code *)PTR_free_0007810c)(iVar1)" (parenthesized_expression "(*(code *)PTR_free_0007810c)" ( (pointer_expression "*(code *)PTR_free_0007810c" * (cast_expression "(code *)PTR_free_0007810c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar1)" ( identifier ))) ;) (return_statement "return;" return ;) })))
(translation_unit "void not_found_msg(char *str)\n\n{\n  char *text;\n  size_t sVar1;\n  char *msg;\n  int iVar2;\n  int *piVar3;\n  int in_t9;\n  \n  piVar3 = *(int **)(in_t9 + 0x40568);\n  text = display_string(str,0,*piVar3 / 2 + 1,false);\n  sVar1 = strnlenpt(text,*piVar3 / 2);\n  sVar1 = actual_x(text,sVar1);\n  msg = (char *)(**(code **)(&LAB_00040680 + in_t9))(0,*(int *)(in_t9 + 0x3fb10) + 0x4888,5);\n  if (text[sVar1] == '\0') {\n    iVar2 = *(int *)(in_t9 + 0x3fb10) + 0x2cac;\n  }\n  else {\n    iVar2 = *(int *)(in_t9 + 0x3fb10) + -0x125c;\n  }\n  statusline(HUSH,msg,sVar1,text,iVar2);\n                    /* WARNING: Could not recover jumptable at 0x00037b38. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n  (**(code **)(&LAB_000406c0 + in_t9))(text);\n  return;\n}\n\n" (function_definition "void not_found_msg(char *str)\n\n{\n  char *text;\n  size_t sVar1;\n  char *msg;\n  int iVar2;\n  int *piVar3;\n  int in_t9;\n  \n  piVar3 = *(int **)(in_t9 + 0x40568);\n  text = display_string(str,0,*piVar3 / 2 + 1,false);\n  sVar1 = strnlenpt(text,*piVar3 / 2);\n  sVar1 = actual_x(text,sVar1);\n  msg = (char *)(**(code **)(&LAB_00040680 + in_t9))(0,*(int *)(in_t9 + 0x3fb10) + 0x4888,5);\n  if (text[sVar1] == '\0') {\n    iVar2 = *(int *)(in_t9 + 0x3fb10) + 0x2cac;\n  }\n  else {\n    iVar2 = *(int *)(in_t9 + 0x3fb10) + -0x125c;\n  }\n  statusline(HUSH,msg,sVar1,text,iVar2);\n                    /* WARNING: Could not recover jumptable at 0x00037b38. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n  (**(code **)(&LAB_000406c0 + in_t9))(text);\n  return;\n}" primitive_type (function_declarator "not_found_msg(char *str)" identifier (parameter_list "(char *str)" ( (parameter_declaration "char *str" primitive_type (pointer_declarator "*str" * identifier)) ))) (compound_statement "{\n  char *text;\n  size_t sVar1;\n  char *msg;\n  int iVar2;\n  int *piVar3;\n  int in_t9;\n  \n  piVar3 = *(int **)(in_t9 + 0x40568);\n  text = display_string(str,0,*piVar3 / 2 + 1,false);\n  sVar1 = strnlenpt(text,*piVar3 / 2);\n  sVar1 = actual_x(text,sVar1);\n  msg = (char *)(**(code **)(&LAB_00040680 + in_t9))(0,*(int *)(in_t9 + 0x3fb10) + 0x4888,5);\n  if (text[sVar1] == '\0') {\n    iVar2 = *(int *)(in_t9 + 0x3fb10) + 0x2cac;\n  }\n  else {\n    iVar2 = *(int *)(in_t9 + 0x3fb10) + -0x125c;\n  }\n  statusline(HUSH,msg,sVar1,text,iVar2);\n                    /* WARNING: Could not recover jumptable at 0x00037b38. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n  (**(code **)(&LAB_000406c0 + in_t9))(text);\n  return;\n}" { (declaration "char *text;" primitive_type (pointer_declarator "*text" * identifier) ;) (declaration "size_t sVar1;" primitive_type identifier ;) (declaration "char *msg;" primitive_type (pointer_declarator "*msg" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int *piVar3;" primitive_type (pointer_declarator "*piVar3" * identifier) ;) (declaration "int in_t9;" primitive_type identifier ;) (expression_statement "piVar3 = *(int **)(in_t9 + 0x40568);" (assignment_expression "piVar3 = *(int **)(in_t9 + 0x40568)" identifier = (pointer_expression "*(int **)(in_t9 + 0x40568)" * (cast_expression "(int **)(in_t9 + 0x40568)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(in_t9 + 0x40568)" ( (binary_expression "in_t9 + 0x40568" identifier + number_literal) ))))) ;) (expression_statement "text = display_string(str,0,*piVar3 / 2 + 1,false);" (assignment_expression "text = display_string(str,0,*piVar3 / 2 + 1,false)" identifier = (call_expression "display_string(str,0,*piVar3 / 2 + 1,false)" identifier (argument_list "(str,0,*piVar3 / 2 + 1,false)" ( identifier , number_literal , (binary_expression "*piVar3 / 2 + 1" (binary_expression "*piVar3 / 2" (pointer_expression "*piVar3" * identifier) / number_literal) + number_literal) , false )))) ;) (expression_statement "sVar1 = strnlenpt(text,*piVar3 / 2);" (assignment_expression "sVar1 = strnlenpt(text,*piVar3 / 2)" identifier = (call_expression "strnlenpt(text,*piVar3 / 2)" identifier (argument_list "(text,*piVar3 / 2)" ( identifier , (binary_expression "*piVar3 / 2" (pointer_expression "*piVar3" * identifier) / number_literal) )))) ;) (expression_statement "sVar1 = actual_x(text,sVar1);" (assignment_expression "sVar1 = actual_x(text,sVar1)" identifier = (call_expression "actual_x(text,sVar1)" identifier (argument_list "(text,sVar1)" ( identifier , identifier )))) ;) (expression_statement "msg = (char *)(**(code **)(&LAB_00040680 + in_t9))(0,*(int *)(in_t9 + 0x3fb10) + 0x4888,5);" (assignment_expression "msg = (char *)(**(code **)(&LAB_00040680 + in_t9))(0,*(int *)(in_t9 + 0x3fb10) + 0x4888,5)" identifier = (cast_expression "(char *)(**(code **)(&LAB_00040680 + in_t9))(0,*(int *)(in_t9 + 0x3fb10) + 0x4888,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(&LAB_00040680 + in_t9))(0,*(int *)(in_t9 + 0x3fb10) + 0x4888,5)" (parenthesized_expression "(**(code **)(&LAB_00040680 + in_t9))" ( (pointer_expression "**(code **)(&LAB_00040680 + in_t9)" * (pointer_expression "*(code **)(&LAB_00040680 + in_t9)" * (cast_expression "(code **)(&LAB_00040680 + in_t9)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&LAB_00040680 + in_t9)" ( (binary_expression "&LAB_00040680 + in_t9" (pointer_expression "&LAB_00040680" & identifier) + identifier) ))))) )) (argument_list "(0,*(int *)(in_t9 + 0x3fb10) + 0x4888,5)" ( number_literal , (binary_expression "*(int *)(in_t9 + 0x3fb10) + 0x4888" (pointer_expression "*(int *)(in_t9 + 0x3fb10)" * (cast_expression "(int *)(in_t9 + 0x3fb10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_t9 + 0x3fb10)" ( (binary_expression "in_t9 + 0x3fb10" identifier + number_literal) )))) + number_literal) , number_literal ))))) ;) (if_statement "if (text[sVar1] == '\0') {\n    iVar2 = *(int *)(in_t9 + 0x3fb10) + 0x2cac;\n  }\n  else {\n    iVar2 = *(int *)(in_t9 + 0x3fb10) + -0x125c;\n  }" if (parenthesized_expression "(text[sVar1] == '\0')" ( (binary_expression "text[sVar1] == '\0'" (subscript_expression "text[sVar1]" identifier [ identifier ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    iVar2 = *(int *)(in_t9 + 0x3fb10) + 0x2cac;\n  }" { (expression_statement "iVar2 = *(int *)(in_t9 + 0x3fb10) + 0x2cac;" (assignment_expression "iVar2 = *(int *)(in_t9 + 0x3fb10) + 0x2cac" identifier = (binary_expression "*(int *)(in_t9 + 0x3fb10) + 0x2cac" (pointer_expression "*(int *)(in_t9 + 0x3fb10)" * (cast_expression "(int *)(in_t9 + 0x3fb10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_t9 + 0x3fb10)" ( (binary_expression "in_t9 + 0x3fb10" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n    iVar2 = *(int *)(in_t9 + 0x3fb10) + -0x125c;\n  }" else (compound_statement "{\n    iVar2 = *(int *)(in_t9 + 0x3fb10) + -0x125c;\n  }" { (expression_statement "iVar2 = *(int *)(in_t9 + 0x3fb10) + -0x125c;" (assignment_expression "iVar2 = *(int *)(in_t9 + 0x3fb10) + -0x125c" identifier = (binary_expression "*(int *)(in_t9 + 0x3fb10) + -0x125c" (pointer_expression "*(int *)(in_t9 + 0x3fb10)" * (cast_expression "(int *)(in_t9 + 0x3fb10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_t9 + 0x3fb10)" ( (binary_expression "in_t9 + 0x3fb10" identifier + number_literal) )))) + number_literal)) ;) }))) (expression_statement "statusline(HUSH,msg,sVar1,text,iVar2);" (call_expression "statusline(HUSH,msg,sVar1,text,iVar2)" identifier (argument_list "(HUSH,msg,sVar1,text,iVar2)" ( identifier , identifier , identifier , identifier , identifier ))) ;) comment comment (expression_statement "(**(code **)(&LAB_000406c0 + in_t9))(text);" (call_expression "(**(code **)(&LAB_000406c0 + in_t9))(text)" (parenthesized_expression "(**(code **)(&LAB_000406c0 + in_t9))" ( (pointer_expression "**(code **)(&LAB_000406c0 + in_t9)" * (pointer_expression "*(code **)(&LAB_000406c0 + in_t9)" * (cast_expression "(code **)(&LAB_000406c0 + in_t9)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&LAB_000406c0 + in_t9)" ( (binary_expression "&LAB_000406c0 + in_t9" (pointer_expression "&LAB_000406c0" & identifier) + identifier) ))))) )) (argument_list "(text)" ( identifier ))) ;) (return_statement "return;" return ;) })))
(translation_unit "void not_found_msg(undefined4 param_1)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined *puVar4;\n  \n  puVar4 = PTR_COLS_00077fb4;\n  iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0);\n  uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2);\n  iVar3 = actual_x(iVar1,uVar2);\n  uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5);\n  if (*(char *)(iVar1 + iVar3) == '\0') {\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }\n  else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }\n  statusline(0,uVar2,iVar3,iVar1,puVar4);\n                    \n                    \n  (*(code *)PTR_free_0007810c)(iVar1);\n  return;\n}\n\n" (function_definition "void not_found_msg(undefined4 param_1)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined *puVar4;\n  \n  puVar4 = PTR_COLS_00077fb4;\n  iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0);\n  uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2);\n  iVar3 = actual_x(iVar1,uVar2);\n  uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5);\n  if (*(char *)(iVar1 + iVar3) == '\0') {\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }\n  else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }\n  statusline(0,uVar2,iVar3,iVar1,puVar4);\n                    \n                    \n  (*(code *)PTR_free_0007810c)(iVar1);\n  return;\n}" primitive_type (function_declarator "not_found_msg(undefined4 param_1)" identifier (parameter_list "(undefined4 param_1)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) ))) (compound_statement "{\n  int iVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined *puVar4;\n  \n  puVar4 = PTR_COLS_00077fb4;\n  iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0);\n  uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2);\n  iVar3 = actual_x(iVar1,uVar2);\n  uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5);\n  if (*(char *)(iVar1 + iVar3) == '\0') {\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }\n  else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }\n  statusline(0,uVar2,iVar3,iVar1,puVar4);\n                    \n                    \n  (*(code *)PTR_free_0007810c)(iVar1);\n  return;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (expression_statement "puVar4 = PTR_COLS_00077fb4;" (assignment_expression "puVar4 = PTR_COLS_00077fb4" identifier = identifier) ;) (expression_statement "iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0);" (assignment_expression "iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0)" identifier = (call_expression "display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0)" identifier (argument_list "(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0)" ( identifier , number_literal , (binary_expression "*(int *)PTR_COLS_00077fb4 / 2 + 1" (binary_expression "*(int *)PTR_COLS_00077fb4 / 2" (pointer_expression "*(int *)PTR_COLS_00077fb4" * (cast_expression "(int *)PTR_COLS_00077fb4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) / number_literal) + number_literal) , number_literal )))) ;) (expression_statement "uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2);" (assignment_expression "uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2)" identifier = (call_expression "strnlenpt(iVar1,*(int *)puVar4 / 2)" identifier (argument_list "(iVar1,*(int *)puVar4 / 2)" ( identifier , (binary_expression "*(int *)puVar4 / 2" (pointer_expression "*(int *)puVar4" * (cast_expression "(int *)puVar4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) / number_literal) )))) ;) (expression_statement "iVar3 = actual_x(iVar1,uVar2);" (assignment_expression "iVar3 = actual_x(iVar1,uVar2)" identifier = (call_expression "actual_x(iVar1,uVar2)" identifier (argument_list "(iVar1,uVar2)" ( identifier , identifier )))) ;) (expression_statement "uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5);" (assignment_expression "uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5)" identifier = (call_expression "(*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5)" (parenthesized_expression "(*(code *)PTR_dcgettext_000780cc)" ( (pointer_expression "*(code *)PTR_dcgettext_000780cc" * (cast_expression "(code *)PTR_dcgettext_000780cc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0,PTR_s_d_of_current_line_0007755c + 0x4888,5)" ( number_literal , (binary_expression "PTR_s_d_of_current_line_0007755c + 0x4888" identifier + number_literal) , number_literal )))) ;) (if_statement "if (*(char *)(iVar1 + iVar3) == '\0') {\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }\n  else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }" if (parenthesized_expression "(*(char *)(iVar1 + iVar3) == '\0')" ( (binary_expression "*(char *)(iVar1 + iVar3) == '\0'" (pointer_expression "*(char *)(iVar1 + iVar3)" * (cast_expression "(char *)(iVar1 + iVar3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + iVar3)" ( (binary_expression "iVar1 + iVar3" identifier + identifier) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }" { (expression_statement "puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;" (assignment_expression "puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac" identifier = (binary_expression "PTR_s_d_of_current_line_0007755c + 0x2cac" identifier + number_literal)) ;) }) (else_clause "else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }" else (compound_statement "{\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }" { (expression_statement "puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;" (assignment_expression "puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c" identifier = (binary_expression "PTR_s_d_of_current_line_0007755c + -0x125c" identifier + number_literal)) ;) }))) (expression_statement "statusline(0,uVar2,iVar3,iVar1,puVar4);" (call_expression "statusline(0,uVar2,iVar3,iVar1,puVar4)" identifier (argument_list "(0,uVar2,iVar3,iVar1,puVar4)" ( number_literal , identifier , identifier , identifier , identifier ))) ;) (expression_statement "(*(code *)PTR_free_0007810c)(iVar1);" (call_expression "(*(code *)PTR_free_0007810c)(iVar1)" (parenthesized_expression "(*(code *)PTR_free_0007810c)" ( (pointer_expression "*(code *)PTR_free_0007810c" * (cast_expression "(code *)PTR_free_0007810c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar1)" ( identifier ))) ;) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) / LIT) + LIT) , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) / LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT , (binary_expression IDENT + LIT) , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }))) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT , IDENT , IDENT , IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (return_statement return ;) })))
(function_definition "void not_found_msg(undefined4 param_1)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined *puVar4;\n  \n  puVar4 = PTR_COLS_00077fb4;\n  iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0);\n  uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2);\n  iVar3 = actual_x(iVar1,uVar2);\n  uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5);\n  if (*(char *)(iVar1 + iVar3) == '\0') {\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }\n  else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }\n  statusline(0,uVar2,iVar3,iVar1,puVar4);\n                    \n                    \n  (*(code *)PTR_free_0007810c)(iVar1);\n  return;\n}" (primitive_type "void") (function_declarator "not_found_msg(undefined4 param_1)" (identifier "not_found_msg") (parameter_list "(undefined4 param_1)" (( "(") (parameter_declaration "undefined4 param_1" (type_identifier "undefined4") (identifier "param_1")) () ")"))) (compound_statement "{\n  int iVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined *puVar4;\n  \n  puVar4 = PTR_COLS_00077fb4;\n  iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0);\n  uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2);\n  iVar3 = actual_x(iVar1,uVar2);\n  uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5);\n  if (*(char *)(iVar1 + iVar3) == '\0') {\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }\n  else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }\n  statusline(0,uVar2,iVar3,iVar1,puVar4);\n                    \n                    \n  (*(code *)PTR_free_0007810c)(iVar1);\n  return;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "undefined4 uVar2;" (type_identifier "undefined4") (identifier "uVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "undefined *puVar4;" (type_identifier "undefined") (pointer_declarator "*puVar4" (* "*") (identifier "puVar4")) (; ";")) (expression_statement "puVar4 = PTR_COLS_00077fb4;" (assignment_expression "puVar4 = PTR_COLS_00077fb4" (identifier "puVar4") (= "=") (identifier "PTR_COLS_00077fb4")) (; ";")) (expression_statement "iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0);" (assignment_expression "iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0)" (identifier "iVar1") (= "=") (call_expression "display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0)" (identifier "display_string") (argument_list "(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0)" (( "(") (identifier "param_1") (, ",") (number_literal "0") (, ",") (binary_expression "*(int *)PTR_COLS_00077fb4 / 2 + 1" (binary_expression "*(int *)PTR_COLS_00077fb4 / 2" (pointer_expression "*(int *)PTR_COLS_00077fb4" (* "*") (cast_expression "(int *)PTR_COLS_00077fb4" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_COLS_00077fb4"))) (/ "/") (number_literal "2")) (+ "+") (number_literal "1")) (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2);" (assignment_expression "uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2)" (identifier "uVar2") (= "=") (call_expression "strnlenpt(iVar1,*(int *)puVar4 / 2)" (identifier "strnlenpt") (argument_list "(iVar1,*(int *)puVar4 / 2)" (( "(") (identifier "iVar1") (, ",") (binary_expression "*(int *)puVar4 / 2" (pointer_expression "*(int *)puVar4" (* "*") (cast_expression "(int *)puVar4" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar4"))) (/ "/") (number_literal "2")) () ")")))) (; ";")) (expression_statement "iVar3 = actual_x(iVar1,uVar2);" (assignment_expression "iVar3 = actual_x(iVar1,uVar2)" (identifier "iVar3") (= "=") (call_expression "actual_x(iVar1,uVar2)" (identifier "actual_x") (argument_list "(iVar1,uVar2)" (( "(") (identifier "iVar1") (, ",") (identifier "uVar2") () ")")))) (; ";")) (expression_statement "uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5);" (assignment_expression "uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5)" (identifier "uVar2") (= "=") (call_expression "(*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5)" (parenthesized_expression "(*(code *)PTR_dcgettext_000780cc)" (( "(") (pointer_expression "*(code *)PTR_dcgettext_000780cc" (* "*") (cast_expression "(code *)PTR_dcgettext_000780cc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_dcgettext_000780cc"))) () ")")) (argument_list "(0,PTR_s_d_of_current_line_0007755c + 0x4888,5)" (( "(") (number_literal "0") (, ",") (binary_expression "PTR_s_d_of_current_line_0007755c + 0x4888" (identifier "PTR_s_d_of_current_line_0007755c") (+ "+") (number_literal "0x4888")) (, ",") (number_literal "5") () ")")))) (; ";")) (if_statement "if (*(char *)(iVar1 + iVar3) == '\0') {\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }\n  else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }" (if "if") (parenthesized_expression "(*(char *)(iVar1 + iVar3) == '\0')" (( "(") (binary_expression "*(char *)(iVar1 + iVar3) == '\0'" (pointer_expression "*(char *)(iVar1 + iVar3)" (* "*") (cast_expression "(char *)(iVar1 + iVar3)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + iVar3)" (( "(") (binary_expression "iVar1 + iVar3" (identifier "iVar1") (+ "+") (identifier "iVar3")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;\n  }" ({ "{") (expression_statement "puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;" (assignment_expression "puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac" (identifier "puVar4") (= "=") (binary_expression "PTR_s_d_of_current_line_0007755c + 0x2cac" (identifier "PTR_s_d_of_current_line_0007755c") (+ "+") (number_literal "0x2cac"))) (; ";")) (} "}")) (else_clause "else {\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }" (else "else") (compound_statement "{\n    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;\n  }" ({ "{") (expression_statement "puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;" (assignment_expression "puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c" (identifier "puVar4") (= "=") (binary_expression "PTR_s_d_of_current_line_0007755c + -0x125c" (identifier "PTR_s_d_of_current_line_0007755c") (+ "+") (number_literal "-0x125c"))) (; ";")) (} "}")))) (expression_statement "statusline(0,uVar2,iVar3,iVar1,puVar4);" (call_expression "statusline(0,uVar2,iVar3,iVar1,puVar4)" (identifier "statusline") (argument_list "(0,uVar2,iVar3,iVar1,puVar4)" (( "(") (number_literal "0") (, ",") (identifier "uVar2") (, ",") (identifier "iVar3") (, ",") (identifier "iVar1") (, ",") (identifier "puVar4") () ")"))) (; ";")) (expression_statement "(*(code *)PTR_free_0007810c)(iVar1);" (call_expression "(*(code *)PTR_free_0007810c)(iVar1)" (parenthesized_expression "(*(code *)PTR_free_0007810c)" (( "(") (pointer_expression "*(code *)PTR_free_0007810c" (* "*") (cast_expression "(code *)PTR_free_0007810c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_free_0007810c"))) () ")")) (argument_list "(iVar1)" (( "(") (identifier "iVar1") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))

void function_1(char *str)

{
  char *text;
  size_t sVar1;
  char *msg;
  int iVar2;
  int *piVar3;
  int var_1;
  
  piVar3 = *(int **)(var_1 + 0x40568);
  text = var_2(str,0,*piVar3 / 2 + 1,false);
  sVar1 = var_3(text,*piVar3 / 2);
  sVar1 = var_4(text,sVar1);
  msg = (char *)(**(type_1 **)(&LAB_00040680 + var_1))(0,*(int *)(var_1 + 0x3fb10) + 0x4888,5);
  if (text[sVar1] == '\0') {
    iVar2 = *(int *)(var_1 + 0x3fb10) + 0x2cac;
  }
  else {
    iVar2 = *(int *)(var_1 + 0x3fb10) + -0x125c;
  }
  var_5(HUSH,msg,sVar1,text,iVar2);
                    /* WARNING: Could not recover jumptable at 0x00037b38. Too many branches */
                    /* WARNING: Treating indirect jump as call */
  (**(type_1 **)(&LAB_000406c0 + var_1))(text);
  return;
}


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

void MASKED(undefined4 param_1)

{
  int iVar1;
  undefined4 uVar2;
  int iVar3;
  undefined *puVar4;
  
  puVar4 = PTR_COLS_00077fb4;
  iVar1 = display_string(param_1,0,*(int *)PTR_COLS_00077fb4 / 2 + 1,0);
  uVar2 = strnlenpt(iVar1,*(int *)puVar4 / 2);
  iVar3 = actual_x(iVar1,uVar2);
  uVar2 = (*(code *)PTR_dcgettext_000780cc)(0,PTR_s_d_of_current_line_0007755c + 0x4888,5);
  if (*(char *)(iVar1 + iVar3) == '\0') {
    puVar4 = PTR_s_d_of_current_line_0007755c + 0x2cac;
  }
  else {
    puVar4 = PTR_s_d_of_current_line_0007755c + -0x125c;
  }
  statusline(0,uVar2,iVar3,iVar1,puVar4);
                    /* WARNING: Could not recover jumptable at 0x00037b38. Too many branches */
                    /* WARNING: Treating indirect jump as call */
  (*(code *)PTR_free_0007810c)(iVar1);
  return;
}

