about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2021-04-06 16:58:51 +0200
committerptitSeb <sebastien.chev@gmail.com>2021-04-06 16:58:51 +0200
commitfef01400983c7ecc37bbf2460cb31259da208164 (patch)
tree92b9992dc9c00053f3bccaa0466692f0b476d6c7 /src
parent4084eade0cccd69e4b3fbba38f558218351580ea (diff)
downloadbox64-fef01400983c7ecc37bbf2460cb31259da208164.tar.gz
box64-fef01400983c7ecc37bbf2460cb31259da208164.zip
Added wrapped libcrypto and libssl
Diffstat (limited to 'src')
-rwxr-xr-xsrc/library_list.h4
-rw-r--r--src/wrapped/generated/functions_list.txt44
-rw-r--r--src/wrapped/generated/wrapper.c117
-rw-r--r--src/wrapped/generated/wrapper.h44
-rwxr-xr-xsrc/wrapped/wrappedcrypto.c343
-rwxr-xr-xsrc/wrapped/wrappedcrypto_private.h3850
-rwxr-xr-xsrc/wrapped/wrappedlibssl.c333
-rwxr-xr-xsrc/wrapped/wrappedlibssl_private.h593
8 files changed, 5326 insertions, 2 deletions
diff --git a/src/library_list.h b/src/library_list.h
index e8f9f116..f9db052a 100755
--- a/src/library_list.h
+++ b/src/library_list.h
@@ -76,8 +76,8 @@ GO("libudev.so.1", udev1)
 GO("libdbus-1.so.3", dbus)
 //GO("libiconv.so.2", iconv)
 //GO("libdrm.so.2", libdrm)
-//GO("libcrypto.so.1", crypto)
-//GO("libssl.so.1", libssl)
+GO("libcrypto.so.1", crypto)
+GO("libssl.so.1", libssl)
 //GO("libcrypt.so.1", libcrypt)
 GO("libutil.so.1", util)
 GO("libuuid.so.1", libuuid)
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt
index e3b3b353..36b69849 100644
--- a/src/wrapped/generated/functions_list.txt
+++ b/src/wrapped/generated/functions_list.txt
@@ -1,3 +1,4 @@
+#() iF
 #() vFE
 #() vFv
 #() vFi
@@ -57,6 +58,7 @@
 #() pFl
 #() pFL
 #() pFp
+#() pFV
 #() HFi
 #() HFp
 #() vFEp
@@ -198,6 +200,7 @@
 #() vFuff
 #() vFudd
 #() vFupi
+#() vFupu
 #() vFfff
 #() vFfpp
 #() vFddd
@@ -271,6 +274,7 @@
 #() iFppC
 #() iFppu
 #() iFppd
+#() iFppl
 #() iFppL
 #() iFppp
 #() iFSpL
@@ -325,6 +329,7 @@
 #() pFEip
 #() pFEpi
 #() pFEpp
+#() pFiip
 #() pFipi
 #() pFipL
 #() pFipp
@@ -335,6 +340,7 @@
 #() pFUpi
 #() pFpii
 #() pFpiu
+#() pFpil
 #() pFpiL
 #() pFpip
 #() pFpCC
@@ -351,6 +357,7 @@
 #() pFppi
 #() pFppu
 #() pFppf
+#() pFppl
 #() pFppL
 #() pFppp
 #() pFpOM
@@ -446,6 +453,7 @@
 #() iFippp
 #() iFuipp
 #() iFuuff
+#() iFuppi
 #() iFuppp
 #() iFpiii
 #() iFpiiu
@@ -482,6 +490,8 @@
 #() iFppup
 #() iFppll
 #() iFpplp
+#() iFppLi
+#() iFppLL
 #() iFppLp
 #() iFpppi
 #() iFpppu
@@ -500,12 +510,15 @@
 #() uFpppi
 #() UFpipp
 #() dFppiL
+#() lFEpip
 #() lFEppL
 #() lFiipL
 #() lFipiI
 #() lFipLi
 #() lFipLI
 #() lFipLl
+#() lFpili
+#() lFpilp
 #() lFppii
 #() LFpuuu
 #() LFpLLp
@@ -513,6 +526,7 @@
 #() LFppii
 #() LFppLL
 #() LFppLp
+#() LFpppp
 #() pFEipp
 #() pFEupp
 #() pFEpii
@@ -649,6 +663,7 @@
 #() iFpiipi
 #() iFpiipp
 #() iFpipii
+#() iFpipiL
 #() iFpippi
 #() iFpippp
 #() iFpCCCC
@@ -685,6 +700,8 @@
 #() uFpCCCC
 #() uFpuuuu
 #() uFppiip
+#() uFppipp
+#() uFpplip
 #() uFppppp
 #() LFLpppp
 #() LFpLLLp
@@ -703,6 +720,7 @@
 #() pFuiiiu
 #() pFuiipp
 #() pFpiiuu
+#() pFpiipi
 #() pFpiipp
 #() pFpippp
 #() pFpCuup
@@ -776,10 +794,20 @@
 #() vFppiiii
 #() vFppiiip
 #() vFppiipi
+#() vFppilpp
+#() vFppippi
 #() vFppupii
+#() vFpplppi
+#() vFpplppp
+#() vFppLppi
+#() vFppLppp
 #() vFpppiii
+#() vFpppppi
 #() vFpppppp
+#() cFppLppi
 #() iFEiippi
+#() iFElpppp
+#() iFEpiipp
 #() iFEpilpV
 #() iFEpippi
 #() iFEpuppp
@@ -788,6 +816,8 @@
 #() iFiiiiii
 #() iFiiiiip
 #() iFiuiipi
+#() iFipupup
+#() iFipuppp
 #() iFuppppp
 #() iFLppipp
 #() iFpiiiii
@@ -798,6 +828,7 @@
 #() iFpupuui
 #() iFppiiuu
 #() iFppiipi
+#() iFppipii
 #() iFppipiL
 #() iFppIppp
 #() iFppuiii
@@ -805,11 +836,13 @@
 #() iFppuIII
 #() iFppuupp
 #() iFppupip
+#() iFpplppi
 #() iFppLupp
 #() iFpppiuu
 #() iFpppipi
 #() iFpppipp
 #() iFpppuii
+#() iFpppupu
 #() iFppppii
 #() iFppppip
 #() iFppppup
@@ -880,7 +913,10 @@
 #() vFpipipii
 #() vFpddiidd
 #() vFppiiipi
+#() vFppilppi
 #() vFppipppp
+#() vFppLpppi
+#() vFppLpppp
 #() vFpppiiii
 #() vFpppuuuu
 #() vFppppipi
@@ -900,8 +936,10 @@
 #() iFppiiuui
 #() iFppiipii
 #() iFppiipiL
+#() iFppipiip
 #() iFppipipi
 #() iFppippip
+#() iFppipppi
 #() iFppipppp
 #() iFppuipiL
 #() iFpppiiii
@@ -912,6 +950,7 @@
 #() iFpppuiii
 #() iFppppiii
 #() iFppppdpi
+#() iFpppppip
 #() iFppppppp
 #() uFuippppp
 #() pFEpLiiiI
@@ -950,9 +989,13 @@
 #() vFpippiiuu
 #() vFpippiipi
 #() vFppiiipii
+#() vFppippppi
+#() vFpplppppi
+#() vFpplppppp
 #() vFppppiipi
 #() iFEpippppp
 #() iFEpuuLppp
+#() iFEppppipp
 #() iFiiiiiiip
 #() iFiiupiupi
 #() iFuiifpppp
@@ -991,6 +1034,7 @@
 #() vFpipiuiipp
 #() vFpipppiipi
 #() vFppiiipiii
+#() vFpplpppppi
 #() vFpppppippp
 #() iFEpiiiiipi
 #() iFEpppipppp
diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c
index 67e6d805..15e24bce 100644
--- a/src/wrapped/generated/wrapper.c
+++ b/src/wrapped/generated/wrapper.c
@@ -31,6 +31,7 @@ static void* io_convert(void* v)
 #define ST0val ST0.d
 
 int of_convert(int);
+typedef int64_t (*iF_t)();
 typedef void (*vFE_t)(x64emu_t*);
 typedef void (*vFv_t)(void);
 typedef void (*vFi_t)(int64_t);
@@ -90,6 +91,7 @@ typedef void* (*pFu_t)(uint64_t);
 typedef void* (*pFl_t)(intptr_t);
 typedef void* (*pFL_t)(uintptr_t);
 typedef void* (*pFp_t)(void*);
+typedef void* (*pFV_t)(void*);
 typedef unsigned __int128 (*HFi_t)(int64_t);
 typedef unsigned __int128 (*HFp_t)(void*);
 typedef void (*vFEp_t)(x64emu_t*, void*);
@@ -231,6 +233,7 @@ typedef void (*vFuup_t)(uint64_t, uint64_t, void*);
 typedef void (*vFuff_t)(uint64_t, float, float);
 typedef void (*vFudd_t)(uint64_t, double, double);
 typedef void (*vFupi_t)(uint64_t, void*, int64_t);
+typedef void (*vFupu_t)(uint64_t, void*, uint64_t);
 typedef void (*vFfff_t)(float, float, float);
 typedef void (*vFfpp_t)(float, void*, void*);
 typedef void (*vFddd_t)(double, double, double);
@@ -304,6 +307,7 @@ typedef int64_t (*iFppI_t)(void*, void*, int64_t);
 typedef int64_t (*iFppC_t)(void*, void*, uint8_t);
 typedef int64_t (*iFppu_t)(void*, void*, uint64_t);
 typedef int64_t (*iFppd_t)(void*, void*, double);
+typedef int64_t (*iFppl_t)(void*, void*, intptr_t);
 typedef int64_t (*iFppL_t)(void*, void*, uintptr_t);
 typedef int64_t (*iFppp_t)(void*, void*, void*);
 typedef int64_t (*iFSpL_t)(void*, void*, uintptr_t);
@@ -358,6 +362,7 @@ typedef uintptr_t (*LFSpL_t)(void*, void*, uintptr_t);
 typedef void* (*pFEip_t)(x64emu_t*, int64_t, void*);
 typedef void* (*pFEpi_t)(x64emu_t*, void*, int64_t);
 typedef void* (*pFEpp_t)(x64emu_t*, void*, void*);
+typedef void* (*pFiip_t)(int64_t, int64_t, void*);
 typedef void* (*pFipi_t)(int64_t, void*, int64_t);
 typedef void* (*pFipL_t)(int64_t, void*, uintptr_t);
 typedef void* (*pFipp_t)(int64_t, void*, void*);
@@ -368,6 +373,7 @@ typedef void* (*pFupL_t)(uint64_t, void*, uintptr_t);
 typedef void* (*pFUpi_t)(uint64_t, void*, int64_t);
 typedef void* (*pFpii_t)(void*, int64_t, int64_t);
 typedef void* (*pFpiu_t)(void*, int64_t, uint64_t);
+typedef void* (*pFpil_t)(void*, int64_t, intptr_t);
 typedef void* (*pFpiL_t)(void*, int64_t, uintptr_t);
 typedef void* (*pFpip_t)(void*, int64_t, void*);
 typedef void* (*pFpCC_t)(void*, uint8_t, uint8_t);
@@ -384,6 +390,7 @@ typedef void* (*pFpLp_t)(void*, uintptr_t, void*);
 typedef void* (*pFppi_t)(void*, void*, int64_t);
 typedef void* (*pFppu_t)(void*, void*, uint64_t);
 typedef void* (*pFppf_t)(void*, void*, float);
+typedef void* (*pFppl_t)(void*, void*, intptr_t);
 typedef void* (*pFppL_t)(void*, void*, uintptr_t);
 typedef void* (*pFppp_t)(void*, void*, void*);
 typedef void* (*pFpOM_t)(void*, int32_t, ...);
@@ -479,6 +486,7 @@ typedef int64_t (*iFippL_t)(int64_t, void*, void*, uintptr_t);
 typedef int64_t (*iFippp_t)(int64_t, void*, void*, void*);
 typedef int64_t (*iFuipp_t)(uint64_t, int64_t, void*, void*);
 typedef int64_t (*iFuuff_t)(uint64_t, uint64_t, float, float);
+typedef int64_t (*iFuppi_t)(uint64_t, void*, void*, int64_t);
 typedef int64_t (*iFuppp_t)(uint64_t, void*, void*, void*);
 typedef int64_t (*iFpiii_t)(void*, int64_t, int64_t, int64_t);
 typedef int64_t (*iFpiiu_t)(void*, int64_t, int64_t, uint64_t);
@@ -515,6 +523,8 @@ typedef int64_t (*iFppuu_t)(void*, void*, uint64_t, uint64_t);
 typedef int64_t (*iFppup_t)(void*, void*, uint64_t, void*);
 typedef int64_t (*iFppll_t)(void*, void*, intptr_t, intptr_t);
 typedef int64_t (*iFpplp_t)(void*, void*, intptr_t, void*);
+typedef int64_t (*iFppLi_t)(void*, void*, uintptr_t, int64_t);
+typedef int64_t (*iFppLL_t)(void*, void*, uintptr_t, uintptr_t);
 typedef int64_t (*iFppLp_t)(void*, void*, uintptr_t, void*);
 typedef int64_t (*iFpppi_t)(void*, void*, void*, int64_t);
 typedef int64_t (*iFpppu_t)(void*, void*, void*, uint64_t);
@@ -533,12 +543,15 @@ typedef uint64_t (*uFppiu_t)(void*, void*, int64_t, uint64_t);
 typedef uint64_t (*uFpppi_t)(void*, void*, void*, int64_t);
 typedef uint64_t (*UFpipp_t)(void*, int64_t, void*, void*);
 typedef double (*dFppiL_t)(void*, void*, int64_t, uintptr_t);
+typedef intptr_t (*lFEpip_t)(x64emu_t*, void*, int64_t, void*);
 typedef intptr_t (*lFEppL_t)(x64emu_t*, void*, void*, uintptr_t);
 typedef intptr_t (*lFiipL_t)(int64_t, int64_t, void*, uintptr_t);
 typedef intptr_t (*lFipiI_t)(int64_t, void*, int64_t, int64_t);
 typedef intptr_t (*lFipLi_t)(int64_t, void*, uintptr_t, int64_t);
 typedef intptr_t (*lFipLI_t)(int64_t, void*, uintptr_t, int64_t);
 typedef intptr_t (*lFipLl_t)(int64_t, void*, uintptr_t, intptr_t);
+typedef intptr_t (*lFpili_t)(void*, int64_t, intptr_t, int64_t);
+typedef intptr_t (*lFpilp_t)(void*, int64_t, intptr_t, void*);
 typedef intptr_t (*lFppii_t)(void*, void*, int64_t, int64_t);
 typedef uintptr_t (*LFpuuu_t)(void*, uint64_t, uint64_t, uint64_t);
 typedef uintptr_t (*LFpLLp_t)(void*, uintptr_t, uintptr_t, void*);
@@ -546,6 +559,7 @@ typedef uintptr_t (*LFpLpp_t)(void*, uintptr_t, void*, void*);
 typedef uintptr_t (*LFppii_t)(void*, void*, int64_t, int64_t);
 typedef uintptr_t (*LFppLL_t)(void*, void*, uintptr_t, uintptr_t);
 typedef uintptr_t (*LFppLp_t)(void*, void*, uintptr_t, void*);
+typedef uintptr_t (*LFpppp_t)(void*, void*, void*, void*);
 typedef void* (*pFEipp_t)(x64emu_t*, int64_t, void*, void*);
 typedef void* (*pFEupp_t)(x64emu_t*, uint64_t, void*, void*);
 typedef void* (*pFEpii_t)(x64emu_t*, void*, int64_t, int64_t);
@@ -682,6 +696,7 @@ typedef int64_t (*iFpiiuu_t)(void*, int64_t, int64_t, uint64_t, uint64_t);
 typedef int64_t (*iFpiipi_t)(void*, int64_t, int64_t, void*, int64_t);
 typedef int64_t (*iFpiipp_t)(void*, int64_t, int64_t, void*, void*);
 typedef int64_t (*iFpipii_t)(void*, int64_t, void*, int64_t, int64_t);
+typedef int64_t (*iFpipiL_t)(void*, int64_t, void*, int64_t, uintptr_t);
 typedef int64_t (*iFpippi_t)(void*, int64_t, void*, void*, int64_t);
 typedef int64_t (*iFpippp_t)(void*, int64_t, void*, void*, void*);
 typedef int64_t (*iFpCCCC_t)(void*, uint8_t, uint8_t, uint8_t, uint8_t);
@@ -718,6 +733,8 @@ typedef uint64_t (*uFuiiiu_t)(uint64_t, int64_t, int64_t, int64_t, uint64_t);
 typedef uint64_t (*uFpCCCC_t)(void*, uint8_t, uint8_t, uint8_t, uint8_t);
 typedef uint64_t (*uFpuuuu_t)(void*, uint64_t, uint64_t, uint64_t, uint64_t);
 typedef uint64_t (*uFppiip_t)(void*, void*, int64_t, int64_t, void*);
+typedef uint64_t (*uFppipp_t)(void*, void*, int64_t, void*, void*);
+typedef uint64_t (*uFpplip_t)(void*, void*, intptr_t, int64_t, void*);
 typedef uint64_t (*uFppppp_t)(void*, void*, void*, void*, void*);
 typedef uintptr_t (*LFLpppp_t)(uintptr_t, void*, void*, void*, void*);
 typedef uintptr_t (*LFpLLLp_t)(void*, uintptr_t, uintptr_t, uintptr_t, void*);
@@ -736,6 +753,7 @@ typedef void* (*pFipipL_t)(int64_t, void*, int64_t, void*, uintptr_t);
 typedef void* (*pFuiiiu_t)(uint64_t, int64_t, int64_t, int64_t, uint64_t);
 typedef void* (*pFuiipp_t)(uint64_t, int64_t, int64_t, void*, void*);
 typedef void* (*pFpiiuu_t)(void*, int64_t, int64_t, uint64_t, uint64_t);
+typedef void* (*pFpiipi_t)(void*, int64_t, int64_t, void*, int64_t);
 typedef void* (*pFpiipp_t)(void*, int64_t, int64_t, void*, void*);
 typedef void* (*pFpippp_t)(void*, int64_t, void*, void*, void*);
 typedef void* (*pFpCuup_t)(void*, uint8_t, uint64_t, uint64_t, void*);
@@ -809,10 +827,20 @@ typedef void (*vFpdddii_t)(void*, double, double, double, int64_t, int64_t);
 typedef void (*vFppiiii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t);
 typedef void (*vFppiiip_t)(void*, void*, int64_t, int64_t, int64_t, void*);
 typedef void (*vFppiipi_t)(void*, void*, int64_t, int64_t, void*, int64_t);
+typedef void (*vFppilpp_t)(void*, void*, int64_t, intptr_t, void*, void*);
+typedef void (*vFppippi_t)(void*, void*, int64_t, void*, void*, int64_t);
 typedef void (*vFppupii_t)(void*, void*, uint64_t, void*, int64_t, int64_t);
+typedef void (*vFpplppi_t)(void*, void*, intptr_t, void*, void*, int64_t);
+typedef void (*vFpplppp_t)(void*, void*, intptr_t, void*, void*, void*);
+typedef void (*vFppLppi_t)(void*, void*, uintptr_t, void*, void*, int64_t);
+typedef void (*vFppLppp_t)(void*, void*, uintptr_t, void*, void*, void*);
 typedef void (*vFpppiii_t)(void*, void*, void*, int64_t, int64_t, int64_t);
+typedef void (*vFpppppi_t)(void*, void*, void*, void*, void*, int64_t);
 typedef void (*vFpppppp_t)(void*, void*, void*, void*, void*, void*);
+typedef int8_t (*cFppLppi_t)(void*, void*, uintptr_t, void*, void*, int64_t);
 typedef int64_t (*iFEiippi_t)(x64emu_t*, int64_t, int64_t, void*, void*, int64_t);
+typedef int64_t (*iFElpppp_t)(x64emu_t*, intptr_t, void*, void*, void*, void*);
+typedef int64_t (*iFEpiipp_t)(x64emu_t*, void*, int64_t, int64_t, void*, void*);
 typedef int64_t (*iFEpilpV_t)(x64emu_t*, void*, int64_t, intptr_t, void*, void*);
 typedef int64_t (*iFEpippi_t)(x64emu_t*, void*, int64_t, void*, void*, int64_t);
 typedef int64_t (*iFEpuppp_t)(x64emu_t*, void*, uint64_t, void*, void*, void*);
@@ -821,6 +849,8 @@ typedef int64_t (*iFEppppp_t)(x64emu_t*, void*, void*, void*, void*, void*);
 typedef int64_t (*iFiiiiii_t)(int64_t, int64_t, int64_t, int64_t, int64_t, int64_t);
 typedef int64_t (*iFiiiiip_t)(int64_t, int64_t, int64_t, int64_t, int64_t, void*);
 typedef int64_t (*iFiuiipi_t)(int64_t, uint64_t, int64_t, int64_t, void*, int64_t);
+typedef int64_t (*iFipupup_t)(int64_t, void*, uint64_t, void*, uint64_t, void*);
+typedef int64_t (*iFipuppp_t)(int64_t, void*, uint64_t, void*, void*, void*);
 typedef int64_t (*iFuppppp_t)(uint64_t, void*, void*, void*, void*, void*);
 typedef int64_t (*iFLppipp_t)(uintptr_t, void*, void*, int64_t, void*, void*);
 typedef int64_t (*iFpiiiii_t)(void*, int64_t, int64_t, int64_t, int64_t, int64_t);
@@ -831,6 +861,7 @@ typedef int64_t (*iFpipppp_t)(void*, int64_t, void*, void*, void*, void*);
 typedef int64_t (*iFpupuui_t)(void*, uint64_t, void*, uint64_t, uint64_t, int64_t);
 typedef int64_t (*iFppiiuu_t)(void*, void*, int64_t, int64_t, uint64_t, uint64_t);
 typedef int64_t (*iFppiipi_t)(void*, void*, int64_t, int64_t, void*, int64_t);
+typedef int64_t (*iFppipii_t)(void*, void*, int64_t, void*, int64_t, int64_t);
 typedef int64_t (*iFppipiL_t)(void*, void*, int64_t, void*, int64_t, uintptr_t);
 typedef int64_t (*iFppIppp_t)(void*, void*, int64_t, void*, void*, void*);
 typedef int64_t (*iFppuiii_t)(void*, void*, uint64_t, int64_t, int64_t, int64_t);
@@ -838,11 +869,13 @@ typedef int64_t (*iFppuiiL_t)(void*, void*, uint64_t, int64_t, int64_t, uintptr_
 typedef int64_t (*iFppuIII_t)(void*, void*, uint64_t, int64_t, int64_t, int64_t);
 typedef int64_t (*iFppuupp_t)(void*, void*, uint64_t, uint64_t, void*, void*);
 typedef int64_t (*iFppupip_t)(void*, void*, uint64_t, void*, int64_t, void*);
+typedef int64_t (*iFpplppi_t)(void*, void*, intptr_t, void*, void*, int64_t);
 typedef int64_t (*iFppLupp_t)(void*, void*, uintptr_t, uint64_t, void*, void*);
 typedef int64_t (*iFpppiuu_t)(void*, void*, void*, int64_t, uint64_t, uint64_t);
 typedef int64_t (*iFpppipi_t)(void*, void*, void*, int64_t, void*, int64_t);
 typedef int64_t (*iFpppipp_t)(void*, void*, void*, int64_t, void*, void*);
 typedef int64_t (*iFpppuii_t)(void*, void*, void*, uint64_t, int64_t, int64_t);
+typedef int64_t (*iFpppupu_t)(void*, void*, void*, uint64_t, void*, uint64_t);
 typedef int64_t (*iFppppii_t)(void*, void*, void*, void*, int64_t, int64_t);
 typedef int64_t (*iFppppip_t)(void*, void*, void*, void*, int64_t, void*);
 typedef int64_t (*iFppppup_t)(void*, void*, void*, void*, uint64_t, void*);
@@ -913,7 +946,10 @@ typedef void (*vFpiiliip_t)(void*, int64_t, int64_t, intptr_t, int64_t, int64_t,
 typedef void (*vFpipipii_t)(void*, int64_t, void*, int64_t, void*, int64_t, int64_t);
 typedef void (*vFpddiidd_t)(void*, double, double, int64_t, int64_t, double, double);
 typedef void (*vFppiiipi_t)(void*, void*, int64_t, int64_t, int64_t, void*, int64_t);
+typedef void (*vFppilppi_t)(void*, void*, int64_t, intptr_t, void*, void*, int64_t);
 typedef void (*vFppipppp_t)(void*, void*, int64_t, void*, void*, void*, void*);
+typedef void (*vFppLpppi_t)(void*, void*, uintptr_t, void*, void*, void*, int64_t);
+typedef void (*vFppLpppp_t)(void*, void*, uintptr_t, void*, void*, void*, void*);
 typedef void (*vFpppiiii_t)(void*, void*, void*, int64_t, int64_t, int64_t, int64_t);
 typedef void (*vFpppuuuu_t)(void*, void*, void*, uint64_t, uint64_t, uint64_t, uint64_t);
 typedef void (*vFppppipi_t)(void*, void*, void*, void*, int64_t, void*, int64_t);
@@ -933,8 +969,10 @@ typedef int64_t (*iFppiiiip_t)(void*, void*, int64_t, int64_t, int64_t, int64_t,
 typedef int64_t (*iFppiiuui_t)(void*, void*, int64_t, int64_t, uint64_t, uint64_t, int64_t);
 typedef int64_t (*iFppiipii_t)(void*, void*, int64_t, int64_t, void*, int64_t, int64_t);
 typedef int64_t (*iFppiipiL_t)(void*, void*, int64_t, int64_t, void*, int64_t, uintptr_t);
+typedef int64_t (*iFppipiip_t)(void*, void*, int64_t, void*, int64_t, int64_t, void*);
 typedef int64_t (*iFppipipi_t)(void*, void*, int64_t, void*, int64_t, void*, int64_t);
 typedef int64_t (*iFppippip_t)(void*, void*, int64_t, void*, void*, int64_t, void*);
+typedef int64_t (*iFppipppi_t)(void*, void*, int64_t, void*, void*, void*, int64_t);
 typedef int64_t (*iFppipppp_t)(void*, void*, int64_t, void*, void*, void*, void*);
 typedef int64_t (*iFppuipiL_t)(void*, void*, uint64_t, int64_t, void*, int64_t, uintptr_t);
 typedef int64_t (*iFpppiiii_t)(void*, void*, void*, int64_t, int64_t, int64_t, int64_t);
@@ -945,6 +983,7 @@ typedef int64_t (*iFpppiuwu_t)(void*, void*, void*, int64_t, uint64_t, int16_t,
 typedef int64_t (*iFpppuiii_t)(void*, void*, void*, uint64_t, int64_t, int64_t, int64_t);
 typedef int64_t (*iFppppiii_t)(void*, void*, void*, void*, int64_t, int64_t, int64_t);
 typedef int64_t (*iFppppdpi_t)(void*, void*, void*, void*, double, void*, int64_t);
+typedef int64_t (*iFpppppip_t)(void*, void*, void*, void*, void*, int64_t, void*);
 typedef int64_t (*iFppppppp_t)(void*, void*, void*, void*, void*, void*, void*);
 typedef uint64_t (*uFuippppp_t)(uint64_t, int64_t, void*, void*, void*, void*, void*);
 typedef void* (*pFEpLiiiI_t)(x64emu_t*, void*, uintptr_t, int64_t, int64_t, int64_t, int64_t);
@@ -983,9 +1022,13 @@ typedef void (*vFffffffff_t)(float, float, float, float, float, float, float, fl
 typedef void (*vFpippiiuu_t)(void*, int64_t, void*, void*, int64_t, int64_t, uint64_t, uint64_t);
 typedef void (*vFpippiipi_t)(void*, int64_t, void*, void*, int64_t, int64_t, void*, int64_t);
 typedef void (*vFppiiipii_t)(void*, void*, int64_t, int64_t, int64_t, void*, int64_t, int64_t);
+typedef void (*vFppippppi_t)(void*, void*, int64_t, void*, void*, void*, void*, int64_t);
+typedef void (*vFpplppppi_t)(void*, void*, intptr_t, void*, void*, void*, void*, int64_t);
+typedef void (*vFpplppppp_t)(void*, void*, intptr_t, void*, void*, void*, void*, void*);
 typedef void (*vFppppiipi_t)(void*, void*, void*, void*, int64_t, int64_t, void*, int64_t);
 typedef int64_t (*iFEpippppp_t)(x64emu_t*, void*, int64_t, void*, void*, void*, void*, void*);
 typedef int64_t (*iFEpuuLppp_t)(x64emu_t*, void*, uint64_t, uint64_t, uintptr_t, void*, void*, void*);
+typedef int64_t (*iFEppppipp_t)(x64emu_t*, void*, void*, void*, void*, int64_t, void*, void*);
 typedef int64_t (*iFiiiiiiip_t)(int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, void*);
 typedef int64_t (*iFiiupiupi_t)(int64_t, int64_t, uint64_t, void*, int64_t, uint64_t, void*, int64_t);
 typedef int64_t (*iFuiifpppp_t)(uint64_t, int64_t, int64_t, float, void*, void*, void*, void*);
@@ -1024,6 +1067,7 @@ typedef void (*vFddddddddd_t)(double, double, double, double, double, double, do
 typedef void (*vFpipiuiipp_t)(void*, int64_t, void*, int64_t, uint64_t, int64_t, int64_t, void*, void*);
 typedef void (*vFpipppiipi_t)(void*, int64_t, void*, void*, void*, int64_t, int64_t, void*, int64_t);
 typedef void (*vFppiiipiii_t)(void*, void*, int64_t, int64_t, int64_t, void*, int64_t, int64_t, int64_t);
+typedef void (*vFpplpppppi_t)(void*, void*, intptr_t, void*, void*, void*, void*, void*, int64_t);
 typedef void (*vFpppppippp_t)(void*, void*, void*, void*, void*, int64_t, void*, void*, void*);
 typedef int64_t (*iFEpiiiiipi_t)(x64emu_t*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, void*, int64_t);
 typedef int64_t (*iFEpppipppp_t)(x64emu_t*, void*, void*, void*, int64_t, void*, void*, void*, void*);
@@ -1133,6 +1177,7 @@ typedef double (*KFKK_t)(double, double);
 typedef double (*KFKp_t)(double, void*);
 #endif
 
+void iF(x64emu_t *emu, uintptr_t fcn) { iF_t fn = (iF_t)fcn; R_RAX=(int64_t)fn(); }
 void vFE(x64emu_t *emu, uintptr_t fcn) { vFE_t fn = (vFE_t)fcn; fn(emu); }
 void vFv(x64emu_t *emu, uintptr_t fcn) { vFv_t fn = (vFv_t)fcn; fn(); }
 void vFi(x64emu_t *emu, uintptr_t fcn) { vFi_t fn = (vFi_t)fcn; fn((int64_t)R_RDI); }
@@ -1192,6 +1237,7 @@ void pFu(x64emu_t *emu, uintptr_t fcn) { pFu_t fn = (pFu_t)fcn; R_RAX=(uintptr_t
 void pFl(x64emu_t *emu, uintptr_t fcn) { pFl_t fn = (pFl_t)fcn; R_RAX=(uintptr_t)fn((intptr_t)R_RDI); }
 void pFL(x64emu_t *emu, uintptr_t fcn) { pFL_t fn = (pFL_t)fcn; R_RAX=(uintptr_t)fn((uintptr_t)R_RDI); }
 void pFp(x64emu_t *emu, uintptr_t fcn) { pFp_t fn = (pFp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI); }
+void pFV(x64emu_t *emu, uintptr_t fcn) { pFV_t fn = (pFV_t)fcn; R_RAX=(uintptr_t)fn((void*)(R_RSP + 8)); }
 void HFi(x64emu_t *emu, uintptr_t fcn) { HFi_t fn = (HFi_t)fcn; unsigned __int128 u128 = fn((int64_t)R_RDI); R_RAX=(u128&0xFFFFFFFFFFFFFFFFL); R_RDX=(u128>>64)&0xFFFFFFFFFFFFFFFFL; }
 void HFp(x64emu_t *emu, uintptr_t fcn) { HFp_t fn = (HFp_t)fcn; unsigned __int128 u128 = fn((void*)R_RDI); R_RAX=(u128&0xFFFFFFFFFFFFFFFFL); R_RDX=(u128>>64)&0xFFFFFFFFFFFFFFFFL; }
 void vFEp(x64emu_t *emu, uintptr_t fcn) { vFEp_t fn = (vFEp_t)fcn; fn(emu, (void*)R_RDI); }
@@ -1333,6 +1379,7 @@ void vFuup(x64emu_t *emu, uintptr_t fcn) { vFuup_t fn = (vFuup_t)fcn; fn((uint64
 void vFuff(x64emu_t *emu, uintptr_t fcn) { vFuff_t fn = (vFuff_t)fcn; fn((uint64_t)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0]); }
 void vFudd(x64emu_t *emu, uintptr_t fcn) { vFudd_t fn = (vFudd_t)fcn; fn((uint64_t)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0]); }
 void vFupi(x64emu_t *emu, uintptr_t fcn) { vFupi_t fn = (vFupi_t)fcn; fn((uint64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX); }
+void vFupu(x64emu_t *emu, uintptr_t fcn) { vFupu_t fn = (vFupu_t)fcn; fn((uint64_t)R_RDI, (void*)R_RSI, (uint64_t)R_RDX); }
 void vFfff(x64emu_t *emu, uintptr_t fcn) { vFfff_t fn = (vFfff_t)fcn; fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0]); }
 void vFfpp(x64emu_t *emu, uintptr_t fcn) { vFfpp_t fn = (vFfpp_t)fcn; fn(emu->xmm[0].f[0], (void*)R_RDI, (void*)R_RSI); }
 void vFddd(x64emu_t *emu, uintptr_t fcn) { vFddd_t fn = (vFddd_t)fcn; fn(emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0]); }
@@ -1406,6 +1453,7 @@ void iFppI(x64emu_t *emu, uintptr_t fcn) { iFppI_t fn = (iFppI_t)fcn; R_RAX=(int
 void iFppC(x64emu_t *emu, uintptr_t fcn) { iFppC_t fn = (iFppC_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint8_t)R_RDX); }
 void iFppu(x64emu_t *emu, uintptr_t fcn) { iFppu_t fn = (iFppu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX); }
 void iFppd(x64emu_t *emu, uintptr_t fcn) { iFppd_t fn = (iFppd_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0]); }
+void iFppl(x64emu_t *emu, uintptr_t fcn) { iFppl_t fn = (iFppl_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX); }
 void iFppL(x64emu_t *emu, uintptr_t fcn) { iFppL_t fn = (iFppL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); }
 void iFppp(x64emu_t *emu, uintptr_t fcn) { iFppp_t fn = (iFppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX); }
 void iFSpL(x64emu_t *emu, uintptr_t fcn) { iFSpL_t fn = (iFSpL_t)fcn; R_RAX=(int64_t)fn(io_convert((void*)R_RDI), (void*)R_RSI, (uintptr_t)R_RDX); }
@@ -1460,6 +1508,7 @@ void LFSpL(x64emu_t *emu, uintptr_t fcn) { LFSpL_t fn = (LFSpL_t)fcn; R_RAX=(uin
 void pFEip(x64emu_t *emu, uintptr_t fcn) { pFEip_t fn = (pFEip_t)fcn; R_RAX=(uintptr_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI); }
 void pFEpi(x64emu_t *emu, uintptr_t fcn) { pFEpi_t fn = (pFEpi_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI); }
 void pFEpp(x64emu_t *emu, uintptr_t fcn) { pFEpp_t fn = (pFEpp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI); }
+void pFiip(x64emu_t *emu, uintptr_t fcn) { pFiip_t fn = (pFiip_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX); }
 void pFipi(x64emu_t *emu, uintptr_t fcn) { pFipi_t fn = (pFipi_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX); }
 void pFipL(x64emu_t *emu, uintptr_t fcn) { pFipL_t fn = (pFipL_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); }
 void pFipp(x64emu_t *emu, uintptr_t fcn) { pFipp_t fn = (pFipp_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); }
@@ -1470,6 +1519,7 @@ void pFupL(x64emu_t *emu, uintptr_t fcn) { pFupL_t fn = (pFupL_t)fcn; R_RAX=(uin
 void pFUpi(x64emu_t *emu, uintptr_t fcn) { pFUpi_t fn = (pFUpi_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX); }
 void pFpii(x64emu_t *emu, uintptr_t fcn) { pFpii_t fn = (pFpii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX); }
 void pFpiu(x64emu_t *emu, uintptr_t fcn) { pFpiu_t fn = (pFpiu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX); }
+void pFpil(x64emu_t *emu, uintptr_t fcn) { pFpil_t fn = (pFpil_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (intptr_t)R_RDX); }
 void pFpiL(x64emu_t *emu, uintptr_t fcn) { pFpiL_t fn = (pFpiL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (uintptr_t)R_RDX); }
 void pFpip(x64emu_t *emu, uintptr_t fcn) { pFpip_t fn = (pFpip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX); }
 void pFpCC(x64emu_t *emu, uintptr_t fcn) { pFpCC_t fn = (pFpCC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint8_t)R_RDX); }
@@ -1486,6 +1536,7 @@ void pFpLp(x64emu_t *emu, uintptr_t fcn) { pFpLp_t fn = (pFpLp_t)fcn; R_RAX=(uin
 void pFppi(x64emu_t *emu, uintptr_t fcn) { pFppi_t fn = (pFppi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX); }
 void pFppu(x64emu_t *emu, uintptr_t fcn) { pFppu_t fn = (pFppu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX); }
 void pFppf(x64emu_t *emu, uintptr_t fcn) { pFppf_t fn = (pFppf_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].f[0]); }
+void pFppl(x64emu_t *emu, uintptr_t fcn) { pFppl_t fn = (pFppl_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX); }
 void pFppL(x64emu_t *emu, uintptr_t fcn) { pFppL_t fn = (pFppL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); }
 void pFppp(x64emu_t *emu, uintptr_t fcn) { pFppp_t fn = (pFppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX); }
 void pFpOM(x64emu_t *emu, uintptr_t fcn) { pFpOM_t fn = (pFpOM_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, of_convert((int32_t)R_RSI), (void*)R_RDX, (void*)R_RCX); }
@@ -1581,6 +1632,7 @@ void iFippL(x64emu_t *emu, uintptr_t fcn) { iFippL_t fn = (iFippL_t)fcn; R_RAX=(
 void iFippp(x64emu_t *emu, uintptr_t fcn) { iFippp_t fn = (iFippp_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void iFuipp(x64emu_t *emu, uintptr_t fcn) { iFuipp_t fn = (iFuipp_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void iFuuff(x64emu_t *emu, uintptr_t fcn) { iFuuff_t fn = (iFuuff_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (uint64_t)R_RSI, emu->xmm[0].f[0], emu->xmm[1].f[0]); }
+void iFuppi(x64emu_t *emu, uintptr_t fcn) { iFuppi_t fn = (iFuppi_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); }
 void iFuppp(x64emu_t *emu, uintptr_t fcn) { iFuppp_t fn = (iFuppp_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void iFpiii(x64emu_t *emu, uintptr_t fcn) { iFpiii_t fn = (iFpiii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); }
 void iFpiiu(x64emu_t *emu, uintptr_t fcn) { iFpiiu_t fn = (iFpiiu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX); }
@@ -1617,6 +1669,8 @@ void iFppuu(x64emu_t *emu, uintptr_t fcn) { iFppuu_t fn = (iFppuu_t)fcn; R_RAX=(
 void iFppup(x64emu_t *emu, uintptr_t fcn) { iFppup_t fn = (iFppup_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX); }
 void iFppll(x64emu_t *emu, uintptr_t fcn) { iFppll_t fn = (iFppll_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (intptr_t)R_RCX); }
 void iFpplp(x64emu_t *emu, uintptr_t fcn) { iFpplp_t fn = (iFpplp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX); }
+void iFppLi(x64emu_t *emu, uintptr_t fcn) { iFppLi_t fn = (iFppLi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int64_t)R_RCX); }
+void iFppLL(x64emu_t *emu, uintptr_t fcn) { iFppLL_t fn = (iFppLL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX); }
 void iFppLp(x64emu_t *emu, uintptr_t fcn) { iFppLp_t fn = (iFppLp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); }
 void iFpppi(x64emu_t *emu, uintptr_t fcn) { iFpppi_t fn = (iFpppi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); }
 void iFpppu(x64emu_t *emu, uintptr_t fcn) { iFpppu_t fn = (iFpppu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); }
@@ -1635,12 +1689,15 @@ void uFppiu(x64emu_t *emu, uintptr_t fcn) { uFppiu_t fn = (uFppiu_t)fcn; R_RAX=(
 void uFpppi(x64emu_t *emu, uintptr_t fcn) { uFpppi_t fn = (uFpppi_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); }
 void UFpipp(x64emu_t *emu, uintptr_t fcn) { UFpipp_t fn = (UFpipp_t)fcn; R_RAX=fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void dFppiL(x64emu_t *emu, uintptr_t fcn) { dFppiL_t fn = (dFppiL_t)fcn; emu->xmm[0].d[0]=fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uintptr_t)R_RCX); }
+void lFEpip(x64emu_t *emu, uintptr_t fcn) { lFEpip_t fn = (lFEpip_t)fcn; R_RAX=(intptr_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX); }
 void lFEppL(x64emu_t *emu, uintptr_t fcn) { lFEppL_t fn = (lFEppL_t)fcn; R_RAX=(intptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); }
 void lFiipL(x64emu_t *emu, uintptr_t fcn) { lFiipL_t fn = (lFiipL_t)fcn; R_RAX=(intptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX); }
 void lFipiI(x64emu_t *emu, uintptr_t fcn) { lFipiI_t fn = (lFipiI_t)fcn; R_RAX=(intptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); }
 void lFipLi(x64emu_t *emu, uintptr_t fcn) { lFipLi_t fn = (lFipLi_t)fcn; R_RAX=(intptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int64_t)R_RCX); }
 void lFipLI(x64emu_t *emu, uintptr_t fcn) { lFipLI_t fn = (lFipLI_t)fcn; R_RAX=(intptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int64_t)R_RCX); }
 void lFipLl(x64emu_t *emu, uintptr_t fcn) { lFipLl_t fn = (lFipLl_t)fcn; R_RAX=(intptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (intptr_t)R_RCX); }
+void lFpili(x64emu_t *emu, uintptr_t fcn) { lFpili_t fn = (lFpili_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (intptr_t)R_RDX, (int64_t)R_RCX); }
+void lFpilp(x64emu_t *emu, uintptr_t fcn) { lFpilp_t fn = (lFpilp_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (intptr_t)R_RDX, (void*)R_RCX); }
 void lFppii(x64emu_t *emu, uintptr_t fcn) { lFppii_t fn = (lFppii_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); }
 void LFpuuu(x64emu_t *emu, uintptr_t fcn) { LFpuuu_t fn = (LFpuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX); }
 void LFpLLp(x64emu_t *emu, uintptr_t fcn) { LFpLLp_t fn = (LFpLLp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); }
@@ -1648,6 +1705,7 @@ void LFpLpp(x64emu_t *emu, uintptr_t fcn) { LFpLpp_t fn = (LFpLpp_t)fcn; R_RAX=(
 void LFppii(x64emu_t *emu, uintptr_t fcn) { LFppii_t fn = (LFppii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); }
 void LFppLL(x64emu_t *emu, uintptr_t fcn) { LFppLL_t fn = (LFppLL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX); }
 void LFppLp(x64emu_t *emu, uintptr_t fcn) { LFppLp_t fn = (LFppLp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); }
+void LFpppp(x64emu_t *emu, uintptr_t fcn) { LFpppp_t fn = (LFpppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void pFEipp(x64emu_t *emu, uintptr_t fcn) { pFEipp_t fn = (pFEipp_t)fcn; R_RAX=(uintptr_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); }
 void pFEupp(x64emu_t *emu, uintptr_t fcn) { pFEupp_t fn = (pFEupp_t)fcn; R_RAX=(uintptr_t)fn(emu, (uint64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); }
 void pFEpii(x64emu_t *emu, uintptr_t fcn) { pFEpii_t fn = (pFEpii_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX); }
@@ -1784,6 +1842,7 @@ void iFpiiuu(x64emu_t *emu, uintptr_t fcn) { iFpiiuu_t fn = (iFpiiuu_t)fcn; R_RA
 void iFpiipi(x64emu_t *emu, uintptr_t fcn) { iFpiipi_t fn = (iFpiipi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8); }
 void iFpiipp(x64emu_t *emu, uintptr_t fcn) { iFpiipp_t fn = (iFpiipp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void iFpipii(x64emu_t *emu, uintptr_t fcn) { iFpipii_t fn = (iFpipii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); }
+void iFpipiL(x64emu_t *emu, uintptr_t fcn) { iFpipiL_t fn = (iFpipiL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (uintptr_t)R_R8); }
 void iFpippi(x64emu_t *emu, uintptr_t fcn) { iFpippi_t fn = (iFpippi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8); }
 void iFpippp(x64emu_t *emu, uintptr_t fcn) { iFpippp_t fn = (iFpippp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void iFpCCCC(x64emu_t *emu, uintptr_t fcn) { iFpCCCC_t fn = (iFpCCCC_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint8_t)R_RDX, (uint8_t)R_RCX, (uint8_t)R_R8); }
@@ -1820,6 +1879,8 @@ void uFuiiiu(x64emu_t *emu, uintptr_t fcn) { uFuiiiu_t fn = (uFuiiiu_t)fcn; R_RA
 void uFpCCCC(x64emu_t *emu, uintptr_t fcn) { uFpCCCC_t fn = (uFpCCCC_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint8_t)R_RDX, (uint8_t)R_RCX, (uint8_t)R_R8); }
 void uFpuuuu(x64emu_t *emu, uintptr_t fcn) { uFpuuuu_t fn = (uFpuuuu_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8); }
 void uFppiip(x64emu_t *emu, uintptr_t fcn) { uFppiip_t fn = (uFppiip_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8); }
+void uFppipp(x64emu_t *emu, uintptr_t fcn) { uFppipp_t fn = (uFppipp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
+void uFpplip(x64emu_t *emu, uintptr_t fcn) { uFpplip_t fn = (uFpplip_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (int64_t)R_RCX, (void*)R_R8); }
 void uFppppp(x64emu_t *emu, uintptr_t fcn) { uFppppp_t fn = (uFppppp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void LFLpppp(x64emu_t *emu, uintptr_t fcn) { LFLpppp_t fn = (LFLpppp_t)fcn; R_RAX=(uintptr_t)fn((uintptr_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void LFpLLLp(x64emu_t *emu, uintptr_t fcn) { LFpLLLp_t fn = (LFpLLLp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (void*)R_R8); }
@@ -1838,6 +1899,7 @@ void pFipipL(x64emu_t *emu, uintptr_t fcn) { pFipipL_t fn = (pFipipL_t)fcn; R_RA
 void pFuiiiu(x64emu_t *emu, uintptr_t fcn) { pFuiiiu_t fn = (pFuiiiu_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8); }
 void pFuiipp(x64emu_t *emu, uintptr_t fcn) { pFuiipp_t fn = (pFuiipp_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void pFpiiuu(x64emu_t *emu, uintptr_t fcn) { pFpiiuu_t fn = (pFpiiuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8); }
+void pFpiipi(x64emu_t *emu, uintptr_t fcn) { pFpiipi_t fn = (pFpiipi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8); }
 void pFpiipp(x64emu_t *emu, uintptr_t fcn) { pFpiipp_t fn = (pFpiipp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void pFpippp(x64emu_t *emu, uintptr_t fcn) { pFpippp_t fn = (pFpippp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void pFpCuup(x64emu_t *emu, uintptr_t fcn) { pFpCuup_t fn = (pFpCuup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8); }
@@ -1911,10 +1973,20 @@ void vFpdddii(x64emu_t *emu, uintptr_t fcn) { vFpdddii_t fn = (vFpdddii_t)fcn; f
 void vFppiiii(x64emu_t *emu, uintptr_t fcn) { vFppiiii_t fn = (vFppiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); }
 void vFppiiip(x64emu_t *emu, uintptr_t fcn) { vFppiiip_t fn = (vFppiiip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9); }
 void vFppiipi(x64emu_t *emu, uintptr_t fcn) { vFppiipi_t fn = (vFppiipi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9); }
+void vFppilpp(x64emu_t *emu, uintptr_t fcn) { vFppilpp_t fn = (vFppilpp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (intptr_t)R_RCX, (void*)R_R8, (void*)R_R9); }
+void vFppippi(x64emu_t *emu, uintptr_t fcn) { vFppippi_t fn = (vFppippi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); }
 void vFppupii(x64emu_t *emu, uintptr_t fcn) { vFppupii_t fn = (vFppupii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9); }
+void vFpplppi(x64emu_t *emu, uintptr_t fcn) { vFpplppi_t fn = (vFpplppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); }
+void vFpplppp(x64emu_t *emu, uintptr_t fcn) { vFpplppp_t fn = (vFpplppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
+void vFppLppi(x64emu_t *emu, uintptr_t fcn) { vFppLppi_t fn = (vFppLppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); }
+void vFppLppp(x64emu_t *emu, uintptr_t fcn) { vFppLppp_t fn = (vFppLppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void vFpppiii(x64emu_t *emu, uintptr_t fcn) { vFpppiii_t fn = (vFpppiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); }
+void vFpppppi(x64emu_t *emu, uintptr_t fcn) { vFpppppi_t fn = (vFpppppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); }
 void vFpppppp(x64emu_t *emu, uintptr_t fcn) { vFpppppp_t fn = (vFpppppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
+void cFppLppi(x64emu_t *emu, uintptr_t fcn) { cFppLppi_t fn = (cFppLppi_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); }
 void iFEiippi(x64emu_t *emu, uintptr_t fcn) { iFEiippi_t fn = (iFEiippi_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8); }
+void iFElpppp(x64emu_t *emu, uintptr_t fcn) { iFElpppp_t fn = (iFElpppp_t)fcn; R_RAX=(int64_t)fn(emu, (intptr_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); }
+void iFEpiipp(x64emu_t *emu, uintptr_t fcn) { iFEpiipp_t fn = (iFEpiipp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void iFEpilpV(x64emu_t *emu, uintptr_t fcn) { iFEpilpV_t fn = (iFEpilpV_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)(R_RSP + 8)); }
 void iFEpippi(x64emu_t *emu, uintptr_t fcn) { iFEpippi_t fn = (iFEpippi_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8); }
 void iFEpuppp(x64emu_t *emu, uintptr_t fcn) { iFEpuppp_t fn = (iFEpuppp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); }
@@ -1923,6 +1995,8 @@ void iFEppppp(x64emu_t *emu, uintptr_t fcn) { iFEppppp_t fn = (iFEppppp_t)fcn; R
 void iFiiiiii(x64emu_t *emu, uintptr_t fcn) { iFiiiiii_t fn = (iFiiiiii_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); }
 void iFiiiiip(x64emu_t *emu, uintptr_t fcn) { iFiiiiip_t fn = (iFiiiiip_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9); }
 void iFiuiipi(x64emu_t *emu, uintptr_t fcn) { iFiuiipi_t fn = (iFiuiipi_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9); }
+void iFipupup(x64emu_t *emu, uintptr_t fcn) { iFipupup_t fn = (iFipupup_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (uint64_t)R_R8, (void*)R_R9); }
+void iFipuppp(x64emu_t *emu, uintptr_t fcn) { iFipuppp_t fn = (iFipuppp_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFuppppp(x64emu_t *emu, uintptr_t fcn) { iFuppppp_t fn = (iFuppppp_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFLppipp(x64emu_t *emu, uintptr_t fcn) { iFLppipp_t fn = (iFLppipp_t)fcn; R_RAX=(int64_t)fn((uintptr_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFpiiiii(x64emu_t *emu, uintptr_t fcn) { iFpiiiii_t fn = (iFpiiiii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); }
@@ -1933,6 +2007,7 @@ void iFpipppp(x64emu_t *emu, uintptr_t fcn) { iFpipppp_t fn = (iFpipppp_t)fcn; R
 void iFpupuui(x64emu_t *emu, uintptr_t fcn) { iFpupuui_t fn = (iFpupuui_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (int64_t)R_R9); }
 void iFppiiuu(x64emu_t *emu, uintptr_t fcn) { iFppiiuu_t fn = (iFppiiuu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9); }
 void iFppiipi(x64emu_t *emu, uintptr_t fcn) { iFppiipi_t fn = (iFppiipi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9); }
+void iFppipii(x64emu_t *emu, uintptr_t fcn) { iFppipii_t fn = (iFppipii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9); }
 void iFppipiL(x64emu_t *emu, uintptr_t fcn) { iFppipiL_t fn = (iFppipiL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (uintptr_t)R_R9); }
 void iFppIppp(x64emu_t *emu, uintptr_t fcn) { iFppIppp_t fn = (iFppIppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFppuiii(x64emu_t *emu, uintptr_t fcn) { iFppuiii_t fn = (iFppuiii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); }
@@ -1940,11 +2015,13 @@ void iFppuiiL(x64emu_t *emu, uintptr_t fcn) { iFppuiiL_t fn = (iFppuiiL_t)fcn; R
 void iFppuIII(x64emu_t *emu, uintptr_t fcn) { iFppuIII_t fn = (iFppuIII_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); }
 void iFppuupp(x64emu_t *emu, uintptr_t fcn) { iFppuupp_t fn = (iFppuupp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFppupip(x64emu_t *emu, uintptr_t fcn) { iFppupip_t fn = (iFppupip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9); }
+void iFpplppi(x64emu_t *emu, uintptr_t fcn) { iFpplppi_t fn = (iFpplppi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); }
 void iFppLupp(x64emu_t *emu, uintptr_t fcn) { iFppLupp_t fn = (iFppLupp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFpppiuu(x64emu_t *emu, uintptr_t fcn) { iFpppiuu_t fn = (iFpppiuu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9); }
 void iFpppipi(x64emu_t *emu, uintptr_t fcn) { iFpppipi_t fn = (iFpppipi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9); }
 void iFpppipp(x64emu_t *emu, uintptr_t fcn) { iFpppipp_t fn = (iFpppipp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFpppuii(x64emu_t *emu, uintptr_t fcn) { iFpppuii_t fn = (iFpppuii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); }
+void iFpppupu(x64emu_t *emu, uintptr_t fcn) { iFpppupu_t fn = (iFpppupu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (void*)R_R8, (uint64_t)R_R9); }
 void iFppppii(x64emu_t *emu, uintptr_t fcn) { iFppppii_t fn = (iFppppii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9); }
 void iFppppip(x64emu_t *emu, uintptr_t fcn) { iFppppip_t fn = (iFppppip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9); }
 void iFppppup(x64emu_t *emu, uintptr_t fcn) { iFppppup_t fn = (iFppppup_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint64_t)R_R8, (void*)R_R9); }
@@ -2015,7 +2092,10 @@ void vFpiiliip(x64emu_t *emu, uintptr_t fcn) { vFpiiliip_t fn = (vFpiiliip_t)fcn
 void vFpipipii(x64emu_t *emu, uintptr_t fcn) { vFpipipii_t fn = (vFpipipii_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); }
 void vFpddiidd(x64emu_t *emu, uintptr_t fcn) { vFpddiidd_t fn = (vFpddiidd_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], (int64_t)R_RSI, (int64_t)R_RDX, emu->xmm[2].d[0], emu->xmm[3].d[0]); }
 void vFppiiipi(x64emu_t *emu, uintptr_t fcn) { vFppiiipi_t fn = (vFppiiipi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); }
+void vFppilppi(x64emu_t *emu, uintptr_t fcn) { vFppilppi_t fn = (vFppilppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (intptr_t)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); }
 void vFppipppp(x64emu_t *emu, uintptr_t fcn) { vFppipppp_t fn = (vFppipppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
+void vFppLpppi(x64emu_t *emu, uintptr_t fcn) { vFppLpppi_t fn = (vFppLpppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); }
+void vFppLpppp(x64emu_t *emu, uintptr_t fcn) { vFppLpppp_t fn = (vFppLpppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void vFpppiiii(x64emu_t *emu, uintptr_t fcn) { vFpppiiii_t fn = (vFpppiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); }
 void vFpppuuuu(x64emu_t *emu, uintptr_t fcn) { vFpppuuuu_t fn = (vFpppuuuu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8)); }
 void vFppppipi(x64emu_t *emu, uintptr_t fcn) { vFppppipi_t fn = (vFppppipi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); }
@@ -2035,8 +2115,10 @@ void iFppiiiip(x64emu_t *emu, uintptr_t fcn) { iFppiiiip_t fn = (iFppiiiip_t)fcn
 void iFppiiuui(x64emu_t *emu, uintptr_t fcn) { iFppiiuui_t fn = (iFppiiuui_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(int64_t*)(R_RSP + 8)); }
 void iFppiipii(x64emu_t *emu, uintptr_t fcn) { iFppiipii_t fn = (iFppiipii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); }
 void iFppiipiL(x64emu_t *emu, uintptr_t fcn) { iFppiipiL_t fn = (iFppiipiL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9, *(uintptr_t*)(R_RSP + 8)); }
+void iFppipiip(x64emu_t *emu, uintptr_t fcn) { iFppipiip_t fn = (iFppipiip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); }
 void iFppipipi(x64emu_t *emu, uintptr_t fcn) { iFppipipi_t fn = (iFppipipi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); }
 void iFppippip(x64emu_t *emu, uintptr_t fcn) { iFppippip_t fn = (iFppippip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); }
+void iFppipppi(x64emu_t *emu, uintptr_t fcn) { iFppipppi_t fn = (iFppipppi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); }
 void iFppipppp(x64emu_t *emu, uintptr_t fcn) { iFppipppp_t fn = (iFppipppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void iFppuipiL(x64emu_t *emu, uintptr_t fcn) { iFppuipiL_t fn = (iFppuipiL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9, *(uintptr_t*)(R_RSP + 8)); }
 void iFpppiiii(x64emu_t *emu, uintptr_t fcn) { iFpppiiii_t fn = (iFpppiiii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); }
@@ -2047,6 +2129,7 @@ void iFpppiuwu(x64emu_t *emu, uintptr_t fcn) { iFpppiuwu_t fn = (iFpppiuwu_t)fcn
 void iFpppuiii(x64emu_t *emu, uintptr_t fcn) { iFpppuiii_t fn = (iFpppuiii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); }
 void iFppppiii(x64emu_t *emu, uintptr_t fcn) { iFppppiii_t fn = (iFppppiii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); }
 void iFppppdpi(x64emu_t *emu, uintptr_t fcn) { iFppppdpi_t fn = (iFppppdpi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, emu->xmm[0].d[0], (void*)R_R8, (int64_t)R_R9); }
+void iFpppppip(x64emu_t *emu, uintptr_t fcn) { iFpppppip_t fn = (iFpppppip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); }
 void iFppppppp(x64emu_t *emu, uintptr_t fcn) { iFppppppp_t fn = (iFppppppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void uFuippppp(x64emu_t *emu, uintptr_t fcn) { uFuippppp_t fn = (uFuippppp_t)fcn; R_RAX=(uint64_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void pFEpLiiiI(x64emu_t *emu, uintptr_t fcn) { pFEpLiiiI_t fn = (pFEpLiiiI_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (uintptr_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); }
@@ -2085,9 +2168,13 @@ void vFffffffff(x64emu_t *emu, uintptr_t fcn) { vFffffffff_t fn = (vFffffffff_t)
 void vFpippiiuu(x64emu_t *emu, uintptr_t fcn) { vFpippiiuu_t fn = (vFpippiiuu_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16)); }
 void vFpippiipi(x64emu_t *emu, uintptr_t fcn) { vFpippiipi_t fn = (vFpippiipi_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); }
 void vFppiiipii(x64emu_t *emu, uintptr_t fcn) { vFppiiipii_t fn = (vFppiiipii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); }
+void vFppippppi(x64emu_t *emu, uintptr_t fcn) { vFppippppi_t fn = (vFppippppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); }
+void vFpplppppi(x64emu_t *emu, uintptr_t fcn) { vFpplppppi_t fn = (vFpplppppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); }
+void vFpplppppp(x64emu_t *emu, uintptr_t fcn) { vFpplppppp_t fn = (vFpplppppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); }
 void vFppppiipi(x64emu_t *emu, uintptr_t fcn) { vFppppiipi_t fn = (vFppppiipi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); }
 void iFEpippppp(x64emu_t *emu, uintptr_t fcn) { iFEpippppp_t fn = (iFEpippppp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void iFEpuuLppp(x64emu_t *emu, uintptr_t fcn) { iFEpuuLppp_t fn = (iFEpuuLppp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
+void iFEppppipp(x64emu_t *emu, uintptr_t fcn) { iFEppppipp_t fn = (iFEppppipp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void iFiiiiiiip(x64emu_t *emu, uintptr_t fcn) { iFiiiiiiip_t fn = (iFiiiiiiip_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); }
 void iFiiupiupi(x64emu_t *emu, uintptr_t fcn) { iFiiupiupi_t fn = (iFiiupiupi_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (uint64_t)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); }
 void iFuiifpppp(x64emu_t *emu, uintptr_t fcn) { iFuiifpppp_t fn = (iFuiifpppp_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, emu->xmm[0].f[0], (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
@@ -2126,6 +2213,7 @@ void vFddddddddd(x64emu_t *emu, uintptr_t fcn) { vFddddddddd_t fn = (vFddddddddd
 void vFpipiuiipp(x64emu_t *emu, uintptr_t fcn) { vFpipiuiipp_t fn = (vFpipiuiipp_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); }
 void vFpipppiipi(x64emu_t *emu, uintptr_t fcn) { vFpipppiipi_t fn = (vFpipppiipi_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); }
 void vFppiiipiii(x64emu_t *emu, uintptr_t fcn) { vFppiiipiii_t fn = (vFppiiipiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); }
+void vFpplpppppi(x64emu_t *emu, uintptr_t fcn) { vFpplpppppi_t fn = (vFpplpppppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); }
 void vFpppppippp(x64emu_t *emu, uintptr_t fcn) { vFpppppippp_t fn = (vFpppppippp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); }
 void iFEpiiiiipi(x64emu_t *emu, uintptr_t fcn) { iFEpiiiiipi_t fn = (iFEpiiiiipi_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); }
 void iFEpppipppp(x64emu_t *emu, uintptr_t fcn) { iFEpppipppp_t fn = (iFEpppipppp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); }
@@ -2246,6 +2334,7 @@ void iFEpLvvpp(x64emu_t *emu, uintptr_t fcn) { iFEpLpp_t fn = (iFEpLpp_t)fcn; R_
 void iFEpuvvppp(x64emu_t *emu, uintptr_t fcn) { iFEpuppp_t fn = (iFEpuppp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 
 int isSimpleWrapper(wrapper_t fun) {
+	if (fun == &iF) return 1;
 	if (fun == &vFv) return 1;
 	if (fun == &vFi) return 1;
 	if (fun == &vFu) return 1;
@@ -2419,6 +2508,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &vFuff) return 1;
 	if (fun == &vFudd) return 1;
 	if (fun == &vFupi) return 1;
+	if (fun == &vFupu) return 1;
 	if (fun == &vFfff) return 1;
 	if (fun == &vFfpp) return 1;
 	if (fun == &vFddd) return 1;
@@ -2481,6 +2571,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFppC) return 1;
 	if (fun == &iFppu) return 1;
 	if (fun == &iFppd) return 1;
+	if (fun == &iFppl) return 1;
 	if (fun == &iFppL) return 1;
 	if (fun == &iFppp) return 1;
 	if (fun == &IFiIi) return 1;
@@ -2525,6 +2616,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &LFpLp) return 1;
 	if (fun == &LFppi) return 1;
 	if (fun == &LFppL) return 1;
+	if (fun == &pFiip) return 1;
 	if (fun == &pFipi) return 1;
 	if (fun == &pFipL) return 1;
 	if (fun == &pFipp) return 1;
@@ -2535,6 +2627,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &pFUpi) return 1;
 	if (fun == &pFpii) return 1;
 	if (fun == &pFpiu) return 1;
+	if (fun == &pFpil) return 1;
 	if (fun == &pFpiL) return 1;
 	if (fun == &pFpip) return 1;
 	if (fun == &pFpCC) return 1;
@@ -2551,6 +2644,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &pFppi) return 1;
 	if (fun == &pFppu) return 1;
 	if (fun == &pFppf) return 1;
+	if (fun == &pFppl) return 1;
 	if (fun == &pFppL) return 1;
 	if (fun == &pFppp) return 1;
 	if (fun == &vFiiii) return 1;
@@ -2624,6 +2718,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFippp) return 1;
 	if (fun == &iFuipp) return 1;
 	if (fun == &iFuuff) return 1;
+	if (fun == &iFuppi) return 1;
 	if (fun == &iFuppp) return 1;
 	if (fun == &iFpiii) return 1;
 	if (fun == &iFpiiu) return 1;
@@ -2659,6 +2754,8 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFppup) return 1;
 	if (fun == &iFppll) return 1;
 	if (fun == &iFpplp) return 1;
+	if (fun == &iFppLi) return 1;
+	if (fun == &iFppLL) return 1;
 	if (fun == &iFppLp) return 1;
 	if (fun == &iFpppi) return 1;
 	if (fun == &iFpppu) return 1;
@@ -2680,6 +2777,8 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &lFipLi) return 1;
 	if (fun == &lFipLI) return 1;
 	if (fun == &lFipLl) return 1;
+	if (fun == &lFpili) return 1;
+	if (fun == &lFpilp) return 1;
 	if (fun == &lFppii) return 1;
 	if (fun == &LFpuuu) return 1;
 	if (fun == &LFpLLp) return 1;
@@ -2687,6 +2786,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &LFppii) return 1;
 	if (fun == &LFppLL) return 1;
 	if (fun == &LFppLp) return 1;
+	if (fun == &LFpppp) return 1;
 	if (fun == &pFiiiu) return 1;
 	if (fun == &pFiiup) return 1;
 	if (fun == &pFippL) return 1;
@@ -2798,6 +2898,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpiipi) return 1;
 	if (fun == &iFpiipp) return 1;
 	if (fun == &iFpipii) return 1;
+	if (fun == &iFpipiL) return 1;
 	if (fun == &iFpippi) return 1;
 	if (fun == &iFpippp) return 1;
 	if (fun == &iFpCCCC) return 1;
@@ -2833,6 +2934,8 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &uFpCCCC) return 1;
 	if (fun == &uFpuuuu) return 1;
 	if (fun == &uFppiip) return 1;
+	if (fun == &uFppipp) return 1;
+	if (fun == &uFpplip) return 1;
 	if (fun == &uFppppp) return 1;
 	if (fun == &LFLpppp) return 1;
 	if (fun == &LFpLLLp) return 1;
@@ -2844,6 +2947,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &pFuiiiu) return 1;
 	if (fun == &pFuiipp) return 1;
 	if (fun == &pFpiiuu) return 1;
+	if (fun == &pFpiipi) return 1;
 	if (fun == &pFpiipp) return 1;
 	if (fun == &pFpippp) return 1;
 	if (fun == &pFpCuup) return 1;
@@ -2910,12 +3014,22 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &vFppiiii) return 1;
 	if (fun == &vFppiiip) return 1;
 	if (fun == &vFppiipi) return 1;
+	if (fun == &vFppilpp) return 1;
+	if (fun == &vFppippi) return 1;
 	if (fun == &vFppupii) return 1;
+	if (fun == &vFpplppi) return 1;
+	if (fun == &vFpplppp) return 1;
+	if (fun == &vFppLppi) return 1;
+	if (fun == &vFppLppp) return 1;
 	if (fun == &vFpppiii) return 1;
+	if (fun == &vFpppppi) return 1;
 	if (fun == &vFpppppp) return 1;
+	if (fun == &cFppLppi) return 1;
 	if (fun == &iFiiiiii) return 1;
 	if (fun == &iFiiiiip) return 1;
 	if (fun == &iFiuiipi) return 1;
+	if (fun == &iFipupup) return 1;
+	if (fun == &iFipuppp) return 1;
 	if (fun == &iFuppppp) return 1;
 	if (fun == &iFLppipp) return 1;
 	if (fun == &iFpiiiii) return 1;
@@ -2926,6 +3040,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpupuui) return 1;
 	if (fun == &iFppiiuu) return 1;
 	if (fun == &iFppiipi) return 1;
+	if (fun == &iFppipii) return 1;
 	if (fun == &iFppipiL) return 1;
 	if (fun == &iFppIppp) return 1;
 	if (fun == &iFppuiii) return 1;
@@ -2933,11 +3048,13 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFppuIII) return 1;
 	if (fun == &iFppuupp) return 1;
 	if (fun == &iFppupip) return 1;
+	if (fun == &iFpplppi) return 1;
 	if (fun == &iFppLupp) return 1;
 	if (fun == &iFpppiuu) return 1;
 	if (fun == &iFpppipi) return 1;
 	if (fun == &iFpppipp) return 1;
 	if (fun == &iFpppuii) return 1;
+	if (fun == &iFpppupu) return 1;
 	if (fun == &iFppppii) return 1;
 	if (fun == &iFppppip) return 1;
 	if (fun == &iFppppup) return 1;
diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h
index d2ee49d8..ffd471dd 100644
--- a/src/wrapped/generated/wrapper.h
+++ b/src/wrapped/generated/wrapper.h
@@ -28,6 +28,7 @@ typedef void (*wrapper_t)(x64emu_t* emu, uintptr_t fnc);
 // M = ... automatically sending 2 args
 // H = Huge 128bits value/struct
 
+void iF(x64emu_t *emu, uintptr_t fnc);
 void vFE(x64emu_t *emu, uintptr_t fnc);
 void vFv(x64emu_t *emu, uintptr_t fnc);
 void vFi(x64emu_t *emu, uintptr_t fnc);
@@ -87,6 +88,7 @@ void pFu(x64emu_t *emu, uintptr_t fnc);
 void pFl(x64emu_t *emu, uintptr_t fnc);
 void pFL(x64emu_t *emu, uintptr_t fnc);
 void pFp(x64emu_t *emu, uintptr_t fnc);
+void pFV(x64emu_t *emu, uintptr_t fnc);
 void HFi(x64emu_t *emu, uintptr_t fnc);
 void HFp(x64emu_t *emu, uintptr_t fnc);
 void vFEp(x64emu_t *emu, uintptr_t fnc);
@@ -228,6 +230,7 @@ void vFuup(x64emu_t *emu, uintptr_t fnc);
 void vFuff(x64emu_t *emu, uintptr_t fnc);
 void vFudd(x64emu_t *emu, uintptr_t fnc);
 void vFupi(x64emu_t *emu, uintptr_t fnc);
+void vFupu(x64emu_t *emu, uintptr_t fnc);
 void vFfff(x64emu_t *emu, uintptr_t fnc);
 void vFfpp(x64emu_t *emu, uintptr_t fnc);
 void vFddd(x64emu_t *emu, uintptr_t fnc);
@@ -301,6 +304,7 @@ void iFppI(x64emu_t *emu, uintptr_t fnc);
 void iFppC(x64emu_t *emu, uintptr_t fnc);
 void iFppu(x64emu_t *emu, uintptr_t fnc);
 void iFppd(x64emu_t *emu, uintptr_t fnc);
+void iFppl(x64emu_t *emu, uintptr_t fnc);
 void iFppL(x64emu_t *emu, uintptr_t fnc);
 void iFppp(x64emu_t *emu, uintptr_t fnc);
 void iFSpL(x64emu_t *emu, uintptr_t fnc);
@@ -355,6 +359,7 @@ void LFSpL(x64emu_t *emu, uintptr_t fnc);
 void pFEip(x64emu_t *emu, uintptr_t fnc);
 void pFEpi(x64emu_t *emu, uintptr_t fnc);
 void pFEpp(x64emu_t *emu, uintptr_t fnc);
+void pFiip(x64emu_t *emu, uintptr_t fnc);
 void pFipi(x64emu_t *emu, uintptr_t fnc);
 void pFipL(x64emu_t *emu, uintptr_t fnc);
 void pFipp(x64emu_t *emu, uintptr_t fnc);
@@ -365,6 +370,7 @@ void pFupL(x64emu_t *emu, uintptr_t fnc);
 void pFUpi(x64emu_t *emu, uintptr_t fnc);
 void pFpii(x64emu_t *emu, uintptr_t fnc);
 void pFpiu(x64emu_t *emu, uintptr_t fnc);
+void pFpil(x64emu_t *emu, uintptr_t fnc);
 void pFpiL(x64emu_t *emu, uintptr_t fnc);
 void pFpip(x64emu_t *emu, uintptr_t fnc);
 void pFpCC(x64emu_t *emu, uintptr_t fnc);
@@ -381,6 +387,7 @@ void pFpLp(x64emu_t *emu, uintptr_t fnc);
 void pFppi(x64emu_t *emu, uintptr_t fnc);
 void pFppu(x64emu_t *emu, uintptr_t fnc);
 void pFppf(x64emu_t *emu, uintptr_t fnc);
+void pFppl(x64emu_t *emu, uintptr_t fnc);
 void pFppL(x64emu_t *emu, uintptr_t fnc);
 void pFppp(x64emu_t *emu, uintptr_t fnc);
 void pFpOM(x64emu_t *emu, uintptr_t fnc);
@@ -476,6 +483,7 @@ void iFippL(x64emu_t *emu, uintptr_t fnc);
 void iFippp(x64emu_t *emu, uintptr_t fnc);
 void iFuipp(x64emu_t *emu, uintptr_t fnc);
 void iFuuff(x64emu_t *emu, uintptr_t fnc);
+void iFuppi(x64emu_t *emu, uintptr_t fnc);
 void iFuppp(x64emu_t *emu, uintptr_t fnc);
 void iFpiii(x64emu_t *emu, uintptr_t fnc);
 void iFpiiu(x64emu_t *emu, uintptr_t fnc);
@@ -512,6 +520,8 @@ void iFppuu(x64emu_t *emu, uintptr_t fnc);
 void iFppup(x64emu_t *emu, uintptr_t fnc);
 void iFppll(x64emu_t *emu, uintptr_t fnc);
 void iFpplp(x64emu_t *emu, uintptr_t fnc);
+void iFppLi(x64emu_t *emu, uintptr_t fnc);
+void iFppLL(x64emu_t *emu, uintptr_t fnc);
 void iFppLp(x64emu_t *emu, uintptr_t fnc);
 void iFpppi(x64emu_t *emu, uintptr_t fnc);
 void iFpppu(x64emu_t *emu, uintptr_t fnc);
@@ -530,12 +540,15 @@ void uFppiu(x64emu_t *emu, uintptr_t fnc);
 void uFpppi(x64emu_t *emu, uintptr_t fnc);
 void UFpipp(x64emu_t *emu, uintptr_t fnc);
 void dFppiL(x64emu_t *emu, uintptr_t fnc);
+void lFEpip(x64emu_t *emu, uintptr_t fnc);
 void lFEppL(x64emu_t *emu, uintptr_t fnc);
 void lFiipL(x64emu_t *emu, uintptr_t fnc);
 void lFipiI(x64emu_t *emu, uintptr_t fnc);
 void lFipLi(x64emu_t *emu, uintptr_t fnc);
 void lFipLI(x64emu_t *emu, uintptr_t fnc);
 void lFipLl(x64emu_t *emu, uintptr_t fnc);
+void lFpili(x64emu_t *emu, uintptr_t fnc);
+void lFpilp(x64emu_t *emu, uintptr_t fnc);
 void lFppii(x64emu_t *emu, uintptr_t fnc);
 void LFpuuu(x64emu_t *emu, uintptr_t fnc);
 void LFpLLp(x64emu_t *emu, uintptr_t fnc);
@@ -543,6 +556,7 @@ void LFpLpp(x64emu_t *emu, uintptr_t fnc);
 void LFppii(x64emu_t *emu, uintptr_t fnc);
 void LFppLL(x64emu_t *emu, uintptr_t fnc);
 void LFppLp(x64emu_t *emu, uintptr_t fnc);
+void LFpppp(x64emu_t *emu, uintptr_t fnc);
 void pFEipp(x64emu_t *emu, uintptr_t fnc);
 void pFEupp(x64emu_t *emu, uintptr_t fnc);
 void pFEpii(x64emu_t *emu, uintptr_t fnc);
@@ -679,6 +693,7 @@ void iFpiiuu(x64emu_t *emu, uintptr_t fnc);
 void iFpiipi(x64emu_t *emu, uintptr_t fnc);
 void iFpiipp(x64emu_t *emu, uintptr_t fnc);
 void iFpipii(x64emu_t *emu, uintptr_t fnc);
+void iFpipiL(x64emu_t *emu, uintptr_t fnc);
 void iFpippi(x64emu_t *emu, uintptr_t fnc);
 void iFpippp(x64emu_t *emu, uintptr_t fnc);
 void iFpCCCC(x64emu_t *emu, uintptr_t fnc);
@@ -715,6 +730,8 @@ void uFuiiiu(x64emu_t *emu, uintptr_t fnc);
 void uFpCCCC(x64emu_t *emu, uintptr_t fnc);
 void uFpuuuu(x64emu_t *emu, uintptr_t fnc);
 void uFppiip(x64emu_t *emu, uintptr_t fnc);
+void uFppipp(x64emu_t *emu, uintptr_t fnc);
+void uFpplip(x64emu_t *emu, uintptr_t fnc);
 void uFppppp(x64emu_t *emu, uintptr_t fnc);
 void LFLpppp(x64emu_t *emu, uintptr_t fnc);
 void LFpLLLp(x64emu_t *emu, uintptr_t fnc);
@@ -733,6 +750,7 @@ void pFipipL(x64emu_t *emu, uintptr_t fnc);
 void pFuiiiu(x64emu_t *emu, uintptr_t fnc);
 void pFuiipp(x64emu_t *emu, uintptr_t fnc);
 void pFpiiuu(x64emu_t *emu, uintptr_t fnc);
+void pFpiipi(x64emu_t *emu, uintptr_t fnc);
 void pFpiipp(x64emu_t *emu, uintptr_t fnc);
 void pFpippp(x64emu_t *emu, uintptr_t fnc);
 void pFpCuup(x64emu_t *emu, uintptr_t fnc);
@@ -806,10 +824,20 @@ void vFpdddii(x64emu_t *emu, uintptr_t fnc);
 void vFppiiii(x64emu_t *emu, uintptr_t fnc);
 void vFppiiip(x64emu_t *emu, uintptr_t fnc);
 void vFppiipi(x64emu_t *emu, uintptr_t fnc);
+void vFppilpp(x64emu_t *emu, uintptr_t fnc);
+void vFppippi(x64emu_t *emu, uintptr_t fnc);
 void vFppupii(x64emu_t *emu, uintptr_t fnc);
+void vFpplppi(x64emu_t *emu, uintptr_t fnc);
+void vFpplppp(x64emu_t *emu, uintptr_t fnc);
+void vFppLppi(x64emu_t *emu, uintptr_t fnc);
+void vFppLppp(x64emu_t *emu, uintptr_t fnc);
 void vFpppiii(x64emu_t *emu, uintptr_t fnc);
+void vFpppppi(x64emu_t *emu, uintptr_t fnc);
 void vFpppppp(x64emu_t *emu, uintptr_t fnc);
+void cFppLppi(x64emu_t *emu, uintptr_t fnc);
 void iFEiippi(x64emu_t *emu, uintptr_t fnc);
+void iFElpppp(x64emu_t *emu, uintptr_t fnc);
+void iFEpiipp(x64emu_t *emu, uintptr_t fnc);
 void iFEpilpV(x64emu_t *emu, uintptr_t fnc);
 void iFEpippi(x64emu_t *emu, uintptr_t fnc);
 void iFEpuppp(x64emu_t *emu, uintptr_t fnc);
@@ -818,6 +846,8 @@ void iFEppppp(x64emu_t *emu, uintptr_t fnc);
 void iFiiiiii(x64emu_t *emu, uintptr_t fnc);
 void iFiiiiip(x64emu_t *emu, uintptr_t fnc);
 void iFiuiipi(x64emu_t *emu, uintptr_t fnc);
+void iFipupup(x64emu_t *emu, uintptr_t fnc);
+void iFipuppp(x64emu_t *emu, uintptr_t fnc);
 void iFuppppp(x64emu_t *emu, uintptr_t fnc);
 void iFLppipp(x64emu_t *emu, uintptr_t fnc);
 void iFpiiiii(x64emu_t *emu, uintptr_t fnc);
@@ -828,6 +858,7 @@ void iFpipppp(x64emu_t *emu, uintptr_t fnc);
 void iFpupuui(x64emu_t *emu, uintptr_t fnc);
 void iFppiiuu(x64emu_t *emu, uintptr_t fnc);
 void iFppiipi(x64emu_t *emu, uintptr_t fnc);
+void iFppipii(x64emu_t *emu, uintptr_t fnc);
 void iFppipiL(x64emu_t *emu, uintptr_t fnc);
 void iFppIppp(x64emu_t *emu, uintptr_t fnc);
 void iFppuiii(x64emu_t *emu, uintptr_t fnc);
@@ -835,11 +866,13 @@ void iFppuiiL(x64emu_t *emu, uintptr_t fnc);
 void iFppuIII(x64emu_t *emu, uintptr_t fnc);
 void iFppuupp(x64emu_t *emu, uintptr_t fnc);
 void iFppupip(x64emu_t *emu, uintptr_t fnc);
+void iFpplppi(x64emu_t *emu, uintptr_t fnc);
 void iFppLupp(x64emu_t *emu, uintptr_t fnc);
 void iFpppiuu(x64emu_t *emu, uintptr_t fnc);
 void iFpppipi(x64emu_t *emu, uintptr_t fnc);
 void iFpppipp(x64emu_t *emu, uintptr_t fnc);
 void iFpppuii(x64emu_t *emu, uintptr_t fnc);
+void iFpppupu(x64emu_t *emu, uintptr_t fnc);
 void iFppppii(x64emu_t *emu, uintptr_t fnc);
 void iFppppip(x64emu_t *emu, uintptr_t fnc);
 void iFppppup(x64emu_t *emu, uintptr_t fnc);
@@ -910,7 +943,10 @@ void vFpiiliip(x64emu_t *emu, uintptr_t fnc);
 void vFpipipii(x64emu_t *emu, uintptr_t fnc);
 void vFpddiidd(x64emu_t *emu, uintptr_t fnc);
 void vFppiiipi(x64emu_t *emu, uintptr_t fnc);
+void vFppilppi(x64emu_t *emu, uintptr_t fnc);
 void vFppipppp(x64emu_t *emu, uintptr_t fnc);
+void vFppLpppi(x64emu_t *emu, uintptr_t fnc);
+void vFppLpppp(x64emu_t *emu, uintptr_t fnc);
 void vFpppiiii(x64emu_t *emu, uintptr_t fnc);
 void vFpppuuuu(x64emu_t *emu, uintptr_t fnc);
 void vFppppipi(x64emu_t *emu, uintptr_t fnc);
@@ -930,8 +966,10 @@ void iFppiiiip(x64emu_t *emu, uintptr_t fnc);
 void iFppiiuui(x64emu_t *emu, uintptr_t fnc);
 void iFppiipii(x64emu_t *emu, uintptr_t fnc);
 void iFppiipiL(x64emu_t *emu, uintptr_t fnc);
+void iFppipiip(x64emu_t *emu, uintptr_t fnc);
 void iFppipipi(x64emu_t *emu, uintptr_t fnc);
 void iFppippip(x64emu_t *emu, uintptr_t fnc);
+void iFppipppi(x64emu_t *emu, uintptr_t fnc);
 void iFppipppp(x64emu_t *emu, uintptr_t fnc);
 void iFppuipiL(x64emu_t *emu, uintptr_t fnc);
 void iFpppiiii(x64emu_t *emu, uintptr_t fnc);
@@ -942,6 +980,7 @@ void iFpppiuwu(x64emu_t *emu, uintptr_t fnc);
 void iFpppuiii(x64emu_t *emu, uintptr_t fnc);
 void iFppppiii(x64emu_t *emu, uintptr_t fnc);
 void iFppppdpi(x64emu_t *emu, uintptr_t fnc);
+void iFpppppip(x64emu_t *emu, uintptr_t fnc);
 void iFppppppp(x64emu_t *emu, uintptr_t fnc);
 void uFuippppp(x64emu_t *emu, uintptr_t fnc);
 void pFEpLiiiI(x64emu_t *emu, uintptr_t fnc);
@@ -980,9 +1019,13 @@ void vFffffffff(x64emu_t *emu, uintptr_t fnc);
 void vFpippiiuu(x64emu_t *emu, uintptr_t fnc);
 void vFpippiipi(x64emu_t *emu, uintptr_t fnc);
 void vFppiiipii(x64emu_t *emu, uintptr_t fnc);
+void vFppippppi(x64emu_t *emu, uintptr_t fnc);
+void vFpplppppi(x64emu_t *emu, uintptr_t fnc);
+void vFpplppppp(x64emu_t *emu, uintptr_t fnc);
 void vFppppiipi(x64emu_t *emu, uintptr_t fnc);
 void iFEpippppp(x64emu_t *emu, uintptr_t fnc);
 void iFEpuuLppp(x64emu_t *emu, uintptr_t fnc);
+void iFEppppipp(x64emu_t *emu, uintptr_t fnc);
 void iFiiiiiiip(x64emu_t *emu, uintptr_t fnc);
 void iFiiupiupi(x64emu_t *emu, uintptr_t fnc);
 void iFuiifpppp(x64emu_t *emu, uintptr_t fnc);
@@ -1021,6 +1064,7 @@ void vFddddddddd(x64emu_t *emu, uintptr_t fnc);
 void vFpipiuiipp(x64emu_t *emu, uintptr_t fnc);
 void vFpipppiipi(x64emu_t *emu, uintptr_t fnc);
 void vFppiiipiii(x64emu_t *emu, uintptr_t fnc);
+void vFpplpppppi(x64emu_t *emu, uintptr_t fnc);
 void vFpppppippp(x64emu_t *emu, uintptr_t fnc);
 void iFEpiiiiipi(x64emu_t *emu, uintptr_t fnc);
 void iFEpppipppp(x64emu_t *emu, uintptr_t fnc);
diff --git a/src/wrapped/wrappedcrypto.c b/src/wrapped/wrappedcrypto.c
new file mode 100755
index 00000000..1cfcf62f
--- /dev/null
+++ b/src/wrapped/wrappedcrypto.c
@@ -0,0 +1,343 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#define _GNU_SOURCE         /* See feature_test_macros(7) */
+#include <dlfcn.h>
+
+#include "wrappedlibs.h"
+
+#include "debug.h"
+#include "wrapper.h"
+#include "bridge.h"
+#include "librarian/library_private.h"
+#include "x64emu.h"
+#include "emu/x64emu_private.h"
+#include "callback.h"
+#include "librarian.h"
+#include "box64context.h"
+#include "emu/x64emu_private.h"
+#include "callback.h"
+
+const char* cryptoName = "libcrypto.so.1.0.0";
+#define LIBNAME crypto
+#define ALTNAME "libcrypto.so.1.0.2"
+#define ALTNAME2 "libcrypto.so.1.1"
+
+static library_t* my_lib = NULL;
+
+typedef void        (*vFp_t)        (void*);
+typedef void*       (*pFp_t)        (void*);
+typedef void        (*vFpp_t)       (void*, void*);
+typedef void*       (*pFpppp_t)     (void*, void*, void*, void*);
+typedef int32_t     (*iFpiipp_t)    (void*, int32_t, int32_t, void*, void*);
+typedef int32_t     (*iFpplppi_t)   (void*, void*, long, void*, void*, int32_t);
+typedef int32_t     (*iFppppipp_t)  (void*, void*, void*, void*, int, void*, void*);
+
+#define SUPER() \
+    GO(ENGINE_ctrl, iFpiipp_t)                      \
+    GO(ENGINE_ctrl_cmd, iFpplppi_t)                 \
+    GO(CRYPTO_set_id_callback, vFp_t)               \
+    GO(CRYPTO_set_locking_callback, vFp_t)          \
+    GO(PEM_read_bio_DSAPrivateKey, pFpppp_t)        \
+    GO(PEM_read_bio_DSA_PUBKEY, pFpppp_t)           \
+    GO(PEM_read_bio_RSAPrivateKey, pFpppp_t)        \
+    GO(PEM_read_bio_RSA_PUBKEY, pFpppp_t)           \
+    GO(PEM_read_bio_ECPrivateKey, pFpppp_t)         \
+    GO(PEM_read_bio_EC_PUBKEY, pFpppp_t)            \
+    GO(PEM_write_bio_DSAPrivateKey, iFppppipp_t)    \
+    GO(PEM_write_bio_RSAPrivateKey, iFppppipp_t)    \
+    GO(PEM_write_bio_ECPrivateKey, iFppppipp_t)     \
+    GO(sk_new, pFp_t)                               \
+    GO(sk_pop_free, vFpp_t)
+
+typedef struct crypto_my_s {
+    // functions
+    #define GO(A, B)    B   A;
+    SUPER()
+    #undef GO
+} crypto_my_t;
+
+void* getCryptoMy(library_t* lib)
+{
+    crypto_my_t* my = (crypto_my_t*)calloc(1, sizeof(crypto_my_t));
+    #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A);
+    SUPER()
+    #undef GO
+    return my;
+}
+#undef SUPER
+
+void freeCryptoMy(void* lib)
+{
+    //crypto_my_t *my = (crypto_my_t *)lib;
+}
+
+// utility functions
+#define SUPER() \
+GO(0)   \
+GO(1)   \
+GO(2)   \
+GO(3)   \
+GO(4)
+
+// ENGINE_ctrl_cb
+#define GO(A)   \
+static uintptr_t my_ENGINE_ctrl_cb_fct_##A = 0;                                                      \
+static void my_ENGINE_ctrl_cb_##A()                    \
+{                                                                                                   \
+    RunFunction(my_context, my_ENGINE_ctrl_cb_fct_##A, 0);  \
+}
+SUPER()
+#undef GO
+static void* find_ENGINE_ctrl_cb_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_ENGINE_ctrl_cb_fct_##A == (uintptr_t)fct) return my_ENGINE_ctrl_cb_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_ENGINE_ctrl_cb_fct_##A == 0) {my_ENGINE_ctrl_cb_fct_##A = (uintptr_t)fct; return my_ENGINE_ctrl_cb_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libcrypto ENGINE_ctrl_cb callback\n");
+    return NULL;
+}
+
+// cmp_fnc
+#define GO(A)   \
+static uintptr_t my_cmp_fnc_fct_##A = 0;                                \
+static int my_cmp_fnc_##A(void* a, void* b)                             \
+{                                                                       \
+    return (int)RunFunction(my_context, my_cmp_fnc_fct_##A, 2, a, b);   \
+}
+SUPER()
+#undef GO
+static void* find_cmp_fnc_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_cmp_fnc_fct_##A == (uintptr_t)fct) return my_cmp_fnc_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_cmp_fnc_fct_##A == 0) {my_cmp_fnc_fct_##A = (uintptr_t)fct; return my_cmp_fnc_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libcrypto cmp_fnc callback\n");
+    return NULL;
+}
+
+// free_fnc
+#define GO(A)   \
+static uintptr_t my_free_fnc_fct_##A = 0;               \
+static void my_free_fnc_##A(void* p)                    \
+{                                                       \
+    RunFunction(my_context, my_free_fnc_fct_##A, 1, p); \
+}
+SUPER()
+#undef GO
+static void* find_free_fnc_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_free_fnc_fct_##A == (uintptr_t)fct) return my_free_fnc_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_free_fnc_fct_##A == 0) {my_free_fnc_fct_##A = (uintptr_t)fct; return my_free_fnc_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libcrypto free_fnc callback\n");
+    return NULL;
+}
+
+// id_func
+#define GO(A)   \
+static uintptr_t my_id_func_fct_##A = 0;                                    \
+static unsigned long my_id_func_##A()                                       \
+{                                                                           \
+    return (unsigned long)RunFunction(my_context, my_id_func_fct_##A, 0);   \
+}
+SUPER()
+#undef GO
+static void* find_id_func_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_id_func_fct_##A == (uintptr_t)fct) return my_id_func_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_id_func_fct_##A == 0) {my_id_func_fct_##A = (uintptr_t)fct; return my_id_func_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libcrypto id_func callback\n");
+    return NULL;
+}
+
+// lock_func
+#define GO(A)   \
+static uintptr_t my_lock_func_fct_##A = 0;                              \
+static void my_lock_func_##A(int mode, int n, void* f, int l)           \
+{                                                                       \
+    RunFunction(my_context, my_lock_func_fct_##A, 4, mode, n, f, l);    \
+}
+SUPER()
+#undef GO
+static void* find_lock_func_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_lock_func_fct_##A == (uintptr_t)fct) return my_lock_func_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_lock_func_fct_##A == 0) {my_lock_func_fct_##A = (uintptr_t)fct; return my_lock_func_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libcrypto lock_func callback\n");
+    return NULL;
+}
+
+// passphrase
+#define GO(A)   \
+static uintptr_t my_passphrase_fct_##A = 0;                                             \
+static int my_passphrase_##A(void* buff, int size, int rw, void* u)                     \
+{                                                                                       \
+    return (int)RunFunction(my_context, my_passphrase_fct_##A, 4, buff, size, rw, u);   \
+}
+SUPER()
+#undef GO
+static void* find_passphrase_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_passphrase_fct_##A == (uintptr_t)fct) return my_passphrase_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_passphrase_fct_##A == 0) {my_passphrase_fct_##A = (uintptr_t)fct; return my_passphrase_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libcrypto passphrase callback\n");
+    return NULL;
+}
+
+#undef SUPER
+
+EXPORT int32_t my_ENGINE_ctrl(x64emu_t* emu, void* e, int32_t cmd, int32_t i, void* p, void* f)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    return my->ENGINE_ctrl(e, cmd, i, p, find_ENGINE_ctrl_cb_Fct(f));
+}
+
+EXPORT int32_t my_ENGINE_ctrl_cmd(x64emu_t* emu, void* e, void* cmd, long i, void* p, void* f, int optional)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    return my->ENGINE_ctrl_cmd(e, cmd, i, p, find_ENGINE_ctrl_cb_Fct(f), optional);
+}
+
+EXPORT void my_CRYPTO_set_id_callback(x64emu_t* emu, void* cb)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    my->CRYPTO_set_id_callback(find_id_func_Fct(cb));
+}
+
+EXPORT void my_CRYPTO_set_locking_callback(x64emu_t* emu, void* cb)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    my->CRYPTO_set_locking_callback(find_lock_func_Fct(cb));
+}
+
+EXPORT void my_PEM_read_bio_DSAPrivateKey(x64emu_t* emu, void* bp, void* x, void* cb, void* u)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    my->PEM_read_bio_DSAPrivateKey(bp, x, find_passphrase_Fct(cb), u);
+}
+
+EXPORT void my_PEM_read_bio_DSA_PUBKEY(x64emu_t* emu, void* bp, void* x, void* cb, void* u)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    my->PEM_read_bio_DSA_PUBKEY(bp, x, find_passphrase_Fct(cb), u);
+}
+
+EXPORT void my_PEM_read_bio_RSAPrivateKey(x64emu_t* emu, void* bp, void* x, void* cb, void* u)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    my->PEM_read_bio_RSAPrivateKey(bp, x, find_passphrase_Fct(cb), u);
+}
+
+EXPORT void my_PEM_read_bio_RSA_PUBKEY(x64emu_t* emu, void* bp, void* x, void* cb, void* u)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    my->PEM_read_bio_RSA_PUBKEY(bp, x, find_passphrase_Fct(cb), u);
+}
+
+EXPORT void my_PEM_read_bio_ECPrivateKey(x64emu_t* emu, void* bp, void* x, void* cb, void* u)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    my->PEM_read_bio_ECPrivateKey(bp, x, find_passphrase_Fct(cb), u);
+}
+
+EXPORT void my_PEM_read_bio_EC_PUBKEY(x64emu_t* emu, void* bp, void* x, void* cb, void* u)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    my->PEM_read_bio_EC_PUBKEY(bp, x, find_passphrase_Fct(cb), u);
+}
+
+EXPORT int my_PEM_write_bio_DSAPrivateKey(x64emu_t* emu, void* bp, void* x, void* e, void* str, int len, void* cb, void* u)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    return my->PEM_write_bio_DSAPrivateKey(bp, x, e, str, len, find_passphrase_Fct(cb), u);
+}
+
+EXPORT int my_PEM_write_bio_RSAPrivateKey(x64emu_t* emu, void* bp, void* x, void* e, void* str, int len, void* cb, void* u)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    return my->PEM_write_bio_RSAPrivateKey(bp, x, e, str, len, find_passphrase_Fct(cb), u);
+}
+
+EXPORT int my_PEM_write_bio_ECPrivateKey(x64emu_t* emu, void* bp, void* x, void* e, void* str, int len, void* cb, void* u)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    return my->PEM_write_bio_ECPrivateKey(bp, x, e, str, len, find_passphrase_Fct(cb), u);
+}
+
+EXPORT void* my_sk_new(x64emu_t* emu, void* f)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    return my->sk_new(find_cmp_fnc_Fct(f));
+}
+
+EXPORT void my_sk_pop_free(x64emu_t* emu, void* st, void* f)
+{
+    crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
+
+    my->sk_pop_free(st, find_free_fnc_Fct(f));
+}
+
+#define CUSTOM_INIT \
+    my_lib = lib;   \
+    lib->priv.w.p2 = getCryptoMy(lib);
+
+#define CUSTOM_FINI \
+    my_lib = NULL;  \
+    freeCryptoMy(lib->priv.w.p2); \
+    free(lib->priv.w.p2);
+
+#include "wrappedlib_init.h"
diff --git a/src/wrapped/wrappedcrypto_private.h b/src/wrapped/wrappedcrypto_private.h
new file mode 100755
index 00000000..ee63a3b9
--- /dev/null
+++ b/src/wrapped/wrappedcrypto_private.h
@@ -0,0 +1,3850 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error meh!
+#endif
+
+//GO(a2d_ASN1_OBJECT, 
+//GO(a2i_ASN1_ENUMERATED, 
+//GO(a2i_ASN1_INTEGER, 
+//GO(a2i_ASN1_STRING, 
+//GO(a2i_GENERAL_NAME, 
+//GO(a2i_ipadd, 
+//GO(a2i_IPADDRESS, 
+//GO(a2i_IPADDRESS_NC, 
+//GO(ACCESS_DESCRIPTION_free, 
+//GO(ACCESS_DESCRIPTION_new, 
+GO(AES_bi_ige_encrypt, vFppLpppi)
+GO(AES_cbc_encrypt, vFppLppi)
+GO(AES_cfb128_encrypt, vFppLpppi)
+GO(AES_cfb1_encrypt, vFppLpppi)
+GO(AES_cfb8_encrypt, vFppLpppi)
+GO(AES_ctr128_encrypt, vFppLpppp)
+GO(AES_decrypt, vFppp)
+GO(AES_ecb_encrypt, vFpppi)
+GO(AES_encrypt, vFppp)
+GO(AES_ige_encrypt, cFppLppi)
+GO(AES_ofb128_encrypt, vFppLppp)
+//GO(AES_options, 
+GO(AES_set_decrypt_key, iFpip)
+//GO(AES_set_enc2dec_key, 
+GO(AES_set_encrypt_key, iFpip)
+GO(AES_unwrap_key, iFppppi)
+//GO(aes_v8_cbc_encrypt, 
+//GO(aes_v8_ctr32_encrypt_blocks, 
+//GO(aes_v8_decrypt, 
+//GO(aes_v8_encrypt, 
+//GO(aes_v8_set_decrypt_key, 
+//GO(aes_v8_set_encrypt_key, 
+GO(AES_wrap_key, iFppppi)
+//GO(_armv7_neon_probe, 
+//GO(_armv7_tick, 
+//GO(_armv8_aes_probe, 
+//GO(_armv8_pmull_probe, 
+//GO(_armv8_sha1_probe, 
+//GO(_armv8_sha256_probe, 
+//GO(asn1_add_error, 
+//GO(ASN1_add_oid_module, 
+//GO(ASN1_BIT_STRING_check, 
+//GO(ASN1_BIT_STRING_free, 
+//GO(ASN1_BIT_STRING_get_bit, 
+//GO(ASN1_BIT_STRING_name_print, 
+//GO(ASN1_BIT_STRING_new, 
+//GO(ASN1_BIT_STRING_num_asc, 
+//GO(ASN1_BIT_STRING_set, 
+//GO(ASN1_BIT_STRING_set_asc, 
+//GO(ASN1_BIT_STRING_set_bit, 
+//GO(ASN1_BMPSTRING_free, 
+//GO(ASN1_BMPSTRING_new, 
+//GO(ASN1_bn_print, 
+//GO(ASN1_check_infinite_end, 
+//GO(ASN1_const_check_infinite_end, 
+//GO(asn1_const_Finish, 
+//GO(ASN1_d2i_bio, 
+//GO(ASN1_d2i_fp, 
+//GO(ASN1_digest, 
+//GO(asn1_do_adb, 
+//GO(asn1_do_lock, 
+//GO(ASN1_dup, 
+//GO(asn1_enc_free, 
+//GO(asn1_enc_init, 
+//GO(asn1_enc_restore, 
+//GO(asn1_enc_save, 
+//GO(ASN1_ENUMERATED_free, 
+GO(ASN1_ENUMERATED_get, lFp)
+//GO(ASN1_ENUMERATED_new, 
+GO(ASN1_ENUMERATED_set, iFpl)
+GO(ASN1_ENUMERATED_to_BN, pFpp)
+//GO(asn1_ex_c2i, 
+//GO(asn1_ex_i2c, 
+//GO(asn1_Finish, 
+//GO(ASN1_GENERALIZEDTIME_adj, 
+//GO(ASN1_GENERALIZEDTIME_check, 
+//GO(ASN1_GENERALIZEDTIME_free, 
+//GO(ASN1_GENERALIZEDTIME_new, 
+//GO(ASN1_GENERALIZEDTIME_print, 
+//GO(ASN1_GENERALIZEDTIME_set, 
+//GO(ASN1_GENERALIZEDTIME_set_string, 
+//GO(asn1_generalizedtime_to_tm, 
+//GO(ASN1_GENERALSTRING_free, 
+//GO(ASN1_GENERALSTRING_new, 
+//GO(ASN1_generate_nconf, 
+//GO(ASN1_generate_v3, 
+//GO(asn1_get_choice_selector, 
+//GO(asn1_get_field_ptr, 
+//GO(ASN1_get_object, 
+//GO(asn1_GetSequence, 
+//GO(ASN1_i2d_bio, 
+//GO(ASN1_i2d_fp, 
+//GO(ASN1_IA5STRING_free, 
+//GO(ASN1_IA5STRING_new, 
+//GO(ASN1_INTEGER_cmp, 
+//GO(ASN1_INTEGER_dup, 
+//GO(ASN1_INTEGER_free, 
+GO(ASN1_INTEGER_get, lFp)
+//GO(ASN1_INTEGER_new, 
+GO(ASN1_INTEGER_set, iFpl)
+GO(ASN1_INTEGER_to_BN, pFpp)
+//GO(ASN1_item_d2i, 
+//GO(ASN1_item_d2i_bio, 
+//GO(ASN1_item_d2i_fp, 
+//GO(ASN1_item_digest, 
+//GO(ASN1_item_dup, 
+//GO(ASN1_item_ex_d2i, 
+//GO(ASN1_item_ex_free, 
+//GO(ASN1_item_ex_i2d, 
+//GO(ASN1_item_ex_new, 
+//GO(ASN1_item_free, 
+//GO(ASN1_item_i2d, 
+//GO(ASN1_item_i2d_bio, 
+//GO(ASN1_item_i2d_fp, 
+//GO(ASN1_item_ndef_i2d, 
+//GO(ASN1_item_new, 
+//GO(ASN1_item_pack, 
+//GO(ASN1_item_print, 
+//GO(ASN1_item_sign, 
+//GO(ASN1_item_sign_ctx, 
+//GO(ASN1_item_unpack, 
+//GO(ASN1_item_verify, 
+//GO(ASN1_mbstring_copy, 
+//GO(ASN1_mbstring_ncopy, 
+//GO(ASN1_NULL_free, 
+//GO(ASN1_NULL_new, 
+//GO(ASN1_OBJECT_create, 
+//GO(ASN1_OBJECT_free, 
+//GO(ASN1_OBJECT_new, 
+//GO(ASN1_object_size, 
+//GO(ASN1_OCTET_STRING_cmp, 
+//GO(ASN1_OCTET_STRING_dup, 
+//GO(ASN1_OCTET_STRING_free, 
+//GO(ASN1_OCTET_STRING_new, 
+//GO(ASN1_OCTET_STRING_set, 
+//GO(ASN1_pack_string, 
+//GO(ASN1_parse, 
+//GO(ASN1_parse_dump, 
+//GO(ASN1_PCTX_free, 
+//GO(ASN1_PCTX_get_cert_flags, 
+//GO(ASN1_PCTX_get_flags, 
+//GO(ASN1_PCTX_get_nm_flags, 
+//GO(ASN1_PCTX_get_oid_flags, 
+//GO(ASN1_PCTX_get_str_flags, 
+//GO(ASN1_PCTX_new, 
+//GO(ASN1_PCTX_set_cert_flags, 
+//GO(ASN1_PCTX_set_flags, 
+//GO(ASN1_PCTX_set_nm_flags, 
+//GO(ASN1_PCTX_set_oid_flags, 
+//GO(ASN1_PCTX_set_str_flags, 
+//GO(ASN1_primitive_free, 
+//GO(ASN1_primitive_new, 
+//GO(ASN1_PRINTABLE_free, 
+//GO(ASN1_PRINTABLE_new, 
+//GO(ASN1_PRINTABLESTRING_free, 
+//GO(ASN1_PRINTABLESTRING_new, 
+//GO(ASN1_PRINTABLE_type, 
+//GO(ASN1_put_eoc, 
+//GO(ASN1_put_object, 
+//GO(ASN1_seq_pack, 
+//GO(ASN1_seq_unpack, 
+//GO(asn1_set_choice_selector, 
+//GO(ASN1_sign, 
+//GO(ASN1_STRING_clear_free, 
+GO(ASN1_STRING_cmp, iFpp)
+//GO(ASN1_STRING_copy, 
+GO(ASN1_STRING_data, pFp)
+GO(ASN1_STRING_dup, pFp)
+//GO(ASN1_STRING_free, 
+//GO(ASN1_STRING_get_default_mask, 
+GO(ASN1_STRING_length, iFp)
+//GO(ASN1_STRING_length_set, 
+//GO(ASN1_STRING_new, 
+GO(ASN1_STRING_print, iFpp)
+GO(ASN1_STRING_print_ex, iFppu)
+GO(ASN1_STRING_print_ex_fp, iFppu)
+GO(ASN1_STRING_set, iFppi)
+//GO(ASN1_STRING_set0, 
+//GO(ASN1_STRING_set_by_NID, 
+//GO(ASN1_STRING_set_default_mask, 
+//GO(ASN1_STRING_set_default_mask_asc, 
+//GO(ASN1_STRING_TABLE_add, 
+//GO(ASN1_STRING_TABLE_cleanup, 
+//GO(ASN1_STRING_TABLE_get, 
+GO(ASN1_STRING_to_UTF8, iFpp)
+GO(ASN1_STRING_type, iFp)
+//GO(ASN1_STRING_type_new, 
+//GO(ASN1_T61STRING_free, 
+//GO(ASN1_T61STRING_new, 
+//GO(ASN1_tag2bit, 
+//GO(ASN1_tag2str, 
+//GO(ASN1_template_d2i, 
+//GO(ASN1_template_free, 
+//GO(ASN1_template_i2d, 
+//GO(ASN1_template_new, 
+//GO(asn1_template_print_ctx, 
+//GO(ASN1_TIME_adj, 
+//GO(ASN1_TIME_check, 
+//GO(ASN1_TIME_diff, 
+//GO(ASN1_TIME_free, 
+//GO(ASN1_TIME_new, 
+//GO(ASN1_TIME_print, 
+//GO(ASN1_TIME_set, 
+//GO(ASN1_TIME_set_string, 
+//GO(ASN1_TIME_to_generalizedtime, 
+//GO(ASN1_TYPE_cmp, 
+//GO(ASN1_TYPE_free, 
+//GO(ASN1_TYPE_get, 
+//GO(ASN1_TYPE_get_int_octetstring, 
+//GO(ASN1_TYPE_get_octetstring, 
+//GO(ASN1_TYPE_new, 
+//GO(ASN1_TYPE_set, 
+//GO(ASN1_TYPE_set1, 
+//GO(ASN1_TYPE_set_int_octetstring, 
+//GO(ASN1_TYPE_set_octetstring, 
+//GO(ASN1_UNIVERSALSTRING_free, 
+//GO(ASN1_UNIVERSALSTRING_new, 
+//GO(ASN1_UNIVERSALSTRING_to_string, 
+//GO(ASN1_unpack_string, 
+//GO(ASN1_UTCTIME_adj, 
+//GO(ASN1_UTCTIME_check, 
+//GO(ASN1_UTCTIME_cmp_time_t, 
+//GO(ASN1_UTCTIME_free, 
+//GO(ASN1_UTCTIME_new, 
+//GO(ASN1_UTCTIME_print, 
+//GO(ASN1_UTCTIME_set, 
+//GO(ASN1_UTCTIME_set_string, 
+//GO(asn1_utctime_to_tm, 
+//GO(ASN1_UTF8STRING_free, 
+//GO(ASN1_UTF8STRING_new, 
+//GO(ASN1_verify, 
+//GO(ASN1_VISIBLESTRING_free, 
+//GO(ASN1_VISIBLESTRING_new, 
+//GO(AUTHORITY_INFO_ACCESS_free, 
+//GO(AUTHORITY_INFO_ACCESS_new, 
+GO(AUTHORITY_KEYID_free, vFp)
+GO(AUTHORITY_KEYID_new, pFv)
+//GO(b2i_PrivateKey, 
+//GO(b2i_PrivateKey_bio, 
+//GO(b2i_PublicKey, 
+//GO(b2i_PublicKey_bio, 
+//GO(b2i_PVK_bio, 
+GO(BASIC_CONSTRAINTS_free, vFp)
+GO(BASIC_CONSTRAINTS_new, pFv)
+//GO(BF_cbc_encrypt, 
+//GO(BF_cfb64_encrypt, 
+//GO(BF_decrypt, 
+//GO(BF_ecb_encrypt, 
+//GO(BF_encrypt, 
+//GO(BF_ofb64_encrypt, 
+//GO(BF_options, 
+//GO(BF_set_key, 
+//GO(BIO_accept, 
+//GO(BIO_asn1_get_prefix, 
+//GO(BIO_asn1_get_suffix, 
+//GO(BIO_asn1_set_prefix, 
+//GO(BIO_asn1_set_suffix, 
+//GO(BIO_callback_ctrl, 
+//GO(BIO_clear_flags, 
+//GO(BIO_CONNECT_free, 
+//GO(BIO_CONNECT_new, 
+//GO(BIO_copy_next_retry, 
+GO(BIO_ctrl, lFpilp)
+//GO(BIO_ctrl_get_read_request, 
+//GO(BIO_ctrl_get_write_guarantee, 
+GO(BIO_ctrl_pending, LFp)
+//GO(BIO_ctrl_reset_read_request, 
+GO(BIO_ctrl_wpending, LFp)
+//GO(BIO_debug_callback, 
+//GO(BIO_dgram_non_fatal_error, 
+//GO(BIO_dump, 
+//GO(BIO_dump_cb, 
+//GO(BIO_dump_fp, 
+//GO(BIO_dump_indent, 
+//GO(BIO_dump_indent_cb, 
+//GO(BIO_dump_indent_fp, 
+//GO(BIO_dup_chain, 
+GO(BIO_eof, iFp)
+//GO(BIO_f_asn1, 
+//GO(BIO_f_base64, 
+//GO(BIO_f_buffer, 
+//GO(BIO_f_cipher, 
+//GO(BIO_fd_non_fatal_error, 
+//GO(BIO_fd_should_retry, 
+GO(BIO_flush, iFp)
+//GO(BIO_find_type, 
+//GO(BIO_f_md, 
+//GO(BIO_f_nbio_test, 
+//GO(BIO_f_null, 
+GO(BIO_free, iFp)
+GO(BIO_free_all, vFp)
+//GO(BIO_f_reliable, 
+//GO(BIO_f_zlib, 
+//GO(BIO_get_accept_socket, 
+//GO(BIO_get_callback, 
+//GO(BIO_get_callback_arg, 
+GO(BIO_get_close, iFp)
+//GO(BIO_get_ex_data, 
+//GO(BIO_get_ex_new_index, 
+//GO(BIO_gethostbyname, 
+//GO(BIO_get_host_ip, 
+//GO(BIO_get_port, 
+//GO(BIO_get_retry_BIO, 
+//GO(BIO_get_retry_reason, 
+GO(BIO_gets, iFppi)
+//GO(BIO_hex_string, 
+//GO(BIO_indent, 
+GO(BIO_int_ctrl, lFpili)
+//GO(BIO_method_name, 
+//GO(BIO_method_type, 
+GO(BIO_new, pFp)
+//GO(BIO_new_accept, 
+//GO(BIO_new_bio_pair, 
+//GO(BIO_new_CMS, 
+//GO(BIO_new_connect, 
+//GO(BIO_new_dgram, 
+//GO(BIO_new_fd, 
+//GO(BIO_new_file, 
+//GO(BIO_new_fp, 
+GO(BIO_new_mem_buf, pFpi)
+//GO(BIO_new_NDEF, 
+//GO(BIO_new_PKCS7, 
+//GO(BIO_new_socket, 
+//GO(BIO_next, 
+//GO(BIO_nread, 
+//GO(BIO_nread0, 
+//GO(BIO_number_read, 
+//GO(BIO_number_written, 
+//GO(BIO_nwrite, 
+//GO(BIO_nwrite0, 
+GO(BIO_pending, iFp)
+//GO(BIO_pop, 
+//GO(BIO_printf, 
+GO(BIO_ptr_ctrl, pFpil)
+//GO(BIO_push, 
+GO(BIO_puts, iFpp)
+GO(BIO_read, iFppi)
+GO(BIO_reset, iFp)
+//GO(BIO_s_accept, 
+//GO(BIO_s_bio, 
+//GO(BIO_s_connect, 
+//GO(BIO_s_datagram, 
+GO(BIO_seek, iFpi)
+GO(BIO_set, iFpp)
+//GO(BIO_set_callback, 
+//GO(BIO_set_callback_arg, 
+GO(BIO_set_close, iFpl)
+//GO(BIO_set_cipher, 
+//GO(BIO_set_ex_data, 
+//GO(BIO_set_flags, 
+//GO(BIO_set_tcp_ndelay, 
+//GO(BIO_s_fd, 
+//GO(BIO_s_file, 
+//GO(BIO_s_log, 
+GO(BIO_s_mem, pFv)
+//GO(BIO_snprintf, 
+//GO(BIO_s_null, 
+//GO(BIO_sock_cleanup, 
+//GO(BIO_sock_error, 
+//GO(BIO_socket_ioctl, 
+//GO(BIO_socket_nbio, 
+//GO(BIO_sock_init, 
+//GO(BIO_sock_non_fatal_error, 
+//GO(BIO_sock_should_retry, 
+//GO(BIO_s_socket, 
+GO(BIO_tell, iFp)
+//GO(BIO_test_flags, 
+GO(BIO_vfree, vFp)
+//GO(BIO_vprintf, 
+//GO(BIO_vsnprintf, 
+GO(BIO_wpending, iFp)
+GO(BIO_write, iFppi)
+GO(BN_add, iFppp)
+//GO(bn_add_part_words, 
+GO(BN_add_word, iFpu)
+//GO(bn_add_words, 
+//GO(BN_asc2bn, 
+GO(BN_bin2bn, pFpip)
+//GO(BN_BLINDING_convert, 
+//GO(BN_BLINDING_convert_ex, 
+//GO(BN_BLINDING_create_param, 
+//GO(BN_BLINDING_free, 
+//GO(BN_BLINDING_get_flags, 
+//GO(BN_BLINDING_get_thread_id, 
+//GO(BN_BLINDING_invert, 
+//GO(BN_BLINDING_invert_ex, 
+//GO(BN_BLINDING_new, 
+//GO(BN_BLINDING_set_flags, 
+//GO(BN_BLINDING_set_thread_id, 
+//GO(BN_BLINDING_thread_id, 
+//GO(BN_BLINDING_update, 
+GO(BN_bn2bin, iFpp)
+GO(BN_bn2dec, pFp)
+GO(BN_bn2hex, pFp)
+GO(BN_bn2mpi, iFpp)
+//GO(BN_bntest_rand, 
+GO(BN_clear, vFp)
+GO(BN_clear_bit, iFpi)
+GO(BN_clear_free, vFp)
+GO(BN_cmp, iFpp)
+//GO(bn_cmp_part_words, 
+//GO(bn_cmp_words, 
+//GO(BN_consttime_swap, 
+GO(BN_copy, pFpp)
+//GO(BN_CTX_end, 
+GO(BN_CTX_free, vFp)
+//GO(BN_CTX_get, 
+GO(BN_CTX_init, vFp)
+GO(BN_CTX_new, pFv)
+//GO(BN_CTX_start, 
+GO(BN_dec2bn, iFpp)
+GO(BN_div, iFppppp)
+//GO(BN_div_recp, 
+GO(BN_div_word, uFpu)
+//GO(bn_div_words, 
+GO(BN_dup, pFp)
+//GO(bn_dup_expand, 
+GO(BN_exp, iFpppp)
+//GO(bn_expand2, 
+GO(BN_free, vFp)
+//GO(BN_from_montgomery, 
+GO(BN_gcd, iFpppp)
+//GO(BN_GENCB_call, 
+//GO(BN_generate_prime, pFpiippBp) //callback previous last argument...
+//GO(BN_generate_prime_ex, 
+//GO(BN_get0_nist_prime_192, 
+//GO(BN_get0_nist_prime_224, 
+//GO(BN_get0_nist_prime_256, 
+//GO(BN_get0_nist_prime_384, 
+//GO(BN_get0_nist_prime_521, 
+//GO(BN_get_params, 
+GO(BN_get_word, uFp)
+//GO(BN_GF2m_add, 
+//GO(BN_GF2m_arr2poly, 
+//GO(BN_GF2m_mod, 
+//GO(BN_GF2m_mod_arr, 
+//GO(BN_GF2m_mod_div, 
+//GO(BN_GF2m_mod_div_arr, 
+//GO(BN_GF2m_mod_exp, 
+//GO(BN_GF2m_mod_exp_arr, 
+//GO(BN_GF2m_mod_inv, 
+//GO(BN_GF2m_mod_inv_arr, 
+//GO(BN_GF2m_mod_mul, 
+//GO(BN_GF2m_mod_mul_arr, 
+//GO(BN_GF2m_mod_solve_quad, 
+//GO(BN_GF2m_mod_solve_quad_arr, 
+//GO(BN_GF2m_mod_sqr, 
+//GO(BN_GF2m_mod_sqr_arr, 
+//GO(BN_GF2m_mod_sqrt, 
+//GO(BN_GF2m_mod_sqrt_arr, 
+//GO(bn_GF2m_mul_2x2, 
+//GO(BN_GF2m_poly2arr, 
+GO(BN_hex2bn, iFpp)
+//GO(BN_init, 
+GO(BN_is_bit_set, iFpi)
+//GO(BN_is_prime, iFpiBpp)  // third argument is a callback
+//GO(BN_is_prime_ex, 
+//GO(BN_is_prime_fasttest, 
+//GO(BN_is_prime_fasttest_ex, 
+GO(BN_is_zero, iFp) 
+//GO(BN_kronecker, 
+GO(BN_lshift, iFppi)
+GO(BN_lshift1, iFpp)
+GO(BN_mask_bits, iFpi)
+GO(BN_mod_add, iFppppp)
+//GO(BN_mod_add_quick, 
+GO(BN_mod_exp, iFppppp)
+//GO(BN_mod_exp2_mont, 
+//GO(BN_mod_exp_mont, 
+//GO(BN_mod_exp_mont_consttime, 
+//GO(BN_mod_exp_mont_word, 
+//GO(BN_mod_exp_recp, 
+//GO(BN_mod_exp_simple, 
+GO(BN_mod_inverse, pFpppp)
+//GO(BN_mod_lshift, 
+//GO(BN_mod_lshift1, 
+//GO(BN_mod_lshift1_quick, 
+//GO(BN_mod_lshift_quick, 
+GO(BN_mod_mul, iFppppp)
+//GO(BN_mod_mul_montgomery, 
+//GO(BN_mod_mul_reciprocal, 
+GO(BN_mod_sqr, iFpppp)
+//GO(BN_mod_sqrt, 
+GO(BN_mod_sub, iFppppp)
+//GO(BN_mod_sub_quick, 
+GO(BN_mod_word, uFpu)
+//GO(BN_MONT_CTX_copy, 
+//GO(BN_MONT_CTX_free, 
+//GO(BN_MONT_CTX_init, 
+//GO(BN_MONT_CTX_new, 
+//GO(BN_MONT_CTX_set, 
+//GO(BN_MONT_CTX_set_locked, 
+GO(BN_mpi2bn, pFpip)
+GO(BN_mul, iFpppp)
+//GO(bn_mul_add_words, 
+//GO(bn_mul_comba4, 
+//GO(bn_mul_comba8, 
+//GO(bn_mul_high, 
+//GO(bn_mul_low_normal, 
+//GO(bn_mul_low_recursive, 
+//GO(bn_mul_mont, 
+//GO(bn_mul_normal, 
+//GO(bn_mul_part_recursive, 
+//GO(bn_mul_recursive, 
+GO(BN_mul_word, iFpu)
+//GO(bn_mul_words, 
+GO(BN_new, pFv)
+//GO(BN_nist_mod_192, 
+//GO(BN_nist_mod_224, 
+//GO(BN_nist_mod_256, 
+//GO(BN_nist_mod_384, 
+//GO(BN_nist_mod_521, 
+GO(BN_nnmod, iFpppp)
+GO(BN_num_bits, iFp)
+GO(BN_num_bits_word, iFu)
+GO(BN_one, iFp)
+//GO(BN_options, 
+GO(BN_print, iFpp)
+GO(BN_print_fp, iFpp)
+GO(BN_pseudo_rand, iFpiii)
+GO(BN_pseudo_rand_range, iFpp)
+GO(BN_rand, iFpiii)
+//GO(BN_rand_range, 
+//GO(BN_reciprocal, 
+//GO(BN_RECP_CTX_free, 
+//GO(BN_RECP_CTX_init, 
+//GO(BN_RECP_CTX_new, 
+//GO(BN_RECP_CTX_set, 
+GO(BN_rshift, iFppi)
+GO(BN_rshift1, iFpp)
+GO(BN_set_bit, iFpi)
+GO(BN_set_negative, vFpi)
+//GO(BN_set_params, 
+GO(BN_set_word, iFpu)
+GO(BN_sqr, iFppp)
+//GO(bn_sqr_comba4, 
+//GO(bn_sqr_comba8, 
+//GO(bn_sqr_normal, 
+//GO(bn_sqr_recursive, 
+//GO(bn_sqr_words, 
+GO(BN_sub, iFppp)
+//GO(bn_sub_part_words, 
+GO(BN_sub_word, iFpu)
+//GO(bn_sub_words, 
+GO(BN_swap, pFpp)
+GO(BN_to_ASN1_ENUMERATED, pFpp)
+GO(BN_to_ASN1_INTEGER, pFpp)
+//GO(BN_uadd, 
+GO(BN_ucmp, iFpp)
+//GO(BN_usub, 
+GO(BN_value_one, pFv)
+//GO(BN_X931_derive_prime_ex, 
+//GO(BN_X931_generate_prime_ex, 
+//GO(BN_X931_generate_Xpq, 
+GO(BN_zero, vFp)
+//GO(bsaes_cbc_encrypt, 
+//GO(bsaes_ctr32_encrypt_blocks, 
+//GO(bsaes_xts_decrypt, 
+//GO(bsaes_xts_encrypt, 
+//GO(BUF_memdup, 
+//GO(BUF_MEM_free, 
+//GO(BUF_MEM_grow, 
+//GO(BUF_MEM_grow_clean, 
+//GO(BUF_MEM_new, 
+//GO(BUF_reverse, 
+//GO(BUF_strdup, 
+//GO(BUF_strlcat, 
+//GO(BUF_strlcpy, 
+//GO(BUF_strndup, 
+//GO(BUF_strnlen, 
+//GO(c2i_ASN1_BIT_STRING, 
+//GO(c2i_ASN1_INTEGER, 
+//GO(c2i_ASN1_OBJECT, 
+//GO(Camellia_cbc_encrypt, 
+//GO(Camellia_cfb128_encrypt, 
+//GO(Camellia_cfb1_encrypt, 
+//GO(Camellia_cfb8_encrypt, 
+//GO(Camellia_ctr128_encrypt, 
+//GO(Camellia_decrypt, 
+//GO(Camellia_DecryptBlock, 
+//GO(Camellia_DecryptBlock_Rounds, 
+//GO(Camellia_ecb_encrypt, 
+//GO(Camellia_Ekeygen, 
+//GO(Camellia_encrypt, 
+//GO(Camellia_EncryptBlock, 
+//GO(Camellia_EncryptBlock_Rounds, 
+//GO(Camellia_ofb128_encrypt, 
+//GO(Camellia_set_key, 
+//GO(CAST_cbc_encrypt, 
+//GO(CAST_cfb64_encrypt, 
+//GO(CAST_decrypt, 
+//GO(CAST_ecb_encrypt, 
+//GO(CAST_encrypt, 
+//GO(CAST_ofb64_encrypt, 
+//GO(CAST_set_key, 
+//GO(CERTIFICATEPOLICIES_free, 
+//GO(CERTIFICATEPOLICIES_new, 
+//GO(check_defer, 
+//GO(CMAC_CTX_cleanup, 
+//GO(CMAC_CTX_copy, 
+//GO(CMAC_CTX_free, 
+//GO(CMAC_CTX_get0_cipher_ctx, 
+//GO(CMAC_CTX_new, 
+//GO(CMAC_Final, 
+//GO(CMAC_Init, 
+//GO(CMAC_resume, 
+//GO(CMAC_Update, 
+//GO(CMS_add0_cert, 
+//GO(CMS_add0_CertificateChoices, 
+//GO(CMS_add0_crl, 
+//GO(CMS_add0_recipient_key, 
+//GO(CMS_add0_recipient_password, 
+//GO(CMS_add0_RevocationInfoChoice, 
+//GO(CMS_add1_cert, 
+//GO(CMS_add1_crl, 
+//GO(CMS_add1_ReceiptRequest, 
+//GO(CMS_add1_recipient_cert, 
+//GO(CMS_add1_signer, 
+//GO(CMS_add_simple_smimecap, 
+//GO(CMS_add_smimecap, 
+//GO(CMS_add_standard_smimecap, 
+//GO(CMS_compress, 
+//GO(cms_CompressedData_create, 
+//GO(cms_CompressedData_init_bio, 
+//GO(cms_content_bio, 
+//GO(CMS_ContentInfo_free, 
+//GO(CMS_ContentInfo_new, 
+//GO(CMS_ContentInfo_print_ctx, 
+//GO(CMS_data, 
+//GO(cms_Data_create, 
+//GO(CMS_data_create, 
+//GO(CMS_dataFinal, 
+//GO(CMS_dataInit, 
+//GO(CMS_decrypt, 
+//GO(CMS_decrypt_set1_key, 
+//GO(CMS_decrypt_set1_password, 
+//GO(CMS_decrypt_set1_pkey, 
+//GO(cms_DigestAlgorithm_find_ctx, 
+//GO(cms_DigestAlgorithm_init_bio, 
+//GO(cms_DigestAlgorithm_set, 
+//GO(CMS_digest_create, 
+//GO(cms_DigestedData_create, 
+//GO(cms_DigestedData_do_final, 
+//GO(cms_DigestedData_init_bio, 
+//GO(CMS_digest_verify, 
+//GO(cms_encode_Receipt, 
+//GO(CMS_encrypt, 
+//GO(cms_EncryptedContent_init, 
+//GO(cms_EncryptedContent_init_bio, 
+//GO(CMS_EncryptedData_decrypt, 
+//GO(CMS_EncryptedData_encrypt, 
+//GO(cms_EncryptedData_init_bio, 
+//GO(CMS_EncryptedData_set1_key, 
+//GO(cms_env_asn1_ctrl, 
+//GO(CMS_EnvelopedData_create, 
+//GO(cms_EnvelopedData_init_bio, 
+//GO(CMS_final, 
+//GO(CMS_get0_content, 
+//GO(CMS_get0_eContentType, 
+//GO(cms_get0_enveloped, 
+//GO(CMS_get0_RecipientInfos, 
+//GO(CMS_get0_SignerInfos, 
+//GO(CMS_get0_signers, 
+//GO(CMS_get0_type, 
+//GO(CMS_get1_certs, 
+//GO(CMS_get1_crls, 
+//GO(CMS_get1_ReceiptRequest, 
+//GO(cms_ias_cert_cmp, 
+//GO(CMS_is_detached, 
+//GO(cms_keyid_cert_cmp, 
+//GO(cms_msgSigDigest_add1, 
+//GO(cms_pkey_get_ri_type, 
+//GO(CMS_ReceiptRequest_create0, 
+//GO(CMS_ReceiptRequest_free, 
+//GO(CMS_ReceiptRequest_get0_values, 
+//GO(CMS_ReceiptRequest_new, 
+//GO(cms_Receipt_verify, 
+//GO(CMS_RecipientEncryptedKey_cert_cmp, 
+//GO(CMS_RecipientEncryptedKey_get0_id, 
+//GO(CMS_RecipientInfo_decrypt, 
+//GO(CMS_RecipientInfo_encrypt, 
+//GO(CMS_RecipientInfo_get0_pkey_ctx, 
+//GO(CMS_RecipientInfo_kari_decrypt, 
+//GO(cms_RecipientInfo_kari_encrypt, 
+//GO(CMS_RecipientInfo_kari_get0_alg, 
+//GO(CMS_RecipientInfo_kari_get0_ctx, 
+//GO(CMS_RecipientInfo_kari_get0_orig_id, 
+//GO(CMS_RecipientInfo_kari_get0_reks, 
+//GO(cms_RecipientInfo_kari_init, 
+//GO(CMS_RecipientInfo_kari_orig_id_cmp, 
+//GO(CMS_RecipientInfo_kari_set0_pkey, 
+//GO(CMS_RecipientInfo_kekri_get0_id, 
+//GO(CMS_RecipientInfo_kekri_id_cmp, 
+//GO(CMS_RecipientInfo_ktri_cert_cmp, 
+//GO(CMS_RecipientInfo_ktri_get0_algs, 
+//GO(CMS_RecipientInfo_ktri_get0_signer_id, 
+//GO(cms_RecipientInfo_pwri_crypt, 
+//GO(CMS_RecipientInfo_set0_key, 
+//GO(CMS_RecipientInfo_set0_password, 
+//GO(CMS_RecipientInfo_set0_pkey, 
+//GO(CMS_RecipientInfo_type, 
+//GO(CMS_set1_eContentType, 
+//GO(cms_set1_ias, 
+//GO(cms_set1_keyid, 
+//GO(cms_set1_SignerIdentifier, 
+//GO(CMS_set1_signers_certs, 
+//GO(CMS_set_detached, 
+//GO(CMS_SharedInfo_encode, 
+//GO(CMS_sign, 
+//GO(CMS_signed_add1_attr, 
+//GO(CMS_signed_add1_attr_by_NID, 
+//GO(CMS_signed_add1_attr_by_OBJ, 
+//GO(CMS_signed_add1_attr_by_txt, 
+//GO(cms_SignedData_final, 
+//GO(CMS_SignedData_init, 
+//GO(cms_SignedData_init_bio, 
+//GO(CMS_signed_delete_attr, 
+//GO(CMS_signed_get0_data_by_OBJ, 
+//GO(CMS_signed_get_attr, 
+//GO(CMS_signed_get_attr_by_NID, 
+//GO(CMS_signed_get_attr_by_OBJ, 
+//GO(CMS_signed_get_attr_count, 
+//GO(cms_SignerIdentifier_cert_cmp, 
+//GO(cms_SignerIdentifier_get0_signer_id, 
+//GO(CMS_SignerInfo_cert_cmp, 
+//GO(CMS_SignerInfo_get0_algs, 
+//GO(CMS_SignerInfo_get0_md_ctx, 
+//GO(CMS_SignerInfo_get0_pkey_ctx, 
+//GO(CMS_SignerInfo_get0_signature, 
+//GO(CMS_SignerInfo_get0_signer_id, 
+//GO(CMS_SignerInfo_set1_signer_cert, 
+//GO(CMS_SignerInfo_sign, 
+//GO(CMS_SignerInfo_verify, 
+//GO(CMS_SignerInfo_verify_content, 
+//GO(CMS_sign_receipt, 
+//GO(CMS_stream, 
+//GO(CMS_uncompress, 
+//GO(CMS_unsigned_add1_attr, 
+//GO(CMS_unsigned_add1_attr_by_NID, 
+//GO(CMS_unsigned_add1_attr_by_OBJ, 
+//GO(CMS_unsigned_add1_attr_by_txt, 
+//GO(CMS_unsigned_delete_attr, 
+//GO(CMS_unsigned_get0_data_by_OBJ, 
+//GO(CMS_unsigned_get_attr, 
+//GO(CMS_unsigned_get_attr_by_NID, 
+//GO(CMS_unsigned_get_attr_by_OBJ, 
+//GO(CMS_unsigned_get_attr_count, 
+//GO(CMS_verify, 
+//GO(CMS_verify_receipt, 
+//GO(COMP_compress_block, 
+//GO(COMP_CTX_free, 
+//GO(COMP_CTX_new, 
+//GO(COMP_expand_block, 
+//GO(COMP_rle, 
+//GO(COMP_zlib, 
+//GO(COMP_zlib_cleanup, 
+//GO(_CONF_add_string, 
+//GO(CONF_dump_bio, 
+//GO(CONF_dump_fp, 
+//GO(CONF_free, 
+//GO(_CONF_free_data, 
+//GO(CONF_get1_default_config_file, 
+//GO(CONF_get_number, 
+//GO(_CONF_get_section, 
+//GO(CONF_get_section, 
+//GO(_CONF_get_section_values, 
+//GO(_CONF_get_string, 
+//GO(CONF_get_string, 
+//GO(CONF_imodule_get_flags, 
+//GO(CONF_imodule_get_module, 
+//GO(CONF_imodule_get_name, 
+//GO(CONF_imodule_get_usr_data, 
+//GO(CONF_imodule_get_value, 
+//GO(CONF_imodule_set_flags, 
+//GO(CONF_imodule_set_usr_data, 
+//GO(CONF_load, 
+//GO(CONF_load_bio, 
+//GO(CONF_load_fp, 
+//GO(CONF_module_add, 
+//GO(CONF_module_get_usr_data, 
+//GO(CONF_module_set_usr_data, 
+//GO(CONF_modules_finish, 
+//GO(CONF_modules_free, 
+//GO(CONF_modules_load, 
+//GO(CONF_modules_load_file, 
+//GO(CONF_modules_unload, 
+//GO(_CONF_new_data, 
+//GO(_CONF_new_section, 
+//GO(CONF_parse_list, 
+//GO(CONF_set_default_method, 
+//GO(CONF_set_nconf, 
+//GO(CRL_DIST_POINTS_free, 
+//GO(CRL_DIST_POINTS_new, 
+//GO(CRYPTO_128_unwrap, 
+//GO(CRYPTO_128_wrap, 
+//GO(CRYPTO_add_lock, 
+//GO(CRYPTO_cbc128_decrypt, 
+//GO(CRYPTO_cbc128_encrypt, 
+//GO(CRYPTO_ccm128_aad, 
+//GO(CRYPTO_ccm128_decrypt, 
+//GO(CRYPTO_ccm128_decrypt_ccm64, 
+//GO(CRYPTO_ccm128_encrypt, 
+//GO(CRYPTO_ccm128_encrypt_ccm64, 
+//GO(CRYPTO_ccm128_init, 
+//GO(CRYPTO_ccm128_setiv, 
+//GO(CRYPTO_ccm128_tag, 
+//GO(CRYPTO_cfb128_1_encrypt, 
+//GO(CRYPTO_cfb128_8_encrypt, 
+//GO(CRYPTO_cfb128_encrypt, 
+GO(CRYPTO_cleanup_all_ex_data, vFv)
+//GO(CRYPTO_ctr128_encrypt, 
+//GO(CRYPTO_ctr128_encrypt_ctr32, 
+//GO(CRYPTO_cts128_decrypt, 
+//GO(CRYPTO_cts128_decrypt_block, 
+//GO(CRYPTO_cts128_encrypt, 
+//GO(CRYPTO_cts128_encrypt_block, 
+//GO(CRYPTO_dbg_free, 
+//GO(CRYPTO_dbg_get_options, 
+//GO(CRYPTO_dbg_malloc, 
+//GO(CRYPTO_dbg_realloc, 
+//GO(CRYPTO_dbg_set_options, 
+//GO(CRYPTO_destroy_dynlockid, 
+//GO(CRYPTO_dup_ex_data, 
+//GO(CRYPTO_ex_data_new_class, 
+GO(CRYPTO_free, vFppi)
+//GO(CRYPTO_free_ex_data, 
+//GO(CRYPTO_free_locked, 
+//GO(CRYPTO_gcm128_aad, 
+//GO(CRYPTO_gcm128_decrypt, 
+//GO(CRYPTO_gcm128_decrypt_ctr32, 
+//GO(CRYPTO_gcm128_encrypt, 
+//GO(CRYPTO_gcm128_encrypt_ctr32, 
+//GO(CRYPTO_gcm128_finish, 
+//GO(CRYPTO_gcm128_init, 
+//GO(CRYPTO_gcm128_new, 
+//GO(CRYPTO_gcm128_release, 
+//GO(CRYPTO_gcm128_setiv, 
+//GO(CRYPTO_gcm128_tag, 
+//GO(CRYPTO_get_add_lock_callback, 
+//GO(CRYPTO_get_dynlock_create_callback, 
+//GO(CRYPTO_get_dynlock_destroy_callback, 
+//GO(CRYPTO_get_dynlock_lock_callback, 
+//GO(CRYPTO_get_dynlock_value, 
+//GO(CRYPTO_get_ex_data, 
+//GO(CRYPTO_get_ex_data_implementation, 
+//GO(CRYPTO_get_ex_new_index, 
+//GO(CRYPTO_get_id_callback, 
+//GO(CRYPTO_get_locked_mem_ex_functions, 
+//GO(CRYPTO_get_locked_mem_functions, 
+//GO(CRYPTO_get_locking_callback, 
+//GO(CRYPTO_get_lock_name, 
+//GO(CRYPTO_get_mem_debug_functions, 
+//GO(CRYPTO_get_mem_debug_options, 
+//GO(CRYPTO_get_mem_ex_functions, 
+//GO(CRYPTO_get_mem_functions, 
+//GO(CRYPTO_get_new_dynlockid, 
+//GO(CRYPTO_get_new_lockid, 
+//GO(CRYPTO_is_mem_check_on, 
+//GO(CRYPTO_lock, 
+GO(CRYPTO_malloc, pFupi)
+//GO(CRYPTO_malloc_locked, 
+//GO(CRYPTO_memcmp, 
+//GO(CRYPTO_mem_ctrl, 
+//GO(CRYPTO_mem_leaks, 
+//GO(CRYPTO_mem_leaks_cb, 
+//GO(CRYPTO_mem_leaks_fp, 
+//GO(CRYPTO_new_ex_data, 
+//GO(CRYPTO_nistcts128_decrypt, 
+//GO(CRYPTO_nistcts128_decrypt_block, 
+//GO(CRYPTO_nistcts128_encrypt, 
+//GO(CRYPTO_nistcts128_encrypt_block, 
+GO(CRYPTO_num_locks, iFv)
+//GO(CRYPTO_ofb128_encrypt, 
+//GO(CRYPTO_pop_info, 
+//GO(CRYPTO_push_info_, 
+GO(CRYPTO_realloc, pFpupi)
+//GO(CRYPTO_realloc_clean, 
+//GO(CRYPTO_remalloc, 
+//GO(CRYPTO_remove_all_info, 
+//GO(CRYPTO_set_add_lock_callback, 
+//GO(CRYPTO_set_dynlock_create_callback, 
+//GO(CRYPTO_set_dynlock_destroy_callback, 
+//GO(CRYPTO_set_dynlock_lock_callback, 
+//GO(CRYPTO_set_ex_data, 
+//GO(CRYPTO_set_ex_data_implementation, 
+GOM(CRYPTO_set_id_callback, vFEp)
+//GO(CRYPTO_set_locked_mem_ex_functions, 
+//GO(CRYPTO_set_locked_mem_functions, 
+GOM(CRYPTO_set_locking_callback, vFEp)
+//GO(CRYPTO_set_mem_debug_functions, 
+//GO(CRYPTO_set_mem_debug_options, 
+//GO(CRYPTO_set_mem_ex_functions, 
+//GO(CRYPTO_set_mem_functions, 
+GO(CRYPTO_strdup, pFppi)
+//GO(CRYPTO_thread_id, 
+//GO(CRYPTO_THREADID_cmp, 
+//GO(CRYPTO_THREADID_cpy, 
+//GO(CRYPTO_THREADID_current, 
+//GO(CRYPTO_THREADID_get_callback, 
+//GO(CRYPTO_THREADID_hash, 
+//GO(CRYPTO_THREADID_set_callback, 
+//GO(CRYPTO_THREADID_set_numeric, 
+//GO(CRYPTO_THREADID_set_pointer, 
+//GO(CRYPTO_xts128_encrypt, 
+//GO(d2i_ACCESS_DESCRIPTION, 
+//GO(d2i_ASN1_BIT_STRING, 
+//GO(d2i_ASN1_BMPSTRING, 
+//GO(d2i_ASN1_BOOLEAN, 
+//GO(d2i_ASN1_bytes, 
+//GO(d2i_ASN1_ENUMERATED, 
+//GO(d2i_ASN1_GENERALIZEDTIME, 
+//GO(d2i_ASN1_GENERALSTRING, 
+//GO(d2i_ASN1_IA5STRING, 
+//GO(d2i_ASN1_INTEGER, 
+//GO(d2i_ASN1_NULL, 
+//GO(d2i_ASN1_OBJECT, 
+//GO(d2i_ASN1_OCTET_STRING, 
+//GO(d2i_ASN1_PRINTABLE, 
+//GO(d2i_ASN1_PRINTABLESTRING, 
+//GO(d2i_ASN1_SEQUENCE_ANY, 
+//GO(d2i_ASN1_SET, 
+//GO(d2i_ASN1_SET_ANY, 
+//GO(d2i_ASN1_T61STRING, 
+//GO(d2i_ASN1_TIME, 
+//GO(d2i_ASN1_TYPE, 
+//GO(d2i_ASN1_type_bytes, 
+//GO(d2i_ASN1_UINTEGER, 
+//GO(d2i_ASN1_UNIVERSALSTRING, 
+//GO(d2i_ASN1_UTCTIME, 
+//GO(d2i_ASN1_UTF8STRING, 
+//GO(d2i_ASN1_VISIBLESTRING, 
+//GO(d2i_AUTHORITY_INFO_ACCESS, 
+//GO(d2i_AUTHORITY_KEYID, 
+//GO(d2i_AutoPrivateKey, 
+//GO(d2i_BASIC_CONSTRAINTS, 
+//GO(d2i_CERTIFICATEPOLICIES, 
+//GO(d2i_CMS_bio, 
+//GO(d2i_CMS_ContentInfo, 
+//GO(d2i_CMS_ReceiptRequest, 
+//GO(d2i_CRL_DIST_POINTS, 
+GO(d2i_DHparams, pFppl)
+//GO(d2i_DHxparams, 
+//GO(d2i_DIRECTORYSTRING, 
+//GO(d2i_DISPLAYTEXT, 
+//GO(d2i_DIST_POINT, 
+//GO(d2i_DIST_POINT_NAME, 
+//GO(d2i_DSAparams, 
+GO(d2i_DSAPrivateKey, pFppl)
+GO(d2i_DSAPrivateKey_bio, pFpp)
+GO(d2i_DSAPrivateKey_fp, pFpp)
+GO(d2i_DSA_PUBKEY, pFppl)
+GO(d2i_DSA_PUBKEY_bio, pFpp)
+GO(d2i_DSA_PUBKEY_fp, pFpp)
+//GO(d2i_DSAPublicKey, 
+//GO(d2i_DSA_SIG, 
+//GO(d2i_ECDSA_SIG, 
+//GO(d2i_ECParameters, 
+//GO(d2i_ECPKParameters, 
+//GO(d2i_ECPKPARAMETERS, 
+//GO(d2i_ECPrivateKey, 
+GO(d2i_EC_PRIVATEKEY, pFppl)
+GO(d2i_ECPrivateKey_bio, pFpp)
+GO(d2i_ECPrivateKey_fp, pFpp)
+GO(d2i_EC_PUBKEY, pFppl)
+GO(d2i_EC_PUBKEY_bio, pFpp)
+GO(d2i_EC_PUBKEY_fp, pFpp)
+//GO(d2i_EDIPARTYNAME, 
+//GO(d2i_ESS_CERT_ID, 
+//GO(d2i_ESS_ISSUER_SERIAL, 
+//GO(d2i_ESS_SIGNING_CERT, 
+//GO(d2i_EXTENDED_KEY_USAGE, 
+//GO(d2i_GENERAL_NAME, 
+//GO(d2i_GENERAL_NAMES, 
+//GO(d2i_int_dhx, 
+//GO(d2i_ISSUING_DIST_POINT, 
+//GO(d2i_KRB5_APREQ, 
+//GO(d2i_KRB5_APREQBODY, 
+//GO(d2i_KRB5_AUTHDATA, 
+//GO(d2i_KRB5_AUTHENT, 
+//GO(d2i_KRB5_AUTHENTBODY, 
+//GO(d2i_KRB5_CHECKSUM, 
+//GO(d2i_KRB5_ENCDATA, 
+//GO(d2i_KRB5_ENCKEY, 
+//GO(d2i_KRB5_PRINCNAME, 
+//GO(d2i_KRB5_TICKET, 
+//GO(d2i_KRB5_TKTBODY, 
+//GO(d2i_NETSCAPE_CERT_SEQUENCE, 
+//GO(d2i_NETSCAPE_ENCRYPTED_PKEY, 
+//GO(d2i_NETSCAPE_PKEY, 
+//GO(d2i_Netscape_RSA, 
+//GO(d2i_NETSCAPE_SPKAC, 
+//GO(d2i_NETSCAPE_SPKI, 
+//GO(d2i_NETSCAPE_X509, 
+//GO(d2i_NOTICEREF, 
+//GO(d2i_OCSP_BASICRESP, 
+//GO(d2i_OCSP_CERTID, 
+//GO(d2i_OCSP_CERTSTATUS, 
+//GO(d2i_OCSP_CRLID, 
+//GO(d2i_OCSP_ONEREQ, 
+//GO(d2i_OCSP_REQINFO, 
+//GO(d2i_OCSP_REQUEST, 
+//GO(d2i_OCSP_RESPBYTES, 
+//GO(d2i_OCSP_RESPDATA, 
+//GO(d2i_OCSP_RESPID, 
+//GO(d2i_OCSP_RESPONSE, 
+//GO(d2i_OCSP_REVOKEDINFO, 
+//GO(d2i_OCSP_SERVICELOC, 
+//GO(d2i_OCSP_SIGNATURE, 
+//GO(d2i_OCSP_SINGLERESP, 
+//GO(d2i_OTHERNAME, 
+//GO(d2i_PBE2PARAM, 
+//GO(d2i_PBEPARAM, 
+//GO(d2i_PBKDF2PARAM, 
+GO(d2i_PKCS12, pFppl)
+//GO(d2i_PKCS12_BAGS, 
+GO(d2i_PKCS12_bio, pFpp)
+GO(d2i_PKCS12_fp, pFpp)
+//GO(d2i_PKCS12_MAC_DATA, 
+//GO(d2i_PKCS12_SAFEBAG, 
+GO(d2i_PKCS7, pFppl)
+GO(d2i_PKCS7_bio, pFpp)
+//GO(d2i_PKCS7_DIGEST, 
+//GO(d2i_PKCS7_ENC_CONTENT, 
+//GO(d2i_PKCS7_ENCRYPT, 
+//GO(d2i_PKCS7_ENVELOPE, 
+GO(d2i_PKCS7_fp, pFpp)
+//GO(d2i_PKCS7_ISSUER_AND_SERIAL, 
+//GO(d2i_PKCS7_RECIP_INFO, 
+//GO(d2i_PKCS7_SIGNED, 
+//GO(d2i_PKCS7_SIGN_ENVELOPE, 
+//GO(d2i_PKCS7_SIGNER_INFO, 
+GO(d2i_PKCS8_bio, pFpp)
+GO(d2i_PKCS8_fp, pFpp)
+GO(d2i_PKCS8PrivateKey_bio, pFpp)
+GO(d2i_PKCS8PrivateKey_fp, pFpp)
+GO(d2i_PKCS8_PRIV_KEY_INFO, pFppl)
+GO(d2i_PKCS8_PRIV_KEY_INFO_bio, pFpp)
+GO(d2i_PKCS8_PRIV_KEY_INFO_fp, pFpp)
+//GO(d2i_PKEY_USAGE_PERIOD, 
+//GO(d2i_POLICYINFO, 
+//GO(d2i_POLICYQUALINFO, 
+GO(d2i_PrivateKey, pFppl)
+GO(d2i_PrivateKey_bio, pFpp)
+GO(d2i_PrivateKey_fp, pFpp)
+//GO(d2i_PROXY_CERT_INFO_EXTENSION, 
+//GO(d2i_PROXY_POLICY, 
+GO(d2i_PUBKEY, pFppl)
+GO(d2i_PUBKEY_bio, pFpp)
+GO(d2i_PUBKEY_fp, pFpp)
+//GO(d2i_PublicKey, 
+//GO(d2i_RSA_NET, 
+//GO(d2i_RSA_OAEP_PARAMS, 
+GO(d2i_RSAPrivateKey, pFppl)
+GO(d2i_RSAPrivateKey_bio, pFpp)
+GO(d2i_RSAPrivateKey_fp, pFpp)
+//GO(d2i_RSA_PSS_PARAMS, 
+GO(d2i_RSA_PUBKEY, pFppl)
+GO(d2i_RSA_PUBKEY_bio, pFpp)
+GO(d2i_RSA_PUBKEY_fp, pFpp)
+GO(d2i_RSAPublicKey, pFppl)
+GO(d2i_RSAPublicKey_bio, pFpp)
+GO(d2i_RSAPublicKey_fp, pFpp)
+//GO(d2i_SXNET, 
+//GO(d2i_SXNETID, 
+//GO(d2i_TS_ACCURACY, 
+GO(d2i_TS_MSG_IMPRINT, pFppl)
+GO(d2i_TS_MSG_IMPRINT_bio, pFpp)
+GO(d2i_TS_MSG_IMPRINT_fp, pFpp)
+GO(d2i_TS_REQ, pFppl)
+GO(d2i_TS_REQ_bio, pFpp)
+GO(d2i_TS_REQ_fp, pFpp)
+GO(d2i_TS_RESP, pFppl)
+GO(d2i_TS_RESP_bio, pFpp)
+GO(d2i_TS_RESP_fp, pFpp)
+//GO(d2i_TS_STATUS_INFO, 
+GO(d2i_TS_TST_INFO, pFppl)
+GO(d2i_TS_TST_INFO_bio, pFpp)
+GO(d2i_TS_TST_INFO_fp, pFpp)
+//GO(d2i_USERNOTICE, 
+GO(d2i_X509, pFppl)
+//GO(d2i_X509_ALGOR, 
+//GO(d2i_X509_ALGORS, 
+//GO(d2i_X509_ATTRIBUTE, 
+//GO(d2i_X509_AUX, 
+GO(d2i_X509_bio, pFpp)
+//GO(d2i_X509_CERT_AUX, 
+//GO(d2i_X509_CERT_PAIR, 
+//GO(d2i_X509_CINF, 
+GO(d2i_X509_CRL, pFppl)
+GO(d2i_X509_CRL_bio, pFpp)
+GO(d2i_X509_CRL_fp, pFpp)
+//GO(d2i_X509_CRL_INFO, 
+//GO(d2i_X509_EXTENSION, 
+//GO(d2i_X509_EXTENSIONS, 
+GO(d2i_X509_fp, pFppl)
+//GO(d2i_X509_NAME, 
+//GO(d2i_X509_NAME_ENTRY, 
+//GO(d2i_X509_PKEY, 
+//GO(d2i_X509_PUBKEY, 
+GO(d2i_X509_REQ, pFppl)
+GO(d2i_X509_REQ_bio, pFpp)
+GO(d2i_X509_REQ_fp, pFpp)
+//GO(d2i_X509_REQ_INFO, 
+//GO(d2i_X509_REVOKED, 
+//GO(d2i_X509_SIG, 
+//GO(d2i_X509_VAL, 
+GO(DES_cbc_cksum, uFppipp)
+GO(DES_cbc_encrypt, vFppippi)
+GO(DES_cfb64_encrypt, vFppippppi)
+GO(DES_cfb_encrypt, vFppilppi)
+//GO(DES_check_key_parity, 
+//GO(_des_crypt, 
+GO(DES_crypt, pFpp)
+//GO(DES_decrypt3, 
+GO(DES_ecb3_encrypt, vFpppppi)
+GO(DES_ecb_encrypt, vFpppi)
+GO(DES_ede3_cbc_encrypt, vFppippppi)
+//GO(DES_ede3_cbcm_encrypt, 
+GO(DES_ede3_cfb64_encrypt, vFpplpppppi)
+//GO(DES_ede3_cfb_encrypt, 
+GO(DES_ede3_ofb64_encrypt, vFpplppppp)
+//GO(DES_enc_read, 
+//GO(DES_encrypt1, 
+//GO(DES_encrypt2, 
+//GO(DES_encrypt3, 
+//GO(DES_enc_write, 
+GO(DES_fcrypt, pFppp)
+GO(DES_is_weak_key, iFp)
+GO(DES_key_sched, iFpp)
+GO(DES_ncbc_encrypt, vFpplppi)
+GO(DES_ofb64_encrypt, vFpplppp)
+GO(DES_ofb_encrypt, vFppilpp)
+//GO(DES_options, 
+GO(DES_pcbc_encrypt, vFppippi)
+GO(DES_quad_cksum, uFpplip)
+GO(DES_random_key, vFp)
+//GO(DES_read_2passwords, 
+//GO(DES_read_password, 
+GO(DES_set_key, iFpp)
+GO(DES_set_key_checked, iFpp)
+GO(DES_set_key_unchecked, iFpp)
+GO(DES_set_odd_parity, vFp)
+GO(DES_string_to_2keys, vFppp)
+GO(DES_string_to_key, vFpp)
+GO(DES_xcbc_encrypt, vFpplppppi)
+//GO(DH_check, 
+//GO(DH_check_pub_key, 
+//GO(DH_compute_key, 
+//GO(DH_compute_key_padded, 
+GO(DH_free, vFp)
+//GO(DH_generate_key, 
+//GO(DH_generate_parameters, 
+//GO(DH_generate_parameters_ex, 
+//GO(DH_get_1024_160, 
+//GO(DH_get_2048_224, 
+//GO(DH_get_2048_256, 
+//GO(DH_get_default_method, 
+//GO(DH_get_ex_data, 
+//GO(DH_get_ex_new_index, 
+//GO(DH_KDF_X9_42, 
+GO(DH_new, pFv)
+//GO(DH_new_method, 
+//GO(DH_OpenSSL, 
+//GO(DHparams_dup, 
+//GO(DHparams_print, 
+//GO(DHparams_print_fp, 
+//GO(DH_set_default_method, 
+//GO(DH_set_ex_data, 
+//GO(DH_set_method, 
+//GO(DH_size, 
+//GO(DH_up_ref, 
+//GO(DIRECTORYSTRING_free, 
+//GO(DIRECTORYSTRING_new, 
+//GO(DISPLAYTEXT_free, 
+//GO(DISPLAYTEXT_new, 
+//GO(DIST_POINT_free, 
+//GO(DIST_POINT_NAME_free, 
+//GO(DIST_POINT_NAME_new, 
+//GO(DIST_POINT_new, 
+//GO(DIST_POINT_set_dpname, 
+//GO(dsa_builtin_paramgen, 
+//GO(dsa_builtin_paramgen2, 
+//GO(DSA_do_sign, 
+//GO(DSA_do_verify, 
+//GO(DSA_dup_DH, 
+GO(DSA_free, vFp)
+//GO(DSA_generate_key, 
+//GO(DSA_generate_parameters, 
+//GO(DSA_generate_parameters_ex, 
+//GO(DSA_get_default_method, 
+//GO(DSA_get_ex_data, 
+//GO(DSA_get_ex_new_index, 
+GO(DSA_new, pFv)
+//GO(DSA_new_method, 
+//GO(DSA_OpenSSL, 
+//GO(dsa_paramgen_check_g, 
+//GO(DSAparams_dup, 
+//GO(DSAparams_print, 
+//GO(DSAparams_print_fp, 
+//GO(DSA_print, 
+//GO(DSA_print_fp, 
+//GO(DSA_set_default_method, 
+//GO(DSA_set_ex_data, 
+//GO(DSA_set_method, 
+//GO(DSA_SIG_free, 
+//GO(DSA_sign, 
+//GO(DSA_SIG_new, 
+//GO(DSA_sign_setup, 
+//GO(DSA_size, 
+//GO(DSA_up_ref, 
+//GO(DSA_verify, 
+//GO(DSO_bind_func, 
+//GO(DSO_bind_var, 
+//GO(DSO_convert_filename, 
+//GO(DSO_ctrl, 
+//GO(DSO_flags, 
+//GO(DSO_free, 
+//GO(DSO_get_default_method, 
+//GO(DSO_get_filename, 
+//GO(DSO_get_loaded_filename, 
+//GO(DSO_get_method, 
+//GO(DSO_global_lookup, 
+//GO(DSO_load, 
+//GO(DSO_merge, 
+//GO(DSO_METHOD_beos, 
+//GO(DSO_METHOD_dl, 
+//GO(DSO_METHOD_dlfcn, 
+//GO(DSO_METHOD_null, 
+//GO(DSO_METHOD_openssl, 
+//GO(DSO_METHOD_vms, 
+//GO(DSO_METHOD_win32, 
+//GO(DSO_new, 
+//GO(DSO_new_method, 
+//GO(DSO_pathbyaddr, 
+//GO(DSO_set_default_method, 
+//GO(DSO_set_filename, 
+//GO(DSO_set_method, 
+//GO(DSO_set_name_converter, 
+//GO(DSO_up_ref, 
+GO(EC_curve_nid2nist, pFi)
+GO(EC_curve_nist2nid, iFp)
+//GO(ecdh_check, 
+//GO(ECDH_compute_key, 
+//GO(ECDH_get_default_method, 
+//GO(ECDH_get_ex_data, 
+//GO(ECDH_get_ex_new_index, 
+//GO(ECDH_KDF_X9_62, 
+//GO(ECDH_OpenSSL, 
+//GO(ECDH_set_default_method, 
+//GO(ECDH_set_ex_data, 
+//GO(ECDH_set_method, 
+//GO(ecdsa_check, 
+//GO(ECDSA_do_sign, 
+GO(ECDSA_do_sign_ex, pFpippp)
+GO(ECDSA_do_verify, iFpipp)
+//GO(ECDSA_get_default_method, 
+//GO(ECDSA_get_ex_data, 
+//GO(ECDSA_get_ex_new_index, 
+//GO(ECDSA_METHOD_free, 
+//GO(ECDSA_METHOD_get_app_data, 
+//GO(ECDSA_METHOD_new, 
+//GO(ECDSA_METHOD_set_app_data, 
+//GO(ECDSA_METHOD_set_flags, 
+//GO(ECDSA_METHOD_set_name, 
+//GO(ECDSA_METHOD_set_sign, 
+//GO(ECDSA_METHOD_set_sign_setup, 
+//GO(ECDSA_METHOD_set_verify, 
+//GO(ECDSA_OpenSSL, 
+//GO(ECDSA_set_default_method, 
+//GO(ECDSA_set_ex_data, 
+//GO(ECDSA_set_method, 
+GO(ECDSA_SIG_free, vFp)
+//GO(ECDSA_sign, 
+GO(ECDSA_SIG_get0, vFppp)
+GO(ECDSA_SIG_new, pFv)
+GO(ECDSA_SIG_set0, iFppp)
+//GO(ECDSA_sign_ex, 
+GO(ECDSA_sign_setup, iFpppp)
+//GO(ECDSA_size, 
+//GO(ECDSA_verify, 
+//GO(EC_EX_DATA_clear_free_all_data, 
+//GO(EC_EX_DATA_clear_free_data, 
+//GO(EC_EX_DATA_free_all_data, 
+//GO(EC_EX_DATA_free_data, 
+//GO(EC_EX_DATA_get_data, 
+//GO(EC_EX_DATA_set_data, 
+GO(EC_get_builtin_curves, LFpL)
+//GO(ec_GF2m_have_precompute_mult, 
+//GO(ec_GF2m_precompute_mult, 
+//GO(ec_GF2m_simple_add, 
+//GO(ec_GF2m_simple_cmp, 
+//GO(ec_GF2m_simple_dbl, 
+//GO(ec_GF2m_simple_field_div, 
+//GO(ec_GF2m_simple_field_mul, 
+//GO(ec_GF2m_simple_field_sqr, 
+//GO(ec_GF2m_simple_group_check_discriminant, 
+//GO(ec_GF2m_simple_group_clear_finish, 
+//GO(ec_GF2m_simple_group_copy, 
+//GO(ec_GF2m_simple_group_finish, 
+//GO(ec_GF2m_simple_group_get_curve, 
+//GO(ec_GF2m_simple_group_get_degree, 
+//GO(ec_GF2m_simple_group_init, 
+//GO(ec_GF2m_simple_group_set_curve, 
+//GO(ec_GF2m_simple_invert, 
+//GO(ec_GF2m_simple_is_at_infinity, 
+//GO(ec_GF2m_simple_is_on_curve, 
+//GO(ec_GF2m_simple_make_affine, 
+GO(EC_GF2m_simple_method, pFv)
+//GO(ec_GF2m_simple_mul, 
+//GO(ec_GF2m_simple_oct2point, 
+//GO(ec_GF2m_simple_point2oct, 
+//GO(ec_GF2m_simple_point_clear_finish, 
+//GO(ec_GF2m_simple_point_copy, 
+//GO(ec_GF2m_simple_point_finish, 
+//GO(ec_GF2m_simple_point_get_affine_coordinates, 
+//GO(ec_GF2m_simple_point_init, 
+//GO(ec_GF2m_simple_point_set_affine_coordinates, 
+//GO(ec_GF2m_simple_point_set_to_infinity, 
+//GO(ec_GF2m_simple_points_make_affine, 
+//GO(ec_GF2m_simple_set_compressed_coordinates, 
+//GO(ec_GFp_mont_field_decode, 
+//GO(ec_GFp_mont_field_encode, 
+//GO(ec_GFp_mont_field_mul, 
+//GO(ec_GFp_mont_field_set_to_one, 
+//GO(ec_GFp_mont_field_sqr, 
+//GO(ec_GFp_mont_group_clear_finish, 
+//GO(ec_GFp_mont_group_copy, 
+//GO(ec_GFp_mont_group_finish, 
+//GO(ec_GFp_mont_group_init, 
+//GO(ec_GFp_mont_group_set_curve, 
+GO(EC_GFp_mont_method, pFv)
+//GO(ec_GFp_nist_field_mul, 
+//GO(ec_GFp_nist_field_sqr, 
+//GO(ec_GFp_nist_group_copy, 
+//GO(ec_GFp_nist_group_set_curve, 
+GO(EC_GFp_nist_method, pFv)
+GO(EC_GFp_nistp224_method, pFv)
+GO(EC_GFp_nistp256_method, pFv)
+GO(EC_GFp_nistp521_method, pFv)
+//GO(ec_GFp_simple_add, 
+//GO(ec_GFp_simple_cmp, 
+//GO(ec_GFp_simple_dbl, 
+//GO(ec_GFp_simple_field_mul, 
+//GO(ec_GFp_simple_field_sqr, 
+//GO(ec_GFp_simple_get_Jprojective_coordinates_GFp, 
+//GO(ec_GFp_simple_group_check_discriminant, 
+//GO(ec_GFp_simple_group_clear_finish, 
+//GO(ec_GFp_simple_group_copy, 
+//GO(ec_GFp_simple_group_finish, 
+//GO(ec_GFp_simple_group_get_curve, 
+//GO(ec_GFp_simple_group_get_degree, 
+//GO(ec_GFp_simple_group_init, 
+//GO(ec_GFp_simple_group_set_curve, 
+//GO(ec_GFp_simple_invert, 
+//GO(ec_GFp_simple_is_at_infinity, 
+//GO(ec_GFp_simple_is_on_curve, 
+//GO(ec_GFp_simple_make_affine, 
+GO(EC_GFp_simple_method, pFv)
+//GO(ec_GFp_simple_oct2point, 
+//GO(ec_GFp_simple_point2oct, 
+//GO(ec_GFp_simple_point_clear_finish, 
+//GO(ec_GFp_simple_point_copy, 
+//GO(ec_GFp_simple_point_finish, 
+//GO(ec_GFp_simple_point_get_affine_coordinates, 
+//GO(ec_GFp_simple_point_init, 
+//GO(ec_GFp_simple_point_set_affine_coordinates, 
+//GO(ec_GFp_simple_point_set_to_infinity, 
+//GO(ec_GFp_simple_points_make_affine, 
+//GO(ec_GFp_simple_set_compressed_coordinates, 
+//GO(ec_GFp_simple_set_Jprojective_coordinates_GFp, 
+//GO(EC_GROUP_check, 
+//GO(EC_GROUP_check_discriminant, 
+GO(EC_GROUP_clear_free, vFp)
+//GO(EC_GROUP_cmp, 
+//GO(EC_GROUP_copy, 
+//GO(EC_GROUP_dup, 
+GO(EC_GROUP_free, vFp)
+GO(EC_GROUP_get0_generator, pFp)
+//GO(EC_GROUP_get0_seed, 
+//GO(EC_GROUP_get_asn1_flag, 
+//GO(EC_GROUP_get_basis_type, 
+//GO(EC_GROUP_get_cofactor, 
+GO(EC_GROUP_get_curve_GF2m, iFppppp)
+GO(EC_GROUP_get_curve_GFp, iFppppp)
+//GO(EC_GROUP_get_curve_name, 
+GO(EC_GROUP_get_degree, iFp)
+GO(EC_GROUP_get_ecparameters, pFpp)
+GO(EC_GROUP_get_ecpkparameters, pFpp)
+//GO(EC_GROUP_get_mont_data, 
+GO(EC_GROUP_get_order, iFppp)
+//GO(EC_GROUP_get_pentanomial_basis, 
+//GO(EC_GROUP_get_point_conversion_form, 
+//GO(EC_GROUP_get_seed_len, 
+//GO(EC_GROUP_get_trinomial_basis, 
+//GO(EC_GROUP_have_precompute_mult, 
+//GO(EC_GROUP_method_of, 
+GO(EC_GROUP_new, pFp)
+GO(EC_GROUP_new_by_curve_name, pFi)
+GO(EC_GROUP_new_curve_GF2m, pFpppp)
+GO(EC_GROUP_new_curve_GFp, pFpppp)
+GO(EC_GROUP_new_from_ecparameters, pFp)
+GO(EC_GROUP_new_from_ecpkparameters, pFp)
+GO(EC_GROUP_precompute_mult, iFpp)
+//GO(EC_GROUP_set_asn1_flag, 
+GO(EC_GROUP_set_curve_GF2m, iFppppp)
+GO(EC_GROUP_set_curve_GFp, iFppppp)
+//GO(EC_GROUP_set_curve_name, 
+GO(EC_GROUP_set_generator, iFpppp)
+//GO(EC_GROUP_set_point_conversion_form, 
+//GO(EC_GROUP_set_seed, 
+//GO(EC_KEY_check_key, 
+//GO(EC_KEY_clear_flags, 
+//GO(EC_KEY_copy, 
+GO(EC_KEY_dup, pFp)
+GO(EC_KEY_free, vFp)
+//GO(EC_KEY_generate_key, 
+GO(EC_KEY_get0_group, pFp)
+//GO(EC_KEY_get0_private_key, 
+//GO(EC_KEY_get0_public_key, 
+//GO(EC_KEY_get_conv_form, 
+//GO(EC_KEY_get_enc_flags, 
+//GO(EC_KEY_get_flags, 
+//GO(EC_KEY_get_key_method_data, 
+//GO(EC_KEY_insert_key_method_data, 
+GO(EC_KEY_new, pFv)
+GO(EC_KEY_new_by_curve_name, pFi)
+//GO(EC_KEY_precompute_mult, 
+//GO(EC_KEY_print, 
+//GO(EC_KEY_print_fp, 
+//GO(EC_KEY_set_asn1_flag, 
+//GO(EC_KEY_set_conv_form, 
+//GO(EC_KEY_set_enc_flags, 
+//GO(EC_KEY_set_flags, 
+GO(EC_KEY_set_group, iFpp)
+GO(EC_KEY_set_private_key, iFpp)
+GO(EC_KEY_set_public_key, iFpp)
+GO(EC_KEY_set_public_key_affine_coordinates, iFppp)
+//GO(EC_KEY_up_ref, 
+GO(EC_METHOD_get_field_type, iFp)
+//GO(ECPARAMETERS_free, 
+//GO(ECPARAMETERS_new, 
+//GO(ECParameters_print, 
+//GO(ECParameters_print_fp, 
+//GO(ECPKPARAMETERS_free, 
+//GO(ECPKPARAMETERS_new, 
+//GO(ECPKParameters_print, 
+//GO(ECPKParameters_print_fp, 
+//GO(EC_POINT_add, 
+//GO(EC_POINT_bn2point, 
+GO(EC_POINT_clear_free, vFp)
+//GO(EC_POINT_cmp, 
+GO(EC_POINT_copy, iFpp)
+//GO(EC_POINT_dbl, 
+GO(EC_POINT_dup, pFpp)
+GO(EC_POINT_free, vFp)
+GO(EC_POINT_get_affine_coordinates, iFppppp)
+GO(EC_POINT_get_affine_coordinates_GF2m, iFppppp)
+GO(EC_POINT_get_affine_coordinates_GFp, iFppppp)
+GO(EC_POINT_get_Jprojective_coordinates_GFp, iFpppppp)
+//GO(EC_POINT_hex2point, 
+//GO(EC_POINT_invert, 
+//GO(EC_POINT_is_at_infinity, 
+//GO(EC_POINT_is_on_curve, 
+//GO(EC_POINT_make_affine, 
+GO(EC_POINT_method_of, pFp)
+GO(EC_POINT_mul, iFpppppp)
+GO(EC_POINT_new, pFp)
+//GO(EC_POINT_oct2point, 
+//GO(EC_POINT_point2buf,
+//GO(EC_POINT_point2bn, 
+//GO(EC_POINT_point2hex, 
+//GO(EC_POINT_point2oct,
+GO(EC_POINT_set_affine_coordinates, iFppppp)
+GO(EC_POINT_set_affine_coordinates_GF2m, iFppppp)
+GO(EC_POINT_set_affine_coordinates_GFp, iFppppp)
+GO(EC_POINT_set_compressed_coordinates, iFpppip)
+GO(EC_POINT_set_compressed_coordinates_GF2m, iFpppip)
+GO(EC_POINT_set_compressed_coordinates_GFp, iFpppip)
+GO(EC_POINT_set_Jprojective_coordinates_GFp, iFpppppp)
+GO(EC_POINT_set_to_infinity, iFpp)
+//GO(EC_POINTs_make_affine, 
+//GO(EC_POINTs_mul, 
+//GO(ec_precompute_mont_data, 
+//GO(EC_PRIVATEKEY_free, 
+//GO(EC_PRIVATEKEY_new, 
+//GO(ec_wNAF_have_precompute_mult, 
+//GO(ec_wNAF_mul, 
+//GO(ec_wNAF_precompute_mult, 
+//GO(EDIPARTYNAME_free, 
+//GO(EDIPARTYNAME_new, 
+GO(ENGINE_add, iFp)
+//GO(ENGINE_add_conf_module, 
+GO(ENGINE_by_id, pFp)
+GO(ENGINE_cleanup, vFv)
+//GO(engine_cleanup_add_first, 
+//GO(engine_cleanup_add_last, 
+GO(ENGINE_cmd_is_executable, iFpi)
+GOM(ENGINE_ctrl, iFEpiipp)
+GOM(ENGINE_ctrl_cmd, iFpplppi)
+GO(ENGINE_ctrl_cmd_string, iFpppi)
+GO(ENGINE_finish, iFp)
+GO(ENGINE_free, iFp)
+//GO(engine_free_util, 
+//GO(ENGINE_get_cipher, 
+GO(ENGINE_get_cipher_engine, pFi)
+//GOM(ENGINE_get_ciphers, pFEp)
+//GOM(ENGINE_get_cmd_defns, pFEp)
+//GOM(ENGINE_get_ctrl_function, pFEp)
+GO(ENGINE_get_default_DH, pFv)
+GO(ENGINE_get_default_DSA, pFv)
+GO(ENGINE_get_default_ECDH, pFv)
+GO(ENGINE_get_default_ECDSA, pFv)
+GO(ENGINE_get_default_RAND, pFv)
+GO(ENGINE_get_default_RSA, pFv)
+//GOM(ENGINE_get_destroy_function, pFEp)
+GO(ENGINE_get_DH, pFp)
+//GOM(ENGINE_get_digest, pFEp)
+GO(ENGINE_get_digest_engine, pFi)
+//GO(ENGINE_get_digests, 
+GO(ENGINE_get_DSA, pFp)
+GO(ENGINE_get_ECDH, pFp)
+GO(ENGINE_get_ECDSA, pFp)
+//GO(ENGINE_get_ex_data, 
+//GO(ENGINE_get_ex_new_index, 
+//GOM(ENGINE_get_finish_function, pFEp)
+GO(ENGINE_get_first, iFp)
+GO(ENGINE_get_flags, iFp)
+GO(ENGINE_get_id, pFp)
+//GOM(ENGINE_get_init_function, pFEp)
+GO(ENGINE_get_last, pFv)
+//GOM(ENGINE_get_load_privkey_function, pFEp)
+//GOM(ENGINE_get_load_pubkey_function, pFEp)
+GO(ENGINE_get_name, pFp)
+GO(ENGINE_get_next, pFp)
+//GO(ENGINE_get_pkey_asn1_meth, 
+//GO(ENGINE_get_pkey_asn1_meth_engine, 
+//GO(ENGINE_get_pkey_asn1_meths, 
+//GO(ENGINE_get_pkey_asn1_meth_str, 
+//GO(ENGINE_get_pkey_meth, 
+//GO(ENGINE_get_pkey_meth_engine, 
+//GO(ENGINE_get_pkey_meths, 
+GO(ENGINE_get_prev, pFp)
+GO(ENGINE_get_RAND, pFp)
+GO(ENGINE_get_RSA, pFp)
+//GO(ENGINE_get_ssl_client_cert_function, 
+//GO(ENGINE_get_static_state, 
+//GO(ENGINE_get_STORE, 
+GO(ENGINE_get_table_flags, uFv)
+GO(ENGINE_init, iFp)
+GO(ENGINE_load_builtin_engines, vFv)
+//GO(ENGINE_load_cryptodev, 
+//GO(ENGINE_load_dynamic, 
+//GO(ENGINE_load_openssl, 
+GO(ENGINE_load_private_key, pFpppp)
+GO(ENGINE_load_public_key, pFpppp)
+//GO(ENGINE_load_rdrand, 
+//GO(ENGINE_load_ssl_client_cert, 
+GO(ENGINE_new, pFv)
+//GO(ENGINE_pkey_asn1_find_str, 
+//GO(engine_pkey_asn1_meths_free, 
+//GO(engine_pkey_meths_free, 
+GO(ENGINE_register_all_ciphers, vFv)
+GO(ENGINE_register_all_complete, iFv)
+GO(ENGINE_register_all_DH, vFv)
+GO(ENGINE_register_all_digests, vFv)
+GO(ENGINE_register_all_DSA, vFv)
+GO(ENGINE_register_all_ECDH, vFv)
+GO(ENGINE_register_all_ECDSA, vFv)
+//GO(ENGINE_register_all_pkey_asn1_meths, 
+//GO(ENGINE_register_all_pkey_meths, 
+GO(ENGINE_register_all_RAND, vFv)
+GO(ENGINE_register_all_RSA, vFv)
+//GO(ENGINE_register_all_STORE, 
+GO(ENGINE_register_ciphers, iFp)
+GO(ENGINE_register_complete, iFp)
+GO(ENGINE_register_DH, iFp)
+GO(ENGINE_register_digests, iFp)
+GO(ENGINE_register_DSA, iFp)
+GO(ENGINE_register_ECDH, iFp)
+GO(ENGINE_register_ECDSA, iFp)
+//GO(ENGINE_register_pkey_asn1_meths, 
+//GO(ENGINE_register_pkey_meths, 
+GO(ENGINE_register_RAND, iFp)
+GO(ENGINE_register_RSA, iFp)
+//GO(ENGINE_register_STORE, 
+GO(ENGINE_remove, iFp)
+//GO(engine_set_all_null, 
+//GOM(ENGINE_set_ciphers, iFEpp)   //typedef int (*ENGINE_CIPHERS_PTR)(ENGINE *e, const EVP_CIPHER **impl, const int **nids, int nid)
+//GOM(ENGINE_set_cmd_defns, iFEpp)
+//GO(ENGINE_set_ctrl_function, 
+GO(ENGINE_set_default, iFpu)
+GO(ENGINE_set_default_ciphers, iFp)
+GO(ENGINE_set_default_DH, iF)
+GO(ENGINE_set_default_digests, iFp)
+GO(ENGINE_set_default_DSA, iFp)
+GO(ENGINE_set_default_ECDH, iFp)
+GO(ENGINE_set_default_ECDSA, iFp)
+//GO(ENGINE_set_default_pkey_asn1_meths, 
+//GO(ENGINE_set_default_pkey_meths, 
+GO(ENGINE_set_default_RAND, iFp)
+GO(ENGINE_set_default_RSA, iFp)
+GO(ENGINE_set_default_string, iFpp)
+//GOM(ENGINE_set_destroy_function, iFEpp)
+//GO(ENGINE_set_DH, 
+//GOM(ENGINE_set_digests, iFEpp)
+GO(ENGINE_set_DSA, iFpp)
+GO(ENGINE_set_ECDH, iFpp)
+GO(ENGINE_set_ECDSA, iFpp)
+//GO(ENGINE_set_ex_data, 
+//GOM(ENGINE_set_finish_function, iFEpp)
+GO(ENGINE_set_flags, iFpi)
+GO(ENGINE_set_id, iFpp)
+//GOM(ENGINE_set_init_function, iFEpp)
+//GOM(ENGINE_set_load_privkey_function, iFEpp)
+//GOM(ENGINE_set_load_pubkey_function, iFEpp)
+//GOM(ENGINE_set_load_ssl_client_cert_function, 
+GO(ENGINE_set_name, iFpp)
+//GO(ENGINE_set_pkey_asn1_meths, 
+//GO(ENGINE_set_pkey_meths, 
+GO(ENGINE_set_RAND, iFpp)
+GO(ENGINE_set_RSA, iFpp)
+//GO(ENGINE_set_STORE, 
+GO(ENGINE_set_table_flags, vFu)
+//GO(engine_table_cleanup, 
+//GO(engine_table_doall, 
+//GO(engine_table_register, 
+//GO(engine_table_select, 
+//GO(engine_table_unregister, 
+//GO(engine_unlocked_finish, 
+//GO(engine_unlocked_init, 
+GO(ENGINE_unregister_ciphers, vFp)
+GO(ENGINE_unregister_DH, vFp)
+GO(ENGINE_unregister_digests, vFp)
+GO(ENGINE_unregister_DSA, vFp)
+GO(ENGINE_unregister_ECDH, vFp)
+GO(ENGINE_unregister_ECDSA, vFp)
+//GO(ENGINE_unregister_pkey_asn1_meths, 
+//GO(ENGINE_unregister_pkey_meths, 
+GO(ENGINE_unregister_RAND, vFp)
+GO(ENGINE_unregister_RSA, vFp)
+//GO(ENGINE_unregister_STORE, 
+GO(ENGINE_up_ref, iFp)
+//GO(ERR_add_error_data, 
+//GO(ERR_add_error_vdata, 
+GO(ERR_clear_error, vFv)
+GO(ERR_error_string, pFup)
+GO(ERR_error_string_n, vFupu)
+GO(ERR_free_strings, vFv)
+GO(ERR_func_error_string, pFu)
+GO(ERR_get_error, LFv)
+GO(ERR_get_error_line, LFpp)
+GO(ERR_get_error_line_data, LFpppp)
+//GO(ERR_get_err_state_table, 
+//GO(ERR_get_implementation, 
+//GO(ERR_get_next_error_library, 
+//GO(ERR_get_state, 
+//GO(ERR_get_string_table, 
+GO(ERR_lib_error_string, pFu)
+//GO(ERR_load_ASN1_strings, 
+//GO(ERR_load_BIO_strings, 
+//GO(ERR_load_BN_strings, 
+//GO(ERR_load_BUF_strings, 
+//GO(ERR_load_CMS_strings, 
+//GO(ERR_load_COMP_strings, 
+//GO(ERR_load_CONF_strings, 
+GO(ERR_load_crypto_strings, vFv)
+//GO(ERR_load_CRYPTO_strings, 
+//GO(ERR_load_DH_strings, 
+//GO(ERR_load_DSA_strings, 
+//GO(ERR_load_DSO_strings, 
+//GO(ERR_load_ECDH_strings, 
+//GO(ERR_load_ECDSA_strings, 
+//GO(ERR_load_EC_strings, 
+//GO(ERR_load_ENGINE_strings, 
+//GO(ERR_load_ERR_strings, 
+//GO(ERR_load_EVP_strings, 
+//GO(ERR_load_OBJ_strings, 
+//GO(ERR_load_OCSP_strings, 
+//GO(ERR_load_PEM_strings, 
+//GO(ERR_load_PKCS12_strings, 
+//GO(ERR_load_PKCS7_strings, 
+//GO(ERR_load_RAND_strings, 
+//GO(ERR_load_RSA_strings, 
+//GO(ERR_load_strings, 
+//GO(ERR_load_TS_strings, 
+//GO(ERR_load_UI_strings, 
+//GO(ERR_load_X509_strings, 
+//GO(ERR_load_X509V3_strings, 
+GO(ERR_peek_error, LFv)
+GO(ERR_peek_error_line, LFpp)
+GO(ERR_peek_error_line_data, LFpppp)
+GO(ERR_peek_last_error, LFv)
+GO(ERR_peek_last_error_line, LFpp)
+GO(ERR_peek_last_error_line_data, LFpppp)
+//GO(ERR_pop_to_mark, 
+//GO(ERR_print_errors, 
+//GO(ERR_print_errors_cb, 
+//GO(ERR_print_errors_fp, 
+//GO(ERR_put_error, 
+GO(ERR_reason_error_string, pFu)
+//GO(ERR_release_err_state_table, 
+//GO(ERR_remove_state, 
+GO(ERR_remove_thread_state, vFp)
+//GO(ERR_set_error_data, 
+//GO(ERR_set_implementation, 
+//GO(ERR_set_mark, 
+//GO(ERR_unload_strings, 
+//GO(ESS_CERT_ID_dup, 
+//GO(ESS_CERT_ID_free, 
+//GO(ESS_CERT_ID_new, 
+//GO(ESS_ISSUER_SERIAL_dup, 
+//GO(ESS_ISSUER_SERIAL_free, 
+//GO(ESS_ISSUER_SERIAL_new, 
+//GO(ESS_SIGNING_CERT_dup, 
+//GO(ESS_SIGNING_CERT_free, 
+//GO(ESS_SIGNING_CERT_new, 
+//GO(EVP_add_alg_module, 
+//GO(EVP_add_cipher, 
+//GO(EVP_add_digest, 
+//GO(EVP_aes_128_cbc, 
+//GO(EVP_aes_128_cbc_hmac_sha1, 
+//GO(EVP_aes_128_cbc_hmac_sha256, 
+//GO(EVP_aes_128_ccm, 
+//GO(EVP_aes_128_cfb, 
+//GO(EVP_aes_128_cfb1, 
+//GO(EVP_aes_128_cfb128, 
+//GO(EVP_aes_128_cfb8, 
+//GO(EVP_aes_128_ctr, 
+//GO(EVP_aes_128_ecb, 
+//GO(EVP_aes_128_gcm, 
+//GO(EVP_aes_128_ofb, 
+//GO(EVP_aes_128_wrap, 
+//GO(EVP_aes_128_xts, 
+//GO(EVP_aes_192_cbc, 
+//GO(EVP_aes_192_ccm, 
+//GO(EVP_aes_192_cfb, 
+//GO(EVP_aes_192_cfb1, 
+//GO(EVP_aes_192_cfb128, 
+//GO(EVP_aes_192_cfb8, 
+//GO(EVP_aes_192_ctr, 
+//GO(EVP_aes_192_ecb, 
+//GO(EVP_aes_192_gcm, 
+//GO(EVP_aes_192_ofb, 
+//GO(EVP_aes_192_wrap, 
+//GO(EVP_aes_256_cbc, 
+//GO(EVP_aes_256_cbc_hmac_sha1, 
+//GO(EVP_aes_256_cbc_hmac_sha256, 
+//GO(EVP_aes_256_ccm, 
+//GO(EVP_aes_256_cfb, 
+//GO(EVP_aes_256_cfb1, 
+//GO(EVP_aes_256_cfb128, 
+//GO(EVP_aes_256_cfb8, 
+//GO(EVP_aes_256_ctr, 
+//GO(EVP_aes_256_ecb, 
+//GO(EVP_aes_256_gcm, 
+//GO(EVP_aes_256_ofb, 
+//GO(EVP_aes_256_wrap, 
+//GO(EVP_aes_256_xts, 
+//GO(EVP_bf_cbc, 
+//GO(EVP_bf_cfb, 
+//GO(EVP_bf_cfb64, 
+//GO(EVP_bf_ecb, 
+//GO(EVP_bf_ofb, 
+//GO(EVP_BytesToKey, 
+//GO(EVP_camellia_128_cbc, 
+//GO(EVP_camellia_128_cfb1, 
+//GO(EVP_camellia_128_cfb128, 
+//GO(EVP_camellia_128_cfb8, 
+//GO(EVP_camellia_128_ecb, 
+//GO(EVP_camellia_128_ofb, 
+//GO(EVP_camellia_192_cbc, 
+//GO(EVP_camellia_192_cfb1, 
+//GO(EVP_camellia_192_cfb128, 
+//GO(EVP_camellia_192_cfb8, 
+//GO(EVP_camellia_192_ecb, 
+//GO(EVP_camellia_192_ofb, 
+//GO(EVP_camellia_256_cbc, 
+//GO(EVP_camellia_256_cfb1, 
+//GO(EVP_camellia_256_cfb128, 
+//GO(EVP_camellia_256_cfb8, 
+//GO(EVP_camellia_256_ecb, 
+//GO(EVP_camellia_256_ofb, 
+//GO(EVP_cast5_cbc, 
+//GO(EVP_cast5_cfb, 
+//GO(EVP_cast5_cfb64, 
+//GO(EVP_cast5_ecb, 
+//GO(EVP_cast5_ofb, 
+//GO(EVP_Cipher, 
+//GO(EVP_CIPHER_asn1_to_param, 
+//GO(EVP_CIPHER_block_size, 
+//GO(EVP_CIPHER_CTX_block_size, 
+//GO(EVP_CIPHER_CTX_cipher, 
+//GO(EVP_CIPHER_CTX_cleanup, 
+//GO(EVP_CIPHER_CTX_clear_flags, 
+//GO(EVP_CIPHER_CTX_copy, 
+//GO(EVP_CIPHER_CTX_ctrl, 
+//GO(EVP_CIPHER_CTX_flags, 
+//GO(EVP_CIPHER_CTX_free, 
+//GO(EVP_CIPHER_CTX_get_app_data, 
+//GO(EVP_CIPHER_CTX_init, 
+//GO(EVP_CIPHER_CTX_iv_length, 
+//GO(EVP_CIPHER_CTX_key_length, 
+//GO(EVP_CIPHER_CTX_new, 
+//GO(EVP_CIPHER_CTX_nid, 
+//GO(EVP_CIPHER_CTX_rand_key, 
+//GO(EVP_CIPHER_CTX_set_app_data, 
+//GO(EVP_CIPHER_CTX_set_flags, 
+//GO(EVP_CIPHER_CTX_set_key_length, 
+//GO(EVP_CIPHER_CTX_set_padding, 
+//GO(EVP_CIPHER_CTX_test_flags, 
+//GO(EVP_CIPHER_do_all, 
+//GO(EVP_CIPHER_do_all_sorted, 
+//GO(EVP_CipherFinal, 
+//GO(EVP_CipherFinal_ex, 
+//GO(EVP_CIPHER_flags, 
+//GO(EVP_CIPHER_get_asn1_iv, 
+//GO(EVP_CipherInit, 
+//GO(EVP_CipherInit_ex, 
+//GO(EVP_CIPHER_iv_length, 
+//GO(EVP_CIPHER_key_length, 
+//GO(EVP_CIPHER_nid, 
+//GO(EVP_CIPHER_param_to_asn1, 
+//GO(EVP_CIPHER_set_asn1_iv, 
+//GO(EVP_CIPHER_type, 
+//GO(EVP_CipherUpdate, 
+GO(EVP_cleanup, vFv)
+//GO(EVP_DecodeBlock, 
+//GO(EVP_DecodeFinal, 
+//GO(EVP_DecodeInit, 
+//GO(EVP_DecodeUpdate, 
+//GO(EVP_DecryptFinal, 
+//GO(EVP_DecryptFinal_ex, 
+//GO(EVP_DecryptInit, 
+//GO(EVP_DecryptInit_ex, 
+//GO(EVP_DecryptUpdate, 
+GO(EVP_des_cbc, pFv)
+//GO(EVP_des_cfb, 
+//GO(EVP_des_cfb1, 
+//GO(EVP_des_cfb64, 
+//GO(EVP_des_cfb8, 
+//GO(EVP_des_ecb, 
+//GO(EVP_des_ede, 
+//GO(EVP_des_ede3, 
+GO(EVP_des_ede3_cbc, pFv)
+//GO(EVP_des_ede3_cfb, 
+//GO(EVP_des_ede3_cfb1, 
+//GO(EVP_des_ede3_cfb64, 
+//GO(EVP_des_ede3_cfb8, 
+//GO(EVP_des_ede3_ecb, 
+//GO(EVP_des_ede3_ofb, 
+//GO(EVP_des_ede3_wrap, 
+//GO(EVP_des_ede_cbc, 
+//GO(EVP_des_ede_cfb, 
+//GO(EVP_des_ede_cfb64, 
+//GO(EVP_des_ede_ecb, 
+//GO(EVP_des_ede_ofb, 
+//GO(EVP_des_ofb, 
+//GO(EVP_desx_cbc, 
+//GO(EVP_Digest, 
+//GO(EVP_DigestFinal, 
+GO(EVP_DigestFinal_ex, iFppp)
+GO(EVP_DigestInit, iFpp)
+GO(EVP_DigestInit_ex, iFppp)
+GO(EVP_DigestSignFinal, iFppp)
+//GO(EVP_DigestSignInit, 
+GO(EVP_DigestUpdate, iFppL)
+//GO(EVP_DigestVerifyFinal, 
+//GO(EVP_DigestVerifyInit, 
+//GO(EVP_dss, 
+//GO(EVP_dss1, 
+//GO(EVP_ecdsa, 
+//GO(EVP_enc_null, 
+//GO(EVP_EncodeBlock, 
+//GO(EVP_EncodeFinal, 
+//GO(EVP_EncodeInit, 
+//GO(EVP_EncodeUpdate, 
+//GO(EVP_EncryptFinal, 
+//GO(EVP_EncryptFinal_ex, 
+//GO(EVP_EncryptInit, 
+//GO(EVP_EncryptInit_ex, 
+//GO(EVP_EncryptUpdate, 
+//GO(EVP_get_cipherbyname, 
+GO(EVP_get_digestbyname, pFp)
+//GO(EVP_get_pw_prompt, 
+//GO(EVP_idea_cbc, 
+//GO(EVP_idea_cfb, 
+//GO(EVP_idea_cfb64, 
+//GO(EVP_idea_ecb, 
+//GO(EVP_idea_ofb, 
+GO(EVP_md4, pFv)
+GO(EVP_md5, pFv)
+GO(EVP_MD_block_size, iFp)
+//GO(EVP_mdc2, 
+GO(EVP_MD_CTX_cleanup, iFp)
+//GO(EVP_MD_CTX_clear_flags, 
+GO(EVP_MD_CTX_copy, iFpp)
+GO(EVP_MD_CTX_copy_ex, iFpp)
+//GO(EVP_MD_CTX_create, 
+GO(EVP_MD_CTX_destroy, vFp)
+//GO(EVP_MD_CTX_init, 
+GO(EVP_MD_CTX_md, pFp)
+//GO(EVP_MD_CTX_set_flags, 
+//GO(EVP_MD_CTX_test_flags, 
+//GO(EVP_MD_do_all, 
+//GO(EVP_MD_do_all_sorted, 
+//GO(EVP_MD_flags, 
+GO(EVP_md_null, pFv)
+GO(EVP_MD_pkey_type, iFp)
+GO(EVP_MD_size, iFp)
+GO(EVP_MD_type, iFp)
+//GO(EVP_OpenFinal, 
+//GO(EVP_OpenInit, 
+//GO(EVP_PBE_alg_add, 
+//GO(EVP_PBE_alg_add_type, 
+//GO(EVP_PBE_CipherInit, 
+//GO(EVP_PBE_cleanup, 
+//GO(EVP_PBE_find, 
+//GO(EVP_PKCS82PKEY, 
+//GO(EVP_PKEY2PKCS8, 
+//GO(EVP_PKEY2PKCS8_broken, 
+//GO(EVP_PKEY_add1_attr, 
+//GO(EVP_PKEY_add1_attr_by_NID, 
+//GO(EVP_PKEY_add1_attr_by_OBJ, 
+//GO(EVP_PKEY_add1_attr_by_txt, 
+//GO(EVP_PKEY_asn1_add0, 
+//GO(EVP_PKEY_asn1_add_alias, 
+//GO(EVP_PKEY_asn1_copy, 
+//GO(EVP_PKEY_asn1_find, 
+//GO(EVP_PKEY_asn1_find_str, 
+//GO(EVP_PKEY_asn1_free, 
+//GO(EVP_PKEY_asn1_get0, 
+//GO(EVP_PKEY_asn1_get0_info, 
+//GO(EVP_PKEY_asn1_get_count, 
+//GO(EVP_PKEY_asn1_new, 
+//GO(EVP_PKEY_asn1_set_ctrl, 
+//GO(EVP_PKEY_asn1_set_free, 
+//GO(EVP_PKEY_asn1_set_item, 
+//GO(EVP_PKEY_asn1_set_param, 
+//GO(EVP_PKEY_asn1_set_private, 
+//GO(EVP_PKEY_asn1_set_public, 
+GO(EVP_PKEY_assign, iFpip)
+//GO(EVP_PKEY_base_id, 
+//GO(EVP_PKEY_bits, 
+GO(EVP_PKEY_cmp, iFpp)
+GO(EVP_PKEY_cmp_parameters, iFpp)
+GO(EVP_PKEY_copy_parameters, iFpp)
+//GO(EVP_PKEY_CTX_ctrl, 
+//GO(EVP_PKEY_CTX_ctrl_str, 
+//GO(EVP_PKEY_CTX_dup, 
+//GO(EVP_PKEY_CTX_free, 
+//GO(EVP_PKEY_CTX_get0_peerkey, 
+//GO(EVP_PKEY_CTX_get0_pkey, 
+//GO(EVP_PKEY_CTX_get_app_data, 
+//GO(EVP_PKEY_CTX_get_cb, 
+//GO(EVP_PKEY_CTX_get_data, 
+//GO(EVP_PKEY_CTX_get_keygen_info, 
+//GO(EVP_PKEY_CTX_get_operation, 
+//GO(EVP_PKEY_CTX_new, 
+//GO(EVP_PKEY_CTX_new_id, 
+//GO(EVP_PKEY_CTX_set0_keygen_info, 
+//GO(EVP_PKEY_CTX_set_app_data, 
+//GO(EVP_PKEY_CTX_set_cb, 
+//GO(EVP_PKEY_CTX_set_data, 
+//GO(EVP_PKEY_decrypt, 
+//GO(EVP_PKEY_decrypt_init, 
+//GO(EVP_PKEY_decrypt_old, 
+//GO(EVP_PKEY_delete_attr, 
+//GO(EVP_PKEY_derive, 
+//GO(EVP_PKEY_derive_init, 
+//GO(EVP_PKEY_derive_set_peer, 
+//GO(EVP_PKEY_encrypt, 
+//GO(EVP_PKEY_encrypt_init, 
+//GO(EVP_PKEY_encrypt_old, 
+GO(EVP_PKEY_free, vFp)
+//GO(EVP_PKEY_get0, 
+//GO(EVP_PKEY_get0_asn1, 
+//GO(EVP_PKEY_get1_DH, 
+GO(EVP_PKEY_get1_DSA, pFp)
+GO(EVP_PKEY_get1_EC_KEY, pFp)
+GO(EVP_PKEY_get1_RSA, pFp)
+//GO(EVP_PKEY_get_attr, 
+//GO(EVP_PKEY_get_attr_by_NID, 
+//GO(EVP_PKEY_get_attr_by_OBJ, 
+//GO(EVP_PKEY_get_attr_count, 
+//GO(EVP_PKEY_get_default_digest_nid, 
+//GO(EVP_PKEY_id, 
+//GO(EVP_PKEY_keygen, 
+//GO(EVP_PKEY_keygen_init, 
+//GO(EVP_PKEY_meth_add0, 
+//GO(EVP_PKEY_meth_copy, 
+//GO(EVP_PKEY_meth_find, 
+//GO(EVP_PKEY_meth_free, 
+//GO(EVP_PKEY_meth_get0_info, 
+//GO(EVP_PKEY_meth_new, 
+//GO(EVP_PKEY_meth_set_cleanup, 
+//GO(EVP_PKEY_meth_set_copy, 
+//GO(EVP_PKEY_meth_set_ctrl, 
+//GO(EVP_PKEY_meth_set_decrypt, 
+//GO(EVP_PKEY_meth_set_derive, 
+//GO(EVP_PKEY_meth_set_encrypt, 
+//GO(EVP_PKEY_meth_set_init, 
+//GO(EVP_PKEY_meth_set_keygen, 
+//GO(EVP_PKEY_meth_set_paramgen, 
+//GO(EVP_PKEY_meth_set_sign, 
+//GO(EVP_PKEY_meth_set_signctx, 
+//GO(EVP_PKEY_meth_set_verify, 
+//GO(EVP_PKEY_meth_set_verifyctx, 
+//GO(EVP_PKEY_meth_set_verify_recover, 
+GO(EVP_PKEY_missing_parameters, iFp)
+GO(EVP_PKEY_new, pFv)
+//GO(EVP_PKEY_new_mac_key, 
+//GO(EVP_PKEY_paramgen, 
+//GO(EVP_PKEY_paramgen_init, 
+//GO(EVP_PKEY_print_params, 
+//GO(EVP_PKEY_print_private, 
+//GO(EVP_PKEY_print_public, 
+//GO(EVP_PKEY_save_parameters, 
+//GO(EVP_PKEY_set1_DH, 
+GO(EVP_PKEY_set1_DSA, iFpp)
+GO(EVP_PKEY_set1_EC_KEY, iFpp)
+GO(EVP_PKEY_set1_RSA, iFpp)
+//GO(evp_pkey_set_cb_translate, 
+//GO(EVP_PKEY_set_type, 
+//GO(EVP_PKEY_set_type_str, 
+//GO(EVP_PKEY_sign, 
+//GO(EVP_PKEY_sign_init, 
+//GO(EVP_PKEY_size, 
+GO(EVP_PKEY_type, iFi)
+GO(EVP_PKEY_up_ref, iFp)
+//GO(EVP_PKEY_verify, 
+//GO(EVP_PKEY_verify_init, 
+//GO(EVP_PKEY_verify_recover, 
+//GO(EVP_PKEY_verify_recover_init, 
+//GO(EVP_rc2_40_cbc, 
+//GO(EVP_rc2_64_cbc, 
+//GO(EVP_rc2_cbc, 
+//GO(EVP_rc2_cfb, 
+//GO(EVP_rc2_cfb64, 
+//GO(EVP_rc2_ecb, 
+//GO(EVP_rc2_ofb, 
+//GO(EVP_rc4, 
+//GO(EVP_rc4_40, 
+//GO(EVP_rc4_hmac_md5, 
+//GO(EVP_read_pw_string, 
+//GO(EVP_read_pw_string_min, 
+//GO(EVP_ripemd160, 
+//GO(EVP_SealFinal, 
+//GO(EVP_SealInit, 
+//GO(EVP_seed_cbc, 
+//GO(EVP_seed_cfb128, 
+//GO(EVP_seed_ecb, 
+//GO(EVP_seed_ofb, 
+//GO(EVP_set_pw_prompt, 
+GO(EVP_sha, pFV)
+GO(EVP_sha1, pFv)
+GO(EVP_sha224, pFv)
+GO(EVP_sha256, pFv)
+GO(EVP_sha384, pFv)
+GO(EVP_sha512, pFv)
+//GO(EVP_SignFinal, 
+GO(EVP_VerifyFinal, iFppup)
+GO(EVP_VerifyInit, iFpp)        // 1.1.0+
+GO(EVP_VerifyInit_ex, iFppp)    // 1.1.0+
+GO(EVP_VerifyUpdate, iFppu)     // 1.1.0+
+//GO(EVP_whirlpool, 
+//GO(EXTENDED_KEY_USAGE_free, 
+//GO(EXTENDED_KEY_USAGE_new, 
+//GO(fcrypt_body, 
+//GO(_fini, 
+//GO(FIPS_mode, 
+//GO(FIPS_mode_set, 
+//GO(gcm_ghash_4bit, 
+//GO(gcm_ghash_neon, 
+//GO(gcm_ghash_v8, 
+//GO(gcm_gmult_4bit, 
+//GO(gcm_gmult_neon, 
+//GO(gcm_gmult_v8, 
+//GO(gcm_init_neon, 
+//GO(gcm_init_v8, 
+//GO(GENERAL_NAME_cmp, 
+GO(GENERAL_NAME_dup, pFp)
+GO(GENERAL_NAME_free, vFp)
+//GO(GENERAL_NAME_get0_otherName, 
+//GO(GENERAL_NAME_get0_value, 
+GO(GENERAL_NAME_new, pFv)
+//GO(GENERAL_NAME_print, 
+//GO(GENERAL_NAME_set0_othername, 
+//GO(GENERAL_NAME_set0_value, 
+GO(GENERAL_NAMES_free, vFp)
+GO(GENERAL_NAMES_new, pFv)
+GO(GENERAL_SUBTREE_free, vFp)
+GO(GENERAL_SUBTREE_new, pFv)
+//GO(get_rfc2409_prime_1024, 
+//GO(get_rfc2409_prime_768, 
+//GO(get_rfc3526_prime_1536, 
+//GO(get_rfc3526_prime_2048, 
+//GO(get_rfc3526_prime_3072, 
+//GO(get_rfc3526_prime_4096, 
+//GO(get_rfc3526_prime_6144, 
+//GO(get_rfc3526_prime_8192, 
+//GO(hex_to_string, 
+//GO(HMAC, 
+//GO(HMAC_CTX_cleanup, 
+//GO(HMAC_CTX_copy, 
+//GO(HMAC_CTX_init, 
+//GO(HMAC_CTX_set_flags, 
+//GO(HMAC_Final, 
+//GO(HMAC_Init, 
+//GO(HMAC_Init_ex, 
+//GO(HMAC_Update, 
+//GO(i2a_ACCESS_DESCRIPTION, 
+//GO(i2a_ASN1_ENUMERATED, 
+//GO(i2a_ASN1_INTEGER, 
+//GO(i2a_ASN1_OBJECT, 
+//GO(i2a_ASN1_STRING, 
+//GO(i2b_PrivateKey_bio, 
+//GO(i2b_PublicKey_bio, 
+//GO(i2b_PVK_bio, 
+//GO(i2c_ASN1_BIT_STRING, 
+//GO(i2c_ASN1_INTEGER, 
+//GO(i2d_ACCESS_DESCRIPTION, 
+//GO(i2d_ASN1_bio_stream, 
+//GO(i2d_ASN1_BIT_STRING, 
+//GO(i2d_ASN1_BMPSTRING, 
+//GO(i2d_ASN1_BOOLEAN, 
+//GO(i2d_ASN1_bytes, 
+//GO(i2d_ASN1_ENUMERATED, 
+//GO(i2d_ASN1_GENERALIZEDTIME, 
+//GO(i2d_ASN1_GENERALSTRING, 
+//GO(i2d_ASN1_IA5STRING, 
+//GO(i2d_ASN1_INTEGER, 
+//GO(i2d_ASN1_NULL, 
+//GO(i2d_ASN1_OBJECT, 
+//GO(i2d_ASN1_OCTET_STRING, 
+//GO(i2d_ASN1_PRINTABLE, 
+//GO(i2d_ASN1_PRINTABLESTRING, 
+//GO(i2d_ASN1_SEQUENCE_ANY, 
+//GO(i2d_ASN1_SET, 
+//GO(i2d_ASN1_SET_ANY, 
+//GO(i2d_ASN1_T61STRING, 
+//GO(i2d_ASN1_TIME, 
+//GO(i2d_ASN1_TYPE, 
+//GO(i2d_ASN1_UNIVERSALSTRING, 
+//GO(i2d_ASN1_UTCTIME, 
+//GO(i2d_ASN1_UTF8STRING, 
+//GO(i2d_ASN1_VISIBLESTRING, 
+//GO(i2d_AUTHORITY_INFO_ACCESS, 
+//GO(i2d_AUTHORITY_KEYID, 
+//GO(i2d_BASIC_CONSTRAINTS, 
+//GO(i2d_CERTIFICATEPOLICIES, 
+GO(i2d_CMS_bio, iFpp)
+//GO(i2d_CMS_bio_stream, 
+//GO(i2d_CMS_ContentInfo, 
+//GO(i2d_CMS_ReceiptRequest, 
+//GO(i2d_CRL_DIST_POINTS, 
+GO(i2d_DHparams, iFpp)
+//GO(i2d_DHxparams, 
+//GO(i2d_DIRECTORYSTRING, 
+//GO(i2d_DISPLAYTEXT, 
+//GO(i2d_DIST_POINT, 
+//GO(i2d_DIST_POINT_NAME, 
+//GO(i2d_DSAparams, 
+GO(i2d_DSAPrivateKey, iFpp)
+GO(i2d_DSAPrivateKey_bio, iFpp)
+GO(i2d_DSAPrivateKey_fp, iFpp)
+GO(i2d_DSA_PUBKEY, iFpp)
+GO(i2d_DSA_PUBKEY_bio, iFpp)
+GO(i2d_DSA_PUBKEY_fp, iFpp)
+//GO(i2d_DSAPublicKey, 
+//GO(i2d_DSA_SIG, 
+//GO(i2d_ECDSA_SIG, 
+//GO(i2d_ECParameters, 
+//GO(i2d_ECPKParameters, 
+//GO(i2d_ECPKPARAMETERS, 
+GO(i2d_ECPrivateKey, iFpp)
+//GO(i2d_EC_PRIVATEKEY, 
+GO(i2d_ECPrivateKey_bio, iFpp)
+GO(i2d_ECPrivateKey_fp, iFpp)
+GO(i2d_EC_PUBKEY, iFpp)
+GO(i2d_EC_PUBKEY_bio, iFpp)
+GO(i2d_EC_PUBKEY_fp, iFpp)
+//GO(i2d_EDIPARTYNAME, 
+//GO(i2d_ESS_CERT_ID, 
+//GO(i2d_ESS_ISSUER_SERIAL, 
+//GO(i2d_ESS_SIGNING_CERT, 
+//GO(i2d_EXTENDED_KEY_USAGE, 
+//GO(i2d_GENERAL_NAME, 
+//GO(i2d_GENERAL_NAMES, 
+//GO(i2d_int_dhx, 
+//GO(i2d_ISSUING_DIST_POINT, 
+//GO(i2d_KRB5_APREQ, 
+//GO(i2d_KRB5_APREQBODY, 
+//GO(i2d_KRB5_AUTHDATA, 
+//GO(i2d_KRB5_AUTHENT, 
+//GO(i2d_KRB5_AUTHENTBODY, 
+//GO(i2d_KRB5_CHECKSUM, 
+//GO(i2d_KRB5_ENCDATA, 
+//GO(i2d_KRB5_ENCKEY, 
+//GO(i2d_KRB5_PRINCNAME, 
+//GO(i2d_KRB5_TICKET, 
+//GO(i2d_KRB5_TKTBODY, 
+//GO(i2d_NETSCAPE_CERT_SEQUENCE, 
+//GO(i2d_NETSCAPE_ENCRYPTED_PKEY, 
+//GO(i2d_NETSCAPE_PKEY, 
+//GO(i2d_Netscape_RSA, 
+//GO(i2d_NETSCAPE_SPKAC, 
+//GO(i2d_NETSCAPE_SPKI, 
+//GO(i2d_NETSCAPE_X509, 
+//GO(i2d_NOTICEREF, 
+//GO(i2d_OCSP_BASICRESP, 
+//GO(i2d_OCSP_CERTID, 
+//GO(i2d_OCSP_CERTSTATUS, 
+//GO(i2d_OCSP_CRLID, 
+//GO(i2d_OCSP_ONEREQ, 
+//GO(i2d_OCSP_REQINFO, 
+//GO(i2d_OCSP_REQUEST, 
+//GO(i2d_OCSP_RESPBYTES, 
+//GO(i2d_OCSP_RESPDATA, 
+//GO(i2d_OCSP_RESPID, 
+//GO(i2d_OCSP_RESPONSE, 
+//GO(i2d_OCSP_REVOKEDINFO, 
+//GO(i2d_OCSP_SERVICELOC, 
+//GO(i2d_OCSP_SIGNATURE, 
+//GO(i2d_OCSP_SINGLERESP, 
+//GO(i2d_OTHERNAME, 
+//GO(i2d_PBE2PARAM, 
+//GO(i2d_PBEPARAM, 
+//GO(i2d_PBKDF2PARAM, 
+GO(i2d_PKCS12, iFpp)
+//GO(i2d_PKCS12_BAGS, 
+GO(i2d_PKCS12_bio, iFpp)
+GO(i2d_PKCS12_fp, iFpp)
+//GO(i2d_PKCS12_MAC_DATA, 
+//GO(i2d_PKCS12_SAFEBAG, 
+GO(i2d_PKCS7, iFpp)
+GO(i2d_PKCS7_bio, iFpp)
+//GO(i2d_PKCS7_bio_stream, 
+//GO(i2d_PKCS7_DIGEST, 
+//GO(i2d_PKCS7_ENC_CONTENT, 
+//GO(i2d_PKCS7_ENCRYPT, 
+//GO(i2d_PKCS7_ENVELOPE, 
+GO(i2d_PKCS7_fp, iFpp)
+//GO(i2d_PKCS7_ISSUER_AND_SERIAL, 
+//GO(i2d_PKCS7_NDEF, 
+//GO(i2d_PKCS7_RECIP_INFO, 
+//GO(i2d_PKCS7_SIGNED, 
+//GO(i2d_PKCS7_SIGN_ENVELOPE, 
+//GO(i2d_PKCS7_SIGNER_INFO, 
+GO(i2d_PKCS8_bio, iFpp)
+GO(i2d_PKCS8_fp, iFpp)
+GO(i2d_PKCS8PrivateKey_bio, iFpp)
+GO(i2d_PKCS8PrivateKey_fp, iFpp)
+GO(i2d_PKCS8PrivateKeyInfo_bio, iFpp)
+GO(i2d_PKCS8PrivateKeyInfo_fp, iFpp)
+GO(i2d_PKCS8PrivateKey_nid_bio, iFpp)
+GO(i2d_PKCS8PrivateKey_nid_fp, iFpp)
+GO(i2d_PKCS8_PRIV_KEY_INFO, iFpp)
+GO(i2d_PKCS8_PRIV_KEY_INFO_bio, iFpp)
+GO(i2d_PKCS8_PRIV_KEY_INFO_fp, iFpp)
+//GO(i2d_PKEY_USAGE_PERIOD, 
+//GO(i2d_POLICYINFO, 
+//GO(i2d_POLICYQUALINFO, 
+GO(i2d_PrivateKey, iFpp)
+GO(i2d_PrivateKey_bio, iFpp)
+GO(i2d_PrivateKey_fp, iFpp)
+//GO(i2d_PROXY_CERT_INFO_EXTENSION, 
+//GO(i2d_PROXY_POLICY, 
+GO(i2d_PUBKEY, iFpp)
+GO(i2d_PUBKEY_bio, iFpp)
+GO(i2d_PUBKEY_fp, iFpp)
+//GO(i2d_PublicKey, 
+//GO(i2d_re_X509_tbs, 
+//GO(i2d_RSA_NET, 
+//GO(i2d_RSA_OAEP_PARAMS, 
+GO(i2d_RSAPrivateKey, iFpp)
+GO(i2d_RSAPrivateKey_bio, iFpp)
+GO(i2d_RSAPrivateKey_fp, iFpp)
+//GO(i2d_RSA_PSS_PARAMS, 
+GO(i2d_RSA_PUBKEY, iFpp)
+GO(i2d_RSA_PUBKEY_bio, iFpp)
+GO(i2d_RSA_PUBKEY_fp, iFpp)
+GO(i2d_RSAPublicKey, iFpp)
+GO(i2d_RSAPublicKey_bio, iFpp)
+GO(i2d_RSAPublicKey_fp, iFpp)
+//GO(i2d_SXNET, 
+//GO(i2d_SXNETID, 
+//GO(i2d_TS_ACCURACY, 
+GO(i2d_TS_MSG_IMPRINT, iFpp)
+GO(i2d_TS_MSG_IMPRINT_bio, iFpp)
+GO(i2d_TS_MSG_IMPRINT_fp, iFpp)
+GO(i2d_TS_REQ, iFpp)
+GO(i2d_TS_REQ_bio, iFpp)
+GO(i2d_TS_REQ_fp, iFpp)
+GO(i2d_TS_RESP, iFpp)
+GO(i2d_TS_RESP_bio, iFpp)
+GO(i2d_TS_RESP_fp, iFpp)
+//GO(i2d_TS_STATUS_INFO, 
+GO(i2d_TS_TST_INFO, iFpp)
+GO(i2d_TS_TST_INFO_bio, iFpp)
+GO(i2d_TS_TST_INFO_fp, iFpp)
+//GO(i2d_USERNOTICE, 
+GO(i2d_X509, iFpp)
+//GO(i2d_X509_ALGOR, 
+//GO(i2d_X509_ALGORS, 
+//GO(i2d_X509_ATTRIBUTE, 
+//GO(i2d_X509_AUX, 
+GO(i2d_X509_bio, iFpp)
+//GO(i2d_X509_CERT_AUX, 
+//GO(i2d_X509_CERT_PAIR, 
+//GO(i2d_X509_CINF, 
+GO(i2d_X509_CRL, iFpp)
+GO(i2d_X509_CRL_bio, iFpp)
+GO(i2d_X509_CRL_fp, iFpp)
+//GO(i2d_X509_CRL_INFO, 
+//GO(i2d_X509_EXTENSION, 
+//GO(i2d_X509_EXTENSIONS, 
+GO(i2d_X509_fp, iFpp)
+//GO(i2d_X509_NAME, 
+//GO(i2d_X509_NAME_ENTRY, 
+//GO(i2d_X509_PKEY, 
+//GO(i2d_X509_PUBKEY, 
+GO(i2d_X509_REQ, iFpp)
+GO(i2d_X509_REQ_bio, iFpp)
+GO(i2d_X509_REQ_fp, iFpp)
+//GO(i2d_X509_REQ_INFO, 
+//GO(i2d_X509_REVOKED, 
+//GO(i2d_X509_SIG, 
+//GO(i2d_X509_VAL, 
+//GO(i2o_ECPublicKey, 
+//GO(i2s_ASN1_ENUMERATED, 
+//GO(i2s_ASN1_ENUMERATED_TABLE, 
+//GO(i2s_ASN1_INTEGER, 
+//GO(i2s_ASN1_OCTET_STRING, 
+GO(i2t_ASN1_OBJECT, iFpip)
+//GO(i2v_ASN1_BIT_STRING, 
+//GO(i2v_GENERAL_NAME, 
+//GO(i2v_GENERAL_NAMES, 
+//GO(idea_cbc_encrypt, 
+//GO(idea_cfb64_encrypt, 
+//GO(idea_ecb_encrypt, 
+//GO(idea_encrypt, 
+//GO(idea_ofb64_encrypt, 
+//GO(idea_options, 
+//GO(idea_set_decrypt_key, 
+//GO(idea_set_encrypt_key, 
+//GO(_init, 
+//GO(int_rsa_verify, 
+//GO(ISSUING_DIST_POINT_free, 
+//GO(ISSUING_DIST_POINT_new, 
+//GO(KRB5_APREQBODY_free, 
+//GO(KRB5_APREQBODY_new, 
+//GO(KRB5_APREQ_free, 
+//GO(KRB5_APREQ_new, 
+//GO(KRB5_AUTHDATA_free, 
+//GO(KRB5_AUTHDATA_new, 
+//GO(KRB5_AUTHENTBODY_free, 
+//GO(KRB5_AUTHENTBODY_new, 
+//GO(KRB5_AUTHENT_free, 
+//GO(KRB5_AUTHENT_new, 
+//GO(KRB5_CHECKSUM_free, 
+//GO(KRB5_CHECKSUM_new, 
+//GO(KRB5_ENCDATA_free, 
+//GO(KRB5_ENCDATA_new, 
+//GO(KRB5_ENCKEY_free, 
+//GO(KRB5_ENCKEY_new, 
+//GO(KRB5_PRINCNAME_free, 
+//GO(KRB5_PRINCNAME_new, 
+//GO(KRB5_TICKET_free, 
+//GO(KRB5_TICKET_new, 
+//GO(KRB5_TKTBODY_free, 
+//GO(KRB5_TKTBODY_new, 
+//GO(level_add_node, 
+//GO(level_find_node, 
+//GO(lh_delete, 
+//GO(lh_doall, 
+//GO(lh_doall_arg, 
+//GO(lh_free, 
+//GO(lh_insert, 
+//GO(lh_new, 
+//GO(lh_node_stats, 
+//GO(lh_node_stats_bio, 
+//GO(lh_node_usage_stats, 
+//GO(lh_node_usage_stats_bio, 
+//GO(lh_num_items, 
+//GO(lh_retrieve, 
+//GO(lh_stats, 
+//GO(lh_stats_bio, 
+//GO(lh_strhash, 
+//GO(MD4, 
+//GO(md4_block_data_order, 
+GO(MD4_Final, iFpp)
+GO(MD4_Init, iFp)
+//GO(MD4_Transform, 
+GO(MD4_Update, iFppu)
+//GO(MD5, 
+//GO(md5_block_data_order, 
+GO(MD5_Final, iFpp)
+GO(MD5_Init, iFp)
+//GO(MD5_Transform, 
+GO(MD5_Update, iFppu)
+//GO(MDC2, 
+//GO(MDC2_Final, 
+//GO(MDC2_Init, 
+//GO(MDC2_Update, 
+//GO(name_cmp, 
+//GO(NAME_CONSTRAINTS_check, 
+//GO(NAME_CONSTRAINTS_free, 
+//GO(NAME_CONSTRAINTS_new, 
+//GO(NCONF_default, 
+//GO(NCONF_dump_bio, 
+//GO(NCONF_dump_fp, 
+//GO(NCONF_free, 
+//GO(NCONF_free_data, 
+//GO(NCONF_get_number_e, 
+//GO(NCONF_get_section, 
+//GO(NCONF_get_string, 
+//GO(NCONF_load, 
+//GO(NCONF_load_bio, 
+//GO(NCONF_load_fp, 
+//GO(NCONF_new, 
+//GO(NCONF_WIN32, 
+//GO(NETSCAPE_CERT_SEQUENCE_free, 
+//GO(NETSCAPE_CERT_SEQUENCE_new, 
+//GO(NETSCAPE_ENCRYPTED_PKEY_free, 
+//GO(NETSCAPE_ENCRYPTED_PKEY_new, 
+//GO(NETSCAPE_PKEY_free, 
+//GO(NETSCAPE_PKEY_new, 
+//GO(NETSCAPE_SPKAC_free, 
+//GO(NETSCAPE_SPKAC_new, 
+//GO(NETSCAPE_SPKI_b64_decode, 
+//GO(NETSCAPE_SPKI_b64_encode, 
+//GO(NETSCAPE_SPKI_free, 
+//GO(NETSCAPE_SPKI_get_pubkey, 
+//GO(NETSCAPE_SPKI_new, 
+//GO(NETSCAPE_SPKI_print, 
+//GO(NETSCAPE_SPKI_set_pubkey, 
+//GO(NETSCAPE_SPKI_sign, 
+//GO(NETSCAPE_SPKI_verify, 
+//GO(NETSCAPE_X509_free, 
+//GO(NETSCAPE_X509_new, 
+//GO(NOTICEREF_free, 
+//GO(NOTICEREF_new, 
+//GO(o2i_ECPublicKey, 
+//GO(OBJ_add_object, 
+//GO(OBJ_add_sigid, 
+//GO(OBJ_bsearch_, 
+//GO(OBJ_bsearch_ex_, 
+GO(OBJ_cleanup, vFv)
+GO(OBJ_cmp, iFpp)
+GO(OBJ_create, iFppp)
+//GO(OBJ_create_objects, 
+GO(OBJ_dup, pFp)
+//GO(OBJ_find_sigid_algs, 
+//GO(OBJ_find_sigid_by_algs, 
+GO(OBJ_ln2nid, iFp)
+//GO(OBJ_NAME_add, 
+//GO(OBJ_NAME_cleanup, 
+//GO(OBJ_NAME_do_all, 
+//GO(OBJ_NAME_do_all_sorted, 
+//GO(OBJ_NAME_get, 
+//GO(OBJ_NAME_init, 
+//GO(OBJ_NAME_new_index, 
+//GO(OBJ_NAME_remove, 
+//GO(OBJ_new_nid, 
+GO(OBJ_nid2ln, pFi)
+GO(OBJ_nid2obj, pFi)
+GO(OBJ_nid2sn, pFi)
+GO(OBJ_obj2nid, iFp)
+GO(OBJ_obj2txt, iFpipi)
+//GO(OBJ_sigid_free, 
+GO(OBJ_sn2nid, iFp)
+GO(OBJ_txt2nid, iFp)
+GO(OBJ_txt2obj, pFpi)
+//GO(OCSP_accept_responses_new, 
+//GO(OCSP_archive_cutoff_new, 
+//GO(OCSP_basic_add1_cert, 
+//GO(OCSP_basic_add1_nonce, 
+//GO(OCSP_basic_add1_status, 
+//GO(OCSP_BASICRESP_add1_ext_i2d, 
+//GO(OCSP_BASICRESP_add_ext, 
+//GO(OCSP_BASICRESP_delete_ext, 
+//GO(OCSP_BASICRESP_free, 
+//GO(OCSP_BASICRESP_get1_ext_d2i, 
+//GO(OCSP_BASICRESP_get_ext, 
+//GO(OCSP_BASICRESP_get_ext_by_critical, 
+//GO(OCSP_BASICRESP_get_ext_by_NID, 
+//GO(OCSP_BASICRESP_get_ext_by_OBJ, 
+//GO(OCSP_BASICRESP_get_ext_count, 
+//GO(OCSP_BASICRESP_new, 
+//GO(OCSP_basic_sign, 
+//GO(OCSP_basic_verify, 
+//GO(OCSP_CERTID_dup, 
+//GO(OCSP_CERTID_free, 
+//GO(OCSP_cert_id_new, 
+//GO(OCSP_CERTID_new, 
+//GO(OCSP_CERTSTATUS_free, 
+//GO(OCSP_CERTSTATUS_new, 
+//GO(OCSP_cert_status_str, 
+//GO(OCSP_cert_to_id, 
+//GO(OCSP_check_nonce, 
+//GO(OCSP_check_validity, 
+//GO(OCSP_copy_nonce, 
+//GO(OCSP_CRLID_free, 
+//GO(OCSP_crlID_new, 
+//GO(OCSP_CRLID_new, 
+//GO(OCSP_crl_reason_str, 
+//GO(OCSP_id_cmp, 
+//GO(OCSP_id_get0_info, 
+//GO(OCSP_id_issuer_cmp, 
+//GO(OCSP_ONEREQ_add1_ext_i2d, 
+//GO(OCSP_ONEREQ_add_ext, 
+//GO(OCSP_ONEREQ_delete_ext, 
+//GO(OCSP_ONEREQ_free, 
+//GO(OCSP_onereq_get0_id, 
+//GO(OCSP_ONEREQ_get1_ext_d2i, 
+//GO(OCSP_ONEREQ_get_ext, 
+//GO(OCSP_ONEREQ_get_ext_by_critical, 
+//GO(OCSP_ONEREQ_get_ext_by_NID, 
+//GO(OCSP_ONEREQ_get_ext_by_OBJ, 
+//GO(OCSP_ONEREQ_get_ext_count, 
+//GO(OCSP_ONEREQ_new, 
+//GO(OCSP_parse_url, 
+//GO(OCSP_REQ_CTX_add1_header, 
+//GO(OCSP_REQ_CTX_free, 
+//GO(OCSP_REQ_CTX_get0_mem_bio, 
+//GO(OCSP_REQ_CTX_http, 
+//GO(OCSP_REQ_CTX_i2d, 
+//GO(OCSP_REQ_CTX_nbio, 
+//GO(OCSP_REQ_CTX_nbio_d2i, 
+//GO(OCSP_REQ_CTX_new, 
+//GO(OCSP_REQ_CTX_set1_req, 
+//GO(OCSP_REQINFO_free, 
+//GO(OCSP_REQINFO_new, 
+//GO(OCSP_request_add0_id, 
+//GO(OCSP_request_add1_cert, 
+//GO(OCSP_REQUEST_add1_ext_i2d, 
+//GO(OCSP_request_add1_nonce, 
+//GO(OCSP_REQUEST_add_ext, 
+//GO(OCSP_REQUEST_delete_ext, 
+//GO(OCSP_REQUEST_free, 
+//GO(OCSP_REQUEST_get1_ext_d2i, 
+//GO(OCSP_REQUEST_get_ext, 
+//GO(OCSP_REQUEST_get_ext_by_critical, 
+//GO(OCSP_REQUEST_get_ext_by_NID, 
+//GO(OCSP_REQUEST_get_ext_by_OBJ, 
+//GO(OCSP_REQUEST_get_ext_count, 
+//GO(OCSP_request_is_signed, 
+//GO(OCSP_REQUEST_new, 
+//GO(OCSP_request_onereq_count, 
+//GO(OCSP_request_onereq_get0, 
+//GO(OCSP_REQUEST_print, 
+//GO(OCSP_request_set1_name, 
+//GO(OCSP_request_sign, 
+//GO(OCSP_request_verify, 
+//GO(OCSP_RESPBYTES_free, 
+//GO(OCSP_RESPBYTES_new, 
+//GO(OCSP_resp_count, 
+//GO(OCSP_RESPDATA_free, 
+//GO(OCSP_RESPDATA_new, 
+//GO(OCSP_resp_find, 
+//GO(OCSP_resp_find_status, 
+//GO(OCSP_resp_get0, 
+//GO(OCSP_RESPID_free, 
+//GO(OCSP_RESPID_new, 
+//GO(OCSP_response_create, 
+//GO(OCSP_RESPONSE_free, 
+//GO(OCSP_response_get1_basic, 
+//GO(OCSP_RESPONSE_new, 
+//GO(OCSP_RESPONSE_print, 
+//GO(OCSP_response_status, 
+//GO(OCSP_response_status_str, 
+//GO(OCSP_REVOKEDINFO_free, 
+//GO(OCSP_REVOKEDINFO_new, 
+//GO(OCSP_sendreq_bio, 
+//GO(OCSP_sendreq_nbio, 
+//GO(OCSP_sendreq_new, 
+//GO(OCSP_SERVICELOC_free, 
+//GO(OCSP_SERVICELOC_new, 
+//GO(OCSP_set_max_response_length, 
+//GO(OCSP_SIGNATURE_free, 
+//GO(OCSP_SIGNATURE_new, 
+//GO(OCSP_single_get0_status, 
+//GO(OCSP_SINGLERESP_add1_ext_i2d, 
+//GO(OCSP_SINGLERESP_add_ext, 
+//GO(OCSP_SINGLERESP_delete_ext, 
+//GO(OCSP_SINGLERESP_free, 
+//GO(OCSP_SINGLERESP_get1_ext_d2i, 
+//GO(OCSP_SINGLERESP_get_ext, 
+//GO(OCSP_SINGLERESP_get_ext_by_critical, 
+//GO(OCSP_SINGLERESP_get_ext_by_NID, 
+//GO(OCSP_SINGLERESP_get_ext_by_OBJ, 
+//GO(OCSP_SINGLERESP_get_ext_count, 
+//GO(OCSP_SINGLERESP_new, 
+//GO(OCSP_url_svcloc_new, 
+GO(OPENSSL_add_all_algorithms_conf, vFv)
+GO(OPENSSL_add_all_algorithms_noconf, vFv)
+GO(OpenSSL_add_all_ciphers, vFv)
+//GO(OpenSSL_add_all_digests, 
+//GO(OPENSSL_asc2uni, 
+//GO(OPENSSL_atomic_add, 
+//GO(OPENSSL_cleanse, 
+//GO(OPENSSL_config, 
+//GO(OPENSSL_cpuid_setup, 
+//GO(OpenSSLDie, 
+//GO(OPENSSL_DIR_end, 
+//GO(OPENSSL_DIR_read, 
+//GO(OPENSSL_gmtime, 
+//GO(OPENSSL_gmtime_adj, 
+//GO(OPENSSL_gmtime_diff, 
+//GO(OPENSSL_ia32cap_loc, 
+//GO(OPENSSL_init, 
+//GO(OPENSSL_instrument_bus, 
+//GO(OPENSSL_instrument_bus2, 
+//GO(OPENSSL_isservice, 
+//GO(OPENSSL_issetugid, 
+//GO(OPENSSL_load_builtin_modules, 
+//GO(OPENSSL_memcmp, 
+//GO(OPENSSL_no_config, 
+//GO(OPENSSL_rdtsc, 
+//GO(OPENSSL_showfatal, 
+//GO(OPENSSL_stderr, 
+//GO(OPENSSL_strcasecmp, 
+//GO(OPENSSL_strncasecmp, 
+//GO(OPENSSL_uni2asc, 
+//GO(OPENSSL_wipe_cpu, 
+//GO(_ossl_096_des_random_seed, 
+//GO(_ossl_old_crypt, 
+//GO(_ossl_old_des_cbc_cksum, 
+//GO(_ossl_old_des_cbc_encrypt, 
+//GO(_ossl_old_des_cfb64_encrypt, 
+//GO(_ossl_old_des_cfb_encrypt, 
+//GO(_ossl_old_des_crypt, 
+//GO(_ossl_old_des_decrypt3, 
+//GO(_ossl_old_des_ecb3_encrypt, 
+//GO(_ossl_old_des_ecb_encrypt, 
+//GO(_ossl_old_des_ede3_cbc_encrypt, 
+//GO(_ossl_old_des_ede3_cfb64_encrypt, 
+//GO(_ossl_old_des_ede3_ofb64_encrypt, 
+//GO(_ossl_old_des_enc_read, 
+//GO(_ossl_old_des_encrypt, 
+//GO(_ossl_old_des_encrypt2, 
+//GO(_ossl_old_des_encrypt3, 
+//GO(_ossl_old_des_enc_write, 
+//GO(_ossl_old_des_fcrypt, 
+//GO(_ossl_old_des_is_weak_key, 
+//GO(_ossl_old_des_key_sched, 
+//GO(_ossl_old_des_ncbc_encrypt, 
+//GO(_ossl_old_des_ofb64_encrypt, 
+//GO(_ossl_old_des_ofb_encrypt, 
+//GO(_ossl_old_des_options, 
+//GO(_ossl_old_des_pcbc_encrypt, 
+//GO(_ossl_old_des_quad_cksum, 
+//GO(_ossl_old_des_random_key, 
+//GO(_ossl_old_des_random_seed, 
+//GO(_ossl_old_des_read_2passwords, 
+//GO(_ossl_old_des_read_password, 
+//GO(_ossl_old_des_read_pw, 
+//GO(_ossl_old_des_read_pw_string, 
+//GO(_ossl_old_des_set_key, 
+//GO(_ossl_old_des_set_odd_parity, 
+//GO(_ossl_old_des_string_to_2keys, 
+//GO(_ossl_old_des_string_to_key, 
+//GO(_ossl_old_des_xcbc_encrypt, 
+//GO(OTHERNAME_cmp, 
+//GO(OTHERNAME_free, 
+//GO(OTHERNAME_new, 
+//GO(PBE2PARAM_free, 
+//GO(PBE2PARAM_new, 
+//GO(PBEPARAM_free, 
+//GO(PBEPARAM_new, 
+//GO(PBKDF2PARAM_free, 
+//GO(PBKDF2PARAM_new, 
+//GO(PEM_ASN1_read, 
+//GO(PEM_ASN1_read_bio, 
+//GO(PEM_ASN1_write, 
+//GO(PEM_ASN1_write_bio, 
+//GO(PEM_bytes_read_bio, 
+//GO(pem_check_suffix, 
+//GO(PEM_def_callback, 
+//GO(PEM_dek_info, 
+//GO(PEM_do_header, 
+//GO(PEM_get_EVP_CIPHER_INFO, 
+//GO(PEM_proc_type, 
+//GO(PEM_read, 
+//GO(PEM_read_bio, 
+//GO(PEM_read_bio_CMS, 
+//GO(PEM_read_bio_DHparams, 
+//GO(PEM_read_bio_DSAparams, 
+GOM(PEM_read_bio_DSAPrivateKey, pFEpppp)
+GOM(PEM_read_bio_DSA_PUBKEY, pFEpppp)
+//GO(PEM_read_bio_ECPKParameters, 
+GOM(PEM_read_bio_ECPrivateKey, pFEpppp)
+GOM(PEM_read_bio_EC_PUBKEY, pFEpppp)
+//GO(PEM_read_bio_NETSCAPE_CERT_SEQUENCE, 
+//GO(PEM_read_bio_Parameters, 
+//GO(PEM_read_bio_PKCS7, 
+//GO(PEM_read_bio_PKCS8, 
+//GO(PEM_read_bio_PKCS8_PRIV_KEY_INFO, 
+//GO(PEM_read_bio_PrivateKey, 
+//GO(PEM_read_bio_PUBKEY, 
+GOM(PEM_read_bio_RSAPrivateKey, pFEpppp)
+GOM(PEM_read_bio_RSA_PUBKEY, pFEpppp)
+//GO(PEM_read_bio_RSAPublicKey, 
+//GO(PEM_read_bio_X509, 
+//GO(PEM_read_bio_X509_AUX, 
+//GO(PEM_read_bio_X509_CERT_PAIR, 
+//GO(PEM_read_bio_X509_CRL, 
+//GO(PEM_read_bio_X509_REQ, 
+//GO(PEM_read_CMS, 
+//GO(PEM_read_DHparams, 
+//GO(PEM_read_DSAparams, 
+//GO(PEM_read_DSAPrivateKey, 
+//GO(PEM_read_DSA_PUBKEY, 
+//GO(PEM_read_ECPKParameters, 
+//GO(PEM_read_ECPrivateKey, 
+//GO(PEM_read_EC_PUBKEY, 
+//GO(PEM_read_NETSCAPE_CERT_SEQUENCE, 
+//GO(PEM_read_PKCS7, 
+//GO(PEM_read_PKCS8, 
+//GO(PEM_read_PKCS8_PRIV_KEY_INFO, 
+//GO(PEM_read_PrivateKey, 
+//GO(PEM_read_PUBKEY, 
+//GO(PEM_read_RSAPrivateKey, 
+//GO(PEM_read_RSA_PUBKEY, 
+//GO(PEM_read_RSAPublicKey, 
+GO(PEM_read_X509, pFpppp)
+GO(PEM_read_X509_AUX, pFpppp)
+//GO(PEM_read_X509_CERT_PAIR, 
+//GO(PEM_read_X509_CRL, 
+//GO(PEM_read_X509_REQ, 
+//GO(PEM_SealFinal, 
+//GO(PEM_SealInit, 
+//GO(PEM_SealUpdate, 
+//GO(PEM_SignFinal, 
+//GO(PEM_SignInit, 
+//GO(PEM_SignUpdate, 
+//GO(PEM_write, 
+//GO(PEM_write_bio, 
+//GO(PEM_write_bio_ASN1_stream, 
+//GO(PEM_write_bio_CMS, 
+//GO(PEM_write_bio_CMS_stream, 
+//GO(PEM_write_bio_DHparams, 
+//GO(PEM_write_bio_DHxparams, 
+//GO(PEM_write_bio_DSAparams, 
+GOM(PEM_write_bio_DSAPrivateKey, iFEppppipp)
+GO(PEM_write_bio_DSA_PUBKEY, iFpp)
+//GO(PEM_write_bio_ECPKParameters, 
+GOM(PEM_write_bio_ECPrivateKey, iFEppppipp)
+GO(PEM_write_bio_EC_PUBKEY, iFpp)
+//GO(PEM_write_bio_NETSCAPE_CERT_SEQUENCE, 
+//GO(PEM_write_bio_Parameters, 
+//GO(PEM_write_bio_PKCS7, 
+//GO(PEM_write_bio_PKCS7_stream, 
+//GO(PEM_write_bio_PKCS8, 
+//GO(PEM_write_bio_PKCS8PrivateKey, 
+//GO(PEM_write_bio_PKCS8PrivateKey_nid, 
+//GO(PEM_write_bio_PKCS8_PRIV_KEY_INFO, 
+//GO(PEM_write_bio_PrivateKey, 
+//GO(PEM_write_bio_PUBKEY, 
+GOM(PEM_write_bio_RSAPrivateKey, iFEppppipp)
+GO(PEM_write_bio_RSA_PUBKEY, iFpp)
+//GO(PEM_write_bio_RSAPublicKey, 
+GO(PEM_write_bio_X509, iFpp)
+GO(PEM_write_bio_X509_AUX, iFpp)
+//GO(PEM_write_bio_X509_CERT_PAIR, 
+//GO(PEM_write_bio_X509_CRL, 
+GO(PEM_write_bio_X509_REQ, iFpp)
+//GO(PEM_write_bio_X509_REQ_NEW, 
+//GO(PEM_write_CMS, 
+//GO(PEM_write_DHparams, 
+//GO(PEM_write_DHxparams, 
+//GO(PEM_write_DSAparams, 
+//GO(PEM_write_DSAPrivateKey, 
+//GO(PEM_write_DSA_PUBKEY, 
+//GO(PEM_write_ECPKParameters, 
+//GO(PEM_write_ECPrivateKey, 
+//GO(PEM_write_EC_PUBKEY, 
+//GO(PEM_write_NETSCAPE_CERT_SEQUENCE, 
+//GO(PEM_write_PKCS7, 
+//GO(PEM_write_PKCS8, 
+//GO(PEM_write_PKCS8PrivateKey, 
+//GO(PEM_write_PKCS8PrivateKey_nid, 
+//GO(PEM_write_PKCS8_PRIV_KEY_INFO, 
+//GO(PEM_write_PrivateKey, 
+//GO(PEM_write_PUBKEY, 
+//GO(PEM_write_RSAPrivateKey, 
+//GO(PEM_write_RSA_PUBKEY, 
+//GO(PEM_write_RSAPublicKey, 
+//GO(PEM_write_X509, 
+//GO(PEM_write_X509_AUX, 
+//GO(PEM_write_X509_CERT_PAIR, 
+//GO(PEM_write_X509_CRL, 
+//GO(PEM_write_X509_REQ, 
+//GO(PEM_write_X509_REQ_NEW, 
+//GO(PEM_X509_INFO_read, 
+//GO(PEM_X509_INFO_read_bio, 
+//GO(PEM_X509_INFO_write_bio, 
+//GO(pitem_free, 
+//GO(pitem_new, 
+//GO(PKCS12_add_cert, 
+//GO(PKCS12_add_CSPName_asc, 
+//GO(PKCS12_add_friendlyname_asc, 
+//GO(PKCS12_add_friendlyname_uni, 
+//GO(PKCS12_add_key, 
+//GO(PKCS12_add_localkeyid, 
+//GO(PKCS12_add_safe, 
+//GO(PKCS12_add_safes, 
+//GO(PKCS12_BAGS_free, 
+//GO(PKCS12_BAGS_new, 
+//GO(PKCS12_certbag2x509, 
+//GO(PKCS12_certbag2x509crl, 
+//GO(PKCS12_create, 
+//GO(PKCS12_decrypt_skey, 
+GO(PKCS12_free, vFp)
+//GO(PKCS12_gen_mac, 
+//GO(PKCS12_get_attr_gen, 
+//GO(PKCS12_get_friendlyname, 
+//GO(PKCS12_init, 
+//GO(PKCS12_item_decrypt_d2i, 
+//GO(PKCS12_item_i2d_encrypt, 
+//GO(PKCS12_item_pack_safebag, 
+//GO(PKCS12_key_gen_asc, 
+//GO(PKCS12_key_gen_uni, 
+//GO(PKCS12_MAC_DATA_free, 
+//GO(PKCS12_MAC_DATA_new, 
+//GO(PKCS12_MAKE_KEYBAG, 
+//GO(PKCS12_MAKE_SHKEYBAG, 
+GO(PKCS12_new, pFv)
+//GO(PKCS12_newpass, 
+//GO(PKCS12_pack_authsafes, 
+//GO(PKCS12_pack_p7data, 
+//GO(PKCS12_pack_p7encdata, 
+GO(PKCS12_parse, iFppppp)
+GO(PKCS12_PBE_add, vFv)
+//GO(PKCS12_pbe_crypt, 
+GO(PKCS12_PBE_keyivgen, iFppipppi)
+//GO(PKCS12_SAFEBAG_free, 
+//GO(PKCS12_SAFEBAG_new, 
+//GO(PKCS12_set_mac, 
+//GO(PKCS12_setup_mac, 
+//GO(PKCS12_unpack_authsafes, 
+//GO(PKCS12_unpack_p7data, 
+//GO(PKCS12_unpack_p7encdata, 
+//GO(PKCS12_verify_mac, 
+//GO(PKCS12_x5092certbag, 
+//GO(PKCS12_x509crl2certbag, 
+//GO(PKCS1_MGF1, 
+//GO(PKCS5_pbe2_set, 
+//GO(PKCS5_pbe2_set_iv, 
+//GO(PKCS5_PBE_add, 
+//GO(PKCS5_PBE_keyivgen, 
+//GO(PKCS5_pbe_set, 
+//GO(PKCS5_pbe_set0_algor, 
+//GO(PKCS5_PBKDF2_HMAC, 
+//GO(PKCS5_PBKDF2_HMAC_SHA1, 
+//GO(PKCS5_pbkdf2_set, 
+//GO(PKCS5_v2_PBE_keyivgen, 
+//GO(PKCS5_v2_PBKDF2_keyivgen, 
+//GO(PKCS7_add0_attrib_signing_time, 
+//GO(PKCS7_add1_attrib_digest, 
+//GO(PKCS7_add_attrib_content_type, 
+//GO(PKCS7_add_attrib_smimecap, 
+//GO(PKCS7_add_attribute, 
+//GO(PKCS7_add_certificate, 
+//GO(PKCS7_add_crl, 
+//GO(PKCS7_add_recipient, 
+//GO(PKCS7_add_recipient_info, 
+//GO(PKCS7_add_signature, 
+//GO(PKCS7_add_signed_attribute, 
+//GO(PKCS7_add_signer, 
+//GO(PKCS7_cert_from_signer_info, 
+//GO(PKCS7_content_new, 
+//GO(PKCS7_ctrl, 
+//GO(PKCS7_dataDecode, 
+//GO(PKCS7_dataFinal, 
+//GO(PKCS7_dataInit, 
+//GO(PKCS7_dataVerify, 
+//GO(PKCS7_decrypt, 
+//GO(PKCS7_DIGEST_free, 
+//GO(PKCS7_digest_from_attributes, 
+//GO(PKCS7_DIGEST_new, 
+//GO(PKCS7_dup, 
+//GO(PKCS7_ENC_CONTENT_free, 
+//GO(PKCS7_ENC_CONTENT_new, 
+//GO(PKCS7_encrypt, 
+//GO(PKCS7_ENCRYPT_free, 
+//GO(PKCS7_ENCRYPT_new, 
+//GO(PKCS7_ENVELOPE_free, 
+//GO(PKCS7_ENVELOPE_new, 
+//GO(PKCS7_final, 
+//GO(PKCS7_free, 
+//GO(PKCS7_get0_signers, 
+//GO(PKCS7_get_attribute, 
+//GO(PKCS7_get_issuer_and_serial, 
+//GO(PKCS7_get_signed_attribute, 
+//GO(PKCS7_get_signer_info, 
+//GO(PKCS7_get_smimecap, 
+//GO(PKCS7_ISSUER_AND_SERIAL_digest, 
+//GO(PKCS7_ISSUER_AND_SERIAL_free, 
+//GO(PKCS7_ISSUER_AND_SERIAL_new, 
+//GO(PKCS7_new, 
+//GO(PKCS7_print_ctx, 
+//GO(PKCS7_RECIP_INFO_free, 
+//GO(PKCS7_RECIP_INFO_get0_alg, 
+//GO(PKCS7_RECIP_INFO_new, 
+//GO(PKCS7_RECIP_INFO_set, 
+//GO(PKCS7_set0_type_other, 
+//GO(PKCS7_set_attributes, 
+//GO(PKCS7_set_cipher, 
+//GO(PKCS7_set_content, 
+//GO(PKCS7_set_digest, 
+//GO(PKCS7_set_signed_attributes, 
+//GO(PKCS7_set_type, 
+//GO(PKCS7_sign, 
+//GO(PKCS7_sign_add_signer, 
+//GO(PKCS7_signatureVerify, 
+//GO(PKCS7_SIGNED_free, 
+//GO(PKCS7_SIGNED_new, 
+//GO(PKCS7_SIGN_ENVELOPE_free, 
+//GO(PKCS7_SIGN_ENVELOPE_new, 
+//GO(PKCS7_SIGNER_INFO_free, 
+//GO(PKCS7_SIGNER_INFO_get0_algs, 
+//GO(PKCS7_SIGNER_INFO_new, 
+//GO(PKCS7_SIGNER_INFO_set, 
+//GO(PKCS7_SIGNER_INFO_sign, 
+//GO(PKCS7_simple_smimecap, 
+//GO(PKCS7_stream, 
+//GO(PKCS7_to_TS_TST_INFO, 
+//GO(PKCS7_verify, 
+//GO(PKCS8_add_keyusage, 
+//GO(PKCS8_decrypt, 
+//GO(PKCS8_encrypt, 
+//GO(PKCS8_pkey_get0, 
+//GO(PKCS8_pkey_set0, 
+//GO(PKCS8_PRIV_KEY_INFO_free, 
+//GO(PKCS8_PRIV_KEY_INFO_new, 
+//GO(PKCS8_set_broken, 
+//GO(PKEY_USAGE_PERIOD_free, 
+//GO(PKEY_USAGE_PERIOD_new, 
+//GO(policy_cache_find_data, 
+//GO(policy_cache_free, 
+//GO(policy_cache_set, 
+//GO(policy_cache_set_mapping, 
+//GO(POLICY_CONSTRAINTS_free, 
+//GO(POLICY_CONSTRAINTS_new, 
+//GO(policy_data_free, 
+//GO(policy_data_new, 
+//GO(POLICYINFO_free, 
+//GO(POLICYINFO_new, 
+//GO(POLICY_MAPPING_free, 
+//GO(POLICY_MAPPING_new, 
+//GO(policy_node_cmp_new, 
+//GO(policy_node_free, 
+//GO(policy_node_match, 
+//GO(POLICYQUALINFO_free, 
+//GO(POLICYQUALINFO_new, 
+//GO(pqueue_find, 
+//GO(pqueue_free, 
+//GO(pqueue_insert, 
+//GO(pqueue_iterator, 
+//GO(pqueue_new, 
+//GO(pqueue_next, 
+//GO(pqueue_peek, 
+//GO(pqueue_pop, 
+//GO(pqueue_print, 
+//GO(pqueue_size, 
+GO(private_AES_set_decrypt_key, iFpip)
+GO(private_AES_set_encrypt_key, iFpip)
+//GO(private_Camellia_set_key, 
+//GO(private_RC4_set_key, 
+//GO(PROXY_CERT_INFO_EXTENSION_free, 
+//GO(PROXY_CERT_INFO_EXTENSION_new, 
+//GO(PROXY_POLICY_free, 
+//GO(PROXY_POLICY_new, 
+GO(RAND_add, vFpid)
+GO(RAND_bytes, iFpi)
+//GO(RAND_cleanup, 
+GO(RAND_egd, iFp)
+GO(RAND_egd_bytes, iFpi)
+GO(RAND_file_name, pFpL)
+//GO(RAND_get_rand_method, 
+GO(RAND_load_file, iFpl)
+//GO(RAND_poll, 
+GO(RAND_pseudo_bytes, iFpi)
+GO(RAND_query_egd_bytes, iFppi)
+GO(RAND_seed, vFpi)
+//GO(RAND_set_rand_engine, 
+//GO(RAND_set_rand_method, 
+//GO(RAND_SSLeay, 
+GO(RAND_status, iFv)
+GO(RAND_write_file, iFp)
+//GO(RC2_cbc_encrypt, 
+//GO(RC2_cfb64_encrypt, 
+//GO(RC2_decrypt, 
+//GO(RC2_ecb_encrypt, 
+//GO(RC2_encrypt, 
+//GO(RC2_ofb64_encrypt, 
+//GO(RC2_set_key, 
+//GO(RC4, 
+//GO(RC4_options, 
+//GO(RC4_set_key, 
+//GO(RIPEMD160, 
+//GO(ripemd160_block_data_order, 
+//GO(RIPEMD160_Final, 
+//GO(RIPEMD160_Init, 
+//GO(RIPEMD160_Transform, 
+//GO(RIPEMD160_Update, 
+//GO(RSA_blinding_off, 
+//GO(RSA_blinding_on, 
+//GO(RSA_check_key, 
+//GO(RSA_flags, 
+GO(RSA_free, vFp)
+//GO(RSA_generate_key, 
+//GO(RSA_generate_key_ex, 
+//GO(RSA_get_default_method, 
+//GO(RSA_get_ex_data, 
+//GO(RSA_get_ex_new_index, 
+//GO(RSA_get_method, 
+//GO(RSA_memory_lock, 
+GO(RSA_new, pFv)
+//GO(RSA_new_method, 
+//GO(RSA_null_method, 
+//GO(RSA_OAEP_PARAMS_free, 
+//GO(RSA_OAEP_PARAMS_new, 
+//GO(RSA_padding_add_none, 
+//GO(RSA_padding_add_PKCS1_OAEP, 
+//GO(RSA_padding_add_PKCS1_OAEP_mgf1, 
+//GO(RSA_padding_add_PKCS1_PSS, 
+//GO(RSA_padding_add_PKCS1_PSS_mgf1, 
+//GO(RSA_padding_add_PKCS1_type_1, 
+//GO(RSA_padding_add_PKCS1_type_2, 
+//GO(RSA_padding_add_SSLv23, 
+//GO(RSA_padding_add_X931, 
+//GO(RSA_padding_check_none, 
+//GO(RSA_padding_check_PKCS1_OAEP, 
+//GO(RSA_padding_check_PKCS1_OAEP_mgf1, 
+//GO(RSA_padding_check_PKCS1_type_1, 
+//GO(RSA_padding_check_PKCS1_type_2, 
+//GO(RSA_padding_check_SSLv23, 
+//GO(RSA_padding_check_X931, 
+//GO(RSA_PKCS1_SSLeay, 
+//GO(RSA_print, 
+//GO(RSA_print_fp, 
+//GO(RSA_private_decrypt, 
+//GO(RSA_private_encrypt, 
+//GO(RSAPrivateKey_dup, 
+//GO(RSA_PSS_PARAMS_free, 
+//GO(RSA_PSS_PARAMS_new, 
+//GO(RSA_public_decrypt, 
+//GO(RSA_public_encrypt, 
+//GO(RSAPublicKey_dup, 
+//GO(RSA_set_default_method, 
+//GO(RSA_set_ex_data, 
+//GO(RSA_set_method, 
+//GO(RSA_setup_blinding, 
+GO(RSA_sign, iFipuppp)
+//GO(RSA_sign_ASN1_OCTET_STRING, 
+GO(RSA_size, iFp)
+//GO(RSA_up_ref, 
+GO(RSA_verify, iFipupup)
+//GO(RSA_verify_ASN1_OCTET_STRING, 
+//GO(RSA_verify_PKCS1_PSS, 
+//GO(RSA_verify_PKCS1_PSS_mgf1, 
+//GO(RSA_X931_hash_id, 
+//GO(s2i_ASN1_INTEGER, 
+//GO(s2i_ASN1_OCTET_STRING, 
+//GO(SEED_cbc_encrypt, 
+//GO(SEED_cfb128_encrypt, 
+//GO(SEED_decrypt, 
+//GO(SEED_ecb_encrypt, 
+//GO(SEED_encrypt, 
+//GO(SEED_ofb128_encrypt, 
+//GO(SEED_set_key, 
+//GO(SHA, 
+GO(SHA1, pFpLp)
+//GO(sha1_block_data_order, 
+GO(SHA1_Final, iFpp)
+GO(SHA1_Init, iFp)
+//GO(SHA1_Transform, 
+GO(SHA1_Update, iFppL)
+GO(SHA224, pFpLp)
+GO(SHA224_Final, iFpp)
+GO(SHA224_Init, iFp)
+GO(SHA224_Update, iFppL)
+GO(SHA256, pFpLp)
+//GO(sha256_block_data_order, 
+//GO(sha256_block_data_order_neon, 
+GO(SHA256_Final, iFpp)
+GO(SHA256_Init, iFp)
+//GO(SHA256_Transform, 
+GO(SHA256_Update, iFppL)
+GO(SHA384, pFpLp)
+GO(SHA384_Final, iFpp)
+GO(SHA384_Init, iFp)
+GO(SHA384_Update, iFppL)
+GO(SHA512, pFpLp)
+//GO(sha512_block_data_order, 
+GO(SHA512_Final, iFpp)
+GO(SHA512_Init, iFp)
+//GO(SHA512_Transform, 
+GO(SHA512_Update, iFppL)
+//GO(SHA_Final, 
+//GO(SHA_Init, 
+//GO(SHA_Transform, 
+//GO(SHA_Update, 
+//GO(sk_deep_copy, 
+GO(sk_delete, pFpi)
+GO(sk_delete_ptr, pFpp)
+GO(sk_dup, pFp)
+GO(sk_find, iFpp)
+GO(sk_find_ex, iFpp)
+GO(sk_free, vFp)
+GO(sk_insert, iFppi)
+GO(sk_is_sorted, iFp)
+GOM(sk_new, pFEp)
+GO(sk_new_null, pFv)
+GO(sk_num, iFp)
+GO(sk_pop, pFp)
+GOM(sk_pop_free, vFEpp)
+GO(sk_push, iFpp)
+GO(sk_set, pFpip)
+//GOM(sk_set_cmp_func, pFEpp)   //int(*)(const void *, const void *) 	sk_set_cmp_func (_STACK *sk, int(*c)(const void *, const void *))
+GO(sk_shift, pFp)
+GO(sk_sort, vFp)
+GO(sk_unshift, iFpp)
+GO(sk_value, pFpi)
+//GO(sk_zero, 
+//GO(SMIME_crlf_copy, 
+//GO(SMIME_read_ASN1, 
+//GO(SMIME_read_CMS, 
+//GO(SMIME_read_PKCS7, 
+//GO(SMIME_text, 
+//GO(SMIME_write_ASN1, 
+//GO(SMIME_write_CMS, 
+//GO(SMIME_write_PKCS7, 
+//GO(SRP_Calc_A, 
+//GO(SRP_Calc_B, 
+//GO(SRP_Calc_client_key, 
+//GO(SRP_Calc_server_key, 
+//GO(SRP_Calc_u, 
+//GO(SRP_Calc_x, 
+//GO(SRP_check_known_gN_param, 
+//GO(SRP_create_verifier, 
+//GO(SRP_create_verifier_BN, 
+//GO(SRP_get_default_gN, 
+//GO(SRP_user_pwd_free, 
+//GO(SRP_VBASE_free, 
+//GO(SRP_VBASE_get1_by_user, 
+//GO(SRP_VBASE_get_by_user, 
+//GO(SRP_VBASE_init, 
+//GO(SRP_VBASE_new, 
+//GO(SRP_Verify_A_mod_N, 
+//GO(SRP_Verify_B_mod_N, 
+GO(SSLeay, lFv)
+//GO(ssleay_rand_bytes, 
+GO(SSLeay_version, pFi)
+//GO(string_to_hex, 
+//GO(SXNET_add_id_asc, 
+//GO(SXNET_add_id_INTEGER, 
+//GO(SXNET_add_id_ulong, 
+//GO(SXNET_free, 
+//GO(SXNET_get_id_asc, 
+//GO(SXNET_get_id_INTEGER, 
+//GO(SXNET_get_id_ulong, 
+//GO(SXNETID_free, 
+//GO(SXNETID_new, 
+//GO(SXNET_new, 
+//GO(tree_find_sk, 
+//GO(TS_ACCURACY_dup, 
+//GO(TS_ACCURACY_free, 
+//GO(TS_ACCURACY_get_micros, 
+//GO(TS_ACCURACY_get_millis, 
+//GO(TS_ACCURACY_get_seconds, 
+//GO(TS_ACCURACY_new, 
+//GO(TS_ACCURACY_set_micros, 
+//GO(TS_ACCURACY_set_millis, 
+//GO(TS_ACCURACY_set_seconds, 
+//GO(TS_ASN1_INTEGER_print_bio, 
+//GO(TS_CONF_get_tsa_section, 
+//GO(TS_CONF_load_cert, 
+//GO(TS_CONF_load_certs, 
+//GO(TS_CONF_load_key, 
+//GO(TS_CONF_set_accuracy, 
+//GO(TS_CONF_set_certs, 
+//GO(TS_CONF_set_clock_precision_digits, 
+//GO(TS_CONF_set_crypto_device, 
+//GO(TS_CONF_set_default_engine, 
+//GO(TS_CONF_set_def_policy, 
+//GO(TS_CONF_set_digests, 
+//GO(TS_CONF_set_ess_cert_id_chain, 
+//GO(TS_CONF_set_ordering, 
+//GO(TS_CONF_set_policies, 
+//GO(TS_CONF_set_serial, 
+//GO(TS_CONF_set_signer_cert, 
+//GO(TS_CONF_set_signer_key, 
+//GO(TS_CONF_set_tsa_name, 
+//GO(TS_ext_print_bio, 
+//GO(TS_MSG_IMPRINT_dup, 
+//GO(TS_MSG_IMPRINT_free, 
+//GO(TS_MSG_IMPRINT_get_algo, 
+//GO(TS_MSG_IMPRINT_get_msg, 
+//GO(TS_MSG_IMPRINT_new, 
+//GO(TS_MSG_IMPRINT_print_bio, 
+//GO(TS_MSG_IMPRINT_set_algo, 
+//GO(TS_MSG_IMPRINT_set_msg, 
+//GO(TS_OBJ_print_bio, 
+//GO(TS_REQ_add_ext, 
+//GO(TS_REQ_delete_ext, 
+//GO(TS_REQ_dup, 
+//GO(TS_REQ_ext_free, 
+//GO(TS_REQ_free, 
+//GO(TS_REQ_get_cert_req, 
+//GO(TS_REQ_get_ext, 
+//GO(TS_REQ_get_ext_by_critical, 
+//GO(TS_REQ_get_ext_by_NID, 
+//GO(TS_REQ_get_ext_by_OBJ, 
+//GO(TS_REQ_get_ext_count, 
+//GO(TS_REQ_get_ext_d2i, 
+//GO(TS_REQ_get_exts, 
+//GO(TS_REQ_get_msg_imprint, 
+//GO(TS_REQ_get_nonce, 
+//GO(TS_REQ_get_policy_id, 
+//GO(TS_REQ_get_version, 
+//GO(TS_REQ_new, 
+//GO(TS_REQ_print_bio, 
+//GO(TS_REQ_set_cert_req, 
+//GO(TS_REQ_set_msg_imprint, 
+//GO(TS_REQ_set_nonce, 
+//GO(TS_REQ_set_policy_id, 
+//GO(TS_REQ_set_version, 
+//GO(TS_REQ_to_TS_VERIFY_CTX, 
+//GO(TS_RESP_create_response, 
+//GO(TS_RESP_CTX_add_failure_info, 
+//GO(TS_RESP_CTX_add_flags, 
+//GO(TS_RESP_CTX_add_md, 
+//GO(TS_RESP_CTX_add_policy, 
+//GO(TS_RESP_CTX_free, 
+//GO(TS_RESP_CTX_get_request, 
+//GO(TS_RESP_CTX_get_tst_info, 
+//GO(TS_RESP_CTX_new, 
+//GO(TS_RESP_CTX_set_accuracy, 
+//GO(TS_RESP_CTX_set_certs, 
+//GO(TS_RESP_CTX_set_clock_precision_digits, 
+//GO(TS_RESP_CTX_set_def_policy, 
+//GO(TS_RESP_CTX_set_extension_cb, 
+//GO(TS_RESP_CTX_set_serial_cb, 
+//GO(TS_RESP_CTX_set_signer_cert, 
+//GO(TS_RESP_CTX_set_signer_key, 
+//GO(TS_RESP_CTX_set_status_info, 
+//GO(TS_RESP_CTX_set_status_info_cond, 
+//GO(TS_RESP_CTX_set_time_cb, 
+//GO(TS_RESP_dup, 
+//GO(TS_RESP_free, 
+//GO(TS_RESP_get_status_info, 
+//GO(TS_RESP_get_token, 
+//GO(TS_RESP_get_tst_info, 
+//GO(TS_RESP_new, 
+//GO(TS_RESP_print_bio, 
+//GO(TS_RESP_set_status_info, 
+//GO(TS_RESP_set_tst_info, 
+//GO(TS_RESP_verify_response, 
+//GO(TS_RESP_verify_signature, 
+//GO(TS_RESP_verify_token, 
+//GO(TS_STATUS_INFO_dup, 
+//GO(TS_STATUS_INFO_free, 
+//GO(TS_STATUS_INFO_new, 
+//GO(TS_STATUS_INFO_print_bio, 
+//GO(TS_TST_INFO_add_ext, 
+//GO(TS_TST_INFO_delete_ext, 
+//GO(TS_TST_INFO_dup, 
+//GO(TS_TST_INFO_ext_free, 
+//GO(TS_TST_INFO_free, 
+//GO(TS_TST_INFO_get_accuracy, 
+//GO(TS_TST_INFO_get_ext, 
+//GO(TS_TST_INFO_get_ext_by_critical, 
+//GO(TS_TST_INFO_get_ext_by_NID, 
+//GO(TS_TST_INFO_get_ext_by_OBJ, 
+//GO(TS_TST_INFO_get_ext_count, 
+//GO(TS_TST_INFO_get_ext_d2i, 
+//GO(TS_TST_INFO_get_exts, 
+//GO(TS_TST_INFO_get_msg_imprint, 
+//GO(TS_TST_INFO_get_nonce, 
+//GO(TS_TST_INFO_get_ordering, 
+//GO(TS_TST_INFO_get_policy_id, 
+//GO(TS_TST_INFO_get_serial, 
+//GO(TS_TST_INFO_get_time, 
+//GO(TS_TST_INFO_get_tsa, 
+//GO(TS_TST_INFO_get_version, 
+//GO(TS_TST_INFO_new, 
+//GO(TS_TST_INFO_print_bio, 
+//GO(TS_TST_INFO_set_accuracy, 
+//GO(TS_TST_INFO_set_msg_imprint, 
+//GO(TS_TST_INFO_set_nonce, 
+//GO(TS_TST_INFO_set_ordering, 
+//GO(TS_TST_INFO_set_policy_id, 
+//GO(TS_TST_INFO_set_serial, 
+//GO(TS_TST_INFO_set_time, 
+//GO(TS_TST_INFO_set_tsa, 
+//GO(TS_TST_INFO_set_version, 
+//GO(TS_VERIFY_CTX_cleanup, 
+//GO(TS_VERIFY_CTX_free, 
+//GO(TS_VERIFY_CTX_init, 
+//GO(TS_VERIFY_CTX_new, 
+//GO(TS_X509_ALGOR_print_bio, 
+//GO(TXT_DB_create_index, 
+//GO(TXT_DB_free, 
+//GO(TXT_DB_get_by_index, 
+//GO(TXT_DB_insert, 
+//GO(TXT_DB_read, 
+//GO(TXT_DB_write, 
+GO(UI_add_error_string, iFpp)
+GO(UI_add_info_string, iFpp)
+GO(UI_add_input_boolean, iFpppppip)
+GO(UI_add_input_string, iFppipii)
+GO(UI_add_user_data, pFpp)
+//GO(UI_add_verify_string, 
+GO(UI_construct_prompt, pFppp)
+//GO(UI_create_method, 
+//GO(UI_ctrl, 
+//GO(UI_destroy_method, 
+GO(UI_dup_error_string, iFpp)
+GO(UI_dup_info_string, iFpp)
+GO(UI_dup_input_boolean, iFpppppip)
+GO(UI_dup_input_string, iFppipii)
+GO(UI_dup_verify_string, iFppipiip)
+GO(UI_free, vFp)
+//GO(UI_get0_action_string, 
+//GO(UI_get0_output_string, 
+GO(UI_get0_result, pFpi)
+//GO(UI_get0_result_string, 
+//GO(UI_get0_test_string, 
+GO(UI_get0_user_data, pFp)
+GO(UI_get_default_method, pFv)
+//GO(UI_get_ex_data, 
+//GO(UI_get_ex_new_index, 
+//GO(UI_get_input_flags, 
+GO(UI_get_method, pFp)
+//GO(UI_get_result_maxsize, 
+//GO(UI_get_result_minsize, 
+//GO(UI_get_string_type, 
+//GO(UI_method_get_closer, 
+//GO(UI_method_get_flusher, 
+//GO(UI_method_get_opener, 
+//GO(UI_method_get_prompt_constructor, 
+//GO(UI_method_get_reader, 
+//GO(UI_method_get_writer, 
+//GO(UI_method_set_closer, 
+//GO(UI_method_set_flusher, 
+//GO(UI_method_set_opener, 
+//GO(UI_method_set_prompt_constructor, 
+//GO(UI_method_set_reader, 
+//GO(UI_method_set_writer, 
+GO(UI_new, pFv)
+GO(UI_new_method, pFp)
+GO(UI_OpenSSL, pFv)
+GO(UI_process, iFp)
+GO(UI_set_default_method, vFp)
+//GO(UI_set_ex_data, 
+GO(UI_set_method, pFpp)
+//GO(UI_set_result, 
+//GO(UI_UTIL_read_pw, 
+//GO(UI_UTIL_read_pw_string, 
+//GO(USERNOTICE_free, 
+//GO(USERNOTICE_new, 
+//GO(UTF8_getc, 
+//GO(UTF8_putc, 
+//GO(v2i_ASN1_BIT_STRING, 
+//GO(v2i_GENERAL_NAME, 
+//GO(v2i_GENERAL_NAME_ex, 
+//GO(v2i_GENERAL_NAMES, 
+//GO(WHIRLPOOL, 
+//GO(WHIRLPOOL_BitUpdate, 
+//GO(whirlpool_block, 
+//GO(WHIRLPOOL_Final, 
+//GO(WHIRLPOOL_Init, 
+//GO(WHIRLPOOL_Update, 
+GO(X509_add1_ext_i2d, iFpipiL)
+//GO(X509_add1_reject_object, 
+//GO(X509_add1_trust_object, 
+//GO(X509_add_ext, 
+//GO(X509_ALGOR_cmp, 
+//GO(X509_ALGOR_dup, 
+//GO(X509_ALGOR_free, 
+//GO(X509_ALGOR_get0, 
+//GO(X509_ALGOR_new, 
+//GO(X509_ALGOR_set0, 
+//GO(X509_ALGOR_set_md, 
+//GO(X509_alias_get0, 
+//GO(X509_alias_set1, 
+//GO(X509at_add1_attr, 
+//GO(X509at_add1_attr_by_NID, 
+//GO(X509at_add1_attr_by_OBJ, 
+//GO(X509at_add1_attr_by_txt, 
+//GO(X509at_delete_attr, 
+//GO(X509at_get0_data_by_OBJ, 
+//GO(X509at_get_attr, 
+//GO(X509at_get_attr_by_NID, 
+//GO(X509at_get_attr_by_OBJ, 
+//GO(X509at_get_attr_count, 
+//GO(X509_ATTRIBUTE_count, 
+//GO(X509_ATTRIBUTE_create, 
+//GO(X509_ATTRIBUTE_create_by_NID, 
+//GO(X509_ATTRIBUTE_create_by_OBJ, 
+//GO(X509_ATTRIBUTE_create_by_txt, 
+//GO(X509_ATTRIBUTE_dup, 
+//GO(X509_ATTRIBUTE_free, 
+//GO(X509_ATTRIBUTE_get0_data, 
+//GO(X509_ATTRIBUTE_get0_object, 
+//GO(X509_ATTRIBUTE_get0_type, 
+//GO(X509_ATTRIBUTE_new, 
+//GO(X509_ATTRIBUTE_set1_data, 
+//GO(X509_ATTRIBUTE_set1_object, 
+//GO(X509_CERT_AUX_free, 
+//GO(X509_CERT_AUX_new, 
+//GO(X509_CERT_AUX_print, 
+//GO(X509_certificate_type, 
+//GO(X509_CERT_PAIR_free, 
+//GO(X509_CERT_PAIR_new, 
+//GO(X509_chain_check_suiteb, 
+//GO(X509_chain_up_ref, 
+//GO(X509_check_akid, 
+//GO(X509_check_ca, 
+//GO(X509_check_email, 
+//GO(X509_check_host, 
+//GO(X509_check_ip, 
+//GO(X509_check_ip_asc, 
+GO(X509_check_issued, iFpp)
+//GO(X509_check_private_key, 
+//GO(X509_check_purpose, 
+//GO(X509_check_trust, 
+//GO(X509_CINF_free, 
+//GO(X509_CINF_new, 
+GO(X509_cmp, iFpp)
+//GO(X509_cmp_current_time, 
+//GO(X509_cmp_time, 
+//GO(X509_CRL_add0_revoked, 
+GO(X509_CRL_add1_ext_i2d, iFpipiL)
+//GO(X509_CRL_add_ext, 
+//GO(X509_CRL_check_suiteb, 
+//GO(X509_CRL_cmp, 
+//GO(X509_CRL_delete_ext, 
+//GO(X509_CRL_diff, 
+//GO(X509_CRL_digest, 
+//GO(X509_CRL_dup, 
+//GO(X509_CRL_free, 
+//GO(X509_CRL_get0_by_cert, 
+//GO(X509_CRL_get0_by_serial, 
+//GO(X509_CRL_get_ext, 
+//GO(X509_CRL_get_ext_by_critical, 
+//GO(X509_CRL_get_ext_by_NID, 
+//GO(X509_CRL_get_ext_by_OBJ, 
+//GO(X509_CRL_get_ext_count, 
+GO(X509_CRL_get_ext_d2i, pFpipp)
+//GO(X509_CRL_get_meth_data, 
+//GO(X509_CRL_http_nbio, 
+//GO(X509_CRL_INFO_free, 
+//GO(X509_CRL_INFO_new, 
+//GO(X509_CRL_match, 
+//GO(X509_CRL_METHOD_free, 
+//GO(X509_CRL_METHOD_new, 
+//GO(X509_CRL_new, 
+//GO(X509_CRL_print, 
+//GO(X509_CRL_print_fp, 
+//GO(X509_CRL_set_default_method, 
+GO(X509_CRL_set_issuer_name, iFpp)
+//GO(X509_CRL_set_lastUpdate, 
+//GO(X509_CRL_set_meth_data, 
+//GO(X509_CRL_set_nextUpdate, 
+//GO(X509_CRL_set_version, 
+//GO(X509_CRL_sign, 
+//GO(X509_CRL_sign_ctx, 
+//GO(X509_CRL_sort, 
+//GO(X509_CRL_verify, 
+//GO(X509_delete_ext, 
+//GO(X509_digest, 
+GO(X509_dup, pFp)
+//GO(X509_email_free, 
+GO(X509_EXTENSION_create_by_NID, pFpiip)
+GO(X509_EXTENSION_create_by_OBJ, pFppip)
+//GO(X509_EXTENSION_dup, 
+//GO(X509_EXTENSION_free, 
+GO(X509_EXTENSION_get_critical, iFp)
+GO(X509_EXTENSION_get_data, pFp)
+GO(X509_EXTENSION_get_object, pFp)
+//GO(X509_EXTENSION_new, 
+GO(X509_EXTENSION_set_critical, iFpi)
+GO(X509_EXTENSION_set_data, iFpp)
+GO(X509_EXTENSION_set_object, iFpp)
+//GO(X509_find_by_issuer_and_serial, 
+//GO(X509_find_by_subject, 
+GO(X509_free, vFp)
+//GO(X509_get0_pubkey_bitstr, 
+//GO(X509_get0_signature, 
+//GO(X509_get1_email, 
+//GO(X509_get1_ocsp, 
+//GO(X509_get_default_cert_area, 
+//GO(X509_get_default_cert_dir, 
+//GO(X509_get_default_cert_dir_env, 
+//GO(X509_get_default_cert_file, 
+//GO(X509_get_default_cert_file_env, 
+//GO(X509_get_default_private_dir, 
+//GO(X509_get_ex_data, 
+//GO(X509_get_ex_new_index, 
+GO(X509_get_ext, pFpi)
+//GO(X509_get_ext_by_critical, 
+//GO(X509_get_ext_by_NID, 
+//GO(X509_get_ext_by_OBJ, 
+GO(X509_get_ext_count, iFp)
+GO(X509_get_ext_d2i, pFpipp)
+GO(X509_get_issuer_name, pFp)
+GO(X509_get_pubkey, pFp)
+//GO(X509_get_pubkey_parameters, 
+GO(X509_get_serialNumber, pFp)
+GO(X509_get0_serialNumber, pFp)
+//GO(X509_get_signature_nid, 
+GO(X509_get_subject_name, pFp)
+GO(X509_get_X509_PUBKEY, pFp)
+GO(X509_get0_pubkey, pFp)
+//GO(X509_gmtime_adj, 
+//GO(X509_http_nbio, 
+//GO(X509_INFO_free, 
+//GO(X509_INFO_new, 
+//GO(X509_issuer_and_serial_cmp, 
+//GO(X509_issuer_and_serial_hash, 
+//GO(X509_issuer_name_cmp, 
+//GO(X509_issuer_name_hash, 
+//GO(X509_issuer_name_hash_old, 
+//GO(X509_keyid_get0, 
+//GO(X509_keyid_set1, 
+GO(X509_load_cert_crl_file, iFppi)
+GO(X509_load_cert_file, iFppi)
+GO(X509_load_crl_file, iFppi)
+//GO(X509_LOOKUP_by_alias, 
+//GO(X509_LOOKUP_by_fingerprint, 
+//GO(X509_LOOKUP_by_issuer_serial, 
+//GO(X509_LOOKUP_by_subject, 
+//GO(X509_LOOKUP_ctrl, 
+GO(X509_LOOKUP_file, pFv)
+//GO(X509_LOOKUP_free, 
+GO(X509_LOOKUP_hash_dir, pFv)
+//GO(X509_LOOKUP_init, 
+//GO(X509_LOOKUP_new, 
+//GO(X509_LOOKUP_shutdown, 
+//GO(X509_NAME_add_entry, 
+//GO(X509_NAME_add_entry_by_NID, 
+//GO(X509_NAME_add_entry_by_OBJ, 
+//GO(X509_NAME_add_entry_by_txt, 
+//GO(X509_NAME_cmp, 
+//GO(X509_NAME_delete_entry, 
+//GO(X509_NAME_digest, 
+//GO(X509_NAME_dup, 
+GO(X509_NAME_entry_count, iFp)
+GO(X509_NAME_ENTRY_create_by_NID, pFpiipi)
+GO(X509_NAME_ENTRY_create_by_OBJ, pFppipi)
+GO(X509_NAME_ENTRY_create_by_txt, pFppipi)
+//GO(X509_NAME_ENTRY_dup, 
+//GO(X509_NAME_ENTRY_free, 
+GO(X509_NAME_ENTRY_get_data, pFp)
+GO(X509_NAME_ENTRY_get_object, pFp)
+//GO(X509_NAME_ENTRY_new, 
+GO(X509_NAME_ENTRY_set_data, iFpipi)
+GO(X509_NAME_ENTRY_set_object, iFpp)
+//GO(X509_NAME_free, 
+GO(X509_NAME_get_entry, pFpi)
+GO(X509_NAME_get_index_by_NID, iFpii)
+GO(X509_NAME_get_index_by_OBJ, iFppi)
+GO(X509_NAME_get_text_by_NID, iFpipi)
+GO(X509_NAME_get_text_by_OBJ, iFpppi)
+//GO(X509_NAME_hash, 
+//GO(X509_NAME_hash_old, 
+//GO(X509_NAME_new, 
+GO(X509_NAME_oneline, pFppi)
+GO(X509_NAME_print, iFppi)
+GO(X509_NAME_print_ex, iFppiu)
+GO(X509_NAME_print_ex_fp, iFppiu)
+//GO(X509_NAME_set, 
+GO(X509_new, pFv)
+//GO(X509_OBJECT_free_contents, 
+//GO(X509_OBJECT_idx_by_subject, 
+//GO(X509_OBJECT_retrieve_by_subject, 
+//GO(X509_OBJECT_retrieve_match, 
+//GO(X509_OBJECT_up_ref_count, 
+//GO(X509_ocspid_print, 
+//GO(X509_PKEY_free, 
+//GO(X509_PKEY_new, 
+//GO(X509_policy_check, 
+//GO(X509_policy_level_get0_node, 
+//GO(X509_policy_level_node_count, 
+//GO(X509_policy_node_get0_parent, 
+//GO(X509_policy_node_get0_policy, 
+//GO(X509_policy_node_get0_qualifiers, 
+//GO(X509_POLICY_NODE_print, 
+//GO(X509_policy_tree_free, 
+//GO(X509_policy_tree_get0_level, 
+//GO(X509_policy_tree_get0_policies, 
+//GO(X509_policy_tree_get0_user_policies, 
+//GO(X509_policy_tree_level_count, 
+GO(X509_print, iFpp)
+GO(X509_print_ex, iFppLL)
+GO(X509_print_ex_fp, iFppLL)
+GO(X509_print_fp, iFpp)
+//GO(X509_pubkey_digest, 
+//GO(X509_PUBKEY_free, 
+GO(X509_PUBKEY_get, pFp)
+//GO(X509_PUBKEY_get0_param, 
+//GO(X509_PUBKEY_new, 
+//GO(X509_PUBKEY_set, 
+//GO(X509_PUBKEY_set0_param, 
+//GO(X509_PURPOSE_add, 
+//GO(X509_PURPOSE_cleanup, 
+//GO(X509_PURPOSE_get0, 
+//GO(X509_PURPOSE_get0_name, 
+//GO(X509_PURPOSE_get0_sname, 
+//GO(X509_PURPOSE_get_by_id, 
+//GO(X509_PURPOSE_get_by_sname, 
+//GO(X509_PURPOSE_get_count, 
+//GO(X509_PURPOSE_get_id, 
+//GO(X509_PURPOSE_get_trust, 
+//GO(X509_PURPOSE_set, 
+//GO(X509_reject_clear, 
+//GO(X509_REQ_add1_attr, 
+//GO(X509_REQ_add1_attr_by_NID, 
+//GO(X509_REQ_add1_attr_by_OBJ, 
+//GO(X509_REQ_add1_attr_by_txt, 
+//GO(X509_REQ_add_extensions, 
+//GO(X509_REQ_add_extensions_nid, 
+//GO(X509_REQ_check_private_key, 
+//GO(X509_REQ_delete_attr, 
+//GO(X509_REQ_digest, 
+//GO(X509_REQ_dup, 
+//GO(X509_REQ_extension_nid, 
+//GO(X509_REQ_free, 
+//GO(X509_REQ_get1_email, 
+//GO(X509_REQ_get_attr, 
+//GO(X509_REQ_get_attr_by_NID, 
+//GO(X509_REQ_get_attr_by_OBJ, 
+//GO(X509_REQ_get_attr_count, 
+//GO(X509_REQ_get_extension_nids, 
+//GO(X509_REQ_get_extensions, 
+GO(X509_REQ_get_pubkey, pFp)
+GO(X509_REQ_get_X509_PUBKEY, pFp)
+GO(X509_REQ_get0_pubkey, pFp)
+//GO(X509_REQ_INFO_free, 
+//GO(X509_REQ_INFO_new, 
+//GO(X509_REQ_new, 
+//GO(X509_REQ_print, 
+//GO(X509_REQ_print_ex, 
+//GO(X509_REQ_print_fp, 
+//GO(X509_REQ_set_extension_nids, 
+GO(X509_REQ_set_pubkey, iFpp)
+GO(X509_REQ_set_subject_name, iFpp)
+//GO(X509_REQ_set_version, 
+//GO(X509_REQ_sign, 
+//GO(X509_REQ_sign_ctx, 
+//GO(X509_REQ_to_X509, 
+//GO(X509_REQ_verify, 
+GO(X509_REVOKED_add1_ext_i2d, iFpipiL)
+//GO(X509_REVOKED_add_ext, 
+//GO(X509_REVOKED_delete_ext, 
+//GO(X509_REVOKED_dup, 
+//GO(X509_REVOKED_free, 
+//GO(X509_REVOKED_get_ext, 
+//GO(X509_REVOKED_get_ext_by_critical, 
+//GO(X509_REVOKED_get_ext_by_NID, 
+//GO(X509_REVOKED_get_ext_by_OBJ, 
+//GO(X509_REVOKED_get_ext_count, 
+GO(X509_REVOKED_get_ext_d2i, pFpipp)
+//GO(X509_REVOKED_new, 
+//GO(X509_REVOKED_set_revocationDate, 
+//GO(X509_REVOKED_set_serialNumber, 
+//GO(X509_set_ex_data, 
+GO(X509_set_issuer_name, iFpp)
+//GO(X509_set_notAfter, 
+//GO(X509_set_notBefore, 
+GO(X509_set_pubkey, iFpp)
+GO(X509_set_serialNumber, iFpp)
+GO(X509_set_subject_name, iFpp)
+//GO(X509_set_version, 
+//GO(X509_SIG_free, 
+//GO(X509_sign, 
+//GO(X509_signature_dump, 
+//GO(X509_signature_print, 
+//GO(X509_sign_ctx, 
+//GO(X509_SIG_new, 
+GO(X509_STORE_add_cert, iFpp)
+GO(X509_STORE_add_crl, iFpp)
+GO(X509_STORE_add_lookup, pFpp)
+GO(X509_STORE_CTX_cleanup, vFp)
+GO(X509_STORE_CTX_free, vFp)
+//GO(X509_STORE_CTX_get0_current_crl, 
+//GO(X509_STORE_CTX_get0_current_issuer, 
+//GO(X509_STORE_CTX_get0_param, 
+//GO(X509_STORE_CTX_get0_parent_ctx, 
+//GO(X509_STORE_CTX_get0_policy_tree, 
+//GO(X509_STORE_CTX_get0_store, 
+GO(X509_STORE_CTX_get1_chain, pFp)
+//GO(X509_STORE_CTX_get1_issuer, 
+GO(X509_STORE_CTX_get_chain, pFp)
+GO(X509_STORE_CTX_get_current_cert, pFp)
+GO(X509_STORE_CTX_get_error, iFp)
+GO(X509_STORE_CTX_get_error_depth, iFp)
+//GO(X509_STORE_CTX_get_ex_data, 
+//GO(X509_STORE_CTX_get_ex_new_index, 
+//GO(X509_STORE_CTX_get_explicit_policy, 
+GO(X509_STORE_CTX_init, iFpppp)
+GO(X509_STORE_CTX_new, pFv)
+//GO(X509_STORE_CTX_purpose_inherit, 
+//GO(X509_STORE_CTX_set0_crls, 
+//GO(X509_STORE_CTX_set0_param, 
+//GO(X509_STORE_CTX_set_cert, 
+//GO(X509_STORE_CTX_set_chain, 
+GO(X509_STORE_CTX_set_current_cert, vFpp)
+GO(X509_STORE_CTX_set_default, iFp)
+//GO(X509_STORE_CTX_set_depth, 
+GO(X509_STORE_CTX_set_error, vFpi)
+GO(X509_STORE_CTX_set_error_depth, vFpi)
+//GO(X509_STORE_CTX_set_ex_data, 
+//GO(X509_STORE_CTX_set_flags, 
+GO(X509_STORE_CTX_set_purpose, iFpi)
+//GO(X509_STORE_CTX_set_time, 
+//GO(X509_STORE_CTX_set_trust, 
+//GO(X509_STORE_CTX_set_verify_cb, 
+//GO(X509_STORE_CTX_trusted_stack, 
+GO(X509_STORE_free, vFp)
+//GO(X509_STORE_get1_certs, 
+//GO(X509_STORE_get1_crls, 
+//GO(X509_STORE_get_by_subject, 
+GO(X509_STORE_load_file, iFpp)
+GO(X509_STORE_load_path, iFpp)
+GO(X509_STORE_load_store, iFpp)
+//GO(X509_STORE_load_locations, iFppp)
+GO(X509_STORE_new, pFv)
+//GO(X509_STORE_set1_param, 
+//GO(X509_STORE_set_default_paths, 
+GO(X509_STORE_set_depth, iFpi)
+GO(X509_STORE_set_flags, iFpL)
+//GO(X509_STORE_set_lookup_crls_cb, 
+GO(X509_STORE_set_purpose, iFpi)
+GO(X509_STORE_set_trust, iFpi)
+//GO(X509_STORE_set_verify_cb, 
+//GO(X509_subject_name_cmp, 
+//GO(X509_subject_name_hash, 
+//GO(X509_subject_name_hash_old, 
+//GO(X509_supported_extension, 
+//GO(X509_time_adj, 
+//GO(X509_time_adj_ex, 
+//GO(X509_to_X509_REQ, 
+//GO(X509_TRUST_add, 
+//GO(X509_TRUST_cleanup, 
+//GO(X509_trust_clear, 
+//GO(X509_TRUST_get0, 
+//GO(X509_TRUST_get0_name, 
+//GO(X509_TRUST_get_by_id, 
+//GO(X509_TRUST_get_count, 
+//GO(X509_TRUST_get_flags, 
+//GO(X509_TRUST_get_trust, 
+//GO(X509_TRUST_set, 
+//GO(X509_TRUST_set_default, 
+GO(X509V3_add1_i2d, iFpipiL)
+//GO(X509v3_add_ext, 
+//GO(X509V3_add_standard_extensions, 
+//GO(X509V3_add_value, 
+//GO(X509V3_add_value_bool, 
+//GO(X509V3_add_value_bool_nf, 
+//GO(X509V3_add_value_int, 
+//GO(X509V3_add_value_uchar, 
+//GO(X509V3_conf_free, 
+//GO(X509v3_delete_ext, 
+//GO(X509V3_EXT_add, 
+//GO(X509V3_EXT_add_alias, 
+//GO(X509V3_EXT_add_conf, 
+//GO(X509V3_EXT_add_list, 
+//GO(X509V3_EXT_add_nconf, 
+//GO(X509V3_EXT_add_nconf_sk, 
+//GO(X509V3_EXT_cleanup, 
+//GO(X509V3_EXT_conf, 
+//GO(X509V3_EXT_conf_nid, 
+//GO(X509V3_EXT_CRL_add_conf, 
+//GO(X509V3_EXT_CRL_add_nconf, 
+GO(X509V3_EXT_d2i, pFp)
+//GO(X509V3_extensions_print, 
+//GO(X509V3_EXT_free, 
+GO(X509V3_EXT_get, pFp)
+//GO(X509V3_EXT_get_nid, 
+GO(X509V3_EXT_i2d, pFiip)
+//GO(X509V3_EXT_nconf, 
+//GO(X509V3_EXT_nconf_nid, 
+GO(X509V3_EXT_print, iFppLi)
+GO(X509V3_EXT_print_fp, iFppii)
+//GO(X509V3_EXT_REQ_add_conf, 
+//GO(X509V3_EXT_REQ_add_nconf, 
+//GO(X509V3_EXT_val_prn, 
+GO(X509V3_get_d2i, pFpipp)
+//GO(X509v3_get_ext, 
+//GO(X509v3_get_ext_by_critical, 
+//GO(X509v3_get_ext_by_NID, 
+//GO(X509v3_get_ext_by_OBJ, 
+//GO(X509v3_get_ext_count, 
+//GO(X509V3_get_section, 
+//GO(X509V3_get_string, 
+//GO(X509V3_get_value_bool, 
+//GO(X509V3_get_value_int, 
+//GO(X509V3_NAME_from_section, 
+//GO(X509V3_parse_list, 
+//GO(X509V3_section_free, 
+//GO(X509V3_set_conf_lhash, 
+//GO(X509V3_set_ctx, 
+//GO(X509V3_set_nconf, 
+//GO(X509V3_string_free, 
+//GO(X509_VAL_free, 
+//GO(X509_VAL_new, 
+//GO(X509_verify, 
+GO(X509_verify_cert, iFp)
+GO(X509_verify_cert_error_string, pFl)
+//GO(X509_VERIFY_PARAM_add0_policy, 
+//GO(X509_VERIFY_PARAM_add0_table, 
+//GO(X509_VERIFY_PARAM_add1_host, 
+//GO(X509_VERIFY_PARAM_clear_flags, 
+//GO(X509_VERIFY_PARAM_free, 
+//GO(X509_VERIFY_PARAM_get0, 
+//GO(X509_VERIFY_PARAM_get0_name, 
+//GO(X509_VERIFY_PARAM_get0_peername, 
+//GO(X509_VERIFY_PARAM_get_count, 
+//GO(X509_VERIFY_PARAM_get_depth, 
+//GO(X509_VERIFY_PARAM_get_flags, 
+//GO(X509_VERIFY_PARAM_inherit, 
+//GO(X509_VERIFY_PARAM_lookup, 
+//GO(X509_VERIFY_PARAM_new, 
+//GO(X509_VERIFY_PARAM_set1, 
+//GO(X509_VERIFY_PARAM_set1_email, 
+//GO(X509_VERIFY_PARAM_set1_host, 
+//GO(X509_VERIFY_PARAM_set1_ip, 
+//GO(X509_VERIFY_PARAM_set1_ip_asc, 
+//GO(X509_VERIFY_PARAM_set1_name, 
+//GO(X509_VERIFY_PARAM_set1_policies, 
+//GO(X509_VERIFY_PARAM_set_depth, 
+//GO(X509_VERIFY_PARAM_set_flags, 
+//GO(X509_VERIFY_PARAM_set_hostflags, 
+//GO(X509_VERIFY_PARAM_set_purpose, 
+//GO(X509_VERIFY_PARAM_set_time, 
+//GO(X509_VERIFY_PARAM_set_trust, 
+//GO(X509_VERIFY_PARAM_table_cleanup, 
+//GO(X9_62_CHARACTERISTIC_TWO_free, 
+//GO(X9_62_CHARACTERISTIC_TWO_new, 
+//GO(X9_62_PENTANOMIAL_free, 
+//GO(X9_62_PENTANOMIAL_new, 
diff --git a/src/wrapped/wrappedlibssl.c b/src/wrapped/wrappedlibssl.c
new file mode 100755
index 00000000..8bb38d76
--- /dev/null
+++ b/src/wrapped/wrappedlibssl.c
@@ -0,0 +1,333 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#define _GNU_SOURCE         /* See feature_test_macros(7) */
+#include <dlfcn.h>
+
+#include "wrappedlibs.h"
+
+#include "debug.h"
+#include "wrapper.h"
+#include "bridge.h"
+#include "librarian/library_private.h"
+#include "x64emu.h"
+#include "emu/x64emu_private.h"
+#include "callback.h"
+#include "librarian.h"
+#include "box64context.h"
+#include "emu/x64emu_private.h"
+
+const char* libsslName = "libssl.so.1.0.0";
+#define LIBNAME libssl
+#define ALTNAME "libssl.so.1.0.2"
+#define ALTNAME2 "libssl.so.1.1"
+
+static library_t* my_lib = NULL;
+
+typedef void    (*vFpp_t)       (void*, void*);
+typedef void    (*vFpip_t)      (void*, int, void*);
+typedef long    (*lFpip_t)      (void*, int, void*);
+typedef void    (*vFppp_t)      (void*, void*, void*);
+typedef int     (*iFlpppp_t)    (long, void*, void*, void*, void*);
+
+#define SUPER() \
+    GO(SSL_CTX_set_default_passwd_cb, vFpp_t)       \
+    GO(SSL_CTX_callback_ctrl, lFpip_t)              \
+    GO(SSL_CTX_set_verify, vFpip_t)                 \
+    GO(SSL_set_verify, vFpip_t)                     \
+    GO(SSL_callback_ctrl, lFpip_t)                  \
+    GO(SSL_get_ex_new_index, iFlpppp_t)             \
+    GO(SSL_set_psk_client_callback, vFpp_t)         \
+    GO(SSL_CTX_set_next_proto_select_cb, vFppp_t)   \
+
+typedef struct libssl_my_s {
+    // functions
+    #define GO(A, B)    B   A;
+    SUPER()
+    #undef GO
+} libssl_my_t;
+
+void* getSllMy(library_t* lib)
+{
+    libssl_my_t* my = (libssl_my_t*)calloc(1, sizeof(libssl_my_t));
+    #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A);
+    SUPER()
+    #undef GO
+    return my;
+}
+#undef SUPER
+
+void freeSllMy(void* lib)
+{
+    //libssl_my_t *my = (libssl_my_t *)lib;
+}
+
+// utility functions
+#define SUPER() \
+GO(0)   \
+GO(1)   \
+GO(2)   \
+GO(3)   \
+GO(4)
+
+// pem_passwd_cb
+#define GO(A)   \
+static uintptr_t my_pem_passwd_cb_fct_##A = 0;                                                      \
+static int my_pem_passwd_cb_##A(void* buf, int size, int rwflag, void* password)                    \
+{                                                                                                   \
+    return (int)RunFunction(my_context, my_pem_passwd_cb_fct_##A, 4, buf, size, rwflag, password);  \
+}
+SUPER()
+#undef GO
+static void* find_pem_passwd_cb_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_pem_passwd_cb_fct_##A == (uintptr_t)fct) return my_pem_passwd_cb_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_pem_passwd_cb_fct_##A == 0) {my_pem_passwd_cb_fct_##A = (uintptr_t)fct; return my_pem_passwd_cb_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libSSL pem_passwd_cb callback\n");
+    return NULL;
+}
+
+// anonymous
+#define GO(A)   \
+static uintptr_t my_anonymous_fct_##A = 0;                                      \
+static void* my_anonymous_##A(void* a, void* b, void* c, void *d)               \
+{                                                                               \
+    return (void*)RunFunction(my_context, my_anonymous_fct_##A, 4, a, b, c, d);   \
+}
+SUPER()
+#undef GO
+static void* find_anonymous_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_anonymous_fct_##A == (uintptr_t)fct) return my_anonymous_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_anonymous_fct_##A == 0) {my_anonymous_fct_##A = (uintptr_t)fct; return my_anonymous_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libSSL anonymous callback\n");
+    return NULL;
+}
+
+
+// verify
+#define GO(A)   \
+static uintptr_t my_verify_fct_##A = 0;                                 \
+static int my_verify_##A(int a, void* b)                                \
+{                                                                       \
+    return (int)RunFunction(my_context, my_verify_fct_##A, 2, a, b);    \
+}
+SUPER()
+#undef GO
+static void* find_verify_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_verify_fct_##A == (uintptr_t)fct) return my_verify_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_verify_fct_##A == 0) {my_verify_fct_##A = (uintptr_t)fct; return my_verify_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libSSL verify callback\n");
+    return NULL;
+}
+
+// ex_new
+#define GO(A)   \
+static uintptr_t my_ex_new_fct_##A = 0;                                                        \
+static void my_ex_new_##A(void* parent, void* ptr, void* ad, int idx, long argl, void* argp)   \
+{                                                                                           \
+    RunFunction(my_context, my_ex_new_fct_##A, 6, parent, ptr, ad, idx, argl, argp);           \
+}
+SUPER()
+#undef GO
+static void* find_ex_new_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_ex_new_fct_##A == (uintptr_t)fct) return my_ex_new_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_ex_new_fct_##A == 0) {my_ex_new_fct_##A = (uintptr_t)fct; return my_ex_new_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libSSL ex_new callback\n");
+    return NULL;
+}
+
+// ex_free
+#define GO(A)   \
+static uintptr_t my_ex_free_fct_##A = 0;                                                        \
+static void my_ex_free_##A(void* parent, void* ptr, void* ad, int idx, long argl, void* argp)   \
+{                                                                                               \
+    RunFunction(my_context, my_ex_free_fct_##A, 6, parent, ptr, ad, idx, argl, argp);           \
+}
+SUPER()
+#undef GO
+static void* find_ex_free_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_ex_free_fct_##A == (uintptr_t)fct) return my_ex_free_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_ex_free_fct_##A == 0) {my_ex_free_fct_##A = (uintptr_t)fct; return my_ex_free_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libSSL ex_free callback\n");
+    return NULL;
+}
+
+// ex_dup
+#define GO(A)   \
+static uintptr_t my_ex_dup_fct_##A = 0;                                                             \
+static int my_ex_dup_##A(void* to, void* from, void* from_d, int idx, long argl, void* argp)        \
+{                                                                                                   \
+    return (int) RunFunction(my_context, my_ex_dup_fct_##A, 6, to, from, from_d, idx, argl, argp);  \
+}
+SUPER()
+#undef GO
+static void* find_ex_dup_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_ex_dup_fct_##A == (uintptr_t)fct) return my_ex_dup_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_ex_dup_fct_##A == 0) {my_ex_dup_fct_##A = (uintptr_t)fct; return my_ex_dup_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libSSL ex_dup callback\n");
+    return NULL;
+}
+
+// client_cb
+#define GO(A)   \
+static uintptr_t my_client_cb_fct_##A = 0;                                                                              \
+static uint32_t my_client_cb_##A(void* ssl, void* hint, void* identity, uint32_t id_len, void* psk, uint32_t psk_len)   \
+{                                                                                                                       \
+    return RunFunction(my_context, my_client_cb_fct_##A, 6, ssl, hint, identity, id_len, psk, psk_len);                 \
+}
+SUPER()
+#undef GO
+static void* find_client_cb_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_client_cb_fct_##A == (uintptr_t)fct) return my_client_cb_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_client_cb_fct_##A == 0) {my_client_cb_fct_##A = (uintptr_t)fct; return my_client_cb_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libSSL client_cb callback\n");
+    return NULL;
+}
+
+// proto_select
+#define GO(A)   \
+static uintptr_t my_proto_select_fct_##A = 0;                                                           \
+static int my_proto_select_##A(void* s, void* out, void* outlen, void* in, uint32_t inlen, void* arg)   \
+{                                                                                                       \
+    return (int)RunFunction(my_context, my_proto_select_fct_##A, 6, s, out, outlen, in, inlen, arg);    \
+}
+SUPER()
+#undef GO
+static void* find_proto_select_Fct(void* fct)
+{
+    if(!fct) return NULL;
+    void* p;
+    if((p = GetNativeFnc((uintptr_t)fct))) return p;
+    #define GO(A) if(my_proto_select_fct_##A == (uintptr_t)fct) return my_proto_select_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_proto_select_fct_##A == 0) {my_proto_select_fct_##A = (uintptr_t)fct; return my_proto_select_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libSSL proto_select callback\n");
+    return NULL;
+}
+
+#undef SUPER
+
+EXPORT void my_SSL_CTX_set_default_passwd_cb(x64emu_t* emu, void* ctx, void* cb)
+{
+    libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
+
+    my->SSL_CTX_set_default_passwd_cb(ctx, find_pem_passwd_cb_Fct(cb));
+}
+
+EXPORT long my_SSL_CTX_callback_ctrl(x64emu_t* emu, void* ctx, int cmd, void* f)
+{
+    libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
+
+    return my->SSL_CTX_callback_ctrl(ctx, cmd, find_anonymous_Fct(f));
+}
+
+EXPORT long my_SSL_callback_ctrl(x64emu_t* emu, void* ctx, int cmd, void* f)
+{
+    libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
+
+    return my->SSL_callback_ctrl(ctx, cmd, find_anonymous_Fct(f));
+}
+
+EXPORT void my_SSL_CTX_set_verify(x64emu_t* emu, void* ctx, int mode, void* f)
+{
+    libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
+
+    my->SSL_CTX_set_verify(ctx, mode, find_verify_Fct(f));
+}
+
+EXPORT void my_SSL_set_verify(x64emu_t* emu, void* ctx, int mode, void* f)
+{
+    libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
+
+    my->SSL_set_verify(ctx, mode, find_verify_Fct(f));
+}
+
+EXPORT void my_SSL_get_ex_new_index(x64emu_t* emu, long argl, void* argp, void* new_func, void* dup_func, void* free_func)
+{
+    libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
+
+    my->SSL_get_ex_new_index(argl, argp, find_ex_new_Fct(new_func), find_ex_dup_Fct(dup_func), find_ex_free_Fct(free_func));
+}
+
+EXPORT void my_SSL_set_psk_client_callback(x64emu_t* emu, void* ctx, void* cb)
+{
+    libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
+
+    my->SSL_set_psk_client_callback(ctx, find_client_cb_Fct(cb));
+}
+
+EXPORT void my_SSL_CTX_set_next_proto_select_cb(x64emu_t* emu, void* ctx, void* cb, void* arg)
+{
+    libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
+
+    my->SSL_CTX_set_next_proto_select_cb(ctx, find_proto_select_Fct(cb), arg);
+}
+
+#define CUSTOM_INIT \
+    my_lib = lib;   \
+    lib->priv.w.p2 = getSllMy(lib);
+
+#define CUSTOM_FINI \
+    my_lib = NULL;              \
+    freeSllMy(lib->priv.w.p2);  \
+    free(lib->priv.w.p2);
+
+#include "wrappedlib_init.h"
diff --git a/src/wrapped/wrappedlibssl_private.h b/src/wrapped/wrappedlibssl_private.h
new file mode 100755
index 00000000..75a88517
--- /dev/null
+++ b/src/wrapped/wrappedlibssl_private.h
@@ -0,0 +1,593 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error meh!
+#endif
+
+//GO(BIO_f_ssl, 
+//GO(BIO_new_buffer_ssl_connect, 
+//GO(BIO_new_ssl, 
+//GO(BIO_new_ssl_connect, 
+//GO(BIO_ssl_copy_session_id, 
+//GO(BIO_ssl_shutdown, 
+//GO(custom_ext_add, 
+//GO(custom_ext_init, 
+//GO(custom_ext_parse, 
+//GO(custom_exts_copy, 
+//GO(custom_exts_free, 
+GO(d2i_SSL_SESSION, pFppl)
+//GO(do_dtls1_write, 
+//GO(dtls1_accept, 
+//GO(dtls1_buffer_message, 
+//GO(dtls1_check_timeout_num, 
+//GO(dtls1_clear, 
+//GO(dtls1_clear_received_buffer, 
+//GO(dtls1_clear_sent_buffer, 
+//GO(dtls1_connect, 
+//GO(dtls1_ctrl, 
+//GO(dtls1_default_timeout, 
+//GO(dtls1_dispatch_alert, 
+//GO(dtls1_double_timeout, 
+//GO(dtls1_do_write, 
+//GO(dtls1_free, 
+//GO(dtls1_get_ccs_header, 
+//GO(dtls1_get_cipher, 
+//GO(dtls1_get_message, 
+//GO(dtls1_get_message_header, 
+//GO(dtls1_get_queue_priority, 
+//GO(dtls1_get_record, 
+//GO(dtls1_get_timeout, 
+//GO(dtls1_handle_timeout, 
+//GO(dtls1_heartbeat, 
+//GO(dtls1_hm_fragment_free, 
+//GO(dtls1_is_timer_expired, 
+//GO(dtls1_link_min_mtu, 
+//GO(dtls1_listen, 
+//GO(dtls1_min_mtu, 
+//GO(dtls1_new, 
+//GO(dtls1_process_heartbeat, 
+//GO(dtls1_read_bytes, 
+//GO(dtls1_read_failed, 
+//GO(dtls1_reset_seq_numbers, 
+//GO(dtls1_retransmit_buffered_messages, 
+//GO(dtls1_retransmit_message, 
+//GO(dtls1_send_change_cipher_spec, 
+//GO(dtls1_set_message_header, 
+//GO(dtls1_shutdown, 
+//GO(dtls1_start_timer, 
+//GO(dtls1_stop_timer, 
+//GO(dtls1_write_app_data_bytes, 
+//GO(dtls1_write_bytes, 
+//GO(DTLS_client_method, 
+GO(DTLS_method, pFv)
+GO(DTLS_server_method, pFv)
+GO(DTLSv1_2_client_method, pFv)
+GO(DTLSv1_2_method, pFv)
+GO(DTLSv1_2_server_method, pFv)
+GO(DTLSv1_client_method, pFv)
+GO(DTLSv1_method, pFv)
+GO(DTLSv1_server_method, pFv)
+//GO(ERR_load_SSL_strings, 
+//GO(_fini, 
+GO(i2d_SSL_SESSION, iFpp)
+//GO(_init, 
+//GO(n_ssl3_mac, 
+//GO(OBJ_bsearch_ssl_cipher_id, 
+//GO(PEM_read_bio_SSL_SESSION, 
+//GO(PEM_read_SSL_SESSION, 
+//GO(PEM_write_bio_SSL_SESSION, 
+//GO(PEM_write_SSL_SESSION, 
+//GO(SRP_Calc_A_param, 
+//GO(SRP_generate_client_master_secret, 
+//GO(SRP_generate_server_master_secret, 
+//GO(srp_verify_server_param, 
+//GO(ssl23_accept, 
+//GO(ssl23_connect, 
+//GO(ssl23_default_timeout, 
+//GO(ssl23_get_cipher, 
+//GO(ssl23_get_cipher_by_char, 
+//GO(ssl23_get_client_hello, 
+//GO(ssl23_num_ciphers, 
+//GO(ssl23_peek, 
+//GO(ssl23_put_cipher_by_char, 
+//GO(ssl23_read, 
+//GO(ssl23_read_bytes, 
+//GO(ssl23_write, 
+//GO(ssl23_write_bytes, 
+//GO(ssl3_accept, 
+//GO(ssl3_alert_code, 
+//GO(ssl3_callback_ctrl, 
+//GO(ssl3_cbc_copy_mac, 
+//GO(ssl3_cbc_digest_record, 
+//GO(ssl3_cbc_record_digest_supported, 
+//GO(ssl3_cbc_remove_padding, 
+//GO(ssl3_cert_verify_mac, 
+//GO(ssl3_change_cipher_state, 
+//GO(ssl3_check_cert_and_algorithm, 
+//GO(ssl3_choose_cipher, 
+//GO(ssl3_cleanup_key_block, 
+//GO(ssl3_clear, 
+//GO(ssl3_client_hello, 
+//GO(ssl3_comp_find, 
+//GO(ssl3_connect, 
+//GO(ssl3_ctrl, 
+//GO(ssl3_ctx_callback_ctrl, 
+//GO(ssl3_ctx_ctrl, 
+//GO(ssl3_default_timeout, 
+//GO(ssl3_digest_cached_records, 
+//GO(ssl3_dispatch_alert, 
+//GO(ssl3_do_change_cipher_spec, 
+//GO(ssl3_do_compress, 
+//GO(ssl3_do_uncompress, 
+//GO(ssl3_do_write, 
+//GO(ssl3_enc, 
+//GO(ssl3_final_finish_mac, 
+//GO(ssl3_finish_mac, 
+//GO(ssl3_free, 
+//GO(ssl3_free_digest_list, 
+//GO(ssl3_generate_master_secret, 
+//GO(ssl3_get_certificate_request, 
+//GO(ssl3_get_cert_status, 
+//GO(ssl3_get_cert_verify, 
+//GO(ssl3_get_cipher, 
+//GO(ssl3_get_cipher_by_char, 
+//GO(ssl3_get_client_certificate, 
+//GO(ssl3_get_client_hello, 
+//GO(ssl3_get_client_key_exchange, 
+//GO(ssl3_get_finished, 
+//GO(ssl3_get_key_exchange, 
+//GO(ssl3_get_message, 
+//GO(ssl3_get_new_session_ticket, 
+//GO(ssl3_get_next_proto, 
+//GO(ssl3_get_req_cert_type, 
+//GO(ssl3_get_server_certificate, 
+//GO(ssl3_get_server_done, 
+//GO(ssl3_get_server_hello, 
+//GO(ssl3_handshake_write, 
+//GO(ssl3_init_finished_mac, 
+//GO(ssl3_new, 
+//GO(ssl3_num_ciphers, 
+//GO(ssl3_output_cert_chain, 
+//GO(ssl3_peek, 
+//GO(ssl3_pending, 
+//GO(ssl3_put_cipher_by_char, 
+//GO(ssl3_read, 
+//GO(ssl3_read_bytes, 
+//GO(ssl3_read_n, 
+//GO(ssl3_record_sequence_update, 
+//GO(ssl3_release_read_buffer, 
+//GO(ssl3_release_write_buffer, 
+//GO(ssl3_renegotiate, 
+//GO(ssl3_renegotiate_check, 
+//GO(ssl3_send_alert, 
+//GO(ssl3_send_certificate_request, 
+//GO(ssl3_send_cert_status, 
+//GO(ssl3_send_change_cipher_spec, 
+//GO(ssl3_send_client_certificate, 
+//GO(ssl3_send_client_key_exchange, 
+//GO(ssl3_send_client_verify, 
+//GO(ssl3_send_finished, 
+//GO(ssl3_send_hello_request, 
+//GO(ssl3_send_newsession_ticket, 
+//GO(ssl3_send_next_proto, 
+//GO(ssl3_send_server_certificate, 
+//GO(ssl3_send_server_done, 
+//GO(ssl3_send_server_hello, 
+//GO(ssl3_send_server_key_exchange, 
+//GO(ssl3_set_handshake_header, 
+//GO(ssl3_setup_buffers, 
+//GO(ssl3_setup_key_block, 
+//GO(ssl3_setup_read_buffer, 
+//GO(ssl3_setup_write_buffer, 
+//GO(ssl3_shutdown, 
+//GO(ssl3_write, 
+//GO(ssl3_write_bytes, 
+//GO(ssl3_write_pending, 
+GO(SSL_accept, iFp)
+//GO(ssl_add_cert_chain, 
+GO(SSL_add_client_CA, iFpp)
+//GO(ssl_add_clienthello_renegotiate_ext, 
+//GO(ssl_add_clienthello_tlsext, 
+//GO(ssl_add_clienthello_use_srtp_ext, 
+//GO(SSL_add_dir_cert_subjects_to_stack, 
+//GO(SSL_add_file_cert_subjects_to_stack, 
+//GO(ssl_add_serverhello_renegotiate_ext, 
+//GO(ssl_add_serverhello_tlsext, 
+//GO(ssl_add_serverhello_use_srtp_ext, 
+//GO(SSL_alert_desc_string, 
+//GO(SSL_alert_desc_string_long, 
+//GO(SSL_alert_type_string, 
+//GO(SSL_alert_type_string_long, 
+//GO(ssl_bad_method, 
+//GO(ssl_build_cert_chain, 
+//GO(ssl_bytes_to_cipher_list, 
+//GO(SSL_cache_hit, 
+GOM(SSL_callback_ctrl, lFEpip)
+//GO(ssl_cert_add0_chain_cert, 
+//GO(ssl_cert_add1_chain_cert, 
+//GO(ssl_cert_clear_certs, 
+//GO(ssl_cert_dup, 
+//GO(ssl_cert_free, 
+//GO(ssl_cert_inst, 
+//GO(ssl_cert_new, 
+//GO(SSL_certs_clear, 
+//GO(ssl_cert_select_current, 
+//GO(ssl_cert_set0_chain, 
+//GO(ssl_cert_set1_chain, 
+//GO(ssl_cert_set_cert_cb, 
+//GO(ssl_cert_set_cert_store, 
+//GO(ssl_cert_set_current, 
+//GO(ssl_cert_set_default_md, 
+//GO(ssl_cert_type, 
+//GO(SSL_check_chain, 
+//GO(ssl_check_clienthello_tlsext_late, 
+GO(SSL_check_private_key, iFp)
+//GO(ssl_check_serverhello_tlsext, 
+//GO(ssl_check_srvr_ecc_cert_and_alg, 
+GO(SSL_CIPHER_description, pFppi)
+//GO(SSL_CIPHER_find, 
+GO(SSL_CIPHER_get_bits, iFpp)
+//GO(ssl_cipher_get_cert_index, 
+//GO(ssl_cipher_get_evp, 
+//GO(SSL_CIPHER_get_id, 
+GO(SSL_CIPHER_get_name, pFp)
+GO(SSL_CIPHER_get_version, pFp)
+//GO(ssl_cipher_id_cmp, 
+//GO(ssl_cipher_list_to_bytes, 
+//GO(ssl_cipher_ptr_id_cmp, 
+GO(SSL_clear, iFp)
+//GO(ssl_clear_bad_session, 
+//GO(ssl_clear_cipher_ctx, 
+//GO(ssl_clear_hash_ctx, 
+//GO(SSL_COMP_add_compression_method, 
+//GO(SSL_COMP_free_compression_methods, 
+//GO(SSL_COMP_get_compression_methods, 
+//GO(SSL_COMP_get_name, 
+//GO(SSL_COMP_set0_compression_methods, 
+//GO(SSL_CONF_cmd, 
+//GO(SSL_CONF_cmd_argv, 
+//GO(SSL_CONF_cmd_value_type, 
+//GO(SSL_CONF_CTX_clear_flags, 
+//GO(SSL_CONF_CTX_finish, 
+//GO(SSL_CONF_CTX_free, 
+//GO(SSL_CONF_CTX_new, 
+//GO(SSL_CONF_CTX_set1_prefix, 
+//GO(SSL_CONF_CTX_set_flags, 
+//GO(SSL_CONF_CTX_set_ssl, 
+//GO(SSL_CONF_CTX_set_ssl_ctx, 
+GO(SSL_connect, iFp)
+//GO(SSL_copy_session_id, 
+//GO(ssl_create_cipher_list, 
+GO(SSL_ctrl, lFpilp)
+GO(SSL_CTX_add_client_CA, iFpp)
+//GO(SSL_CTX_add_client_custom_ext, 
+//GO(SSL_CTX_add_server_custom_ext, 
+//GO(SSL_CTX_add_session, 
+GOM(SSL_CTX_callback_ctrl, lFEpip)
+GO(SSL_CTX_check_private_key, iFp)
+GO(SSL_CTX_ctrl, lFpilp)
+//GO(SSL_CTX_flush_sessions, 
+GO(SSL_CTX_free, vFp)
+//GO(SSL_CTX_get0_certificate, 
+//GO(SSL_CTX_get0_param, 
+//GO(SSL_CTX_get0_privatekey, 
+GO(SSL_CTX_get_cert_store, pFp)
+//GO(SSL_CTX_get_client_CA_list, 
+//GO(SSL_CTX_get_client_cert_cb, 
+//GO(SSL_CTX_get_ex_data, 
+//GO(SSL_CTX_get_ex_new_index, 
+//GO(SSL_CTX_get_info_callback, 
+//GO(SSL_CTX_get_quiet_shutdown, 
+//GO(SSL_CTX_get_ssl_method, 
+//GO(SSL_CTX_get_timeout, 
+//GO(SSL_CTX_get_verify_callback, 
+//GO(SSL_CTX_get_verify_depth, 
+//GO(SSL_CTX_get_verify_mode, 
+GO(SSL_CTX_load_verify_locations, iFppp)
+GO(SSL_CTX_new, pFp)
+//GO(SSL_CTX_remove_session, 
+//GO(SSL_CTX_sess_get_get_cb, 
+//GO(SSL_CTX_sess_get_new_cb, 
+//GO(SSL_CTX_sess_get_remove_cb, 
+//GO(SSL_CTX_sessions, 
+//GO(SSL_CTX_sess_set_get_cb, 
+//GO(SSL_CTX_sess_set_new_cb, 
+//GO(SSL_CTX_sess_set_remove_cb, 
+//GO(SSL_CTX_set1_param, 
+//GO(SSL_CTX_set_alpn_protos, 
+//GO(SSL_CTX_set_alpn_select_cb, 
+//GO(SSL_CTX_set_cert_cb, 
+//GO(SSL_CTX_set_cert_store, 
+//GO(SSL_CTX_set_cert_verify_callback, 
+GO(SSL_CTX_set_cipher_list, iFpp)
+GO(SSL_CTX_set_client_CA_list, vFpp)
+//GO(SSL_CTX_set_client_cert_cb, 
+//GO(SSL_CTX_set_client_cert_engine, 
+//GO(SSL_CTX_set_cookie_generate_cb, 
+//GO(SSL_CTX_set_cookie_verify_cb, 
+GOM(SSL_CTX_set_default_passwd_cb, vFEpp)
+GO(SSL_CTX_set_default_passwd_cb_userdata, vFpp)
+GO(SSL_CTX_set_default_verify_paths, iFp)
+//GO(SSL_CTX_set_ex_data, 
+//GO(SSL_CTX_set_generate_session_id, 
+//GO(SSL_CTX_set_info_callback, 
+//GO(SSL_CTX_set_msg_callback, 
+//GO(SSL_CTX_set_next_protos_advertised_cb, 
+GOM(SSL_CTX_set_next_proto_select_cb, vFEppp)
+//GO(SSL_CTX_set_psk_client_callback, 
+//GO(SSL_CTX_set_psk_server_callback, 
+//GO(SSL_CTX_set_purpose, 
+//GO(SSL_CTX_set_quiet_shutdown, 
+//GO(SSL_CTX_set_session_id_context, 
+//GO(SSL_CTX_set_srp_cb_arg, 
+//GO(SSL_CTX_set_srp_client_pwd_callback, 
+//GO(SSL_CTX_set_srp_password, 
+//GO(SSL_CTX_set_srp_strength, 
+//GO(SSL_CTX_set_srp_username, 
+//GO(SSL_CTX_set_srp_username_callback, 
+//GO(SSL_CTX_set_srp_verify_param_callback, 
+//GO(SSL_CTX_set_ssl_version, 
+//GO(SSL_CTX_set_timeout, 
+//GO(SSL_CTX_set_tlsext_use_srtp, 
+//GO(SSL_CTX_set_tmp_dh_callback, 
+//GO(SSL_CTX_set_tmp_ecdh_callback, 
+//GO(SSL_CTX_set_tmp_rsa_callback, 
+//GO(SSL_CTX_set_trust, 
+GOM(SSL_CTX_set_verify, vFEpip)
+GO(SSL_CTX_set_verify_depth, vFpi)
+//GO(SSL_CTX_SRP_CTX_free, 
+//GO(SSL_CTX_SRP_CTX_init, 
+GO(SSL_CTX_use_certificate, iFpp)
+GO(SSL_CTX_use_certificate_ASN1, iFpip)
+GO(SSL_CTX_use_certificate_chain_file, iFpp)
+GO(SSL_CTX_use_certificate_file, iFppi)
+GO(SSL_CTX_use_PrivateKey, iFpp)
+GO(SSL_CTX_use_PrivateKey_ASN1, iFuppi)
+GO(SSL_CTX_use_PrivateKey_file, iFppi)
+//GO(SSL_CTX_use_psk_identity_hint, 
+GO(SSL_CTX_use_RSAPrivateKey, iFpp)
+GO(SSL_CTX_use_RSAPrivateKey_ASN1, iFppl)
+GO(SSL_CTX_use_RSAPrivateKey_file, iFppi)
+//GO(SSL_CTX_use_serverinfo, 
+//GO(SSL_CTX_use_serverinfo_file, 
+//GO(ssl_do_client_cert_cb, 
+//GO(SSL_do_handshake, 
+//GO(SSL_dup, 
+//GO(SSL_dup_CA_list, 
+//GO(SSL_export_keying_material, 
+//GO(SSL_extension_supported, 
+//GO(ssl_fill_hello_random, 
+GO(SSL_free, vFp)
+//GO(ssl_free_wbio_buffer, 
+//GO(SSL_get0_alpn_selected, 
+GO(SSL_get0_next_proto_negotiated, vFppp)
+//GO(SSL_get0_param, 
+GO(SSL_get0_session, pFp)
+GO(SSL_get1_session, pFp)
+//GO(ssl_get_algorithm2, 
+GO(SSL_get_certificate, pFp)
+//GO(ssl_get_cipher_by_char, 
+//GO(SSL_get_cipher_list, 
+GO(SSL_get_ciphers, pFp)
+//GO(ssl_get_ciphers_by_id, 
+//GO(SSL_get_client_CA_list, 
+GO(SSL_get_current_cipher, pFp)
+//GO(SSL_get_current_compression, 
+//GO(SSL_get_current_expansion, 
+//GO(SSL_get_default_timeout, 
+GO(SSL_get_error, iFpi)
+GO(SSL_get_ex_data, pFpi)
+//GO(SSL_get_ex_data_X509_STORE_CTX_idx, 
+GOM(SSL_get_ex_new_index, iFElpppp)
+//GO(SSL_get_fd, 
+//GO(SSL_get_finished, 
+//GO(ssl_get_handshake_digest, 
+//GO(SSL_get_info_callback, 
+//GO(ssl_get_new_session, 
+GO(SSL_get_peer_cert_chain, pFp)
+GO(SSL_get_peer_certificate, pFp)
+//GO(SSL_get_peer_finished, 
+//GO(ssl_get_prev_session, 
+GO(SSL_get_privatekey, pFp)
+//GO(SSL_get_psk_identity, 
+//GO(SSL_get_psk_identity_hint, 
+//GO(SSL_get_quiet_shutdown, 
+//GO(SSL_get_rbio, 
+//GO(SSL_get_read_ahead, 
+//GO(SSL_get_rfd, 
+//GO(SSL_get_selected_srtp_profile, 
+//GO(ssl_get_server_cert_serverinfo, 
+//GO(SSL_get_servername, 
+//GO(SSL_get_servername_type, 
+//GO(ssl_get_server_send_pkey, 
+GO(SSL_get_session, pFp)
+//GO(SSL_get_shared_ciphers, 
+//GO(SSL_get_shared_sigalgs, 
+GO(SSL_get_shutdown, iFp)
+//GO(SSL_get_sigalgs, 
+//GO(ssl_get_sign_pkey, 
+//GO(SSL_get_srp_g, 
+//GO(SSL_get_srp_N, 
+//GO(SSL_get_srp_userinfo, 
+//GO(SSL_get_srp_username, 
+//GO(SSL_get_srtp_profiles, 
+//GO(SSL_get_SSL_CTX, 
+//GO(SSL_get_ssl_method, 
+//GO(SSL_get_verify_callback, 
+//GO(SSL_get_verify_depth, 
+//GO(SSL_get_verify_mode, 
+GO(SSL_get_verify_result, iFp)
+//GO(SSL_get_version, 
+//GO(SSL_get_wbio, 
+//GO(SSL_get_wfd, 
+//GO(SSL_has_matching_session_id, 
+//GO(ssl_init_wbio_buffer, 
+GO(SSL_is_server, iFp)
+GO(SSL_library_init, iFv)
+//GO(ssl_load_ciphers, 
+//GO(SSL_load_client_CA_file, 
+GO(SSL_load_error_strings, vFv)
+GO(SSL_new, pFp)
+//GO(ssl_ok, 
+//GO(ssl_parse_clienthello_renegotiate_ext, 
+//GO(ssl_parse_clienthello_tlsext, 
+//GO(ssl_parse_clienthello_use_srtp_ext, 
+//GO(ssl_parse_serverhello_renegotiate_ext, 
+//GO(ssl_parse_serverhello_tlsext, 
+//GO(ssl_parse_serverhello_use_srtp_ext, 
+GO(SSL_peek, iFppi)
+GO(SSL_pending, iFp)
+//GO(ssl_prepare_clienthello_tlsext, 
+//GO(ssl_prepare_serverhello_tlsext, 
+GO(SSL_read, iFppi)
+//GO(SSL_renegotiate, 
+//GO(SSL_renegotiate_abbreviated, 
+//GO(SSL_renegotiate_pending, 
+//GO(ssl_replace_hash, 
+//GO(SSL_rstate_string, 
+//GO(SSL_rstate_string_long, 
+GO(SSL_select_next_proto, iFpppupu)
+//GO(ssl_sess_cert_free, 
+//GO(ssl_sess_cert_new, 
+GO(ssl_session_dup, pFp)
+GO(SSL_SESSION_dup, pFp)
+GO(SSL_SESSION_free, vFp)
+//GO(SSL_SESSION_get0_peer, 
+//GO(SSL_SESSION_get_compress_id, 
+//GO(SSL_SESSION_get_ex_data, 
+//GO(SSL_SESSION_get_ex_new_index, 
+//GO(SSL_SESSION_get_id, 
+//GO(SSL_SESSION_get_time, 
+//GO(SSL_SESSION_get_timeout, 
+GO(SSL_SESSION_new, pFv)
+//GO(SSL_SESSION_print, 
+//GO(SSL_SESSION_print_fp, 
+//GO(SSL_SESSION_set1_id_context, 
+//GO(SSL_SESSION_set_ex_data, 
+//GO(SSL_SESSION_set_time, 
+//GO(SSL_SESSION_set_timeout, 
+GO(SSL_SESSION_up_ref, iFp)
+//GO(SSL_set1_param, 
+GO(SSL_set_accept_state, vFp)
+//GO(SSL_set_alpn_protos, 
+GO(SSL_set_bio, vFppp)
+//GO(SSL_set_cert_cb, 
+//GO(ssl_set_cert_masks, 
+GO(SSL_CTX_set_cert_store, vFpp)
+GO(SSL_set_cipher_list, iFpp)
+GO(SSL_set_client_CA_list, vFpp)
+//GO(ssl_set_client_disabled, 
+GO(SSL_set_connect_state, vFp)
+//GO(SSL_set_debug, 
+GO(SSL_set_ex_data, iFpip)
+GO(SSL_set_fd, iFpi)
+//GO(SSL_set_generate_session_id, 
+//GO(SSL_set_info_callback, 
+//GO(SSL_set_msg_callback, 
+//GO(ssl_set_peer_cert_type, 
+GOM(SSL_set_psk_client_callback, vFEpp)
+//GO(SSL_set_psk_server_callback, 
+//GO(SSL_set_purpose, 
+//GO(SSL_set_quiet_shutdown, 
+//GO(SSL_set_read_ahead, 
+GO(SSL_set_rfd, iFpi)
+GO(SSL_set_session, iFpp)
+//GO(SSL_set_session_id_context, 
+//GO(SSL_set_session_secret_cb, 
+//GO(SSL_set_session_ticket_ext, 
+//GO(SSL_set_session_ticket_ext_cb, 
+GO(SSL_set_shutdown, iFp)
+//GO(SSL_set_srp_server_param, 
+//GO(SSL_set_srp_server_param_pw, 
+//GO(SSL_set_SSL_CTX, 
+//GO(SSL_set_ssl_method, 
+//GO(SSL_set_state, 
+//GO(SSL_set_tlsext_use_srtp, 
+//GO(SSL_set_tmp_dh_callback, 
+//GO(SSL_set_tmp_ecdh_callback, 
+//GO(SSL_set_tmp_rsa_callback, 
+//GO(SSL_set_trust, 
+GOM(SSL_set_verify, vFEpip)
+GO(SSL_set_verify_depth, vFpi)
+//GO(SSL_set_verify_result, 
+GO(SSL_set_wfd, iFpi)
+GO(SSL_shutdown, iFp)
+//GO(SSL_SRP_CTX_free, 
+//GO(SSL_SRP_CTX_init, 
+//GO(SSL_srp_server_param_with_username, 
+//GO(SSL_state, 
+//GO(SSL_state_string, 
+//GO(SSL_state_string_long, 
+//GO(ssl_undefined_const_function, 
+//GO(ssl_undefined_function, 
+//GO(ssl_undefined_void_function, 
+//GO(ssl_update_cache, 
+GO(SSL_use_certificate, iFpp)
+GO(SSL_use_certificate_ASN1, iFppi)
+GO(SSL_use_certificate_file, iFppi)
+GO(SSL_use_PrivateKey, iFpp)
+GO(SSL_use_PrivateKey_ASN1, iFppl)
+GO(SSL_use_PrivateKey_file, iFppi)
+//GO(SSL_use_psk_identity_hint, 
+GO(SSL_use_RSAPrivateKey, iFpp)
+GO(SSL_use_RSAPrivateKey_ASN1, iFppl)
+GO(SSL_use_RSAPrivateKey_file, iFppi)
+GO(SSLv23_client_method, pFv)
+GO(SSLv23_method, pFv)
+GO(SSLv23_server_method, pFv)
+GO(SSLv2_client_method, pFv)
+GO(SSLv2_method, pFv)
+GO(SSLv2_server_method, pFv)
+GO(SSLv3_client_method, pFv)
+GO(SSLv3_method, pFv)
+GO(SSLv3_server_method, pFv)
+//GO(ssl_verify_alarm_type, 
+//GO(ssl_verify_cert_chain, 
+GO(SSL_version, iFp)
+//GO(SSL_want, 
+GO(SSL_write, iFppi)
+//GO(tls12_check_peer_sigalg, 
+//GO(tls12_get_hash, 
+//GO(tls12_get_psigalgs, 
+//GO(tls12_get_sigandhash, 
+//GO(tls12_get_sigid, 
+//GO(tls1_alert_code, 
+//GO(tls1_cbc_remove_padding, 
+//GO(tls1_cert_verify_mac, 
+//GO(tls1_change_cipher_state, 
+//GO(tls1_check_chain, 
+//GO(tls1_check_curve, 
+//GO(tls1_check_ec_tmp_key, 
+//GO(tls1_clear, 
+//GO(tls1_default_timeout, 
+//GO(tls1_ec_curve_id2nid, 
+//GO(tls1_ec_nid2curve_id, 
+//GO(tls1_enc, 
+//GO(tls1_export_keying_material, 
+//GO(tls1_final_finish_mac, 
+//GO(tls1_free, 
+//GO(tls1_generate_master_secret, 
+//GO(tls1_heartbeat, 
+//GO(tls1_mac, 
+//GO(tls1_new, 
+//GO(tls1_process_heartbeat, 
+//GO(tls1_process_sigalgs, 
+//GO(tls1_process_ticket, 
+//GO(tls1_save_sigalgs, 
+//GO(tls1_set_cert_validity, 
+//GO(tls1_set_curves, 
+//GO(tls1_set_curves_list, 
+//GO(tls1_set_server_sigalgs, 
+//GO(tls1_set_sigalgs, 
+//GO(tls1_set_sigalgs_list, 
+//GO(tls1_setup_key_block, 
+//GO(tls1_shared_curve, 
+GO(TLSv1_1_client_method, pFv)
+GO(TLSv1_1_method, pFv)
+GO(TLSv1_1_server_method, pFv)
+GO(TLSv1_2_client_method, pFv)
+GO(TLSv1_2_method, pFv)
+GO(TLSv1_2_server_method, pFv)
+GO(TLSv1_client_method, pFv)
+GO(TLSv1_method, pFv)
+GO(verify_callback, iFip)
+
+GO(TLSv1_server_method, pFv)    // not always present in lib
\ No newline at end of file