In general you can change where items link with WP Constants. But according to get_admin_url() it’s possible the URL was filtered with admin_url in which case you might be able to add a filter with a high priority and override what is being sent. The default is;
$url = get_site_url($blog_id, 'wp-admin/', $scheme);
if ( $path && is_string( $path ) )
$url .= ltrim( $path, "https://wordpress.stackexchange.com/" );
return apply_filters( 'admin_url', $url, $path, $blog_id );
As stated before, you should check your installed plugins (mainly security plugins) or .htaccess for wild redirects. Try disabling all plugins to narrow down that aspect pretty quick. Be sure to check the /wp-content/mu-plugins/ folder for auto-loaded plugins.
If you can, search your theme and plugins for any reference to admin as well as search your database for admin to see where it might be set.