что в стек для второй функции попадает значение р[0], которое равно адресу стека внешней функции. А внутренняя функция получит через свой va_start адрес СВОЕГО стека по которому лежит значение р[0], а вовсе не адрес стека внешней. Т.е. не влезая во внутреннюю функцию ты нихрена таким образом не получишь