code: func mkdirWithACL(name string, sddl string) error {
  	sa := windows.SecurityAttributes{Length: 0}
  	sd, err := winio.SddlToSecurityDescriptor(sddl)
  	if err != nil {
  		return &os.PathError{Op: "mkdir", Path: name, Err: err}
  	}
  	sa.Length = uint32(unsafe.Sizeof(sa))
  	sa.InheritHandle = 1
  	sa.SecurityDescriptor = uintptr(unsafe.Pointer(&sd[0]))
  
  	namep, err := windows.UTF16PtrFromString(name)
  	if err != nil {
  		return &os.PathError{Op: "mkdir", Path: name, Err: err}
  	}
  
  	e := windows.CreateDirectory(namep, &sa)
  	if e != nil {
  		return &os.PathError{Op: "mkdir", Path: name, Err: e}
  	}
  	return nil
  }
docs: // mkdirWithACL creates a new directory. If there is an error, it will be of
  // type *PathError. .
  //
  // This is a modified and combined version of os.Mkdir and windows.Mkdir
  // in golang to cater for creating a directory am ACL permitting full
  // access, with inheritance, to any subfolder/file for Built-in Administrators
  // and Local System.