diff --git a/OpenSSL/crypto/crypto.h b/OpenSSL/crypto/crypto.h
index fe25475..75961a7 100644
--- a/OpenSSL/crypto/crypto.h
+++ b/OpenSSL/crypto/crypto.h
@@ -65,7 +65,7 @@
 
 #if defined(PY3) || defined(crypto_MODULE)
 
-__declspec(dllexport) extern crypto_X509_New_RETURN      crypto_X509_New      crypto_X509_New_PROTO;
+extern crypto_X509_New_RETURN      crypto_X509_New      crypto_X509_New_PROTO;
 extern crypto_X509Name_New_RETURN  crypto_X509Name_New  crypto_X509Name_New_PROTO;
 extern crypto_X509Req_New_RETURN   crypto_X509Req_New   crypto_X509Req_New_PROTO;
 extern crypto_X509Store_New_RETURN crypto_X509Store_New crypto_X509Store_New_PROTO;
diff --git a/OpenSSL/ssl/connection.c b/OpenSSL/ssl/connection.c
index 0289876..0796352 100755
--- a/OpenSSL/ssl/connection.c
+++ b/OpenSSL/ssl/connection.c
@@ -861,7 +861,7 @@
             exception_from_error_queue(ssl_Error);
             return NULL;
         }
-        CA = (PyObject *)crypto_X509Name_New(CAName, 1);
+        CA = (PyObject *)new_x509name(CAName, 1);
         if (CA == NULL) {
             X509_NAME_free(CAName);
             Py_DECREF(CAList);
diff --git a/OpenSSL/ssl/ssl.c b/OpenSSL/ssl/ssl.c
index 8ac4420..b286b88 100644
--- a/OpenSSL/ssl/ssl.c
+++ b/OpenSSL/ssl/ssl.c
@@ -73,6 +73,18 @@
     PyObject *ssl_api_object;
 
     import_crypto();
+#else
+#   ifdef WINDOWS
+    HMODULE crypto = GetModuleHandle("crypto.pyd");
+    if (crypto == NULL) {
+        PyErr_SetString(PyExc_RuntimeError, "Unable to get crypto module");
+        return;
+    }
+
+    new_x509name = GetProcAddress(crypto, "crypto_X509Name_New");
+#   else
+    new_x509name = crypto_X509Name_New;
+#   endif
 #endif
 
     SSL_library_init();
diff --git a/OpenSSL/ssl/ssl.h b/OpenSSL/ssl/ssl.h
index ba7ba8b..15ae959 100644
--- a/OpenSSL/ssl/ssl.h
+++ b/OpenSSL/ssl/ssl.h
@@ -46,6 +46,8 @@
 extern ssl_Context_New_RETURN    ssl_Context_New    ssl_Context_New_PROTO;
 extern ssl_Connection_New_RETURN ssl_Connection_New ssl_Connection_New_PROTO;
 
+crypto_X509NameObj* (*new_x509name)(X509_NAME*, int);
+
 #else /* SSL_MODULE */
 
 extern void **ssl_API;
