
bfd_boolean
stab_push_string(stab_write_handle *info,char *string,long tindex,bfd_boolean definition,uint size)

{
  bfd *pbVar1;
  bfd_target *pbVar2;
  bfd *pbVar3;
  
  pbVar1 = (bfd *)(*(code *)PTR_xmalloc_0004dc00)(0x24);
  pbVar2 = (bfd_target *)(*(code *)PTR_xstrdup_0004dbf4)(string);
  pbVar3 = info->abfd;
  pbVar1->xvec = pbVar2;
  pbVar1->iostream = (void *)tindex;
  pbVar1->lru_prev = (bfd *)definition;
  info->abfd = pbVar1;
  pbVar1->iovec = (bfd_iovec *)size;
  pbVar1->lru_next = (bfd *)0x0;
  *(undefined4 *)&pbVar1->where = 0;
  *(undefined4 *)((int)&pbVar1->where + 4) = 0;
  pbVar1->mtime = 0;
  pbVar1->filename = (char *)pbVar3;
  return 1;
}



undefined4 FUN_0002f08c(int *param_1,undefined4 param_2,int param_3,int param_4,int param_5)

{
  int *piVar1;
  int iVar2;
  int iVar3;
  
  piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24);
  iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2);
  iVar3 = *param_1;
  piVar1[1] = iVar2;
  piVar1[2] = param_3;
  piVar1[4] = param_4;
  *param_1 = (int)piVar1;
  piVar1[3] = param_5;
  piVar1[5] = 0;
  piVar1[6] = 0;
  piVar1[7] = 0;
  piVar1[8] = 0;
  *piVar1 = iVar3;
  return 1;
}


