Functional decomposition--whether a function can be written as a composition of functions in a nontrivial way--is an important primitive in symbolic computation systems. The problem of univariate polynomial decomposition was shown to have an efficient solution by Kozen and Landau [8]. Dickerson [5] and von zur Gathen [11] gave algorithms for certain multivariate cases. Zippel [13] showed how to decompose rational functions. In this paper, we address the issue of decomposition of algebraic functions. We show that the problem is related to univariate resultants in algebraic function fields, and in fact can be reformulated as a problem of resultant decomposition. We give an algorithm for finding a nontrivial decomposition of a given algebraic function if it exists. The algorithm involves genus calculations and constructing transcendental generators of fields of genus zero.