I think it is important to point out that "phone home" here actually means to generate a trace event on the machine where the application is running. Nothing else.
To export a function by name from an exe file is not very useful under most circumstances. It does not say anything about whether the function is called by the exe itself since exe files themselves do not need names exported for internal calls in that way. The function can practically speaking only be called by the exe itself (which would not need the function exported by name to do so) or by dll files loaded into the same process as the exe and that look up the name of the function in the exe that created the process they are running in.
So, the concept of exporting by name from an exe is not very common. But it has been used together with some debugger dll files loaded into the process. The debugger dll can then call the exported function to get some information about the exe that the compiler or linker built into the exe file. Not all debuggers use this concept, but Borland C++ compilers did this a lot. To call the function requires that this debugger dll gets loaded into the process because only dll files loaded into a process can successfully use a function exported by the exe itself.
There have also been a few similar solutions for Accessibility features where helper programs to aid visibility or to give audible feedback for GUIs get loaded into processes as a helper dll which then can call a function by name in the exe to get some information it needs about the GUI.
One of the practical problems in my opinion with reactions like this is that when features like this have been built into applications automatically before in various cases, it has been all internal functions called automatically by the runtime code built into the exe itself. Nobody have noticed, because that does not require any functions to exported by name, it was all internal calls inside the exe files. Now that this code was not supposed to be called automatically by the exe code itself or the runtime code built into it, but by some debugger/trace dll used when investigating problems, things look worse because they needed a trigger function exported by name by the exe file.