lui gp,0x2
addiu gp,gp,0x67e4
addu gp,gp,t9
addiu sp,sp,-0x30
lw t9,-0x7c70(gp)
sw s1,0x20(sp)
or s1,a0,zero
li a0,0x24
sw ra,0x2c(sp)
sw s3,0x28(sp)
or s3,a2,zero
sw s2,0x24(sp)
or s2,a3,zero
sw s0,0x1c(sp)
sw gp,0x10(sp)
jalr t9
_or s0,a1,zero
or a0,s0,zero
lw gp,0x10(sp)
lw t9,-0x7c7c(gp)
jalr t9
_or s0,v0,zero
lw v1,0x0(s1)
lw a0,0x40(sp)
lw ra,0x2c(sp)
sw v0,0x4(s0)
li v0,0x1
sw s3,0x8(s0)
sw s2,0x10(s0)
sw s0,0x0(s1)
sw a0,0xc(s0)
sw zero,0x14(s0)
sw zero,0x18(s0)
sw zero,0x1c(s0)
sw zero,0x20(s0)
sw v1,0x0(s0)
lw s3,0x28(sp)
lw s2,0x24(sp)
lw s1,0x20(sp)
lw s0,0x1c(sp)
jr ra
_addiu sp,sp,0x30
(translation_unit "undefined4 FUN_0002f08c(int *param_1,undefined4 param_2,int param_3,int param_4,int param_5)\n\n{\n  int *piVar1;\n  int iVar2;\n  int iVar3;\n  \n  piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24);\n  iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2);\n  iVar3 = *param_1;\n  piVar1[1] = iVar2;\n  piVar1[2] = param_3;\n  piVar1[4] = param_4;\n  *param_1 = (int)piVar1;\n  piVar1[3] = param_5;\n  piVar1[5] = 0;\n  piVar1[6] = 0;\n  piVar1[7] = 0;\n  piVar1[8] = 0;\n  *piVar1 = iVar3;\n  return 1;\n}\n\n" (function_definition "undefined4 FUN_0002f08c(int *param_1,undefined4 param_2,int param_3,int param_4,int param_5)\n\n{\n  int *piVar1;\n  int iVar2;\n  int iVar3;\n  \n  piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24);\n  iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2);\n  iVar3 = *param_1;\n  piVar1[1] = iVar2;\n  piVar1[2] = param_3;\n  piVar1[4] = param_4;\n  *param_1 = (int)piVar1;\n  piVar1[3] = param_5;\n  piVar1[5] = 0;\n  piVar1[6] = 0;\n  piVar1[7] = 0;\n  piVar1[8] = 0;\n  *piVar1 = iVar3;\n  return 1;\n}" type_identifier (function_declarator "FUN_0002f08c(int *param_1,undefined4 param_2,int param_3,int param_4,int param_5)" identifier (parameter_list "(int *param_1,undefined4 param_2,int param_3,int param_4,int param_5)" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "int param_3" primitive_type identifier) , (parameter_declaration "int param_4" primitive_type identifier) , (parameter_declaration "int param_5" primitive_type identifier) ))) (compound_statement "{\n  int *piVar1;\n  int iVar2;\n  int iVar3;\n  \n  piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24);\n  iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2);\n  iVar3 = *param_1;\n  piVar1[1] = iVar2;\n  piVar1[2] = param_3;\n  piVar1[4] = param_4;\n  *param_1 = (int)piVar1;\n  piVar1[3] = param_5;\n  piVar1[5] = 0;\n  piVar1[6] = 0;\n  piVar1[7] = 0;\n  piVar1[8] = 0;\n  *piVar1 = iVar3;\n  return 1;\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (expression_statement "piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24);" (assignment_expression "piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24)" identifier = (cast_expression "(int *)(*(code *)PTR_xmalloc_0004dc00)(0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_xmalloc_0004dc00)(0x24)" (parenthesized_expression "(*(code *)PTR_xmalloc_0004dc00)" ( (pointer_expression "*(code *)PTR_xmalloc_0004dc00" * (cast_expression "(code *)PTR_xmalloc_0004dc00" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x24)" ( number_literal ))))) ;) (expression_statement "iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2);" (assignment_expression "iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2)" identifier = (call_expression "(*(code *)PTR_xstrdup_0004dbf4)(param_2)" (parenthesized_expression "(*(code *)PTR_xstrdup_0004dbf4)" ( (pointer_expression "*(code *)PTR_xstrdup_0004dbf4" * (cast_expression "(code *)PTR_xstrdup_0004dbf4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "iVar3 = *param_1;" (assignment_expression "iVar3 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "piVar1[1] = iVar2;" (assignment_expression "piVar1[1] = iVar2" (subscript_expression "piVar1[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar1[2] = param_3;" (assignment_expression "piVar1[2] = param_3" (subscript_expression "piVar1[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar1[4] = param_4;" (assignment_expression "piVar1[4] = param_4" (subscript_expression "piVar1[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*param_1 = (int)piVar1;" (assignment_expression "*param_1 = (int)piVar1" (pointer_expression "*param_1" * identifier) = (cast_expression "(int)piVar1" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar1[3] = param_5;" (assignment_expression "piVar1[3] = param_5" (subscript_expression "piVar1[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar1[5] = 0;" (assignment_expression "piVar1[5] = 0" (subscript_expression "piVar1[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar1[6] = 0;" (assignment_expression "piVar1[6] = 0" (subscript_expression "piVar1[6]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar1[7] = 0;" (assignment_expression "piVar1[7] = 0" (subscript_expression "piVar1[7]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar1[8] = 0;" (assignment_expression "piVar1[8] = 0" (subscript_expression "piVar1[8]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*piVar1 = iVar3;" (assignment_expression "*piVar1 = iVar3" (pointer_expression "*piVar1" * identifier) = identifier) ;) (return_statement "return 1;" return number_literal ;) })))
(translation_unit "bfd_boolean\nstab_push_string(stab_write_handle *info,char *string,long tindex,bfd_boolean definition,uint size)\n\n{\n  bfd *pbVar1;\n  bfd_target *pbVar2;\n  bfd *pbVar3;\n  \n  pbVar1 = (bfd *)(*(code *)PTR_xmalloc_0004dc00)(0x24);\n  pbVar2 = (bfd_target *)(*(code *)PTR_xstrdup_0004dbf4)(string);\n  pbVar3 = info->abfd;\n  pbVar1->xvec = pbVar2;\n  pbVar1->iostream = (void *)tindex;\n  pbVar1->lru_prev = (bfd *)definition;\n  info->abfd = pbVar1;\n  pbVar1->iovec = (bfd_iovec *)size;\n  pbVar1->lru_next = (bfd *)0x0;\n  *(undefined4 *)&pbVar1->where = 0;\n  *(undefined4 *)((int)&pbVar1->where + 4) = 0;\n  pbVar1->mtime = 0;\n  pbVar1->filename = (char *)pbVar3;\n  return 1;\n}\n\n" (function_definition "bfd_boolean\nstab_push_string(stab_write_handle *info,char *string,long tindex,bfd_boolean definition,uint size)\n\n{\n  bfd *pbVar1;\n  bfd_target *pbVar2;\n  bfd *pbVar3;\n  \n  pbVar1 = (bfd *)(*(code *)PTR_xmalloc_0004dc00)(0x24);\n  pbVar2 = (bfd_target *)(*(code *)PTR_xstrdup_0004dbf4)(string);\n  pbVar3 = info->abfd;\n  pbVar1->xvec = pbVar2;\n  pbVar1->iostream = (void *)tindex;\n  pbVar1->lru_prev = (bfd *)definition;\n  info->abfd = pbVar1;\n  pbVar1->iovec = (bfd_iovec *)size;\n  pbVar1->lru_next = (bfd *)0x0;\n  *(undefined4 *)&pbVar1->where = 0;\n  *(undefined4 *)((int)&pbVar1->where + 4) = 0;\n  pbVar1->mtime = 0;\n  pbVar1->filename = (char *)pbVar3;\n  return 1;\n}" type_identifier (function_declarator "stab_push_string(stab_write_handle *info,char *string,long tindex,bfd_boolean definition,uint size)" identifier (parameter_list "(stab_write_handle *info,char *string,long tindex,bfd_boolean definition,uint size)" ( (parameter_declaration "stab_write_handle *info" type_identifier (pointer_declarator "*info" * identifier)) , (parameter_declaration "char *string" primitive_type (pointer_declarator "*string" * identifier)) , (parameter_declaration "long tindex" (sized_type_specifier "long" long) identifier) , (parameter_declaration "bfd_boolean definition" type_identifier identifier) , (parameter_declaration "uint size" type_identifier identifier) ))) (compound_statement "{\n  bfd *pbVar1;\n  bfd_target *pbVar2;\n  bfd *pbVar3;\n  \n  pbVar1 = (bfd *)(*(code *)PTR_xmalloc_0004dc00)(0x24);\n  pbVar2 = (bfd_target *)(*(code *)PTR_xstrdup_0004dbf4)(string);\n  pbVar3 = info->abfd;\n  pbVar1->xvec = pbVar2;\n  pbVar1->iostream = (void *)tindex;\n  pbVar1->lru_prev = (bfd *)definition;\n  info->abfd = pbVar1;\n  pbVar1->iovec = (bfd_iovec *)size;\n  pbVar1->lru_next = (bfd *)0x0;\n  *(undefined4 *)&pbVar1->where = 0;\n  *(undefined4 *)((int)&pbVar1->where + 4) = 0;\n  pbVar1->mtime = 0;\n  pbVar1->filename = (char *)pbVar3;\n  return 1;\n}" { (declaration "bfd *pbVar1;" type_identifier (pointer_declarator "*pbVar1" * identifier) ;) (declaration "bfd_target *pbVar2;" type_identifier (pointer_declarator "*pbVar2" * identifier) ;) (declaration "bfd *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (expression_statement "pbVar1 = (bfd *)(*(code *)PTR_xmalloc_0004dc00)(0x24);" (assignment_expression "pbVar1 = (bfd *)(*(code *)PTR_xmalloc_0004dc00)(0x24)" identifier = (cast_expression "(bfd *)(*(code *)PTR_xmalloc_0004dc00)(0x24)" ( (type_descriptor "bfd *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_xmalloc_0004dc00)(0x24)" (parenthesized_expression "(*(code *)PTR_xmalloc_0004dc00)" ( (pointer_expression "*(code *)PTR_xmalloc_0004dc00" * (cast_expression "(code *)PTR_xmalloc_0004dc00" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x24)" ( number_literal ))))) ;) (expression_statement "pbVar2 = (bfd_target *)(*(code *)PTR_xstrdup_0004dbf4)(string);" (assignment_expression "pbVar2 = (bfd_target *)(*(code *)PTR_xstrdup_0004dbf4)(string)" identifier = (cast_expression "(bfd_target *)(*(code *)PTR_xstrdup_0004dbf4)(string)" ( (type_descriptor "bfd_target *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_xstrdup_0004dbf4)(string)" (parenthesized_expression "(*(code *)PTR_xstrdup_0004dbf4)" ( (pointer_expression "*(code *)PTR_xstrdup_0004dbf4" * (cast_expression "(code *)PTR_xstrdup_0004dbf4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(string)" ( identifier ))))) ;) (expression_statement "pbVar3 = info->abfd;" (assignment_expression "pbVar3 = info->abfd" identifier = (field_expression "info->abfd" identifier -> field_identifier)) ;) (expression_statement "pbVar1->xvec = pbVar2;" (assignment_expression "pbVar1->xvec = pbVar2" (field_expression "pbVar1->xvec" identifier -> field_identifier) = identifier) ;) (expression_statement "pbVar1->iostream = (void *)tindex;" (assignment_expression "pbVar1->iostream = (void *)tindex" (field_expression "pbVar1->iostream" identifier -> field_identifier) = (cast_expression "(void *)tindex" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pbVar1->lru_prev = (bfd *)definition;" (assignment_expression "pbVar1->lru_prev = (bfd *)definition" (field_expression "pbVar1->lru_prev" identifier -> field_identifier) = (cast_expression "(bfd *)definition" ( (type_descriptor "bfd *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "info->abfd = pbVar1;" (assignment_expression "info->abfd = pbVar1" (field_expression "info->abfd" identifier -> field_identifier) = identifier) ;) (expression_statement "pbVar1->iovec = (bfd_iovec *)size;" (assignment_expression "pbVar1->iovec = (bfd_iovec *)size" (field_expression "pbVar1->iovec" identifier -> field_identifier) = (cast_expression "(bfd_iovec *)size" ( (type_descriptor "bfd_iovec *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pbVar1->lru_next = (bfd *)0x0;" (assignment_expression "pbVar1->lru_next = (bfd *)0x0" (field_expression "pbVar1->lru_next" identifier -> field_identifier) = (cast_expression "(bfd *)0x0" ( (type_descriptor "bfd *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "*(undefined4 *)&pbVar1->where = 0;" (assignment_expression "*(undefined4 *)&pbVar1->where = 0" (pointer_expression "*(undefined4 *)&pbVar1->where" * (cast_expression "(undefined4 *)&pbVar1->where" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pbVar1->where" & (field_expression "pbVar1->where" identifier -> field_identifier)))) = number_literal) ;) (expression_statement "*(undefined4 *)((int)&pbVar1->where + 4) = 0;" (assignment_expression "*(undefined4 *)((int)&pbVar1->where + 4) = 0" (pointer_expression "*(undefined4 *)((int)&pbVar1->where + 4)" * (cast_expression "(undefined4 *)((int)&pbVar1->where + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pbVar1->where + 4)" ( (binary_expression "(int)&pbVar1->where + 4" (cast_expression "(int)&pbVar1->where" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pbVar1->where" & (field_expression "pbVar1->where" identifier -> field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "pbVar1->mtime = 0;" (assignment_expression "pbVar1->mtime = 0" (field_expression "pbVar1->mtime" identifier -> field_identifier) = number_literal) ;) (expression_statement "pbVar1->filename = (char *)pbVar3;" (assignment_expression "pbVar1->filename = (char *)pbVar3" (field_expression "pbVar1->filename" identifier -> field_identifier) = (cast_expression "(char *)pbVar3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (return_statement "return 1;" return number_literal ;) })))
(translation_unit "undefined4 FUN_0002f08c(int *param_1,undefined4 param_2,int param_3,int param_4,int param_5)\n\n{\n  int *piVar1;\n  int iVar2;\n  int iVar3;\n  \n  piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24);\n  iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2);\n  iVar3 = *param_1;\n  piVar1[1] = iVar2;\n  piVar1[2] = param_3;\n  piVar1[4] = param_4;\n  *param_1 = (int)piVar1;\n  piVar1[3] = param_5;\n  piVar1[5] = 0;\n  piVar1[6] = 0;\n  piVar1[7] = 0;\n  piVar1[8] = 0;\n  *piVar1 = iVar3;\n  return 1;\n}\n\n" (function_definition "undefined4 FUN_0002f08c(int *param_1,undefined4 param_2,int param_3,int param_4,int param_5)\n\n{\n  int *piVar1;\n  int iVar2;\n  int iVar3;\n  \n  piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24);\n  iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2);\n  iVar3 = *param_1;\n  piVar1[1] = iVar2;\n  piVar1[2] = param_3;\n  piVar1[4] = param_4;\n  *param_1 = (int)piVar1;\n  piVar1[3] = param_5;\n  piVar1[5] = 0;\n  piVar1[6] = 0;\n  piVar1[7] = 0;\n  piVar1[8] = 0;\n  *piVar1 = iVar3;\n  return 1;\n}" type_identifier (function_declarator "FUN_0002f08c(int *param_1,undefined4 param_2,int param_3,int param_4,int param_5)" identifier (parameter_list "(int *param_1,undefined4 param_2,int param_3,int param_4,int param_5)" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "int param_3" primitive_type identifier) , (parameter_declaration "int param_4" primitive_type identifier) , (parameter_declaration "int param_5" primitive_type identifier) ))) (compound_statement "{\n  int *piVar1;\n  int iVar2;\n  int iVar3;\n  \n  piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24);\n  iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2);\n  iVar3 = *param_1;\n  piVar1[1] = iVar2;\n  piVar1[2] = param_3;\n  piVar1[4] = param_4;\n  *param_1 = (int)piVar1;\n  piVar1[3] = param_5;\n  piVar1[5] = 0;\n  piVar1[6] = 0;\n  piVar1[7] = 0;\n  piVar1[8] = 0;\n  *piVar1 = iVar3;\n  return 1;\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (expression_statement "piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24);" (assignment_expression "piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24)" identifier = (cast_expression "(int *)(*(code *)PTR_xmalloc_0004dc00)(0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_xmalloc_0004dc00)(0x24)" (parenthesized_expression "(*(code *)PTR_xmalloc_0004dc00)" ( (pointer_expression "*(code *)PTR_xmalloc_0004dc00" * (cast_expression "(code *)PTR_xmalloc_0004dc00" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x24)" ( number_literal ))))) ;) (expression_statement "iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2);" (assignment_expression "iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2)" identifier = (call_expression "(*(code *)PTR_xstrdup_0004dbf4)(param_2)" (parenthesized_expression "(*(code *)PTR_xstrdup_0004dbf4)" ( (pointer_expression "*(code *)PTR_xstrdup_0004dbf4" * (cast_expression "(code *)PTR_xstrdup_0004dbf4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "iVar3 = *param_1;" (assignment_expression "iVar3 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "piVar1[1] = iVar2;" (assignment_expression "piVar1[1] = iVar2" (subscript_expression "piVar1[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar1[2] = param_3;" (assignment_expression "piVar1[2] = param_3" (subscript_expression "piVar1[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar1[4] = param_4;" (assignment_expression "piVar1[4] = param_4" (subscript_expression "piVar1[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*param_1 = (int)piVar1;" (assignment_expression "*param_1 = (int)piVar1" (pointer_expression "*param_1" * identifier) = (cast_expression "(int)piVar1" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar1[3] = param_5;" (assignment_expression "piVar1[3] = param_5" (subscript_expression "piVar1[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar1[5] = 0;" (assignment_expression "piVar1[5] = 0" (subscript_expression "piVar1[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar1[6] = 0;" (assignment_expression "piVar1[6] = 0" (subscript_expression "piVar1[6]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar1[7] = 0;" (assignment_expression "piVar1[7] = 0" (subscript_expression "piVar1[7]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar1[8] = 0;" (assignment_expression "piVar1[8] = 0" (subscript_expression "piVar1[8]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*piVar1 = iVar3;" (assignment_expression "*piVar1 = iVar3" (pointer_expression "*piVar1" * identifier) = identifier) ;) (return_statement "return 1;" return number_literal ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (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 (pointer_expression * IDENT) = IDENT) ;) (return_statement return LIT ;) })))
(function_definition "undefined4 FUN_0002f08c(int *param_1,undefined4 param_2,int param_3,int param_4,int param_5)\n\n{\n  int *piVar1;\n  int iVar2;\n  int iVar3;\n  \n  piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24);\n  iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2);\n  iVar3 = *param_1;\n  piVar1[1] = iVar2;\n  piVar1[2] = param_3;\n  piVar1[4] = param_4;\n  *param_1 = (int)piVar1;\n  piVar1[3] = param_5;\n  piVar1[5] = 0;\n  piVar1[6] = 0;\n  piVar1[7] = 0;\n  piVar1[8] = 0;\n  *piVar1 = iVar3;\n  return 1;\n}" (type_identifier "undefined4") (function_declarator "FUN_0002f08c(int *param_1,undefined4 param_2,int param_3,int param_4,int param_5)" (identifier "FUN_0002f08c") (parameter_list "(int *param_1,undefined4 param_2,int param_3,int param_4,int param_5)" (( "(") (parameter_declaration "int *param_1" (primitive_type "int") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "undefined4 param_2" (type_identifier "undefined4") (identifier "param_2")) (, ",") (parameter_declaration "int param_3" (primitive_type "int") (identifier "param_3")) (, ",") (parameter_declaration "int param_4" (primitive_type "int") (identifier "param_4")) (, ",") (parameter_declaration "int param_5" (primitive_type "int") (identifier "param_5")) () ")"))) (compound_statement "{\n  int *piVar1;\n  int iVar2;\n  int iVar3;\n  \n  piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24);\n  iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2);\n  iVar3 = *param_1;\n  piVar1[1] = iVar2;\n  piVar1[2] = param_3;\n  piVar1[4] = param_4;\n  *param_1 = (int)piVar1;\n  piVar1[3] = param_5;\n  piVar1[5] = 0;\n  piVar1[6] = 0;\n  piVar1[7] = 0;\n  piVar1[8] = 0;\n  *piVar1 = iVar3;\n  return 1;\n}" ({ "{") (declaration "int *piVar1;" (primitive_type "int") (pointer_declarator "*piVar1" (* "*") (identifier "piVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (expression_statement "piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24);" (assignment_expression "piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24)" (identifier "piVar1") (= "=") (cast_expression "(int *)(*(code *)PTR_xmalloc_0004dc00)(0x24)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_xmalloc_0004dc00)(0x24)" (parenthesized_expression "(*(code *)PTR_xmalloc_0004dc00)" (( "(") (pointer_expression "*(code *)PTR_xmalloc_0004dc00" (* "*") (cast_expression "(code *)PTR_xmalloc_0004dc00" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_xmalloc_0004dc00"))) () ")")) (argument_list "(0x24)" (( "(") (number_literal "0x24") () ")"))))) (; ";")) (expression_statement "iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2);" (assignment_expression "iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2)" (identifier "iVar2") (= "=") (call_expression "(*(code *)PTR_xstrdup_0004dbf4)(param_2)" (parenthesized_expression "(*(code *)PTR_xstrdup_0004dbf4)" (( "(") (pointer_expression "*(code *)PTR_xstrdup_0004dbf4" (* "*") (cast_expression "(code *)PTR_xstrdup_0004dbf4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_xstrdup_0004dbf4"))) () ")")) (argument_list "(param_2)" (( "(") (identifier "param_2") () ")")))) (; ";")) (expression_statement "iVar3 = *param_1;" (assignment_expression "iVar3 = *param_1" (identifier "iVar3") (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";")) (expression_statement "piVar1[1] = iVar2;" (assignment_expression "piVar1[1] = iVar2" (subscript_expression "piVar1[1]" (identifier "piVar1") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "piVar1[2] = param_3;" (assignment_expression "piVar1[2] = param_3" (subscript_expression "piVar1[2]" (identifier "piVar1") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "param_3")) (; ";")) (expression_statement "piVar1[4] = param_4;" (assignment_expression "piVar1[4] = param_4" (subscript_expression "piVar1[4]" (identifier "piVar1") ([ "[") (number_literal "4") (] "]")) (= "=") (identifier "param_4")) (; ";")) (expression_statement "*param_1 = (int)piVar1;" (assignment_expression "*param_1 = (int)piVar1" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (= "=") (cast_expression "(int)piVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar1"))) (; ";")) (expression_statement "piVar1[3] = param_5;" (assignment_expression "piVar1[3] = param_5" (subscript_expression "piVar1[3]" (identifier "piVar1") ([ "[") (number_literal "3") (] "]")) (= "=") (identifier "param_5")) (; ";")) (expression_statement "piVar1[5] = 0;" (assignment_expression "piVar1[5] = 0" (subscript_expression "piVar1[5]" (identifier "piVar1") ([ "[") (number_literal "5") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar1[6] = 0;" (assignment_expression "piVar1[6] = 0" (subscript_expression "piVar1[6]" (identifier "piVar1") ([ "[") (number_literal "6") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar1[7] = 0;" (assignment_expression "piVar1[7] = 0" (subscript_expression "piVar1[7]" (identifier "piVar1") ([ "[") (number_literal "7") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar1[8] = 0;" (assignment_expression "piVar1[8] = 0" (subscript_expression "piVar1[8]" (identifier "piVar1") ([ "[") (number_literal "8") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "*piVar1 = iVar3;" (assignment_expression "*piVar1 = iVar3" (pointer_expression "*piVar1" (* "*") (identifier "piVar1")) (= "=") (identifier "iVar3")) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}")))
(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)))) body: (compound_statement (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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)))))) (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 (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (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: (pointer_expression argument: (identifier)) right: (identifier))) (return_statement (number_literal)))))

undefined4 MASKED(int *param_1,undefined4 param_2,int param_3,int param_4,int param_5)

{
  int *piVar1;
  int iVar2;
  int iVar3;
  
  piVar1 = (int *)(*(code *)PTR_xmalloc_0004dc00)(0x24);
  iVar2 = (*(code *)PTR_xstrdup_0004dbf4)(param_2);
  iVar3 = *param_1;
  piVar1[1] = iVar2;
  piVar1[2] = param_3;
  piVar1[4] = param_4;
  *param_1 = (int)piVar1;
  piVar1[3] = param_5;
  piVar1[5] = 0;
  piVar1[6] = 0;
  piVar1[7] = 0;
  piVar1[8] = 0;
  *piVar1 = iVar3;
  return 1;
}

