about summary refs log tree commit diff stats
path: root/src/wrapped
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2021-03-08 16:21:33 +0100
committerptitSeb <sebastien.chev@gmail.com>2021-03-08 16:21:33 +0100
commit544a496f088f62756ad0804eae1a3919dcb15468 (patch)
tree84b287ccd3876f6f6a5080d84ff708e0f07048f3 /src/wrapped
parent14f0497e640f9777c3d30979bf6a30e5c06c8b02 (diff)
downloadbox64-544a496f088f62756ad0804eae1a3919dcb15468.tar.gz
box64-544a496f088f62756ad0804eae1a3919dcb15468.zip
Added a bunch of X11 related lib (copy from box86, mostly un-verified)
Diffstat (limited to 'src/wrapped')
-rw-r--r--src/wrapped/generated/functions_list.txt62
-rw-r--r--src/wrapped/generated/wrapper.c124
-rw-r--r--src/wrapped/generated/wrapper.h62
-rwxr-xr-xsrc/wrapped/wrappedlibxau.c17
-rwxr-xr-xsrc/wrapped/wrappedlibxau_private.h12
-rwxr-xr-xsrc/wrapped/wrappedlibxcb.c23
-rwxr-xr-xsrc/wrapped/wrappedlibxcb_private.h678
-rwxr-xr-xsrc/wrapped/wrappedlibxdmcp.c17
-rwxr-xr-xsrc/wrapped/wrappedlibxdmcp_private.h47
-rwxr-xr-xsrc/wrapped/wrappedlibxext.c271
-rwxr-xr-xsrc/wrapped/wrappedlibxext_private.h139
-rwxr-xr-xsrc/wrapped/wrappedlibxi.c24
-rwxr-xr-xsrc/wrapped/wrappedlibxi_private.h88
13 files changed, 1564 insertions, 0 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt
index 760757fc..09132527 100644
--- a/src/wrapped/generated/functions_list.txt
+++ b/src/wrapped/generated/functions_list.txt
@@ -97,6 +97,7 @@
 #() uFup
 #() uFpi
 #() uFpu
+#() uFpU
 #() uFpp
 #() UFEp
 #() fFif
@@ -119,6 +120,7 @@
 #() pFlp
 #() pFLL
 #() pFpi
+#() pFpC
 #() pFpu
 #() pFpL
 #() pFpp
@@ -182,8 +184,11 @@
 #() iFfff
 #() iFpii
 #() iFpiu
+#() iFpiL
 #() iFpip
+#() iFpui
 #() iFpuu
+#() iFpuU
 #() iFpuL
 #() iFpup
 #() iFpfu
@@ -208,6 +213,7 @@
 #() uFupu
 #() uFupp
 #() uFpiu
+#() uFpLp
 #() uFppi
 #() uFppu
 #() UFppi
@@ -230,8 +236,11 @@
 #() pFpiu
 #() pFpiL
 #() pFpip
+#() pFpCC
 #() pFpuu
 #() pFpuL
+#() pFpup
+#() pFpUp
 #() pFppi
 #() pFppu
 #() pFppL
@@ -284,6 +293,7 @@
 #() vFpddd
 #() vFppip
 #() vFppui
+#() vFpppi
 #() vFpppu
 #() vFpppp
 #() cFpiii
@@ -294,6 +304,7 @@
 #() iFEppp
 #() iFiiii
 #() iFiiiu
+#() iFippi
 #() iFippp
 #() iFuipp
 #() iFuuff
@@ -309,8 +320,10 @@
 #() iFpWWu
 #() iFpuip
 #() iFpuui
+#() iFpuuu
 #() iFpuup
 #() iFpuLL
+#() iFpuLp
 #() iFpupV
 #() iFppii
 #() iFppiu
@@ -328,11 +341,13 @@
 #() iFpppp
 #() IFEpIi
 #() uFuuuu
+#() uFpipp
 #() uFpCCC
 #() uFpuip
 #() uFpuuu
 #() uFpppi
 #() uFpppp
+#() UFpipp
 #() LFpuuu
 #() LFpLLp
 #() pFEupp
@@ -345,7 +360,13 @@
 #() pFpiii
 #() pFpiuu
 #() pFpipp
+#() pFpCWp
+#() pFpCuW
+#() pFpCuu
 #() pFpuii
+#() pFpuWp
+#() pFpuuu
+#() pFpuup
 #() pFplpp
 #() pFppiL
 #() pFppip
@@ -413,6 +434,7 @@
 #() vFpipii
 #() vFpuipp
 #() vFpddii
+#() vFppiii
 #() vFppWui
 #() vFpppii
 #() vFppppp
@@ -455,7 +477,12 @@
 #() pFuiiiu
 #() pFuiipp
 #() pFpiiuu
+#() pFpCuup
+#() pFpCppp
 #() pFpuiii
+#() pFpuWWW
+#() pFpuuWW
+#() pFpuuup
 #() pFppipi
 #() pFppipp
 #() pFppuuu
@@ -534,10 +561,15 @@
 #() iFpppppi
 #() iFpppppL
 #() iFpppppp
+#() uFpippup
+#() UFpippup
 #() pFEpippp
 #() pFiCiiCi
 #() pFpiiiiu
 #() pFpippip
+#() pFpCuuCC
+#() pFpCuuWW
+#() pFpCuuup
 #() pFpuuuuu
 #() pFppiiii
 #() pFpppppp
@@ -578,7 +610,9 @@
 #() vFudddddd
 #() vFpipipii
 #() vFpddiidd
+#() vFppiiipi
 #() vFpppiiii
+#() iFEpppiiu
 #() iFEpppppp
 #() iFiiiiiip
 #() iFpiiuuiu
@@ -597,6 +631,14 @@
 #() iFppppdpi
 #() iFppppppp
 #() uFuippppp
+#() pFEppppip
+#() pFuupupup
+#() pFpCuwwWW
+#() pFpCuWCCC
+#() pFpCuuwwp
+#() pFpCuuuuu
+#() pFppuuppp
+#() pFppppuuu
 #() pFpppppuu
 #() pFppppppp
 #() vFiiiiuuip
@@ -619,6 +661,8 @@
 #() vFuuuuuuuu
 #() vFuuuuufff
 #() vFffffffff
+#() vFpippiipi
+#() vFppiiipii
 #() vFppppiipi
 #() iFEpippppp
 #() iFiiiiiiip
@@ -634,6 +678,9 @@
 #() iFpppppppp
 #() uFuipppppp
 #() pFuiiiuuuu
+#() pFuupupipp
+#() pFpCuwwWWu
+#() pFpCuuuCup
 #() pFpppuuLLu
 #() vFuiiiiiiii
 #() vFuiiiiiuip
@@ -650,15 +697,21 @@
 #() vFuffffffff
 #() vFffuuuufff
 #() vFddddddddd
+#() vFppiiipiii
 #() vFpppppippp
 #() iFiiiiiiiip
 #() iFiiiipiiip
 #() iFdddpppppp
+#() iFpipLpiiip
 #() iFppiuiippL
 #() iFpppiiuuii
+#() iFpppiipiiu
 #() iFppppppppp
 #() pFEppiiuuLi
+#() pFEppuippuu
 #() pFpiiiiuuuu
+#() pFpCuWCCuuu
+#() pFpuuwwWWww
 #() pFppiiuuuLL
 #() vFiiiiiiiiiu
 #() vFuiiiiiiiii
@@ -679,6 +732,8 @@
 #() iFpuupiuiipp
 #() iFppuuiiiiii
 #() iFppppiiuuii
+#() pFpCuWCCuuCW
+#() pFpuuuwwwwWW
 #() pFppuiipuuii
 #() pFpppppppppp
 #() vFuiiiiiiiiip
@@ -694,20 +749,27 @@
 #() vFpipipiipiii
 #() iFEppppiiiiuu
 #() iFiiiiiiiiiip
+#() iFpipllippppp
 #() iFppppiiuuiiL
 #() pFEppuiipuuii
 #() vFuuiiiiiiiuip
 #() vFuuiiiiiiiuup
 #() vFuuuuuuuuuuuu
 #() vFffffffffffff
+#() iFEppppiiiiuui
+#() iFpipppppppppp
 #() iFpppllipppppp
+#() iFpppppppppppp
 #() pFEppiiuuuipii
+#() pFpCuuWWwwCCup
+#() pFpuuuWWWWWWWW
 #() pFppiiuuuiupLp
 #() vFuiiiiiiiiiuup
 #() vFuuuuuuuuuuuuu
 #() vFuffffffffffff
 #() iFddddpppddpppp
 #() iFpippuuuiipppp
+#() pFpCuuwwWWWWuup
 #() pFppppppppppppp
 #() vFuffiiffiiffiip
 #() vFuddiiddiiddiip
diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c
index 1480967c..53ec5da1 100644
--- a/src/wrapped/generated/wrapper.c
+++ b/src/wrapped/generated/wrapper.c
@@ -130,6 +130,7 @@ typedef uint32_t (*uFuu_t)(uint32_t, uint32_t);
 typedef uint32_t (*uFup_t)(uint32_t, void*);
 typedef uint32_t (*uFpi_t)(void*, int32_t);
 typedef uint32_t (*uFpu_t)(void*, uint32_t);
+typedef uint32_t (*uFpU_t)(void*, uint64_t);
 typedef uint32_t (*uFpp_t)(void*, void*);
 typedef uint64_t (*UFEp_t)(x64emu_t*, void*);
 typedef float (*fFif_t)(int32_t, float);
@@ -152,6 +153,7 @@ typedef void* (*pFup_t)(uint32_t, void*);
 typedef void* (*pFlp_t)(intptr_t, void*);
 typedef void* (*pFLL_t)(uintptr_t, uintptr_t);
 typedef void* (*pFpi_t)(void*, int32_t);
+typedef void* (*pFpC_t)(void*, uint8_t);
 typedef void* (*pFpu_t)(void*, uint32_t);
 typedef void* (*pFpL_t)(void*, uintptr_t);
 typedef void* (*pFpp_t)(void*, void*);
@@ -215,8 +217,11 @@ typedef int32_t (*iFuff_t)(uint32_t, float, float);
 typedef int32_t (*iFfff_t)(float, float, float);
 typedef int32_t (*iFpii_t)(void*, int32_t, int32_t);
 typedef int32_t (*iFpiu_t)(void*, int32_t, uint32_t);
+typedef int32_t (*iFpiL_t)(void*, int32_t, uintptr_t);
 typedef int32_t (*iFpip_t)(void*, int32_t, void*);
+typedef int32_t (*iFpui_t)(void*, uint32_t, int32_t);
 typedef int32_t (*iFpuu_t)(void*, uint32_t, uint32_t);
+typedef int32_t (*iFpuU_t)(void*, uint32_t, uint64_t);
 typedef int32_t (*iFpuL_t)(void*, uint32_t, uintptr_t);
 typedef int32_t (*iFpup_t)(void*, uint32_t, void*);
 typedef int32_t (*iFpfu_t)(void*, float, uint32_t);
@@ -241,6 +246,7 @@ typedef uint32_t (*uFuup_t)(uint32_t, uint32_t, void*);
 typedef uint32_t (*uFupu_t)(uint32_t, void*, uint32_t);
 typedef uint32_t (*uFupp_t)(uint32_t, void*, void*);
 typedef uint32_t (*uFpiu_t)(void*, int32_t, uint32_t);
+typedef uint32_t (*uFpLp_t)(void*, uintptr_t, void*);
 typedef uint32_t (*uFppi_t)(void*, void*, int32_t);
 typedef uint32_t (*uFppu_t)(void*, void*, uint32_t);
 typedef uint64_t (*UFppi_t)(void*, void*, int32_t);
@@ -263,8 +269,11 @@ typedef void* (*pFpii_t)(void*, int32_t, int32_t);
 typedef void* (*pFpiu_t)(void*, int32_t, uint32_t);
 typedef void* (*pFpiL_t)(void*, int32_t, uintptr_t);
 typedef void* (*pFpip_t)(void*, int32_t, void*);
+typedef void* (*pFpCC_t)(void*, uint8_t, uint8_t);
 typedef void* (*pFpuu_t)(void*, uint32_t, uint32_t);
 typedef void* (*pFpuL_t)(void*, uint32_t, uintptr_t);
+typedef void* (*pFpup_t)(void*, uint32_t, void*);
+typedef void* (*pFpUp_t)(void*, uint64_t, void*);
 typedef void* (*pFppi_t)(void*, void*, int32_t);
 typedef void* (*pFppu_t)(void*, void*, uint32_t);
 typedef void* (*pFppL_t)(void*, void*, uintptr_t);
@@ -317,6 +326,7 @@ typedef void (*vFpdii_t)(void*, double, int32_t, int32_t);
 typedef void (*vFpddd_t)(void*, double, double, double);
 typedef void (*vFppip_t)(void*, void*, int32_t, void*);
 typedef void (*vFppui_t)(void*, void*, uint32_t, int32_t);
+typedef void (*vFpppi_t)(void*, void*, void*, int32_t);
 typedef void (*vFpppu_t)(void*, void*, void*, uint32_t);
 typedef void (*vFpppp_t)(void*, void*, void*, void*);
 typedef int8_t (*cFpiii_t)(void*, int32_t, int32_t, int32_t);
@@ -327,6 +337,7 @@ typedef int32_t (*iFEppi_t)(x64emu_t*, void*, void*, int32_t);
 typedef int32_t (*iFEppp_t)(x64emu_t*, void*, void*, void*);
 typedef int32_t (*iFiiii_t)(int32_t, int32_t, int32_t, int32_t);
 typedef int32_t (*iFiiiu_t)(int32_t, int32_t, int32_t, uint32_t);
+typedef int32_t (*iFippi_t)(int32_t, void*, void*, int32_t);
 typedef int32_t (*iFippp_t)(int32_t, void*, void*, void*);
 typedef int32_t (*iFuipp_t)(uint32_t, int32_t, void*, void*);
 typedef int32_t (*iFuuff_t)(uint32_t, uint32_t, float, float);
@@ -342,8 +353,10 @@ typedef int32_t (*iFpCCC_t)(void*, uint8_t, uint8_t, uint8_t);
 typedef int32_t (*iFpWWu_t)(void*, uint16_t, uint16_t, uint32_t);
 typedef int32_t (*iFpuip_t)(void*, uint32_t, int32_t, void*);
 typedef int32_t (*iFpuui_t)(void*, uint32_t, uint32_t, int32_t);
+typedef int32_t (*iFpuuu_t)(void*, uint32_t, uint32_t, uint32_t);
 typedef int32_t (*iFpuup_t)(void*, uint32_t, uint32_t, void*);
 typedef int32_t (*iFpuLL_t)(void*, uint32_t, uintptr_t, uintptr_t);
+typedef int32_t (*iFpuLp_t)(void*, uint32_t, uintptr_t, void*);
 typedef int32_t (*iFpupV_t)(void*, uint32_t, void*, void*);
 typedef int32_t (*iFppii_t)(void*, void*, int32_t, int32_t);
 typedef int32_t (*iFppiu_t)(void*, void*, int32_t, uint32_t);
@@ -361,11 +374,13 @@ typedef int32_t (*iFpppL_t)(void*, void*, void*, uintptr_t);
 typedef int32_t (*iFpppp_t)(void*, void*, void*, void*);
 typedef int64_t (*IFEpIi_t)(x64emu_t*, void*, int64_t, int32_t);
 typedef uint32_t (*uFuuuu_t)(uint32_t, uint32_t, uint32_t, uint32_t);
+typedef uint32_t (*uFpipp_t)(void*, int32_t, void*, void*);
 typedef uint32_t (*uFpCCC_t)(void*, uint8_t, uint8_t, uint8_t);
 typedef uint32_t (*uFpuip_t)(void*, uint32_t, int32_t, void*);
 typedef uint32_t (*uFpuuu_t)(void*, uint32_t, uint32_t, uint32_t);
 typedef uint32_t (*uFpppi_t)(void*, void*, void*, int32_t);
 typedef uint32_t (*uFpppp_t)(void*, void*, void*, void*);
+typedef uint64_t (*UFpipp_t)(void*, int32_t, void*, void*);
 typedef uintptr_t (*LFpuuu_t)(void*, uint32_t, uint32_t, uint32_t);
 typedef uintptr_t (*LFpLLp_t)(void*, uintptr_t, uintptr_t, void*);
 typedef void* (*pFEupp_t)(x64emu_t*, uint32_t, void*, void*);
@@ -378,7 +393,13 @@ typedef void* (*pFuiii_t)(uint32_t, int32_t, int32_t, int32_t);
 typedef void* (*pFpiii_t)(void*, int32_t, int32_t, int32_t);
 typedef void* (*pFpiuu_t)(void*, int32_t, uint32_t, uint32_t);
 typedef void* (*pFpipp_t)(void*, int32_t, void*, void*);
+typedef void* (*pFpCWp_t)(void*, uint8_t, uint16_t, void*);
+typedef void* (*pFpCuW_t)(void*, uint8_t, uint32_t, uint16_t);
+typedef void* (*pFpCuu_t)(void*, uint8_t, uint32_t, uint32_t);
 typedef void* (*pFpuii_t)(void*, uint32_t, int32_t, int32_t);
+typedef void* (*pFpuWp_t)(void*, uint32_t, uint16_t, void*);
+typedef void* (*pFpuuu_t)(void*, uint32_t, uint32_t, uint32_t);
+typedef void* (*pFpuup_t)(void*, uint32_t, uint32_t, void*);
 typedef void* (*pFplpp_t)(void*, intptr_t, void*, void*);
 typedef void* (*pFppiL_t)(void*, void*, int32_t, uintptr_t);
 typedef void* (*pFppip_t)(void*, void*, int32_t, void*);
@@ -446,6 +467,7 @@ typedef void (*vFpiiii_t)(void*, int32_t, int32_t, int32_t, int32_t);
 typedef void (*vFpipii_t)(void*, int32_t, void*, int32_t, int32_t);
 typedef void (*vFpuipp_t)(void*, uint32_t, int32_t, void*, void*);
 typedef void (*vFpddii_t)(void*, double, double, int32_t, int32_t);
+typedef void (*vFppiii_t)(void*, void*, int32_t, int32_t, int32_t);
 typedef void (*vFppWui_t)(void*, void*, uint16_t, uint32_t, int32_t);
 typedef void (*vFpppii_t)(void*, void*, void*, int32_t, int32_t);
 typedef void (*vFppppp_t)(void*, void*, void*, void*, void*);
@@ -488,7 +510,12 @@ typedef void* (*pFEpipL_t)(x64emu_t*, void*, int32_t, void*, uintptr_t);
 typedef void* (*pFuiiiu_t)(uint32_t, int32_t, int32_t, int32_t, uint32_t);
 typedef void* (*pFuiipp_t)(uint32_t, int32_t, int32_t, void*, void*);
 typedef void* (*pFpiiuu_t)(void*, int32_t, int32_t, uint32_t, uint32_t);
+typedef void* (*pFpCuup_t)(void*, uint8_t, uint32_t, uint32_t, void*);
+typedef void* (*pFpCppp_t)(void*, uint8_t, void*, void*, void*);
 typedef void* (*pFpuiii_t)(void*, uint32_t, int32_t, int32_t, int32_t);
+typedef void* (*pFpuWWW_t)(void*, uint32_t, uint16_t, uint16_t, uint16_t);
+typedef void* (*pFpuuWW_t)(void*, uint32_t, uint32_t, uint16_t, uint16_t);
+typedef void* (*pFpuuup_t)(void*, uint32_t, uint32_t, uint32_t, void*);
 typedef void* (*pFppipi_t)(void*, void*, int32_t, void*, int32_t);
 typedef void* (*pFppipp_t)(void*, void*, int32_t, void*, void*);
 typedef void* (*pFppuuu_t)(void*, void*, uint32_t, uint32_t, uint32_t);
