I've written a couple of functions to get info from the Security Descriptor. This will help people who are also interested in NTFS permissions.

This function will show which Control Flags are in the security descriptor of the file or folder you want to check.
Usage: ShowSecurityDescriptor("C:\Windows")
 Code:
Function ShowSecurityDescriptor($strFolder)
  Dim $objADSU, $objSD
  $objADSU = CreateObject("ADsSecurityUtility")
  $objSD = $objADSU.GetSecurityDescriptor($strFolder,1, 1)

? "Control: "+$objSD.Control+" (&"+DecToHex($objSD.Control)+")"
  If ($objSD.Control & &1) = &1
    ? "-SE_OWNER_DEFAULTED" + "                           (Hex: &"+1+")       (Dec: "+CStr(&1)+")"
  EndIf
  If ($objSD.Control & &2) = &2
    ? "-SE_GROUP_DEFAULTED" + "                           (Hex: &"+2+")       (Dec: "+CStr(&2)+")"
  EndIf
  If ($objSD.Control & &4) = &4
    ? "-SE_DACL_PRESENT" + "                              (Hex: &"+4+")       (Dec: "+CStr(&4)+")"
  EndIf
  If ($objSD.Control & &8) = &8
    ? "-SE_DACL_DEFAULTED" + "                            (Hex: &"+8+")       (Dec: "+CStr(&8)+")"
  EndIf
  If ($objSD.Control & &10) = &10
    ? "-SE_SACL_PRESENT" + "                              (Hex: &"+10+")      (Dec: "+CStr(&10)+")"
  EndIf
  If ($objSD.Control & &20) = &20
    ? "-SE_SACL_DEFAULTED" + "                            (Hex: &"+20+")      (Dec: "+CStr(&20)+")"
  EndIf
  If ($objSD.Control & &100) = &100
    ? "-SE_DACL_AUTO_INHERIT_REQ" + "                     (Hex: &"+100+")     (Dec: "+CStr(&100)+")"
  EndIf
  If ($objSD.Control & &200) = &200
    ? "-SE_SACL_AUTO_INHERIT_REQ" + "                     (Hex: &"+200+")     (Dec: "+CStr(&200)+")"
  EndIf
  If ($objSD.Control & &400) = &400
    ? "-SE_DACL_AUTO_INHERITED" + "                       (Hex: &"+400+")     (Dec: "+CStr(&400)+")"
  EndIf
  If ($objSD.Control & &800) = &800
    ? "-SE_SACL_AUTO_INHERITED" + "                       (Hex: &"+800+")     (Dec: "+CStr(&800)+")"
  EndIf
  If ($objSD.Control & &1000) = &1000
    ? "-SE_DACL_PROTECTED" + "                            (Hex: &"+1000+")    (Dec: "+CStr(&1000)+")"
  EndIf
  If ($objSD.Control & &2000) = &2000
    ? "-SE_SACL_PROTECTED" + "                            (Hex: &"+2000+")    (Dec: "+CStr(&2000)+")"
  EndIf
  If ($objSD.Control & &8000) = &8000
    ? "-SE_SELF_RELATIVE" + "                             (Hex: &"+8000+")    (Dec: "+CStr(&8000)+")"
  EndIf
EndFunction


This will show the Ace properties of the specified user.
Usage: ShowACL("C:\Windows","Domain\User")
 Code:
