I was running into the problem of some Installer modifying my Registry's ACL. It turned of ACL inheritance for some key, which was unwanted in my Situation.

I ended up needing to reset the HKLM\Software\xyz key (including all subkeys) to inherit it's permissions from HKLM\Software again.

The following did the trick for me:

SetACL -on "hklm\Software\xyz" -ot reg -actn setprot -op "dacl:np" -actn clear -clr "dacl" -actn rstchldrn -rst "dacl"

This commands recursively clears all non inherited access permissions (=dacl) and turns on inheritance for all Keys and Values in xyz and below.

System Audit (sacl) was not touched.

SetACL is a free tool under the GPL license and very welll documented on the project website linked here.