Editado porque o OP forneceu mais informações:
Ouvir as portas TCP não requer direitos de administrador. No entanto, alguns ajudantes como o HTTPListener exigiriam direitos de administrador. Nesse caso, tente configurar uma reserva para que um usuário possa escutar nessa porta.
netsh http add urlacl url=http://+:80/MyUri user=DOMAIN\user
No seu caso, usando winsock, a ligação a uma porta não está acionando o UAC ou exigindo direitos de administrador. É outra coisa. Uma ferramenta que eu absolutamente adoro quando se trata de problemas de permissão é o Monitor de Processos da Sysinternal !
Adicione um filtro (CTRL + L) "O resultado é ACCESS DENIED". Isso mostrará todos os processos que tentam acessar um caminho, onde o processo não tem permissões. Você pode brincar com os filtros para diminuir o problema.