Единственный способ получить по-настоящему недекорированные имена с помощью __declspec (dllexport) - это экспортировать их с соглашением о вызовах __cdecl. CALLBACK становится __stdcall, который украшает "C" форму имени с начальным _ и завершающим @ байтами.
В противном случае вы можете использовать файл .DEF, что является болью. Другой особый способ MSVC - вставить директиву / EXPORT в объектный файл (или передать ее как явный параметр компоновщика)
#pragma comment(linker, "/EXPORT:ExportSymbol=DecoratedName");
Почему-то часть директивы =
не указана в справке