Yo creo que tus suposiciones están bien. Viendo como se invoca la rutina por el programa que llama:
PUSH segmento arbol
PUSH offset arbol
CALL busco_profundidad
POP profundidad
me surgen dos dudas:
1) donde dice "CALL busco_profundidad" deberia decir "CALL profundidad", ¿no?
2) Al hacer el llamado recursivo debo pushear segmento_arbol en la pila cada vez? esto es redundante ya que el valor del segmento_arbol es siempre el mismo y entonces estoy ocupando espacio en la pila con este valor repetido varias veces.
Este ejercicio se supone que se hizo en clase, si alguien puede compartir la solucion estaría bueno. Saludos.