undefined4 ixmlDocument_createCDATASectionEx(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) {
      *param_3 = 0;
      return 0x66;
    }
    ixmlCDATASection_init(puVar1);
    puVar1[2] = 4;
    pcVar2 = strdup("#cdata-section");
    *puVar1 = pcVar2;
    if (pcVar2 != (char *)0x0) {
      pcVar2 = strdup(param_2);
      puVar1[1] = pcVar2;
      if (pcVar2 != (char *)0x0) {
        puVar1[0xc] = param_1;
        *param_3 = puVar1;
        return 0;
      }
    }
    ixmlCDATASection_free(puVar1);
    *param_3 = 0;
    return 0x66;
  }
  *param_3 = 0;
  return 0x69;
}