undefined4 ixmlDocument_createTextNodeEx(int param_1,char *param_2,undefined4 *param_3)

{
  undefined4 *puVar1;
  char *pcVar2;
  
  if ((param_1 != 0) && (param_2 != (char *)0x0)) {
    puVar1 = (undefined4 *)malloc(0x34)   //possible issue identified - semgrep
    if (puVar1 != (undefined4 *)0x0) {
      ixmlNode_init(puVar1);
      pcVar2 = strdup("#text");
      *puVar1 = pcVar2;
      if (pcVar2 != (char *)0x0) {
        pcVar2 = strdup(param_2);
        puVar1[1] = pcVar2;
        if (pcVar2 != (char *)0x0) {
          puVar1[2] = 3;
          puVar1[0xc] = param_1;
          *param_3 = puVar1;
          return 0;
        }
      }
      ixmlNode_free(puVar1);
      puVar1 = (undefined4 *)0x0;
    }
    *param_3 = puVar1;
    return 0x66;
  }
  *param_3 = 0;
  return 0x69;
}