Arg, dann hatte ich den code wohl falsch verstanden. Ich kenn Codes, wo man einfach nur den Header überspringt, also einen Offset benutzt.
Hier sind diese "WindowBits" wohl eher sowas wie Option-"Bits", aber dann wäre das "+" eigentlich falsch und es sollte besser ein "or" sein.
Ich glaube das + ist wirklich ein + und als solches zu verstehen.
Anstelle von
LUnZip := TZDecompressionStream.Create(LInput,15+16);
geht ebenso
LUnZip := TZDecompressionStream.Create(LInput,31);
In der "Plus-Schreibweise" kann man später vielleicht einfach besser nachvollziehen, was man da addiert hat und warum.