@@ -567,10 +594,15 @@ typedef int32_t (*iFppppii_t)(void*, void*, void*, void*, int32_t, int32_t);
 typedef int32_t (*iFpppppi_t)(void*, void*, void*, void*, void*, int32_t);
 typedef int32_t (*iFpppppL_t)(void*, void*, void*, void*, void*, uintptr_t);
 typedef int32_t (*iFpppppp_t)(void*, void*, void*, void*, void*, void*);
+typedef uint32_t (*uFpippup_t)(void*, int32_t, void*, void*, uint32_t, void*);
+typedef uint64_t (*UFpippup_t)(void*, int32_t, void*, void*, uint32_t, void*);
 typedef void* (*pFEpippp_t)(x64emu_t*, void*, int32_t, void*, void*, void*);
 typedef void* (*pFiCiiCi_t)(int32_t, uint8_t, int32_t, int32_t, uint8_t, int32_t);
 typedef void* (*pFpiiiiu_t)(void*, int32_t, int32_t, int32_t, int32_t, uint32_t);
 typedef void* (*pFpippip_t)(void*, int32_t, void*, void*, int32_t, void*);
+typedef void* (*pFpCuuCC_t)(void*, uint8_t, uint32_t, uint32_t, uint8_t, uint8_t);
+typedef void* (*pFpCuuWW_t)(void*, uint8_t, uint32_t, uint32_t, uint16_t, uint16_t);
+typedef void* (*pFpCuuup_t)(void*, uint8_t, uint32_t, uint32_t, uint32_t, void*);
 typedef void* (*pFpuuuuu_t)(void*, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t);
 typedef void* (*pFppiiii_t)(void*, void*, int32_t, int32_t, int32_t, int32_t);
 typedef void* (*pFpppppp_t)(void*, void*, void*, void*, void*, void*);
@@ -611,7 +643,9 @@ typedef void (*vFuffffff_t)(uint32_t, float, float, float, float, float, float);
 typedef void (*vFudddddd_t)(uint32_t, double, double, double, double, double, double);
 typedef void (*vFpipipii_t)(void*, int32_t, void*, int32_t, void*, int32_t, int32_t);
 typedef void (*vFpddiidd_t)(void*, double, double, int32_t, int32_t, double, double);
+typedef void (*vFppiiipi_t)(void*, void*, int32_t, int32_t, int32_t, void*, int32_t);
 typedef void (*vFpppiiii_t)(void*, void*, void*, int32_t, int32_t, int32_t, int32_t);
+typedef int32_t (*iFEpppiiu_t)(x64emu_t*, void*, void*, void*, int32_t, int32_t, uint32_t);
 typedef int32_t (*iFEpppppp_t)(x64emu_t*, void*, void*, void*, void*, void*, void*);
 typedef int32_t (*iFiiiiiip_t)(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*);
 typedef int32_t (*iFpiiuuiu_t)(void*, int32_t, int32_t, uint32_t, uint32_t, int32_t, uint32_t);