Function ShowACL($strFolder, $strAce)
  Dim $objADSU, $objSD, $objDACL, $objAce
  $objADSU = CreateObject("ADsSecurityUtility")
  $objSD = $objADSU.GetSecurityDescriptor($strFolder,1, 1)
  $objdacl = $objSD.DiscretionaryAcl
  For Each $objAce in $objDACL
    If $objAce.Trustee = $strAce
    ? " AceFlags: "+$objAce.AceFlags+" (&"+DecToHex($objAce.AceFlags)+")"
    If ($objAce.AceFlags & &1) = &1
      ? " -OBJECT_INHERIT_ACE" + "                        (Hex: &"+1+")       (Dec: "+CStr(&1)+")"
    EndIf
    If ($objAce.AceFlags & &2) = &2
      ? " -CONTAINER_INHERIT_ACE" + "                     (Hex: &"+2+")       (Dec: "+CStr(&2)+")"
    EndIf
    If ($objAce.AceFlags & &4) = &4
      ? " -NO_PROPAGATE_INHERIT_ACE" + "                  (Hex: &"+4+")       (Dec: "+CStr(&4)+")"
    EndIf
    If ($objAce.AceFlags & &8) = &8
      ? " -INHERIT_ONLY_ACE" + "                          (Hex: &"+8+")       (Dec: "+CStr(&8)+")"
    EndIf
    If ($objAce.AceFlags & &10) = &10
      ? " -INHERITED_ACE" + "                             (Hex: &"+10+")      (Dec: "+CStr(&10)+")"
    EndIf
    ?
    ? " AccessMask: "+$objAce.AccessMask+" (&"+DecToHex($objAce.AccessMask)+")"
    If ($objAce.AccessMask & &1) = &1
      ? " -FILE_READ_DATA Or FILE_LIST_DIRECTORY" + "     (Hex: &"+1+")       (Dec: "+CStr(&1)+")"
    EndIf
    If ($objAce.AccessMask & &2) = &2
      ? " -FILE_WRITE_DATA or FILE_ADD_FILE" + "          (Hex: &"+2+")       (Dec: "+CStr(&2)+")"
    EndIf
    If ($objAce.AccessMask & &4) = &4
      ? " -FILE_APPEND_DATA or FILE_ADD_SUBDIRECTORY" + " (Hex: &"+4+")       (Dec: "+CStr(&4)+")"
    EndIf
    If ($objAce.AccessMask & &8) = &8
      ? " -FILE_READ_EA" + "                              (Hex: &"+8+")       (Dec: "+CStr(&8)+")"
    EndIf
    If ($objAce.AccessMask & &10) = &10
      ? " -FILE_WRITE_EA" + "                             (Hex: &"+10+")      (Dec: "+CStr(&10)+")"
    EndIf
    If ($objAce.AccessMask & &20) = &20
      ? " -FILE_EXECUTE or FILE_TRAVERSE" + "             (Hex: &"+20+")      (Dec: "+CStr(&20)+")"
    EndIf
    If ($objAce.AccessMask & &40) = &40
      ? " -FILE_DELETE_CHILD" + "                         (Hex: &"+40+")      (Dec: "+CStr(&40)+")"
    EndIf
    If ($objAce.AccessMask & &80) = &80
      ? " -FILE_READ_ATTRIBUTES" + "                      (Hex: &"+80+")      (Dec: "+CStr(&80)+")"
    EndIf
    If ($objAce.AccessMask & &100) = &100
      ? " -FILE_WRITE_ATTRIBUTES" + "                     (Hex: &"+100+")     (Dec: "+CStr(&100)+")"
    EndIf
    If ($objAce.AccessMask & &10000) = &10000
      ? " -DELETE" + "                                    (Hex: &"+10000+")   (Dec: "+CStr(&10000)+")"
    EndIf
    If ($objAce.AccessMask & &20000) = &20000
      ? " -READ_CONTROL" + "                              (Hex: &"+20000+")   (Dec: "+CStr(&20000)+")"
    EndIf
    If ($objAce.AccessMask & &40000) = &40000
      ? " -WRITE_DAC" + "                                 (Hex: &"+40000+")   (Dec: "+CStr(&40000)+")"
    EndIf
    If ($objAce.AccessMask & &80000) = &80000
      ? " -WRITE_OWNER" + "                               (Hex: &"+80000+")   (Dec: "+CStr(&80000)+")"
    EndIf
    If ($objAce.AccessMask & &100000) = &100000
      ? " -SYNCHRONIZE" + "                               (Hex: &"+100000+")  (Dec: "+CStr(&100000)+")"
    EndIf
    ?
    ? " AceType: "+$objAce.AceType+" (&"+DecToHex($objAce.AceType)+")"
    If ($objAce.AceFlags & &0) = &0
      ? " -Access Allowed" + "                            (Hex: &"+0+")       (Dec: "+CStr(&0)+")"
    EndIf
    If ($objAce.AceFlags & &1) = &1
      ? " -Access Denied" + "                             (Hex: &"+1+")       (Dec: "+CStr(&1)+")"
    EndIf
    If ($objAce.AceFlags & &2) = &2
      ? " -Audit" + "                                     (Hex: &"+2+")       (Dec: "+CStr(&2)+")"
    EndIf
    ?
    ? " Flags:"+$objAce.Flags
    ?
    EndIf
  Next
EndFunction