Sorry for the confusion, the nested 'ComplexFunc' function within the macro was just meant to be a simple example.
The results of the code would be:
.
Function MyFunc
Call ComplexFunc
FunctionEnd
Function un.MyFunc
Call un.ComplexFunc
FunctionEnd
Thus permitting a function to be available in both the installer and uninstaller.
The !macroundef command could allow for multiple "myFuncs" but with different contents for each macro.
Primarily this would be useful for headers to destroy macros only used within them selves to avoid conflicts.