Analysing code I'm not familiar with often consists of manually tracing through calls, producing documentation that inlines all the single use function calls.
Ideally function names act as shorthand for the body of the function, but if they only have one caller they have nothing to keep them honest. In older codebases, function names are as misleading as comments; semantic drift, special cases etc. mean you need to drill into them anyway.