@@ -630,6 +664,14 @@ typedef int32_t (*iFppppiii_t)(void*, void*, void*, void*, int32_t, int32_t, int
 typedef int32_t (*iFppppdpi_t)(void*, void*, void*, void*, double, void*, int32_t);
 typedef int32_t (*iFppppppp_t)(void*, void*, void*, void*, void*, void*, void*);
 typedef uint32_t (*uFuippppp_t)(uint32_t, int32_t, void*, void*, void*, void*, void*);
+typedef void* (*pFEppppip_t)(x64emu_t*, void*, void*, void*, void*, int32_t, void*);
+typedef void* (*pFuupupup_t)(uint32_t, uint32_t, void*, uint32_t, void*, uint32_t, void*);
+typedef void* (*pFpCuwwWW_t)(void*, uint8_t, uint32_t, int16_t, int16_t, uint16_t, uint16_t);
+typedef void* (*pFpCuWCCC_t)(void*, uint8_t, uint32_t, uint16_t, uint8_t, uint8_t, uint8_t);
+typedef void* (*pFpCuuwwp_t)(void*, uint8_t, uint32_t, uint32_t, int16_t, int16_t, void*);
+typedef void* (*pFpCuuuuu_t)(void*, uint8_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t);
+typedef void* (*pFppuuppp_t)(void*, void*, uint32_t, uint32_t, void*, void*, void*);
+typedef void* (*pFppppuuu_t)(void*, void*, void*, void*, uint32_t, uint32_t, uint32_t);
 typedef void* (*pFpppppuu_t)(void*, void*, void*, void*, void*, uint32_t, uint32_t);
 typedef void* (*pFppppppp_t)(void*, void*, void*, void*, void*, void*, void*);
 typedef void (*vFiiiiuuip_t)(int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, void*);
@@ -652,6 +694,8 @@ typedef void (*vFuuuipipp_t)(uint32_t, uint32_t, uint32_t, int32_t, void*, int32
 typedef void (*vFuuuuuuuu_t)(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t);
 typedef void (*vFuuuuufff_t)(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, float, float, float);
 typedef void (*vFffffffff_t)(float, float, float, float, float, float, float, float);
+typedef void (*vFpippiipi_t)(void*, int32_t, void*, void*, int32_t, int32_t, void*, int32_t);
+typedef void (*vFppiiipii_t)(void*, void*, int32_t, int32_t, int32_t, void*, int32_t, int32_t);
 typedef void (*vFppppiipi_t)(void*, void*, void*, void*, int32_t, int32_t, void*, int32_t);
 typedef int32_t (*iFEpippppp_t)(x64emu_t*, void*, int32_t, void*, void*, void*, void*, void*);
 typedef int32_t (*iFiiiiiiip_t)(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*);
@@ -667,6 +711,9 @@ typedef int32_t (*iFppppiipi_t)(void*, void*, void*, void*, int32_t, int32_t, vo
 typedef int32_t (*iFpppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*);
 typedef uint32_t (*uFuipppppp_t)(uint32_t, int32_t, void*, void*, void*, void*, void*, void*);
 typedef void* (*pFuiiiuuuu_t)(uint32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, uint32_t, uint32_t);
+typedef void* (*pFuupupipp_t)(uint32_t, uint32_t, void*, uint32_t, void*, int32_t, void*, void*);
+typedef void* (*pFpCuwwWWu_t)(void*, uint8_t, uint32_t, int16_t, int16_t, uint16_t, uint16_t, uint32_t);
+typedef void* (*pFpCuuuCup_t)(void*, uint8_t, uint32_t, uint32_t, uint32_t, uint8_t, uint32_t, void*);
 typedef void* (*pFpppuuLLu_t)(void*, void*, void*, uint32_t, uint32_t, uintptr_t, uintptr_t, uint32_t);
 typedef void (*vFuiiiiiiii_t)(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t);
 typedef void (*vFuiiiiiuip_t)(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, int32_t, void*);
@@ -683,15 +730,21 @@ typedef void (*vFuupiuiuuf_t)(uint32_t, uint32_t, void*, int32_t, uint32_t, int3
 typedef void (*vFuffffffff_t)(uint32_t, float, float, float, float, float, float, float, float);
 typedef void (*vFffuuuufff_t)(float, float, uint32_t, uint32_t, uint32_t, uint32_t, float, float, float);
 typedef void (*vFddddddddd_t)(double, double, double, double, double, double, double, double, double);
+typedef void (*vFppiiipiii_t)(void*, void*, int32_t, int32_t, int32_t, void*, int32_t, int32_t, int32_t);
 typedef void (*vFpppppippp_t)(void*, void*, void*, void*, void*, int32_t, void*, void*, void*);
 typedef int32_t (*iFiiiiiiiip_t)(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*);
 typedef int32_t (*iFiiiipiiip_t)(int32_t, int32_t, int32_t, int32_t, void*, int32_t, int32_t, int32_t, void*);
 typedef int32_t (*iFdddpppppp_t)(double, double, double, void*, void*, void*, void*, void*, void*);
+typedef int32_t (*iFpipLpiiip_t)(void*, int32_t, void*, uintptr_t, void*, int32_t, int32_t, int32_t, void*);
 typedef int32_t (*iFppiuiippL_t)(void*, void*, int32_t, uint32_t, int32_t, int32_t, void*, void*, uintptr_t);
 typedef int32_t (*iFpppiiuuii_t)(void*, void*, void*, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t);
+typedef int32_t (*iFpppiipiiu_t)(void*, void*, void*, int32_t, int32_t, void*, int32_t, int32_t, uint32_t);
 typedef int32_t (*iFppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*);
 typedef void* (*pFEppiiuuLi_t)(x64emu_t*, void*, void*, int32_t, int32_t, uint32_t, uint32_t, uintptr_t, int32_t);
+typedef void* (*pFEppuippuu_t)(x64emu_t*, void*, void*, uint32_t, int32_t, void*, void*, uint32_t, uint32_t);
 typedef void* (*pFpiiiiuuuu_t)(void*, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, uint32_t, uint32_t);
+typedef void* (*pFpCuWCCuuu_t)(void*, uint8_t, uint32_t, uint16_t, uint8_t, uint8_t, uint32_t, uint32_t, uint32_t);
+typedef void* (*pFpuuwwWWww_t)(void*, uint32_t, uint32_t, int16_t, int16_t, uint16_t, uint16_t, int16_t, int16_t);
 typedef void* (*pFppiiuuuLL_t)(void*, void*, int32_t, int32_t, uint32_t, uint32_t, uint32_t, uintptr_t, uintptr_t);
 typedef void (*vFiiiiiiiiiu_t)(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t);
 typedef void (*vFuiiiiiiiii_t)(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t);
@@ -712,6 +765,8 @@ typedef int32_t (*iFiiiiiiiiip_t)(int32_t, int32_t, int32_t, int32_t, int32_t, i
 typedef int32_t (*iFpuupiuiipp_t)(void*, uint32_t, uint32_t, void*, int32_t, uint32_t, int32_t, int32_t, void*, void*);
 typedef int32_t (*iFppuuiiiiii_t)(void*, void*, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t);
 typedef int32_t (*iFppppiiuuii_t)(void*, void*, void*, void*, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t);
+typedef void* (*pFpCuWCCuuCW_t)(void*, uint8_t, uint32_t, uint16_t, uint8_t, uint8_t, uint32_t, uint32_t, uint8_t, uint16_t);
+typedef void* (*pFpuuuwwwwWW_t)(void*, uint32_t, uint32_t, uint32_t, int16_t, int16_t, int16_t, int16_t, uint16_t, uint16_t);
 typedef void* (*pFppuiipuuii_t)(void*, void*, uint32_t, int32_t, int32_t, void*, uint32_t, uint32_t, int32_t, int32_t);
 typedef void* (*pFpppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*);
 typedef void (*vFuiiiiiiiiip_t)(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*);
@@ -727,20 +782,27 @@ typedef void (*vFuffffffffff_t)(uint32_t, float, float, float, float, float, flo
 typedef void (*vFpipipiipiii_t)(void*, int32_t, void*, int32_t, void*, int32_t, int32_t, void*, int32_t, int32_t, int32_t);
 typedef int32_t (*iFEppppiiiiuu_t)(x64emu_t*, void*, void*, void*, void*, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t);
 typedef int32_t (*iFiiiiiiiiiip_t)(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*);
+typedef int32_t (*iFpipllippppp_t)(void*, int32_t, void*, intptr_t, intptr_t, int32_t, void*, void*, void*, void*, void*);
 typedef int32_t (*iFppppiiuuiiL_t)(void*, void*, void*, void*, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, uintptr_t);
 typedef void* (*pFEppuiipuuii_t)(x64emu_t*, void*, void*, uint32_t, int32_t, int32_t, void*, uint32_t, uint32_t, int32_t, int32_t);
 typedef void (*vFuuiiiiiiiuip_t)(uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, int32_t, void*);
 typedef void (*vFuuiiiiiiiuup_t)(uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*);
 typedef void (*vFuuuuuuuuuuuu_t)(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t);
 typedef void (*vFffffffffffff_t)(float, float, float, float, float, float, float, float, float, float, float, float);
+typedef int32_t (*iFEppppiiiiuui_t)(x64emu_t*, void*, void*, void*, void*, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t);
+typedef int32_t (*iFpipppppppppp_t)(void*, int32_t, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*);
 typedef int32_t (*iFpppllipppppp_t)(void*, void*, void*, intptr_t, intptr_t, int32_t, void*, void*, void*, void*, void*, void*);
+typedef int32_t (*iFpppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*);
 typedef void* (*pFEppiiuuuipii_t)(x64emu_t*, void*, void*, int32_t, int32_t, uint32_t, uint32_t, uint32_t, int32_t, void*, int32_t, int32_t);
+typedef void* (*pFpCuuWWwwCCup_t)(void*, uint8_t, uint32_t, uint32_t, uint16_t, uint16_t, int16_t, int16_t, uint8_t, uint8_t, uint32_t, void*);
+typedef void* (*pFpuuuWWWWWWWW_t)(void*, uint32_t, uint32_t, uint32_t, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t);
 typedef void* (*pFppiiuuuiupLp_t)(void*, void*, int32_t, int32_t, uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*, uintptr_t, void*);
 typedef void (*vFuiiiiiiiiiuup_t)(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*);
 typedef void (*vFuuuuuuuuuuuuu_t)(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t);
 typedef void (*vFuffffffffffff_t)(uint32_t, float, float, float, float, float, float, float, float, float, float, float, float);
 typedef int32_t (*iFddddpppddpppp_t)(double, double, double, double, void*, void*, void*, double, double, void*, void*, void*, void*);
 typedef int32_t (*iFpippuuuiipppp_t)(void*, int32_t, void*, void*, uint32_t, uint32_t, uint32_t, int32_t, int32_t, void*, void*, void*, void*);
+typedef void* (*pFpCuuwwWWWWuup_t)(void*, uint8_t, uint32_t, uint32_t, int16_t, int16_t, uint16_t, uint16_t, uint16_t, uint16_t, uint32_t, uint32_t, void*);
 typedef void* (*pFppppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*);
 typedef void (*vFuffiiffiiffiip_t)(uint32_t, float, float, int32_t, int32_t, float, float, int32_t, int32_t, float, float, int32_t, int32_t, void*);
 typedef void (*vFuddiiddiiddiip_t)(uint32_t, double, double, int32_t, int32_t, double, double, int32_t, int32_t, double, double, int32_t, int32_t, void*);
@@ -861,6 +923,7 @@ void uFuu(x64emu_t *emu, uintptr_t fcn) { uFuu_t fn = (uFuu_t)fcn; R_RAX=(uint32
 void uFup(x64emu_t *emu, uintptr_t fcn) { uFup_t fn = (uFup_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (void*)R_RSI); }
 void uFpi(x64emu_t *emu, uintptr_t fcn) { uFpi_t fn = (uFpi_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI); }
 void uFpu(x64emu_t *emu, uintptr_t fcn) { uFpu_t fn = (uFpu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI); }
+void uFpU(x64emu_t *emu, uintptr_t fcn) { uFpU_t fn = (uFpU_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint64_t)R_RSI); }
 void uFpp(x64emu_t *emu, uintptr_t fcn) { uFpp_t fn = (uFpp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI); }
 void UFEp(x64emu_t *emu, uintptr_t fcn) { UFEp_t fn = (UFEp_t)fcn; R_RAX=fn(emu, (void*)R_RDI); }
 void fFif(x64emu_t *emu, uintptr_t fcn) { fFif_t fn = (fFif_t)fcn; emu->xmm[0].f[0]=fn((int32_t)R_RDI, emu->xmm[0].f[0]); }
@@ -883,6 +946,7 @@ void pFup(x64emu_t *emu, uintptr_t fcn) { pFup_t fn = (pFup_t)fcn; R_RAX=(uintpt
 void pFlp(x64emu_t *emu, uintptr_t fcn) { pFlp_t fn = (pFlp_t)fcn; R_RAX=(uintptr_t)fn((intptr_t)R_RDI, (void*)R_RSI); }
 void pFLL(x64emu_t *emu, uintptr_t fcn) { pFLL_t fn = (pFLL_t)fcn; R_RAX=(uintptr_t)fn((uintptr_t)R_RDI, (uintptr_t)R_RSI); }
 void pFpi(x64emu_t *emu, uintptr_t fcn) { pFpi_t fn = (pFpi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int32_t)R_RSI); }
+void pFpC(x64emu_t *emu, uintptr_t fcn) { pFpC_t fn = (pFpC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI); }
 void pFpu(x64emu_t *emu, uintptr_t fcn) { pFpu_t fn = (pFpu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI); }
 void pFpL(x64emu_t *emu, uintptr_t fcn) { pFpL_t fn = (pFpL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI); }
 void pFpp(x64emu_t *emu, uintptr_t fcn) { pFpp_t fn = (pFpp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI); }
@@ -946,8 +1010,11 @@ void iFuff(x64emu_t *emu, uintptr_t fcn) { iFuff_t fn = (iFuff_t)fcn; R_RAX=fn((
 void iFfff(x64emu_t *emu, uintptr_t fcn) { iFfff_t fn = (iFfff_t)fcn; R_RAX=fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0]); }
 void iFpii(x64emu_t *emu, uintptr_t fcn) { iFpii_t fn = (iFpii_t)fcn; R_RAX=fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX); }
 void iFpiu(x64emu_t *emu, uintptr_t fcn) { iFpiu_t fn = (iFpiu_t)fcn; R_RAX=fn((void*)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX); }
+void iFpiL(x64emu_t *emu, uintptr_t fcn) { iFpiL_t fn = (iFpiL_t)fcn; R_RAX=fn((void*)R_RDI, (int32_t)R_RSI, (uintptr_t)R_RDX); }
 void iFpip(x64emu_t *emu, uintptr_t fcn) { iFpip_t fn = (iFpip_t)fcn; R_RAX=fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX); }
+void iFpui(x64emu_t *emu, uintptr_t fcn) { iFpui_t fn = (iFpui_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX); }
 void iFpuu(x64emu_t *emu, uintptr_t fcn) { iFpuu_t fn = (iFpuu_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX); }
+void iFpuU(x64emu_t *emu, uintptr_t fcn) { iFpuU_t fn = (iFpuU_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (uint64_t)R_RDX); }
 void iFpuL(x64emu_t *emu, uintptr_t fcn) { iFpuL_t fn = (iFpuL_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX); }
 void iFpup(x64emu_t *emu, uintptr_t fcn) { iFpup_t fn = (iFpup_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX); }
 void iFpfu(x64emu_t *emu, uintptr_t fcn) { iFpfu_t fn = (iFpfu_t)fcn; R_RAX=fn((void*)R_RDI, emu->xmm[0].f[0], (uint32_t)R_RSI); }
@@ -972,6 +1039,7 @@ void uFuup(x64emu_t *emu, uintptr_t fcn) { uFuup_t fn = (uFuup_t)fcn; R_RAX=(uin
 void uFupu(x64emu_t *emu, uintptr_t fcn) { uFupu_t fn = (uFupu_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (void*)R_RSI, (uint32_t)R_RDX); }
 void uFupp(x64emu_t *emu, uintptr_t fcn) { uFupp_t fn = (uFupp_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (void*)R_RSI, (void*)R_RDX); }
 void uFpiu(x64emu_t *emu, uintptr_t fcn) { uFpiu_t fn = (uFpiu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX); }
+void uFpLp(x64emu_t *emu, uintptr_t fcn) { uFpLp_t fn = (uFpLp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX); }
 void uFppi(x64emu_t *emu, uintptr_t fcn) { uFppi_t fn = (uFppi_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX); }
 void uFppu(x64emu_t *emu, uintptr_t fcn) { uFppu_t fn = (uFppu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX); }
 void UFppi(x64emu_t *emu, uintptr_t fcn) { UFppi_t fn = (UFppi_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX); }
@@ -994,8 +1062,11 @@ void pFpii(x64emu_t *emu, uintptr_t fcn) { pFpii_t fn = (pFpii_t)fcn; R_RAX=(uin
 void pFpiu(x64emu_t *emu, uintptr_t fcn) { pFpiu_t fn = (pFpiu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int32_t)R_RSI, (uint32_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, (int32_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, (int32_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); }
 void pFpuu(x64emu_t *emu, uintptr_t fcn) { pFpuu_t fn = (pFpuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX); }
 void pFpuL(x64emu_t *emu, uintptr_t fcn) { pFpuL_t fn = (pFpuL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX); }
+void pFpup(x64emu_t *emu, uintptr_t fcn) { pFpup_t fn = (pFpup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX); }
+void pFpUp(x64emu_t *emu, uintptr_t fcn) { pFpUp_t fn = (pFpUp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX); }
 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, (int32_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, (uint32_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); }
@@ -1048,6 +1119,7 @@ void vFpdii(x64emu_t *emu, uintptr_t fcn) { vFpdii_t fn = (vFpdii_t)fcn; fn((voi
 void vFpddd(x64emu_t *emu, uintptr_t fcn) { vFpddd_t fn = (vFpddd_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0]); }
 void vFppip(x64emu_t *emu, uintptr_t fcn) { vFppip_t fn = (vFppip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX); }
 void vFppui(x64emu_t *emu, uintptr_t fcn) { vFppui_t fn = (vFppui_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX); }
+void vFpppi(x64emu_t *emu, uintptr_t fcn) { vFpppi_t fn = (vFpppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX); }
 void vFpppu(x64emu_t *emu, uintptr_t fcn) { vFpppu_t fn = (vFpppu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint32_t)R_RCX); }
 void vFpppp(x64emu_t *emu, uintptr_t fcn) { vFpppp_t fn = (vFpppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void cFpiii(x64emu_t *emu, uintptr_t fcn) { cFpiii_t fn = (cFpiii_t)fcn; R_RAX=fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX); }
@@ -1058,6 +1130,7 @@ void iFEppi(x64emu_t *emu, uintptr_t fcn) { iFEppi_t fn = (iFEppi_t)fcn; R_RAX=f
 void iFEppp(x64emu_t *emu, uintptr_t fcn) { iFEppp_t fn = (iFEppp_t)fcn; R_RAX=fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX); }
 void iFiiii(x64emu_t *emu, uintptr_t fcn) { iFiiii_t fn = (iFiiii_t)fcn; R_RAX=fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX); }
 void iFiiiu(x64emu_t *emu, uintptr_t fcn) { iFiiiu_t fn = (iFiiiu_t)fcn; R_RAX=fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX); }
+void iFippi(x64emu_t *emu, uintptr_t fcn) { iFippi_t fn = (iFippi_t)fcn; R_RAX=fn((int32_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX); }
 void iFippp(x64emu_t *emu, uintptr_t fcn) { iFippp_t fn = (iFippp_t)fcn; R_RAX=fn((int32_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=fn((uint32_t)R_RDI, (int32_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=fn((uint32_t)R_RDI, (uint32_t)R_RSI, emu->xmm[0].f[0], emu->xmm[1].f[0]); }
@@ -1073,8 +1146,10 @@ void iFpCCC(x64emu_t *emu, uintptr_t fcn) { iFpCCC_t fn = (iFpCCC_t)fcn; R_RAX=f
 void iFpWWu(x64emu_t *emu, uintptr_t fcn) { iFpWWu_t fn = (iFpWWu_t)fcn; R_RAX=fn((void*)R_RDI, (uint16_t)R_RSI, (uint16_t)R_RDX, (uint32_t)R_RCX); }
 void iFpuip(x64emu_t *emu, uintptr_t fcn) { iFpuip_t fn = (iFpuip_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX); }
 void iFpuui(x64emu_t *emu, uintptr_t fcn) { iFpuui_t fn = (iFpuui_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX); }
+void iFpuuu(x64emu_t *emu, uintptr_t fcn) { iFpuuu_t fn = (iFpuuu_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX); }
 void iFpuup(x64emu_t *emu, uintptr_t fcn) { iFpuup_t fn = (iFpuup_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX); }
 void iFpuLL(x64emu_t *emu, uintptr_t fcn) { iFpuLL_t fn = (iFpuLL_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX); }
+void iFpuLp(x64emu_t *emu, uintptr_t fcn) { iFpuLp_t fn = (iFpuLp_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); }
 void iFpupV(x64emu_t *emu, uintptr_t fcn) { iFpupV_t fn = (iFpupV_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)(R_RSP + 8)); }
 void iFppii(x64emu_t *emu, uintptr_t fcn) { iFppii_t fn = (iFppii_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX); }
 void iFppiu(x64emu_t *emu, uintptr_t fcn) { iFppiu_t fn = (iFppiu_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX); }
@@ -1092,11 +1167,13 @@ void iFpppL(x64emu_t *emu, uintptr_t fcn) { iFpppL_t fn = (iFpppL_t)fcn; R_RAX=f
 void iFpppp(x64emu_t *emu, uintptr_t fcn) { iFpppp_t fn = (iFpppp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void IFEpIi(x64emu_t *emu, uintptr_t fcn) { IFEpIi_t fn = (IFEpIi_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int32_t)R_RDX); }
 void uFuuuu(x64emu_t *emu, uintptr_t fcn) { uFuuuu_t fn = (uFuuuu_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX); }
+void uFpipp(x64emu_t *emu, uintptr_t fcn) { uFpipp_t fn = (uFpipp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void uFpCCC(x64emu_t *emu, uintptr_t fcn) { uFpCCC_t fn = (uFpCCC_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint8_t)R_RDX, (uint8_t)R_RCX); }
 void uFpuip(x64emu_t *emu, uintptr_t fcn) { uFpuip_t fn = (uFpuip_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX); }
 void uFpuuu(x64emu_t *emu, uintptr_t fcn) { uFpuuu_t fn = (uFpuuu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX); }
 void uFpppi(x64emu_t *emu, uintptr_t fcn) { uFpppi_t fn = (uFpppi_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX); }
 void uFpppp(x64emu_t *emu, uintptr_t fcn) { uFpppp_t fn = (uFpppp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); }
+void UFpipp(x64emu_t *emu, uintptr_t fcn) { UFpipp_t fn = (UFpipp_t)fcn; R_RAX=fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void LFpuuu(x64emu_t *emu, uintptr_t fcn) { LFpuuu_t fn = (LFpuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_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); }
 void pFEupp(x64emu_t *emu, uintptr_t fcn) { pFEupp_t fn = (pFEupp_t)fcn; R_RAX=(uintptr_t)fn(emu, (uint32_t)R_RDI, (void*)R_RSI, (void*)R_RDX); }
@@ -1109,7 +1186,13 @@ void pFuiii(x64emu_t *emu, uintptr_t fcn) { pFuiii_t fn = (pFuiii_t)fcn; R_RAX=(
 void pFpiii(x64emu_t *emu, uintptr_t fcn) { pFpiii_t fn = (pFpiii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX); }
 void pFpiuu(x64emu_t *emu, uintptr_t fcn) { pFpiuu_t fn = (pFpiuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX); }
 void pFpipp(x64emu_t *emu, uintptr_t fcn) { pFpipp_t fn = (pFpipp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX); }
+void pFpCWp(x64emu_t *emu, uintptr_t fcn) { pFpCWp_t fn = (pFpCWp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint16_t)R_RDX, (void*)R_RCX); }
+void pFpCuW(x64emu_t *emu, uintptr_t fcn) { pFpCuW_t fn = (pFpCuW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (uint16_t)R_RCX); }
+void pFpCuu(x64emu_t *emu, uintptr_t fcn) { pFpCuu_t fn = (pFpCuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX); }
 void pFpuii(x64emu_t *emu, uintptr_t fcn) { pFpuii_t fn = (pFpuii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX); }
+void pFpuWp(x64emu_t *emu, uintptr_t fcn) { pFpuWp_t fn = (pFpuWp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint16_t)R_RDX, (void*)R_RCX); }
+void pFpuuu(x64emu_t *emu, uintptr_t fcn) { pFpuuu_t fn = (pFpuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX); }
+void pFpuup(x64emu_t *emu, uintptr_t fcn) { pFpuup_t fn = (pFpuup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX); }
 void pFplpp(x64emu_t *emu, uintptr_t fcn) { pFplpp_t fn = (pFplpp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void pFppiL(x64emu_t *emu, uintptr_t fcn) { pFppiL_t fn = (pFppiL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (uintptr_t)R_RCX); }
 void pFppip(x64emu_t *emu, uintptr_t fcn) { pFppip_t fn = (pFppip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX); }
@@ -1177,6 +1260,7 @@ void vFpiiii(x64emu_t *emu, uintptr_t fcn) { vFpiiii_t fn = (vFpiiii_t)fcn; fn((
 void vFpipii(x64emu_t *emu, uintptr_t fcn) { vFpipii_t fn = (vFpipii_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8); }
 void vFpuipp(x64emu_t *emu, uintptr_t fcn) { vFpuipp_t fn = (vFpuipp_t)fcn; fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void vFpddii(x64emu_t *emu, uintptr_t fcn) { vFpddii_t fn = (vFpddii_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], (int32_t)R_RSI, (int32_t)R_RDX); }
+void vFppiii(x64emu_t *emu, uintptr_t fcn) { vFppiii_t fn = (vFppiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8); }
 void vFppWui(x64emu_t *emu, uintptr_t fcn) { vFppWui_t fn = (vFppWui_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint16_t)R_RDX, (uint32_t)R_RCX, (int32_t)R_R8); }
 void vFpppii(x64emu_t *emu, uintptr_t fcn) { vFpppii_t fn = (vFpppii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8); }
 void vFppppp(x64emu_t *emu, uintptr_t fcn) { vFppppp_t fn = (vFppppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); }
@@ -1219,7 +1303,12 @@ void pFEpipL(x64emu_t *emu, uintptr_t fcn) { pFEpipL_t fn = (pFEpipL_t)fcn; R_RA
 void pFuiiiu(x64emu_t *emu, uintptr_t fcn) { pFuiiiu_t fn = (pFuiiiu_t)fcn; R_RAX=(uintptr_t)fn((uint32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8); }
 void pFuiipp(x64emu_t *emu, uintptr_t fcn) { pFuiipp_t fn = (pFuiipp_t)fcn; R_RAX=(uintptr_t)fn((uint32_t)R_RDI, (int32_t)R_RSI, (int32_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, (int32_t)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)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, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8); }
+void pFpCppp(x64emu_t *emu, uintptr_t fcn) { pFpCppp_t fn = (pFpCppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void pFpuiii(x64emu_t *emu, uintptr_t fcn) { pFpuiii_t fn = (pFpuiii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8); }
+void pFpuWWW(x64emu_t *emu, uintptr_t fcn) { pFpuWWW_t fn = (pFpuWWW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint16_t)R_RDX, (uint16_t)R_RCX, (uint16_t)R_R8); }
+void pFpuuWW(x64emu_t *emu, uintptr_t fcn) { pFpuuWW_t fn = (pFpuuWW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint16_t)R_RCX, (uint16_t)R_R8); }
+void pFpuuup(x64emu_t *emu, uintptr_t fcn) { pFpuuup_t fn = (pFpuuup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8); }
 void pFppipi(x64emu_t *emu, uintptr_t fcn) { pFppipi_t fn = (pFppipi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8); }
 void pFppipp(x64emu_t *emu, uintptr_t fcn) { pFppipp_t fn = (pFppipp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void pFppuuu(x64emu_t *emu, uintptr_t fcn) { pFppuuu_t fn = (pFppuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8); }
@@ -1298,10 +1387,15 @@ void iFppppii(x64emu_t *emu, uintptr_t fcn) { iFppppii_t fn = (iFppppii_t)fcn; R
 void iFpppppi(x64emu_t *emu, uintptr_t fcn) { iFpppppi_t fn = (iFpppppi_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int32_t)R_R9); }
 void iFpppppL(x64emu_t *emu, uintptr_t fcn) { iFpppppL_t fn = (iFpppppL_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uintptr_t)R_R9); }
 void iFpppppp(x64emu_t *emu, uintptr_t fcn) { iFpppppp_t fn = (iFpppppp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
+void uFpippup(x64emu_t *emu, uintptr_t fcn) { uFpippup_t fn = (uFpippup_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (void*)R_R9); }
+void UFpippup(x64emu_t *emu, uintptr_t fcn) { UFpippup_t fn = (UFpippup_t)fcn; R_RAX=fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (void*)R_R9); }
 void pFEpippp(x64emu_t *emu, uintptr_t fcn) { pFEpippp_t fn = (pFEpippp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void pFiCiiCi(x64emu_t *emu, uintptr_t fcn) { pFiCiiCi_t fn = (pFiCiiCi_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (uint8_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (uint8_t)R_R8, (int32_t)R_R9); }
 void pFpiiiiu(x64emu_t *emu, uintptr_t fcn) { pFpiiiiu_t fn = (pFpiiiiu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (uint32_t)R_R9); }
 void pFpippip(x64emu_t *emu, uintptr_t fcn) { pFpippip_t fn = (pFpippip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (void*)R_R9); }
+void pFpCuuCC(x64emu_t *emu, uintptr_t fcn) { pFpCuuCC_t fn = (pFpCuuCC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint8_t)R_R8, (uint8_t)R_R9); }
+void pFpCuuWW(x64emu_t *emu, uintptr_t fcn) { pFpCuuWW_t fn = (pFpCuuWW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint16_t)R_R8, (uint16_t)R_R9); }
+void pFpCuuup(x64emu_t *emu, uintptr_t fcn) { pFpCuuup_t fn = (pFpCuuup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (void*)R_R9); }
 void pFpuuuuu(x64emu_t *emu, uintptr_t fcn) { pFpuuuuu_t fn = (pFpuuuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9); }
 void pFppiiii(x64emu_t *emu, uintptr_t fcn) { pFppiiii_t fn = (pFppiiii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9); }
 void pFpppppp(x64emu_t *emu, uintptr_t fcn) { pFpppppp_t fn = (pFpppppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
@@ -1342,7 +1436,9 @@ void vFuffffff(x64emu_t *emu, uintptr_t fcn) { vFuffffff_t fn = (vFuffffff_t)fcn
 void vFudddddd(x64emu_t *emu, uintptr_t fcn) { vFudddddd_t fn = (vFudddddd_t)fcn; fn((uint32_t)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], emu->xmm[4].d[0], emu->xmm[5].d[0]); }
 void vFpipipii(x64emu_t *emu, uintptr_t fcn) { vFpipipii_t fn = (vFpipipii_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (int32_t)R_R9, *(int32_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], (int32_t)R_RSI, (int32_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, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9, *(int32_t*)(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, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8)); }
+void iFEpppiiu(x64emu_t *emu, uintptr_t fcn) { iFEpppiiu_t fn = (iFEpppiiu_t)fcn; R_RAX=fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (uint32_t)R_R9); }
 void iFEpppppp(x64emu_t *emu, uintptr_t fcn) { iFEpppppp_t fn = (iFEpppppp_t)fcn; R_RAX=fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFiiiiiip(x64emu_t *emu, uintptr_t fcn) { iFiiiiiip_t fn = (iFiiiiiip_t)fcn; R_RAX=fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8)); }
 void iFpiiuuiu(x64emu_t *emu, uintptr_t fcn) { iFpiiuuiu_t fn = (iFpiiuuiu_t)fcn; R_RAX=fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (int32_t)R_R9, *(uint32_t*)(R_RSP + 8)); }
@@ -1361,6 +1457,14 @@ void iFppppiii(x64emu_t *emu, uintptr_t fcn) { iFppppiii_t fn = (iFppppiii_t)fcn
 void iFppppdpi(x64emu_t *emu, uintptr_t fcn) { iFppppdpi_t fn = (iFppppdpi_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, emu->xmm[0].d[0], (void*)R_R8, (int32_t)R_R9); }
 void iFppppppp(x64emu_t *emu, uintptr_t fcn) { iFppppppp_t fn = (iFppppppp_t)fcn; R_RAX=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=(uint32_t)fn((uint32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
+void pFEppppip(x64emu_t *emu, uintptr_t fcn) { pFEppppip_t fn = (pFEppppip_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (void*)R_R9); }
+void pFuupupup(x64emu_t *emu, uintptr_t fcn) { pFuupupup_t fn = (pFuupupup_t)fcn; R_RAX=(uintptr_t)fn((uint32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8)); }
+void pFpCuwwWW(x64emu_t *emu, uintptr_t fcn) { pFpCuwwWW_t fn = (pFpCuwwWW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (int16_t)R_RCX, (int16_t)R_R8, (uint16_t)R_R9, *(uint16_t*)(R_RSP + 8)); }
+void pFpCuWCCC(x64emu_t *emu, uintptr_t fcn) { pFpCuWCCC_t fn = (pFpCuWCCC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (uint16_t)R_RCX, (uint8_t)R_R8, (uint8_t)R_R9, *(uint8_t*)(R_RSP + 8)); }
+void pFpCuuwwp(x64emu_t *emu, uintptr_t fcn) { pFpCuuwwp_t fn = (pFpCuuwwp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (int16_t)R_R8, (int16_t)R_R9, *(void**)(R_RSP + 8)); }
+void pFpCuuuuu(x64emu_t *emu, uintptr_t fcn) { pFpCuuuuu_t fn = (pFpCuuuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8)); }
+void pFppuuppp(x64emu_t *emu, uintptr_t fcn) { pFppuuppp_t fn = (pFppuuppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
+void pFppppuuu(x64emu_t *emu, uintptr_t fcn) { pFppppuuu_t fn = (pFppppuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8)); }
 void pFpppppuu(x64emu_t *emu, uintptr_t fcn) { pFpppppuu_t fn = (pFpppppuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8)); }
 void pFppppppp(x64emu_t *emu, uintptr_t fcn) { pFppppppp_t fn = (pFppppppp_t)fcn; R_RAX=(uintptr_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 vFiiiiuuip(x64emu_t *emu, uintptr_t fcn) { vFiiiiuuip_t fn = (vFiiiiuuip_t)fcn; fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); }
@@ -1383,6 +1487,8 @@ void vFuuuipipp(x64emu_t *emu, uintptr_t fcn) { vFuuuipipp_t fn = (vFuuuipipp_t)
 void vFuuuuuuuu(x64emu_t *emu, uintptr_t fcn) { vFuuuuuuuu_t fn = (vFuuuuuuuu_t)fcn; fn((uint32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16)); }
 void vFuuuuufff(x64emu_t *emu, uintptr_t fcn) { vFuuuuufff_t fn = (vFuuuuufff_t)fcn; fn((uint32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0]); }
 void vFffffffff(x64emu_t *emu, uintptr_t fcn) { vFffffffff_t fn = (vFffffffff_t)fcn; fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0], emu->xmm[4].f[0], emu->xmm[5].f[0], emu->xmm[6].f[0], emu->xmm[7].f[0]); }
+void vFpippiipi(x64emu_t *emu, uintptr_t fcn) { vFpippiipi_t fn = (vFpippiipi_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8), *(int32_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, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(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, (int32_t)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8), *(int32_t*)(R_RSP + 16)); }
 void iFEpippppp(x64emu_t *emu, uintptr_t fcn) { iFEpippppp_t fn = (iFEpippppp_t)fcn; R_RAX=fn(emu, (void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)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=fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); }
@@ -1398,6 +1504,9 @@ void iFppppiipi(x64emu_t *emu, uintptr_t fcn) { iFppppiipi_t fn = (iFppppiipi_t)
 void iFpppppppp(x64emu_t *emu, uintptr_t fcn) { iFpppppppp_t fn = (iFpppppppp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); }
 void uFuipppppp(x64emu_t *emu, uintptr_t fcn) { uFuipppppp_t fn = (uFuipppppp_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); }
 void pFuiiiuuuu(x64emu_t *emu, uintptr_t fcn) { pFuiiiuuuu_t fn = (pFuiiiuuuu_t)fcn; R_RAX=(uintptr_t)fn((uint32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16)); }
+void pFuupupipp(x64emu_t *emu, uintptr_t fcn) { pFuupupipp_t fn = (pFuupupipp_t)fcn; R_RAX=(uintptr_t)fn((uint32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); }
+void pFpCuwwWWu(x64emu_t *emu, uintptr_t fcn) { pFpCuwwWWu_t fn = (pFpCuwwWWu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (int16_t)R_RCX, (int16_t)R_R8, (uint16_t)R_R9, *(uint16_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16)); }
+void pFpCuuuCup(x64emu_t *emu, uintptr_t fcn) { pFpCuuuCup_t fn = (pFpCuuuCup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (uint8_t)R_R9, *(uint32_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); }
 void pFpppuuLLu(x64emu_t *emu, uintptr_t fcn) { pFpppuuLLu_t fn = (pFpppuuLLu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (uintptr_t)R_R9, *(uintptr_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16)); }
 void vFuiiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiiii_t fn = (vFuiiiiiiii_t)fcn; fn((uint32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24)); }
 void vFuiiiiiuip(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiuip_t fn = (vFuiiiiiuip_t)fcn; fn((uint32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); }
@@ -1414,15 +1523,21 @@ void vFuupiuiuuf(x64emu_t *emu, uintptr_t fcn) { vFuupiuiuuf_t fn = (vFuupiuiuuf
 void vFuffffffff(x64emu_t *emu, uintptr_t fcn) { vFuffffffff_t fn = (vFuffffffff_t)fcn; fn((uint32_t)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0], emu->xmm[4].f[0], emu->xmm[5].f[0], emu->xmm[6].f[0], emu->xmm[7].f[0]); }
 void vFffuuuufff(x64emu_t *emu, uintptr_t fcn) { vFffuuuufff_t fn = (vFffuuuufff_t)fcn; fn(emu->xmm[0].f[0], emu->xmm[1].f[0], (uint32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, emu->xmm[2].f[0], emu->xmm[3].f[0], emu->xmm[4].f[0]); }
 void vFddddddddd(x64emu_t *emu, uintptr_t fcn) { vFddddddddd_t fn = (vFddddddddd_t)fcn; fn(emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], emu->xmm[4].d[0], emu->xmm[5].d[0], emu->xmm[6].d[0], emu->xmm[7].d[0], *(double*)(R_RSP + 8)); }
+void vFppiiipiii(x64emu_t *emu, uintptr_t fcn) { vFppiiipiii_t fn = (vFppiiipiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_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, (int32_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); }
 void iFiiiiiiiip(x64emu_t *emu, uintptr_t fcn) { iFiiiiiiiip_t fn = (iFiiiiiiiip_t)fcn; R_RAX=fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); }
 void iFiiiipiiip(x64emu_t *emu, uintptr_t fcn) { iFiiiipiiip_t fn = (iFiiiipiiip_t)fcn; R_RAX=fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); }
 void iFdddpppppp(x64emu_t *emu, uintptr_t fcn) { iFdddpppppp_t fn = (iFdddpppppp_t)fcn; R_RAX=fn(emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
+void iFpipLpiiip(x64emu_t *emu, uintptr_t fcn) { iFpipLpiiip_t fn = (iFpipLpiiip_t)fcn; R_RAX=fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); }
 void iFppiuiippL(x64emu_t *emu, uintptr_t fcn) { iFppiuiippL_t fn = (iFppiuiippL_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(uintptr_t*)(R_RSP + 24)); }
 void iFpppiiuuii(x64emu_t *emu, uintptr_t fcn) { iFpppiiuuii_t fn = (iFpppiiuuii_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24)); }
+void iFpppiipiiu(x64emu_t *emu, uintptr_t fcn) { iFpppiipiiu_t fn = (iFpppiipiiu_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(uint32_t*)(R_RSP + 24)); }
 void iFppppppppp(x64emu_t *emu, uintptr_t fcn) { iFppppppppp_t fn = (iFppppppppp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); }
 void pFEppiiuuLi(x64emu_t *emu, uintptr_t fcn) { pFEppiiuuLi_t fn = (pFEppiiuuLi_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uintptr_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16)); }
+void pFEppuippuu(x64emu_t *emu, uintptr_t fcn) { pFEppuippuu_t fn = (pFEppuippuu_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16)); }
 void pFpiiiiuuuu(x64emu_t *emu, uintptr_t fcn) { pFpiiiiuuuu_t fn = (pFpiiiiuuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(uint32_t*)(R_RSP + 24)); }
+void pFpCuWCCuuu(x64emu_t *emu, uintptr_t fcn) { pFpCuWCCuuu_t fn = (pFpCuWCCuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (uint16_t)R_RCX, (uint8_t)R_R8, (uint8_t)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(uint32_t*)(R_RSP + 24)); }
+void pFpuuwwWWww(x64emu_t *emu, uintptr_t fcn) { pFpuuwwWWww_t fn = (pFpuuwwWWww_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (int16_t)R_RCX, (int16_t)R_R8, (uint16_t)R_R9, *(uint16_t*)(R_RSP + 8), *(int16_t*)(R_RSP + 16), *(int16_t*)(R_RSP + 24)); }
 void pFppiiuuuLL(x64emu_t *emu, uintptr_t fcn) { pFppiiuuuLL_t fn = (pFppiiuuuLL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(uintptr_t*)(R_RSP + 16), *(uintptr_t*)(R_RSP + 24)); }
 void vFiiiiiiiiiu(x64emu_t *emu, uintptr_t fcn) { vFiiiiiiiiiu_t fn = (vFiiiiiiiiiu_t)fcn; fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(uint32_t*)(R_RSP + 32)); }
 void vFuiiiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiiiii_t fn = (vFuiiiiiiiii_t)fcn; fn((uint32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32)); }
@@ -1443,6 +1558,8 @@ void iFiiiiiiiiip(x64emu_t *emu, uintptr_t fcn) { iFiiiiiiiiip_t fn = (iFiiiiiii
 void iFpuupiuiipp(x64emu_t *emu, uintptr_t fcn) { iFpuupiuiipp_t fn = (iFpuupiuiipp_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8, (uint32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32)); }
 void iFppuuiiiiii(x64emu_t *emu, uintptr_t fcn) { iFppuuiiiiii_t fn = (iFppuuiiiiii_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32)); }
 void iFppppiiuuii(x64emu_t *emu, uintptr_t fcn) { iFppppiiuuii_t fn = (iFppppiiuuii_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32)); }
+void pFpCuWCCuuCW(x64emu_t *emu, uintptr_t fcn) { pFpCuWCCuuCW_t fn = (pFpCuWCCuuCW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (uint16_t)R_RCX, (uint8_t)R_R8, (uint8_t)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(uint8_t*)(R_RSP + 24), *(uint16_t*)(R_RSP + 32)); }
+void pFpuuuwwwwWW(x64emu_t *emu, uintptr_t fcn) { pFpuuuwwwwWW_t fn = (pFpuuuwwwwWW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (int16_t)R_R8, (int16_t)R_R9, *(int16_t*)(R_RSP + 8), *(int16_t*)(R_RSP + 16), *(uint16_t*)(R_RSP + 24), *(uint16_t*)(R_RSP + 32)); }
 void pFppuiipuuii(x64emu_t *emu, uintptr_t fcn) { pFppuiipuuii_t fn = (pFppuiipuuii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32)); }
 void pFpppppppppp(x64emu_t *emu, uintptr_t fcn) { pFpppppppppp_t fn = (pFpppppppppp_t)fcn; R_RAX=(uintptr_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**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32)); }
 void vFuiiiiiiiiip(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiiiiip_t fn = (vFuiiiiiiiiip_t)fcn; fn((uint32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32), *(void**)(R_RSP + 40)); }
@@ -1458,20 +1575,27 @@ void vFuffffffffff(x64emu_t *emu, uintptr_t fcn) { vFuffffffffff_t fn = (vFuffff
 void vFpipipiipiii(x64emu_t *emu, uintptr_t fcn) { vFpipipiipiii_t fn = (vFpipipiipiii_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32), *(int32_t*)(R_RSP + 40)); }
 void iFEppppiiiiuu(x64emu_t *emu, uintptr_t fcn) { iFEppppiiiiuu_t fn = (iFEppppiiiiuu_t)fcn; R_RAX=fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(uint32_t*)(R_RSP + 24), *(uint32_t*)(R_RSP + 32)); }
 void iFiiiiiiiiiip(x64emu_t *emu, uintptr_t fcn) { iFiiiiiiiiiip_t fn = (iFiiiiiiiiiip_t)fcn; R_RAX=fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32), *(void**)(R_RSP + 40)); }
+void iFpipllippppp(x64emu_t *emu, uintptr_t fcn) { iFpipllippppp_t fn = (iFpipllippppp_t)fcn; R_RAX=fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (intptr_t)R_RCX, (intptr_t)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40)); }
 void iFppppiiuuiiL(x64emu_t *emu, uintptr_t fcn) { iFppppiiuuiiL_t fn = (iFppppiiuuiiL_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32), *(uintptr_t*)(R_RSP + 40)); }
 void pFEppuiipuuii(x64emu_t *emu, uintptr_t fcn) { pFEppuiipuuii_t fn = (pFEppuiipuuii_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32)); }
 void vFuuiiiiiiiuip(x64emu_t *emu, uintptr_t fcn) { vFuuiiiiiiiuip_t fn = (vFuuiiiiiiiuip_t)fcn; fn((uint32_t)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(uint32_t*)(R_RSP + 32), *(int32_t*)(R_RSP + 40), *(void**)(R_RSP + 48)); }
 void vFuuiiiiiiiuup(x64emu_t *emu, uintptr_t fcn) { vFuuiiiiiiiuup_t fn = (vFuuiiiiiiiuup_t)fcn; fn((uint32_t)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(uint32_t*)(R_RSP + 32), *(uint32_t*)(R_RSP + 40), *(void**)(R_RSP + 48)); }
 void vFuuuuuuuuuuuu(x64emu_t *emu, uintptr_t fcn) { vFuuuuuuuuuuuu_t fn = (vFuuuuuuuuuuuu_t)fcn; fn((uint32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(uint32_t*)(R_RSP + 24), *(uint32_t*)(R_RSP + 32), *(uint32_t*)(R_RSP + 40), *(uint32_t*)(R_RSP + 48)); }
 void vFffffffffffff(x64emu_t *emu, uintptr_t fcn) { vFffffffffffff_t fn = (vFffffffffffff_t)fcn; fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0], emu->xmm[4].f[0], emu->xmm[5].f[0], emu->xmm[6].f[0], emu->xmm[7].f[0], *(float*)(R_RSP + 8), *(float*)(R_RSP + 16), *(float*)(R_RSP + 24), *(float*)(R_RSP + 32)); }
+void iFEppppiiiiuui(x64emu_t *emu, uintptr_t fcn) { iFEppppiiiiuui_t fn = (iFEppppiiiiuui_t)fcn; R_RAX=fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(uint32_t*)(R_RSP + 24), *(uint32_t*)(R_RSP + 32), *(int32_t*)(R_RSP + 40)); }
+void iFpipppppppppp(x64emu_t *emu, uintptr_t fcn) { iFpipppppppppp_t fn = (iFpipppppppppp_t)fcn; R_RAX=fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48)); }
 void iFpppllipppppp(x64emu_t *emu, uintptr_t fcn) { iFpppllipppppp_t fn = (iFpppllipppppp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (intptr_t)R_RCX, (intptr_t)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48)); }
+void iFpppppppppppp(x64emu_t *emu, uintptr_t fcn) { iFpppppppppppp_t fn = (iFpppppppppppp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48)); }
 void pFEppiiuuuipii(x64emu_t *emu, uintptr_t fcn) { pFEppiiuuuipii_t fn = (pFEppiiuuuipii_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(void**)(R_RSP + 24), *(int32_t*)(R_RSP + 32), *(int32_t*)(R_RSP + 40)); }
+void pFpCuuWWwwCCup(x64emu_t *emu, uintptr_t fcn) { pFpCuuWWwwCCup_t fn = (pFpCuuWWwwCCup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint16_t)R_R8, (uint16_t)R_R9, *(int16_t*)(R_RSP + 8), *(int16_t*)(R_RSP + 16), *(uint8_t*)(R_RSP + 24), *(uint8_t*)(R_RSP + 32), *(uint32_t*)(R_RSP + 40), *(void**)(R_RSP + 48)); }
+void pFpuuuWWWWWWWW(x64emu_t *emu, uintptr_t fcn) { pFpuuuWWWWWWWW_t fn = (pFpuuuWWWWWWWW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint16_t)R_R8, (uint16_t)R_R9, *(uint16_t*)(R_RSP + 8), *(uint16_t*)(R_RSP + 16), *(uint16_t*)(R_RSP + 24), *(uint16_t*)(R_RSP + 32), *(uint16_t*)(R_RSP + 40), *(uint16_t*)(R_RSP + 48)); }
 void pFppiiuuuiupLp(x64emu_t *emu, uintptr_t fcn) { pFppiiuuuiupLp_t fn = (pFppiiuuuiupLp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(uint32_t*)(R_RSP + 24), *(void**)(R_RSP + 32), *(uintptr_t*)(R_RSP + 40), *(void**)(R_RSP + 48)); }
 void vFuiiiiiiiiiuup(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiiiiiuup_t fn = (vFuiiiiiiiiiuup_t)fcn; fn((uint32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32), *(uint32_t*)(R_RSP + 40), *(uint32_t*)(R_RSP + 48), *(void**)(R_RSP + 56)); }
 void vFuuuuuuuuuuuuu(x64emu_t *emu, uintptr_t fcn) { vFuuuuuuuuuuuuu_t fn = (vFuuuuuuuuuuuuu_t)fcn; fn((uint32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(uint32_t*)(R_RSP + 24), *(uint32_t*)(R_RSP + 32), *(uint32_t*)(R_RSP + 40), *(uint32_t*)(R_RSP + 48), *(uint32_t*)(R_RSP + 56)); }
 void vFuffffffffffff(x64emu_t *emu, uintptr_t fcn) { vFuffffffffffff_t fn = (vFuffffffffffff_t)fcn; fn((uint32_t)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0], emu->xmm[4].f[0], emu->xmm[5].f[0], emu->xmm[6].f[0], emu->xmm[7].f[0], *(float*)(R_RSP + 8), *(float*)(R_RSP + 16), *(float*)(R_RSP + 24), *(float*)(R_RSP + 32)); }
 void iFddddpppddpppp(x64emu_t *emu, uintptr_t fcn) { iFddddpppddpppp_t fn = (iFddddpppddpppp_t)fcn; R_RAX=fn(emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, emu->xmm[4].d[0], emu->xmm[5].d[0], (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void iFpippuuuiipppp(x64emu_t *emu, uintptr_t fcn) { iFpippuuuiipppp_t fn = (iFpippuuuiipppp_t)fcn; R_RAX=fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48), *(void**)(R_RSP + 56)); }
+void pFpCuuwwWWWWuup(x64emu_t *emu, uintptr_t fcn) { pFpCuuwwWWWWuup_t fn = (pFpCuuwwWWWWuup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (int16_t)R_R8, (int16_t)R_R9, *(uint16_t*)(R_RSP + 8), *(uint16_t*)(R_RSP + 16), *(uint16_t*)(R_RSP + 24), *(uint16_t*)(R_RSP + 32), *(uint32_t*)(R_RSP + 40), *(uint32_t*)(R_RSP + 48), *(void**)(R_RSP + 56)); }
 void pFppppppppppppp(x64emu_t *emu, uintptr_t fcn) { pFppppppppppppp_t fn = (pFppppppppppppp_t)fcn; R_RAX=(uintptr_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**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48), *(void**)(R_RSP + 56)); }
 void vFuffiiffiiffiip(x64emu_t *emu, uintptr_t fcn) { vFuffiiffiiffiip_t fn = (vFuffiiffiiffiip_t)fcn; fn((uint32_t)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0], (int32_t)R_RSI, (int32_t)R_RDX, emu->xmm[2].f[0], emu->xmm[3].f[0], (int32_t)R_RCX, (int32_t)R_R8, emu->xmm[4].f[0], emu->xmm[5].f[0], (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); }
 void vFuddiiddiiddiip(x64emu_t *emu, uintptr_t fcn) { vFuddiiddiiddiip_t fn = (vFuddiiddiiddiip_t)fcn; fn((uint32_t)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], (int32_t)R_RSI, (int32_t)R_RDX, emu->xmm[2].d[0], emu->xmm[3].d[0], (int32_t)R_RCX, (int32_t)R_R8, emu->xmm[4].d[0], emu->xmm[5].d[0], (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); }
diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h
index 37a913d9..0cb07aa0 100644
--- a/src/wrapped/generated/wrapper.h
+++ b/src/wrapped/generated/wrapper.h
@@ -127,6 +127,7 @@ void uFuu(x64emu_t *emu, uintptr_t fnc);
 void uFup(x64emu_t *emu, uintptr_t fnc);
 void uFpi(x64emu_t *emu, uintptr_t fnc);
 void uFpu(x64emu_t *emu, uintptr_t fnc);
+void uFpU(x64emu_t *emu, uintptr_t fnc);
 void uFpp(x64emu_t *emu, uintptr_t fnc);
 void UFEp(x64emu_t *emu, uintptr_t fnc);
 void fFif(x64emu_t *emu, uintptr_t fnc);
@@ -149,6 +150,7 @@ void pFup(x64emu_t *emu, uintptr_t fnc);
 void pFlp(x64emu_t *emu, uintptr_t fnc);
 void pFLL(x64emu_t *emu, uintptr_t fnc);
 void pFpi(x64emu_t *emu, uintptr_t fnc);
+void pFpC(x64emu_t *emu, uintptr_t fnc);
 void pFpu(x64emu_t *emu, uintptr_t fnc);
 void pFpL(x64emu_t *emu, uintptr_t fnc);
 void pFpp(x64emu_t *emu, uintptr_t fnc);
@@ -212,8 +214,11 @@ void iFuff(x64emu_t *emu, uintptr_t fnc);
 void iFfff(x64emu_t *emu, uintptr_t fnc);
 void iFpii(x64emu_t *emu, uintptr_t fnc);
 void iFpiu(x64emu_t *emu, uintptr_t fnc);
+void iFpiL(x64emu_t *emu, uintptr_t fnc);
 void iFpip(x64emu_t *emu, uintptr_t fnc);
+void iFpui(x64emu_t *emu, uintptr_t fnc);
 void iFpuu(x64emu_t *emu, uintptr_t fnc);
+void iFpuU(x64emu_t *emu, uintptr_t fnc);
 void iFpuL(x64emu_t *emu, uintptr_t fnc);
 void iFpup(x64emu_t *emu, uintptr_t fnc);
 void iFpfu(x64emu_t *emu, uintptr_t fnc);
@@ -238,6 +243,7 @@ void uFuup(x64emu_t *emu, uintptr_t fnc);
 void uFupu(x64emu_t *emu, uintptr_t fnc);
 void uFupp(x64emu_t *emu, uintptr_t fnc);
 void uFpiu(x64emu_t *emu, uintptr_t fnc);
+void uFpLp(x64emu_t *emu, uintptr_t fnc);
 void uFppi(x64emu_t *emu, uintptr_t fnc);
 void uFppu(x64emu_t *emu, uintptr_t fnc);
 void UFppi(x64emu_t *emu, uintptr_t fnc);
@@ -260,8 +266,11 @@ 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 pFpip(x64emu_t *emu, uintptr_t fnc);
+void pFpCC(x64emu_t *emu, uintptr_t fnc);
 void pFpuu(x64emu_t *emu, uintptr_t fnc);
 void pFpuL(x64emu_t *emu, uintptr_t fnc);
+void pFpup(x64emu_t *emu, uintptr_t fnc);
+void pFpUp(x64emu_t *emu, uintptr_t fnc);
 void pFppi(x64emu_t *emu, uintptr_t fnc);
 void pFppu(x64emu_t *emu, uintptr_t fnc);
 void pFppL(x64emu_t *emu, uintptr_t fnc);
@@ -314,6 +323,7 @@ void vFpdii(x64emu_t *emu, uintptr_t fnc);
 void vFpddd(x64emu_t *emu, uintptr_t fnc);
 void vFppip(x64emu_t *emu, uintptr_t fnc);
 void vFppui(x64emu_t *emu, uintptr_t fnc);
+void vFpppi(x64emu_t *emu, uintptr_t fnc);
 void vFpppu(x64emu_t *emu, uintptr_t fnc);
 void vFpppp(x64emu_t *emu, uintptr_t fnc);
 void cFpiii(x64emu_t *emu, uintptr_t fnc);
@@ -324,6 +334,7 @@ void iFEppi(x64emu_t *emu, uintptr_t fnc);
 void iFEppp(x64emu_t *emu, uintptr_t fnc);
 void iFiiii(x64emu_t *emu, uintptr_t fnc);
 void iFiiiu(x64emu_t *emu, uintptr_t fnc);
+void iFippi(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);
@@ -339,8 +350,10 @@ void iFpCCC(x64emu_t *emu, uintptr_t fnc);
 void iFpWWu(x64emu_t *emu, uintptr_t fnc);
 void iFpuip(x64emu_t *emu, uintptr_t fnc);
 void iFpuui(x64emu_t *emu, uintptr_t fnc);
+void iFpuuu(x64emu_t *emu, uintptr_t fnc);
 void iFpuup(x64emu_t *emu, uintptr_t fnc);
 void iFpuLL(x64emu_t *emu, uintptr_t fnc);
+void iFpuLp(x64emu_t *emu, uintptr_t fnc);
 void iFpupV(x64emu_t *emu, uintptr_t fnc);
 void iFppii(x64emu_t *emu, uintptr_t fnc);
 void iFppiu(x64emu_t *emu, uintptr_t fnc);
@@ -358,11 +371,13 @@ void iFpppL(x64emu_t *emu, uintptr_t fnc);
 void iFpppp(x64emu_t *emu, uintptr_t fnc);
 void IFEpIi(x64emu_t *emu, uintptr_t fnc);
 void uFuuuu(x64emu_t *emu, uintptr_t fnc);
+void uFpipp(x64emu_t *emu, uintptr_t fnc);
 void uFpCCC(x64emu_t *emu, uintptr_t fnc);
 void uFpuip(x64emu_t *emu, uintptr_t fnc);
 void uFpuuu(x64emu_t *emu, uintptr_t fnc);
 void uFpppi(x64emu_t *emu, uintptr_t fnc);
 void uFpppp(x64emu_t *emu, uintptr_t fnc);
+void UFpipp(x64emu_t *emu, uintptr_t fnc);
 void LFpuuu(x64emu_t *emu, uintptr_t fnc);
 void LFpLLp(x64emu_t *emu, uintptr_t fnc);
 void pFEupp(x64emu_t *emu, uintptr_t fnc);
@@ -375,7 +390,13 @@ void pFuiii(x64emu_t *emu, uintptr_t fnc);
 void pFpiii(x64emu_t *emu, uintptr_t fnc);
 void pFpiuu(x64emu_t *emu, uintptr_t fnc);
 void pFpipp(x64emu_t *emu, uintptr_t fnc);
+void pFpCWp(x64emu_t *emu, uintptr_t fnc);
+void pFpCuW(x64emu_t *emu, uintptr_t fnc);
+void pFpCuu(x64emu_t *emu, uintptr_t fnc);
 void pFpuii(x64emu_t *emu, uintptr_t fnc);
+void pFpuWp(x64emu_t *emu, uintptr_t fnc);
+void pFpuuu(x64emu_t *emu, uintptr_t fnc);
+void pFpuup(x64emu_t *emu, uintptr_t fnc);
 void pFplpp(x64emu_t *emu, uintptr_t fnc);
 void pFppiL(x64emu_t *emu, uintptr_t fnc);
 void pFppip(x64emu_t *emu, uintptr_t fnc);
@@ -443,6 +464,7 @@ void vFpiiii(x64emu_t *emu, uintptr_t fnc);
 void vFpipii(x64emu_t *emu, uintptr_t fnc);
 void vFpuipp(x64emu_t *emu, uintptr_t fnc);
 void vFpddii(x64emu_t *emu, uintptr_t fnc);
+void vFppiii(x64emu_t *emu, uintptr_t fnc);
 void vFppWui(x64emu_t *emu, uintptr_t fnc);
 void vFpppii(x64emu_t *emu, uintptr_t fnc);
 void vFppppp(x64emu_t *emu, uintptr_t fnc);
@@ -485,7 +507,12 @@ void pFEpipL(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 pFpCuup(x64emu_t *emu, uintptr_t fnc);
+void pFpCppp(x64emu_t *emu, uintptr_t fnc);
 void pFpuiii(x64emu_t *emu, uintptr_t fnc);
+void pFpuWWW(x64emu_t *emu, uintptr_t fnc);
+void pFpuuWW(x64emu_t *emu, uintptr_t fnc);
+void pFpuuup(x64emu_t *emu, uintptr_t fnc);
 void pFppipi(x64emu_t *emu, uintptr_t fnc);
 void pFppipp(x64emu_t *emu, uintptr_t fnc);
 void pFppuuu(x64emu_t *emu, uintptr_t fnc);
@@ -564,10 +591,15 @@ void iFppppii(x64emu_t *emu, uintptr_t fnc);
 void iFpppppi(x64emu_t *emu, uintptr_t fnc);
 void iFpppppL(x64emu_t *emu, uintptr_t fnc);
 void iFpppppp(x64emu_t *emu, uintptr_t fnc);
+void uFpippup(x64emu_t *emu, uintptr_t fnc);
+void UFpippup(x64emu_t *emu, uintptr_t fnc);
 void pFEpippp(x64emu_t *emu, uintptr_t fnc);
 void pFiCiiCi(x64emu_t *emu, uintptr_t fnc);
 void pFpiiiiu(x64emu_t *emu, uintptr_t fnc);
 void pFpippip(x64emu_t *emu, uintptr_t fnc);
+void pFpCuuCC(x64emu_t *emu, uintptr_t fnc);
+void pFpCuuWW(x64emu_t *emu, uintptr_t fnc);
+void pFpCuuup(x64emu_t *emu, uintptr_t fnc);
 void pFpuuuuu(x64emu_t *emu, uintptr_t fnc);
 void pFppiiii(x64emu_t *emu, uintptr_t fnc);
 void pFpppppp(x64emu_t *emu, uintptr_t fnc);
@@ -608,7 +640,9 @@ void vFuffffff(x64emu_t *emu, uintptr_t fnc);
 void vFudddddd(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 vFpppiiii(x64emu_t *emu, uintptr_t fnc);
+void iFEpppiiu(x64emu_t *emu, uintptr_t fnc);
 void iFEpppppp(x64emu_t *emu, uintptr_t fnc);
 void iFiiiiiip(x64emu_t *emu, uintptr_t fnc);
 void iFpiiuuiu(x64emu_t *emu, uintptr_t fnc);
@@ -627,6 +661,14 @@ void iFppppiii(x64emu_t *emu, uintptr_t fnc);
 void iFppppdpi(x64emu_t *emu, uintptr_t fnc);
 void iFppppppp(x64emu_t *emu, uintptr_t fnc);
 void uFuippppp(x64emu_t *emu, uintptr_t fnc);
+void pFEppppip(x64emu_t *emu, uintptr_t fnc);
+void pFuupupup(x64emu_t *emu, uintptr_t fnc);
+void pFpCuwwWW(x64emu_t *emu, uintptr_t fnc);
+void pFpCuWCCC(x64emu_t *emu, uintptr_t fnc);
+void pFpCuuwwp(x64emu_t *emu, uintptr_t fnc);
+void pFpCuuuuu(x64emu_t *emu, uintptr_t fnc);
+void pFppuuppp(x64emu_t *emu, uintptr_t fnc);
+void pFppppuuu(x64emu_t *emu, uintptr_t fnc);
 void pFpppppuu(x64emu_t *emu, uintptr_t fnc);
 void pFppppppp(x64emu_t *emu, uintptr_t fnc);
 void vFiiiiuuip(x64emu_t *emu, uintptr_t fnc);
@@ -649,6 +691,8 @@ void vFuuuipipp(x64emu_t *emu, uintptr_t fnc);
 void vFuuuuuuuu(x64emu_t *emu, uintptr_t fnc);
 void vFuuuuufff(x64emu_t *emu, uintptr_t fnc);
 void vFffffffff(x64emu_t *emu, uintptr_t fnc);
+void vFpippiipi(x64emu_t *emu, uintptr_t fnc);
+void vFppiiipii(x64emu_t *emu, uintptr_t fnc);
 void vFppppiipi(x64emu_t *emu, uintptr_t fnc);
 void iFEpippppp(x64emu_t *emu, uintptr_t fnc);
 void iFiiiiiiip(x64emu_t *emu, uintptr_t fnc);
@@ -664,6 +708,9 @@ void iFppppiipi(x64emu_t *emu, uintptr_t fnc);
 void iFpppppppp(x64emu_t *emu, uintptr_t fnc);
 void uFuipppppp(x64emu_t *emu, uintptr_t fnc);
 void pFuiiiuuuu(x64emu_t *emu, uintptr_t fnc);
+void pFuupupipp(x64emu_t *emu, uintptr_t fnc);
+void pFpCuwwWWu(x64emu_t *emu, uintptr_t fnc);
+void pFpCuuuCup(x64emu_t *emu, uintptr_t fnc);
 void pFpppuuLLu(x64emu_t *emu, uintptr_t fnc);
 void vFuiiiiiiii(x64emu_t *emu, uintptr_t fnc);
 void vFuiiiiiuip(x64emu_t *emu, uintptr_t fnc);
@@ -680,15 +727,21 @@ void vFuupiuiuuf(x64emu_t *emu, uintptr_t fnc);
 void vFuffffffff(x64emu_t *emu, uintptr_t fnc);
 void vFffuuuufff(x64emu_t *emu, uintptr_t fnc);
 void vFddddddddd(x64emu_t *emu, uintptr_t fnc);
+void vFppiiipiii(x64emu_t *emu, uintptr_t fnc);
 void vFpppppippp(x64emu_t *emu, uintptr_t fnc);
 void iFiiiiiiiip(x64emu_t *emu, uintptr_t fnc);
 void iFiiiipiiip(x64emu_t *emu, uintptr_t fnc);
 void iFdddpppppp(x64emu_t *emu, uintptr_t fnc);
+void iFpipLpiiip(x64emu_t *emu, uintptr_t fnc);
 void iFppiuiippL(x64emu_t *emu, uintptr_t fnc);
 void iFpppiiuuii(x64emu_t *emu, uintptr_t fnc);
+void iFpppiipiiu(x64emu_t *emu, uintptr_t fnc);
 void iFppppppppp(x64emu_t *emu, uintptr_t fnc);
 void pFEppiiuuLi(x64emu_t *emu, uintptr_t fnc);
+void pFEppuippuu(x64emu_t *emu, uintptr_t fnc);
 void pFpiiiiuuuu(x64emu_t *emu, uintptr_t fnc);
+void pFpCuWCCuuu(x64emu_t *emu, uintptr_t fnc);
+void pFpuuwwWWww(x64emu_t *emu, uintptr_t fnc);
 void pFppiiuuuLL(x64emu_t *emu, uintptr_t fnc);
 void vFiiiiiiiiiu(x64emu_t *emu, uintptr_t fnc);
 void vFuiiiiiiiii(x64emu_t *emu, uintptr_t fnc);
@@ -709,6 +762,8 @@ void iFiiiiiiiiip(x64emu_t *emu, uintptr_t fnc);
 void iFpuupiuiipp(x64emu_t *emu, uintptr_t fnc);
 void iFppuuiiiiii(x64emu_t *emu, uintptr_t fnc);
 void iFppppiiuuii(x64emu_t *emu, uintptr_t fnc);
+void pFpCuWCCuuCW(x64emu_t *emu, uintptr_t fnc);
+void pFpuuuwwwwWW(x64emu_t *emu, uintptr_t fnc);
 void pFppuiipuuii(x64emu_t *emu, uintptr_t fnc);
 void pFpppppppppp(x64emu_t *emu, uintptr_t fnc);
 void vFuiiiiiiiiip(x64emu_t *emu, uintptr_t fnc);
@@ -724,20 +779,27 @@ void vFuffffffffff(x64emu_t *emu, uintptr_t fnc);
 void vFpipipiipiii(x64emu_t *emu, uintptr_t fnc);
 void iFEppppiiiiuu(x64emu_t *emu, uintptr_t fnc);
 void iFiiiiiiiiiip(x64emu_t *emu, uintptr_t fnc);
+void iFpipllippppp(x64emu_t *emu, uintptr_t fnc);
 void iFppppiiuuiiL(x64emu_t *emu, uintptr_t fnc);
 void pFEppuiipuuii(x64emu_t *emu, uintptr_t fnc);
 void vFuuiiiiiiiuip(x64emu_t *emu, uintptr_t fnc);
 void vFuuiiiiiiiuup(x64emu_t *emu, uintptr_t fnc);
 void vFuuuuuuuuuuuu(x64emu_t *emu, uintptr_t fnc);
 void vFffffffffffff(x64emu_t *emu, uintptr_t fnc);
+void iFEppppiiiiuui(x64emu_t *emu, uintptr_t fnc);
+void iFpipppppppppp(x64emu_t *emu, uintptr_t fnc);
 void iFpppllipppppp(x64emu_t *emu, uintptr_t fnc);
+void iFpppppppppppp(x64emu_t *emu, uintptr_t fnc);
 void pFEppiiuuuipii(x64emu_t *emu, uintptr_t fnc);
+void pFpCuuWWwwCCup(x64emu_t *emu, uintptr_t fnc);
+void pFpuuuWWWWWWWW(x64emu_t *emu, uintptr_t fnc);
 void pFppiiuuuiupLp(x64emu_t *emu, uintptr_t fnc);
 void vFuiiiiiiiiiuup(x64emu_t *emu, uintptr_t fnc);
 void vFuuuuuuuuuuuuu(x64emu_t *emu, uintptr_t fnc);
 void vFuffffffffffff(x64emu_t *emu, uintptr_t fnc);
 void iFddddpppddpppp(x64emu_t *emu, uintptr_t fnc);
 void iFpippuuuiipppp(x64emu_t *emu, uintptr_t fnc);
+void pFpCuuwwWWWWuup(x64emu_t *emu, uintptr_t fnc);
 void pFppppppppppppp(x64emu_t *emu, uintptr_t fnc);
 void vFuffiiffiiffiip(x64emu_t *emu, uintptr_t fnc);
 void vFuddiiddiiddiip(x64emu_t *emu, uintptr_t fnc);
diff --git a/src/wrapped/wrappedlibxau.c b/src/wrapped/wrappedlibxau.c
new file mode 100755
index 00000000..7537eb09
--- /dev/null
+++ b/src/wrapped/wrappedlibxau.c
@@ -0,0 +1,17 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#define _GNU_SOURCE         /* See feature_test_macros(7) */
+#include <dlfcn.h>
+
+#include "wrappedlibs.h"
+
+#include "wrapper.h"
+#include "bridge.h"
+#include "librarian/library_private.h"
+#include "x64emu.h"
+
+const char* libxauName = "libXau.so.6";
+#define LIBNAME libxau
+
+#include "wrappedlib_init.h"
diff --git a/src/wrapped/wrappedlibxau_private.h b/src/wrapped/wrappedlibxau_private.h
new file mode 100755
index 00000000..fae289d4
--- /dev/null
+++ b/src/wrapped/wrappedlibxau_private.h
@@ -0,0 +1,12 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error Meh...
+#endif
+
+GO(XauDisposeAuth, iFp)
+GO(XauFileName, pFv)
+GO(XauGetAuthByAddr, pFuupupup)
+GO(XauGetBestAuthByAddr, pFuupupipp)
+GO(XauLockAuth, iFpiii)
+GO(XauReadAuth, pFp)
+GO(XauUnlockAuth, iFp)
+GO(XauWriteAuth, iFpp)
diff --git a/src/wrapped/wrappedlibxcb.c b/src/wrapped/wrappedlibxcb.c
new file mode 100755
index 00000000..d3798d45
--- /dev/null
+++ b/src/wrapped/wrappedlibxcb.c
@@ -0,0 +1,23 @@
+#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* libxcbName = "libxcb.so.1";
+#define LIBNAME libxcb
+
+#include "wrappedlib_init.h"
diff --git a/src/wrapped/wrappedlibxcb_private.h b/src/wrapped/wrappedlibxcb_private.h
new file mode 100755
index 00000000..2b1f6551
--- /dev/null
+++ b/src/wrapped/wrappedlibxcb_private.h
@@ -0,0 +1,678 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error meh!
+#endif
+
+GO(xcb_alloc_color, pFpuWWW)
+//GO(xcb_alloc_color_cells, 
+//GO(xcb_alloc_color_cells_masks, 
+//GO(xcb_alloc_color_cells_masks_end, 
+//GO(xcb_alloc_color_cells_masks_length, 
+//GO(xcb_alloc_color_cells_pixels, 
+//GO(xcb_alloc_color_cells_pixels_end, 
+//GO(xcb_alloc_color_cells_pixels_length, 
+//GO(xcb_alloc_color_cells_reply, 
+//GO(xcb_alloc_color_cells_sizeof, 
+//GO(xcb_alloc_color_cells_unchecked, 
+//GO(xcb_alloc_color_planes, 
+//GO(xcb_alloc_color_planes_pixels, 
+//GO(xcb_alloc_color_planes_pixels_end, 
+//GO(xcb_alloc_color_planes_pixels_length, 
+//GO(xcb_alloc_color_planes_reply, 
+//GO(xcb_alloc_color_planes_sizeof, 
+//GO(xcb_alloc_color_planes_unchecked, 
+GO(xcb_alloc_color_reply, pFpup)
+//GO(xcb_alloc_color_unchecked, 
+//GO(xcb_alloc_named_color, 
+//GO(xcb_alloc_named_color_reply, 
+//GO(xcb_alloc_named_color_sizeof, 
+//GO(xcb_alloc_named_color_unchecked, 
+//GO(xcb_allow_events, 
+//GO(xcb_allow_events_checked, 
+//GO(xcb_arc_end, 
+//GO(xcb_arc_next, 
+//GO(xcb_atom_end, 
+//GO(xcb_atom_next, 
+GO(xcb_bell, pFpC)
+//GO(xcb_bell_checked, 
+//GO(xcb_big_requests_enable, 
+//GO(xcb_big_requests_enable_reply, 
+//GO(xcb_big_requests_enable_unchecked, 
+DATA(xcb_big_requests_id, sizeof(void*))
+//GO(xcb_bool32_end, 
+//GO(xcb_bool32_next, 
+//GO(xcb_button_end, 
+//GO(xcb_button_next, 
+//GO(xcb_change_active_pointer_grab, 
+//GO(xcb_change_active_pointer_grab_checked, 
+GO(xcb_change_gc, pFpuup)
+//GO(xcb_change_gc_aux, 
+//GO(xcb_change_gc_aux_checked, 
+GO(xcb_change_gc_checked, pFpuup)
+//GO(xcb_change_gc_sizeof, 
+//GO(xcb_change_gc_value_list, 
+//GO(xcb_change_gc_value_list_serialize, 
+//GO(xcb_change_gc_value_list_sizeof, 
+//GO(xcb_change_gc_value_list_unpack, 
+//GO(xcb_change_hosts, 
+//GO(xcb_change_hosts_address, 
+//GO(xcb_change_hosts_address_end, 
+//GO(xcb_change_hosts_address_length, 
+//GO(xcb_change_hosts_checked, 
+//GO(xcb_change_hosts_sizeof, 
+GO(xcb_change_keyboard_control, pFpup)
+//GO(xcb_change_keyboard_control_aux, 
+//GO(xcb_change_keyboard_control_aux_checked, 
+//GO(xcb_change_keyboard_control_checked, 
+//GO(xcb_change_keyboard_control_sizeof, 
+//GO(xcb_change_keyboard_control_value_list, 
+//GO(xcb_change_keyboard_control_value_list_serialize, 
+//GO(xcb_change_keyboard_control_value_list_sizeof, 
+//GO(xcb_change_keyboard_control_value_list_unpack, 
+//GO(xcb_change_keyboard_mapping, 
+//GO(xcb_change_keyboard_mapping_checked, 
+//GO(xcb_change_keyboard_mapping_keysyms, 
+//GO(xcb_change_keyboard_mapping_keysyms_end, 
+//GO(xcb_change_keyboard_mapping_keysyms_length, 
+//GO(xcb_change_keyboard_mapping_sizeof, 
+//GO(xcb_change_pointer_control, 
+//GO(xcb_change_pointer_control_checked, 
+GO(xcb_change_property, pFpCuuuCup)
+GO(xcb_change_property_checked, pFpCuuuCup)
+//GO(xcb_change_property_data, 
+//GO(xcb_change_property_data_end, 
+//GO(xcb_change_property_data_length, 
+//GO(xcb_change_property_sizeof, 
+//GO(xcb_change_save_set, 
+//GO(xcb_change_save_set_checked, 
+GO(xcb_change_window_attributes, pFpuup)
+//GO(xcb_change_window_attributes_aux, 
+//GO(xcb_change_window_attributes_aux_checked, 
+GO(xcb_change_window_attributes_checked, pFpuup)
+//GO(xcb_change_window_attributes_sizeof, 
+//GO(xcb_change_window_attributes_value_list, 
+//GO(xcb_change_window_attributes_value_list_serialize, 
+//GO(xcb_change_window_attributes_value_list_sizeof, 
+//GO(xcb_change_window_attributes_value_list_unpack, 
+//GO(xcb_char2b_end, 
+//GO(xcb_char2b_next, 
+//GO(xcb_charinfo_end, 
+//GO(xcb_charinfo_next, 
+//GO(xcb_circulate_window, 
+//GO(xcb_circulate_window_checked, 
+GO(xcb_clear_area, pFpCuwwWW)
+//GO(xcb_clear_area_checked, 
+//GO(xcb_client_message_data_end, 
+//GO(xcb_client_message_data_next, 
+GO(xcb_close_font, pFpu)
+GO(xcb_close_font_checked, pFpu)
+//GO(xcb_coloritem_end, 
+//GO(xcb_coloritem_next, 
+//GO(xcb_colormap_end, 
+//GO(xcb_colormap_next, 
+GO(xcb_configure_window, pFpuWp)
+//GO(xcb_configure_window_aux, 
+//GO(xcb_configure_window_aux_checked, 
+//GO(xcb_configure_window_checked, 
+//GO(xcb_configure_window_sizeof, 
+//GO(xcb_configure_window_value_list, 
+//GO(xcb_configure_window_value_list_serialize, 
+//GO(xcb_configure_window_value_list_sizeof, 
+//GO(xcb_configure_window_value_list_unpack, 
+GO(xcb_connect, pFpp)
+GO(xcb_connection_has_error, iFp)
+//GO(xcb_connect_to_display_with_auth_info, 
+//GO(xcb_connect_to_fd, 
+GO(xcb_convert_selection, pFpuuuuu)
+//GO(xcb_convert_selection_checked, 
+GO(xcb_copy_area, pFpuuuwwwwWW)
+//GO(xcb_copy_area_checked, 
+//GO(xcb_copy_colormap_and_free, 
+//GO(xcb_copy_colormap_and_free_checked, 
+//GO(xcb_copy_gc, 
+//GO(xcb_copy_gc_checked, 
+//GO(xcb_copy_plane, 
+//GO(xcb_copy_plane_checked, 
+GO(xcb_create_colormap, pFpCppp)
+//GO(xcb_create_colormap_checked, 
+GO(xcb_create_cursor, pFpuuuWWWWWWWW)
+//GO(xcb_create_cursor_checked, 
+GO(xcb_create_gc, pFpuuup)
+//GO(xcb_create_gc_aux, 
+//GO(xcb_create_gc_aux_checked, 
+GO(xcb_create_gc_checked, pFpuuup)
+//GO(xcb_create_gc_sizeof, 
+//GO(xcb_create_gc_value_list, 
+//GO(xcb_create_gc_value_list_serialize, 
+//GO(xcb_create_gc_value_list_sizeof, 
+//GO(xcb_create_gc_value_list_unpack, 
+GO(xcb_create_glyph_cursor, pFpuuuWWWWWWWW)
+//GO(xcb_create_glyph_cursor_checked, 
+GO(xcb_create_pixmap, pFpCuuWW)
+//GO(xcb_create_pixmap_checked, 
+GO(xcb_create_window, pFpCuuwwWWWWuup)
+//GO(xcb_create_window_aux, 
+//GO(xcb_create_window_aux_checked, 
+GO(xcb_create_window_checked, pFpCuuwwWWWWuup)
+//GO(xcb_create_window_sizeof, 
+//GO(xcb_create_window_value_list, 
+//GO(xcb_create_window_value_list_serialize, 
+//GO(xcb_create_window_value_list_sizeof, 
+//GO(xcb_create_window_value_list_unpack, 
+//GO(xcb_cursor_end, 
+//GO(xcb_cursor_next, 
+GO(xcb_delete_property, pFppp)
+//GO(xcb_delete_property_checked, 
+//GO(xcb_depth_end, 
+GO(xcb_depth_next, vFp)
+GO(xcb_depth_sizeof, iFp)
+GO(xcb_depth_visuals, pFp)
+GO(xcb_depth_visuals_iterator, HFp)  //xcb_visualtype_iterator_t is a structure
+//GO(xcb_depth_visuals_length, 
+//GO(xcb_destroy_subwindows, 
+//GO(xcb_destroy_subwindows_checked, 
+GO(xcb_destroy_window, pFpu)
+//GO(xcb_destroy_window_checked, 
+//GO(xcb_discard_reply, 
+//GO(xcb_discard_reply64, 
+GO(xcb_disconnect, vFp)
+//GO(xcb_drawable_end, 
+//GO(xcb_drawable_next, 
+//GO(xcb_fill_poly, 
+//GO(xcb_fill_poly_checked, 
+//GO(xcb_fill_poly_points, 
+//GO(xcb_fill_poly_points_iterator, 
+//GO(xcb_fill_poly_points_length, 
+//GO(xcb_fill_poly_sizeof, 
+GO(xcb_flush, iFp)
+//GO(xcb_fontable_end, 
+//GO(xcb_fontable_next, 
+//GO(xcb_font_end, 
+//GO(xcb_font_next, 
+//GO(xcb_fontprop_end, 
+//GO(xcb_fontprop_next, 
+//GO(xcb_force_screen_saver, 
+//GO(xcb_force_screen_saver_checked, 
+//GO(xcb_format_end, 
+GO(xcb_format_next, vFp)
+GO(xcb_free_colormap, pFpu)
+GO(xcb_free_colormap_checked, pFpu)
+//GO(xcb_free_colors, 
+//GO(xcb_free_colors_checked, 
+//GO(xcb_free_colors_pixels, 
+//GO(xcb_free_colors_pixels_end, 
+//GO(xcb_free_colors_pixels_length, 
+//GO(xcb_free_colors_sizeof, 
+GO(xcb_free_cursor, pFpp)
+//GO(xcb_free_cursor_checked, 
+GO(xcb_free_gc, pFpu)
+//GO(xcb_free_gc_checked, 
+GO(xcb_free_pixmap, pFpu)
+//GO(xcb_free_pixmap_checked, 
+//GO(xcb_gcontext_end, 
+//GO(xcb_gcontext_next, 
+GO(xcb_generate_id, uFp)
+GO(xcb_get_atom_name, pFpu)
+GO(xcb_get_atom_name_name, pFp)
+//GO(xcb_get_atom_name_name_end, 
+GO(xcb_get_atom_name_name_length, iFp)
+GO(xcb_get_atom_name_reply, pFpup)
+//GO(xcb_get_atom_name_sizeof, 
+//GO(xcb_get_atom_name_unchecked, 
+GO(xcb_get_extension_data, pFpp)
+GO(xcb_get_file_descriptor, iFp)
+//GO(xcb_get_font_path, 
+//GO(xcb_get_font_path_path_iterator, 
+//GO(xcb_get_font_path_path_length, 
+//GO(xcb_get_font_path_reply, 
+//GO(xcb_get_font_path_sizeof, 
+//GO(xcb_get_font_path_unchecked, 
+GO(xcb_get_geometry, pFpu)
+GO(xcb_get_geometry_reply, pFpup)
+GO(xcb_get_geometry_unchecked, pFpu)
+GO(xcb_get_image, pFpCuwwWWu)
+GO(xcb_get_image_data, pFp)
+//GO(xcb_get_image_data_end, 
+GO(xcb_get_image_data_length, iFp)
+GO(xcb_get_image_reply, pFpup)
+//GO(xcb_get_image_sizeof, 
+GO(xcb_get_image_unchecked, pFpCuwwWWu)
+GO(xcb_get_input_focus, pFp)
+GO(xcb_get_input_focus_reply, pFpup)
+//GO(xcb_get_input_focus_unchecked, 
+//GO(xcb_get_keyboard_control, 
+//GO(xcb_get_keyboard_control_reply, 
+//GO(xcb_get_keyboard_control_unchecked, 
+GO(xcb_get_keyboard_mapping, pFpCC)
+GO(xcb_get_keyboard_mapping_keysyms, pFp)
+//GO(xcb_get_keyboard_mapping_keysyms_end, 
+GO(xcb_get_keyboard_mapping_keysyms_length, iFp)
+GO(xcb_get_keyboard_mapping_reply, pFpup)
+//GO(xcb_get_keyboard_mapping_sizeof, 
+//GO(xcb_get_keyboard_mapping_unchecked, 
+GO(xcb_get_maximum_request_length, uFp)
+GO(xcb_get_modifier_mapping, pFp)
+GO(xcb_get_modifier_mapping_keycodes, pFp)
+//GO(xcb_get_modifier_mapping_keycodes_end, 
+GO(xcb_get_modifier_mapping_keycodes_length, iFp)
+GO(xcb_get_modifier_mapping_reply, pFpup)
+//GO(xcb_get_modifier_mapping_sizeof, pFp)
+//GO(xcb_get_modifier_mapping_unchecked, 
+//GO(xcb_get_motion_events, 
+//GO(xcb_get_motion_events_events, 
+//GO(xcb_get_motion_events_events_iterator, 
+//GO(xcb_get_motion_events_events_length, 
+//GO(xcb_get_motion_events_reply, 
+//GO(xcb_get_motion_events_sizeof, 
+//GO(xcb_get_motion_events_unchecked, 
+//GO(xcb_get_pointer_control, 
+//GO(xcb_get_pointer_control_reply, 
+//GO(xcb_get_pointer_control_unchecked, 
+//GO(xcb_get_pointer_mapping, 
+//GO(xcb_get_pointer_mapping_map, 
+//GO(xcb_get_pointer_mapping_map_end, 
+//GO(xcb_get_pointer_mapping_map_length, 
+//GO(xcb_get_pointer_mapping_reply, 
+//GO(xcb_get_pointer_mapping_sizeof, 
+//GO(xcb_get_pointer_mapping_unchecked, 
+GO(xcb_get_property, pFpCuuuuu)
+GO(xcb_get_property_reply, pFpup)
+//GO(xcb_get_property_sizeof, 
+GO(xcb_get_property_unchecked, pFpCuuuuu)
+GO(xcb_get_property_value, pFp)
+//GO(xcb_get_property_value_end, 
+GO(xcb_get_property_value_length, iFp)
+GO(xcb_get_reply_fds, pFppu)
+//GO(xcb_get_screen_saver, 
+//GO(xcb_get_screen_saver_reply, 
+//GO(xcb_get_screen_saver_unchecked, 
+GO(xcb_get_selection_owner, pFpu)
+GO(xcb_get_selection_owner_reply, pFpup)
+GO(xcb_get_selection_owner_unchecked, pFpu)
+GO(xcb_get_setup, pFp)
+GO(xcb_get_window_attributes, pFpu)
+GO(xcb_get_window_attributes_reply, pFpup)
+GO(xcb_get_window_attributes_unchecked, pFpu)
+GO(xcb_grab_button, pFpCuWCCuuCW)
+GO(xcb_grab_button_checked, pFpCuWCCuuCW)
+GO(xcb_grab_key, pFpCuWCCC)
+GO(xcb_grab_keyboard, pFpCuuCC)
+GO(xcb_grab_keyboard_reply, pFpup)
+//GO(xcb_grab_keyboard_unchecked, 
+GO(xcb_grab_key_checked, pFpCuWCCC)
+GO(xcb_grab_pointer, pFpCuWCCuuu)
+GO(xcb_grab_pointer_reply, pFpup)
+//GO(xcb_grab_pointer_unchecked, 
+GO(xcb_grab_server, pFp)
+//GO(xcb_grab_server_checked, 
+//GO(xcb_host_address, 
+//GO(xcb_host_address_end, 
+//GO(xcb_host_address_length, 
+//GO(xcb_host_end, 
+//GO(xcb_host_next, 
+//GO(xcb_host_sizeof, 
+//GO(xcb_image_text_16, 
+//GO(xcb_image_text_16_checked, 
+//GO(xcb_image_text_16_sizeof, 
+//GO(xcb_image_text_16_string, 
+//GO(xcb_image_text_16_string_iterator, 
+//GO(xcb_image_text_16_string_length, 
+GO(xcb_image_text_8, pFpCuuwwp)
+GO(xcb_image_text_8_checked, pFpCuuwwp)
+//GO(xcb_image_text_8_sizeof, 
+//GO(xcb_image_text_8_string, 
+//GO(xcb_image_text_8_string_end, 
+//GO(xcb_image_text_8_string_length, 
+//GO(xcb_install_colormap, 
+//GO(xcb_install_colormap_checked, 
+GO(xcb_intern_atom, pFpCWp)
+GO(xcb_intern_atom_reply, pFpup)
+//GO(xcb_intern_atom_sizeof, 
+GO(xcb_intern_atom_unchecked, pFpCWp)
+//GO(xcb_keycode32_end, 
+//GO(xcb_keycode32_next, 
+//GO(xcb_keycode_end, 
+//GO(xcb_keycode_next, 
+//GO(xcb_keysym_end, 
+//GO(xcb_keysym_next, 
+//GO(xcb_kill_client, 
+//GO(xcb_kill_client_checked, 
+//GO(xcb_list_extensions, 
+//GO(xcb_list_extensions_names_iterator, 
+//GO(xcb_list_extensions_names_length, 
+//GO(xcb_list_extensions_reply, 
+//GO(xcb_list_extensions_sizeof, 
+//GO(xcb_list_extensions_unchecked, 
+//GO(xcb_list_fonts, 
+//GO(xcb_list_fonts_names_iterator, 
+//GO(xcb_list_fonts_names_length, 
+//GO(xcb_list_fonts_reply, 
+//GO(xcb_list_fonts_sizeof, 
+//GO(xcb_list_fonts_unchecked, 
+//GO(xcb_list_fonts_with_info, 
+//GO(xcb_list_fonts_with_info_name, 
+//GO(xcb_list_fonts_with_info_name_end, 
+//GO(xcb_list_fonts_with_info_name_length, 
+//GO(xcb_list_fonts_with_info_properties, 
+//GO(xcb_list_fonts_with_info_properties_iterator, 
+//GO(xcb_list_fonts_with_info_properties_length, 
+//GO(xcb_list_fonts_with_info_reply, 
+//GO(xcb_list_fonts_with_info_sizeof, 
+//GO(xcb_list_fonts_with_info_unchecked, 
+//GO(xcb_list_hosts, 
+//GO(xcb_list_hosts_hosts_iterator, 
+//GO(xcb_list_hosts_hosts_length, 
+//GO(xcb_list_hosts_reply, 
+//GO(xcb_list_hosts_sizeof, 
+//GO(xcb_list_hosts_unchecked, 
+//GO(xcb_list_installed_colormaps, 
+//GO(xcb_list_installed_colormaps_cmaps, 
+//GO(xcb_list_installed_colormaps_cmaps_end, 
+//GO(xcb_list_installed_colormaps_cmaps_length, 
+//GO(xcb_list_installed_colormaps_reply, 
+//GO(xcb_list_installed_colormaps_sizeof, 
+//GO(xcb_list_installed_colormaps_unchecked, 
+//GO(xcb_list_properties, 
+//GO(xcb_list_properties_atoms, 
+//GO(xcb_list_properties_atoms_end, 
+//GO(xcb_list_properties_atoms_length, 
+//GO(xcb_list_properties_reply, 
+//GO(xcb_list_properties_sizeof, 
+//GO(xcb_list_properties_unchecked, 
+//GO(xcb_lookup_color, 
+//GO(xcb_lookup_color_reply, 
+//GO(xcb_lookup_color_sizeof, 
+//GO(xcb_lookup_color_unchecked, 
+GO(xcb_map_subwindows, pFpu)
+//GO(xcb_map_subwindows_checked, 
+GO(xcb_map_window, pFpu)
+GO(xcb_map_window_checked, pFpu)
+//GO(xcb_no_operation, 
+//GO(xcb_no_operation_checked, 
+GO(xcb_open_font, pFpuWp)
+GO(xcb_open_font_checked, pFpuWp)
+//GO(xcb_open_font_name, 
+//GO(xcb_open_font_name_end, 
+//GO(xcb_open_font_name_length, 
+//GO(xcb_open_font_sizeof, 
+//GO(xcb_parse_display, 
+//GO(xcb_pixmap_end, 
+//GO(xcb_pixmap_next, 
+//GO(xcb_point_end, 
+//GO(xcb_point_next, 
+GO(xcb_poll_for_event, pFp)
+GO(xcb_poll_for_queued_event, pFp)
+//GO(xcb_poll_for_reply, 
+//GO(xcb_poll_for_reply64, 
+GO(xcb_poll_for_special_event, pFpp)
+GO(xcb_poly_arc, pFpuuup)
+//GO(xcb_poly_arc_arcs, 
+//GO(xcb_poly_arc_arcs_iterator, 
+//GO(xcb_poly_arc_arcs_length, 
+//GO(xcb_poly_arc_checked, 
+//GO(xcb_poly_arc_sizeof, 
+//GO(xcb_poly_fill_arc, 
+//GO(xcb_poly_fill_arc_arcs, 
+//GO(xcb_poly_fill_arc_arcs_iterator, 
+//GO(xcb_poly_fill_arc_arcs_length, 
+//GO(xcb_poly_fill_arc_checked, 
+//GO(xcb_poly_fill_arc_sizeof, 
+GO(xcb_poly_fill_rectangle, pFpuuup)
+//GO(xcb_poly_fill_rectangle_checked, 
+//GO(xcb_poly_fill_rectangle_rectangles, 
+//GO(xcb_poly_fill_rectangle_rectangles_iterator, 
+//GO(xcb_poly_fill_rectangle_rectangles_length, 
+//GO(xcb_poly_fill_rectangle_sizeof, 
+GO(xcb_poly_line, pFpCuuup)
+GO(xcb_poly_line_checked, pFpCuuup)
+//GO(xcb_poly_line_points, 
+//GO(xcb_poly_line_points_iterator, 
+//GO(xcb_poly_line_points_length, 
+//GO(xcb_poly_line_sizeof, 
+GO(xcb_poly_point, pFpCuuup)
+//GO(xcb_poly_point_checked, 
+//GO(xcb_poly_point_points, 
+//GO(xcb_poly_point_points_iterator, 
+//GO(xcb_poly_point_points_length, 
+//GO(xcb_poly_point_sizeof, 
+GO(xcb_poly_rectangle, pFpuuup)
+//GO(xcb_poly_rectangle_checked, 
+//GO(xcb_poly_rectangle_rectangles, 
+//GO(xcb_poly_rectangle_rectangles_iterator, 
+//GO(xcb_poly_rectangle_rectangles_length, 
+//GO(xcb_poly_rectangle_sizeof, 
+GO(xcb_poly_segment, pFpuuup)
+//GO(xcb_poly_segment_checked, 
+//GO(xcb_poly_segment_segments, 
+//GO(xcb_poly_segment_segments_iterator, 
+//GO(xcb_poly_segment_segments_length, 
+//GO(xcb_poly_segment_sizeof, 
+//GO(xcb_poly_text_16, 
+//GO(xcb_poly_text_16_checked, 
+//GO(xcb_poly_text_16_items, 
+//GO(xcb_poly_text_16_items_end, 
+//GO(xcb_poly_text_16_items_length, 
+//GO(xcb_poly_text_16_sizeof, 
+//GO(xcb_poly_text_8, 
+//GO(xcb_poly_text_8_checked, 
+//GO(xcb_poly_text_8_items, 
+//GO(xcb_poly_text_8_items_end, 
+//GO(xcb_poly_text_8_items_length, 
+//GO(xcb_poly_text_8_sizeof, 
+GO(xcb_popcount, iFu)
+GO(xcb_prefetch_extension_data, vFpp)
+//GO(xcb_prefetch_maximum_request_length, 
+GO(xcb_put_image, pFpCuuWWwwCCup)
+//GO(xcb_put_image_checked, 
+//GO(xcb_put_image_data, 
+//GO(xcb_put_image_data_end, 
+//GO(xcb_put_image_data_length, 
+//GO(xcb_put_image_sizeof, 
+//GO(xcb_query_best_size, 
+//GO(xcb_query_best_size_reply, 
+//GO(xcb_query_best_size_unchecked, 
+//GO(xcb_query_colors, 
+//GO(xcb_query_colors_colors, 
+//GO(xcb_query_colors_colors_iterator, 
+//GO(xcb_query_colors_colors_length, 
+//GO(xcb_query_colors_reply, 
+//GO(xcb_query_colors_sizeof, 
+//GO(xcb_query_colors_unchecked, 
+//GO(xcb_query_extension, 
+//GO(xcb_query_extension_reply, 
+//GO(xcb_query_extension_sizeof, 
+//GO(xcb_query_extension_unchecked, 
+//GO(xcb_query_font, 
+//GO(xcb_query_font_char_infos, 
+//GO(xcb_query_font_char_infos_iterator, 
+//GO(xcb_query_font_char_infos_length, 
+//GO(xcb_query_font_properties, 
+//GO(xcb_query_font_properties_iterator, 
+//GO(xcb_query_font_properties_length, 
+//GO(xcb_query_font_reply, 
+//GO(xcb_query_font_sizeof, 
+//GO(xcb_query_font_unchecked, 
+//GO(xcb_query_keymap, 
+//GO(xcb_query_keymap_reply, 
+//GO(xcb_query_keymap_unchecked, 
+GO(xcb_query_pointer, pFpu)
+GO(xcb_query_pointer_reply, pFpup)
+//GO(xcb_query_pointer_unchecked, 
+GO(xcb_query_text_extents, pFpuup)
+GO(xcb_query_text_extents_reply, pFpup)
+//GO(xcb_query_text_extents_sizeof, 
+//GO(xcb_query_text_extents_unchecked, 
+GO(xcb_query_tree, pFpu)
+GO(xcb_query_tree_children, pFp)
+//GO(xcb_query_tree_children_end, 
+GO(xcb_query_tree_children_length, iFp)
+GO(xcb_query_tree_reply, pFpup)
+//GO(xcb_query_tree_sizeof, 
+GO(xcb_query_tree_unchecked, pFpu)
+//GO(xcb_recolor_cursor, 
+//GO(xcb_recolor_cursor_checked, 
+//GO(xcb_rectangle_end, 
+//GO(xcb_rectangle_next, 
+GO(xcb_register_for_special_xge, pFppup)
+GO(xcb_reparent_window, pFpuuWW)
+//GO(xcb_reparent_window_checked, 
+GO(xcb_request_check, pFpu)
+//GO(xcb_rgb_end, 
+//GO(xcb_rgb_next, 
+//GO(xcb_rotate_properties, 
+//GO(xcb_rotate_properties_atoms, 
+//GO(xcb_rotate_properties_atoms_end, 
+//GO(xcb_rotate_properties_atoms_length, 
+//GO(xcb_rotate_properties_checked, 
+//GO(xcb_rotate_properties_sizeof, 
+GO(xcb_screen_allowed_depths_iterator, HFp)  //xcb_depth_iterator_t is a structure
+//GO(xcb_screen_allowed_depths_length, 
+//GO(xcb_screen_end, 
+GO(xcb_screen_next, vFp)
+//GO(xcb_screen_sizeof, 
+//GO(xcb_segment_end, 
+//GO(xcb_segment_next, 
+GO(xcb_send_event, pFpCuup)
+//GO(xcb_send_event_checked, 
+//GO(xcb_send_fd, 
+GO(xcb_send_request, uFpipp)
+GO(xcb_send_request64, UFpipp)
+GO(xcb_send_request_with_fds, uFpippup)
+GO(xcb_send_request_with_fds64, UFpippup)
+//GO(xcb_set_access_control, 
+//GO(xcb_set_access_control_checked, 
+//GO(xcb_set_clip_rectangles, 
+//GO(xcb_set_clip_rectangles_checked, 
+//GO(xcb_set_clip_rectangles_rectangles, 
+//GO(xcb_set_clip_rectangles_rectangles_iterator, 
+//GO(xcb_set_clip_rectangles_rectangles_length, 
+//GO(xcb_set_clip_rectangles_sizeof, 
+//GO(xcb_set_close_down_mode, 
+//GO(xcb_set_close_down_mode_checked, 
+//GO(xcb_set_dashes, 
+//GO(xcb_set_dashes_checked, 
+//GO(xcb_set_dashes_dashes, 
+//GO(xcb_set_dashes_dashes_end, 
+//GO(xcb_set_dashes_dashes_length, 
+//GO(xcb_set_dashes_sizeof, 
+//GO(xcb_set_font_path, 
+//GO(xcb_set_font_path_checked, 
+//GO(xcb_set_font_path_font_iterator, 
+//GO(xcb_set_font_path_font_length, 
+//GO(xcb_set_font_path_sizeof, 
+GO(xcb_set_input_focus, pFpCuu) // xcb_void_cookie_t is a struct with only 1 uint inside
+//GO(xcb_set_input_focus_checked, 
+//GO(xcb_set_modifier_mapping, 
+//GO(xcb_set_modifier_mapping_reply, 
+//GO(xcb_set_modifier_mapping_sizeof, 
+//GO(xcb_set_modifier_mapping_unchecked, 
+//GO(xcb_set_pointer_mapping, 
+//GO(xcb_set_pointer_mapping_reply, 
+//GO(xcb_set_pointer_mapping_sizeof, 
+//GO(xcb_set_pointer_mapping_unchecked, 
+//GO(xcb_set_screen_saver, 
+//GO(xcb_set_screen_saver_checked, 
+GO(xcb_set_selection_owner, pFpuuu)
+//GO(xcb_set_selection_owner_checked, 
+//GO(xcb_setup_authenticate_end, 
+//GO(xcb_setup_authenticate_next, 
+//GO(xcb_setup_authenticate_reason, 
+//GO(xcb_setup_authenticate_reason_end, 
+//GO(xcb_setup_authenticate_reason_length, 
+//GO(xcb_setup_authenticate_sizeof, 
+//GO(xcb_setup_end, 
+//GO(xcb_setup_failed_end, 
+//GO(xcb_setup_failed_next, 
+//GO(xcb_setup_failed_reason, 
+//GO(xcb_setup_failed_reason_end, 
+//GO(xcb_setup_failed_reason_length, 
+//GO(xcb_setup_failed_sizeof, 
+//GO(xcb_setup_next, 
+GO(xcb_setup_pixmap_formats, pFp)
+GO(xcb_setup_pixmap_formats_iterator, HFp)
+GO(xcb_setup_pixmap_formats_length, iFp)
+//GO(xcb_setup_request_authorization_protocol_data, 
+//GO(xcb_setup_request_authorization_protocol_data_end, 
+//GO(xcb_setup_request_authorization_protocol_data_length, 
+//GO(xcb_setup_request_authorization_protocol_name, 
+//GO(xcb_setup_request_authorization_protocol_name_end, 
+//GO(xcb_setup_request_authorization_protocol_name_length, 
+//GO(xcb_setup_request_end, 
+//GO(xcb_setup_request_next, 
+//GO(xcb_setup_request_sizeof, 
+GO(xcb_setup_roots_iterator, HFp)
+GO(xcb_setup_roots_length, iFp)
+//GO(xcb_setup_sizeof, 
+//GO(xcb_setup_vendor, 
+//GO(xcb_setup_vendor_end, 
+//GO(xcb_setup_vendor_length, 
+//GO(xcb_store_colors, 
+//GO(xcb_store_colors_checked, 
+//GO(xcb_store_colors_items, 
+//GO(xcb_store_colors_items_iterator, 
+//GO(xcb_store_colors_items_length, 
+//GO(xcb_store_colors_sizeof, 
+//GO(xcb_store_named_color, 
+//GO(xcb_store_named_color_checked, 
+//GO(xcb_store_named_color_name, 
+//GO(xcb_store_named_color_name_end, 
+//GO(xcb_store_named_color_name_length, 
+//GO(xcb_store_named_color_sizeof, 
+//GO(xcb_str_end, 
+//GO(xcb_str_name, 
+//GO(xcb_str_name_end, 
+//GO(xcb_str_name_length, 
+//GO(xcb_str_next, 
+//GO(xcb_str_sizeof, 
+//GO(xcb_sumof, 
+//GO(xcb_take_socket, 
+//GO(xcb_timecoord_end, 
+//GO(xcb_timecoord_next, 
+//GO(xcb_timestamp_end, 
+//GO(xcb_timestamp_next, 
+GO(xcb_translate_coordinates, pFpuuWW)
+GO(xcb_translate_coordinates_reply, pFpup)
+GO(xcb_translate_coordinates_unchecked, pFpuuWW)
+GO(xcb_ungrab_button, pFpCuW)
+GO(xcb_ungrab_button_checked, pFpCuW)
+GO(xcb_ungrab_key, pFpCuW)
+GO(xcb_ungrab_keyboard, pFpu)
+GO(xcb_ungrab_keyboard_checked, pFpu)
+GO(xcb_ungrab_key_checked, pFpCuW)
+GO(xcb_ungrab_pointer, pFpu)
+//GO(xcb_ungrab_pointer_checked, 
+GO(xcb_ungrab_server, pFp)
+//GO(xcb_ungrab_server_checked, 
+//GO(xcb_uninstall_colormap, 
+//GO(xcb_uninstall_colormap_checked, 
+//GO(xcb_unmap_subwindows, 
+//GO(xcb_unmap_subwindows_checked, 
+GO(xcb_unmap_window, pFpu)
+//GO(xcb_unmap_window_checked, 
+GO(xcb_unregister_for_special_event, vFpp)
+//GO(xcb_visualid_end, 
+//GO(xcb_visualid_next, 
+//GO(xcb_visualtype_end, 
+GO(xcb_visualtype_next, vFp)
+GO(xcb_wait_for_event, pFp)
+GO(xcb_wait_for_reply, pFpup)
+GO(xcb_wait_for_reply64, pFpUp)
+//GO(xcb_wait_for_special_event, 
+GO(xcb_warp_pointer, pFpuuwwWWww)
+//GO(xcb_warp_pointer_checked, 
+//GO(xcb_window_end, 
+//GO(xcb_window_next, 
+//GO(xcb_writev, 
+//GO(xcb_xc_misc_get_version, 
+//GO(xcb_xc_misc_get_version_reply, 
+//GO(xcb_xc_misc_get_version_unchecked, 
+//GO(xcb_xc_misc_get_xid_list, 
+//GO(xcb_xc_misc_get_xid_list_ids, 
+//GO(xcb_xc_misc_get_xid_list_ids_end, 
+//GO(xcb_xc_misc_get_xid_list_ids_length, 
+//GO(xcb_xc_misc_get_xid_list_reply, 
+//GO(xcb_xc_misc_get_xid_list_sizeof, 
+//GO(xcb_xc_misc_get_xid_list_unchecked, 
+//GO(xcb_xc_misc_get_xid_range, 
+//GO(xcb_xc_misc_get_xid_range_reply, 
+//GO(xcb_xc_misc_get_xid_range_unchecked, 
+DATA(xcb_xc_misc_id, 4)
diff --git a/src/wrapped/wrappedlibxdmcp.c b/src/wrapped/wrappedlibxdmcp.c
new file mode 100755
index 00000000..c320caa3
--- /dev/null
+++ b/src/wrapped/wrappedlibxdmcp.c
@@ -0,0 +1,17 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#define _GNU_SOURCE         /* See feature_test_macros(7) */
+#include <dlfcn.h>
+
+#include "wrappedlibs.h"
+
+#include "wrapper.h"
+#include "bridge.h"
+#include "librarian/library_private.h"
+#include "x64emu.h"
+
+const char* libxdmcpName = "libXdmcp.so.6";
+#define LIBNAME libxdmcp
+
+#include "wrappedlib_init.h"
diff --git a/src/wrapped/wrappedlibxdmcp_private.h b/src/wrapped/wrappedlibxdmcp_private.h
new file mode 100755
index 00000000..d5831085
--- /dev/null
+++ b/src/wrapped/wrappedlibxdmcp_private.h
@@ -0,0 +1,47 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error Meh...
+#endif
+
+GO(XdmcpWriteARRAY16, iFpp)
+GO(XdmcpWriteARRAY32, iFpp)
+GO(XdmcpWriteARRAY8, iFpp)
+GO(XdmcpWriteARRAYofARRAY8, iFpp)
+GO(XdmcpWriteCARD16, iFpu)
+GO(XdmcpWriteCARD32, iFpu)
+GO(XdmcpWriteCARD8, iFpu)
+GO(XdmcpWriteHeader, iFpp)
+GO(XdmcpFlush, iFippi)
+GO(XdmcpReadARRAY16, iFpp)
+GO(XdmcpReadARRAY32, iFpp)
+GO(XdmcpReadARRAY8, iFpp)
+GO(XdmcpReadARRAYofARRAY8, iFpp)
+GO(XdmcpReadCARD16, iFpp)
+GO(XdmcpReadCARD32, iFpp)
+GO(XdmcpReadCARD8, iFpp)
+GO(XdmcpReadHeader, iFpp)
+GO(XdmcpFill, iFippp)
+GO(XdmcpReadRemaining, iFp)
+GO(XdmcpDisposeARRAY8, vFp)
+GO(XdmcpDisposeARRAY16, vFp)
+GO(XdmcpDisposeARRAY32, vFp)
+GO(XdmcpDisposeARRAYofARRAY8, vFp)
+GO(XdmcpCopyARRAY8, iFpp)
+GO(XdmcpARRAY8Equal, iFpp)
+GO(XdmcpGenerateKey, vFp)
+GO(XdmcpIncrementKey, vFp)
+GO(XdmcpDecrementKey, vFp)
+GO(XdmcpWrap, vFpppi)
+GO(XdmcpUnwrap, vFpppi)
+GO(XdmcpCompareKeys, iFpp)
+GO(XdmcpAllocARRAY16, iFpi)
+GO(XdmcpAllocARRAY32, iFpi)
+GO(XdmcpAllocARRAY8, iFpi)
+GO(XdmcpAllocARRAYofARRAY8, iFpi)
+GO(XdmcpReallocARRAY16, iFpi)
+GO(XdmcpReallocARRAY32, iFpi)
+GO(XdmcpReallocARRAY8, iFpi)
+GO(XdmcpReallocARRAYofARRAY8, iFpi)
+
+GO(_XdmcpAuthDoIt, vFpppi)
+GO(_XdmcpAuthSetup, vFpp)
+GO(_XdmcpWrapperToOddParity, vFpp)
\ No newline at end of file
diff --git a/src/wrapped/wrappedlibxext.c b/src/wrapped/wrappedlibxext.c
new file mode 100755
index 00000000..9482b70f
--- /dev/null
+++ b/src/wrapped/wrappedlibxext.c
@@ -0,0 +1,271 @@
+#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* libxextName = "libXext.so.6";
+#define LIBNAME libxext
+static library_t* my_lib = NULL;
+
+typedef struct _XImage XImage;
+void BridgeImageFunc(x64emu_t *emu, XImage *img);
+void UnbridgeImageFunc(x64emu_t *emu, XImage *img);
+typedef int (*XextErrorHandler)(void *, void *, void*);
+
+typedef struct my_XExtensionHooks {
+    int (*create_gc)(void*, uint32_t, void*);
+    int (*copy_gc)(void*, uint32_t, void*);
+    int (*flush_gc)(void*, uint32_t, void*);
+    int (*free_gc)(void*, uint32_t, void*);
+    int (*create_font)(void*, void*, void*);
+    int (*free_font)(void*, void*, void*);
+    int (*close_display)(void*, void*);
+    int (*wire_to_event)(void*, void*, void*);
+    int (*event_to_wire)(void*, void*, void*);
+    int (*error)(void*, void*, void*, int*);
+    char *(*error_string)(void*, int, void*, void*, int);
+} my_XExtensionHooks;
+
+
+typedef void* (*pFp_t)(void*);
+typedef int32_t (*iFpppiiu_t)(void*, void*, void*, int32_t, int32_t, uint32_t);
+typedef int32_t (*pFppppip_t)(void*, void*, void*, void*, int32_t, void*);
+typedef void* (*pFppuippuu_t)(void*, void*, uint32_t, int32_t, void*, void*, uint32_t, uint32_t);
+typedef int32_t (*iFppppiiiiuui_t)(void*, void*, void*, void*, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t);
+
+typedef struct xext_my_s {
+    // functions
+    pFppuippuu_t        XShmCreateImage;
+    iFpppiiu_t          XShmGetImage;
+    iFppppiiiiuui_t     XShmPutImage;
+    pFp_t               XSetExtensionErrorHandler;
+    pFppppip_t          XextAddDisplay;
+} xext_my_t;
+
+void* getXextMy(library_t* lib)
+{
+    xext_my_t* my = (xext_my_t*)calloc(1, sizeof(xext_my_t));
+    #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A);
+    GO(XShmCreateImage, pFppuippuu_t)
+    GO(XShmGetImage, iFpppiiu_t)
+    GO(XShmPutImage, iFppppiiiiuui_t)
+    GO(XSetExtensionErrorHandler, pFp_t)
+    GO(XextAddDisplay, pFppppip_t)
+    #undef GO
+    return my;
+}
+
+void freeXextMy(void* lib)
+{
+    //xext_my_t *my = (xext_my_t *)lib;
+}
+
+#define SUPER() \
+GO(0)   \
+GO(1)   \
+GO(2)   \
+GO(3)   \
+GO(4)
+
+// exterrorhandle ...
+#define GO(A)   \
+static uintptr_t my_exterrorhandle_fct_##A = 0;                                                 \
+static int my_exterrorhandle_##A(void* display, void* ext_name, void* reason)                   \
+{                                                                                               \
+    return RunFunction(my_context, my_exterrorhandle_fct_##A, 3, display, ext_name, reason);    \
+}
+SUPER()
+#undef GO
+static void* find_exterrorhandle_Fct(void* fct)
+{
+    if(!fct) return fct;
+    if(GetNativeFnc((uintptr_t)fct))  return GetNativeFnc((uintptr_t)fct);
+    #define GO(A) if(my_exterrorhandle_fct_##A == (uintptr_t)fct) return my_exterrorhandle_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_exterrorhandle_fct_##A == 0) {my_exterrorhandle_fct_##A = (uintptr_t)fct; return my_exterrorhandle_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libXext exterrorhandle callback\n");
+    return NULL;
+}
+static void* reverse_exterrorhandleFct(void* fct)
+{
+    if(!fct) return fct;
+    if(CheckBridged(my_lib->priv.w.bridge, fct))
+        return (void*)CheckBridged(my_lib->priv.w.bridge, fct);
+    #define GO(A) if(my_exterrorhandle_##A == fct) return (void*)my_exterrorhandle_fct_##A;
+    SUPER()
+    #undef GO
+    return (void*)AddBridge(my_lib->priv.w.bridge, iFppp, fct, 0);
+}
+
+#undef SUPER
+
+EXPORT void* my_XShmCreateImage(x64emu_t* emu, void* disp, void* vis, uint32_t depth, int32_t fmt
+                    , void* data, void* shminfo, uint32_t w, uint32_t h)
+{
+    xext_my_t *my = (xext_my_t*)my_lib->priv.w.p2;
+
+    XImage *img = my->XShmCreateImage(disp, vis, depth, fmt, data, shminfo, w, h);
+    if(!img)
+        return img;
+    // bridge all access functions...
+    BridgeImageFunc(emu, img);
+    return img;
+}
+
+EXPORT int32_t my_XShmPutImage(x64emu_t* emu, void* disp, void* drawable, void* gc, void* image
+                    , int32_t src_x, int32_t src_y, int32_t dst_x, int32_t dst_y
+                    , uint32_t w, uint32_t h, int32_t sendevt)
+{
+    xext_my_t *my = (xext_my_t*)my_lib->priv.w.p2;
+
+    UnbridgeImageFunc(emu, (XImage*)image);
+    int32_t r = my->XShmPutImage(disp, drawable, gc, image, src_x, src_y, dst_x, dst_y, w, h, sendevt);
+    // bridge all access functions...
+    BridgeImageFunc(emu, (XImage*)image);
+    return r;
+}
+
+EXPORT int32_t my_XShmGetImage(x64emu_t* emu, void* disp, void* drawable, void* image, int32_t x, int32_t y, uint32_t plane)
+{
+    xext_my_t *my = (xext_my_t*)my_lib->priv.w.p2;
+
+    UnbridgeImageFunc(emu, (XImage*)image);
+    int32_t r = my->XShmGetImage(disp, drawable, image, x, y, plane);
+    // bridge all access functions...
+    BridgeImageFunc(emu, (XImage*)image);
+    return r;
+}
+
+EXPORT void* my_XSetExtensionErrorHandler(x64emu_t* emu, void* handler)
+{
+    xext_my_t *my = (xext_my_t*)my_lib->priv.w.p2;
+    return reverse_exterrorhandleFct(my->XSetExtensionErrorHandler(find_exterrorhandle_Fct(handler)));
+}
+
+static box64context_t *context = NULL;
+static uintptr_t my_hook_create_gc_fnc = 0;
+static uintptr_t my_hook_copy_gc_fnc = 0;
+static uintptr_t my_hook_flush_gc_fnc = 0;
+static uintptr_t my_hook_free_gc_fnc = 0;
+static uintptr_t my_hook_create_font_fnc = 0;
+static uintptr_t my_hook_free_font_fnc = 0;
+static uintptr_t my_hook_close_display_fnc = 0;
+static uintptr_t my_hook_wire_to_event_fnc = 0;
+static uintptr_t my_hook_event_to_wire_fnc = 0;
+static uintptr_t my_hook_error_fnc = 0;
+static uintptr_t my_hook_error_string_fnc = 0;
+static int  my_hook_create_gc(void* a, uint32_t b, void* c) {
+    if(my_hook_create_gc_fnc)
+        return (int)RunFunction(context, my_hook_create_gc_fnc, 3, a, b, c);
+    return 0;
+}
+static int  my_hook_copy_gc(void* a, uint32_t b, void* c) {
+    if(my_hook_copy_gc_fnc)
+        return (int)RunFunction(context, my_hook_copy_gc_fnc, 3, a, b, c);
+    return 0;
+}
+static int  my_hook_flush_gc(void* a, uint32_t b, void* c) {
+    if(my_hook_flush_gc_fnc)
+        return (int)RunFunction(context, my_hook_flush_gc_fnc, 3, a, b, c);
+    return 0;
+}
+static int  my_hook_free_gc(void* a, uint32_t b, void* c) {
+    if(my_hook_free_gc_fnc)
+        return (int)RunFunction(context, my_hook_free_gc_fnc, 3, a, b, c);
+    return 0;
+}
+static int  my_hook_create_font(void* a, void* b, void* c) {
+    if(my_hook_create_font_fnc)
+        return (int)RunFunction(context, my_hook_create_font_fnc, 3, a, b, c);
+    return 0;
+}
+static int  my_hook_free_font(void* a, void* b, void* c) {
+    if(my_hook_free_font_fnc)
+        return (int)RunFunction(context, my_hook_free_font_fnc, 3, a, b, c);
+    return 0;
+}
+static int  my_hook_close_display(void* a, void* b) {
+    if(my_hook_close_display_fnc)
+        return (int)RunFunction(context, my_hook_close_display_fnc, 2, a, b);
+    return 0;
+}
+static int  my_hook_wire_to_event(void* a, void* b, void* c) {
+    if(my_hook_wire_to_event_fnc)
+        return (int)RunFunction(context, my_hook_wire_to_event_fnc, 3, a, b, c);
+    return 0;
+}
+static int  my_hook_event_to_wire(void* a, void* b, void* c) {
+    if(my_hook_event_to_wire_fnc)
+        return (int)RunFunction(context, my_hook_event_to_wire_fnc, 3, a, b, c);
+    return 0;
+}
+static int  my_hook_error(void* a, void* b, void* c, int* d) {
+    if(my_hook_error_fnc)
+        return (int)RunFunction(context, my_hook_error_fnc, 4, a, b, c, d);
+    return 0;
+}
+static char* my_hook_error_string(void* a, int b, void* c, void* d, int e) {
+    if(my_hook_error_string_fnc)
+        return (char*)RunFunction(context, my_hook_error_string_fnc, 5, a, b, c, d, e);
+    return 0;
+}
+
+EXPORT int32_t my_XextAddDisplay(x64emu_t* emu, void* extinfo, void* dpy, void* extname, my_XExtensionHooks* hooks, int nevents, void* data)
+{
+    xext_my_t *my = (xext_my_t*)my_lib->priv.w.p2;
+
+    if(!context)
+        context = emu->context;
+
+    my_XExtensionHooks natives = {0};
+    #define GO(A) if(hooks->A) {my_hook_##A##_fnc = (uintptr_t)hooks->A; natives.A = my_hook_##A;}
+    GO(create_gc)
+    GO(copy_gc)
+    GO(flush_gc)
+    GO(free_gc)
+    GO(create_font)
+    GO(free_font)
+    GO(close_display)
+    GO(wire_to_event)
+    GO(event_to_wire)
+    GO(error)
+    GO(error_string)
+    #undef GO
+    int32_t ret = my->XextAddDisplay(extinfo, dpy, extname, &natives, nevents, data);
+    return ret;
+}
+
+#define CUSTOM_INIT \
+    lib->priv.w.p2 = getXextMy(lib);    \
+    my_lib = lib;                       \
+    lib->priv.w.needed = 4;             \
+    lib->priv.w.neededlibs = (char**)calloc(lib->priv.w.needed, sizeof(char*)); \
+    lib->priv.w.neededlibs[0] = strdup("libX11.so.6"); \
+    lib->priv.w.neededlibs[1] = strdup("libxcb.so.1"); \
+    lib->priv.w.neededlibs[2] = strdup("libXau.so.6"); \
+    lib->priv.w.neededlibs[3] = strdup("libXdmcp.so.6");
+
+#define CUSTOM_FINI \
+    freeXextMy(lib->priv.w.p2); \
+    free(lib->priv.w.p2);       \
+    my_lib = NULL;
+
+#include "wrappedlib_init.h"
+
diff --git a/src/wrapped/wrappedlibxext_private.h b/src/wrapped/wrappedlibxext_private.h
new file mode 100755
index 00000000..2e2ac8ea
--- /dev/null
+++ b/src/wrapped/wrappedlibxext_private.h
@@ -0,0 +1,139 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error Meh....
+#endif
+
+GO(DPMSCapable, iFp)
+GO(DPMSDisable, iFp)
+GO(DPMSEnable, iFp)
+GO(DPMSForceLevel, iFpu)
+GO(DPMSGetTimeouts, iFpppp)
+GO(DPMSGetVersion, iFppp)
+GO(DPMSInfo, iFppp)
+GO(DPMSQueryExtension, iFppp)
+GO(DPMSSetTimeouts, iFpuuu)
+//GO(XagCreateAssociation, 
+//GO(XagCreateEmbeddedApplicationGroup, 
+//GO(XagCreateNonembeddedApplicationGroup, 
+//GO(XagDestroyApplicationGroup, 
+//GO(XagDestroyAssociation, 
+//GO(XagGetApplicationGroupAttributes, 
+//GO(XagQueryApplicationGroup, 
+//GO(XagQueryVersion, 
+//GO(XcupGetReservedColormapEntries, 
+//GO(XcupQueryVersion, 
+//GO(XcupStoreColors, 
+GO(XdbeAllocateBackBufferName, pFppu)
+GO(XdbeBeginIdiom, iFp)
+GO(XdbeDeallocateBackBufferName, iFpp)
+GO(XdbeEndIdiom, iFp)
+GO(XdbeFreeVisualInfo, vFp)
+GO(XdbeGetBackBufferAttributes, pFpp)
+GO(XdbeGetVisualInfo, pFppp)
+GO(XdbeQueryExtension, iFppp)
+GO(XdbeSwapBuffers, iFppi)
+//GO(XeviGetVisualInfo, 
+//GO(XeviQueryExtension, 
+//GO(XeviQueryVersion, 
+GOM(XextAddDisplay, pFEppppip)
+GO(XextCreateExtension, pFv)
+GO(XextDestroyExtension, vFp)
+DATAB(_XExtensionErrorFunction, 4)
+GO(XextFindDisplay, pFpp)
+GO(XextRemoveDisplay, iFpp)
+//GO(XGEQueryExtension, 
+//GO(XGEQueryVersion, 
+//GO(XLbxGetEventBase, 
+//GO(XLbxQueryExtension, 
+//GO(XLbxQueryVersion, 
+//GO(XmbufChangeBufferAttributes, 
+//GO(XmbufChangeWindowAttributes, 
+//GO(XmbufClearBufferArea, 
+//GO(XmbufCreateBuffers, 
+//GO(XmbufCreateStereoWindow, 
+//GO(XmbufDestroyBuffers, 
+//GO(XmbufDisplayBuffers, 
+//GO(XmbufGetBufferAttributes, 
+//GO(XmbufGetScreenInfo, 
+//GO(XmbufGetVersion, 
+//GO(XmbufGetWindowAttributes, 
+//GO(XmbufQueryExtension, 
+GO(XMissingExtension, iFpp)
+//GO(XMITMiscGetBugMode, 
+//GO(XMITMiscQueryExtension, 
+//GO(XMITMiscSetBugMode, 
+//GO(XSecurityAllocXauth, 
+//GO(XSecurityFreeXauth, 
+//GO(XSecurityGenerateAuthorization, 
+//GO(XSecurityQueryExtension, 
+//GO(XSecurityRevokeAuthorization, 
+GOM(XSetExtensionErrorHandler, pFEp)
+GO(XShapeCombineMask, vFppiiipi)
+GO(XShapeCombineRectangles, vFppiiipiii)
+GO(XShapeCombineRegion, vFppiiipi)
+GO(XShapeCombineShape, vFppiiipii)
+GO(XShapeGetRectangles, pFppipp)
+GO(XShapeInputSelected, uFpp)
+GO(XShapeOffsetShape, vFppiii)
+GO(XShapeQueryExtension, iFppp)
+GO(XShapeQueryExtents, iFpppppppppppp)
+GO(XShapeQueryVersion, iFppp)
+GO(XShapeSelectInput, vFppu)
+GO(XShmAttach, iFpp)
+GOM(XShmCreateImage, pFEppuippuu)       //need brige/unbridge...
+GO(XShmCreatePixmap, pFppppuuu)
+GO(XShmDetach, iFpp)
+GO(XShmGetEventBase, iFp)
+GOM(XShmGetImage, iFEpppiiu)        //need brige/unbridge...
+GO(XShmPixmapFormat, iFp)
+GOM(XShmPutImage, iFEppppiiiiuui)       //need brige/unbridge...
+GO(XShmQueryExtension, iFp)
+GO(XShmQueryVersion, iFpppp)
+GO(XSyncAwait, iFppi)
+//GO(XSyncAwaitFence, 
+GO(XSyncChangeAlarm, iFpuLp)
+GO(XSyncChangeCounter, iFpuU)
+GO(XSyncCreateAlarm, uFpLp)     // XSyncAlarm is an XID
+GO(XSyncCreateCounter, uFpU)    // XSyncValue is a struct of 2 int
+//GO(XSyncCreateFence, 
+GO(XSyncDestroyAlarm, iFpu)
+GO(XSyncDestroyCounter, iFpu)
+//GO(XSyncDestroyFence, 
+GO(XSyncFreeSystemCounterList, vFp)
+GO(XSyncGetPriority, iFpup)
+GO(XSyncInitialize, iFppp)
+GO(XSyncIntsToValue, vFpui)
+GO(XSyncIntToValue, vFpi)
+GO(XSyncListSystemCounters, pFpp)
+//GO(XSyncMaxValue, 
+//GO(XSyncMinValue, 
+GO(XSyncQueryAlarm, iFpup)
+GO(XSyncQueryCounter, iFpup)
+GO(XSyncQueryExtension, iFppp)
+//GO(XSyncQueryFence, 
+//GO(XSyncResetFence, 
+GO(XSyncSetCounter, iFpuU)      // XSyncCounter is an XID
+GO(XSyncSetPriority, iFpui)
+//GO(XSyncTriggerFence, 
+//GO(XSyncValueAdd, 
+//GO(XSyncValueEqual, 
+//GO(XSyncValueGreaterOrEqual, 
+//GO(XSyncValueGreaterThan, 
+//GO(XSyncValueHigh32, 
+//GO(XSyncValueIsNegative, 
+//GO(XSyncValueIsPositive, 
+//GO(XSyncValueIsZero, 
+//GO(XSyncValueLessOrEqual, 
+//GO(XSyncValueLessThan, 
+//GO(XSyncValueLow32, 
+//GO(XSyncValueSubtract, 
+DATA(XTestFakeAckType, sizeof(void*))
+//GO(XTestFakeInput, 
+//GO(XTestFlush, 
+//GO(XTestGetInput, 
+DATAB(XTestInputActionType, sizeof(void*))
+//GO(XTestMovePointer, 
+//GO(XTestPressButton, 
+//GO(XTestPressKey, 
+//GO(XTestQueryInputSize, 
+//GO(XTestReset, 
+//GO(XTestStopInput, 
diff --git a/src/wrapped/wrappedlibxi.c b/src/wrapped/wrappedlibxi.c
new file mode 100755
index 00000000..9f1005b0
--- /dev/null
+++ b/src/wrapped/wrappedlibxi.c
@@ -0,0 +1,24 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#define _GNU_SOURCE         /* See feature_test_macros(7) */
+#include <dlfcn.h>
+
+#include "wrappedlibs.h"
+
+#include "wrapper.h"
+#include "bridge.h"
+#include "librarian/library_private.h"
+#include "x64emu.h"
+
+const char* libxiName = "libXi.so.6";
+#define LIBNAME libxi
+
+#define CUSTOM_INIT \
+    lib->priv.w.needed = 2; \
+    lib->priv.w.neededlibs = (char**)calloc(lib->priv.w.needed, sizeof(char*)); \
+    lib->priv.w.neededlibs[0] = strdup("libX11.so.6"); \
+    lib->priv.w.neededlibs[1] = strdup("libXext.so.6");
+
+#include "wrappedlib_init.h"
+
diff --git a/src/wrapped/wrappedlibxi_private.h b/src/wrapped/wrappedlibxi_private.h
new file mode 100755
index 00000000..052bfed2
--- /dev/null
+++ b/src/wrapped/wrappedlibxi_private.h
@@ -0,0 +1,88 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error Meh....
+#endif
+
+//GO(XAllowDeviceEvents, 
+//GO(XChangeDeviceControl, 
+//GO(XChangeDeviceDontPropagateList, 
+//GO(XChangeDeviceKeyMapping, 
+GO(XChangeDeviceProperty, vFppppiipi)
+//GO(XChangeFeedbackControl, 
+//GO(XChangeKeyboardDevice, 
+//GO(XChangePointerDevice, 
+GO(XCloseDevice, iFpp)
+GO(XDeleteDeviceProperty, vFppp)
+//GO(XDeviceBell, 
+//GO(XFreeDeviceControl, 
+GO(XFreeDeviceList, iFp)
+GO(XFreeDeviceMotionEvents, iFv)
+GO(XFreeDeviceState, vFp)
+//GO(XFreeFeedbackList, 
+GO(XGetDeviceButtonMapping, iFpppi)
+//GO(XGetDeviceControl, 
+//GO(XGetDeviceDontPropagateList, 
+//GO(XGetDeviceFocus, 
+//GO(XGetDeviceKeyMapping, 
+//GO(XGetDeviceModifierMapping, 
+GO(XGetDeviceMotionEvents, pFppuuppp)
+GO(XGetDeviceProperty, iFpppllipppppp)
+//GO(XGetExtensionVersion, 
+//GO(XGetFeedbackControl, 
+//GO(XGetSelectedExtensionEvents, 
+GO(XGrabDevice, iFpppiipiiu)
+//GO(XGrabDeviceButton, 
+//GO(XGrabDeviceKey, 
+//GO(XIAllowEvents, 
+//GO(XIAllowTouchEvents, 
+//GO(XIBarrierReleasePointer, 
+//GO(XIBarrierReleasePointers, 
+//GO(XIChangeHierarchy, 
+GO(XIChangeProperty, vFpippiipi)
+//GO(XIDefineCursor, 
+GO(XIDeleteProperty, vFpip)
+GO(XIFreeDeviceInfo, vFp)
+GO(XIGetClientPointer, iFppp)
+//GO(XIGetFocus, 
+GO(XIGetProperty, iFpipllippppp)
+GO(XIGetSelectedEvents, iFpppi)
+//GO(XIGrabButton, 
+GO(XIGrabDevice, iFpipLpiiip)
+//GO(XIGrabEnter, 
+//GO(XIGrabFocusIn, 
+//GO(XIGrabKeycode, 
+//GO(XIGrabTouchBegin, 
+//GO(XIListProperties, 
+GO(XIQueryDevice, pFpip)
+GO(XIQueryPointer, iFpipppppppppp)
+GO(XIQueryVersion, iFppp)
+GO(XISelectEvents, iFpppi)
+GO(XISetClientPointer, iFppi)
+//GO(XISetFocus, 
+//GO(XIUndefineCursor, 
+//GO(XIUngrabButton, 
+GO(XIUngrabDevice, iFpiL)
+//GO(XIUngrabEnter, 
+//GO(XIUngrabFocusIn, 
+//GO(XIUngrabKeycode, 
+//GO(XIUngrabTouchBegin, 
+//GO(XIWarpPointer, 
+//GO(XListDeviceProperties, 
+GO(XListInputDevices, pFpp)
+GO(XOpenDevice, pFpp)
+GO(XQueryDeviceState, pFpp)
+GO(XSelectExtensionEvent, iFpppi)
+//GO(XSendExtensionEvent, 
+GO(XSetDeviceButtonMapping, iFpppi)
+//GO(XSetDeviceFocus, 
+//GO(XSetDeviceMode, 
+//GO(XSetDeviceModifierMapping, 
+//GO(XSetDeviceValuators, 
+GO(XUngrabDevice, iFppu)
+//GO(XUngrabDeviceButton, 
+//GO(XUngrabDeviceKey, 
+//GO(_XiGetDevicePresenceNotifyEvent, 
+//GO(_xibadclass, 
+//GO(_xibaddevice, 
+//GO(_xibadevent, 
+//GO(_xibadmode, 
+//GO(_xidevicebusy,