Boa tarde Italo,
a função rCampo da unit pcnLeitor não está funcionando corretamente quando o valor do parâmetro TAG é a tag DOCZIP pois, no código :
inicio := pos('<' + Tag + '>', UpperCase(FGrupo));
ele verifica pela abertura da TAG, mas no caso desta é utilizado : <docZip NSU="000000000000102" schema="resNFe_v1.00.xsd"> como a abertura. Sendo assim, ele atribui o valor de 0 ao campo inicio oque faz com que em um verificação adiante a variavel ConteudoTag sempre seja vazia, deixando a InfZip também.
Como correção fiz o seguinte :
if TAG = 'DOCZIP' then
inicio := Pos('>',UpperCase(FGrupo))
else inicio := pos('<' + Tag + '>', UpperCase(FGrupo));
Coloquei para pegar a posição do > pois o valor começa a partir dele.
Neste outro para que o valor da posição final fique correto.
if TAG = 'DOCZIP' then
inicio := inicio+1
else inicio := inicio + Length(Tag) + 2;
Bom, foi a solução que encontrei.
Só postando mesmo para alertar sobre o problema caso ninguém tenha se deparado com ele ainda.