Выполнить процедуру/функцию в контексте другого пользователя

Есть программа (вернее пишется), OS Windows 7/10/11 x64, среда Lazarus 2.2.6. Запускается программа администратором в контексте пользователя (работа в реестре с HKCU, настройка ПО - именно в контексте пользователя), но часть действий необходимо выполнить в контексте администратора (запись/изменение в AD и в HKLM в реестре + копирование данных (файл) на сервер). Учётные данные админа запрашиваются на старте программы, если не админ, программа закрывается. Как реализовать выполнение функций/процедур от имени админа?